Partager via


NDIS_TCP_IP_CHECKSUM_OFFLOAD structure (ntddndis.h)

La structure NDIS_TCP_IP_CHECKSUM_OFFLOAD fournit des informations de déchargement de la tâche de somme de contrôle dans la structure NDIS_OFFLOAD .

Syntaxe

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;

Membres

IPv4Transmit

Structure dans NDIS_TCP_IP_CHECKSUM_OFFLOAD qui spécifie les informations de transmission IPv4 et qui contient les membres suivants :

IPv4Transmit.Encapsulation

Paramètres d’encapsulation pour la transmission IPv4. Pour plus d’informations sur ce membre, consultez la section Remarques suivante.

IPv4Transmit.IpOptionsSupported

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut calculer une somme de contrôle IP pour un paquet d’envoi IPv4 qui contient des options IP ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv4Transmit.TcpOptionsSupported

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut calculer une somme de contrôle TCP pour un paquet d’envoi IPv4 qui contient des options TCP ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv4Transmit.TcpChecksum

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut calculer une somme de contrôle TCP pour un paquet d’envoi IPv4. Le transport TCP/IP définit cette valeur pour activer cette fonctionnalité ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv4Transmit.UdpChecksum

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut calculer une somme de contrôle UDP pour un paquet d’envoi IPv4 ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv4Transmit.IpChecksum

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut calculer une somme de contrôle IP pour un paquet d’envoi IPv4 ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv4Receive

Structure dans NDIS_TCP_IP_CHECKSUM_OFFLOAD qui spécifie les informations de réception IPv4 et qui contient les membres suivants :

IPv4Receive.Encapsulation

Paramètres d’encapsulation pour la réception IPv4. Pour plus d’informations sur ce membre, consultez la section Remarques suivante.

IPv4Receive.IpOptionsSupported

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut valider une somme de contrôle IP pour un paquet de réception IPv4 contenant des options IP ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv4Receive.TcpOptionsSupported

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut calculer une somme de contrôle TCP pour un paquet de réception IPv4 qui contient des options TCP ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv4Receive.TcpChecksum

Valeur ULONG qu’un pilote miniport définit pour indiquer qu’un adaptateur miniport peut valider la somme de contrôle TCP pour un paquet de réception IPv4 ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv4Receive.UdpChecksum

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut valider la somme de contrôle UDP d’un paquet de réception IPv4 ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv4Receive.IpChecksum

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut valider une somme de contrôle IP pour un paquet de réception IPv4 ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv6Transmit

Structure dans NDIS_TCP_IP_CHECKSUM_OFFLOAD qui spécifie les informations de transmission IPv6 et qui contient les membres suivants :

IPv6Transmit.Encapsulation

Paramètres d’encapsulation pour la transmission IPv6. Pour plus d’informations sur ce membre, consultez la section Remarques suivante.

IPv6Transmit.IpExtensionHeadersSupported

Valeur ULONG définie par un pilote miniport pour indiquer que l’adaptateur miniport peut calculer des sommes de contrôle sur les paquets IPv6 qui contiennent des en-têtes d’extension.

IPv6Transmit.TcpOptionsSupported

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut calculer une somme de contrôle TCP pour un paquet d’envoi IPv6 qui contient des options TCP ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv6Transmit.TcpChecksum

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut calculer une somme de contrôle TCP pour un paquet d’envoi IPv6 ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv6Transmit.UdpChecksum

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut calculer une somme de contrôle UDP pour un paquet d’envoi IPv6 ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv6Receive

Structure dans NDIS_TCP_IP_CHECKSUM_OFFLOAD qui spécifie les informations de réception IPv6 et qui contient les membres suivants :

IPv6Receive.Encapsulation

Paramètres d’encapsulation pour la réception IPv6. Pour plus d’informations sur ce membre, consultez la section Remarques suivante.

IPv6Receive.IpExtensionHeadersSupported

Valeur ULONG définie par un pilote miniport pour indiquer que l’adaptateur miniport peut valider les sommes de contrôle sur les paquets IPv6 qui contiennent des en-têtes d’extension.

IPv6Receive.TcpOptionsSupported

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut calculer une somme de contrôle pour un paquet de réception IPv6 dont l’en-tête TCP contient des options TCP ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv6Receive.TcpChecksum

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut valider la somme de contrôle TCP d’un paquet de réception IPv6 ou pour indiquer que cette fonctionnalité est activée ou désactivée.

