Поделиться через


Создание отчетов о возможностях контрольной суммы сетевой карты

Драйвер мини-порта NDIS сообщает, настроена ли в данный момент сетевой адаптер для вычисления и проверки контрольных сумм IP, TCP и UDP в структуре NDIS_TCP_IP_CHECKSUM_OFFLOAD . Драйверы мини-портов должны включать текущую конфигурацию разгрузки контрольной суммы в структуру NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES . Драйверы miniport вызывают функцию NdisMSetMiniportAttributes из функции MiniportInitializeEx и передают сведения в NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES.

Драйверы мини-портов должны сообщать об изменениях в текущей конфигурации разгрузки контрольной суммы, если таковые есть, в NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG состоянии.

В ответ на запрос OID_TCP_OFFLOAD_CURRENT_CONFIG NDIS включает структуру NDIS_TCP_IP_CHECKSUM_OFFLOAD в структуру NDIS_OFFLOAD , возвращаемую NDIS в элементе InformationBufferструктуры NDIS_OID_REQUEST . NDIS использует сведения, предоставленные драйвером мини-порта.

Драйвер мини-порта указывает следующие сведения о контрольной сумме для пакетов отправки и получения IPv4 и IPv6:

  • Типы контрольных сумм (IP, TCP или UDP), которые сетевой адаптер может вычислить для отправки пакетов и может проверять на получение пакетов.

  • Параметры инкапсуляции в элементе инкапсуляции . Дополнительные сведения об этом члене см. в разделе Примечания в NDIS_TCP_IP_CHECKSUM_OFFLOAD.

  • Может ли сетевой адаптер вычислять или проверять (или вычислять и проверять) контрольные суммы для пакета, IP-заголовки которого содержат параметры IPv4.

  • Может ли сетевой адаптер вычислять или проверять (или вычислять и проверять) контрольные суммы для пакета IPv6, IP-заголовки которого содержат заголовки расширения IPv6.

  • Может ли сетевой адаптер вычислять или проверять (или вычислять и проверять) контрольные суммы для пакета, заголовок TCP которого содержит параметры TCP.

Определение возможностей разгрузки задач