Ви надсилаєте та отримуєте його щодня, це миттєво, і це нічого не коштує. Це електронна пошта, один із найважливіших інструментів сучасності. Давайте подивимось, як це працює, під капотом і звичайною мовою.
Що саме таке електронна пошта?
Електронна пошта (скорочено електронною поштою, електронною поштою, електронною поштою тощо) - це дуже стара форма комп'ютерного спілкування. Давно - у технологічному, а не людському плані - комп'ютери були гігантськими машинами. Люди використовували комутовані термінали для доступу до них, і кожна машина зберігала сховище для кількох користувачів. Як і у випадку з будь-якою спільнотою, люди знайшли корисні та унікальні способи спілкування один з одним, і система обміну повідомленнями розвинулася. Застереження полягало в тому, що ви можете надсилати повідомлення лише іншим користувачам у тій самій системі, принаймні до 1971 року. Як розповідає історія, разом з ним з'явився Рей Томлінсон, який надіслав перший електронний лист, звернувшись до користувача в іншій системі, використовуючи символ "@" . Очевидно, що і основна динаміка, і далекосяжні наслідки були не такими простими, але саме це поняття привело нас до того, де ми є сьогодні.
(Зображення від ajmexico )
На той час електронна пошта була еквівалентом сьогоднішнього текстового повідомлення. З часом він змінювався і еволюціонував, як будь-що інше; у ньому є інформація про відправника та одержувача, рядок теми, тіло повідомлення та вкладення, але в цілому електронні листи - це досить прості документи. Однак дістатися з пункту А в пункт Б не так просто. Як і будь-що інше, тут задіяний хитромудрий процес, який працює за кадром, щоб зробити його максимально безшовним. Багато ідей, що використовуються при передачі електронної пошти, були важливими при формулюванні передачі документів, яка є основою таких речей, як системи дошок оголошень та всесвітня павутина.
Від відправника до одержувача
Почнемо з ілюстрації процесу. Спочатку це може не мати повного сенсу, але корисно буде повернутися до нього.
Коли хтось, скажімо, продавець спецій надсилає електронний лист, він повинен мати адресу у вигляді [email protected]. У нашому прикладі є [email protected]. Клієнт надсилає електронне повідомлення на сервер вихідної пошти через Простий протокол пересилання пошти. Сервер SMTP схожий на ваше місцеве поштове відділення, яке перевіряє ваші поштові відправлення та адресу та з’ясовує, куди відправити вашу пошту. Однак він не розуміє доменів. Вони є якоюсь абстрактною штукою, тому сервер SMTP зв’язується із сервером системи доменних імен. DNS-сервер - це свого роду телефонна або адресна книга для Інтернету; він перекладає домени, такі як "arrakis.com", на IP-адресу, наприклад "74.238.23.45". Потім він з’ясовує, чи є в цьому домені “MX” або сервери обміну поштою, і робить це про це. Це як ваша поштова консалтингова карта того, куди повинна йти ваша пошта, дзвінок у місцеве поштове відділення та перевірка, чи є у вашого друга поштова скринька чи P.O. для отримання пошти.
Тепер, коли SMTP-сервер має належну інформацію, повідомлення надходить із цього сервера на сервер обміну поштою цільового домену. Цей сервер називається MTA або агентом пересилання пошти. Він вирішує, куди саме покласти пошту, подібно до того, як пошта вашого друга з’ясовує, як найкраще її доставити. Потім ваш друг заходить і отримує пошту, як правило, за допомогою клієнта, який працює через POP або IMAP.
POP проти IMAP
Ці дві абревіатури переслідують панелі налаштувань електронної пошти скрізь, тому давайте розглянемо їх глибше. POP розшифровується як Post Office Protocol. Це корисно, оскільки подібно до поштового відділення ви можете зайти, захопити всю свою пошту, а потім піти. Вам не потрібно залишатися на зв’язку, і крім того, щоб залишити копію на сервері, це досить порятунна процедура. Якщо ви не залишите копію на сервері, це також не вимагає багато місця або пропускної здатності. Ви можете використовувати POP, щоб захопити пошту з декількох різних поштових скриньок на декількох різних серверах електронної пошти та консолідувати їх на одному.
Однак у нього є свої недоліки. POP - односпрямований протокол; інформація подорожує в один бік. Щойно ви завантажите електронне повідомлення клієнту, клієнт повинен відсортувати різні статуси тощо. Це чудово, якщо ви коли-небудь отримуєте доступ до пошти лише з одного місця. Однак сьогодні зазвичай можна отримати доступ до електронної пошти від клієнта вашого телефону, веб-інтерфейсу, коли ви десь далеко, і клієнта, коли ви вдома. Було б нудно перебирати всю цю інформацію на кількох пристроях, припускаючи, що для початку ви навіть зберегли копію кожного електронного листа.
(Зображення від SuccessByDesigns )
IMAP трохи розумніший щодо речей. Хоча POP можна вважати дуже «орієнтованим на клієнта», Протокол доступу до Інтернет-повідомлень був розроблений для роботи по-іншому: він «орієнтований на сервер» і двонаправлений. Клієнти мають двосторонній зв'язок зі своїми серверами. Всі повідомлення зберігаються на сервері, щоб кілька клієнтів мали до них доступ. Коли ви перевіряєте електронний лист на своєму телефоні, він позначається як прочитаний, і під час наступної взаємодії із сервером цей статус надсилається назад, щоб усі інші клієнти могли оновитись за допомогою нього. Це все одно, що ваша пошта надіслана помічнику на поштовому відділенні, який класифікує її та зберігає для вас, передає вам, перебуваєте ви вдома, на роботі чи фактично там, і вносить зміни до збережених копій, як і ви .
Ви можете зберігати належним чином позначений архів як на домашньому клієнті, так і на поштовому сервері. IMAP також підтримує офлайн-режим; зміни синхронізуються із сервером наступного разу, коли ви будете в мережі. Ви можете налаштувати поштові сервери IMAP також для отримання пошти з поштових скриньок POP, що дуже добре працює, якщо ви хочете консолідувати. Звичайно, оскільки IMAP працює з «хмарним» ідеалом, доступ до сервера та зберігання можуть бути проблемами. На щастя, простір для зберігання даних та пропускна здатність не такі дорогі, як раніше, але це, безумовно, може бути компромісом для деяких людей.
Як SMTP, так і MTA
На відміну від вашої фізичної поштової скриньки, вихідна та вхідна пошта обробляються двома різними типами серверів. Насправді немає дискримінації щодо прийому серверів; будь-який комп’ютер можна зробити MTA досить легко і добре обробляти речі. Відправлення пошти - це зовсім інша історія. SMTP-сервери повинні мати статичні IP-адреси, а більшість провайдерів блокують порт 25, щоб їх користувачі не могли самостійно надсилати пошту. Чому? Через величезну кількість спаму, що прогризає нашу колективну пропускну здатність, саме те, що ваш MTA повинен бути налаштований на фільтрацію. Ви можете налаштувати своїх клієнтів на використання SMTP-сервера вашого провайдера замість того, щоб запустити власний. Справа в тому, що для використання електронної пошти потрібні як MTA, так і SMTP-сервер, оскільки кожен спеціалізується на тому, що робить.
Електронна пошта є важливою частиною нашого повсякденного життя, але приємно розуміти, як це працює. Зрештою, ми б не мали Інтернету без нього.