Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Описание протокола POP3



Клиентские протоколы электронной почты

Несмотря на то что программы по поддержке POP3 и IMAP выполняют сходные функции, методы, которые используются в них для обеспечения доступа к почтовым ящикам пользователей, абсолютно различны. Оба эти протокола используются на рабочих станциях клиентов для получения почты с сервера, однако в каждом из них используется различный принцип хранения сообщений. Администратор почтовой системы должен знать об этих принципиальных отличиях, так как они очень важны для работы почтового сервера.

В этом разделе делается сравнительный анализ и дается оценка этим двум клиентским протоколам электронной почты, что поможет администратору почтовой системы сделать обоснованный выбор.

Протокол POP3

Протокол почтового офиса (Post Office Protocol — POP3) в последнее время приобрел большую популярность. Широко распространилась и де-факто стала стандартом его третья версия (отсюда и цифра 3 в его названии). На рис. 12.2 представлена схема получения почты с почтового сервера с помощью протокола POP3.

Рис. 12.2. Работа протокола POP3

Клиентский компьютер, согласно протоколу POP3, может получать сообщения из почтового ящика пользователя на сервере и помещать их в папки на своем жестком диске. После получения сообщения локальным компьютером его можно удалить с сервера или оставить там его копию. В любом случае просмотр полученного с сервера сообщения полностью зависит от программного обеспечения на клиентском компьютере. Программы для просмотра сообщений на рабочей станции часто называют почтовыми клиентами.

Протокол POP3 пользуется широкой популярностью у провайдеров сети Internet, так как им приходится обслуживать сотни почтовых ящиков на десятках серверов. Дело в том, что этот протокол позволяет провайдерам Internet принудительно удалять сообщения с серверов электронной почты после того, как они были получены из почтового ящика клиентами. Эта функция позволяет экономить дисковое пространство на почтовых серверах. Единственное неприятное следствие выполнения таких операций состоит в том, что вся почта для определенного пользователя должна храниться на одном компьютере, получающем почту из ящика на сервере, а многим пользователям необходимо работать с электронной почтой как в офисе, так и дома на своем домашнем ПК. В этом состоит главный недостаток протокола POP3. Например, если пользователь проверил свой почтовый ящик из дому и получил 20 новых сообщений, то все они уже хранятся на его домашнем ПК. Добравшись же на работу и еще раз проверив ящик со своей рабочей станции, он этих сообщений на почтовом сервере не обнаружит. Такая ситуация исключена при работе с протоколом IMAP.

Протокол IMAP

Протокол интерактивного доступа к почтовому ящику (Interactive Mail Access Protocol — IMAP) менее известен в мире электронной почты, но в настоящее время стремительно приобретает популярность. В данный момент распространяется версия 4 реализации 1 этого протокола (сокращенно IMAP4rev1). На рис. 12.3 представлена схема работы протокола IMAP.

Рис. 12.3. Работа протокола IMAP

Основное отличие между протоколами POP3 и IMAP — место хранения почтовых сообщений. Протоколом POP3 предусматривается, что все сообщения складируются на почтовом сервере, но далее по запросу клиента передаются к нему на рабочую станцию для дальнейшего манипулирования ими. Довольно часто сообщения, полученные клиентом, удаляются из ящика на сервере. В протоколе IMAP все сообщения обслуживаются на сервере электронной почты в соответствующих папках. Каждый пользователь имеет на сервере свою папку с названием по умолчанию INBOX. Все полученные сообщения помещаются в папку INBOX, откуда пользователь их может читать. При каждом подключении пользователя к серверу IMAP ему выдается список сообщений, которые находятся в папке INBOX. Затем пользователь может получить все или одно из них на любой компьютер в сети. Это прекрасная возможность, особенно для тех пользователей, которым в течение рабочего дня необходимо получать доступ к своему почтовому ящику с разных рабочих станций. Кроме того, для улучшения управления сообщениями можно создавать дополнительные папки на почтовом сервере. Все папки находятся на почтовом сервере, а не на рабочей станции клиента, помните об этом! Хотя эти свойства протокола IMAP облегчают жизнь пользователям электронной почты, они усложняют ее администраторам почтовых систем. Поскольку все почтовые сообщения находятся на сервере, то дисковое пространство на нем становится для почтовой системы критическим параметром.

POP3 против IMAP

