Протокол SMTP

Электронная почта

Для работы электронной почты в Internet разработан специальный протокол Simple Mail Transfer Protocol (SMTP), который является протоколом прикладного уровня и использует транспортный протокол TCP. Однако, совместно с этим протоколом используется и Unix-Unix-CoPy (UUCP) протокол.

Simple Mail Transfer Protocol был разработан для обмена почтовыми сообщениями в сети Internet. SMTP не зависит от транспортной среды и может использоваться для доставки почты в сетях с протоколами, отличными от TCP/IP и Х.25.

Почтовый адрес состоит из двух частей: идентификатора пользователя, который записывается перед "@", и доменного адреса машины, который записывается после знака "@".

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

Канал связи устанавливается непосредственно между отправителем и получателем сообщения. При таком взаимодействии почта достигает абонента в течение нескольких секунд после отправки.

Для связи с сервером используется проткол TCP, порт 25.

Рис.4.13. Схема взаимодействия по протоколу SMTP

Обмен сообщениями и инструкциями в SMTP ведется в ASCII-кодах.

Обмен по протоколу SMTP выглядит следующим образом:

Сторона Команда Описание
  Клиент HELO usc.edu После установления соединения по 25 порту клиент передает команду HELLO
  Сервер 250 mit.edu Команда успешно принята
  Клиент MAIL FROM: <Smith@usc.edu> От кого передается сообщение
  Сервер 250 OK Команда успешно принята
  Клиент RCPT TO: <Jones@mit.edu> Кому передается сообщение
  Сервер 250 OK Команда успешно принята
  Клиент RCPT TO: <Green@mit.edu> Кому передается сообщение
  Сервер 550 No such user here Указанный почтовый ящик отсутствует
  Клиент DATA Клиент начинает передавать данные
  Сервер 354 Start mail input; end with <CRLF>.<CRLF> Сервер готов получить данные
  Клиент Передача данных ………  
  Клиент Передача данных ………  
  Клиент . Завершение передачи
  Сервер 250 OK Данные успешно приняты
  Клиент QUIT Завершение почтовой транзакции
  Сервер 221 mit.edu Service closing transmission channel Соединение закрыто

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



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