Необходимо попробовать клиент-серверное взаимодействие через синхронные сокеты.
Помимо этого нужен Makefile, с помощью которого можно будет собрать клиент и сервер.
Семейство протоколов для использования на выбор: AF_UNIX, AF_INET, AF_INET6
Сервер должен:
1) В качестве аргументов принимать адрес, на котором будет ожидать входящих соединений.
2) Стартовать, делать bind(2) на заданный адрес и ожидать входящих соединений
3) При получении соединения, выполнять серверную часть придуманного вами протокола
4) После обработки принятого соединения возвращаться в режим ожидания входящих соединений
Клиент должен:
1) Принимать параметром адрес, к которому стоит подключиться
2) Выполнять клиентскую часть придуманного вами протокола
3) Завершаться
Для сильных духом предлагается выбрать какой-то существующий протокол и имплементировать его, или его разумное подмножество.
Сильность духа будет оцениваться в два балла, при условии что выбранный протокол сложнее чем ECHO(https://tools.ietf.org/html/rfc862).
Необходимо попробовать клиент-серверное взаимодействие с использованием механизмов мультиплексирования.
Помимо этого нужен Makefile, с помощью которого можно будет собрать клиент и сервер.
Семейство протоколов для использования на выбор: AF_UNIX, AF_INET, AF_INET6
Сервер должен:
1) В качестве аргументов принимать адрес, на котором будет ожидать входящих соединений.
2) Стартовать, делать bind(2) на заданный адрес и ожидать входящих соединений с использованием одного из механизмов мультиплексирования
3) При получении соединения, добавлять дескриптор в механизм мультиплексирования и ожидать событий и на нем
4) Выполнять на принятых соединениях серверную часть протокола
5) По завершении обработки соединения удалять все события из механизмов мультиплексирования
Клиент должен:
1) Принимать параметром адрес, к которому стоит подключиться
2) Используя механизмы мультиплексирования подключаться к серверу
3) Используя механизмы мультиплексирования выполнять клиентскую часть протокола
4) Завершаться
Для сильных духом предлагается реализовать код, который будет работать на двух разных ОС, используя на каждой специфичные механизмы мультиплексирования
Сильность духа будет оцениваться в два балла.