Отправление и доставка письма

После того как вы подключились к Интернету, клиентская программа соединяется с почтовым сервером и передает серверу почтовый адрес отправителя sasha@xyz.com и текст самого сообщения. При отправке почты клиентская программа взаимодействует с сервером исходящей почты, то есть с SMTP-сервером, по протоколу SMTP, подключаясь к порту с номером 25 (рис. 5).

Процедура отправки электронной почты заключается в копировании вновь подготовленных сообщений из базы клиента в базу почтового сервера (в нашем случае – сервера abc.ru).

Маршрут продвижения письма условно представлен схемой на рис. 6.

Синим цветом показано, как письмо передается от абонента с электронным адресом petya@abc.ru на почтовый ящик абонента с адресом sasha@xyz. com, а затем на его локальный компьютер.

Рассмотрим этот процесс более подробно. После того как письмо доставлено на сервер отправителя, SMTP-сервер последнего должен связаться с сервером получателя. Для этого ему необходимо знать IP-адрес SMTP-сервера, получающего почту для адресов из домена xyz.com. Чтобы узнать этот адрес, он обращается к так называемому DNS-серверу (Domain Name Server) и задает ему вопрос: «Каков IP-адрес SMTP-сервера, получающего почту для адресов из домена xyz.com?» (работу DNS-серверов мы подробно описали в первой статье цикла в № 5’2002).

DNS-сервер выдает IP-адрес, после чего SMTP-сервер на abc.ru может соединиться с SMTP-сервером на xyz.com. Если по какой-либо причине SMTP-сервер на abc.ru не может связаться с SMTP-сервером на xyz.com, то послание встает в очередь для отправки. Обычно через каждые 15 минут производится попытка переслать послание из очереди. Через четыре часа отправителю будет послано сообщение о проблеме, а спустя пять дней большинство серверов прекращают попытки и возвращают отправителю недоставленную почту, так что бесследно ваше письмо не исчезнет.

Если посмотреть на протокол общения почтового клиента с SMTP-сервером, можно убедиться, что он достаточно прост. Здесь используются интуитивно понятные команды: типа HELO (представьтесь), MAIL FROM (определите отправителя), RCPT TO (определите получателя) и т.п.

Как только SMTP-серверу на abc.ru удается связаться с SMTP-сервером на xyz.com, он передает послание. Сервер xyz.com определяет, существует ли пользователь с именем sasha, и передает послание в ящик sasha.

После того как почта оказалась на сервере xyz.com, получатель имеет возможность скачать ее оттуда. При получении почты, накопившейся в вашем почтовом ящике, клиентская программа получателя взаимодействует с POP3-сервером по протоколу POP3. Поскольку при входе в Интернет вы уже сообщаете свой пароль и логин, то обычно при получении почты дополнительного введения этих данных не требуется4. Ваш почтовый клиент связывается с POP3-сервером и передает команды, которые определяют передачу копий посланий электронной почты на локальную машину клиента.

Как правило, после получения почты сообщения на сервере удаляются, если в почтовом клиенте не определено обратное. Как и SMTP-сервер, POP3-сервер при «разговоре» с почтовым клиентом получателя использует определенный набор интуитивно понятных команд: USER (введите ID пользователя), PASS (введите пароль), QUIT (покиньте POP3-сервер), DELE (удалите сообщение).

Следует отметить, что если SMTP-протокол весьма примитивен и всего лишь передает на сервер содержимое письма с адресами получателей, то работа с POP3-сервером гораздо более сложная, поскольку он позволяет иметь несколько папок, перемещать между ними письма, удалять их, пересылать, получать только заголовки и пр.

Для приема почты может использоваться и более современный протокол – IMAP, который дает возможность выборочно копировать пришедшие вам письма с почтового сервера на ваш компьютер.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: