POP3

Основные протоколы TCP/IP


Прикладной уровень 
HTTP, SMTP, FTP, DHCP, SSH, IRC, SNMP, DNS,
IMAP, NNTP, SIP, Telnet, BitTorrent, XDR, rlogin, RTP
Транспортный уровень 
TCP, UDP, SCTP, DCCP,RUDP
Сетевой уровень 
IPv4, IPv6, ARP, ICMP, IGMP
Канальный уровень 
Ethernet, 802.11 WiFi, Token ring, FDDI, PPP,
SLIP, ATM, DTM, Frame Relay, SMDS
Физический уровень 
RS-232, EIA-422, RS-449, EIA-485

POP3 (англ. Post Office Protocol Version 3 — протокол почтового отделения, версия 3) — это сетевой протокол, используемый для доставки сообщений электронной почты адресатам в сетях TCP/IP. Обычно используется в паре с протоколом SMTP; при этом SMTP обеспечивает передачу сообщения на пути от отправителя до конечного почтового сервера, а POP3 позволяет адресату получить это сообщение с сервера.

Альтернативным протоколом для сбора сообщений с почтового сервера является IMAP.

По умолчанию использует TCP-порт 110.

Стандарт протокола POP3 определён в RFC 1939.


Почтовый протокол Post Office Protocol (POP) Почтовая программа, первоначально описанная в RFC 821 была спроектирована для отсылки сообщений непосредственно пользователю, подключенному к терминалу, а также для хранения этих сообщений в почтовом ящике. Команды позволяли приемнику определить, подключен ли пользователь к терминалу (не к персональному компьютеру), принял ли он сообщение и есть ли почтовый ящик, в который нужно доставить сообщение. Не было вложений в сообщения, и сообщений отправлялись и принимались в 7-битовой ASCII-кодировке (восьмой бит устанавливался в ноль), что не позволяло отсылать двоичные сообщения (то есть вложения). Фактически тогда сообщение не должно было содержать более 1000 символов.

Итак, чтобы работать с почтой, узлу необходимо было все время находится в работоспособном состоянии (быть способным принимать). Хотя сегодня все еще существует терминалы, но это "явление" уже стало редким, используются в основном персональные компьютеры. Следовательно, конечным адресатом теперь является персональный компьютер, на котором есть протоколы SMTP и POP.

Post Office Protocol (POP) - протокол доставки почты пользователю из почтового ящика почтового сервера РОР.

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


Сервер POP находится между агентом пользователя и почтовыми ящиками.

В настоящее время существуют две версии протокола POP - РОР2 и РОРЗ, обладающими примерно одинаковыми возможностями, однако несовместимыми друг с другом. Дело в том, что у РОР2 и РОРЗ разные номера портов протокола. Протокол РОРЗ не является расширением или модификацией РОР2 - это совершенно другой протокол. РОР2 определен в документе RFC 937 (Post Office Protocol-Version 2, Butler, et al, 1985), a РОРЗ - в RFC 1939(Post Office Protocol - Version 3, Rose, Myers, 1991) или STD 53. Далее кратко рассмотрим POP вообще и более подробно - РОРЗ. PОРЗ разработан с учетом специфики доставки почты на персональные компьютеры и имеет соответствующие операции для этого.

Итак, если раньше почтовые сообщения большинства сетей доставлялись непосредственно от одного компьютера к другому, и если пользователь часто менял рабочие компьютеры или один компьютер принадлежал нескольким пользователям, то возникали определенные проблемы. Сейчас общепринята доставка сообщения не на компьютеры пользователя, а в специальные почтовые ящики почтового сервера организации, который круглосуточно работает (включен).

Конструкция протокола РОРЗ обеспечивает возможность пользователю обратиться к своему почтовому серверу и изъять накопившуюся для него почту.

Пользователь может получить доступ к РОР-серверу из любой точки доступа к Internet. При этом он должен запустить специальный почтовый агент (UA), работающий по протоколу РОРЗ, и настроить его для работы со своим почтовым сервером.

Итак, во главе модели POP находится отдельный персональный компьютер, работающий исключительно в качестве клиента почтовой системы (сервера) .

Подчеркнем также, что сообщения доставляются клиенту по протоколу POP, а посылаются по-прежнему при помощи SMTP.

То есть на компьютере пользователя существуют два отдельных агента-интерфейса к почтовой системе - доставки (POP) и отправки (SMTP).

Разработчики протокола РОРЗ называет такую ситуацию "раздельные агенты" (split UA). Концепция раздельных агентов кратко обсуждается в спецификации РОРЗ.

В протоколе РОРЗ оговорены три стадии процесса получения почты:

авторизация

транзакция

обновление

После того как сервер и клиент РОРЗ установили соединение, начинается стадия авторизации. На стадии авторизации клиент идентифицирует себя для сервера. Если авторизация прошла успешно, сервер открывает почтовый ящик клиента и начинается стадия транзакции. В ней клиент либо запрашивает у сервера информацию (например, список почтовых сообщений), либо просит его совершить определенное действие (например, выдать почтовое сообщение). Наконец, на стадии обновления сеанс связи заканчивается.

Приведем основные команды протокола РОРЗ, определенные RFC 1939

Команда

Описание

В состоянии авторизации:

USER

Идентифицирует пользователя с указанным именем 

PASS

Указывает пароль для пары клиент-сервер 

APOP name digest

