Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Протокол SMTP

Основне завдання протоколу SMTP (Simple Mail Transfer Protocol) полягає в тому, щоб забезпечувати передачу електронних повідомлень (пошту). Для роботи через протокол SMTP клієнт створює TCP з'єднання з сервером через порт 25. Потім клієнт і SMTP сервер обмінюються інформацією поки з'єднання не буде закрито або перервано. Основною процедурою в SMTP є передача пошти (Mail Procedure). Далі йдуть процедури форвардінгу пошти (Mail Forwarding), перевірка імен поштової скриньки і висновок списків поштових груп. Найпершою процедурою є відкриття каналу передачі, а останньою – його закриття.

Електронна пошта представлена поштовим клієнтом (MUA, mail user agent - користувальницький поштову агент) для поштового сервера (MSA, mail submission agent – агент передачі електронної пошти) за допомогою SMTP по TCP-порту 587. Звідти MSA доставляє пошту своїм агентам пересилання повідомлень (MTA, mail transfer agent). Часто ці два агента є просто різними зразками одного і того ж програмного забезпечення, запущеного з різними параметрами на одному пристрої. Локальна обробка може бути проведена як на окремій машині, так і розділена між різними пристроями; в першому випадку залучені процеси мають загальний доступ до файлів, в другому випадку SMTP використовується для пересилання повідомлення внутрішньо, причому кожен хост налаштований на використання наступного пристрою в якості проміжного хоста . Кожен процес - сам по собі MTA, тобто – SMTP-сервер.

Граничний MTA повинен знайти цільової хост. Він використовує систему доменних імен (DNS) для пошуку записів поштової обмінника (mail exchanger - MX) домену одержувача (частина адреси, що знаходиться праворуч від символу @). Повертаємий запис поштового MX містить ім'я цільового хоста. Потім MTA підключається до сервера обміну в якості SMTP-клієнта.

Як тільки мета MX приймає вхідне повідомлення, вона передає його агенту доставки пошти (mail delivery agent – MDA) для локальної доставки повідомлення. MDA передбачає можливість зберігати повідомлення у відповідному форматі поштової скриньки. Прийом пошти, знову ж таки, може бути проведений як кількома, так і одним комп'ютером – зображення показує два найближчих скриньки для кожного випадку. MDA може доставляти повідомлення прямо на зберігання або передавати їх по мережі за допомогою SMTP або будь-яких інших засобів, у тому числі протоколу локальної пересилання пошти (Local Mail Transfer Protocol - LMTP) - похідного від SMTP, призначеного для цієї мети.

Після доставки на локальний поштовий сервер повідомлення зберігається для пакетного пошуку за аутентифицироваться поштовим клієнтам (MUA). Повідомлення витягується додатками кінцевого користувача (поштові клієнти) з використанням Internet Message Access Protocol (IMAP, який полегшує доступ до повідомлень і управляє зберігається поштою), або ж за допомогою Post Office Protocol (POP), який зазвичай використовує традиційний mbox-формат файлів, або фірмові системи на зразок Miscrosoft Exchange/Outlook або Lotus Notes/Domino. Клієнти мережевий пошти можуть використовувати будь-який метод, але протокол пошуку часто не відповідає офіційним стандартам.

SMTP визначає передачу повідомлення, а не його зміст. Таким чином, він задає оболонку повідомлення і її параметри (такі, як відправник оболонки), але не заголовок або тіло самого повідомлення. STD 10 і RFC 5321 визначають SMTP (оболонку), в той час як STD 11 і RFC 5322 – повідомлення (заголовок і тіло), офіційно званий форматом поштового повідомлення (Internet Message Format).

Команди SMTP вказують серверу, яку операцію хоче справити клієнт. Команди складаються з ключових слів, за якими слід один або більше параметрів. Ключове слово складається з 4-х символів та розділено від аргументу одним або декількома пропусками. Кожна командний рядок закінчується символами CRLF. Ось синтаксис усіх команд протоколу SMTP (SP – пробіл):

