NDIS_OFFLOAD_PARAMETERS structure (ntddndis.h)
La structure NDIS_OFFLOAD_PARAMETERS spécifie les paramètres de configuration de déchargement de tâche en cours en réponse à une demande de jeu d’OID de OID_TCP_OFFLOAD_PARAMETERS.
Syntaxe
typedef struct _NDIS_OFFLOAD_PARAMETERS {
NDIS_OBJECT_HEADER Header;
UCHAR IPv4Checksum;
UCHAR TCPIPv4Checksum;
UCHAR UDPIPv4Checksum;
UCHAR TCPIPv6Checksum;
UCHAR UDPIPv6Checksum;
UCHAR LsoV1;
UCHAR IPsecV1;
UCHAR LsoV2IPv4;
UCHAR LsoV2IPv6;
UCHAR TcpConnectionIPv4;
UCHAR TcpConnectionIPv6;
ULONG Flags;
UCHAR IPsecV2;
UCHAR IPsecV2IPv4;
struct {
UCHAR RscIPv4;
UCHAR RscIPv6;
};
struct {
UCHAR EncapsulatedPacketTaskOffload;
UCHAR EncapsulationTypes;
};
union {
struct {
USHORT VxlanUDPPortNumber;
} VxlanParameters;
ULONG Value;
} EncapsulationProtocolParameters;
_ENCAPSULATION_PROTOCOL_PARAMETERS _ENCAPSULATION_PROTOCOL_PARAMETERS;
struct {
UCHAR IPv4;
UCHAR IPv6;
} UdpSegmentation;
} NDIS_OFFLOAD_PARAMETERS, *PNDIS_OFFLOAD_PARAMETERS;
Membres
Header
Structure NDIS_OBJECT_HEADER de la structure NDIS_OFFLOAD_PARAMETERS . Définissez le membre Type de la structure spécifiée par Header sur NDIS_OBJECT_TYPE_DEFAULT.
Pour indiquer la version de la structure NDIS_OFFLOAD_PARAMETERS , définissez le membre Revision sur l’une des valeurs suivantes :
IPv4Checksum
Paramètre de somme de contrôle IPv4 de l’adaptateur miniport. Pour plus d'informations, consultez la section Notes qui suit.
TCPIPv4Checksum
Paramètre de somme de contrôle IPv4 de l’adaptateur miniport pour les paquets TCP. Pour plus d'informations, consultez la section Notes qui suit.
UDPIPv4Checksum
Paramètre de somme de contrôle IPv4 de l’adaptateur miniport pour les paquets UDP. Pour plus d'informations, consultez la section Notes qui suit.
TCPIPv6Checksum
Paramètre de somme de contrôle IPv6 de l’adaptateur miniport pour les paquets TCP. Pour plus d'informations, consultez la section Notes qui suit.
UDPIPv6Checksum
Paramètre de somme de contrôle IPv6 de l’adaptateur miniport pour les paquets UDP. Pour plus d'informations, consultez la section Notes qui suit.
LsoV1
Paramètre de déchargement d’envoi volumineux version 1 (LSOV1) de l’adaptateur miniport. Ce paramètre doit être l’une des valeurs suivantes :
IPsecV1
Paramètre de déchargement de la sécurité du protocole Internet (IPsec) de l’adaptateur miniport. Ce paramètre doit être l’une des valeurs suivantes :
LsoV2IPv4
Paramètre LSOV2 (large send offload version 2) IPv4 de l’adaptateur miniport. Ce paramètre doit être l’une des valeurs suivantes :
LsoV2IPv6
Paramètre IPv6 LSOV2 de l’adaptateur miniport. Ces paramètres sont spécifiés comme l’une des valeurs suivantes :
TcpConnectionIPv4
Paramètre de déchargement de connexion IPv4 de l’adaptateur miniport. Ces paramètres sont spécifiés comme l’une des valeurs suivantes :
Valeur | Signification |
---|---|
|
Le pilote miniport ne doit pas modifier le paramètre actuel. |
TcpConnectionIPv6
Paramètre de déchargement de connexion IPv6 de l’adaptateur miniport. Ces paramètres sont spécifiés comme l’une des valeurs suivantes :
Valeur | Signification |
---|---|
|
Le pilote miniport ne doit pas modifier le paramètre actuel. |
Flags
Ensemble d’indicateurs qui peuvent être combinés avec une opération OR au niveau du bit. Définissez ce membre sur zéro. Aucun indicateur n’est actuellement défini.
IPsecV2
Le paramètre de déchargement IPsec (Internet Protocol Security) version 2 d’un adaptateur miniport qui prend en charge IPv6 et IPv4. Ce membre spécifie le paramètre pour la prise en charge d’IPv6 et IPv4. Ce paramètre doit être l’une des valeurs suivantes :
IPsecV2IPv4
Le paramètre IPsec (Internet Protocol Security) de déchargement version 2 d’un adaptateur miniport qui prend en charge IPv4 et ne prend pas en charge IPv6. Si le pilote miniport prend en charge IPv6, le membre IPsecV2 spécifie le paramètre IPv4 et ce membre n’est pas utilisé. Ce paramètre doit être l’une des valeurs suivantes :
RscIPv4
Indique l’état de coalescence du segment de réception pour IPv4.
RscIPv6
Indique l’état de coalescence du segment de réception pour IPv6.
EncapsulatedPacketTaskOffload
Un pilote de protocole définit EncapsuléPacketTaskOffload comme suit :
EncapsulationTypes
Ce champ n’est effectif que lorsque l’objet EncapsuléPacketTaskOffload a la valeur NDIS_OFFLOAD_SET_ON. Si le membre EncapsuléPacketTaskOffload n’est pas défini sur NDIS_OFFLOAD_SET_ON, ce membre est égal à zéro. Un pilote de protocole doit définir EncapsulationTypes sur le bit OR des indicateurs correspondant aux types d’encapsulation dont il a besoin. Il peut sélectionner des indicateurs parmi les éléments suivants :
Valeur | Signification |
---|---|
|
Spécifie l’encapsulation MAC GRE (NVGRE). |
|
Spécifie l’encapsulation VXLAN. |
EncapsulationProtocolParameters
Union qui décrit les paramètres d’encapsulation pour l’encapsulation VXLAN.
Si le pilote miniport a publié VxlanUDPPortNumerConfigurable comme TRUE, un pilote de protocole peut définir EncapsulationProtocolParameters.VxlanParameters.VxlanUDPPortNumber sur une valeur autre que 0. Le pilote minport doit utiliser ce numéro de port pour mettre en correspondance et générer des trames VXLAN après avoir réussi l’OID, et publier la valeur mise à jour dans ses fonctionnalités. Si le pilote de protocole passe la valeur 0, le pilote miniport continue d’utiliser le numéro de port initialisé à partir du mot clé standardisé.
EncapsulationProtocolParameters.VxlanParameters
Structure qui contient le VxlanUDPPortNumber.
EncapsulationProtocolParameters.VxlanParameters.VxlanUDPPortNumber
Valeur du port de destination VXLAN. Cette valeur est définie sur la valeur 4789 attribuée par IANA par défaut. Si le pilote miniport prend en charge un numéro de port configurable tel qu’il est publié dans la structure NDIS_OFFLOAD , un pilote de protocole peut émettre un OID_TCP_OFFLOAD_PARAMETERS OID pour activer NDIS_ENCAPSULATION_TYPE_VXLAN avec une valeur différente dans VxlanUDPPortNumber. Le pilote miniport doit utiliser VxlanUDPPortNumber pour déterminer les paquets encapsulés VXLAN pour effectuer des déchargements de réception.
EncapsulationProtocolParameters.Value
Valeur de port si EncapsulationTypes n’est pas défini sur NDIS_ENCAPSULATION_TYPE_VXLAN.
_ENCAPSULATION_PROTOCOL_PARAMETERS
Nom de type pour EncapsulationProtocolParameters.
UdpSegmentation
Structure qui décrit les paramètres de déchargement de segmentation UDP (USO) de l’adaptateur miniport.
UdpSegmentation.IPv4
Paramètre de déchargement de segmentation UDP IPv4 de l’adaptateur miniport. Ce paramètre doit être l’une des valeurs suivantes :
UdpSegmentation.IPv6
Paramètre de déchargement de segmentation UDP IPv6 de l’adaptateur miniport. Ce paramètre doit être l’une des valeurs suivantes :
Remarques
En réponse à une demande de jeu d’OID OID_TCP_OFFLOAD_PARAMETERS , un pilote miniport utilise les paramètres de la structure NDIS_OFFLOAD_PARAMETERS pour définir la configuration actuelle de l’adaptateur miniport.
NDIS conserve les paramètres demandés dans le Registre dans les mots clés standardisés de déchargement. Lorsque NDIS redémarre l’adaptateur miniport, le pilote miniport lit les mots clés standardisés de déchargement et les utilise pour définir la configuration de déchargement par défaut de la carte réseau.
Pour accéder aux paramètres de déchargement de somme de contrôle, utilisez les membres suivants de la structure NDIS_OFFLOAD_PARAMETERS :
IPv4Checksum
TCPIPv4Checksum
UDPIPv4Checksum
TCPIPv6Checksum
UDPIPv6Checksum
Les membres précédents peuvent avoir l’une des valeurs suivantes :
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE
Le pilote miniport ne doit pas modifier le paramètre actuel.
NDIS_OFFLOAD_PARAMETERS_TX_RX_DISABLED
La fonctionnalité spécifiée par le membre est désactivée.
NDIS_OFFLOAD_PARAMETERS_TX_ENABLED_RX_DISABLED
La fonctionnalité spécifiée par le membre est activée pour la transmission et désactivée pour la réception.
NDIS_OFFLOAD_PARAMETERS_RX_ENABLED_TX_DISABLED
La fonctionnalité spécifiée par le membre est activée pour la réception et désactivée pour la transmission.
NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED
La fonctionnalité spécifiée par le membre est activée pour la transmission et la réception.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista, pris en charge dans NDIS 6.0 et versions ultérieures. |
Serveur minimal pris en charge | Windows Server 2008 |
En-tête | ntddndis.h (inclure Ndis.h) |
Voir aussi
OID_TCP_OFFLOAD_HARDWARE_CAPABILITIESCommentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : tout au long de 2024, nous allons éliminer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d'informations, consultez :Envoyer et afficher des commentaires pour