Сети ЭВМ и телекоммуникации. Фролов А.И. - 34 стр.

UptoLike

Составители: 

32
При установлении соединения каждая из сторон выполняет некоторые
операции, называемые открытием соединения. Открытие может быть пассив-
ным или активным. Как правило, одна из сторон производит активное открытие
соединения, а другая пассивное, тогда соединение устанавливается. Оба ре-
жима подчиняются четким правилам. Пассивное соединение еще иногда назы-
вают серверным, а активное клиентским.
При активном соединении процесс прикладного уровня передает про-
граммному обеспечению TCP на той же ЭВМ сервисный примитив запроса на
установление соединения с номером сокета, после чего TCP отправляет полу-
чателю запрос на установление соединения, затем ждет ответа. После установ-
ления соединения активный процесс (клиент) может инициировать прием или
передачу данных.
При пассивном соединении прикладная программа переводит программное
обеспечение TCP в режим ожидания запроса на соединение от удаленной сис-
темы. Когда поступает запрос, программное обеспечение TCP осуществляет ус-
тановку соединения, после чего пассивный процесс (сервер) готов принимать и
передавать данные.
Программный интерфейс сокетов изначально был разработан для операци-
онной системы (ОС) UNIX. Библиотека функций, поддерживающих этот ин-
терфейс, входит в ядро всех ОС типа UNIX и Linux. Однако принципы работы с
этим программным интерфейсом применимы к большинству ОС, поддержи-
вающих TCP/IP (например, в семействе ОС и оболочек типа Windows про-
граммный интерфейс сокетов реализован в динамической библиотеке
Winsock.dll).
Для протокола TCP пассивное (на стороне сервера) соединение с сокетом
приводит к выполнению следующих функций:
создание сокета и установление его типа (в ОС типа UNIX функция
socket);
настройка сокета на конкретное соединение (указывает адрес и номер
порта в ОС типа UNIX функция bind);
                                           32

     При установлении соединения каждая из сторон выполняет некоторые
операции, называемые открытием соединения. Открытие может быть пассив-
ным или активным. Как правило, одна из сторон производит активное открытие
соединения, а другая – пассивное, тогда соединение устанавливается. Оба ре-
жима подчиняются четким правилам. Пассивное соединение еще иногда назы-
вают серверным, а активное – клиентским.
     При активном соединении процесс прикладного уровня передает про-
граммному обеспечению TCP на той же ЭВМ сервисный примитив запроса на
установление соединения с номером сокета, после чего TCP отправляет полу-
чателю запрос на установление соединения, затем ждет ответа. После установ-
ления соединения активный процесс (клиент) может инициировать прием или
передачу данных.
     При пассивном соединении прикладная программа переводит программное
обеспечение TCP в режим ожидания запроса на соединение от удаленной сис-
темы. Когда поступает запрос, программное обеспечение TCP осуществляет ус-
тановку соединения, после чего пассивный процесс (сервер) готов принимать и
передавать данные.
     Программный интерфейс сокетов изначально был разработан для операци-
онной системы (ОС) UNIX. Библиотека функций, поддерживающих этот ин-
терфейс, входит в ядро всех ОС типа UNIX и Linux. Однако принципы работы с
этим программным интерфейсом применимы к большинству ОС, поддержи-
вающих TCP/IP (например, в семействе ОС и оболочек типа Windows про-
граммный        интерфейс   сокетов   реализован   в   динамической   библиотеке
Winsock.dll).
     Для протокола TCP пассивное (на стороне сервера) соединение с сокетом
приводит к выполнению следующих функций:
     − создание сокета и установление его типа (в ОС типа UNIX функция
socket);
     − настройка сокета на конкретное соединение (указывает адрес и номер
порта – в ОС типа UNIX – функция bind);