Электронная почта
Изначально SMTP-системы рассчитывались на передачу информации исключительно в текстовом виде и не были ориентированы на передачу символов национальных алфавитов, т. е. использовали 7-битный набор символов. Для решения проблемы передачи двоичных файлов был разработан стандарт UUENCODE, позволяющий внедрять предварительно преобразованные из бинарного в текстовый вид произвольные данные… Читать ещё >
Электронная почта (реферат, курсовая, диплом, контрольная)
Актуальность выбранной темы состоит в следующем. Сейчас все популярнее становится система электронной почты. Что это такое, каким образом ее можно использовать, как разобраться в адресах E-mail, какие преимущества и недостатки почтовых программ в глобальных и локальных сетях на сегодняшний день мы имеем — в данной курсовой работе необходимо разобраться в этих сложных вопросах.
Почта — традиционное средство связи, позволяющие обмениваться информацией, по крайней мере, двум абонентам. Для того, чтобы этот обмен состоялся, необходимо написать послание и, указав адрес, опустить в почтовый ящик, откуда письмо неминуемо попадет на почтовый узел. Если указанный адрес соответствует общепринятым стандартам, то через некоторое время почтальон положит его в почтовый ящик адресата. Далее абонент вскроет послание, и — обмен информацией состоялся. Чтобы ускорить процесс, необходимо поднять телефонную трубку, набирать телефонный номер и, если произойдет правильное соединение, то абонент услышит необходимую информацию. Если абонент не отвечает или его номер занят, придется повторить процедуру еще раз.
Эти два вида связи — почтовая и телефонная — стали традиционными, они имеют свои достоинства и недостатки. А что же такое электронная почта? Электронная почта — обмен почтовыми сообщениями с любым абонентом сети Internet. Существует возможность отправки как текстовых, так и двоичных файлов. На размер почтового сообщения в сети Internet накладывается следующее ограничение — размер почтового сообщения не должен превышать 64 килобайт.
Она позволяет пересылать сообщения практически с любой машины на любую, так как большинство известных машин, работающих в разных системах, ее поддерживают.
Основная привлекательность электронной почты — ее быстрота. Однако есть другие преимущества, которые не так широко известны. Телефон также предоставляет почти мгновенный доступ, но исследования показали, что около 75% телефонных вызовов заканчиваются безуспешно. Электронная почта имеет ту же скорость доступа, что и телефон, но не требует одновременного присутствия обоих абонентов на разных концах телефонной линии. Кроме того, она оставляет письменную копию послания, которое может быть сохранено или передано дальше. Более того, письмо одновременно может быть послано нескольким абонентам.
Электронная почта
Электронная почта — одна из наиболее ранних сетевых служб. Её первоначальное назначение состояло в доставке коротких текстовых сообщений от отправителя к адресату через почтовых серверов. Сегодня средства электронной почты доставляют не только текстовые сообщения, но и произвольные файлы данных, а также сообщения с элементами форматирования, графикой, звукозаписью и другими мультимедийными компонентами. Существуют также средства, позволяющие создавать, редактировать, отправлять, принимать и воспроизводить голосовые и видеосообщения. Одним из направлений функционального совершенствования электронной почты в настоящее время стала интеграция со средствами мобильной и факсимальной связи. Ныне технические средства для работы не ограничены только компьютерами. В отправки и получении текстовых и голосовых сообщений можно использовать такие средства связи как сотовые телефоны, пейджеры, мобильные вычислительные устройства PDA (Personal Digital Assistant).
Для работы с электронной почтой пользователь должен выполнить следующие действия:
1. Зарегистрироваться на одном из серверов электронной почты, предоставляющем услуги как SMTP и POP3. Регистрация называется получением учётной записи. В итоге регистрации клиент получает учётную запись SMTP и учётную запись POP3. Теоретически эти записи можно получить на разных серверах, но это не удобно, и обычно их получают у той организации, которая и представляет общий доступ в Интернет, то есть у сервис-провайдера.
2. Установить на своём компьютере программу клиента электронной почты. Как правило, работа и с входящей электронной почтой обеспечивается одной и той же программой, хотя это не обязательно.
3. Настроить почтового клиента на работу с учётными записями SMTP и POP3. При настройке в программу вводятся регистрационные данные пользователя (регистрационные имя пароль), полученные при заключении договора с поставщиком услуг электронной почты. Это удобно, чтобы при подключении к серверу POP3 программа могла предъявить серверу права автоматически, не вынуждая каждый раз вводить данные вручную.
4. После настройки клиентского программного обеспечения пользователь может создать с его помощью сообщение, ввести адрес электронной почты получателя и дать команду отправки.
5. Далее сообщение движется по цепочке почтовых серверов от SMTP — сервера отправителя к POP3 — серверу получателя, где поступившие сообщения накапливаются до момента, когда адресат установит соединение с сервером.
6. В момент подключения к своему «почтовому ящику» адресат может получить:
· оповещение о наличии почтовых сообщений;
· служебную информацию, взятую из полей заголовка сообщения (имя отправителя, дату отправления, размер и тему сообщения и т. п.);
· полный текст сообщения.
Что именно получит адресат, зависит от того, как настроена его клиентская программа. Он не может управлять объёмом и составом информации, поступающей в «почтовый ящик» на сервере, но он может управлять тем, в каком объёме эта информация транспортируется на его компьютер. Разумеется, это возможно, только если его программа — клиент обладает необходимой функциональностью (поддерживает необходимые функции).
«Обычная» электронная почта, основанная на протоколах SMTP и POP3, называется E-Mail. Наряду с ней, в последние годы образовалась и развилась другая система электронной почты Интернета, основанная на службе WWW и называющаяся Web-Mail. Это не самостоятельная служба, а сервис, реализованный средствами службы World Wide Web на основе рассмотренного нами ранее протокола HTTP. Со стороны Интернета этот сервис поддерживается обычными Web-серверами. а на клиентской стороне для работы с ним достаточно иметь обычный Web-браузер. Это удобно для тех, кто хорошо освоил работу с Web-браузером и не хочет тратить время на освоение специфических программных средств электронной почты.
Web-Mail — это эмуляция работы старой самостоятельной службы E-Mail средствами Web-технологий, поддерживающий полный набор её функций, так что со стороны пользователя разница проявляется только в том, какие программы используются для работы, и в том, как выполняется подключение к службе.
Общий порядок работы с электронной почтой Web-Mail
1. Учётная запись электронной почты Web-Mail создаётся на Web-узле службы. Подключение к нему выполняется обычным переходом по URL-адресу с помощью браузера. Регистрация выполняется путём заполнения HTML-формы на одной из Web-страниц.
2. Подготовка и отправка почтового сообщения выполняется путём заполнения полей Web-формы. Далее сообщение передаётся по заданному адресу. Созданные сообщения фактически являются документами HTML и просматриваются с помощью любого браузера. Как документы HTML, они могут иметь шрифтовое и цветовое форматирование, фоновое изображение, встроенную графику и другие объекты. Для стран Дальнего Востока и Юго-Восточной Азии важным удобством электронной почты, основанной на Web, является то, что в сообщениях можно использовать символьные наборы, в которых каждый символ кодируется двумя байтами. Это означает, что в формате HTML можно пересылать сообщения на китайском, японском, корейском и других языках нероглифического письма. Если предполагается, что адресат не имеет учётной записи на Web-сервере, а пользуется «обычной» электронной почтой с учётной записью на сервере POP3, тоже способны воспроизводить сообщения в формате HTML.
3. Сообщения, полученные на адрес Web-Mail, сохраняются на сервере и доступны для просмотра с помощью браузера, как обычные Web-страницы. При необходимости их можно скопировать на жёсткий диск, хотя делать это и не обязательно. Свой «почтовый ящик» на Web-сервере можно рассматривать как удалённую Web-папку и вообще не хранить информацию на компьютере.
Протоколы входящей и исходящей почты
Как и всякая сетевая служба, электронная почта реализуется с помощью пары программ и протокола взаимодействия между ними. Со стороны Интернета работает программа-сервер, а со стороны потребителя — программа-клиент. Характерная особенность электронной почты, отличающая её от других служб Интернета, состоит в том, что её работа основана на двух прикладных протоколах. Один используется для отправки исходящих сообщений, а другой — для получения входящей корреспонденции. Соответственно, со стороны Интернета работа электронной почты обеспечивается двумя серверами: сервером исходящих сообщений и сервером входящих сообщений. Сервер входящих сообщений очень часто называют просто «почтовым ящиком». Необходимость в наличии двух разных протоколов связана с требованиями безопасности. Например, при отправке сообщений обычно не нужна строгая процедура идентификации отправителя. С аналогичным явлением мы сталкиваемся и в обычной почте, когда для отправки письма достаточно бросить конверт в любой почтовый ящик. Служба исходящих сообщений основана на протоколе SMTP (Simple Mail Transfer Protocol — простейший протокол передачи почты) и со стороны Интернета обеспечивается серверами SMTP.
С входящими сообщениями дело обстоит иначе. Для получения сообщения клиент должен предъявить определённые права. В обычной почте клиент либо предъявляет документ в почтовом отделении (при получении заказной корреспонденции), либо должен иметь ключ от собственного почтового ящика (ключ — это механическое средство идентификации личности). Фактически служба входящих сообщений электронной почты выполняет роль почтового отделения. Она проверяет права клиента на основании его регистрационного имени и пароля, после чего поставляет ему корреспонденцию, накопившуюся в «почтовом ящике». Наиболее распространённым протоколом этой службы является протокол POP3 (Post Office Protocol 3 — протокол почтового отделения, версия 3).
Протокол POP3
Для небольших организаций невыгодно держать у себя систему для передачи сообщений (message transport system). Это связано с тем, что в небольших, не специализирующихся на компьютерных технологиях организациях, как правило, рабочие станции клиентов сети не имеют достаточно ресурсов (производительности или дискового пространства) для обеспечения работы полного SMTP-сервера. Кроме того, таким пользователям электронной почты может быть просто невыгодно держать персональный компьютер постоянно подключенным к Internet.
Для решения этой проблемы был разработан почтовый протокол для работы в офисе — POP (Post Office Protocol). Его наиболее распространенный вариант — РОРЗ (Протокол почтового отделения версия 3). Этот протокол позволяет рабочим станциям динамически получать доступ к своим почтовым ящикам, расположенным на сервере, предназначенном для обслуживания электронной почты в данной организации.
РОРЗ — это простейший протокол для работы пользователя с содержимым своего почтового ящика. Он позволяет только забрать почту из почтового ящика сервера на рабочую станцию клиента и удалить ее из почтового ящика на сервере. Всю дальнейшую обработку почтовое сообщение проходит на компьютере клиента.
РОРЗ — сервер не отвечает за отправку почты, он работает только как универсальный почтовый ящик для группы пользователей. Когда пользователю необходимо отправить сообщение, он должен установить соединение с каким-либо SMTP-сервером и отправить туда свое сообщение по SMTP. Этот SMTP-сервер может быть тем же хостом, где работает РОРЗсервер, а может располагаться совсем в другом месте.
Как правило, при работе с электронной почтой небольшие организации используют для получения своей корреспонденции РОРЗсервер, установленный на каком-либо компьютере в офисе, а отправляют почту по SMTP на один из хорошо доступных общеизвестных SMTP-серверов города (найти такие совсем несложно).
Принципы работы
РОРЗсервис, как правило, устанавливается на 110-й ТСРпорт сервера, который будет находится в режиме ожидания входящего соединения. Когда клиент хочет воспользоваться РОРЗсервисом, он просто устанавливает TCP-соединение с портом 110 этого хоста. После установления соединения сервис РОРЗ отправляет подсоединившемуся клиенту приветственное сообщение. После этого клиент и сервер начинают обмен командами и данными. По окончании обмена РОРЗ — канал закрывается.
Команды РОРЗ состоят из ключевых слов, состоящих из ASCII-символов, и одним или несколькими параметрами, отделяемыми друг от друга символом «пробела» —. Все команды заканчиваются символами «возврата каретки» и «перевода строки» —. Длина ключевых слов не превышает четырех символов, а каждого из аргументов может быть до 40 символов.
Ответы РОРЗ-сервера на команды состоят из строки статусиндикатора, ключевого слова, строки дополнительной информации и символов завершения строки —. Длина строки ответа может достигать 512 символов. Строка статусиндикатора принимает два значения: положительное («+ОК») и отрицательное («-ERR»). Любой сервер РОРЗ обязан отправлять строки статус-индикатора в верхнем регистре, тогда как другие команды и данные могут приниматься или отправляться как в нижнем, так и в верхнем регистрах.
Ответы РОРЗ-сервера на отдельные команды могут составлять несколько строк. В этом случае строки разделены символами. Последнюю строку информационной группы завершает строка, состоящая из символа" (код — 046) и, т. е. последовательность «CRLF.CRLF» .
РОРЗ-сессия состоит из нескольких частей. Как только открывается TCP-соединение и РОРЗ-сервер отправляет приветствие, сессия должна быть зарегистрирована — состояние аутентификации (AUTHORIZATION state). Клиент должен зарегистрироваться в РОРЗ-сервере, т. е. ввести свой идентификатор и пароль.
После этого сервер предоставляет клиенту его почтовый ящик и открывает для данного клиента транзакцию — состояние начала транзакции обмена (TRANSACTION state). На этой стадии клиент может считать и удалить почту своего почтового ящика.
После того как клиент заканчивает работу (передает команду QUIT), сессия переходит в состояние UPDATE — завершение транзакции. В этом состоянии РОРЗсервер закрывает транзакцию данного клиента (на языке баз данных — операция COMMIT) и закрывает TCP-соединение.
В случае получения неизвестной, неиспользуемой или неправильной команды, РОРЗ-сервер должен ответить отрицательным состоянием индикатора.
РОРЗ-сервер может использовать в своей работе таймер контроля времени соединения. Этот таймер отсчитывает время «бездействия» («idle») клиента в сессии от последней переданной команды. Если время сессии истекло, сервер закрывает TCP-соединение, не переходя в состояние UPDATE (иными словами, откатывает транзакцию или на языке баз данных — выполняет ROLLBACK).
Примечание Не забывайте, что РОРЗсервер может обслуживать группу клиентов, которые, возможно, присоединяются по коммутируемой линии, и, следовательно, необходимо иметь средство автоматического регулирования времени соединения. По спецификации РОРЗтаймер контроля состояния «idle» должен быть установлен на промежуток времени не менее 10 минут.
Протокол работы, основные команды
При открытии TCP-соединения РОРЗ-клиентом, РОРЗ-сервер отправляет сообщение приветствия (далее во всех примерах РОРЗ-протокола используются следующие обозначения: С — клиент, S — сервер РОРЗ):
S: +OK РОРЗ server ready
Теперь РОРЗ-сессия находится в состоянии аутентификации (AUTHORIZATION), и клиент должен зарегистрировать себя на РОРЗ-сервере. Это может быть выполнено либо с помощью команд USER и PASS — ввод открытых пользовательского идентификатора и пароля (именно этот способ используется чаще), либо командой АРОР — аутентификация цифровой подписью, на базе секретного ключа. Любой РОРЗ-сервер должен поддерживать хотя бы один из механизмов аутентификации.
Команда USER имеет следующий формат:
USER name
Аргументом — «name» является строка, идентифицирующая почтовый ящик системы. Этот идентификатор должен быть уникальным в данной почтовой системе РОРЗ-сервера. Если ответом на эту команду является строка индикатора «+OK», клиент может отправлять команду PASS — ввод пароля или QUIT — завершить сессию.
Если ответом является строка «-ERR», клиент может либо повторить команду USER, либо закрыть сессию.
Примеры использования команды:
С: USER frated
S: -ERR sorry, no mailbox for frated here
или С: USER mrose
S: +OK mrose is a real hoopy frood
Примечание Сервер может вернуть отрицательный ответ, если почтовый ящик существует, но по каким-либо причинам не доступен.
Команда PASS используется только после положительного ответа на команду USER: PASS string
Аргументом команды является строка пароля данного почтового ящика. После получения команды PASS, РОРЗ-сервер, на основании аргументов команд USER и PASS, определяет возможность доступа к заданному почтовому ящику. Если РОРЗ-сервер ответил «+OK», это означает, что аутентификация клиента прошла успешно и он может работать со своим почтовым ящиком, т. е. сессия переходит в состояние TRANSACTION. Если РОРЗ-сервер ответил «-ERR», то либо был введен неверный пароль, либо не найден указанный почтовый ящик:
С: USER mrose
S: +OK mrose is a real hoopy frood
С: PASS secret
S: -ERR maildrop already locked
или С: USER mrose
S: +OK mrose is a real hoopy frood
C: PASS secret
S: +OK mrose’s maildrop has 2 messages (320 octets)
Команда аутентификации пользователя АРОР не входит в список обязательно реализуемых команд РОРЗсервера. Эта команда предоставляет значительно больший (по сравнению с командами USER или PASS) уровень защиты аутентификации пользователя при открытии сессии AUTHORIZATION и используется только тогда, когда к обеспечению конфиденциальности доступа к информации почтовых ящиков предъявляются повышенные требования. Эта команда может быть передана клиентом РОРЗ-сервера после получения приветственного сообщения или после ошибки обработки команд USER/PASS.
АРОР name digest
Аргументами команды являются: name — имя пользователя (то же, что и в команде USER), digest — шифрованная (по алгоритму MD5) строка пароля. Применяемый здесь алгоритм необратимого шифрования для построения секретного ключа использует открытый ключ и временную метку. Временные метки передаются хосту клиента вместе с сообщением приветствия. Например, для UNIX-машин временная метка может иметь вид:, где process-ID — это идентификатор процесса, clock — состояние таймера на момент установления соединения, hostname — имя компьютера РОРЗсервера. Этот механизм позволяет достичь очень высокой степени защищенности.
Далее показан пример работы команды АРОР.
S: +OK РОРЗ server ready 1896.697 170 [email protected]
С: АРОР mrose c4c9334bac560ecc979e58001b3e22fb
S: +OK maildrop has 1 message (369 octets)
Алгоритм на основании открытого ключа «tanstaaf и временной метки <1896.697 170 [email protected]> построил шифрованную строку «c4c9334bac560ecc979e5800Ib3e22fb»
К командам состояния AUTHORIZATION может относиться команда закрытия РОРЗ-сессии — QUIT, если она была отправлена в режиме AUTHORIZATION (например, при вводе неправильного пароля или идентификатора пользователя):
Эта команда отправляется без аргументов и всегда имеет единственный ответ «+ОК», например:
С: QUIT
S: +ОК dewey POP3 server signing off
После того как клиент успешно прошел процедуру аутентификации в РОРЗ-сервере, и РОРЗ-сервер «закрыл» определенный почтовый ящик только для использования данным клиентом (для тех, кто работал с базами данных, это называется EXCLUSIVE ACCESS LOCK), РОРЗсессия переходит в режим TRANSACTION, и клиент может начать работу со своей почтой.
Команда STAT (без аргументов) используется для просмотра состояния текущего почтового ящика.
В ответ РОРЗ-сервер возвращает строку, содержащую количество и общий размер в байтах сообщений, которые клиент может получить с РОРЗсервера. Сообщения, помеченные на удаление, не учитываются. Формат ответа: «+ОК nn mm», где nn — количество сообщений, mm — их общий объем:
С: STAT
S: +ОК 2 320
В этом примере РОРЗ-сервер сообщает, что в данном почтовом ящике находятся два сообщения общим объемом 320 байт.
После того как РОРЗ-сервер открыл почтовый ящик, он присваивает каждому сообщению номер и устанавливает его размер в байтах. Первому сообщению присваивается число 1, второму — 2 и т. д. Далее во всех командах, относящихся к сообщениям, РОРЗ-сервер ссылается на сообщения по их номерам и указывает их размер только в десятичном виде.
Команда LIST может передаваться как с аргументом msg — номером сообщения, так и без аргумента:
LIST [msg]
Если команда содержит аргумент, и сообщение с указанным номером существует, ответом на нее будет «информационная строка», которая содержит номер сообщения и размер сообщения в байтах. Если аргумент не указан — ответом будет список информационных строк обо всех сообщениях в данном почтовом ящике. Сообщения, помеченные на удаление не фигурируют в этом списке:
С: LIST
S: +ОК 2 messages (320 octets)
S: 1 120
S: 2 200
S:
или С: LIST 2
S: +ОК 2 200
или С: LIST 3
S: -ERR no such message, only 2 messages in maildrop
Следующая команда — команда RETR — используется для передачи клиенту запрашиваемого сообщения:
RETR msg
Аргумент команды — номер сообщения. Если запрашиваемого сообщения нет, возвращается отрицательный индикатор «-ERR» .
С: RETR 1
S: +ОК 120 octets
S:
S:
После получения, сообщение, как правило, помечается на удаление из почтового ящика, при этом используется команда DELE:
DELE msg
Аргумент команды— номер сообщения. Сообщения, помеченные на удаление, реально удаляются только после закрытия транзакции, на стадии UPDATE.
С: DELE 1
S: +ОК message 1 deleted
ИЛИ С: DELE 2
S: -ERR message 2 already deleted
Для проверки состояния соединения с РОРЗ-сервером используется команда NOOP. При активном соединении ответом на нее будет положительный индикатор «+ОК» :
С: NOOP
S: +ОК Для отката транзакции внутри сессии используется команда RSET (без аргументов). Если пользователь случайно пометил на удаление какие-либо сообщения, он может убрать эти пометки, отправив эту команду:
С: RSET
S: +OK maildrop has 2 messages (320 octets)
После того как пользователь проделал в режиме TRANSACTION все необходимые действия, он должен перейти в режим UPDATE. Для этого клиент РОРЗ отправляет команду QUIT. По этой команде все сообщения, помеченные на удаление, реально уничтожаются в почтовом ящике. Если сессия TRANSACTION завершается каким-либо другим способом (сбой сервера, сети или др.) никаких изменений в состоянии почтового ящика не происходит.
РОРЗ-сервер может поддерживать еще несколько команд, которые предоставляют пользователю большую свободу в манипулировании сообщениями, но которые не входят в список обязательных для реализации команд, т. е. ваш РОРЗ-сервер может их и не поддерживать. Одной из таких команд является команда ТОР:
TOP msg n
По этой команде пользователь может получить «n» первых строк сообщения с номером «msg». РОРЗсервер по запросу клиента отправляет заголовок сообщения, затем пустую строку, затем требуемое количество строк сообщения (если количество строк в сообщении меньше указанного в параметре «n», пользователю передается все сообщение).
С ТОР 1 10
S +OK
S
S
S
S.
Различные расширения РОРЗ-протокола могут включать в себя другие команды или поддерживать расширения описанных команд. Эту или другую дополнительную информацию вы можете найти в соответствующих RFC, но большинство РОРЗ-систем
Протокол SMTP
SMTP (Simple Message Transfer Protocol), или в дословном переводе простой протокол передачи сообщений, был рожден в среде UNIX и предназначался исключительно для общения между собой почтовых серверов. В терминах модели OSI протокол SMTP находится на уровне приложений.
Рис. 1. SMTP протокол в терминах модели OSI
В настоящее время SMTP стал стандартом де-факто. В большой степени такая популярность объясняется сравнительной простотой реализации и широкими возможностями расширяемости без ущерба для обратной совместимости с существующими версиями почтовых систем. Немаловажным фактором является также широкая доступность спецификаций и отсутствие необходимости отчислять средства за их использование.
SMTP-системы за последнее время активно развивались в следующих направлениях:
· расширение протокола общения сервер-сервер (собственно SMTP);
· создание и улучшение протокола общения клиент-сервер (POP3, IMAP4);
· внедрение и расширение нового формата сообщений (MIME).
Начальная версия протокола SMTP поддерживала ограниченный набор команд и сервисов для приема и передачи сообщений. В последнее время был разработан его расширенный вариант (Extended или ESMTP), обеспечивающий стандартную возможность дальнейшего расширения и поддержку таких функций как подтверждение доставки (Delivery Notification Request или DNR), согласование максимального допустимого размера сообщений, передаваемых между серверами и принудительная инициация передачи накопленной почты (dequeue). Однако одной из слабых сторон на данный момент SMTP было и продолжает быть отсутствие возможности аутентификации входящих соединений, шифрования диалога и потока передачи данных между серверами.
Отсутствие средств аутентификации входящих соединений не позволило использовать SMTP для обслуживания клиентского доступа. Классическая почтовая SMTP-система требует наличия файлового доступа клиента к своему почтовому ящику для получения и работы с сообщениями. Для реализации работы в режиме клиент-сервер был создан протокол обслуживания почтового офиса (Post Office Protocol или POP). Наиболее удачной оказалась версия POP3, широко используемая в современных SMTP-системах. Наиболее продвинутые реализации поддерживают аутентификацию с шифрованием имени и пароля и шифрование трафика по протоколу Secure Socket Layer (SSL). Однако, при использовании протокола POP3 отсутствует возможность просмотра характеристик сообщения без предварительной загрузки его на станцию клиента. Для решения проблемы просмотра и манипуляции свойствами почтового сообщения непосредственно на сервере, а также преодоления ряда других функциональных ограничений был разработан протокол IMAP4, его поддержка в большинстве коммерческих систем ожидается в ближайшем будущем. Следует заметить, что как для случая использования классического клиента (команда mail), так и для случая применения POP3 или IMAP4 отправка подготовленных клиентом сообщений требует наличия сервера SMTP. На рисунке 1 приведена схема представления типичной SMTP-системы, использующей как традиционный для ОС UNIX файловый метод доступа к почтовому ящику, так и доступ по протоколам POP3 и IMAP4.
Изначально SMTP-системы рассчитывались на передачу информации исключительно в текстовом виде и не были ориентированы на передачу символов национальных алфавитов, т. е. использовали 7-битный набор символов. Для решения проблемы передачи двоичных файлов был разработан стандарт UUENCODE, позволяющий внедрять предварительно преобразованные из бинарного в текстовый вид произвольные данные непосредственно в текст сообщения. Однако всеобъемлющим данный подход назвать было трудно, ибо в общем случае никакой информации о природе вложения (типе передаваемых данных и породившем их приложении) принимающая сторона не имела. По мере расширения сети Internet, усложнения программного обеспечения и активного внедрения мультимедиа назрела необходимость создания универсального формата типизации и представления двоичных данных и текста, содержащего национальные символы. Таким универсальным форматом стали многофункциональные расширения почты Internet (Multipurpose Internet Mail Extensions или MIME). Формат MIME оказался чрезвычайно удачным, поскольку в него были заложены возможности неограниченного расширения, как поддерживаемых типов данных, так и национальных кодировок.
Рис. 2. Схема типичной SMTP-системы с поддержкой POP3 и IMAP4
почта internet архитектура протокол Сообщение SMTP, подобно сообщению X.400, использует понятия конверта и содержимого, которое в свою очередь имеет заголовок и тело. Функциональное назначение их полностью идентично. Состав полей в заголовке определяется форматом тела сообщения (UUENCODE или MIME). Ни одно поле не является обязательным, но, как правило, указываются такие поля как, кому (To:), от кого (From:) и тема (Subject:). В случае использования формата MIME, в заголовке обязательно должна присутствовать строка «MIME-Version: 1.0». Полный перечень возможных полей в заголовке сообщения SMTP содержится в RFC 2076.
Отличительной особенностью SMTP-систем является то, что в них, как правило, обеспечивается фактическая независимость процесса передачи от формата содержимого. За интерпретацию содержимого должна отвечать только клиентская программа (mail reader). Однако платой за совместимость на уровне MTA в данном случае является неэффективность передачи любых нетекстовых данных или сообщений, использующих символы национальных алфавитов, вследствие предварительной трансляции информации в текстовое представление. В зависимости от используемого алгоритма преобразования размер фактически передаваемых данных может возрасти на 30−100%.
Немаловажной проблемой при передаче данных через SMTP-системы является обеспечение конфиденциальности. Поскольку сообщения передаются в текстовом виде, они могут быть легко перехвачены и произвольным образом изменены. Для решения проблем с защитой информации был создан стандарт на шифрование тела сообщения, так называемый засекреченные многофункциональные расширения почты (Secure MIME или S/MIME). Однако, этот протокол не в состоянии защитить от перехвата заголовки сообщений.
Simple Mail Transfer Protocol не зависит от транспортной среды и может использоваться для доставки почты в сетях с протоколами, отличными от TCP/IP и Х.25. Достигается это за счет концепции IPCE (InterProcess Communication Environment). IPCE позволяет взаимодействовать процессам, поддерживающим SMTP в интерактивном режиме, а не в режиме «STOP-GO» .
Модель протокола. Взаимодействие в рамках SMTP строится по принципу двусторонней связи, которая устанавливается между отправителем и получателем почтового сообщения. При этом отправитель инициирует соединение и посылает запросы на обслуживание, а получатель на эти запросы отвечает. Фактически, отправитель выступает в роли клиента, а получатель — сервера.
Рис. 3. Схема взаимодействия по протоколу SMTP
Канал связи устанавливается непосредственно между отправителем и получателем сообщения. При таком взаимодействии почта достигает абонента в течение нескольких секунд после отправки.
Адресация в SMTP-системах
В системах на базе SMTP используется интуитивно понятная, простая и одновременно очень мощная иерархическая схема адресации, аналогичная той, что принята в службе имен Internet (Domain Name Services или DNS). Данная схема может обеспечить уникальность адреса практически неограниченному числу пользователей. Почтовый адрес SMTP записывается в следующем виде:
mailbox@domain
где mailboxсимволическое имя почтового ящика пользователя, длинной до 63 символов; domain — уникальное имя (почтовый домен) системы, в которой зарегистрирован упомянутый пользователь, длинной до 255 символов.
Сочетание имени и домена образует уникальный идентификатор пользователя. Почтовый домен хранит полную информацию о положении системы в иерархии почтового пространства организации. Каждый следующий уровень иерархии отделяется от предыдущего точкой. Разбор имени домена выполняется справа налево. Самый верхний уровень (top level), называемый корневым доменом (root domain), соответствует либо типу организации (com — для коммерческой, govдля государственной, org — для общественной и т. п.), либо географическому региону (стране) (ru — для России, fr — для Франции и т. д.). Следующими в иерархии идут домены первого уровня (first level), как правило, представляющие имя организации. Регистрацией имен доменов первого уровня занимается международный центр Internet (Internet Network Information Center или InterNIC). За назначение имен доменов более низкого уровня чаще всего отвечают сами компании. Поскольку организациям не запрещается регистрировать для собственных нужд несколько параллельных доменов (например, CIT.MSK.RU и CIT.COM), пользователь может иметь более одного SMTP-адреса. Кроме того, современные SMTP-системы зачастую позволяют назначать псевдонимы для самого почтового ящика (например [email protected] и [email protected]).
Рисунок 4 наглядно поясняет принципы SMTP-адресации Рис. 4. Иерархическая схема адресации SMTP
В приведенном примере CIT.MSK.RU является субдоменом MSK.RU, который в свою очередь является субдоменом RU. Компания CIT имеет два зарегистрированных имени, и каждый пользователь может иметь два почтовых адреса.
Маршрутизация Для того, чтобы SMPT-сервер доставил почту на имя адресата [email protected], ему предварительно нужно узнать IP-адрес машины, обслуживающей почтовый домен CTI.MSK.RU, обратившись с соответствующим запросом к серверу DNS. В службе имен DNS предусмотрен специальный тип ресурсной записи для обслуживания такого рода запросов — MX или Mail Exchanger, т. е. сервер выполняющий обмен почтовыми сообщениями от имени домена. Упомянутая запись имеет следующий формат:
domain MX [cost] hostname
где domain — это имя почтового домена, к которому принадлежит адресат; hostname — символическое имя компьютера, располагающего знаниями о том, как осуществлять дальнейшую доставку (для получения IP-адреса компьютера с именем hostname выполняется поиск адресной ресурсной записи в DNS); cost — относительная стоимость доставки через этот компьютер. При наличии нескольких MX-записей для одного и того же домена, сначала будет выполнена попытка установить соединение с тем компьютером, у которого стоимость доставки ниже. Если такой компьютер окажется недоступен или перегружен, будут использоваться компьютеры с большими значениями стоимости.
Таким образом, чтобы доставить сообщение на имя адресата [email protected], сначала будет выполнен запрос к серверу DNS на получение списка ресурсных записей с типом MX. Если список не пуст, по имени компьютера с наименьшим значением стоимости доставки будет получен его адрес (опять же через DNS), после чего будет установлено соединение и отправлена почта. Если для домена CIT.MSK.RU нет MX-записи, домен будет трактоваться как имя компьютера. Будет выполнена попытка получить его IP-адрес и доставить сообщение напрямую.
Несмотря на то, что служба имен DNS полагается источником статической информации, маршрутизация сообщений SMTP в Internet может рассматриваться как динамическая, так как следующая точка маршрута (теоретически) должна определяться заново для каждого сообщения.
В сетях, не имеющих прямого выхода в Internet и не использующих возможности MX-записей DNS, активно применяется статическая схема маршрутизации. Практически все существующие SMTP-системы позволяют использовать языки сценариев для описания статических таблиц.
Согласно терминологии, принятой в Internet, SMTP-сервер может выступать в одной (или нескольких) из следующих ролей:
· mail exchanger — компьютер, непосредственно подключенный к Internet и выполняющий доставку сообщений напрямую адресатам внутри организации, к которой он принадлежит. В организации может быть несколько таких компьютеров с различными или одинаковыми значениями показателя стоимости доставки;
· relay — компьютер, выполняющий прием почтового трафика от лица других доменов, не имеющих непосредственного и/или постоянного подключения к Internet и, как правило не принадлежащий к организациям, чьи домены он обслуживает. Как косвенно следует из вышесказанного, для каждого отдельного домена может быть определено не более одного relay-сервера;
· smart host — компьютер, который способен осуществлять пересылку сообщений на основе собственной статической таблицы маршрутизации. Одной из функций smart host является переписывание на конверте адреса получателя и/или отправителя перед осуществлением дальнейшей передачи сообщения.
Большинство современных реализаций SMTP-серверов позволяют сочетать все перечисленные функции на одном компьютере.
Заключение
Основная привлекательность электронной почты — ее быстрота. Однако есть другие преимущества, которые не так широко известны. Телефон также предоставляет почти мгновенный доступ, но исследования показали, что около 75% телефонных вызовов заканчиваются безуспешно. Электронная почта имеет ту же скорость доступа, что и телефон, но не требует одновременного присутствия обоих абонентов на разных концах телефонной линии.
Необходимость использования электронной почты в работе документоведа очевидна. Удобство, быстрота, дешевизна, необременительность, возможность передавать информацию любого объема в любую точку мира.
Невозможно в рамках одной курсовой работы в полной мере осветить эту проблему, но будем надеяться, что в какой-то степени удалось дать ответы на основные вопросы — вопросы адресации, а также рассмотреть принципы организации протоколов приёма и передачи и самой службы электронной почты сети Интернет.
Современные почтовые программы превратились из простого средства коммуникации в приложения для повышения производительности труда, которые помогают и на работе, и дома.
Одной из таких программ является Outlook Express фирмы Microsoft. Благодаря тому, что программа встроена в самое распространенное программное обеспечение для персональных компьютеров Internet Explorer, она получила широкое распространение во всем мире. Большинство пользователей начинают свое знакомство с электронной почтой именно с этого продукта. А то, что она обладает к тому же достаточной функциональностью как для домашних пользователей, так и для офисного применения, сделало этот продукт лидером на рынке программ работы с электронной почтой.
Главные достоинства Outlook Express — поддержка всех традиционных функций электронной почты, простой интерфейс, интеграция с браузером, встроенная программа чтения новостей и наличие русской версии. Основные недостатки — ограниченные возможности фильтрации и неполная поддержка протокола IMAP. То, что программа очень доступна, позволяет начинающим пользователям быстро освоить работу с электронной почтой, а если уж потом возможностей окажется мало, ничто не мешает перейти на другую программу.