Partager via


structure NDIS_QOS_SQ_PARAMETERS (ntddndis.h)

La structure NDIS_QOS_SQ_PARAMETERS contient les paramètres d’une file d’attente du planificateur de qualité de service (QoS) NDIS (SQ).

Syntaxe

typedef struct _NDIS_QOS_SQ_PARAMETERS {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  NDIS_QOS_SQ_ID     SqId;
  NDIS_QOS_SQ_TYPE   SqType;
  BOOLEAN            TcEnabledTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  ULONG              TcTransmitBandwidthCapTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  ULONG              TcTransmitBandwidthReservationTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  ULONG              TcReceiveBandwidthCapTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  ULONG              CrossTcTransmitBandwidthCap;
  ULONG              MaxNumSqInputs;
} NDIS_QOS_SQ_PARAMETERS, *PNDIS_QOS_SQ_PARAMETERS;

Membres

Header

Type, révision et taille de la structure NDIS_QOS_SQ_PARAMETERS. Ce membre est mis en forme en tant que structure NDIS_OBJECT_HEADER.

Le pilote miniport doit définir le membre Type de d’en-tête sur NDIS_OBJECT_TYPE_DEFAULT, le membre Révision sur NDIS_QOS_SQ_PARAMETERS_REVISION_2 et le membre Size sur NDIS_SIZEOF_QOS_SQ_PARAMETERS_REVISION_2.

Flags

Valeur ULONG qui contient une OR au niveau du bit des indicateurs. Ces indicateurs spécifient les diverses fonctionnalités et attributs des fonctionnalités de déchargement de qoS matérielle activées sur la sq. Les indicateurs suivants sont définis :

NDIS_QOS_SQ_TRANSMIT_CAP_ENABLED

Si cet indicateur est défini, les limites de bande passante de transmission sont activées sur cette sq.

NDIS_QOS_SQ_TRANSMIT_RESERVATION_ENABLED

Si cet indicateur est défini, les réservations de bande passante de transmission sont activées sur cette sq.

NDIS_QOS_SQ_RECEIVE_CAP_ENABLED

Si cet indicateur est défini, les limites de bande passante de réception sont activées sur cette sq.

SqId

Un NDIS_QOS_SQ_ID qui contient l’ID SQ de cette SQ. NDIS affecte cet ID.

SqType

Un NDIS_QOS_SQ_TYPE qui contient le type de cette sq. Cela peut être NdisQSQosSqSqSQTypeStandard à partir de la définition enum de NDIS_QOS_SQ_TYPE.

TcEnabledTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES]

Tableau de valeurs BOOLEAN qui spécifient si chaque classe de trafic (comprise entre 0 et NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES) est activée pour la planification sur cette sq.

Toute classe de trafic (TC) pour laquelle ce champ est TRUE doit être lue et validée dans les tableaux ci-dessous, et est également limitée par CrossTcTransmitBandwidthCap.

Tout TC pour lequel ce champ est FALSE ne participe pas à la limitation du débit qoS de CrossTcTransmitBandwidthCap ou les tableaux par TC ci-dessous.

TcTransmitBandwidthCapTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES]

Tableau d’éléments ULONG qui spécifient des limites de bande passante de transmission pour chaque TC, en Mbits/s. Les éléments ne sont valides que si l’indicateur de NDIS_QOS_SQ_TRANSMIT_CAP_ENABLED est défini et si leur élément correspondant dans TcEnabledTable est TRUE. Un élément dont la valeur est 0 n’a pas de limite.

La carte réseau doit mettre en file d’attente les paquets de transmission sur cette sq pour un TC donné s’ils dépassent le taux spécifié dans cette table.

TcTransmitBandwidthReservationTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES]

Tableau d’éléments ULONG qui spécifient des réservations de bande passante de transmission pour chaque TC, dans des valeurs relatives de 0ULONG_MAX. Les éléments ne sont valides que si l’indicateur de NDIS_QOS_SQ_TRANSMIT_RESERVATION_ENABLED est défini et si leur élément correspondant dans TcEnabledTable est TRUE. Un élément dont la valeur est 0 signifie que les paquets de transmission sur cette sq/TC partagent la réservation par défaut de SQ pour ce TC.

La carte réseau doit mettre en file d’attente tous les paquets de transmission sur cette sq pour un TC donné si d’autres questions nécessitent une bande passante pour répondre à leur réservation pour ce TC.

TcReceiveBandwidthCapTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES]

Tableau d’éléments ULONG qui spécifient des limites de bande passante de réception pour chaque TC, en Mbits/s. Les éléments ne sont valides que si l’indicateur de NDIS_QOS_SQ_RECEIVE_CAP_ENABLED est défini et si leur élément correspondant dans TcEnabledTable est TRUE. Un élément dont la valeur est 0 n’a pas de limite.

Il s’agit d’une fonctionnalité facultative permettant d’activer la limitation de bande passante de réception. Les cartes réseau qui publient la prise en charge du plafond de réception doivent supprimer tout paquet de réception après qu’un TC donné sur cette sq ait dépassé le taux spécifié dans ce tableau (en fonction de l’implémentation de planification de la carte réseau).

CrossTcTransmitBandwidthCap

Valeur ULONG qui spécifie la limite de bande passante de transmission pour le trafic entre les CONTRÔLEURs dont l’élément correspondant dans TcEnabledTable est TRUE, si l’indicateur NDIS_QOS_SQ_TRANSMIT_CAP_ENABLED est défini.

MaxNumSqInputs

Valeur ULONG qui offre un « indicateur » au miniport sur le nombre probable de vPorts que le système d’exploitation associera à la SQ. Cette valeur ne peut pas être modifiée après la création de SQ.

Le miniport peut utiliser cet indicateur pour mieux gérer ses ressources. Le miniport fournira le meilleur effort de service pour satisfaire la demande, mais peut échouer en raison de ressources insuffisantes au moment de la création SQ ou de l’heure d’association vPort.

La miniport doit retourner une erreur si cette valeur dépasse la valeur MaxNumSQInputs spécifiée par la miniport dans NDIS_QOS_OFFLOAD_CAPABILITIES.

Remarques

La structure NDIS_QOS_SQ_PARAMETERS est retournée dans la requête de requête OID OID_QOS_OFFLOAD_ENUM_SQS, qui énumère les questions fréquentes créées sur un commutateur de carte réseau.

NDIS_QOS_SQ_PARAMETERS est également retourné dans la requête de méthode OID OID_QOS_OFFLOAD_CREATE_SQ, ce qui crée une sq sur l’adaptateur miniport.

Exigences

Exigence Valeur
client minimum pris en charge Prise en charge dans NDIS 6.85 et versions ultérieures.
serveur minimum pris en charge Windows Server 2022
d’en-tête ntddndis.h (include ndis.h)

Voir aussi

OID_QOS_OFFLOAD_ENUM_SQS

OID_QOS_OFFLOAD_CREATE_SQ

NDIS_QOS_OFFLOAD_CAPABILITIES

NDIS_QOS_SQ_ARRAY

NDIS_OBJECT_HEADER

classes de trafic NDIS QoS