Томский государственный университет систем управления и радиоэлектроники (тусур)





НазваниеТомский государственный университет систем управления и радиоэлектроники (тусур)
страница6/8
Дата публикации26.03.2015
Размер1.08 Mb.
ТипМетодическое пособие
100-bal.ru > Информатика > Методическое пособие
1   2   3   4   5   6   7   8

3.3 Лабораторная работа №2 Протоколы SMTP и POP3


Лабораторная работа №2 выполняется после изучения материала, посвященного описанию принципов работы почтовых служб SMTP и POP3 [Компьютерные сети. 4-е издание / Э. Таненбаум].

Цель работы:

написать GUI приложение для ОС Windows, реализующие работу протоколов SMTP или POP3.

Рекомендуемая литература:

Компьютерные сети. 4-е издание / Э. Таненбаум. – Спб.: Питер, 2003. – 992 с.:ил. Глава 7 («Прикладной уровень») раздел «Электронная почта».

Описание протокола SMTP в спецификации RFC-788 (ARCHIVE\Documents\RFC\rfc788.txt).

Описание протокола POP3 в спецификации RFC-1939 (ARCHIVE\Documents\RFC\rfc1939.txt).

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

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

Фактически, отправитель выступает в роли клиента, а получатель - сервера. На рис. 2.1 приведена схема взаимодействия клиента и сервера по протоколу SMTP.

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

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

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

После установления соединения, как правило, используя 25 порт, клиент должен обязательно отправить на сервер команду HELO . Эта команда используется для идентификации машины отправителя (HOST) на SMTP сервере.

Следующее командой должна идти команда MAIL, идентифицирующая отправителя:

MAIL FROM:

Пример:

MAIL FROM: cat@australia.mail.au

Эта команда указывает SMTP-серверу начать новую транзакцию по приёму почты. В качестве аргумента, она передаёт на сервер почтовый адрес отправителя письма.

Если адрес отправителя правильный и не содержит ошибок, то сервер вернёт ответ «250 OK».

Следующей командой идёт команда

RCPT:

RCPT TO:

Пример:

RCPT TO: dog@switzerland.mail.sz

Эта команда передаёт на сервер почтовый адрес получателя письма.

Если адрес получателя не содержит ошибок, то тогда SMTP сервер вернёт ответ «250 OK». Если в адресе получателя есть ошибка, то сервер вернёт сообщение с кодом 550. Данная команда может повторяться сколь угодно долго по числу получателей, однако современные почтовые сервера вводят ограничения на количество одновременных получателей.

Следующей командой идёт команда DATA

Если она принимается сервером, то он возвращает сообщение с кодом 354, приглашающее продолжить отправку сообщения. После этого, на сервер можно передавать текст почтового сообщения. Признаком окончания передачи почтового сообщения является символ точки «.» в начале новой строки. Если сообщение принято к доставке, то сервер вернёт уведомление с кодом 250, а иначе – сообщение об ошибке.

После принятия сервером сообщения к отправке, клиент должен отправить команду QUIT, которая сигнализирует серверу, что больше отправки писем не будет. После принятия от сервера подтверждения этой команды, следует закрыть соединение с сервером.

Пример SMTP диалога, между отправителем (SENDER) и сервером (RECEIVER):

SENDER: MAIL FROM:

RECEIVER: 250 OK

SENDER: RCPT TO:

RECEIVER: 250 OK

SENDER: RCPT TO:

RECEIVER: 550 No such user here

SENDER: RCPT TO:

RECEIVER: 250 OK

SENDER: DATA

RECEIVER: 354 Start mail input; end with .

SENDER: Blah blah blah...

SENDER: ...etc. etc. etc.

SENDER: .

RECEIVER:

250 OK
Протокол электронной почты POP3 РОРЗ (Post Office Protocol v.3) — это простейший протокол для работы пользователя с содержимым своего почтового ящика. Он позволяет только забрать почту из почтового ящика сервера на рабочую станцию клиента и удалить ее из почтового ящика на сервере. Всю дальнейшую обработку почтовое сообщение проходит на компьютере клиента.

