pop протокол что это
В чем разница между POP и IMAP?
Протокол POP3 (Post Office Protocol — Протокол почтового отделения)
Протокол POP3 — это более ранний протокол, который изначально был разработан для использования только на одном компьютере. В отличие от современных протоколов, использующих двустороннюю синхронизацию, протокол POP3 поддерживает только одностороннюю синхронизацию электронной почты, позволяя пользователям скачивать электронные письма только с сервера в клиент. По этой причине учетным записям POP3 не хватает большинства основных функций, которые можно найти в более современных службах, таких как:
Возможность пометить сообщение как прочитанное на нескольких устройствах, т.е. при каждой загрузке сообщения электронной почты пользователем на другом устройстве с помощью POP оно будет отображаться как новое сообщение вместо указания того, что оно было прочитано на другом устройстве.
Возможность отправки элементов с нескольких устройств. Отправленные элементы невозможно синхронизировать с помощью POP. Их можно сохранить только на том устройстве, на котором они были созданы.
Возможность отправки сообщений электронной почты на ваше устройство по мере их поступления. Вместо этого вы должны настроить на своем устройстве периодическую автоматическую проверку почтового сервера на предмет поступления новых сообщений.
Наличие созданных специальных папок или настроенных параметров на одном устройстве, которые доступны на всех устройствах, использующих эту учетную запись электронной почты. При использовании POP пользователи должны вручную создавать папки или по-отдельности настраивать параметры на всех своих устройствах. Это означает, что если пользователи упорядочивают свою электронную почту на одном устройстве, то им придется делать это повторно на всех остальных устройствах, использующих эту учетную запись электронной почты POP.
Протокол IMAP (Internet Messaging Access Protocol — Протокол доступа к Интернет-сообщениям)
Для учетных записей IMAP сообщения хранятся на удаленном сервере. Пользователи могут входить посредством нескольких почтовых клиентов на компьютерах или мобильных устройствах и читать одни и те же сообщения. Все изменения в почтовом ящике будут синхронизированы на нескольких устройствах, а сообщения будут удалены с сервера только в том случае, если пользователь удалит электронное письмо.
Вы можете выполнять вход одновременно с нескольких компьютеров и устройств.
Ваш архив почты синхронизируется и хранится на сервере для обеспечения доступа всех подключенных устройств.
Отправленные и полученные письма хранятся на сервере до окончательного удаления пользователем.
Что такое IMAP и POP?
IMAP и POP — это два метода доступа к электронной почте. Рекомендуется использовать IMAP, если вам требуется проверять почту с нескольких разных устройств (например, телефона, ноутбука и планшета).
IMAP обеспечивает вам доступ к электронной почте с любого устройства, где бы вы при этом ни находились. Когда вы читаете почтовое сообщение с помощью IMAP, оно не скачивается и не сохраняется на вашем компьютере — вы просто читаете его из службы электронной почты. Это приведет к проверке электронной почты с разных устройств в любой точке мира: телефона, компьютера, компьютера друга.
IMAP скачивает сообщение, только когда вы его щелкаете, и вложения не скачиваются автоматически. Так вы сможете проверять сообщения гораздо быстрее, чем с помощью POP.
POP связывается с вашей службой электронной почты и скачивает из нее все новые сообщения. После скачивания на компьютер с Windows или Mac OS сообщения удаляются из почтовой службы. Это значит, что после скачивания почтового сообщения к нему можно обращаться только с того же компьютера. Если вы попытаетесь обратиться к сообщению с другого устройства, ранее скачанные сообщения будут недоступны.
Отправленная почта хранится локально на компьютере с Windows или Mac OS, а не на почтовом сервере.
Многие поставщики услуг Интернета предоставляют учетные записи электронной почты, которые используют POP.
Учетные записи веб-почты или почтовые приложения
Gmail, Outlook.com, Hotmail.com и iCloud — это веб-почта. Вход в учетную запись веб-почты выполняется в Интернете.
Если у вас есть компьютер с Windows или Mac OS, то для управления электронной почтой вы, вероятно, используете программу типа Outlook, Apple Mail или Thunderbird. Outlook, Apple Mail и Thunderbird — это почтовые приложения,которые вы устанавливаете на компьютере для управления электронной почтой. Они взаимодействуют с почтовыми службами, такими как Gmail или Outlook.com, получая и отправляя почту.
В почтовое приложение вы можете добавить любую учетную запись электронной почты, чтобы управлять ею оттуда. Например, вы можете добавить в приложение Outlook или Apple Mail учетные записи веб-почты (Gmail, Outlook.com, Hotmail.com, AOL и Yahoo) и почтовые учетные записи, предоставленные вашей организацией.
Добавление учетных записей веб-почты в почтовые приложения, такие как Outlook, Apple Mail, Thunderbird
Когда вы добавляете учетную запись электронной почты в почтовое приложение, оно пытается настроить доступ методом IMAP без вашего участия.
Трудности, которые могут при этом возникать у почтового приложения, обычно связаны с тем, что учетная запись настроена для доступа методом POP. В этом случае вам нужно перейти к поставщику услуг электронной почты и узнать имена pop- и SMTP-серверов, чтобы ввести данные в почтовое приложение. Эти сведения обычно выглядят как-то так:
Сервер входящих сообщений (IMAP): imap. имя службы>.com
Сервер входящей почты (POP): pop. имя службы>.com
Сервер исходящей почты (SMTP): smtp. имя службы>.com
Подробное описание протокола почтового отделения POP3
POP (Post Office Protocol) — протокол почтового отделения. Это достаточно старый протокол, первая версия появилась в 1984 году, в следующем году вышла вторая версия протокола, и вскоре после этого, появилась третья версия в 1988 году. В 1996 году протокол POP3 был расширен новыми механизмами аутентификации, а также так называемыми расширениями, которые позволяли добавлять в протокол новые команды.
Сейчас используется третья версия протокола POP, а первая и вторая считаются устаревшими.
Протокол РОР3 используется для чтения почты, предназначен для конкретного пользователя из хранилища сообщений. Письма в хранилище доставляются по протоколу SMTP.
Подход «загрузить и удалить»
Протокол РОР3 работает по модели “загрузить и удалить”. Согласно этой модели почтовый ящик на сервере является лишь временным хранилищем информации. Постоянно письма хранятся только на компьютерах клиента. Поэтому все письма, должны быть переписаны на клиент и работа с ними происходит только на клиенте. После загрузки письма, его необходимо удалить с сервера, так как протокол РОР3 не позволяет узнать загружали это письмо раньше или нет.
Преимущества POP3
Преимущество РОР3 заключается в том, что это очень простой протокол, а также то, что Ваши письма доступны вам даже, если у вас нет подключения к интернету.
Недостатки протокола
Существенным недостатком РОР3 является возможность работы только одного почтового клиента, который удаляет все письма, после того, как загрузил себе, хотя некоторые современные реализации серверов РОР3 позволяют сохранять сообщения, даже после того, как они были прочитаны, но в этом случае мы не можем определить на сервер пришло новое письмо или мы его уже читали.
Другим недостатком является то, что РОР3 считает почтовый ящик единым хранилищем писем. Нет возможности создавать папки, настраивать фильтры, чтобы сообщения автоматический попадали в эти папки, как то помечать письма и выполнять другие подобные действия. В протоколе РОР3 все это можно делать только средствами почтового клиента.
Место в стеке TCP/IP
РОР3 использует протокол TCP и 110 порт. При работе по протоколу РОР3 клиент проходит через три состояния:
Протокол РОР3 также как и многие другие протоколы прикладного уровня, например SMTP или HTTP, работают в текстовом режиме, также как в SMTP взаимодействие происходит в режиме запрос-ответ, при этом клиент и сервер пересылают друг другу обычные текстовые строки. Каких- либо специальных форматов пакетов не используется.
Команды POP3
Рассмотрим команды протокола РОР3. Команды USER и PASS используются на стадии авторизации, для того чтобы указать имя пользователя к почтовому ящику, к которому мы хотим подключиться и ввести пароль для защиты от несанкционированного доступа.
Следующие команды STAT, LIST, RERT, TOP, DELE выполняются на стадии транзакции, их выполнение возможно только, если стадия авторизации прошла успешно.
Ответы POP3
В РОР3 всего лишь 2 варианта ответа на команды:
Пример сеанса POP3
Рассмотрим пример сеанса загрузки электронной почты по протоколу РОР3.
Мы подключаемся к серверу РОР3 и устанавливаем TCP соединение с портом 110.
+OK Cyrus POP3 server ready // сервер отвечает сообщением со статусом +ОК сервер РОР3 готов.
USER asozykin // сначала нужно пройти авторизацию, для этого используется команду USER, где указывается имя пользователя.
+OK Name is a valid mailbox // в ответ сервер передает сообщение со статусом +ОК и говорит, что у данного пользователя есть почтовый ящик на этом сервере.
PASS 1234qwer //затем мы передаем пароль с помощью команды PAS.
+OK Mailbox locked and ready // сервер отвечает сообщением со статусом +ОК команда выполнена успешно, почтовый ящик заблокирован и готов для работы.
Мы помним, что протокол РОР3 рассчитан на работу только с одним клиентом, поэтому после того, как мы прошли стадию авторизации, почтовый ящик блокируется, и никакой другой клиент не может подключиться, пока мы не выйдем из соединения с помощью QUIT.
STAT //после успешной авторизации, начинается стадия транзакции. Сначала мы хотим узнать, сколько всего сообщений в ящике, для этого используется команда STAT.
+ОК 311 141957394 // Сервер отвечает сообщением +ОК команда выполнена успешно, писем в ящике 311, общий размер почтового ящика в байтах.
LIST // затем мы получаем список всех сообщений с помощью команды LIST, команда LIST вывод перечень сообщений
+OK scan listing follows
1 61960 // указывается номер сообщения и его размер.
2 2938 // здесь указана информация только о 2 письмах, на самом деле в выводе информация о 311 письмах.
…
. // и завершается вывод командой LIST точкой.
RETR 1 //После того, как мы узнали сколько у нас есть сообщений и какой их размер, мы можем загрузить их на клиент. Для этого используется команда RETR указываем номер сообщения, который хотим загрузить.
+OK message follow // Сервер отвечает сообщением +ОК
… // и передает письмо
DELE 1 // после того, как сообщение загружено, мы можем пометить его на удаление с помощью команды DELE
+OK marked deleted // в ответ сервер выдает сообщение +ОК команда выполнена успешно, сообщение помечено на удаление. Таким образом мы можем загрузить оставшиеся 310 сообщений.
QUIT // после того, как мы загрузим все письма которые нам нужны, мы выдаем команду QUIT на этом стадия транзакции заканчивается и начинается стадия обновления.
+OK Connection closed // сообщения которое помечены на удаление, удаляются и сервер разрывает соединение.
Заключение
Рассмотрели прокол РОР3 Post Office Protocol версии 3 — протокол почтового отделения. Этот протокол используется для чтения электронной почты из почтового ящика пользователя.
Протокол использует подход “загрузить и удалить”, при этом считается что почтовый ящик на сервере это только временное хранилище сообщений их необходимо загрузить на почтовый клиент для работы в оффлайн режиме.
Следствием такого подхода является возможность работы только одного клиента, который загружает сообщения себе и сразу удаляет после загрузки. Именно такой подход работы с электронной почтой был популярный 80-е и 90-е годы.
Электронную почту читали с одного компьютера, подключение к сети было не стабильным и часто дорогим. Однако сейчас у нас совершенно другая схема взаимодействие с электронной почтой, как правило сейчас используется несколько почтовых клиентов, на компьютере, на планшете, на смартфоне, а также различные VP(10 38) версии почтовых клиентов и мы хотели бы иметь доступ к своему почтовому ящику одновременно со всех почтовых клиентов.
С помощью средств протокола РОР3 этого сделать невозможно, поэтому на замену РОР3 был придуман новый протокол IMAP. В этом протоколе электронная почта постоянно хранится на сервере вместо загрузки на клиент. И поддерживается одновременная работа нескольких почтовых клиентов.
Протокол POP3 или IMAP: что лучше выбрать?
Если вам довелось заводить электронный почтовый ящик, то наверняка видели эти аббревиатуры: POP3 и IMAP. Они всплывают и при подключении уже существующих ящиков к почтовым клиентам. В этой статье расскажу, как эти названия расшифровываются и для чего эти протоколы нужны.
Что такое POP3 и IMAP?
Речь идет о протоколах передачи данных. Двух относительно популярных и используемых до сих пор. Оба выполняют простую задачу: позволяют получать и читать письма, используя один или несколько почтовых клиентов.
POP3 (или Post Office Protocol) разработали в 1984 году. Создатели протокола ориентировались на медленное и нестабильное dial-up подключение к сети тех времен. Весь процесс работы с почтой в POP3 организован так, чтобы адресант как можно менее зависел от ужасного интернета 80-х.
IMAP (или Internet Message Access Protocol) разработали спустя два года. Его создатели уже не так переживали по поводу наличия или отсутствия интернета и предполагали, что у клиента всегда есть стабильный доступ к сети. А значит всю приходящую корреспонденцию можно смело оставлять на сервере, чтобы владелец ящика мог прочитать входящие сообщения везде, где есть интернет.
Два противоположных подхода сформировали набор разных функций для каждого протокола. На тот момент каждый протокол приобрел свои плюсы и минусы. Со временем они перестали быть так заметны, как раньше, но мы все равно их обсудим.
Еще есть аббревиатура SMTP, которую часто приписывают в один ряд с IMAP, но это не совсем правильно. В отличие от IMAP и POP3 — SMTP отвечает не за прием и сортировку писем, а за их отправку. Так что любое их сравнение будет некорректным.
А что такое Exchange?
Да, напоминаю, что протоколов не два. Само по себе явление вовсе не бинарное, как и все в интернете. Есть вот Exchange.
Это технология компании Microsoft. По сути, коммерческое название для их собственного протокола передачи сообщений под названием MAPI (или Messaging Application Programming Interface). Принцип работы у этой технологии такой же, как у IMAP. С точки зрения функциональности они мало чем отличаются. Отличия внутри, и связаны они с проприетарной сущностью продукта Microsoft.
Чтобы воспользоваться Exchange-ящиком, надо иметь доступ к оплаченному серверу Exchange. Такие нередко задействуют в крупных организациях, поэтому есть шанс наткнуться на протокол MAPI при переходе в офис большой компании, где электронная почта играет важную роль для бизнеса в целом. Заводить персональный Exchange-ящик, наверное, не стоит. Лишние траты. А если все-таки хочется потратить деньги, то лучше уж на какой-нибудь Hey.
Читайте также
SMTP, POP3, IMAP, Exchange: это все?
Нет, это не все наименования, которые могут встречаться. Есть еще протоколы как для отправки писем, так и для управления ими на сервере. Вопрос лишь в целесообразности использования других технологий. Они либо вовсе не нужны, потому что устарели и больше не поддерживаются ни одним почтовым клиентом, либо настолько узкоспециализированы, что для базовой работы с почтой как-то не особо пригодны.
POP3 или IMAP: что же выбрать?
Как по мне, выбор очевиден. Мне кажется, что POP3 можно списать в утиль, так как его преимущества над IMAP не особо актуальны в нынешнем интернете. Люди несколько иначе работают с почтой, заходят в нее с нескольких разных устройств и не хранят в офлайн-виде. Поэтому IMAP — своего рода идеальный протокол для всех и каждого. С другой стороны, кто я такой, чтобы принимать решение за вас? Лучше расскажу, чем протоколы отличаются друг от друга, как работают, и на практических примерах объясню, какой из них стоит выбрать.
Как работают протоколы IMAP и POP3?
Мы уже выяснили, что разработчики обсуждаемых протоколов ставили противоположные задачи и готовились к совсем непохожим условиям работы. Это главным образом повлияло на то, как IMAP и POP3 устроены технически и как оба функционируют.
Как видите, IMAP практически ничего не загружает. Любые изменения происходят прямо на сервере. На устройство попадает только мелкий кэш и вложения. Но вложения при этом не пропадают из ящика. Вот в чем и есть главное отличие.
Но вы скажете «ОК, я теперь знаю принцип работы обоих протоколов и все такое, а что это значит на практике? Я просто хочу создать почтовый ящик с подходящим протоколом и все!»
Если интересует мое мнение, то еще раз перечитайте текст под заголовком «POP3 или IMAP: что же выбрать?». Если же нужна более объективная информация, то давайте пройдемся по плюсами и минусам каждого протокола на «живых» примерах.
Преимущества и недостатки POP3
Преимущества такие:
Недостатки:
Преимущества и недостатки IMAP
Плюсы:
Минусы:
Давай покороче, что выбрать? IMAP или POP3? Или Exchange?
Поговорим об основных отличиях. Смотрите, как обстоят дела.
Протокол/
Характеристики
IMAP
POP3
Хранение писем на устройстве
Письма хранятся на устройстве около 14 дней (только текст, без вложений)
Письма (вместе с вложениями) хранятся на устройстве
Хранение писем на сервере
Вся корреспонденция хранится на сервере
На сервере хранятся только непрочитанные письма
Параметры для почтового клиента
Идентичные настройки во всех почтовых клиентах
Отдельные параметры для каждого клиента
SSL/TLS
Тоже поддерживает SSL/TLS
Используемые порты
Характеристики Exchange совпадают с характеристиками IMAP.
А вообще, можно ответить себе на парочку вопросов.
Как много устройств я использую для работы с почтовым ящиком?
Если ответ «больше одного», то надо выбирать IMAP. В этом случае корреспонденция будет доступна на каждом устройстве, с которого вы авторизуетесь на почтовом сервисе. POP3, конечно, так не умеет.
Хочу ли я сохранить побольше свободного пространства на сервере?
Если на вашем почтовом сервере в 2020 почему-то крайне мало свободного места, то лучше использовать POP3. Как мы уже выяснили, он сохраняет письма на устройство. В таком случае нечему занимать место на сервере.
Раскладываю ли я письма по папкам?
Да? Тогда лучше IMAP. Тогда созданные папки будут храниться удаленно. Независимо от того, через какой клиент вы зайдете на почту, иерархия папок будет идентичной.
В компании, где я работаю, используется Exchange Server?
При положительном ответе вариантов попросту не остается. Придется подчиниться корпоративной политике.
После ответа на эти вопросы все должно встать на свои места, а вы наконец определитесь с выбором протокола.
Сети и системы передачи информации
Первый стандарт РОРЗ определен в RFC 1225 (Post Office Protocol-Version 3, J. Myers, M. Rose November 1994).
Последняя версия RFC1939 (J. Myers, M. Rose May 1996 )
Пользователь может получить доступ к РОР-серверу из любой точки доступа к Интернет.
Модель протокола POP3
Модель протокола POP
Принцип работы POP
В протоколе РОРЗ оговорены три стадии процесса получения почты:
обновление (завершение транзакции)
После того как сервер и клиент РОРЗ установили соединение, начинается стадия авторизации. На стадии авторизации клиент идентифицирует себя для сервера. Если авторизация прошла успешно, сервер открывает почтовый ящик клиента и начинается стадия транзакции. В ней клиент либо запрашивает у сервера информацию (например, список почтовых сообщений), либо просит его совершить определенное действие (например, выдать почтовое сообщение). Наконец, на стадии обновления сеанс связи заканчивается.
Ответ сервера может иметь два значения:
Если сервер содержит несколько строк, то последняя строка должна содержать «точку».
C: USER Pety // Пользователь сообщает свое имя, оно является идентификатором почтового ящика
S: +ОК // Сервер сообщает, что все в порядке
C: PASS Petypasw // Пользователь сообщает свой пароль
S: +ОК Pety’s maildrop has 2 messages (320 octets) // Сервер сообщает, в почтовом ящике Pety есть 2 сообщения
Пример неудачной авторизации:
Пример авторизации с цифровой подписью:
C: APOP Pety K3u7yG4TfR7gE55DD4ry6G4F // Имя и шифрованный пароль
S: +ОК Pety’s maildrop has 2 messages (320 octets)
После того как стадия авторизации окончена, обмен переходит на стадию транзакции. В следующих примерах демонстрируется возможный обмен сообщениями на этой стадии.
Команда STAT (просмотр ящика) возвращает количество сообщений и общее количество байтов в сообщениях:
C: STAT
S: +ОК 2 320 // 2 сообщения, общий размер 320 байт
Команда LIST (без параметра) возвращает список сообщений в почтовом ящике и их размеры:
Команда LIST с параметром (номер сообщения) возвращает информацию о заданном сообщении:
Команда TOP возвращает заголовок, пустую строку и первые n строк тела сообщения:
Команда RETR извлекает сообщение с указанным номером и помещает его в буфер местного UA:
Команда DELE отмечает сообщение, которое нужно удалить:
Команда RSET снимает метки удаления со всех отмеченных ранее сообщений:
C: RSET
S: +OK maildrop has 2 messages (320 octets) // в почтовом ящике 2 сообщения были на удаление
C: QUIT
S: +OK dewey POP3 server signing off
C: QUIT
S: +OK dewey POP3 server signing off (maildrop empty)
C: QUIT
S: +OK dewey POP3 server signing off (2 messages left)
Обратите внимание на то, что отмеченные для удаления сообщения на самом деле не удаляются до тех пор, пока не выдана команда QUIT и не началась стадия обновления. В любой момент в течение сеанса клиент имеет возможность выдать команду RSET, и все отмеченные для удаления сообщения будут восстановлены.
Происходит завершение транзакции. И удаление все помеченных сообщений.
Пример работы POP3
Просмотр сообщений на POP3 сервере с помощью Telnet
Получим письмо через Telnet.
Клиенту необходимо ввести следующие строки:
Подключение и получение письма telnet’ом (UNIX) с сервера POP (Дионис)
Протокол IMAP4 (Internet Message Access Protocol) позволяет клиентам получать доступ и манипулировать сообщениями электронной почты на сервере. Был разработан для замены POP3.
В отличии от POP3 позволяет клиенту манипулировать сообщениями на сервере.
IMAP, как стандарт, пока не принят, он остается «предложенным стандартом».
Принцип работы IMAP
Каждая команда клиента начинается с идентификатора или тега команды, состоящую из букв и цифр, (например, А0001,А0002 и т. д.). Тег является уникальным идентификатором данной команды клиента. Ответы сервера или следующие команды клиента могут ссылаться на данную команду по ее тегу.
Строки данных, передаваемые с сервера в ответ на команду клиента, могут не содержать тег, а содержать символ «*». Это означает, что они являются промежуточными строками потока данных ответа, а идентификатор их команды содержится в последней строке потока.
Взаимодействие клиента сервером не строится по принципу «запрос-ответ«. Клиент может отправить новую команду на сервера не дожидаясь ответа на предыдущую.
Некоторые команды IMAP
Аргументом команды является строка с идентификатором (именем) и паролем клиента:
S: * OK IMAP4 revl Service Ready
С: a001 login Vasy pasword // посылка имени и пароля
S: a001OK LOGIN completed // идентификация прошла успешно
Команда LOGIN передает пароль и идентификатор пользователя по сети в открытом виде. Если пользователю необходима защита информации своей почты, он может пользоваться командой AUTHENTICATE. Например, при использовании механизма шифрования KERBEROS, аутентификация выглядит следующим образом:
S: * OK KerberosV4 IMAP4revl Server
С: А001 AUTHENTICATE KERBEROS_V4
S: + AmFYig==
C: BAcAQrJ5EUkVXLkNNVS5FRFUAOCAsho84kLN3/IJmrMG+25a4DT
+nZIiriJjnTNHJUtxAA+oOKPKfHEcAFs9a3CL50ebe/ydHJUwYFd
WwuQlMWiy6IesKvjL5rL9WjXUb9MwT9bpObYLGOKilQh
S: + or//EoAADZI=
C: DiAF5MgA+oOIALuBkAAmw==
S: A001 OK Kerberos V4 authentication successful
После регистрации в системе клиент должен выбрать каталог (папку) сообщений, с которым он будет работать. Выбор каталога осуществляется командой SELECT. Аргументом команды является имя почтового каталога:
Если пользователю необходимо получить информацию о состоянии какого-либо каталога, достаточно воспользоваться командой EXAMINE с именем каталога в качестве аргумента команды, например:
С: А932 EXAMINE bloop
S: * 17 EXISTS
.
Команда EXAMINE возвращает те же параметры, что и команда SELECT, а отличается от команды SELECT только тем, что открывает заданный почтовый ящик исключительно на чтение.
Если необходимо запросить статус какой-либо папки, не меняя текущий каталог, можно воспользоваться командой STATUS. В качестве параметров данной команде придаются: имя папки и тип запрашиваемой информации. В зависимости от указанного типа, команда может возвращать: количество сообщений в папке, количество новых сообщении количество непрочитанных сообщений, UIDVALIDITY каталога, UID следующего сообщения, которое будет добавлено в данную папку, например:
С: A042 STATUS blob (MESSAGES UNSEEN)
S: * STATUS blob (MESSAGES 231 UNSEEN 12)
S: A042 OK STATUS completed
С: А004 LIST «/» *
S: * LIST (\Noinferiors ) «/» INBOX
S: * LIST
Ответ сервера содержит список папок в соответствии с их положением в иерархии и флаги данных папок (флаг «\Noinferiors» означает, что внутри данной папки нет, и не может быть построена иерархия).
После получения информации на каталог, пользователь может прочитать любое сообщение или определенную группу сообщении, часть сообщения или определенные атрибуты сообщения. Для этого используется команда FETCH. Аргументами данной команды являются порядковый номер сообщения и критерии запроса. Критерии содержат описание вида возвращаемой информации. Например, можно запросить части заголовков или UID-сообщений в папке, или сообщения, имеющие или не имеющие определенные флаги. Так запрос заголовков сообщений, находящихся в INBOX с порядковыми номерами от 10 до 12, будет выглядеть так:
После просмотра сообщения, пользователь может сохранить его с другими флагами, добавить или удалить флаги сообщения ( пометить данное сообщение на удаление). Для этого используется команда STORE. Аргументами команды являются: номера сообщений, идентификатор операции и перечень флагов. Например, операция добавления флага удаления («\Dеleted») трем сообщениям выглядит следующим образом:
С: АОО3 SТОRЕ 2:4 +FLAGS (\DELETED)
S: * 2 FETCH FLAGS (\Deleted \ Seen)
S: * 3 FETCH FLAGS (\Deleted )
S: * 4 FETCH FLAGS (\Deleted \Flagged \Seen)
S: A003 OK STORE completed
Ответом на выполнение команды будут переданы строки новых флагов указанных сообщений.
Пользователь также может организовать поиск сообщений по определенным критериям. Для этого используется команда SEARCH. Например, поиск всех непрочитанных сообщений, поступивших от «smith» с 1-03-96 будет выглядеть так:
C: A282 SEARCH UNSEEN FROM ‘Smith» SINCE 1-Mar-1996
S: * SEARCH 2 84 882
S: A282 OK SEARCH completed
Результатом поиска будут сообщения с последовательными номерами 2, 84 и 882.
IMAP4 позволяет не только искать и читать сообщения в каталогах, этот протокол позволяет добавлять, копировать и перемещать сообщения в каталоги. Добавление сообщения в папку можно осуществить командой APPEND:
Команда COPY копирует сообщения с заданными порядковыми номерами в указанный каталог, например:
C: A003 COPY 2:4 MEETENG
S: A003 OK COPY completed
Пример работы IMAP4
Просмотр сообщений на IMAP4 сервере с помощью Telnet
Получим письмо через Telnet.
Клиенту необходимо ввести следующие строки:
a001 login bogomolov ***********
a002 select inbox
a004 fetch 1 rfc822.header
Подключение и получение заголовка письма telnet’ом (UNIX) с сервера IMAP4 (Дионис)