Скачать 0.7 Mb.
|
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 Следующее командой должна идти команда MAIL, идентифицирующая отправителя: Пример: MAIL FROM: cat@australia.mail.au Эта команда указывает SMTP-серверу начать новую транзакцию по приёму почты. В качестве аргумента, она передаёт на сервер почтовый адрес отправителя письма. Если адрес отправителя правильный и не содержит ошибок, то сервер вернёт ответ «250 OK». Следующей командой идёт команда RCPT: RCPT Пример: 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: 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 выполнить один из нижеприведенных вариантов. Для выбранного варианта должно быть написано GUI приложение для ОС Windows, в котором необходимые параметры будут вводиться, используя различные элементы управления (поля ввода, списки, переключатели, кнопки и т.д.). Варианты: Написать приложение, с помощью которого можно отправлять email сообщения. Написать приложение, с помощью которого можно принимать email сообщения, оставленные в почтовом ящике. Написать приложение, с помощью которого можно просматривать список email сообщений в почтовом ящике и удалять выбранные сообщения. Написать приложение, с помощью которого можно просматривать дополнительную информацию о заданном сообщении и удалять выбранные сообщения из почтового ящика. 4 Лабораторная работа №3 Браузер и FTP-клиентЛабораторная работа №3 выполняется после изучения материала, посвященного описанию принципов использования стандартных компонентов Delphi, Visual C++ или Java, для управления соединениями с сервером по протоколам HTTP и FTP. Цель работы: написать GUI приложение для ОС Windows, представляющее собой простой Web – браузер и FTP – клиент, используя стандартные компоненты Delphi, Visual C++, Java Рекомендуемая литература: Компьютерные сети. 4-е издание / Э. Таненбаум. – Спб.: Питер, 2003. – 992 с.: ил. Глава 7 («Прикладной уровень») раздел «HTTP – протокол передачи гипертекста». Описание протокола HTTP в спецификации RFC-2616 (ARCHIVE\Documents\RFC\rfc2616.txt). Описание протокола FTP в спецификации RFC-959 (ARCHIVE\Documents\RFC\rfc0959.txt). На различных платформах и в языках программирования предусмотрены стандартные классы для работы с сетью. Например, в состав библиотеки MFC (Microsoft Foundation Classes – библиотека базовых классов) включено большое количество классов, с помощью которых можно писать как клиентские, так и серверные приложения. В частности, для связи с Internet в Visual C++ существует так называемый WinInet Class. В него входят несколько подклассов. Задание на лабораторную работу Следует создать сетевое приложение на любом из перечисленных языков. 1. Браузер HTML. Создать на любом из трех языков программирования (C++, Delphi, Java, С#) простой Web-браузер. С установленного ранее Web- сервера запросите и получите Web-страницу с рисунками, текстом и ссылками. Ссылки должны работать, то есть щелчок мышью по ссылке вызывает загрузку и отображение соответствующей страницы. У браузера должна быть адресная строка, в которую заносится адрес URL. 2. FTP - клиент. Создать на любом из трех языков программирования (C ++, Delphi, Java, C#) простое приложение-клиент для работы по протоколу FTP. Приложение должно обеспечивать соединение с сервером, передачу имени пользователя и пароля, отображение списка каталогов и файлов, навигацию по каталогам, копирование файла или каталога на сторону клиента. У приложения клиента должны быть текстовые поля для ввода имени сервера, пользователя, пароля, объект для отображения содержимого каталогов, кнопка для копирования, и удаления каталогов и файлов. 5 Лабораторная работа №4. HTML, Javascript технология PHPHTML и JavascriptЛабораторная работа выполняется после изучения основ Web – программирования на языке HTML и JavaScript. Цель работы: Научиться использовать технологии HTML, JavaScript, PHP для создания простых Web - страниц со статическим содержанием Материалы: 1. Материалы лекций, 2. http: //ru.wikipedia.org/wiki/ – элементы HTML. 3. http: //ru.wikipedia.org/wiki/JavaScript - JavaScript В таблице дан список файлов и описание электронной документации прилагаемой в архиве. Инструменты: Текстовый редактор Web - браузер Internet Explorer Структура HTML-документа HTML — это теговый язык разметки документов, то есть любой документ на языке HTML представляет собой набор элементов, причем начало и конец каждого элемента обозначается специальными пометками, называемыми тегами. Регистр, в котором набрано имя тега, в HTML значения не имеет. Элементы могут быть пустыми, то есть не содержащими никакого текста и других данных (например, тег перевода строки ). В этом случае обычно не указывается закрывающий тег. Кроме того, элементы могут иметь атрибуты, определяющие какие-либо их свойства (например, размер шрифта для тега ). Атрибуты указываются в открывающем теге. Вот пример части разметки HTML- документа: Текст между двумя тегами - открывающим и закрывающим. Здесь элемент содержит атрибут href. А вот пример пустого элемента: Каждый HTML-документ, отвечающий спецификации HTML какой- либо версии, обязан начинаться со строки декларации версии HTML , которая обычно выглядит примерно так: DOCTYPE //www.w3.org/TR/html4/strict.dtd"> Если эта строка не указана, то добиться корректного отображения документа в браузере становится труднее. Далее обозначается начало и конец документа тегами и соответственно. Внутри этих тегов должны находиться теги заголовка () и тела ( |
Лабораторная работа Выполнение расчетов с использованием программирования в среде Visual Basic for Applications (vba). 8 | Лабораторная работа №8. Структурирование таблицы с автоматическим подведением итогов | ||
... | |||
Лабораторная работа №6 (статические массивы, знакомство с графическим режимом. Возможно будет изменена) 49 | Задания на экзамен выполняются студентом в компьютерном классе при наличии конспектов под руководством преподавателя | ||
«Бухгалтерский учет и анализ». Она состоит из нескольких частей, каждая из которых относится к разделу 3 «Первичные бухгалтерские... | «Бухгалтерский учет и анализ». Она состоит из нескольких частей, каждая из которых относится к разделу 3 «Первичные бухгалтерские... | ||
Изменять число рабочих листов можно через опцию Office (в левом верхнем углу экрана), кнопку Параметры Excel, опцию Основные, опцию... | Изменять число рабочих листов можно через опцию Office (в левом верхнем углу экрана), кнопку Параметры Excel, опцию Основные, опцию... |
Поиск Главная страница   Заполнение бланков   Бланки   Договоры   Документы    |