Выбор между POP3 и IMAP может быть не в пользу ни того, ни другого. На многих узлах обеспечивается поддержка обоих протоколов, что дает пользователям возможность самим определять способ получения сообщений из почтового ящика на сервере. Для пользователей, работающих с электронной почтой в основном в домашних условиях, более приемлем протокол IMAP, в то же время клиенты, которые соединяются с сервером по запросу по коммутируемой линии, для чтения сообщений с сервера обычно пользуются протоколом POP3. При использовании такого сценария работы с почтой будьте осторожны. Клиенты, получающие почту с помощью POP3, не должны удалять сообщения с сервера, иначе они не будут доступны в сеансах IMAP. При использовании обоих протоколов вы даете пользователю возможность выбора сценария работы с почтовым сервером. К сожалению, это влечет за собой и увеличение нагрузки на персонал администраторов почтовой системы.

 

Описание протокола POP3

Введение

Перед работой через протокол POP3 сервер прослушивает порт 110. Когда клиент хочет использовать этот протокол, он должен создать TCP соединение с сервером. Когда соединение установлено, сервер отправляет приглашение. Затем клиент и POP3 сервер обмениваются информацией пока соединение не будет закрыто или прервано.

Команды POP3 состоят из ключевых слов, за некоторыми следует один или более аргументов. Все команды заканчиваются парой CRLF (в Visual Basic константа vbCrLf). Ключевые слова и аргументы состоят из печатаемых ASCII символов. Ключевое слово и аргументы разделены одиночным пробелом. Ключевое слово состоит от 3-х до 4-х символов, а аргумент может быть длиной до 40-ка символов.

Ответы в POP3 состоят из индикатора состояния и ключевого слова, за которым может следовать дополнительная информация. Ответ заканчивается парой CRLF. Существует только два индикатора состояния: "+OK" - положительный и "-ERR" - отрицательный.

Ответы на некоторые команды могут состоять из нескольких строк. В этих случаях каждая строка разделена парой CRLF, а конец ответа заканчивается ASCII символом 46 (".") и парой CRLF.

POP3 сессия состоит из нескольких режимов. Как только соединение с сервером было установлено и сервер отправил приглашение, то сессия переходит в режим AUTHORIZATION (Авторизация). В этом режиме клиент должен идентифицировать себя на сервере. После успешной идентификации сессия переходит в режим TRANSACTION (Передача). В этом режиме клиент запрашивает сервер выполнить определённые команды. Когда клиент отправляет команду QUIT, сессия переходит в режим UPDATE. В этом режиме POP3 сервер освобождает все занятые ресурсы и завершает работу. После этого TCP соединение закрывается.

У POP3 сервера может быть INACTIVITY AUTOLOGOUT таймер. Этот таймер должен быт, по крайней мере, с интервалом 10 минут. Это значит, что если клиент и сервер не взаимодействуют друг с другом, сервер автоматически прерывает соединение и при этом не переходит в режим UPDATE.

Авторизация

Как только будет установлено TCP соединение с POP3 сервером, он отправляет приглашение, заканчивающееся парой CRLF, например:

S: +OK POP3 server ready

Теперь POP3 сессия находится в режиме AUTHORIZATION. Клиент должен идентифицировать себя на сервере, используя команды USER и PASS. Сначала надо отправить команду USER, после которой в качестве аргумента следует имя пользователя. Если сервер отвечает положительно, то теперь необходимо отправить команду PASS, за которой следует пароль. Если после отправки команды USER или PASS сервер отвечает негативно, то можно поробовать авторизироваться снова или выйти из сесси с помощью команды QUIT. После успешной авторизации сервер открывает и блокирует maildrop (почтовый ящик). В ответе на команду PASS сервер сообщает сколько сообщений находится в почтовом ящике и передаёт их общий размер. Теперь сессия находится в режиме TRANSACTION. Подведём итоги с командами:

Команда: USER [имя]

Аргументы: [имя] - строка, указывающая имя почтового ящика

Описание: Передаёт серверу имя пользователя.

Возможные ответы:

  • +OK name is a valid mailbox
  • -ERR never heard of mailbox name

Примеры:

C: USER MonstrVB

S: +OK MonstrVB is a real hoopy frood

...

C: USER MonstrVB

S: -ERR sorry, no mailbox for frated here

Команда: PASS [пароль]

Аргументы: [пароль] - пароль для почтового ящика

Описание: Передаёт серверу пароль почтового ящика.

Возможные ответы:

  • +OK maildrop locked and ready
  • -ERR invalid password
  • -ERR unable to lock maildrop

Примеры:

C: USER MonstrVB

S: +OK MonstrVB is a real hoopy frood

C: PASS mymail

S: +OK MonstrVB's maildrop has 2 messages (320 octets)

...

C: USER MonstrVB

S: +OK MonstrVB is a real hoopy frood

C: PASS mymail

S: -ERR maildrop already locked

Команда: QUIT

Аргументы: нет

Описание: Сервер завершает POP3 сессию и переходит в режим UPDATE.

Возможные ответы:

  • +OK

Примеры:

C: QUIT

S: +OK POP3 server signing off

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.