HELO <SP> <domain> <CRLF>

MAIL <SP> FROM: <reverse-path> <CRLF>

RCPT <SP> TO: <forward-path> <CRLF>

DATA <CRLF>

RSET <CRLF>

SEND <SP> FROM: <reverse-path> <CRLF>

SOML <SP> FROM: <reverse-path> <CRLF>

SAML <SP> FROM: <reverse-path> <CRLF>

VRFY <SP> <string> <CRLF>

EXPN <SP> <string> <CRLF>

HELP <SP> <string> <CRLF>

NOOP <CRLF>

QUIT <CRLF>

Звичайна відповідь SMTP сервера складається з номера відповіді, за яким через пробіл слід додатковий текст. Номер відповіді служить індикатором стану сервера.

Відправка пошти – насамперед підключаємося до SMTP сервера через порт 25 (для перевірки, можна це зробити через клієнт telnet smtp.mail.ru 25). Тепер треба передати серверу команду HELLO і наш IP адреса:

C: HELLO 195.161.101.33

S: 250 smtp.mail.ru is ready

При відправці пошти передаємо деякі потрібні дані (відправник, одержувач і сам лист):

C: MAIL FROM: <drozd> вказуємо відправника

S: 250 OK

C: RCPT TO: <drol@mail.ru> вказуємо одержувача

S: 250 OK

Вказуємо серверу, що будемо передавати зміст листа (заголовок і тіло листа).

C: DATA

S: 354 Start mail input; end with <CRLF>. <CRLF>

Передачу листа необхідно завершити символами CRLF.CRLF

S: 250 OK

C: From: Drozd <drozd@mail.ru>

C: To: Drol <drol@mail.ru>

C: Subject: Hello

Між заголовком листа і його текстом не одна пара CRLF, а дві.

C: Hello Drol!

C: You will be die on next week!

Закінчуємо передачу символами CRLF.CRLF.

S: 250 OK

Тепер завершуємо роботу, відправляємо команду QUIT:

S: QUIT

C: 221 smtp.mail.ru is closing transmission channel

Інші команди:

SEND – використовується замість команди MAIL і що показують, що пошта повинна бути доставлена на термінал користувача.

SOML, SAML – комбінації команд SEND або MAIL, SEND і MAIL відповідно.

RSET – вказує серверу перервати виконання поточного процесу. Всі збережені дані (відправник, одержувач та ін.) видаляються. Сервер повинен відправити позитивну відповідь.

VRFY – просить сервер перевірити, чи є переданий аргумент ім'ям користувача. У разі успіху сервер повертає повне ім'я користувача.

EXPN – просить сервер підтвердити, що переданий аргумент – це список поштового групи, і якщо так, то сервер виводить членів цієї групи.

HELP – запитує у сервера корисну допомогу про переданої в якості аргументу команді.

NOOP – на виклик цієї команди сервер повинен позитивно відповісти. NOOP нічого не робить і ніяк не впливає на вказані до цього дані.

 


Читайте також:

  1. Багаторівневий підхід. Протокол. Інтерфейс. Стек протоколів.
  2. Види атак на механізми та протоколи автентифікації
  3. Віддалена робота із ОС. Протокол SSH. Утиліта putty
  4. Деякі протоколи і послуги Рівня застосувань.
  5. Дипломатичний протокол: сутність і роль в міжнародних відносинах
  6. Довідка. Протокол, витяг із протоколу
  7. Додаткові протоколи до Женевських конвенцій 1977 р.
  8. Етапи еволюції поштових протоколів
  9. Задачі протоколів обміну файлами
  10. Кіотський протокол
  11. Класифікація протоколів
  12. Криптографічні протоколи автентифікації




Переглядів: 1541

<== попередня сторінка | наступна сторінка ==>
Протоколи для обміну повідомленнями | Протокол POP3

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.008 сек.