- •Лекція №8 Тема 4. Протоколи прикладного рівня
- •Введение
- •Електронна пошта (e-mail).
- •4.3.1 Основные понятия
- •Доставка почты от отправителя к получателю проходит через три стадии
- •Заголовок smtp
- •Фазы передачи почты
- •Установление соединения
- •Передача сообщения
- •Окончание соединения
- •Получение писем из почтового ящика получателя
- •Почта на основе web
- •4.4. Протоколи дистанційного керування
- •4.4.1 Удаленный доступ
- •Ресурсы, доступные через telnet
- •Принципы организации Usenet
- •4.5 4.5 Протокол управління об'єднаної мережею snmp
- •4.5.1. Общие сведения о протоколе snmp
- •4.5.2. Модель управления, используемая в протоколе snmp
Доставка почты от отправителя к получателю проходит через три стадии
Рис. 1
Первая стадия
На первой стадии электронная почта c помощью пользовательского агента доставляется в локальный сервер. Локальный сервер ищет данные о доменном имени получателя на распределенных DNS серверах для преобразования символьного имени в IP – адрес. После преобразования доменного имени в IP – адрес локальный сервер готов передавать сообщение на удаленный сервер. Почта, возможно, сразу не посылается на удаленный сервер, поскольку он может быть недоступен к этому моменту. Поэтому почта накапливается в локальном сервере, пока ее не удастся отправить. Пользовательский агент использует программное обеспечение SMTP-клиента, локальный сервер использует программное обеспечение SMTP-сервера.
Средой для SMTP может служить отдельная локальная сеть, система сетей или весь Интернет. Протокол SMTP описывает передачу сообщений между почтовыми серверами
SMTP может работать с различными протоколами транспортного уровня (см. RFC 821 и RFC 1090), но обычно используется TCP. За SMTP закреплен порт TCP 25. Почта по протоколу SMTP посылается от клиента к серверу. Клиент запрашивает соединение с сервером. После успешного установления TCP-соединения сервер сообщает клиенту свое доменное имя. Он также может сообщить тип и версию установленного программного обеспечения. Однако, из соображений безопасности, чтобы не дать потенциальному взломщику воспользоваться известными ошибками данной версии сервера SMTP, передача этой информации часто блокируется системными администраторами.
Ответ сервера, свидетельствующий о готовности к приему команд клиента, служит сигналом к началу диалога, в котором клиент последовательно посылает серверу команды и ожидает ответы, либо подтверждающие исполнение команд, либо сообщающих о невозможности исполнения, либо содержащих информацию, запрошенную клиентом.
Вторая стадия
На втором шаге электронная почта c локального почтового сервера, который теперь действует, как клиент SMTP доставляется удаленному почтовому SMTP-серверу.
Почта передаётся между узлами по TCP-соединениям с использованием программ пересылки почты (Mail Transfer Agent, MTA; такими, как, например, sendmail, exim4, postfix, Microsoft Exchange Server, Lotus Domino и т. д.). Наиболее распространенный MTA для Unix систем - это Sendmail. При маршрутизации используется только доменная часть адреса получателя (то есть часть, находящаяся после символа @).
Заголовок smtp
Заголовок SMTP содержит в себе следующую информацию:
имя отправляющего узла (не имя отправителя, а имя сервера или компьютера пользователя, который обратился к серверу)
Поле MAIL FROM:, содержащее адрес отправителя. Адрес может быть произвольным (в том числе с несуществующих доменов, однако этот адрес может также проверяться при первичной проверке на спам).
Поле RCPT TO: — наиболее важное поле для доставки почты, содержит электронный адрес получателя. Большинство почтовых систем в случае возможности проверяет, существует ли пользователь и может отказаться принимать почту, если пользователь, указанный в RCPT TO не существует.
После того, как определены отправитель и получатель, можно отправлять сообщение, которое начинается командой DATA. Команда DATA вводится без параметров и идентифицирует начало ввода почтового сообщения.
Приведем пример обмена сообщениями при отправке почты:
S: MAIL FROM: <tva@lesson-tva.info>
R: 250 Ok
S: RCPT TO: <stgrup@mail.ru>
R: 250 Ok
S: DATA
R: 354 Start mail input; end with <CRLF>.<CRLF>
S: Это текст почтового сообщения
S: .
R: 250
Чтобы направить почту по нужному пути к удаленному серверу получателя, используются значения маршрута доставки и обратного маршрута, в которых указываются промежуточные агенты (relay agents). Промежуточный агент доставки - это МТА (Программа пересылки почты), так называемый почтовый хаб (mail hub), настроенный на передачу транзитной почты. Чтобы доставить сообщение, пользовательский агент передает его местному МТА (на локальном сервере), который, в свою очередь, передает его промежуточному агенту МТА. В следующем примере tva@lessons-tva.info является почтовым ящиком, a HOSTI, HOST2 и HOST3 - промежуточными агентами:
MAIL FROM:<@HOSTI, @HOST2, @HOST3:tva@lessons-tva.info >
В настоящее время промежуточные агенты присутствуют практически во всех сетях, входящих в Internet.
Рассмотрим почтовую транзакцию между промежуточными агентами SMTP. До того как сообщение будет передано следующему указанному в маршруте (в поле ТО:) компьютеру, имя данного компьютера удаляется из маршрута доставки и добавляется в начало обратного маршрута. К тому моменту, когда сообщение достигнет пункта назначения, маршрут доставки будет содержать только имя почтового ящика. В RFC 821 приведен пример того, как изменяется содержимое маршрутов по мере обработки почтового сообщения.
Когда промежуточный агент А получает почту со следующими аргументами:
FROM: < tva@lessons-tva.info > TO: <@HOSTA.INFO, @HOSTB.INFO: USERC@HOSTD.INFO>
он переправляет почту сетевому компьютеру В со следующими аргументами:
FROM: <@HOSTA.ARPA: tva@lessons-tva.info >
TO: <@HOSTB.INFO: USERC@HOSTD.INFO> .
Как видим, промежуточный агент A (HOSTA.INFO) убрал свое имя из заголовка <ТО> и добавил в заголовок <FROM>. Промежуточный агент компьютера В совершит аналогичное действие, и следующим пунктом назначения сообщения будет почтовый ящик USERC на компьютере HOSTD.INFO.
Примечание: Другими словами, обратные маршруты и маршруты доставки строятся агентами передачи почты по мере прохождения сообщения от одного агента к следующему.
Затем электронная почта накапливается в почтовом ящике получателя для дальнейшего использования.
Третья стадия
На третьей ступени удаленный агент пользователя применяет протокол POP3 или IMAP4, чтобы запустить почтовый ящик и получить почту.
Протоколы почтового доступа
Первая и вторая стадия доставки почты используют SMTP. Однако SMTP не включен в третью стадию, потому что STMP "проталкивает" сообщение от отправителя к получателю, даже если получатель этого не желает. Работу SMTP начинает отправитель, а не получатель. С другой стороны, третья стадия нуждается в протоколе, который "притягивает" сообщение, и эта операция должна начинаться у получателя. Третья ступень использует протокол почтового доступа.
В настоящее время применяются два протокола: Post Office Protocol, Version 3 — POP3 и Internet Mail Access Protocol, Version 4 — IMAP4.
POP3
Post Office Protocol, Version 3 (POP3) — протокол простой, но ограниченный функционально. Программное обеспечение клиента POP3 устанавливается в компьютере получателя; программное обеспечение POP3-сервера устанавливается в почтовом сервере.
Почтовый доступ стартует от клиента, когда пользователю надо загрузить его электронную почту из почтового ящика в почтовый сервер. Клиент (агент пользователя) устанавливает с сервером порт 110 и далее посылает ему имя и пароль для доступа к почтовому ящику. Пользователь может затем перечислить и отыскать почтовые сообщения одно за другим.