IPv6Receive.UdpChecksum

Valeur ULONG définie par un pilote miniport pour indiquer qu’un adaptateur miniport peut valider une somme de contrôle UDP pour un paquet de réception IPv6 ou pour indiquer que cette fonctionnalité est activée ou désactivée.

Remarques

La structure NDIS_TCP_IP_CHECKSUM_OFFLOAD est utilisée dans le membre Somme de contrôle de la structure NDIS_OFFLOAD . La structure NDIS_TCP_IP_CHECKSUM_OFFLOAD spécifie les services actuels ou pris en charge qu’un adaptateur miniport fournit pour le calcul des sommes de contrôle IP, TCP ou UDP (ou la totalité d’entre eux) pour l’envoi de paquets et la validation de ces sommes de contrôle pour les paquets de réception.

NDIS_OFFLOAD est utilisé dans le structure NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES , structure NDIS_BIND_PARAMETERS , NDIS_FILTER_ATTACH_PARAMETERS structure, OID_TCP_OFFLOAD_CURRENT_CONFIG OID, et le NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indication status.

Pour OID_TCP_OFFLOAD_CURRENT_CONFIG, la structure NDIS_OFFLOAD spécifie les fonctionnalités de déchargement de tâche prises en charge par un adaptateur miniport. Si les fonctionnalités de déchargement actuelles changent, un pilote miniport signale les nouvelles fonctionnalités dans un NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indication status.

Les membres Encapsulation de NDIS_TCP_IP_CHECKSUM_OFFLOAD définissent les paramètres d’encapsulation de déchargement de somme de contrôle pour l’adaptateur miniport.

En réponse à un OID_TCP_OFFLOAD_CURRENT_CONFIG demande de requête, NDIS fournit un OR au niveau du bit des indicateurs d’encapsulation, qui indiquent les paramètres d’encapsulation pris en charge, dans chacun des membres d’encapsulation . Les pilotes miniport doivent fournir une encapsulation Ethernet (NDIS_ENCAPSULATION_IEEE_802_3). Les autres types d’encapsulation sont facultatifs.

Pour un NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG status indication, le pilote miniport fournit un or au niveau du bit des indicateurs d’encapsulation, qui indiquent les fonctionnalités actuelles, dans chacun des membres d’encapsulation.

Les indicateurs suivants sont définis pour les membres Encapsulation :

  • NDIS_ENCAPSULATION_NOT_SUPPORTED
    Spécifie qu’aucun déchargement d’encapsulation n’est pris en charge.
  • NDIS_ENCAPSULATION_NULL
    Spécifie l’encapsulation NULL.
  • NDIS_ENCAPSULATION_IEEE_802_3
    Spécifie l’encapsulation IEEE 802.3.
  • NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q
    Spécifie l’encapsulation IEEE 802.3p et IEEE 802.3q.
  • NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB
    Spécifie que les paramètres d’encapsulation IEEE 802.3p et IEEE 802.3q sont spécifiés dans le membre NetBufferListInfo de chaque structure NET_BUFFER_LIST.
  • NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
    Spécifie l’encapsulation du contrôle de liaison logique (LLC) pour les protocoles routés, comme décrit dans RFC 1483. Cet indicateur est également utilisé pour indiquer l’encapsulation Ethernet LLC/SNAP.

La signification des valeurs dans les membres IpOptionsSupported, TcpOptionsSupported, IpExtensionHeadersSupported, TcpChecksum, UdpChecksum et IpChecksum de NDIS_TCP_IP_CHECKSUM_OFFLOAD dépend de l’OID ou de l’indication status qui inclut la structure de déchargement de tâche. Ces membres peuvent avoir l’une des valeurs suivantes :

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge dans NDIS 6.0 et versions ultérieures.
En-tête ntddndis.h (include Ndis.h)

Voir aussi

NDIS_BIND_PARAMETERS

NDIS_FILTER_ATTACH_PARAMETERS

NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES

NDIS_OFFLOAD

NDIS_OID_REQUEST

NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG

NET_BUFFER_LIST

OID_TCP_OFFLOAD_CURRENT_CONFIG