POP3
Ситуация, при которой доставка осуществляется в условиях постоянного соединения с Интернетом отправителя и получателя, показана на рис. 7.5, а. Иллюстрация ситуации, в которой отправитель находится в текущий момент на линии, а приемник — нет, приведена на рис. 7.5, б.
Рис. 7.5. Отправка и прием почты, когда приемник постоянно находится в подключенном состоянии и пользовательский агент работает на одной машине с агентом передачи сообщений (а); прием почты при модемном соединении получателя с провайдером (б) |
Протокол POP3 начинает свою работу, когда пользователь запускает почтовый редактор.
Последний дозванивается до провайдера (если только машина уже не находится в подключенном состоянии) и устанавливает TCP-соединение с агентом передачи сообщений с использованием порта 110. После установки соединения протокол POP3 проходит три последовательных состояния.1. Авторизация.
2. Транзакции.
3. Обновление.
Авторизация связана с процессом входа пользователя в систему. В состоянии транзакций пользователь забирает свою почту и может пометить ее для удаления из почтового ящика. В состоянии обновления происходит удаление помеченной корреспонденции.
Можно посмотреть, как все это происходит, набрав команду вида telnet mail.isp.com 110,
где mail.isp.com следует заменить на DNS-имя почтового сервера провайдера. Telnet устанавливает TCP-соединение с портом 110, прослушиваемым РОРЗ-сервером. После установки TCP-соединения сервер посылает ASCII-сообщение, объявляя о своем присутствии. Обычно оно начинается с +0К, затем следует комментарий. Возможный сценарий после установки TCP-соединения показан в листинге 7.4. Как и раньше, строки, начинающиеся с С:. говорят о том, что данная команда исходит от клиента (пользователя), а начинающиеся с S: — что это сообщения сервера (агента передачи сообщений на машине провайдера).
Листинг 7.4. Получение трех сообщений по протоколу POP3
S: +0К РОРЗ-сервер готов С: USER carolyn S: +0К
С: PASS vegetables
S: OK вход в систему произведен
С: LIST
S: 1 2505
S: 2 14302
S: 3 8122
S: .
C: RETR 1
S: (отправляет сообщение 1)
C: DELE 1 C: RETR 2
S: (отправляет сообщение 2)
C: DELE 2 С: RETR 3
S: (отправляет сообщение 3)
С: DELE 3 С: QUIT
S: +DK Конец соединения с РОРЗ-сервером
В состоянии авторизации клиент должен сообщить имя пользователя и пароль. После успешного входа в систему клиент может послать команду LIST для запроса списка писем, хранящихся в почтовом ящике. Каждая строка списка соответствует одному письму, в ней указываются его номер и размер. Точка является признаком конца списка.
После этого пользователь может запросить сообщения командой RETR и пометить их для удаления командой DELE. После получения (и, возможно, установки меток удаления) всех писем пользователь посылает команду QUIT для завершения состояния транзакций и входа в состояние обновления. После удаления сервером всех сообщений он посылает ответ и разрывает ТСР-соединение.
Несмотря на то, что протокол POP3 действительно поддерживает возможность получения одного или нескольких писем и оставления их на сервере, большинство программ обработки электронной почты просто скачивают все письма и опустошают почтовый ящик на сервере.
Такие действия означают, что реально хранится только одна копия писем — на жестком диске пользователя. Если с ним что-то случается, корреспонденция пропадает безвозвратно.Теперь подведем небольшие итоги того, как происходит работа с электронной почтой клиентов провайдера. Элинор создает сообщение для Кэролайн с помощью редактора электронной почты (то есть пользовательского агента) и щелкает на значке, чтобы отослать его. Программа передает письмо агенту передачи сообщений на хосте Элинор. Агент передачи сообщений видит, что письмо адресовано carolyn@xyz.com, и использует DNS для поиска записи MX для xyz.com (где xyz.com — провайдер Кэролайн). В ответ на запрос возвращается DNS-имя почтового сервера xyz.com. Агент передачи сообщений после этого снова обращается к DNS (например, используя gethostbyname): на этот раз ему нужно найти IP-адрес этой машины. Затем с помощью порта 25 найденной машины устанавливается TCP-соединение с SMTP-сервером. Передавая команды SMTP, аналогичные показанным в листинге 7.3, агент пересылает сообщение в почтовый ящик для Кэролайн и разрывает ТСР-соединение.
Через некоторое время Кэролайн загружает свой компьютер, соединяется с провайдером и запускает программу электронной почты. Та устанавливает ТСР- соединение через порт 110 РОРЗ-сервера, работающего на машине провайдера. Имя DNS или IP-адрес этой машины обычно указывается при установке программы электронной почты либо его получают у провайдера. После установки TCP-соединения почтовая программа Кэролайн запускает протокол POP3 для копирования содержимого почтового ящика на локальный жесткий диск. При этом происходит обмен командами, аналогичными показанным в листинге 7.4. По окончании передачи электронной почты ТСР-соединение разрывается. На самом деле в тот же момент можно разорвать и соединение с провайдером, поскольку вся почта уже находится на жестком диске у Кэролайн. Конечно, чтобы отправить ответ на письма, Кэролайн придется снова соединяться с провайдером, поэтому не всегда пользователи разрывают соединение сразу после загрузки почты.
Еще по теме POP3:
- Л.О. Доліненко, В.О. Доліненко, С.О. Сарновська. Цивільне право України, 2006
- ЦИВІЛЬНЕ ПРАВО УКРАЇНИ
- ПЕРЕДМОВА
- Частина І ПРОГРАМА КУРСУ «ЦИВІЛЬНЕ ПРАВО УКРАЇНИ»
- Розділ І. Загальні положення цивільного права
- Тема 1. Поняття цивільного права. Предмет та метод, система цивільного права. Функції та принципи цивільного права
- Тема 2. Цивільне законодавство України
- Тема 3. Поняття, елементи та види цивільних правовідносин
- Тема 4. Здійснення цивільних прав і виконання обов’язків
- Тема 5. Захист цивільних прав та інтересів
- Тема 6. Об’єкти цивільних прав
- Тема 7.ФІЗИЧНІ особи як суб’єкти цивільного права
- Тема 8. Юридичні особи
- Тема 9. Держава як суб’єкт цивільного права. Територіальні громади та Автономна Республіка Крим як суб’єкти цивільного права
- Тема 10. Правочини: поняття, види. Умови чинності правочину
- Тема 11. Представництво і довіреність
- Тема П.Строки. Позовна давність