Самостоятельная работа студентов (СРС)
- Общие требования к выполненной работе
- Анализ и сравнение сетевых протоколов
- Разработка сетевых приложений
- Клиент-серверные приложения и протоколы
Практические задания
Постановка задачи
Разработка сетевого приложения, ориентированного на применение в сетях TCP/IP. Техническое задание на разработку должно быть согласовано и подписано преподавателем.
Требования к разработке
Целевая платформа: не регламентируется, но за мультиплатформенную разработку — бонус до 15 баллов.
Средства разработки: не регламентируются.
Варианты заданий
- HTTP-сервер. Простой веб-сервер, предоставляющий доступ к статическим ресурсам.
- HTTP-сервер с поддержкой SSI. Веб-сервер, но должна быть реализована поддержка директив Server Side Includes (минимум — #include)
- FTP-сервер. Простой файловый сервер, поддерживающий основные возможности стандартного протокола ftp (просмотра списка файлов, скачивание и закачивание файлов).
- FTP-клиент. Консольное приложение, команды open, ls, cd, get, put, close, bye. Должен подключаться к любому стандартному ftp-серверу.
- Графический FTP-клиент. То же, но с графическим интерфейсом и возможностью докачки файлов.
- Одноранговый чат. Приложение для обмена информацией с таким же приложением без сервера. Графический интерфейс, произвольный протокол. Возможность поиска клиентов в локальной сети.
- Чат. Сервер + Клиент. Клиент-серверное приложение для ЛВС. Общий чат, приват-румы, список пользователей.
- HTTP-прокси с возможностями файрвола. Локальный некэширующий прокси. Поддержка протокола HTTP, блокировка входящего/исходящего трафика для списка веб-серверов, поддержка символов подстановки в именах серверов. Журналирование.
- ICQ-клиент. Графический интерфейс, основные возможности (получение списка контактов, отправление и получение сообщений). Проверка на произвольном аккаунте ICQ.
- IRC-клиент. Аналогично ICQ-клиенту, проверка на произвольном IRC-сервере.
- Конвертер величин. Веб-сервис, реализующий функции перевода мерных величин.
Теоретические задания
Постановка задачи
Провести сравнительный анализ сетевых протоколов/технологий (по вариантам). Определить основые критерии сравнения, типичные для соответствующей предметной области в целом, характерные для класса задач и уникальные для сравниваемых объектов. Составить сравнительную таблицу. Привести по 2-3 примера программ. Обязательные ссылки на соответствующий исходный документ (стандарт, RFC или draft). Краткая историческая справка об объектах исследования.
Варианты заданий
- Протоколы авторизации. ЕАР (Extensible Authentication Protocol), RADIUS (Kerberos V5 в RFC 4120).
- Службы имен DNS и WINS
- Протоколы авторизации. CHAP (Challenge Handshake Authentication Protocol), MS-CHAP (Microsoft Challenge Handshake Authentication Protocol) и MS-CHAP v2.
- Протоколы авторизации. PAP (Password Authentication Protocol), CHAP (Challenge Handshake Authentication Protocol) и SPAP (Shiva Password Authentication Protocol).
- Промежуточное ПО на основе распределенных объектных систем. DCOM и CORBA.
- Протоколы синхронизации времени NTP (Network Time Protocol), SNTP, HTP (HTTP time protocol).
- Промежуточное ПО на основе обмена сообщениями: протоколы AMQP (Advanced Message Queuing Protocol) и SOAP.
- Защищенные протоколы передачи файлов SFTP (SSH File Transfer Protocol) и FTPS (File Transfer Protocol + SSL).
- Протоколы WebDAV и SMB как средства обеспечения коллективной работы.
- Протоколы удаленного управления RDP и VNC.
- Протоколы удаленного управления telnet, rlogin и ssh.
- Почтовые протоколы IMAP (Internet Message Access Protocol) и POP3.
- Протоколы ip-телефонии SIP и H.323.
- Сервисы мгновенного обмена сообщениями. Протоколы jabber и OSCAR (ICQ).
- Сервисы мгновенного обмена сообщениями. Протоколы jingle (XEP-0166) и OSCAR (ICQ).
- Трехмерные миры в WEB. Форматы VRML, O3D, X3D.
- Протоколы пиринговых сетей Gnutella и BitTorrent.
- Автоматически генерируемые сети NETSUKUKU и ENTROPY (Emerging Network To Reduce Orwellian Potency Yield)
- Сервисы мгновенного обмена сообщениями. Протоколы Microsoft Notification Protocol (MSNP) и jingle.
- Сервисы новостей. Протокол NNTP и RSS-фиды.
Задания повышенной сложности (протокол+реализация)
Это концептуальный раздел. Общая идея заданий этой категори — разработка сетевого прикладного протокола приемлемого уровня сложности и его реализация в клиент-серверном приложении. Бонус — зачет по дисциплине автоматом. Заинтересованным студентам: варианты заданий можно обсудить отдельно, с прицелом на ВКР бакалавра или ДП.
Требования к содержанию и оформлению отчета
- Отчет должен быть представлен в виде веб-сайта, размещенного в сети Интернет.
- Структура сайта должна соответствовать структуре отчета. Т.е. каждый раздел отчета представлен в виде отдельной страницы. На индексной странице — ФИО студента, № варианта, задание к работе и оглавление.
- Оглавление сайта — в виде гиперссылок на разделы (веб-страницы) отчета. Заголовок страницы (тег <title>) должен соответствовать названию раздела.
- Содержимое страниц, как текст, так и графические элементы, должно быть уникальным.
- Страницы сайта могут быть как статическими, так и динамическими. При этом можно использовать как серверные (SSI, php, CGI, ASP и т.п.), так и клиентские технологии (JavaScript, VBScript)
- Обязательное требование — использование в оформлении страниц технологии CSS (Cascading Style Sheet).
- Во всех страницах должны быть заполнены мета-теги
description
,keywords
,generator
,author
и тегtitle
. - Кодировка страниц: windows-1251 или UTF-8.
- На каждой странице должен быть размещен счетчик liveinternet.ru.
- Кнопка-баннер 4STUD.INFO 88x31px на каждой странице. Код кнопки:
<!-- begin 4STUD --> <a href="http://www.4stud.info" title="Учебные материалы для студентов"> <img src="http://www.4stud.info/asoiu.php" alt="4STUD.INFO" border="0" width="88" height="31"></a> <!-- end 4STUD -->
- Прямая ссылка ТОЛЬКО СО СТАРТОВОЙ СТРАНИЦЫ (!) на сайт кафедры АСОИУ. Код ссылки:
<!-- begin ASOIU --> <a href="http://asoiu.com/" title="Официальный сайт кафедры АСОИУ ОмГТУ">Кафедра АСОИУ</a> <!-- end ASOIU -->
- Выбор хост-площадки — на усмотрение студента. Для проектов, планируемых в качестве ВКР рекомендуется использовать профессиональный хостинг [например, 93w.ru или ERA host].
- Размещение скачиваемых файлов — на файловых серверах DEPOSITFILES.COM или UPLOADING.COM. Это удобные и надежные сервисы для хранения файлов с развитой системой статистики и оплатой за скачивания.
- Типографика HTML — несколько основных правил, позволяющих грамотно оформить текст веб-страницы.
CC-BY-CA Анатольев А.Г., 31.01.2012