Posts Tagged ‘клиент-сервер’

Создаем клиент-сервер на сокетах

Понедельник, Апрель 9th, 2012 Нет комментариев

Under : , , , , ,

Что такое сокеты?

Для начала давайте определим что такое сервер и клиент. Итак, сервер — это специальная программа, обычно запущенная на отдельном компьютере (хосте, от слова host(eng.) — хозяин), и выполняющая некий круг задач. Клиент, в свою очередь — программа, которая запрашивает сервер выполнить то или иное действие (задачу) и вернуть полученные данные клиенту. На хосте для работы сервера обычно выделяется порт (port). К этому порту и должен будет обращаться клиент. Клиент для связи с портом хоста, который соединен в свою очередь с нужным сервером (программой), создает сокет.

В целом алгоритм работы системы клиент-сервер выглядит следующим образом:

  1. Сервер подключается к порту на хосте и ждет соединения с клиентом; (далее…)

Работа с WinSocket

Socket (гнездо, разъем) — абстрактное программное понятие, используемое для обозначения в прикладной программе конечной точки канала связи с коммуникационной средой, образованной вычислительной сетью. При использовании протоколов TCP/IP можно говорить, что socket является средством подключения прикладной программы к порту (см. выше) локального узла сети.

Socket-интерфейс представляет собой просто набор системных вызовов и/или библиотечных функций языка программирования СИ, разделенных на четыре группы:

1. Локального управления
2. Установления связи
3. Обмена данными (ввода/вывода)
4. Закрытия связи

Ниже рассматривается подмножество функций socket-интерфейса, достаточное для написания сетевых приложений, реализующих модель «клиент-сервер» в режиме с установлением соединения.
(далее…)