Почтовый протокол POP3
В некоторых небольших узлах Интернета бывает непрактично поддерживать систему передачи сообщений (MTS – Message Transport System). Рабочая станция может не иметь достаточных ресурсов для обеспечения непрерывной работы SMTP-сервера. Для «домашних ЭВМ» слишком дорого поддерживать связь с Интернетом круглые сутки.
Но доступ к электронной почте необходим как для таких малых узлов, так и для индивидуальных ЭВМ. Для решения этой проблемы разработан протокол POP3 (Post Office Protocol). Этот протокол обеспечивает доступ узла к базовому почтовому серверу.
POP3 не ставит целью предоставление широкого списка манипуляций с почтой, он лишь получает и стирает почтовые сообщения. Более продвинутый и сложный протокол IMAP4 обсуждается в RFC-2060 (порт 143). Об аутентификации в POP3 можно прочесть в документе RFC-1734.
В дальнейшем ЭВМ-клиентом будет называться машина, пользующаяся услугами POP3, а ЭВМ-сервером – сторона, предлагающая услуги POP3.
Когда пользователь ЭВМ-клиента хочет послать сообщение, он устанавливает SMTP-связь с почтовым сервером непосредственно и посылает все, что нужно, через него. При этом ЭВМ POP3-сервер не обязательно является почтовым сервером.
В исходный момент ЭВМ POP3-сервер прослушивает TCP-порт 110. Если ЭВМ-клиент хочет воспользоваться услугами POP3-сервера, то устанавливает с ним TCP связь. По установлении связи POP3-сервер посылает клиенту уведомление (например, +OK POP3 server ready) и сессия переходит в фазу авторизации. После этого может производиться обмен командами и откликами.
Команды POP3 состоят из ключевых слов (3-4 символа), за которыми могут следовать аргументы. Каждая команда завершается парой символов CRLF. Как ключевые слова, так и аргументы могут содержать только печатаемые ASCII-символы. В качестве разделителя используются символы пробела. Каждый аргумент может содержать до 40 символов.
Сигнал отклика в POP3 содержит индикатор состояния и ключевое слово, за которым может следовать дополнительная информация. Отклик также завершается кодовой последовательностью CRLF. Длина отклика не превышает 512 символов, включая CRLF. Существует два индикатора состояния: положительный «+OK» и отрицательный «-ERR» (все символы прописные).
В процессе авторизации клиент должен представить себя серверу, передав имя и пароль. Если авторизация успешно завершена, сессия переходит в состояние транзакции (TRANSACTION). При получении от клиента команды QUIT сессия переходит в состояние UPDATE, при этом все ресурсы освобождаются и TCP-связь разрывается.
На синтаксически неузнанные и неверные команды сервер реагирует, посылая отрицательный индикатор состояния.
POP3-сервер может быть снабжен таймером пассивного состояния (10 мин.), который осуществляет автоматическое прерывание сессии. Приход любой команды со стороны клиента сбрасывает этот таймер в нуль.
Сервер нумерует все передаваемые сообщения из своего почтового ящика и определяет их длину. Положительный отклик начинается с +OK, за ним следует пробел, номер сообщения, еще один пробел и длина сообщения в октетах. Завершается отклик последовательностью CRLF. Переданные сообщения удаляются из почтового ящика сервера. Все сообщения, передаваемые во время сессии POP3, должны следовать рекомендациям формата интернет-сообщений [RFC822].
В состоянии транзакции клиент может посылать серверу последовательность POP3-команд, на каждую из которых сервер должен послать отклик.
Сервер перед закрытием канала по команде QUIT должен удалить из почтового ящика все сообщения, которые были перенесены с помощью команд RETR.
Предполагается, что все сообщения, передаваемые в ходе сессии POP3, имеют текстовый формат Интернет в соответствии с документом [RFC822].
Дата добавления: 2018-03-01; просмотров: 397;