20988

Взаимодействие прикладных программ с помощью транспортных протоколов сети Интернет

Лабораторная работа

Информатика, кибернетика и программирование

Необходимо создать приложение (клиент) , который мог бы отправлять сообщения серверу при помощи транспортных протоколов (TCP и UDP). Клиент должен содержать файлы настроек для возможности задания порта и IP адреса сервера.

Русский

2013-08-15

862.5 KB

6 чел.

Жиляев А.Ю.

Исламгулов И.А.

ПО-430

Отчет к лабораторной работе №1

Взаимодействие прикладных программ с помощью транспортных протоколов сети Интернет

Цель работы:

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

 

  1.  Постановка задачи

Необходимо создать приложение (клиент) , который мог бы отправлять сообщения серверу при помощи транспортных протоколов (TCP и UDP). Клиент должен содержать файлы настроек для возможности задания порта и IP адреса сервера.

  1.  Решение задачи

Для решения задачи разработаем алгоритм работы приложений:

Алгоритм работы:

  1.  Запуск клиента, сервера. Инициализация приложений
  2.  Выбор типа протокола для соединения
  3.  Отправка сообщения серверу
  4.  Обработка сообщения сервером, отправка ответного сообщения клиенту
  5.  Закрытие соединения

  1.  Реализация

Программа реализована в ЯП Python с использованием gevent. gevent это лёгкая и быстрая сетевая библиотека, использующая userspace-потоки (greenlets) для организации синхронного API поверх цикла обработки событий libevent.

  1.  Руководство программиста

TCP SERVER

   server = StreamServer(TCP_SERVER_ADDRESS, connection_handler) — создание tcp сервера, connection-handler функция вызываемая при подключение нового клиента!!!!!

def connection_handler(socket, address): - socket на который пришло соединение, address — адресс пользователя от которого поступило подключение.

UDP SERVER

создается юдп сокет

   udp_sock = gevent.socket.socket(gevent.socket.AF_INET, gevent.socket.SOCK_DGRAM)

   udp_sock.setsockopt(gevent.socket.SOL_SOCKET, gevent.socket.SO_BROADCAST, 1)

   udp_sock.bind(UDP_SERVER_ADDRESS)

   handler = UdpHandler() - создается объект принимающий сообщения.

       server = DgramServer(udp_sock, handler) — создается сервер который связывает сокет и объект принимающий сообщения.

  1.  Руководство пользователя

Работа клиента

Для работы приложения необходимо запустить две программы: Client и Server.

После этого вы можете начинать писать своё сообщение. После отправки вы можете видеть ответ от сервера:

Работа сервера

Задача сервера принимать сообщения от клиентов и отдавать ответ:

Конфигурационный файл

UDP_SERVER_PORT – порт UDP сервера 

UDP_SERVER_HOST –  хост UDP сервера

TCP_SERVER_PORT – порт TCP сервера

TCP_SERVER_HOST – хост TCP сервера


 

А также другие работы, которые могут Вас заинтересовать

7265. Економічна система суспільства. Типи економічних систем 117.5 KB
  Система як загальнонаукове поняття - це сукупність взаємоповязаних і розміщених у належному порядку елементів певного цілісного утворення...
7266. Ординалістська теорія поведінки споживача 62 KB
  Ординалістська теорія поведінки споживача План: Особливості аналізу функції корисності з ординалістських позицій. Криві байдужості: побудова та властивості. Гранична норма заміщення благ: суть і методика обчислення. Недосконалість абсолютно...
7267. Суб’єкти трудового права 149 KB
  Головною потребою людини є праця. Вона потрібна їй для нормальної життєдіяльності, потрібна як повітря, їжа, сон, спілкування. Щоб насолодитися відпочинком, треба спочатку відчути втому...
7268. Теорії і концепції дизайну другої половини ХХ століття 72.5 KB
  Теорії і концепції дизайну другої половини ХХ століття Джерела концепцій і теорій дизайну теорії конструктивізму та функціоналізму У лекції висвітлюються основні поняття концепція, теорія дизайну і джерела дизайну, які вплинули на розумінн...
7269. Принципи трудового права України 66 KB
  Тема 3. Принципи трудового права України. План лекції. Поняття основних принципів трудового права України. Основні права і свободи громадян, закріплені в Конституції України, що визначають принципи правового регулювання трудових відносин. Пр...
7270. Методы макроэкономического планирования и прогнозирования 229.5 KB
  ТЕМА 3: Методы макроэкономического планирования и прогнозирования. Методы макроэкономического прогнозирования Под методами прогнозирования понимается совокупность приемов и способов мышления, позволяющих на основе анализа ретроспективных данных, вне...
7271. Гіпсові в’яжучі матеріали 60.5 KB
  Тема Гіпсові вяжучі матеріали План заняття Технологія виробництва високоміцного гіпсового вяжучого, його властивості та застосування. Високо випалювальні гіпсові вяжучі. Особливості твердіння гіпсу. Техніка безпеки, охорона ...
7272. Особливості публічного виступу 34.5 KB
  Тема: Особливості публічного виступу План Підготовка до публічного виступу, вимоги. Використання наочних засобів. Психологічні особливості публічного виступу. Публічний виступ - це усне монологічне висловлювання з метою впливу...
7273. Базові засади управління соціальною сферою 105 KB
  Лекція 4. Базові засади управління соціальною сферою. Система й структура державного управління соціального сферою. Нормативно правове забезпечення управління соціальною сферою. Програмно цільове управління. Як вже зазначалося, в умовах підвищення ролі л...