همه افرادی که به دنبال استفاده از مزیتهای ابزارهای ارتباطی دیجیتال هستند، حتما در کار و تجارت خود از سرویس ایمیل استفاده میکنند. امروزه به لطف شرکتهای ارائه دهنده ایمیل، کاربران ایمیل برای راهاندازی ایمیل و استفاده از آن نیاز به دانش فنی چندانی ندارند و به راحتی میتوانند برای خود یک سرویس ایمیل راهاندازی کنند و از آن استفاده کنند.
درست است که نحوه تبادل پیام در بستر اینترنت ساده و در عین حال جادویی به نظر میرسد (پیام را مینویسید، دکمه ارسال را میزنید و تمام! پیام شما حتی به دورترین نقاط دنیا هم میرسد!) اما در پس زمینه این سرورهای ایمیل هستند که از طریق اجزای مختلف و ابزارهایی که دارند، انتقال ایمیلها را ممکن میکنند.
در این مقاله قصد داریم کمی عمیقتر سرویس ایمیل را بررسی کنیم تا نحوه کار سرویس ایمیل و مفاهیم فنی و پایهای مربوط به سرویس ایمیل را به زبانی بسیار ساده شرح دهیم. پس از خواندن این مقاله فرا میگیرید که فرایند تبادل ایمیل چگونه کار میکند و پروتکلهای مورد استفاده در سرویس ایمیل را به شما معرفی میکنیم. در نهایت هم بررسی میکنیم که چه مواردی منجر به نرسیدن یا به موقع نرسیدن یک پیام ایمیل به مقصد میشوند.
چگونه یک پیام ایمیل از فرستنده به گیرنده می رسد؟
شاید اولین موردی که در مورد تبادل پیام ایمیل باید بدانید، این باشد که تبادل پیام ایمیل تنها به وسیله یک سرور یا فناوری مدیریت نمیشود. بلکه مجموعهای از پروتکلها یا قراردادها، سرورها و ابزارها همگی در فرایند ایجاد، ارسال و دریافت پیام ایمیل درگیر هستند.
برای تبادل یک ایمیل، از ابتدای نوشتن ایمیل تا رسیدن ایمیل به دست دریافت کننده، چند مرحله اصلی وجود دارد که در ادامه، این مراحل را در غالب یک مثال بررسی میکنیم:
وارد حساب خود شوید و ایمیل خود را بنویسید
گام نخست، نوشتن یک ایمیل جدید است. شما باید وارد حساب ایمیل خود شوید و یک ایمیل جدید بنویسید. برای ورود به حساب ایمیل شما ممکن است از ابزارهای مختلفی مانند Outlook، Apple Mail ،Thunderbird یا هر ابزار دیگری استفاده کنید. به این برنامههایی که توسط آن به سرویس ایمیل خود دسترسی پیدا میکنید اصطلاحا “عامل کاربری ایمیل” (MUA: Mail User Agent) میگویند.
البته MUAها لزوما برنامه نصب شده روی کامپیوتر یا موبایل شما نیستند، شما ممکن است یک مرورگر باز کرده باشید و از طریق آدرسی که قبلا دراختیار شما قرار گرفته است، به برنامه تحت وب یا به اصطلاح “Web mail” سرویس ایمیلتان رفته و به صفحه مدیریت ایمیلهای خود دسترسی پیدا کنید (مثل جیمیل).
فرقی نمیکند که شما چطور و با چه برنامهای به سرویس ایمیل وصل شده و پیام جدید خود را بنویسید. چون ادامه مراحل انتقال و تحویل ایمیل به مقصد، به یک شکل پیش میرود. در همه ابزارهای مدیریت ایمیل، محلی برای نوشتن پیام جدید وجود دارد که معمولا با یک دکمه به نام “پیام جدید” یا “Compose” وارد آن میشوید.
در قسمت نوشتن پیام ایمیل، شما میتوانید یک مخاطب یا مجموعهای از مخاطبان را برای ایمیل خود وارد کنید. این کار با نوشتن آدرس ایمیل آنها در قسمت To، CC یا BCC انجام میشود.همچنین، میتوانید برای ایمیلتان یک موضوع یا عنوان بنویسید و در قسمت بدنه ایمیل متن مورد نظرتان را یادداشت کنید. شما میتوانید همراه ایمیل خود یک یا چند فایل را هم به صورت پیوست یا ضمیمه اضافه کنید.
زمانی که ایمیل شما آماده شد، میتوانید با زدن دکمه Send یا “ارسال” آن را بفرستید. به محض این که روی دکمه ارسال کلیک میکنید، پیام از صفحه نمایش شما ناپدید شده و یک زنجیره کامل از رویدادها به اجرا در میآید.
پیام شما به سرور خروجی ایمیل منتقل میشود
پس از کلیک بر روی Send یا ارسال، پیام شما به سرور خروجی ایمیل یا outgoing mail Server شما منتقل میشود. در صورتی که از سرویس ایمیل سازمانی یا شرکتی خود استفاده میکنید، سرور خروجی ایمیل شما، نامی مشابه به mail.yourcompany.com دارد. سرور ارسال کننده پیام شما از یک پروتکل یا قرارداد تحت عنوان “پروتکل انتقال ایمیل ساده” یا SMTP برای ارسال ایمیل شما استفاده میکند. سرویس ایمیل خروجی پیامی که ارسال کرده بودید را به تنهایی یا به همراه مجموعه دیگری از پیامهای درصف ارسال به سمت مقصد ارسال خواهد کرد.
جستجو برای یافتن سرور مقصد آغاز میشود
فرض کنیم که آدرس مخاطب پیام شما، آدرس ایمیلی مشابه user@example.com است. بنابراین SMTP سرور خروجی ایمیل شما، باید بتواند آدرس IP سرویس ایمیل مقصد یا example.com را پیدا کند.
روش پیدا کردن آدر IP یک دامنه در اینترنت، استفاده از DNS یا سرورهای نام دامنه است. اگر با DNSها آشنا نیستید، بهتر است بدانید که در دنیای اینترنت، DNSها مثل دفترچه تلفن اینترنت هستند. DNS ها پایگاههای اطلاعاتی بزرگی هستند که نام دامنه یا Domain را به آدرس(های) IP متناظر با آن ترجمه میکنند. سرویس ایمیل شما Domain گیرنده پیام را در DNS جستجو میکند.
DNS در پاسخ به این جستجو، اطلاعات IP سرور ایمیل مقصد را پیدا میکند و بررسی میکند که آیا مقصد شما، سرویسهای تبادل ایمیل دارد یا خیر ( دامنهای که سرویس ایمیل داشته باشد، اطلاعات سرویس ایمیل را در قالب رکوردهای تبادل ایمیل یا MX ثبت میکند). در نهایت DNS اطلاعات رکوردهای MX مقصد را به SMTP سرویس ایمیل شما میرساند. پس از دریافت اطلاعات مربوط به IP مقصد؛ سرور ایمیل شما امکان ارسال پیام را خواهد داشت.
فرایند انتقال ایمیل بین دو ایمیل سرور اجرا میشود
پیام شما در بستر اینترنت از طریق پروتکل TCP/IP (پروتکل کنترل انتقال/ پروتکل اینترنت) به سمت آدرس مقصد ارسال خواهد شد. دریافت ایمیل در مقصد با سرور دریافت کننده پیام یا MTA (Mail transfer Agent) مقصد انجام میشود. اکثر سرورهای ایمیل قبل از اینکه یک ایمیل را بپذیرند، در یک فرآیند چند مرحلهای آنرا بررسی میکنند و در صورتی که ایمیل با قالب صحیح یا درستی ایجاد نشده باشد، به احتمال زیاد آن را رد میکنند. اما در صورتی که صحت ایمیل مورد تائید باشد، دو ایمیل سرور شروع با تبادل ایمیل با با یکدیگر میکنند.
ابتدا سرور ایمیل مبدا به سرور ایمیل مقصد اطلاع میدهد که در حال ارسال یک ایمیل است و خود را معرفی میکند که مجاز به ارسال پیام ازطرف yourcompany.com است. سپس ایمیل سرور مقصد با ارسال سرصفحه یا header پیام موافقت می کنند. این header به سرور ایمیل مقصد اعلام میکند که یک پیام برای یک کاربر با نام user@example.com دارد.
البته مراحل زیادی در این فرآیند تبادل ایمیل وجود دارد و هر یک از آنها مطابق با استانداردهایی نظیر RFC 2821 است که SMTP را معرفی کرده یا RFC 2822 که قالب اصلی یک پیام ایمیل شامل سرصفحهها (به:، رونوشت:، موضوع: و غیره) را تعریف میکند. هنگامی که پیام به سرور ایمیل مقصد رسید، این پیام آماده تحویل به کاربری است که شما ایمیل را برایش ارسال کردهاید.
ایمیل به دست مخاطب شما میرسد
سرور MAT در مقصد مسئول دریافت پیام است. بنابراین زمانی که حساب کاربری دریافت کننده در ایمیل سرور مقصد پیدا شد، MAT آن را به دو روش میتواند به کاربر تحویل دهد:
- در روش نخست، سرور ایمیل پس از دریافت یک پیام جدید، آن را در سرور و در پوشه پیامهای دریافتی ذخیره میکند و کاربر زمانی که به برنامه مدیریت ایمیل خود وارد شود، میتواند به همه ایمیلهای قدیمی و جدید خود دسترسی پیدا کند. این روش از پروتکل IMAP یا پروتکل دسترسی به پیام اینترنتی استفاده میکند که همه پیامها را در سرور ایمیل ورودی بهصورت مرتب در پوشههای کاربر نگه میدارد.
- در روش دوم، که از پروتکل POP3 یا پروتکل اداره پست استفاده میکند، پیامهای جدید روی برنامه مدیریت ایمیل کاربر یا همان MUA دانلود شده و از روی سرور پاک میشوند.
البته امروزه به ندرت از پروتکل POP3 برای دریافت ایمیل استفاده میشود. زیرا در صورتی شما از برنامهی مختلف یا دستگاههای مختلف برای مدیریت ایمیل خود استفاده کنید، ایمیلهای جدید شما هر بار روی همان ابزاری که با آن به سرویس ایمیل متصل شدهاید دانلود شده و در سایر ابزارها در دسترس نخواهند بود.
پس از این که سرویس ایمیل پیام شما را به مخاطبتان تحویل دهد، او میتواند ایمیل شما را روی برنامه مدیریت ایمیل خود مشاهده کند.
فهرست پروتکلهای تبادل ایمیل
همانطور که گفته شد، سرویس ایمیل برای انتقال پیام از پروتکلهای اینترنتی زیادی استفاده میکند و آشنایی با این پروتکلها، به شما کمک میکند دانش عمیقتری در مورد سرویس ایمیل به دست بیاورید.
اولین نکته مهمی که در مورد پروتکلهای تبادل ایمیل باید بدانید این است که در فرایند ارسال ایمیل وفرایند دریافت ایمیل پروتکلهای متفاوتی استفاده میشوند.
پروتکل ساده انتقال ایمیل یا SMTP
همانطور که در قسمت قبل به طور مختصر اشاره شد، سرورهای ایمیل برای ارسال یک پیام ایمیل از پروتکل انتقال نامه ساده یا SMTP استفاده میکنند. پروتکل SMTP حاوی اطلاعات مربوط به جزئیات ارسال یک پیام ایمیل است و به طور خاص برای ارسال ایمیل استفاده می شود.
SMTP یک پروتکل در لایه برنامه (Appli) و پروتکل اتصال گرا است. SMTP برای ارسال ایمیل کارآمد و قابل اعتماد است. SMTP از TCP به عنوان پروتکل لایه انتقال استفاده می کند. ارسال و دریافت پیام ها بین سرورهای ایمیل از طریق شبکه TCP/IP انجام می شود. این پروتکل در کنار ارسال ایمیل، قابلیت اعلان نامه های دریافتی را نیز فراهم می کند. هنگامی که یک فرستنده ایمیلی را ارسال می کند، مشتری ایمیل فرستنده آن را به سرور ایمیل فرستنده میفرستد و سپس از طریق SMTP به سرور ایمیل گیرنده ارسال می شود. دستورات SMTP برای شناسایی آدرس ایمیل فرستنده و گیرنده همراه با پیامی که قرار است ارسال شود استفاده می شود.
برخی از دستورات SMTP عبارتند از HELLO، MAIL FROM، RCPT TO، DATA، QUIT، VERIFY، SIZE، و غیره. SMTP در صورتی که نامه به گیرنده تحویل داده نشود، پیام خطا ارسال می کند، بنابراین، پروتکل قابل اعتماد است.
عامل انتقال ایمیل یا MTA
عامل ارسال ایمیل یا Mail Transfer Agent برنامههایی هستند که پیام را دریافت کرده و به کاربر تحویل دهند. به طور کلی MTAها به دو صورت هستند:
- برخی از این MTAها مبتنی بر کلاینت هستند که لازم است روی دستگاه مشتری نصب شده باشند (مانند Outlook)
- نوع دیگر MTA مبتنی بر وب است و از طریق مرورگر وب قابل دسترسی است (مثل دسترسی به جیمیل یا یاهو)
بنابراین، برای تبادل پیامهای ایمیل هر دو سرور MTA و SMTP ضروری هستند، زیرا هر کدام یک کار تخصصی بر عهده دارند. MTA به دو طریق از طریق پروتکل POP3 یا از طریق پروتکل IMAP ایمیلها را به کاربران تحویل میدهد.
پروتکل POP3
این پروتکل مخفف عبارت Post Office Protocol است و نحوه کار آن به این شکل است که ایمیلها روی یک برنامه MUA یا برنامه مدیریت کاربر دانلود میشوند و از سرور حذف میشوند.
پروتکل IMAP
پروتکل IMAP یک کپی از هر پیام را در سرور ذخیره می کند تا برخلاف POP، چندین ابزار مختلف بتوانند به آنها دسترسی داشته باشند. پروتکلهای مختلف به این دلیل توسعه یافتهاند که هر پروتکل نیاز کاملا متفاوتی را برآورده میکند. به عنوان مثال، POP3 برای پشتیبانی از کلاینتهای سبک وزن و مدیریت آفلاین ایمیلها طراحی شده است. اما IMAP با هدف ایجاد دسترسی همگامسازی شده از طریق ابزارهای مختلف طراحی و توسعه
داده شده است.
پروتکل LDAP
یکی دیگر از پروتکلهایی که برخی از سرویسدهندگان سرویس ایمیل استفاده میکنند، پروتکل LDAP یا Lightweight Directory Access Protocol است که برای احراز هویت و دسترسی به اطلاعات کاربران استفاده میشود. البته این پروتکل تنها برای استفاده سرویس ایمیل نیست و برنامههای مختلفی برای احراز هویت و دسترسی به اطلاعات کاربران از این پروتکل استفاده میکنند.
پروتکل MIME
پروتکلMIME یا Multipurpose Internet Mail Extension Protocol یک پروتکل ایمیل است که امکان ارسال دادهها و اطلاعات غیر ASCII را از طریق SMTP فراهم میکند. MIME این امکان را به کاربران می دهد تا انواع مختلفی از دادهها مانند صدا، تصویر، فیلم و سایر برنامههای کاربردی را در اینترنت از طریق ایمیل ارسال و دریافت کنند. MIME این امکان را فراهم میکند تا چندین پیوست را با یک پیام ارسال کنید و نیز امکان ارسال پیام با طول نامحدود را ارائه کرده است.
چرا ایمیل به مقصد نمیرسد یا با تاخیر دریافت میشود
اینترنت را میتوان یک «بزرگراه الکترونیکی عظیم» در نظر گرفت که ازسرورهای مختلف، کامپیوترها ومسیرهای ارتباطی متعدد تشکیل شده است. همانطور که رفت و آمد تعداد زیاد وسیله نقیله، تصادف یا خرابی یک بخش از مسیر در دنیای واقعی میتواند منجر به ایجاد ترافیک و تاخیر در رسیدن به مقصد شود، در اینترنت هم مشکلاتی وجود دارد که منجر به تاخیر در دریافت پیام یا نرسیدن پیام به مقصد شود.
دلایل متعددی میتواند منجر به ایجاد تاخیر در رسیدن ایمیل به مقصد شود. درست است که سرورهای ایمیل سریع هستند، اما معمولا با حجم زیادی از پیامهای ایمیل در صف ارسال مواجه هستند. ترافیک اینترنت ممکن است برای تبادل یک پیام از چندین و چند سرور عبور کند و حتی ممکن است در طی مسیر نیاز شود که مسیر ارسال پیام دچار تغییر و مسیر یابی مجدد شود. سرورها ممکن است به هر دلیلی ارتباط خود را با اینترنت قطع کنند. کاربران ممکن است کابلهای شبکه را جدا کنند، تنظیمات MUA را دستکاری کنند یا این که تصمیم بگیرند که یک فایل حجیم ۱۰ مگابایتی را برای ۳۵ نفر از نزدیکترین دوستان خود بفرستند. هر یک از این موارد، ممکن است باعث ایجاد تاخیر در رسیدن ایمیلها به مقصد شود.
ازطرف دیگر ایمیلها در مسیر انتقال از بین کامپیوترها و سرورهایی ناشناس و نامعین عبور میکنند. در نتیجه سرعت تحویل یک پیام بسته به این که از کدام مسیر عبور خواهد کرد ممکن است متغیر باشد. پیامهای ایمیل اصطلاحا به صورت “ذخیره و بازارسال” در مسیر جابجا میشوند. ارسال ایمیلها به صورت ذخیره و بازارسال جهت اطمینان از تبادل آنهاست. چراکه در صورتی که تلاش برای ارسال ایمیل با شکست مواجه شود، امکان تلاش مجدد برای ارسال ایمیل فراهم است یا در صورتی که در مسیر ارسال دچار مشکل شود، امکان مسیریابی مجدد برای تبادل ایمیل فراهم خواهد شد.
علاوه بر چالشهای فنی فوق؛ مسئله مهم دیگری که وجود دارد، ضرورت مقابله با هرزنامهها و ایمیلهای حاوی ویروس و بدافزار است. زیرا این دست پیامها علاوه بر مصرف مقدار زیادی از پهنای باند، امنیت و پایداری سرویس ایمیل را دچار مشکل میکنن. بنابراین، همه سرورهای ایمیل باید مجهز به ابزارهایی برای رصد و ارزیابی ایمیلهای دریافتی کنند تا مانع رسیدن هرزنامهها و ایمیلهای مخرب به کاربران شوند. همین مسئله منجر به ایجاد موانعی در مسیر و در نتیجه تاخیر در رسیدن پیام به مقصد میشود.
از سویی، سرویسهای ایمیل رفته رفته نسبت به تنظیمات و پیکربندی پارامترها، تنظیمات نادرست DNS یا پارامترهای زمانبندی، قالبهای غیر متعارف ایمیل و مواردی از این دست حساسترشده اند و در نتیجه هر یک از این موارد میتواند منجر به رد شدن ایمیل در مقصد شود. گاهی اوقات قوانین سختگیرانه شرکتها و سازمانها برا حفاظت از اطلاعات کاربرانشان به گونهای است که با کوچکترین اشتباهی ایمیل شما به عنوان اسپم یا هرزنامه درنظر گرفته شود و در نتیجه هرگز به دست دریافت کننده نرسد یا به پوشه هرزنامه وی برود.
این بدان معنی است که شرکتها باید برای جلوگیری از اسپم شدن ایمیلهایشان در مقصد، سرویس ایمیل خود را به درستی و بر اساس استانداردها پیکربندی کنند (مانند اطمینان از اینکه سرور ایمیل به RFC ها پایبند است) و روش درست استفاده از سرویس ایمیل را به کارکنان خود آموزش دهند.