شهروندان اينترنت روزانه ميليون ها نامه الکترونيکي را براي يکديگر ارسال مي نمايند. مبادله نامه هاي الکترونيکي يکي از اولين سرويس هاي اينترنت محسوب شده و امروزه از آن به عنوان يک ابزار ارتباطي قدرتمند استفاده مي گردد . در زمان ارسال يک نامه الکترونيکي ، فرآيند گسترده و مسيري طولاني طي خواهد شد.
يک پيام E-Mail
اولين پيام ارسال شده توسط نامه الکترونيکي در سال 1971 توسط مهندسي با نام "Ray Tomlinson" انجام شده است . قبل از تحقق رويداد فوق ، صرفا" امکان ارسال پيام براي کاربران موجود بر روي يک کامپيوتر ميسر بود. پيام ارسالي توسط Tomlinson قابليت ارسال پيام به ساير ماشين هاي موجود بر روي اينترنت با استفاده از علامت "@" به منظور مشخص نمودن ماشين دريافت کننده بود. E-Mail ، يک پيام متني ساده است که براي گيرنده پيام ارسال مي گردد. نامه هاي الکنترونيکي در ابتدا و هم اينک اغلب بصورت متن هاي کوتاه مي باشند. در برخي موارد ممکن است ، فرستندگان نامه هاي الکترونيکي با افزودن "ضمائم " ، حجم يک نامه الکترونيکي را افزايش دهند.
سرويس گيرندگان E-mail
به منظور مشاهده نامه هاي الکترونيکي دريافت شده ، مي بايست از برنامه هاي سرويس گيرنده نامه هاي الکترونيکي استفاده کرد. برخي از کاربران از برنامه معروف outlook و يا outlook express شرکت مايکروسافت ، Eudora و يا Pegasus بمنطور مشاهده نامه هاي الکترونيکي استفاده مي نمايند. افراديکه از خدمات پست الکترونيکي رايگان نظير Hotmail و يا Yahoo استفاده مي نمايند ، از يک برنامه سرويس گيرنده که بصورت يک صفحه وب نمايش داده مي شود ، استفاده مي نمايند. برنامه هاي سرويس گيرنده صرفنظر از نوع خود ، داراي وظايف زير مي باشند :
• نمايش ليست تمام پيام هاي موجود در صندوق پستي از طريق " عناوين پيام ها " . عنوان يک پيام مشخص کننده فرستنده ، موضوع ، تاريخ و زمان و اندازه پيام است .
• امکان انتخاب يک پيام از طريق عنوان آن فراهم شده ومطالعه محتويات پيام
• امکان ايجاد پيام هاي جديد و ارسال آنها وجود خواهد داشت . براي ارسال يک پيام مي بايست آدرس گيرنده ، موضوع پيام را مشخص و در ادامه محتويات پيام را تايپ کرد.
• اکثر برنامه هاي سرويس گيرنده پيام هاي الکترونيکي امکان اضافه کردن ضمائم به يک پيام را نيز فراهم مي آورند. برنامه هاي فوق همچنين امکان ذخيره کردن ضمائم موجود در پيام هاي دريافت شده را نيز دارا مي باشند.
يک سرويس دهنده ساده پست الکترونيکي
به منظور ارسال يک نامه الکترونيکي ، برنامه سرويس گيرنده موجود مي بايست به يک سرويس دهنده پست الکترونيکي مرتبط گردد. برخي از ماشين هاي موجود بر روي اينترنت با نصب نرم افزارهاي لازم بعنوان " سرويس دهنده " در شبکه ايفاي وظيفه مي نمايند. سرويس دهنده وب ، سرويس دهنده telnet ، سرويس دهنده Ftp و سرويس دهنده پست الکترونيکي ، نمونه هائي از سرويس دهندگان موجود در اينترنت مي باشند. ميليون ها سرويس دهنده بر روي اينترنت به ارائه خدمات و سرويس هاي مورد نظر به سرويس گيرندگان فعاليت مي نمايند. برنامه هاي نصب شده بر روي سرويس دهندگان بصورت شبانه روزي در حالت اجراء بوده و به پورت هاي خاصي گوش فرا مي دهند. اين نوع برنامه ها در انتظار ارتباط ساير برنامه ها ( سرويس گيرندگان) از طريق پورت مربوطه مي باشند. يک برنامه سرويس دهنده پست الکترونيکي در ساده ترين ( حالت آموزشي ) حالت بصورت زير عمل مي نمايد:
• هر شخص بر روي سرويس دهنده داراي يک Account به منظور ارسال و دريافت نامه الکترونيکي است .
• براي هر يک از افراديکه داراي Account مي باشند ، يک فايل ساده متني در فولدر مورد نظر ذخيره مي گردد.
• افراديکه تمايل به ارسال نامه الکترونيکي براي شخص بخصوصي را داشته باشند ، مي بايست يک پيام متني را با استفاده از يک برنامه سرويس گيرنده ارسال نمايند. پس از آماده نمون پيام ، با فشردن دکمه "ارسال" ، پيام مورد نظر براي گيرنده ارسال خواهد شد. در اين حالت برنامه سرويس گيرنده با برنامه سرويس دهنده ارتباط برقرار و پيام حاوي آدرس فرستنده ، گيرنده و محتويات مورد نظر را براي سرويس دهنده مورد نظر ارسال مي نمايد.
• سرويس دهنده ممکن است اطلاعات دريافت شده را با يک فرمت مناسب به انتهاي فايل متني که براي هر فرد با نام Account وي ايجاد شده ، اضافه مي نمايد.
• سرويس دهنده ممکن است اطلاعات ديگر نظير : زمان و تاريخ دريافت پيام را نيز ذخيره نمايد. در صورت ارسال نامه هاي الکترونيکي ديگر براي يک گيرنده خاص ، سرويس دهنده پيام هاي دريافت شده را به انتهاي فايل متني ( حاوي پيام هاي مربوطه) اضافه مي نمايد. گيرنده پيام هاي الکترونيکي از برنامه سرويس گيرنده خود به منظور دريافت و مشاهده نامه هاي الکترونيکي استفاده مي نمايد :"
• برنامه سرويس گيرنده از سرويس دهنده مي خواهد که يک نسخه از فايل متني مربوط به شخص گيرنده را ارسال نمايد.
• برنامه سرويس گيرنده از سرويس دهنده مي خواهد که محتويات فايل متني را حذف نمايد.
• برنامه سرويس گيرنده قادر به ذخيره سازي فايل متني حاوي پيام ها بر روي کامپيوتر خود است .
• در فايل متني ذخيره شده بدنبال خطوطي باشد که با عنوان " از : " وجود دارند.
• برنامه سرويس گيرنده قادر به نمايش ليست تمام پيام ها بر اساس عناوين مربوطه است .
مثال فوق صرفا" يک سيستم بسيار ساده ارسال و دريافت پست الکترونيکي را نشان مي داد. در ادامه به بررسي يک سيستم واقعي پست الکترونيکي خواهيم پرداخت .
سيستم پست الکترونيکي واقعي
سيستم واقعي پست الکترونيکي داراي دو سرويس دهنده متفاوت بوده که بر روي يک ماشين اجراء مي گردند. يکي از سرويس دهندگان ، سرويس دهنده SMTP)Simple Mail Transfer Protocol) بوده و مستوليت پيام هاي ارسالي ( خروج ) نامه هاي الکترونيکي، را برعهده دارد. سرويس دهنده دوم ، POP3)Post office Protocol) ناميده شده و مسدوليت پيام هاي دريافتي ( ورود ) را برعهده دارد. شکل زير جايگاه هر يک از سرويس دهندگان اشاره شده را نشان مي دهد.
سرويس دهنده SMTP به پورت 25 و سرويس دهنده POP3 به پورت 110 گوش خواهند داد.
سرويس دهنده SMTP
زمانيکه از طريق سرويس گيرنده خود اقدام به ارسال نامه الکترونيکي مي نمائيد ، برنامه سرويس گيرنده با سرويس دهنده SMTP به منظور ارسال نامه هاي الکترونيکي ، ارتباط برقرار مي نمايد. سرويس دهنده SMTP موجود ، ممکن است با ساير سرويس دهندگان SMTP به منظور ارسال ( توزيع ) نامه الکترونيکي ارتباط برقرار نمايد. شکل زير نحوه عملکرد سرويس دهنده فوق را نشان مي دهد.
کاربران به منظور ارسال نامه الکترونيکي توسط برنامه سرويس گيرنده ، مي بايست تنظيمات لازم را انجام دهند. فرض کنيد آدرس پست الکترونيکي شما Ali@Test1.com باشد ، در زمان تنظيم پارامترهاي برنامه سرويس گيرنده ( بعنوان مثال: Outlook) ، نام سرويس دهنده پست الکترونيکي مي بايست مشخص گردد ( فرض کنيد نام سرويس دهنده پست الکترونيکي mail.test.com باشد ) . پس از آماده نمودن نامه الکترونيکي و فشردن دکمه "ارسال" ، عمليات زير انجام خواهد شد :
• برنامه Outlook express ، با سرويس دهنده SMTP موجود در mail.test1.com از طريق پورت 25 ، ارتباط برقرار مي نمايد.
• برنامه Outlook Express با سرويس دهنده SMTP مکالمه اي را برقرارو به سرويس دهنده SMTP ، آدرس هاي فرستنده و گيرنده و محتويات پيام را اعلان مي نمايد.
• سرويس دهنده SMTP آدرس گيرنده ( بعنوان مثال Reza@test1.com ) را به دو بخش مجزا تقسيم مي نمايد :
- نام دريافت کننده (Reza)
- نام حوزه (test1.com)
• در صورتيکه گيرنده پيام داراي صندوق پستي بر روي همان سرويس دهنده باشد ، سرويس دهنده SMTP پيام دريافت شده را بسادگي در اختيار سرويس دهنده POP3 قرار خواهد داد. در اين زمينه از برنامه اي با نام "Delivery agent" ( آژانس توزيع ) استفاده مي گردد. در صورتيکه گيرنده پيام بر روي حوزه اي ديگر باشد ، سرويس دهنده SMTP نيازمند برقراري ارتباط با حوزه مربوطه است .
• سرويس دهنده SMTP ، با DNS مربوط ارتباط و از او مي خواهد که آدرس IP مربوط به سرويس دهنده SMTP حوزه مربوطه را به اطلاع وي برساند. ( فرض اين است که گيرنده پيام داراي صندوق پستي بر روي همان کامپيوتر فرستنده نيست ). در ادامه DNS ، آدرس ( و يا آدرس هاي ) IP مربوط به سرويس دهنده ( سرويس دهندگان ) SMTP مربوط به حوزه مربوطه را اعلام مي نمايد.
• سرويس دهنده موجود در حوزه Test1.com با سرويس دهنده موجود در حوزه Test2.com از طريق پورت 25 ، ارتباط برقرار مي نمايد. سرويس دهنده SMTP موجود در حوزه Test2.com ، پيام ارسالي را دريافت و آن را در صندوق پستي مربوط به گيرنده قرار خواهد داد.
در صورتيکه سرويس دهنده موجود در حوزه Test1.com قادر به برقراري ارتباط با سرويس دهنده SMTP موجود در حوزه Test2.com نگردد ، پيام مورد نظر در محلي خاص در نوبت قرار مي گيرد. سريس دهنده SMTP در اکثر ماشين ها از برنامه اي با نام Sendmail براي ارسال واقعي يک پيام الکترونيکي استفاده نموده و براي پيام هاي موجود در صف ، از صفي با نام sendmail queue استفاده مي گردد. برنامه Sendmail بصورت ادواري( تکراري) سعي در ارسال مجدد پيام هاي موجود در صف مي نمايد . مثلا" ممکن است هر 15 دقيقه يکبار تلاش مجدد خود براي ارسال را انجام دهد. پس از گذشت چهار ساعت براي ارسال کننده نامه الکترونيکي ، پيامي مبني بر وجود اشکال در ارسال نامه ، فرستاده مي شود. پس از پنج روز ، اکثر برنامه هاي پيکربندي Sendmail پيامي مبني بر عدم موفقيت در توزيع پيام را براي ارسال مي دارند.
مبادله اطلاعاتي بين سرويس گيرنده پست الکترونيکي و سرويس دهنده SMTP با استفاده از يک زبان ساده متني و خوانا، با يکديگر ارتباط برقرار مي نمايند. در ابتدا برنامه سرويس گيرنده خود را معرفي ، آدرس فرستنده و گيرنده و محتويات پيام را مشخص خواهد کرد. ( با استفاده از برنامه telnet مي توان با سرويس دهنده پست الکترونيکي و از طريق پورت 25 ارتباط برقرار کرد).سرويس دهنده SMTP از دستورات ساده اي نظير HELLO,MAIL,RCPT,DATA و ... استفاده مي نمايد.
• HELLO. معرفي برنامه سرويس گيرنده
• EHLO . معرفي سرويس گيرنده و درخواست حالت توسه يافته
• MAIL FROM. مشخص کردن فرستنده
• RCPT TO . مشخص کردن گيرنده
• DATA . محتويات پيام را مشخص مي کند.
• RESET . براي Reset نمودن استفاده مي شود.
• QUIT . ارتباط را قطع مي نمايد.
• HELP . در رابطه با دستورات توضيحات لازم را ارائه مي نمايد.
سرويس دهنده POP3
زمانيکه با استفاده از برنامه سرويس گيرنده ، صندوق پستي خود را به منظور دريافت نامه هاي الکترونيکي بررسي مي نمائيد ، برنامه فوق با سرويس دهنده POP3 از طريق پورت 110 ارتباط برقرار مي نمايد. سرويس دهنده POP3 به يک نام Account و رمز عبور نياز دارد. پس از تاييد اعتبار و مجوز شما ، سرويس دهنده POP3 فايل هاي مربوطه را فعال و امکان دستيابي به آنان را فراهم مي نمايد.
سرويس دهنده POP3 از مجموعه دستورات متني ساده اي ، استفاده مي نمايد :
• USER ID . براي ورود user id استفاده مي شود.
• PASS . براي ورود رمز عبور استفاده مي شود.
• QUIT . براي قطع ارتباط با سرويس دهنده POP3 استفاده مي گردد.
• LIST . ليست پيامها بهمراه اندازه آنها را نشان خواهد داد.
• RETR . براي بازيابي يک پيام استفاده مي شود.
• DELE . براي حذف يک پيام استفاده مي گردد.
• TOP . براي نشان دادن X خط ابتداي پيام استفاده مي شود.
برنامه سرويس گيرنده پست الکترونيکي با سرويس دهنده POP3 ارتباط و مجموعه اي از دستورات فوق را به منظور انتقال نسخه هائي از پيام هاي الکترونيکي بر روي ماشين شما ، انجام مي دهد.
ضمائم
برنامه سرويس گيرنده پست الکترونيکي امکان افزودن ضمائم به نامه هاي الکترونيکي را فراهم مي نمايد.برنامه فوق همچنين امکان ذخيره نمودن ضمائم همراه يک نامه الکترونيکي را نيز بوجود مي آورد . ضمائم يک نامه الکترونيکي مي تواند شامل : يک نامه تايپ شده با واژه پرداز ، يک فرم صفحه گسترده ، فايل هاي صدا ، فايل هاي گرافيک و يا برنامه هاي نرم افزاري باشد. معمولا" فايل هاي ضمائم بصورت متن نمي باشند. ( در صورتيکه اطلاعات ضمائم بصورت متني باشند ، مي توان آنها را در بخش محتويات يک نامه الکترونيکي مستقر کرد).