NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS structure (ndischimney.h)
[The TCP chimney offload feature is deprecated and should not be used.]
The NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS structure provides TCP chimney offload information in the OID_TCP_CONNECTION_OFFLOAD_PARAMETERS OID.
Syntax
typedef struct _NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS {
NDIS_OBJECT_HEADER Header;
NDIS_OFFLOAD_ENCAPSULATION Encapsulation;
ULONG TicksPerSecond;
UCHAR TcpAckFrequency;
UCHAR TcpDelayedAckTicks;
UCHAR TcpMaximumRetransmissions;
UCHAR TcpDoubtReachabilityRetransmissions;
ULONG TcpSwsPreventionTicks;
ULONG TcpDuplicateAckThreshold;
ULONG TcpPushTicks;
ULONG NceStaleTicks;
ULONG CongestionAlgorithm;
} NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS, *PNDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS;
Members
Header
The
NDIS_OBJECT_HEADER structure for the
NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS structure. Set the
Type member of the structure that
Header specifies to
NDIS_OBJECT_TYPE_DEFAULT, the
Revision member to
NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS_ 1, and the
Size member to
sizeof(NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS)
.
Encapsulation
An NDIS_OFFLOAD_ENCAPSULATION structure that contains encapsulation settings for TCP chimney offload.
TicksPerSecond
A ULONG value that the TCP/IP driver stack sets to specify how many ticks of the host's clock equal one second. The default value is 1000 (that is, 1 tick = 1 millisecond). An offload target must support this member.
TcpAckFrequency
A UCHAR value that the TCP/IP driver stack sets to specify the maximum number of segments that the offload target can receive before the target sends an ACK. An offload target must support this member.
TcpDelayedAckTicks
A UCHAR value that the TCP/IP driver stack sets to specify how many ticks, starting from the reception of a segment, that the offload target should wait for additional receive segments before the target sends an ACK. An offload target uses this value to initialize its delayed-ACK timer. An offload target must support this member.
TcpMaximumRetransmissions
A UCHAR value that the TCP/IP driver stack sets to specify the maximum number of times that the offload target should retransmit a segment on a TCP connection. When the retransmit counter for a TCP connection exceeds this limit, the offload target can call the NdisTcpOffloadEventHandler function with an EventType parameter of TcpIndicateRetrieve to request that the TCP/IP driver stack terminate the offload of the connection. An offload target must support this member.
TcpDoubtReachabilityRetransmissions
A UCHAR value that the TCP/IP driver stack sets to specify the maximum number of times that the offload target should retransmit a segment before the target indicates to the TCP/IP driver stack that the reachability of a neighbor is in doubt. For more information about this indication, see NdisMOffloadEventIndicate. An offload target should support this member.
TcpSwsPreventionTicks
A ULONG value that the TCP/IP driver stack sets to specify the number of ticks for the offload target's silly window syndrome (SWS) send and receive timers. When the SWS send timer times out, the offload target sends a partial segment. When the SWS receive timer times out, the offload target sends a window update. An offload target should support this member.
TcpDuplicateAckThreshold
A ULONG value that the TCP/IP driver stack sets to specify the number of duplicate acknowledgments that the offload target must receive before the target performs a fast retransmission. An offload target must support this member.
TcpPushTicks
A ULONG value that the TCP/IP driver stack sets to specify the number of ticks that an offload target must wait before the target completes a pre-posted receive buffer. This interval starts immediately after the offload target places the first byte in the pre-posted receive buffer. An offload target uses this value to initialize its push timer. An offload target must support this member.
NceStaleTicks
A ULONG value that the TCP/IP driver stack sets to indicate the number of ticks of inactivity that make a neighbor state object stale. An offload target must support this member.
CongestionAlgorithm
Reserved for future use.
If you are an independent hardware vendor (IHV) and you want to implement nondefault congestion control algorithms, for example Compound TCP, contact Microsoft at External TCP Offload Triage.
Remarks
In NDIS 6.0 and later versions, the NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS structure specifies the current or requested parameters that a miniport adapter provides for TCP chimney offload.
To specify various offload parameter settings, NDIS and overlying drivers supply an NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS structure when they set the OID_TCP_CONNECTION_OFFLOAD_PARAMETERS OID.
To obtain the current settings of various offload parameters, NDIS and overlying drivers query OID_TCP_CONNECTION_OFFLOAD_PARAMETERS. The miniport driver returns the current settings in the NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS structure.
The Encapsulation member of NDIS_TCP_CONNECTION_OFFLOAD_PARAMETERS defines the TCP chimney offload encapsulation settings for the miniport adapter. For more information, see the NDIS 6.0 TCP chimney offload documentation.
Requirements
Requirement | Value |
---|---|
Header | ndischimney.h (include Ndischimney.h) |