structure NDIS_TCP_LARGE_SEND_OFFLOAD_V2 (ntddndis.h)
La structure NDIS_TCP_LARGE_SEND_OFFLOAD_V2 fournit des informations de déchargement d’envoi volumineux version 2 (LSOV2) dans la structure NDIS_OFFLOAD.
Syntaxe
typedef struct _NDIS_TCP_LARGE_SEND_OFFLOAD_V2 {
struct {
ULONG Encapsulation;
ULONG MaxOffLoadSize;
ULONG MinSegmentCount;
} IPv4;
struct {
ULONG Encapsulation;
ULONG MaxOffLoadSize;
ULONG MinSegmentCount;
ULONG IpExtensionHeadersSupported : 2;
ULONG TcpOptionsSupported : 2;
} IPv6;
} NDIS_TCP_LARGE_SEND_OFFLOAD_V2, *PNDIS_TCP_LARGE_SEND_OFFLOAD_V2;
Membres
IPv4
Structure dans NDIS_TCP_LARGE_SEND_OFFLOAD_V2 qui spécifie les informations IPv4 et qui contient les membres suivants :
IPv4.Encapsulation
Paramètres d’encapsulation pour IPv4. Pour plus d’informations sur ce membre, consultez la section Remarques suivante.
IPv4.MaxOffLoadSize
Octets maximum de données utilisateur que le transport peut passer au pilote miniport dans un seul paquet. Le transport ne transmet pas de paquet au pilote miniport qui contient plus d’octets de données utilisateur que MaxOffLoadSize spécifie. Si un tel paquet doit être transmis, le transport lui-même segmente le paquet en paquets plus petits.
IPv4.MinSegmentCount
Nombre minimal de segments qu’un paquet TCP volumineux doit être divisible avant que le transport puisse le décharger sur le matériel pour la segmentation. Le transport ne déchargera pas un paquet volumineux vers le pilote miniport pour la segmentation, sauf si le pilote miniport peut créer au moins autant de segments que MinSegmentCount spécifie à partir du paquet. Si un paquet TCP volumineux ne répond pas à la condition minimale du segment, le transport TCP/IP lui-même segmente le paquet en paquets plus petits.
IPv6
Structure dans NDIS_TCP_LARGE_SEND_OFFLOAD_V2 qui spécifie les informations IPv6 et qui contient les membres suivants :
IPv6.Encapsulation
Paramètres d’encapsulation pour IPv6. Pour plus d’informations sur ce membre, consultez la section Remarques suivante.
IPv6.MaxOffLoadSize
Octets maximum de données utilisateur que le transport peut passer au pilote miniport dans un seul paquet. Le transport ne transmet pas de paquet au pilote miniport qui contient plus d’octets de données utilisateur que MaxOffLoadSize spécifie. Si un tel paquet doit être transmis, le transport lui-même segmente le paquet en paquets plus petits.
IPv6.MinSegmentCount
Nombre minimal de segments qu’un paquet TCP volumineux doit être divisible avant que le transport puisse le décharger sur une carte réseau pour la segmentation. Le transport ne déchargera pas un paquet volumineux vers le pilote miniport pour la segmentation, sauf si le pilote miniport peut créer au moins autant de segments que MinSegmentCount spécifie à partir du paquet. Si un paquet TCP volumineux ne répond pas à la condition minimale du segment, le transport TCP/IP lui-même segmente le paquet en paquets plus petits.
IPv6.IpExtensionHeadersSupported
Valeur ULONG définie par un pilote miniport pour indiquer que l’adaptateur miniport peut segmenter un paquet TCP volumineux dont l’en-tête IP contient des en-têtes d’extension IPv6.
IPv6.TcpOptionsSupported
Valeur ULONG définie par un pilote miniport pour indiquer que le pilote miniport peut segmenter un paquet TCP volumineux dont l’en-tête TCP contient des options TCP ou pour indiquer que cette fonctionnalité est activée ou désactivée.
Remarques
La structure NDIS_TCP_LARGE_SEND_OFFLOAD_V2 est utilisée dans le membre LsoV2 de la structure NDIS_OFFLOAD. La structure NDIS_TCP_LARGE_SEND_OFFLOAD_V2 spécifie les services actuels ou pris en charge qu’un adaptateur miniport fournit pour segmenter de gros paquets TCP en paquets plus petits. NDIS fournit également un déchargement d’envoi volumineux version 1 (LSOV1), qui est une version antérieure de LSOV2. Pour plus d’informations sur LSOV1, consultez NDIS_TCP_LARGE_SEND_OFFLOAD_V1.
NDIS_OFFLOAD est utilisé dans le structure NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES, structure NDIS_BIND_PARAMETERS, structure NDIS_FILTER_ATTACH_PARAMETERS, OID_TCP_OFFLOAD_CURRENT_CONFIG OID et le NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indication d’état.
Pour OID_TCP_OFFLOAD_CURRENT_CONFIG, la structure NDIS_OFFLOAD spécifie les fonctionnalités de déchargement des tâches 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 d’état.
L’encapsulation membres de NDIS_TCP_LARGE_SEND_OFFLOAD_V2 définir les paramètres d’encapsulation LSOV2 pour l’adaptateur miniport.
En réponse à une OID_TCP_OFFLOAD_CURRENT_CONFIG requête, NDIS fournit une or au niveau du bit des indicateurs d’encapsulation, qui indiquent les paramètres d’encapsulation pris en charge, dans chacune des encapsulation membres. Les pilotes miniport doivent fournir l’encapsulation Ethernet (NDIS_ENCAPSULATION_IEEE_802_3). Les autres types d’encapsulation sont facultatifs.
Pour un NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG'indication d’état, le pilote miniport fournit une or au niveau du bit des indicateurs d’encapsulation, qui indiquent les fonctionnalités actuelles, dans chacun des membres 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.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Prise en charge dans NDIS 6.0 et versions ultérieures. |
d’en-tête | ntddndis.h (include Ndis.h) |