Протоколы электронной почты
Наиболее распространены — SMTP, РОРЗ, IMAP.
Протокол SMTP (Simple Mail Transfer Protocol) был разработан для обмена почтовыми сообщениями в сети Internet. SMTP не зависит от транспортной среды и может использоваться для доставки почты в сетях с протоколами, отличными от TCP/IP и Х.25. Взаимодействие в рамках SMTP строится по принципу двусторонней связи, которая устанавливается между отправите-
ОТПРАВИТЕЛЬ ПОЛУЧАТЕЛЬ
![]() |
лем и получателем почтового сообщения (рис. 6.9). При этом отправитель инициирует соединение и посылает запросы на обслуживание, выступая в роли клиента, а получатель отвечает на эти запросы (выполняя функции сервера).
Канал связи устанавливается непосредственно между отправителем и получателем сообщения. При таком взаимодействии почта достигает абонента в течение нескольких секунд после отправки.
Обмен сообщениями и инструкциями в SMTP ведется в ASCII-кодах.
Для инициализации канала и его закрытия используются команды helo и quit соответственно. Первой командой сеанса должна быть helo.
В протоколе определено несколько видов взаимодействия между отправителем почтового сообщения и его получателем, которые называются дисциплинами.
Наиболее распространенной дисциплиной является отправление почтового сообщения, которое начинается по команде mail, идентифицирующей отправителя:
MAIL FROM:paul@quest.polyn.kiae.su
Следующей командой определяется адрес получателя:
RCPT ТО:popovl@apollo.polyn.kiae.su
После того как определены отправитель и получатель, можно отправлять сообщение командой data, которая вводится без параметров и идентифицирует начало ввода почтового сообщения. Согласно стандарту почтового сообщения RFC-822, отправитель передает заголовок и тело сообщения, которые разделены пустой строкой. Сам протокол SMTP не накладывает каких-либо ограничений на информацию, которая заключена между командой data и «.» в первой позиции последней строки.
Следующая дисциплина, определенная в протоколе SMTP, — перенаправление почтового сообщения (forwarding).
Верификация и расширение адресов составляют дисциплину верификации. В ней используются команды vrfy и ехрп. По команде vrfy сервер подтверждает наличие или отсутствие указанного пользователя.
В список дисциплин, разрешенных протоколом SMTP, входит, кроме отправки почты, еще и прямая рассылка сообщений. В этом случае сообщение будет отправляться не в почтовый ящик, а непосредственно на терминал пользователя, если пользователь в данный момент находится за своим терминалом. Прямая рассылка осуществляется по команде send, которая имеет такой же синтаксис, как и команда mail. Кроме send прямую рассылку осуществляют soml (Send or Mail) и saml (Send and Mail).
Протокол допускает рассылку почтовых сообщений в режиме оповещения. Для этого отправитель в адресе получателя может указать несколько пользователей или групповой адрес. Кроме вышеперечисленных дисциплин протокол позволяет отправителю и получателю меняться ролями друг с другом. Происходит это по команде turn.
Протокол обмена почтовой информацией РОРЗ (Post Office Protocol, версия 3) предназначен для пересылки почты из почтовых ящиков пользователей (на сервере) на их рабочие места с помощью программ-клиентов. Если по протоколу SMTP пользователи отправляют корреспонденцию через Internet, то по протоколу РОРЗ пользователи получают корреспонденцию из своих почтовых ящиков на почтовом сервере в локальные файлы, однако сообщения можно принимать, но нельзя отправлять. Формально взаимодействие по протоколу РОРЗ можно разделить на две фазы: аутентификации и обмена данными. В фазе аутентификации пользователь должен сообщить свой идентификатор и пароль (команды user и pass). Если аутентификация была произведена успешно, то система позволяет работать с домашним ящиком пользователя.
По команде list система сообщает число сообщений и их размер в байтах. По команде ret г можно получить текст сообщения, по команде dele — пометить сообщение к удалению. Удаляются сообщения только в момент окончания сеанса, поэтому по команде г set эти пометки можно снять. Команда quit завершает сеанс работы с сервером.
Протокол IMAP (Interactive Mail Access Protocol) представляет собой более надежную альтернативу протоколу РОРЗ и к тому же обладает более широкими возможностями по управлению процессом обмена с сервером. Работа протокола осуществляется по 143 порту TCP. Главное отличие от POP состоит в возможности поиска нужного сообщения и осуществлении разбора заголовков сообщения. Для поиска информации используется команда find с различными аргументами.