Телекоммуникационные технологии. Том 1



         

Winsock (для UNIX, Windows- и -NT) - часть 20


Приложение может установить режим ожидания с блокировкой для одного или нескольких объектов события, используя оператор WSAWaitForMultipleEvents. Для этих целей можно применить и WaitForMultipleObjects. Если при ожидании предпочтительнее отсутствие блокировки, можно воспользоваться оператором WSAGetOverlappedResult, чтобы проконтролировать завершение заданного процесса.

Операторы запуска совмещаемых по времени процессов ввода/вывода WSASend, WSASendTo, WSARecv, WSARecvFrom используют в качестве опционного указателя lpCompletionRoutine, который позволяет по завершении процесса обмена передать управление определенной приложением программе.

В версии WinSock 2 введено понятие группы соединителей, которое позволяет приложению сообщить сервис провайдеру, что данный набор соединителей имеет определенные идентичные свойства (атрибуты). К числу этих свойств относятся относительные приоритеты отдельных соединителей в пределах группы, а также спецификация качества услуг (QOS).

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

WSASocket и WSAAccept представляют собой два новых оператора, используемых для создания соединителей и групп, а также для включения соединителя в определенную группу. Идентификатор группы соединителя можно узнать с помощью оператора getsockopt с опцией SO_GROUP_ID. Установка и проверка относительного приоритета соединителей в группе осуществляется соответственно операторами getsockopt и setsockopt с опцией SO_GROUP_PRIORITY. Опции соединителей приведены в таблице 7.8.

Таблица 7.8. Опции соединителей

ОпцияТипНазначениеЗначение по умолчанию
SO_GROUP_IDGROUPИдентификатор группы, к которой принадлежит соединитель.NULL
SO_GROUP_PRIORITYintОтносительный приоритет соединителей, принадлежащих к группе.0
SO_MAX_MSG_SIZEintМаксимальный размер сообщения для соединителей, ориентированных на сообщения. Не имеет смысла для соединителей типа stream.Зависит от реализации
SO_PROTOCOL_INFOstruct WSAPROTOCOL_INFOОписание протокольной информации.Зависит от протокола
PVD_CONFIGchar FAR *Информационная структура, содержащая данные о сервис провайдере.Зависит от реализации
<


Содержание  Назад  Вперед