Многие концепции, принципы и понятия протокола POP выглядят и функционируют подобно SMTP. Команды POP практически идентичны командам SMTP. На рис. 4.2 изображена модель взаимодействия клиента и сервера по протоколу POP. Сервер POP находится между агентом пользователя и почтовыми ящиками.

Рис. 2.2 – Конфигурация модели клиент-сервер по протоколу POP3
В протоколе РОРЗ оговорены три стадии процесса получения почты:

авторизация, транзакция и обновление. После того как сервер и клиент РОРЗ установили соединение, начинается стадия авторизации. На стадии авторизации клиент идентифицирует себя для сервера. Если авторизация прошла успешно, сервер открывает почтовый ящик клиента и начинается стадия транзакции. В ней клиент либо запрашивает у сервера информацию (например, список почтовых сообщений), либо просит его совершить определенное действие (например, выдать почтовое сообщение). Наконец, на стадии обновления сеанс связи заканчивается.

Авторизация пользователя. После того как программа установила TCP-соединение с портом протокола РОРЗ (официальный номер 110), необходимо послать команду USER с именем пользователя в качестве параметра. Если ответ сервера будет +ОК, нужно послать команду PASS с паролем этого пользователя:

Пример:

CLIENT: USER ivan

SERVER: +ОК

CLIENT: PASS secret

SERVER: +ОК ivan's maildrop has 2 messages (320 octets)

Последняя строчка ответа означает, что в почтовом ящике ivan есть 2 сообщения (320 байтов).

Транзакции РОРЗ. После того как стадия авторизации окончена, обмен переходит на стадию транзакции. В следующих примерах демонстрируется возможный обмен сообщениями на этой стадии.

Команда STAT возвращает количество сообщений и количество байтов в сообщениях:

CLIENT: STAT

SERVER: +ОК 2 320

Команда LIST (без параметра) возвращает список сообщений в почтовом ящике и их размеры:

CLIENT: LIST

SERVER: +ОК

SERVER: 2 messages (320 octets)

SERVER: 1 120

SERVER: 2 200

...

Команда LIST с параметром возвращает информацию о заданном сообщении:

CLIENT: LIST 2

SERVER: +ОК 2 200

...

CLIENT: LIST 3

SERVER: -ERR no such message, only 2 messages in maildrop

Команда TOP возвращает заголовок, пустую строку и первые десять строк тела сообщения:

CLIENT: TOP 10

SERVER: +ОК

SERVER: (сервер POP высылает заголовки сообщений, пустую строку и первые десять строк тела сообщения)

SERVER:

....

CLIENT: TOP 100

SERVER: -ERR no such message

Команда NOOP не возвращает никакой полезной информации, за исключением позитивного ответа сервера. Однако позитивный ответ означает, что сервер находится в соединении с клиентом и ждет запросов:

CLIENT: NOOP

SERVER: +ОК

Следующие примеры показывают, как сервер POP3 выполняет действия.

Например, команда RETR извлекает сообщение с указанным номером и помещает его в буфер местного UA (почтового агента):

CLIENT: RETR 1

SERVER: +OK 120 octets

SERVER: (РОРЗ-сервер высылает сообщение целиком)

SERVER:

. . . . . .

Команда DELE отмечает сообщение, которое нужно удалить:

CLIENT: DELE 1

SERVER: +OK message 1 deleted ...

(сообщение 1 удалено) CLIENT:

DELE 2

SERVER: -ERR message 2 already deleted (сообщение 2 уже удалено)

Команда RSET снимает метки удаления со всех отмеченных ранее сообщений:

CLIENT: RSET

SERVER: +OK maildrop has 2 (в почтовом ящике 2 сообщения (320 байтов)) messages (320 octets)

Как и следовало ожидать, команда QUIT закрывает соединение с сервером:

CLIENT: QUIT

SERVER: +OK dewey POP3 server signing off

CLIENT: QUIT

SERVER: +OK dewey POP3 server signing off (maildrop empty)

CLIENT: QUIT

SERVER: +OK dewey POP3 server signing off (2 messages left)

Обратите внимание на то, что отмеченные для удаления сообщения на самом деле не удаляются до тех пор, пока не выдана команда QUIT и не началась стадия обновления. В любой момент в течение сеанса клиент имеет возможность выдать команду RSET, и все отмеченные для удаления сообщения будут восстановлены.

