Содержание
- 2. Введение Компьютерный мир глобализируется на основе сетевых коммуникаций и протоколов. Интернет становится обязательным атрибутом повседневности. Все
- 3. Введение В области компьютеризации понятие программирования сетевых задач или иначе называемого сетевого программирования (англ. network programming),
- 4. Введение Программа или процесс, инициирующие установление связи, называются клиентским процессом, а программа, ожидающая инициации связи, называется
- 5. Введение
- 6. Клиент-сервер Для обеспечения сетевых коммуникаций используются сокеты. Сокет это конечная точка сетевых коммуникаций. Каждый использующийся сокет
- 7. Клиент-сервер Выделяют два типа socket’ов: потоковый socket (SOCK_STREAM) и, так называемый, дейтаграммный socket (datagram socket, SOCK_DGRAM).
- 8. Клиент-сервер Связывание (binding) socket’ов Связать socket значит «прикрепить» определенный адрес (IP адрес и номер порта) к
- 9. Клиент-сервер Прослушивание На «стороне» сервера дела обстоят немного иначе. Сервер ждет входящих соединений и клиенту необходимо
- 10. Создание socket’а для сервера Сервер создает новый socket. Вновь созданный socket еще не связан с IP
- 11. Связь socket’а Так как наш сервер является сервером какого-нибудь сайта, то порт установлен 80 (порт по
- 12. Сервер в режиме прослушивания После того как socket связан с определенным адресом, он «переходит» в режим
- 13. Создание socket’а для клиента Предположим, что клиент и сервер находятся в одной локальной сети. Клиент хочет
- 14. Подключение клиента к серверу Socket клиента остался несвязанным и пытается запросить соединение с сервером.
- 15. Сервер принимает соединение Прослушивающий socket замечает, что кто-то пытается подключиться. Он разрешает подключение, создавая новый socket,
- 16. Подключение других клиентов Если другой клиент (из внешней сети) подключается, сервер создает еще один socket для
- 17. Принципы сокетов Каждый процесс может создать слушающий сокет (серверный сокет) и привязать его к какому-нибудь порту
- 18. Принципы сокетов В программе сокет идентифицируется дескриптором - это просто переменная типа int. Программа получает дескриптор
- 19. Основные функции сокетов Общие: Socket - Создать новый сокет и вернуть файловый дескриптор Send - Отправить
- 20. Функция socket() Функция socket() создаёт конечную точку соединения и возвращает дескриптор и принимает три аргумента: 1.
- 21. Функция bind() Функция bind() связывает сокет с конкретным адресом. Когда сокет создается при помощи socket(), он
- 22. Функция listen() Функция listen() подготавливает привязываемый сокет к принятию входящих соединений. Данная функция применима только к
- 23. Функция accept() Функция accept() используется для принятия запроса на установление соединения от удаленного хоста. Принимает следующие
- 24. Функция connect() Функция connect() устанавливает соединение с сервером. Некоторые типы сокетов работают без установления соединения, это
- 25. Передача данных Для передачи данных можно пользоваться стандартными функциями чтения/записи файлов read и write, но есть
- 26. Передача данных через UNIX сокеты Сокет домена Unix (англ. Unix domain socket, UDS) или IPC-сокет (сокет
- 27. Пример передачи в одну сторону через UNIX сокеты - сервер
- 28. Пример передачи в одну сторону через UNIX сокеты - клиент
- 29. Пример передачи в одну сторону
- 30. Пример передачи в одну сторону - схематичное отображение
- 31. Передача данных через INET сокеты
- 32. Передача данных через INET сокеты - TCP пример TCP клиент В роли клиента может выступать утилита
- 33. Передача данных через INET сокеты - TCP пример TCP сервер Способы определения длины сообщения: Передать отдельно
- 34. Передача данных через INET сокеты - TCP пример
- 35. Передача данных через INET сокеты - UDP пример UDP клиент В роли клиента может выступать утилита
- 36. Передача данных через INET сокеты - UDP пример UDP сервер
- 37. Передача данных через INET сокеты - UDP пример
- 39. Скачать презентацию