Задание на лабораторную работу
- Внимательно изучить следующий текст: «Unix socket programming»
- Создать серверное приложение, которое открывает определённый порт и ждёт соединений на этот порт. Порт должен задаваться в командной строке приложения. В случае, если порт не указан — сервер должен «слушать» порт, заданный по умолчанию
- Создать клиентское приложение, которое подключается к серверному приложению по заданному в командной строке порту.
- Разработать протокол обмена между клиентским и серверным приложениями, который позволит однозначно отделить «чужое» клиентское приложение от своего.
- Серверное приложение завершает свою работу после удачного соединения и однозначного опознания «своего» клиентского приложения.
- Клиентское приложение завершает свою работу после однозначного опознания сервера. В случае «своего» сервера на консоль выводится строка «OK», в противном случае — «ERROR».
- Предусмотреть корректную обработку ошибок работы с протоколом TCP/IP и вывод на консоль диагностирующей информации с завершением работы приложения.
- Написать отчёт о проделанной работе с приложением листингов клиентской и серверной программ.
Дополнительная информация
Реализация системных вызовов работы с сокетами в ядре Linux. Создание сокета.