→ Пошук по сайту       Увійти / Зареєструватися
Знання Сервiси Internet Електронна пошта

Формат поштових повідомлень

Будь-яке повiдомлення складається з конверта повiдомлення i тiла повiдомлення. Конверт мiстить iнформацiю, необхiдну для доставки й обробки повiдомлення. Тiло повiдомлення мiстить iнформацiю, яку вiдправник передає одержувачу. Iншими словами, конверт являє собою каркас, на який накладаються данi користувача. Конверт i данi в повiдомленнi тiсно взаємозв'язанi один з одним, усi поштовi системи для побудови конверта використовують iнформацiю тiла повiдомлення. Структура конверта, як правило, задається локальним поштовим програмним забезпеченням. Тому перед тим як вiдправляти данi у певному конвертi, потрiбно переконатися, що одержувач цих даних зумiє витягти їх з конверта.

У найпростiшому випадку конверт повiдомлення складається тiльки з заголовка. Заголовок вiддiлений вiд тiла повiдомлення порожнiм рядком. Заголовок складається з декiлькох рядкiв, що мiстять iнформацiю про повiдомлення.

Кожен рядок заголовка мiстить iм'я поля заголовка i данi поля заголовка. Iм'я поля вiддiлене вiд даних символом ":". Назви полiв повиннi складатися iз символiв ASCII вiд 32 до 126. Кожен рядок закiнчується <CRLF>. Певнi поля даних повиннi мати задану структуру, наприклад, поля "Date:", "From:" i т.д., iншi поля можуть мати довiльну структуру, наприклад, поля "Subject:", "Comments:" та iн.

Розглянемо склад i структуру основних полiв повiдомлення на наступному найпростiшому прикладi:

From: Somebody M.S.<mike@joke.ru>
To: zol@fun.ru
Date: Wed, 10 Sep 1997 16:17:50 +0300
Subject: Hello
Message-ID: <some.string@joke. ru>

Hello!
How do you do?

Це текст повiдомлення разом iз заголовком повiдомлення. Як ви бачите, повiдомлення досить небагатослiвне. Бiльша його частина являє собою заголовок. Розберемо докладнiше склад i структуру полiв конверта повiдомлення.

· Поле "From:" мiстить адресу вiдправника. Це поле мiстить адресу автора повiдомлення. Як правило, цей iдентифiкатор встановлюється в параметрах настроювання програми поштового клiєнта. Якби вiдправник доручив кому-небудь iншому вiдправити за нього повiдомлення, наприклад, своєму секретарю, повiдомлення мiстило б поле "Sender:". У цьому полi був би зазначений реальний вiдправник повiдомлення, тобто iдентифiкатор користувача, що ввiйшов у поштову систему i вiдправив даний лист, користуючись, наприклад, настроюваннями програми клiєнта автора повiдомлення. Наприклад, якби повiдомлення було вiдправлено секретарем lisa@joke.ru, воно мiстило б наступне:

From: mike@joke.ru (mike@joke.ru)
Sender: lisa@joke.ru

Поле "From:" може мiстити декiлька адрес вiдправникiв, вiд iменi яких було вiдправлене повiдомлення, але не повинно мiстити групову адресу, наприклад:

From: mike@ joke. ru,
vlad@joke. ru
Sender: lisa@joke.ru

Поле "To:" мiстить адресу(и) одержувача(iв) - кому призначене дане повiдомлення. Будь-яке повiдомлення повинно мiстити або поле "То:", або поле "Сс:" - яке мiстить адреси одержувачiв копiй даного повiдомлення, наприклад:

То: Oden@Mad-Host,
lrving@ Other-Host
Сс: Simmons@bra.x400.icl.co.uk, Blob@ultra.x400.icl.uk

·Поле "Date:" мiстить дату вiдправлення повiдомлення поштовою системою. Поле дати мiстить дату, час i годинну зону. Формат дати також залежить вiд поштової системи.