Проводит авторизацию с помощью имени name и MD5-хеша digest - соединенных timestamp'а из заголовка приветствия и пароля.

QUIT

Закрывает TCP-соединение 

В состоянии транзакции:

STAT

Сервер возвращает количество сообщений в почтовом ящике плюс размер почтового ящика

LIST [msg]

Сервер возвращает идентификаторы сообщений вместе с размерами сообщений (msg - идентификатор сообщения)

RETR msg

Извлекает сообщение из почтового ящика (требуется указывать аргумент - идентификатор сообщения) 

DELE msg

Отмечает сообщение для удаления (msg - идентификатор сообщения) 

NOOP

Сервер возвращает положительный ответ, но не совершает никаких действий

RSET

Отменяет удаление сообщения, отмеченного ранее командой DELE

TOP msg len

Выводит первые len байт сообщения msg

UIDL [msg]

Выводит список сообщений с их уникальными идетнфикаторами (UID) или отдельного сообщения если задан параметр

QUIT

Переводит сревер в состояние обновления и закрывает соединение

В протоколе РОРЗ определено несколько команд, но на них дается только два ответа: +ОК (позитивный, аналогичен сообщению-подтверждению АСK) и -ERR (негативный, аналогичен сообщению "не подтверждено" NAK).

Оба ответа подтверждают, что обращение к серверу произошло, и что он вообще отвечает на команды. Как правило, за каждым ответом следует его содержательное словесное описание. В RFC 1225 есть образцы нескольких типичных сеансов РОРЗ. Сейчас мы рассмотрим несколько из них, что даст возможность уловить последовательность команд в обмене между сервером и клиентом.

Просмотреть работу протокола POP можно с помощью известной нам программы telnet. Официальный номер порта протокола POP - 110. Предположим, что клиент собирается установить TCP соединение с почтовым сервером по протоколу POP, чтобы проверить свою электронную почту.

telnet quest.net.kiae.su 110 После того как программа установила TCP-соединение с портом протокола РОРЗ, начинается стадия авторизации: клиенту необходимо послать команду USER с именем пользователя в качестве параметра. Если ответ сервера будет +ОК, нужно послать команду PASS с паролем этого пользователя:

user paul +OK Password required for paul. pass Kukuru23432

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


+OK paul has 6 messages (12576 octets). stat +OK 6 12576 list +OK 6 messages (12576 octets) 1 1447 2 2640 3 2296 4 1100 5 3025 6 2068 . noop +OK last +OK 4 is the last read message. retr 4 +OK 1100 octets Received: from mail1.relcom.ru (mail1.relcom.ru [193.125.152.4]) by quest.net.kiae.su (8.7.5/8.7.3) with ESMTP id CAA09628 for <paul@quest.net.kiae.su> Wed, 2 Jul 1997 02:51:43 +0400 (MSD) Received: from thevni (uucp@localhost) by mail1.relcom.ru (8.7.5.R.ML.S/Relcom-2A) with UUCP id BAA03544 for paul;Wed, 2 Jul 1997 01:34:45 +0400 (MSD) Received: by Relay1.relcom.ru (UUMAIL/2.0); Wed, 2 Jul 97 01:34:44 +0300 Received: by theor.vniinm.msk.su (UUPC/@ v5.06gamma, 07Feb93); Wed, 2 Jul 1997 01:24:57 +0400 To: paul@kiae.su References: <33B92C6B.9FA2C1A4@kiae.su> Message-Id: <AAeMNkpiq1@theor.vniinm.msk.sug> Organization: A.A. Bochvar Institute for Inorganic Materials, Theoret From: "Alexander Z. Solontsov" <sol@theor.vniinm.msk.su> Date: Wed, 2 Jul 97 01:24:56 +0400 X-Mailer: BML [MS/DOS Beauty Mail v.1.36] Subject: life Lines: 9 X-UIDL: 2313051b98ef908dceefe8b801d9e60d Status: RO

To: N.M.Sergeeva

Dear H.M.,

I am still alive, publishing a lot, and this year applied to RAN. Would be pleased to hear from you in a more derect way. Alexander

. dele 4 +OK Message 4 has been deleted. rset 4 -ERR Too many arguments for the rset command. rset +OK Maildrop has 6 messages (12576 octets) list +OK 6 messages (12576 octets) 1 1447 2 2640 3 2296 4 1100 5 3025 6 2068 . quit +OK Pop server at quest.net.kiae.su signing off. Connection closed by foreign host.

Команда STAT возвращает количество сообщений и количество байтов в сообщениях. По команде LIST система сообщает число сообщений и их размер в байтах. По команде RETR можно получить текст сообщения. По команде DELE пометить сообщение к удалению. Удаляются сообщения только в момент окончания сеанса, а во время сеанса они только помечаются как удаленные, поэтому по команде RSET эти пометки можно снять. Команда QUIT завершает сеанс работы с сервером.

Команда NOOP не возвращает никакой полезной информации, за исключением позитивного ответа сервера. Однако позитивный ответ означает, что сервер находится в соединении с клиентом и ждет запросов.

Обратите внимание на то, что отмеченные для удаления сообщения на самом деле не удаляются до тех пор, пока не выдана команда QUIT и не началась стадия обновления. В любой момент в течение сеанса клиент имеет возможность выдать команду RSET, и все отмеченные для удаления сообщения будут восстановлены.

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

 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home