Задание на лабораторную работу:

Ознакомившись с протоколами SMTP, описанным в RFC 788 и POP3, описанным в RFC 1939 выполнить нижеприведенные задания.

Написать приложение:

с помощью которого можно отправлять email сообщения.

с помощью которого можно принимать email сообщения, оставленные в почтовом ящике.

с помощью которого можно просматривать список email сообщений в почтовом ящике и удалять выбранные сообщения.

с помощью которого можно просматривать дополнительную информацию о заданном сообщении и удалять выбранные сообщения из почтового ящика.
Указанные приложения можно реализовать как в консольном варианте, так и с применением GUI. Для реализации можно использовать Java-Swing, AWT, C# - .Net , C++ - QT, Python.
1   2   3   4   5   6   7   8

Похожие:

Томский государственный университет систем управления и радиоэлектроники (тусур) iconТомский государственный университет систем управления и радиоэлектроники (тусур)
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Томский государственный университет систем управления и радиоэлектроники (тусур) iconТомский государственный университет систем управления и радиоэлектроники (тусур)
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Томский государственный университет систем управления и радиоэлектроники (тусур) iconРабочая программа учебной дисциплины «Обработка экспериментальных данных на эвм»
«томский государственный университет систем управления и радиоэлектроники» (тусур)
Томский государственный университет систем управления и радиоэлектроники (тусур) iconТомский государственный университет систем управления и радиоэлектроники (тусур)
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Томский государственный университет систем управления и радиоэлектроники (тусур) iconТомский государственный университет систем управления и радиоэлектроники (тусур)
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Томский государственный университет систем управления и радиоэлектроники (тусур) iconТомский государственный университет систем управления и радиоэлектроники (тусур)
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Томский государственный университет систем управления и радиоэлектроники (тусур) iconТомский государственный университет систем управления и радиоэлектроники (тусур) утверждаю
Рабочая программа составлена на основании рабочего учебного плана по направлению 080500 Менеджмент, утвержденного 17. 06. 2008 г
Томский государственный университет систем управления и радиоэлектроники (тусур) iconТомский государственный университет систем управления и радиоэлектроники (тусур)
Наноэлектроника — область электроники, занимающаяся разработкой физических и технологических основ создания интегральных электронных...
Томский государственный университет систем управления и радиоэлектроники (тусур) iconТомский государственный университет систем управления и радиоэлектроники (тусур)
Все современные самолёты, от простейших до легкомоторных машин до истребителей и бомбардировщиков, оснащены авионикой, или, как принято...
Томский государственный университет систем управления и радиоэлектроники (тусур) iconТомский государственный университет систем управления и радиоэлектроники (тусур) утверждаю
Рабочая программа составлена в соответствии с гос впо для специальности 080105 – Финансы и кредит, утвержденным 17. 03. 2000г, №...
Томский государственный университет систем управления и радиоэлектроники (тусур) icon«томский государственный университет систем управления и радиоэлектроники»
Совете по вопросам регламентации доступа к информации в Интернете, целью создания Совета является обеспечение разработки и принятия...
Томский государственный университет систем управления и радиоэлектроники (тусур) iconФедеральное агентство по образованию Томский государственный педагогический университет
Томский государственный педагогический университет совместно с Сибирским нии торфа со расхн, Институтом климатических и экологических...
Томский государственный университет систем управления и радиоэлектроники (тусур) iconВведение в специальность
Р. Г. Ходасевич, доцент кафедры радиотехнических систем Учреждения образования «Белорусский государственный университет информатики...
Томский государственный университет систем управления и радиоэлектроники (тусур) iconРоссийской Федерации Национальный исследовательский Томский государственный университет
Специальность 032001 – Документоведение и документационное обеспечение управления
Томский государственный университет систем управления и радиоэлектроники (тусур) iconМинобрнауки россии) томский государственный университет (тгу)
Рассмотрены и утверждены ученым советом международного факультета управления Томского госуниверситета
Томский государственный университет систем управления и радиоэлектроники (тусур) iconМосковский государственный университет имени М. В. Ломоносова
Краева К. В. К вопросу о специфике экзаменационного стресса у студентов // Вестник Университета. Государственный университет управления...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск