Сетевые средства Linux
Шрифт:
Функции протоколов получения почты
Как было сказано ранее, при организации почтового сервера необходимо установить сервер передачи почты. Без него использование сервера получения не будет иметь смысла, так как письма, предназначенные для доставки пользователям, попросту не будут поступать на почтовый сервер. В большинстве случаев письмо, подготовленное на компьютере пользователя, попадает на сервер передачи почты (не исключено, что на пути к получателю оно побывает на нескольких серверах передачи) и в конечном итоге попадает на сервер получения. В ответ на очередное обращение клиента сервер получения передает ему письмо.
В отличие от многих других протоколов, при доставке электронных писем некоторые серверы используются в качестве ретрансляторов (relay). Вместо того чтобы доставить письмо непосредственно на компьютер адресата, почтовая система пытается передать его на компьютер, расположенный
Рис. 11.1. В процессе доставки электронных писем может участвовать несколько серверов передачи, выполняющих роль ретрансляторов. Как правило, доставку сообщения на клиентскую машину осуществляет сервер получения
На рис. 11.1 представлен лишь один из возможных путей доставки почты. В некоторых случаях в процессе передачи письма может участвовать лишь один компьютер (так происходит, если письмами обмениваются пользователи одной системы). Не исключено, что цепочка серверов будет более длинной, чем это показано на рис. 11.1. Как в домене отправителя, так и в домене получателя передачей сообщения могут заниматься дополнительные компьютеры. В процесс доставки письма могут быть также вовлечены компьютеры из других доменов. Например, если студент закончил учебное заведение и устроился на работу в некоторую организацию, письма, адресованные ему, будут приходить по адресу, который он использовал ранее, а затем, если система настроена корректно, они будут перенаправляться по новому адресу. Как вы узнаете, изучив материал данной главы, серверы получения могут применяться не только на последнем этапе доставки письма, но и на других стадиях.
Следует помнить, что сервер получения не используется для передачи почты. Передачей сообщений занимаются другие серверы, реализующие SMTP или другой протокол аналогичного назначения. Но на компьютере может присутствовать как сервер передачи, так и сервер получения. Поэтому пользователь может передавать и получать письма посредством одного и того же узла сети, но использовать при этом различные протоколы. В некоторых случаях сервер передачи и сервер получения располагаются на разных компьютерах. Например, на узле
Хранение писем на стороне клиента и на стороне сервера
Как было сказано ранее, одна из функций сервера, реализующего протокол получения почты, состоит в том, чтобы хранить сообщения до тех пор, пока пользователь не обратится за ними. Когда клиент-программа обращается к серверу, почтовые сообщения копируются на клиентскую машину. На первый взгляд может показаться, что при этом они должны удаляться с сервера, однако так происходит не всегда. Ниже описаны случаи, когда целесообразно оставлять копии сообщений на сервере.
• При получении почты с двух различных компьютеров. В этом случае многие предпочитают оставлять копии сообщений на сервере, независимо от того, применяют ли они протокол POP или IMAP. Следует заметить, что при использовании протокола POP накопившиеся на сервере сообщения вскоре начинают мешать работе, так как POP предоставляет очень несовершенные средства для идентификации отдельных сообщений и их обработки.
• При использовании протокола IMAP. В этом случае есть возможность организовывать "папки" сообщений на сервере. Поэтому, если вы работаете на различных компьютерах, вы можете разместить сообщения на сервере удобным вам способом и не испытывать ненужных трудностей, возникающих вследствие дублирования сообщений. IMAP также предоставляет возможность копировать на пользовательский компьютер только заголовки сообщений (содержащие, в частности, адрес отправителя и тему письма), поэтому для просмотра корреспонденции с помощью данного протокола не требуется высокая пропускная способность линии связи.
В некоторых случаях различия между POP и IMAP несущественны для пользователя, но иногда они играют решающую роль при выборе протокола. Если вы всегда работаете на одном и том же компьютере и хотите хранить почтовые сообщения на локальной машине, вам подойдет как POP, так и IMAP. Если же вам приходится работать на разных машинах или если, работая на одном компьютере, вы используете различные программы просмотра почты, протокол IMAP будет более удобен для вас. Следует заметить, что при хранении писем на сервере для их просмотра требуется больше времени, особенно если вам необходимо часто обращаться к старым письмам. Как правило, для организации сервера IMAP требуется больший объем диска и более высокая пропускная способность соединения, чем для сервера POP, поэтому, если вам не нужны специальные возможности IMAP, лучше использовать для получения почтовых сообщений протокол POP.
Пример сеанса взаимодействия по протоколу POP
На самом деле POP — это несколько взаимодействующих между собой протоколов. На сегодняшний день наиболее популярна версия POP-3, которая использует TCP-порт 110. (Более ранняя версия POP-2 использовала порт 109.) Подобно многим другим протоколам, применяемым в Internet, POP-взаимодействие основано на обмене текстовыми сообщениями между клиентом и сервером. В POP-3 предусмотрено более десяти команд. Среди них можно отметить команды
Листинг 11.1. Пример сеанса взаимодействия по протоколу POP-3