Partager via


Inscription des fonctionnalités QoS NDIS

Les pilotes de miniport inscrivent les fonctionnalités de qualité de service (QoS) suivantes auprès de NDIS lors de l’initialisation de la carte réseau :

  • Fonctionnalités matérielles QoS NDIS prises en charge par la carte réseau.

    Remarque : à partir de NDIS 6.30, le pilote de miniport doit inscrire les fonctionnalités matérielles QoS NDIS prises en charge par la carte uniquement si le paramètre de mot clé INF *QOS est présent dans le Registre. Dans ce cas, le pilote doit inscrire ses fonctionnalités matérielles QoS NDIS, qu’elles soient activées ou désactivées sur la carte.

  • Les fonctionnalités matérielles QoS NDIS actuellement activées sur la carte réseau.

    Remarque : les fonctionnalités matérielles QoS NDIS d’un pilote de miniport peuvent être activées ou désactivées via le paramètre de mot clé INF *QOS dans le Registre. Ce paramètre s’affiche dans la page de propriétés Avancé de la carte réseau.

Pour en savoir plus sur les paramètres de mot clé INF QoS NDIS, consultez Mots clés INF standardisés pour QoS NDIS.

Le pilote de miniport signale les fonctionnalités matérielles QoS NDIS de la carte réseau sous-jacente à travers une structure NDIS_QOS_CAPABILITIES initialisée de la manière suivante :

  1. Le pilote de miniport initialise le membre Header. Le pilote définit le membre Type de Header sur NDIS_OBJECT_TYPE_QOS_CAPABILITIES.

    À compter de NDIS 6.30, le pilote de miniport définit le membre Revision de Header sur NDIS_QOS_CAPABILITIES_REVISION_1 et le membre Size sur QOS_SIZEOF_QOS_CAPABILITIES_REVISION_1.

  2. Si la carte réseau prend en charge l’algorithme de sélection de transmission (TSA) de priorité stricte, le pilote de miniport définit l’indicateur NDIS_QOS_CAPABILITIES_STRICT_TSA_SUPPORTED dans le membre Flags. Pour en savoir plus sur cet algorithme, consultez Algorithme de priorité stricte.

    Remarque : à compter de NDIS 6.30, le pilote de miniport et la carte réseau qui prennent en charge QoS NDIS pour IEEE Data Center Bridging (DCB) doivent prendre en charge le TSA de priorité stricte.

  3. Si la carte réseau prend en charge la possibilité de contourner le traitement MACsec (Media Access Control Security), le pilote de miniport définit l’indicateur NDIS_QOS_CAPABILITIES_MACSEC_BYPASS_SUPPORTED dans le membre Flags. Pour en savoir plus sur MACsec, consultez la norme IEEE 802.1AE-2006.

    Remarque : à compter de NDIS 6.30, la carte réseau n’a pas besoin de prendre en charge le contournement du traitement MACsec.

  4. Le pilote de miniport définit le membre MaxNumTrafficClasses sur le nombre maximum de classes de trafic QoS NDIS que la carte réseau prend en charge. Une classe de trafic définit les stratégies de transmission ou de sortie pour QoS, notamment le niveau de priorité IEEE 802.1p et l’allocation de bande passante. Pour en savoir plus sur les classes de trafic, consultez Classes de trafic QoS NDIS.

    Remarque : à compter de NDIS 6.30, la carte réseau doit prendre en charge au moins trois classes de trafic.

  5. Le pilote de miniport définit le membre MaxNumEtsCapableTrafficClasses sur le nombre maximum de classes de trafic QoS NDIS que la carte réseau peut utiliser avec l’algorithme ETS (sélection de transmission améliorée). Cette valeur doit être inférieure ou égale à celle du membre MaxNumTrafficClasses.

    Pour en savoir plus sur ETS, consultez Algorithme de sélection de transmission améliorées (ETS).

    Remarque : pour que la carte réseau prenne en charge QoS NDIS, elle doit prendre en charge au moins deux classes de trafic compatibles avec ETS.

  6. Le pilote de miniport définit le membre MaxNumPfcEnabledTrafficClasses sur le nombre maximum de classes de trafic QoS NDIS que la carte réseau peut utiliser avec l’algorithme PFC (contrôle de flux basé sur la priorité). Cette valeur doit être inférieure ou égale à celle du membre MaxNumTrafficClasses.

    Pour en savoir plus sur le PFC, consultez Contrôle de flux basé sur la priorité (PFC).

    Remarque : pour que la carte réseau prenne en charge QoS NDIS, elle doit prendre en charge au moins une classe de trafic compatible avec PFC.

Lorsque NDIS appelle la fonction MiniportInitializeEx du pilote de miniport, le pilote inscrit les attributs QoS NDIS de la carte réseau en procédant comme suit :

  1. Le pilote de miniport initialise une structure NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES.

    Le pilote de miniport définit le membre HardwareQOSCapabilities sur un pointeur vers la structure NDIS_QOS_CAPABILITIES précédemment initialisée.

    Si le paramètre de Registre pour la valeur du mot clé INF *QOS est 1, les fonctionnalités QoS NDIS sont activées sur la carte réseau. Le pilote de miniport définit les membres CurrentQOSCapabilities sur un pointeur vers la même structure NDIS_QOS_CAPABILITIES.

    Si le paramètre de Registre pour la valeur du mot clé INF *QOS est 0, les fonctionnalités QoS NDIS sont désactivées sur la carte réseau. Le pilote de miniport doit définir le membre CurrentQOSCapabilities sur NULL.

  2. Le pilote appelle NdisMSetMiniportAttributes et définit le paramètre MiniportAttributes sur un pointeur vers la structure NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES.

Pour en savoir plus sur le processus d’initialisation de l’adaptateur, consultez Initialisation d’un adaptateur de miniport.