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

1. Написать клиент-серверную программу на основе транспортного протокола UDP. Реализовать: подтверждение приема для каждой датаграммы, сохранение целостности всей информации. Клиент передает файл или сообщение (несколькими датаграммами), сервер принимает.
2. Продемонстрировать реализованные возможности программ согласно заданию, при одновременной передачи файлов от нескольких клиентов к серверу. Например, при запуске сервера указать - какие пакеты и сколько раз будут потеряны. Результат правильности приема выводить на экран.
3. Реализация - на языке C/C++, консольные приложения.

Серверная программа должна находить номер свободного порта и выводить его на экран. При запуске клиентской программы задавать со строки IP адрес сервера и порт (например, см. [1], стр. 338-342, функции bind, getsockname).

Полезные ссылки:
1. Фейт С. TCP/IP: Архитектура, протоколы, реализация (включая IP версии 6 и IP Security). – М.: Лори, 2000. – 424 с.

Срок сдачи: 7 учебная неделя (27 октября - 1 ноября)