Создание отчетов о возможностях контрольной суммы сетевой карты
Драйвер мини-порта 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.