Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Note NDIS 5. x has been deprecated and is superseded by NDIS 6. x. For new NDIS driver development, see Network Drivers Starting with Windows Vista. For information about porting NDIS 5. x drivers to NDIS 6. x, see Porting NDIS 5.x Drivers to NDIS 6.0.
The TCP/IP transport determines a NIC's task-offload capabilities by querying OID_TCP_TASK_OFFLOAD. In this query, the TCP/IP transport supplies, in the InformationBuffer, an NDIS_TASK_OFFLOAD_HEADER, which is defined as:
typedef struct _NDIS_TASK_OFFLOAD_HEADER
{
ULONG Version;
ULONG Size;
ULONG Reserved;
UCHAR OffsetFirstTask;
NDIS_ENCAPSULATION_FORMAT EncapsulationFormat;
} NDIS_TASK_OFFLOAD_HEADER, *PNDIS_TASK_OFFLOAD_HEADER;
The NDIS_TASK_OFFLOAD_HEADERstructure specifies the following:
The task-offload version supported by the TCP/IP transport
The size of the NDIS_TASK_OFFLOAD_HEADER structure (which is used to check the version of the structure).
The offset in bytes from the beginning of the InformationBuffer to the first NDIS_TASK_OFFLOAD structure.
The encapsulation format for send and receive packets that were passed between the TCP/IP transport and the miniport driver.
By using the information supplied by the NDIS_TASK_OFFLOAD_HEADER, the miniport driver or its NIC can locate the beginning of the first IP header in a send or receive packet. This is a prerequisite for performing offload tasks.
In response to a query of OID_TCP_TASK_OFFLOAD, a miniport driver returns, in the InformationBuffer, the NDIS_TASK_OFFLOAD_HEADER followed by one or more NDIS_TASK_OFFLOAD structures. The NDIS_TASK_OFFLOAD structure is defined as:
typedef struct _NDIS_TASK_OFFLOAD
{
ULONG Version;
ULONG Size;
NDIS_TASK Task;
ULONG OffsetNextTask;
ULONG TaskBufferLength;
UCHAR TaskBuffer[1];
} NDIS_TASK_OFFLOAD, *PNDIS_TASK_OFFLOAD;
The NDIS_TASK_OFFLOAD structure specifies the following:
The version of the specified offload task.
The size of the NDIS_TASK_OFFLOAD structure (which is used to check the version of the structure).
The offload task.
The offset from the beginning of the InformationBuffer to the next NDIS_TASK_OFFLOAD structure.
The length of the TaskBuffer.
A variable-length array that contains task-specific information.
Each NDIS_TASK_OFFLOAD structure specifies a task-offload capability supported by the miniport driver's NIC. If the miniport driver's NIC supports multiple versions of a particular task-offload capability, it returns one NDIS_TASK_OFFLOAD structure for each version.