Полезны ли API QoS в Winsock?
Качество обслуживания (QoS) было разработано для управления использованием полосы пропускания, что подразумевает, что приложения конкурируют за этот (ограниченный) ресурс. Это действительно, когда-либо беспокойство о ЛЮБЫХ заявлениях в эти дни?
Также предполагается, что протоколы QoS и параметры интернет-протокола реализованы как на стороне клиента, так и на стороне сервера, и распознаются и учитываются в каждом промежуточном элементе сети (например, на всех коммутаторах, маршрутизаторах, прокси-серверах и NAT). Верно ли это когда-нибудь на чем-то ином, чем, может быть, между двумя хостами в одной подсети или в корпоративной сети с высоким уровнем управления?
И, наконец, кто-нибудь когда-либо использовал API QoS И определял реальную выгоду? Другими словами, когда-нибудь это "спасло день" и предотвратило бы проблему, которая наверняка случилась бы иначе?
спасибо боб
1 ответ
Ясно, что ответ "нет", Winsock QoS API бесполезны. Дело не в том, что само QoS бесполезно, просто QoS на уровне сокетов не нужно устанавливать разработчикам приложений.
Некоторые устройства, такие как SIP-телефоны, устанавливают биты ToS (кодовые точки дифференцированных сервисов) в заголовках протокола Интернета в исходящих пакетах, чтобы обеспечить QoS на основе классов для совокупности трафика. Однако чаще всего классификация трафика выполняется маршрутизаторами, которые, среди прочего, устанавливают DSCP после классификации по номеру порта (уровень 3, TCP или UDP). Следовательно, QoS в основном касается сетевых администраторов, а не разработчиков приложений.
Для получения дополнительной информации о том, где подходят дифференцированные услуги, см. IETF RFC 4594 "Рекомендации для классов обслуживания DiffServ".
Skype для бизнеса отмечает два разных класса трафика двумя разными значениями DSCP:
- Аудио: EF (ускоренная пересылка, DSCP 46)
- Видео: AF41 (Обеспечение пересылки, DSCP 34)
И в один прекрасный момент и Steam, и Blizzard отметили объем трафика своей загрузки с помощью DSCP.
Это полезная вещь, которую никто не делает, потому что никто не уважает это, и никто не уважает это, потому что никто не делает это. Единственный способ борьбы с этим - образование.
Также обратите внимание, что по умолчанию после Windows 2000 вы не можете вручную установить значение заголовка IP_TOS, если вы не являетесь администратором. Разрешение программам без прав администратора устанавливать свое собственное QoS нарушит политики QoS.
На хост-устройствах под управлением Windows 2000, Windows XP или Windows Server 2003 реализация Generic Quality of Service (GQOS) определяет маркировку DSCP. Программа Winsock GQOS запускает поставщика услуг RSVP для отправки политик и проверок ресурсов, чтобы определить контроль политик и доступность ресурсов по сетевому пути данных. Если предполагаемое использование ресурса одобрено, служба планировщика пакетов QOS отмечает приоритеты DSCP в заголовках IP-пакетов. Параметр IP_TOS с функцией setsockopt будет обходить управление политикой QOS в Windows 2000, Windows XP или Windows Server 2003 и, таким образом, по умолчанию отключен в этих версиях Windows.
Microsoft рекомендует использовать GQOS в программах Winsock, чтобы использовать возможности GQOS в Windows 2000, Windows XP и Windows Server 2003.
Вот почему был создан универсальный API QoS; запросите QoS, и вы получите его в случае одобрения.