структура NDIS_TCP_IP_CHECKSUM_OFFLOAD (ntddndis.h)
Структура NDIS_TCP_IP_CHECKSUM_OFFLOAD предоставляет сведения о разгрузке задачи контрольной суммы в структуре NDIS_OFFLOAD.
Синтаксис
typedef struct _NDIS_TCP_IP_CHECKSUM_OFFLOAD {
struct {
ULONG Encapsulation;
ULONG IpOptionsSupported : 2;
ULONG TcpOptionsSupported : 2;
ULONG TcpChecksum : 2;
ULONG UdpChecksum : 2;
ULONG IpChecksum : 2;
} IPv4Transmit;
struct {
ULONG Encapsulation;
ULONG IpOptionsSupported : 2;
ULONG TcpOptionsSupported : 2;
ULONG TcpChecksum : 2;
ULONG UdpChecksum : 2;
ULONG IpChecksum : 2;
} IPv4Receive;
struct {
ULONG Encapsulation;
ULONG IpExtensionHeadersSupported : 2;
ULONG TcpOptionsSupported : 2;
ULONG TcpChecksum : 2;
ULONG UdpChecksum : 2;
} IPv6Transmit;
struct {
ULONG Encapsulation;
ULONG IpExtensionHeadersSupported : 2;
ULONG TcpOptionsSupported : 2;
ULONG TcpChecksum : 2;
ULONG UdpChecksum : 2;
} IPv6Receive;
} NDIS_TCP_IP_CHECKSUM_OFFLOAD, *PNDIS_TCP_IP_CHECKSUM_OFFLOAD;
Члены
IPv4Transmit
Структура в NDIS_TCP_IP_CHECKSUM_OFFLOAD, указывающая данные передачи IPv4 и содержащая следующие элементы:
IPv4Transmit.Encapsulation
Параметры инкапсуляции для передачи IPv4. Дополнительные сведения об этом члене см. в следующем разделе "Примечания".
IPv4Transmit.IpOptionsSupported
Значение ULONG, указывающее, что минипорт-адаптер может вычислить контрольную сумму IP-адресов для пакета отправки IPv4, содержащего параметры IP-адресов или указать, что эта возможность включена или отключена.
IPv4Transmit.TcpOptionsSupported
Значение ULONG, указывающее, что минипорт-адаптер может вычислить контрольную сумму TCP для пакета отправки IPv4, содержащего параметры TCP, или указать, что эта возможность включена или отключена.
IPv4Transmit.TcpChecksum
Значение ULONG, указывающее, что минипорт-адаптер может вычислить контрольную сумму TCP для пакета отправки IPv4. Транспорт TCP/IP задает это значение, чтобы включить эту возможность или указать, что эта возможность включена или отключена.
IPv4Transmit.UdpChecksum
Значение ULONG, указывающее, что минипорт-адаптер может вычислить контрольную сумму UDP для пакета отправки IPv4 или указать, что эта возможность включена или отключена.
IPv4Transmit.IpChecksum
Значение ULONG, указывающее, что минипортовый адаптер может вычислить контрольную сумму IP для пакета отправки IPv4 или указать, что эта возможность включена или отключена.
IPv4Receive
Структура в NDIS_TCP_IP_CHECKSUM_OFFLOAD, указывающая сведения о получении IPv4 и содержащая следующие элементы:
IPv4Receive.Encapsulation
Параметры инкапсуляции для получения IPv4. Дополнительные сведения об этом члене см. в следующем разделе "Примечания".
IPv4Receive.IpOptionsSupported
Значение ULONG, указывающее, что минипорт-адаптер может проверить контрольную сумму IP-адресов для пакета получения IPv4, содержащего IP-параметры, или указать, что эта возможность включена или отключена.
IPv4Receive.TcpOptionsSupported
Значение ULONG, указывающее, что минипорт-адаптер может вычислить контрольную сумму TCP для пакета получения IPv4, содержащего параметры TCP, или указать, что эта возможность включена или отключена.
IPv4Receive.TcpChecksum
Значение ULONG, указывающее, что минипорт-драйвер может проверить контрольную сумму TCP для пакета получения IPv4 или указать, что эта возможность включена или отключена.
IPv4Receive.UdpChecksum
Значение ULONG, указывающее, что минипорт-адаптер может проверить контрольную сумму UDP пакета IPv4 или указать, что эта возможность включена или отключена.
IPv4Receive.IpChecksum
Значение ULONG, указывающее, что минипорт-адаптер может проверить контрольную сумму IP для пакета получения IPv4 или указать, что эта возможность включена или отключена.
IPv6Transmit
Структура в NDIS_TCP_IP_CHECKSUM_OFFLOAD, указывающая данные передачи IPv6 и содержащая следующие элементы:
IPv6Transmit.Encapsulation
Параметры инкапсуляции для передачи IPv6. Дополнительные сведения об этом члене см. в следующем разделе "Примечания".
IPv6Transmit.IpExtensionHeadersSupported
Значение ULONG, указывающее, что адаптер минипорта может вычислять контрольные суммы на пакетах IPv6, содержащих заголовки расширений.
IPv6Transmit.TcpOptionsSupported
Значение ULONG, указывающее, что минипортовый адаптер может вычислить контрольную сумму TCP для пакета отправки IPv6, содержащего параметры TCP, или указать, что эта возможность включена или отключена.
IPv6Transmit.TcpChecksum
Значение ULONG, указывающее, что минипорт-адаптер может вычислить контрольную сумму TCP для пакета отправки IPv6 или указать, что эта возможность включена или отключена.
IPv6Transmit.UdpChecksum
Значение ULONG, указывающее, что минипорт-адаптер может вычислить контрольную сумму UDP для пакета отправки IPv6 или указать, что эта возможность включена или отключена.
IPv6Receive
Структура в NDIS_TCP_IP_CHECKSUM_OFFLOAD, указывающая сведения о получении IPv6 и содержащая следующие элементы:
IPv6Receive.Encapsulation
Параметры инкапсуляции для получения IPv6. Дополнительные сведения об этом члене см. в следующем разделе "Примечания".
IPv6Receive.IpExtensionHeadersSupported
Значение ULONG, указывающее, что минипорт-адаптер может проверять контрольные суммы на пакетах IPv6, содержащих заголовки расширений.
IPv6Receive.TcpOptionsSupported
Значение ULONG, указывающее, что минипортовый адаптер может вычислить контрольную сумму для пакета получения IPv6, чей заголовок TCP содержит параметры TCP или указывает, что эта возможность включена или отключена.
IPv6Receive.TcpChecksum
Значение ULONG, указывающее, что минипортовый адаптер может проверить контрольную сумму TCP-пакета IPv6 или указать, что эта возможность включена или отключена.
IPv6Receive.UdpChecksum
Значение ULONG, указывающее, что минипорт-адаптер может проверить контрольную сумму UDP для пакета получения IPv6 или указать, что эта возможность включена или отключена.
Замечания
Структура NDIS_TCP_IP_CHECKSUM_OFFLOAD используется в элементе Контрольная сумма структуры NDIS_OFFLOAD. Структура NDIS_TCP_IP_CHECKSUM_OFFLOAD указывает текущие или поддерживаемые службы, предоставляемые мини-адаптером для вычисления IP-адресов, TCP или контрольных сумм UDP (или всех из них) для отправки пакетов и проверки таких контрольных сумм для получения пакетов.
NDIS_OFFLOAD используется в NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES структура, NDIS_BIND_PARAMETERS структура, структура NDIS_FILTER_ATTACH_PARAMETERS, OID_TCP_OFFLOAD_CURRENT_CONFIG OID и NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG указание состояния.
Для OID_TCP_OFFLOAD_CURRENT_CONFIGструктура NDIS_OFFLOAD указывает возможности разгрузки задачи, поддерживаемые мини-адаптером. Если текущие возможности разгрузки изменяются, минипорт-драйвер сообщает о новых возможностях в NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG указание состояния.
инкапсуляции члены NDIS_TCP_IP_CHECKSUM_OFFLOAD определяют параметры инкапсуляции контрольной суммы для мини-адаптера.
В ответ на OID_TCP_OFFLOAD_CURRENT_CONFIG запросе NDIS предоставляет побитовую ИЛИ флаги инкапсуляции, которые указывают поддерживаемые параметры инкапсуляции в каждом из инкапсуляции членов. Драйверы минипорта должны предоставлять инкапсуляцию Ethernet (NDIS_ENCAPSULATION_IEEE_802_3). Другие типы инкапсуляции являются необязательными.
Для NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG указание состояния, минипорт-драйвер предоставляет битовую или флаги инкапсуляции, которые указывают на текущие возможности в каждом из элементов инкапсуляции.
Для элементов инкапсуляции определены следующие флаги:
- NDIS_ENCAPSULATION_NOT_SUPPORTED
Указывает, что не поддерживается разгрузка инкапсуляции. - NDIS_ENCAPSULATION_NULL
Указывает инкапсуляцию NULL. - NDIS_ENCAPSULATION_IEEE_802_3
Указывает инкапсуляцию IEEE 802.3. - NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q
Указывает инкапсуляцию IEEE 802.3p и IEEE 802.3q. - NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB
Указывает, что параметры инкапсуляции IEEE 802.3p и IEEE 802.3q указываются в элементе NetBufferListInfo для каждой структуры NET_BUFFER_LIST. - NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
Указывает элемент управления логическими ссылками (LLC) инкапсулирование для маршрутизованных протоколов, как описано в RFC 1483. Этот флаг также используется для указания инкапсуляции Ethernet LLC/SNAP.
Значение значений в IpOptionsSupported, TcpOptionsSupported, IpExtensionHeadersSupported, TcpChecksum, UdpChecksumи ipChecksum члены NDIS_TCP_IP_CHECKSUM_OFFLOAD зависят от того, какие признаки OID или состояния включают структуру разгрузки задачи. Эти члены могут иметь одно из следующих значений:
- NDIS_OFFLOAD_NOT_SUPPORTED
В OID_TCP_OFFLOAD_CURRENT_CONFIGэто значение указывает, что минипорт-адаптер не поддерживает функцию, указанную членом. - NDIS_OFFLOAD_SUPPORTED
В OID_TCP_OFFLOAD_CURRENT_CONFIGэто значение указывает, что минипорт-адаптер поддерживает функцию, указанную элементом. - NDIS_OFFLOAD_SET_OFF
В указании состояния NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG это значение указывает, что компонент, указанный элементом, отключен. - NDIS_OFFLOAD_SET_ON
В указании состояния NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG это значение указывает, что компонент, указанный участником, включен.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Поддерживается в NDIS 6.0 и более поздних версиях. |
заголовка | ntddndis.h (include Ndis.h) |