Поле "Subject:" мiстить тему даного повiдомлення, заповнюється користувачем самостiйно, вiдповiдно до утримування iнформацiйної частини повiдомлення.

Поле "Message-Id:" мiстить унiкальний iдентифiкатор повiдомлення. Вiн використовується для посилань на дане повiдомлення iнших повiдомлень та iдентифiкацiї частин даного повiдомлення. Склад iдентифiкатора визначається типом поштової системи i, як правило, складається з рядка символiв i адреси хоста вiдправника.

У повiдомленнi може бути поле "Reply-To:" - де зазначена поштова скринька, куди слiд надсилати вiдповiдi на дане повiдомлення. Наприклад, якщо вiдправник, що має адресу mike@joke.ru, захоче, щоб вiдповiдь на його повiдомлення одержав його секретар, вiн може зазначити:

Reply-To: lisa@joke.ru

Вiдповiдi на повiдомлення, у заголовку якого є поле "Reply-To:", вiдправляються за зазначеною в цьому полi адресою. Якщо цього поля немає, вiдповiдi надсилаються за адресою, зазначеною в полi "From:".

Мiнiмальний заголовок повiдомлення повинен мiстити поля:"Date:", "From:", "То:" або "Сс:". Усi iншi поля не є обов'язковими у форматi заголовка повiдомлення, i їх наявнiсть i змiст безпосередньо залежать вiд типу поштової системи, що використовується.

При передаваннi повiдомлення через промiжнi поштовi сервери до заголовка добудовуються записи "received:", що мiстять поля з адресами й часом обробки повiдомлення промiжними серверами, наприклад:

Received: from ns. joke. ru (ns.joke.ru [199.86.42.18])
by bulldozer.arcom.spb.su (8.8.5/t/97-Mar-14) with ESMTP id QAA10700
for <zol@joke.ru> Wed, 10 Sep 1997 16:24:02 +0400 (MSD)

Заголовок також може мiстити запис типу i версiї програмного забезпечення клiєнта ("X-Mailer:"),коментарi ("Comments:"), прiоритетнiсть ("Priority:") та iн., наприклад:

Priority: normal
X-rnailer: Pegasus Mail v3.22

Черговiсть полiв заголовка визначається поштовою системою, але, як правило, вони розмiщуються таким чином: "Received:", "Date:", "From:", "Subject:", "Sender:", "Reply-To:", "To:", "Cc:", "Comment:", "X-Mailer:", "Message-ID:" та iн.

На початковому етапi розвитку електронної пошти було цiлком достатньо передавати мiж користувачами тiльки текстовi повiдомлення, що мiстили тiльки символи з набору ASCII.Якщо користувачу потрiбно було вiдправити зображення або файл, що виконується, вiн кодував його символами ASCII i вставляв у текст повiдомлення.

Iз зростанням популярностi електронної пошти i розширенням можливостей комп'ютерiв з'явилася необхiднiсть передавати поштою тексти, написанi рiзними нацiональними мовами, зображення, файли,що виконуються, вiдео та iншi бiнарнi данi в унiфiкованому форматi. Стара схема передавання таких даних ставала все бiльш незручною через те, що:

·         Рiзнi клiєнти працювали з рiзноманiтними типами кодування, що часто призводило до неможливостi прочитати адресатом отриманi данi.

·         Не була визначена структура розмiщення й iдентифiкацiї типу кодованих даних. Щоб зрозумiти, що являє собою отримана iнформацiя, її треба було вийняти з повiдомлення i розкодувати.

У результатi було сильно ускладнено, а реально i унеможливлено, розвиток програмних засобiв перегляду даних повiдомлення "на льоту", тобто щоб програмне забезпечення клiєнта могло автоматично розпiзнавати тип даних i подавати їх користувачу вiдразу пiд час перегляду повiдомлення.

Загалом усе це дуже незручно, особливо, якщо вам припадає постiйно працювати з електронною поштою, наприклад, прочитувати i вiдповiдати на декiлька десяткiв електронних листiв у день.

загрузка...
Сторінки, близькі за змістом