NDIS_TASK_TCP_LARGE_SEND (Compact 2013)
3/26/2014
If it is supplied by a miniport in response to a query of OID_TCP_TASK_OFFLOAD, this structure contains the miniport's network adapter capabilities for segmenting large TCP packets into smaller packets. This structure contains the packet-segmentation capabilities that the TCP/IP transport is enabling for the network adapter, if passed to a miniport in a set of OID_TCP_TASK_OFFLOAD.
Syntax
typedef struct _NDIS_TASK_TCP_LARGE_SEND {
ULONG Version;
ULONG MaxOffLoadSize;
ULONG MinSegmentCount;
BOOLEAN TcpOptions;
BOOLEAN IpOptions;
} NDIS_TASK_TCP_LARGE_SEND, *PNDIS_TASK_TCP_LARGE_SEND;
Members
- MaxOffLoadSize
A miniport sets this to the maximum bytes of user data that the transport can pass to the miniport in a single packet. The transport will not pass a packet to the miniport that contains more than MaxOffLoadSize user data bytes. If such a packet must be transmitted, the transport itself segments the packet into smaller packets.
- MinSegmentCount
A miniport set this to the minimum number of segments that a large TCP packet must be divisible by before the transport can offload it to a network adapter for segmentation. The transport will not offload a large packet to the miniport for segmentation unless the miniport can create at least MinSegmentCount segments from the packet. If a large TCP packet does not meet the minimum segment requirement, the TCP/IP transport itself segments the packet into smaller packets.
- TcpOptions
Set by a miniport to indicate that the miniport can segment a large TCP packet whose TCP header contains TCP options. Set by the TCP/IP transport to enable this capability.
- IpOptions
Set by a miniport to indicate that its network adapter can segment a large TCP packet whose IP header contains IP options. Set by the TCP/IP transport to enable this capability.
Remarks
In response to a query of OID_TCP_TASK_OFFLOAD, a miniport returns in InformationBuffer an NDIS_TASK_OFFLOAD_HEADER structure followed immediately by one or more chained NDIS_TASK_OFFLOAD structures. Each NDIS_TASK_OFFLOAD structure specifies a task-offload capability supported by the miniport's network adapter.
When the Task member of the NDIS_TASK_OFFLOAD structure specifies TcpLargeSendNdisTask, the TaskBuffer member of the NDIS_TASK_OFFLOAD structure contains an NDIS_TASK_TCP_LARGE_SEND structure.
When returned by a miniport in response to the TCP/IP transport's query of OID_TCP_TASK_OFFLOAD, the NDIS_TASK_TCP_LARGE_SEND structure specifies a network adapter's capabilities for segmenting a large TCP packet into smaller TCP packets. When it is passed to a miniport through the TCP/IP transport's set of OID_TCP_TASK_OFFLOAD, the NDIS_TASK_TCP_LARGE_SEND structure specifies the TCP-packet-segmentation capabilities that the transport is enabling.
Requirements
Header |
ndis.h |
See Also
Reference
NDIS 5.x Legacy Structures
NDIS_TASK_OFFLOAD_HEADER
NDIS_TASK_OFFLOAD
OID_TCP_TASK_OFFLOAD
NDIS 5.x Legacy Reference