NDIS_QOS_OFFLOAD_CAPABILITIES - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// ntddndis.h

typedef struct _NDIS_QOS_OFFLOAD_CAPABILITIES {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  ULONG              SupportedSqTypes;
  BOOLEAN            TransmitCapSupported[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  BOOLEAN            TransmitReservationSupported[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  BOOLEAN            ReceiveCapSupported[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  BOOLEAN            TransmitGftCapSupported[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  BOOLEAN            ReceiveGftCapSupported[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  BOOLEAN            TcSupportedTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  ULONG              NumStandardSqsSupported;
  ULONG              NumGftSqsSupported;
  ULONG              ReservationGranularitySupported;
  ULONG              MaxNumSqInputs;
  BOOLEAN            CrossTcTransmitMaxCapSupported;
} NDIS_QOS_OFFLOAD_CAPABILITIES, *PNDIS_QOS_OFFLOAD_CAPABILITIES;
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ns-ntddndis-ndis_qos_offload_capabilities)

Description

The NDIS_QOS_OFFLOAD_CAPABILITIES structure specifies the hardware and current Hardware Quality of Service (QoS) offload capabilities of a miniport adapter.

Members

The type, revision, and size of the NDIS_QOS_OFFLOAD_CAPABILITIES structure. This member is formatted as an NDIS_OBJECT_HEADER structure.

The miniport driver must set the Type member of Header to NDIS_OBJECT_TYPE_DEFAULT.

The driver must set the Revision member of Header to NDIS_QOS_OFFLOAD_CAPABILITIES_REVISION_2 to specify the version of the NDIS_QOS_OFFLOAD_CAPABILITIES structure.

The driver must set the Size member to NDIS_SIZEOF_QOS_OFFLOAD_CAPABILITIES_REVISION_2.

Flags

This field is not used in NDIS_QOS_OFFLOAD_CAPABILITIES_REVISION_2. The driver must set this member to zero.

SupportedSqTypes

A ULONG value that contains a bitwise OR of flags. These flags specify the type of NDIS QoS Scheduler Queues (SQs) that the miniport adapter supports. The following flags are defined:

NDIS_QOS_OFFLOAD_CAPS_STANDARD_SQ

If this flag is set, the miniport adapter supports standard SQs.

TransmitCapSupported

An array of BOOLEAN values that specify whether the miniport adapter supports transmit bandwidth caps for each traffic class (TC). For more information, see NDIS QoS Traffic Classes.

TransmitReservationSupported

An array of BOOLEAN values that specify whether the miniport adapter supports transmit bandwidth reservations for each TC.

ReceiveCapSupported

An array of BOOLEAN values that specify whether the miniport adapter supports receive bandwidth caps for each TC.

TransmitGftCapSupported

Reserved for future use.

ReceiveGftCapSupported

Reserved for future use.

TcSupportedTable

An array of BOOLEAN values that specify whether the miniport adapter supports rate limits for each TC.

NumStandardSqsSupported

A ULONG value that contains the maximum number of standard SQs that can be created on the miniport adapter.

NumGftSqsSupported

For forward compatibility, the miniport driver must set this field to zero when responding to the OS query.

ReservationGranularitySupported

A ULONG value that contains the scheduling granularity that the NIC can support for transmit reservations. For example, if the NIC can support at most a 1:10000 ratio between effective queues, this value should be 10000. This value is purely informational. A NIC may be asked to schedule queues with ratios between reservation values that exceed this granularity. In this case, the result should be a best approximation.

MaxNumSqInputs

A ULONG value that contains the maximum number of vPorts that can be associated with an SQ.

CrossTcTransmitMaxCapSupported

If TRUE, the miniport adapter supports a single transmit cap value for traffics across multiple TCs.

Remarks

The NDIS_QOS_OFFLOAD_CAPABILITIES structure is returned in OID query requests OID_QOS_OFFLOAD_HARDWARE_CAPABILITIES and OID_QOS_OFFLOAD_CURRENT_CAPABILITIES.

See also

NDIS_OBJECT_HEADER

OID_QOS_OFFLOAD_HARDWARE_CAPABILITIES

OID_QOS_OFFLOAD_CURRENT_CAPABILITIES

NDIS QoS Traffic Classes