Определение возможностей RSC сетевого адаптера
Драйвер мини-порта с поддержкой объединения сегментов получения (RSC) сообщает о своих возможностях RSC с помощью структуры NDIS_OFFLOAD , которую он передает в NdisMSetMiniportAttributes.
Возможность создания отчетов RSC
В структуре NDIS_OFFLOAD элемент Header должен быть задан следующим образом:
- Элемент редакции должен иметь значение NDIS_OFFLOAD_REVISION_3.
- Элемент Size должен иметь значение NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_3.
Чтобы сообщить о поддержке RSC, драйвер мини-порта может задать следующие элементы в структуре NDIS_TCP_RECV_SEG_COALESCE_OFFLOAD , которая хранится в элементе Rscструктуры NDIS_OFFLOAD :
Задайте для элемента IPv4.Enabledзначение TRUE , чтобы указать поддержку RSC для IPv4.
Задайте для элемента IPv6.Enabledзначение TRUE , чтобы указать поддержку RSC для IPv6.
Драйвер мини-порта должен поддерживать RSC по крайней мере для инкапсуляции IEEE 802.3. Кроме того, он может поддерживать RSC для любых других инкапсуляций. Если он не поддерживает RSC для некоторой инкапсуляции и получает пакеты этой инкапсуляции, драйвер должен указать пакеты в стеке в обычном режиме.
Возможность запроса RSC
Чтобы определить, поддерживает ли драйвер мини-порта RSC, драйверы протокола и другие драйверы могут отправить запрос OID OID_TCP_OFFLOAD_HARDWARE_CAPABILITIES , который вернет NDIS_OFFLOAD структуру.