Skip to content

Latest commit

 

History

History
118 lines (79 loc) · 6.68 KB

ns-ndis-_ndis_tcp_send_offloads_supplemental_net_buffer_list_info.md

File metadata and controls

118 lines (79 loc) · 6.68 KB
UID title description old-location tech.root ms.date keywords ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames f1_keywords topic_type api_type api_location api_name
NS:ndis._NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO
_NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO (ndis.h)
The NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO structure contains additional out-of-band information for encapsulated packets.
netvista\ndis_tcp_send_offloads_supplemental_net_buffer_list_info.htm
netvista
05/02/2018
NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO structure
*PNDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO, NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO, NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO structure [Network Drivers Starting with Windows Vista], PNDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO, PNDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO structure pointer [Network Drivers Starting with Windows Vista], _NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO, ndis/NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO, ndis/PNDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO, netvista.ndis_tcp_send_offloads_supplemental_net_buffer_list_info
ndis.h
Windows
Supported in NDIS 6.30 and later.
Windows
NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO, *PNDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO
_NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO
ndis/_NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO
PNDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO
ndis/PNDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO
NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO
ndis/NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO
APIRef
kbSyntax
HeaderDef
Ndis.h
_NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO
PNDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO
NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO

_NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO structure

-description

The NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO structure contains additional out-of-band information for encapsulated packets. For more information, see Network Virtualization using Generic Routing Encapsulation (NVGRE) Task Offload (NVGRE-TO).

-struct-fields

-field EncapsulatedPacketOffsets

-field EncapsulatedPacketOffsets.IsEncapsulatedPacket

If this member is TRUE, this NBL represents a packet containing an inner Ethernet frame with a transport IP header. It is FALSE for normal packets. When IsEncapsulatedPacket is TRUE, the existing header offset fields, NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO.LsoV2Transmit.TcpHeaderOffset and NDIS_TCP_IP_CHECKSUM_NET_BUFFER_LIST_INFO.Transmit.TcpHeaderOffset, will not have correct values and must not be used by the NIC or driver. Instead, the miniport driver must use the offsets specified in the other members of this structure.

-field EncapsulatedPacketOffsets.EncapsulatedPacketOffsetsValid

If this member is TRUE, the InnerFrameOffset, TransportIpHeaderRelativeOffset, and TcpHeaderRelativeOffset members have valid values.

-field EncapsulatedPacketOffsets.InnerFrameOffset

Offset from the beginning of the packet to the first byte of the inner Ethernet frame.

-field EncapsulatedPacketOffsets.TransportIpHeaderRelativeOffset

Offset to the first byte of the inner IP header relative to the InnerFrameOffset.

-field EncapsulatedPacketOffsets.TcpHeaderRelativeOffset

Offset to the first byte of the inner (transport) header relative to the TransportIpHeaderRelativeOffset. This value is always set to the correct offset, even if the inner frame is not a TCP packet.

-field EncapsulatedPacketOffsets.IsInnerIPv6

Set by the protocol driver to indicate that the inner IP header in the encapsulated packet contains IPv6 addresses.

-field EncapsulatedPacketOffsets.TcpOptionsPresent

Set by the protocol driver when the inner TCP header contains TCP options. This allows a miniport driver to optimize the case when there are no options to assume the TCP header length to access the payload.

-field EncapsulatedPacketOffsets.Reserved

Reserved for future use.

-field Value

Reserved for future use.

-remarks

The members of NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO are meaningful if and only if TcpIpChecksumNetBufferListInfo or TcpLargeSendNetBufferListInfo is specified in the NDIS_NET_BUFFER_LIST_INFO structure.

If the IsEncapsulatedPacket member is TRUE and the TcpIpChecksumNetBufferListInfo out-of-band (OOB) information is valid, this indicates that NVGRE support is required and the NIC must compute the checksum for the tunnel (outer) IP header, the transport (inner) IP header, and the TCP or UDP header if one of them is present. An NVGRE packet will only be offloaded if the packet conforms to miniport-advertised capabilities. For example, a packet containing a UDP header will not be offloaded if the miniport did not advertise UDP Tx checksum offload support in its base capabilities. For more information, see Offloading Checksum Tasks.

-see-also

NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD

NDIS_NET_BUFFER_LIST_INFO

Network Virtualization using Generic Routing Encapsulation (NVGRE) Task Offload

Offloading Checksum Tasks