POP3

POP3 (Post Office Protocol version 3, RFC 1939, 1996) — старейший до сих пор используемый протокол получения почты. Модель: клиент подключается, скачивает все новые письма к себе, удаляет их с сервера, отключается. Как обычная почта в реальном мире.

Порты

ПортРежим
110Plain + STARTTLS
995Implicit TLS (POP3S)

Как работает

S: +OK POP3 server ready
C: USER alice
S: +OK User accepted
C: PASS s3cret
S: +OK Mailbox open, 3 messages
C: STAT
S: +OK 3 24500     (3 письма, 24500 байт)
C: LIST
S: +OK 3 messages
S: 1 8500
S: 2 9200
S: 3 6800
S: .
C: RETR 1
S: +OK 8500 octets
S: (содержимое письма)
S: .
C: DELE 1
S: +OK Message deleted
C: QUIT
S: +OK Bye

Основные команды

КомандаЧто делает
USER / PASSЛогин
STATКоличество и общий размер
LIST [n]Список писем с размерами
RETR nСкачать письмо №n
DELE nПометить на удаление
RSETОтменить все DELE
TOP n kТолько заголовки + k строк тела
UIDL [n]Уникальные ID писем
QUITПрименить DELE и отключиться

Отличие от IMAP

POP3IMAP
МодельСкачать локальноРаботать на сервере
МультиустройствоПлохо (у каждого своя копия)Идеально (общее состояние)
ПапкиТолько INBOXМного
Флаги (прочитано, важное)Нет (только «удалить»)Полностью
Поиск на сервереНетДа
Частичное скачиваниеТолько TOP (заголовки)Любые части (MIME)
Push уведомленияНетIDLE
Размер трафикаСкачал раз — навсегдаПостоянная синхронизация
Когда использоватьОдин клиент, слабый интернет, полный локальный архивВсё остальное

Опция "Leave on server"

Практически все POP3-клиенты позволяют «оставлять копию на сервере» N дней/навсегда — попытка эмулировать IMAP-поведение. Но без UID нормально не синхронизируется между устройствами: два клиента могут по-разному пометить письмо, состояние «прочитано» не синхронизируется.

Когда POP3 всё ещё жив

См. также