Partager via


NDIS_SWITCH_REFERENCE_SWITCH_NIC fonction de rappel (ndis.h)

La fonction ReferenceSwitchNic incrémente le compteur de référence de commutateur extensible Hyper-V pour une carte réseau connectée à un port de commutateur extensible.

Syntaxe

NDIS_SWITCH_REFERENCE_SWITCH_NIC NdisSwitchReferenceSwitchNic;

NDIS_STATUS NdisSwitchReferenceSwitchNic(
  [in] NDIS_SWITCH_CONTEXT NdisSwitchContext,
  [in] NDIS_SWITCH_PORT_ID SwitchPortId,
  [in] NDIS_SWITCH_NIC_INDEX SwitchNicIndex
)
{...}

Paramètres

[in] NdisSwitchContext

Valeur NDIS_SWITCH_CONTEXT qui contient le handle du module de commutateur extensible auquel l’extension de commutateur extensible Hyper-V est attachée. Lorsque l’extension appelle NdisFGetOptionalSwitchHandlers, ce handle est retourné par le biais du paramètre NdisSwitchContext .

[in] SwitchPortId

Valeur NDIS_SWITCH_PORT_ID qui contient l’identificateur unique du port de commutateur extensible auquel la carte réseau virtuelle est connectée.

[in] SwitchNicIndex

Valeur NDIS_SWITCH_NIC_INDEX qui spécifie l’index de la carte réseau virtuelle pour laquelle le compteur de référence de commutateur extensible doit être incrémenté.

Pour plus d’informations sur les valeurs NDIS_SWITCH_NIC_INDEX, consultez Valeurs d’index de carte réseau.

Note Ce paramètre doit spécifier la valeur d’index d’une carte réseau dans un état connecté. Les valeurs d’index des cartes réseau qui sont dans un état créé ou déconnecté ne peuvent pas être spécifiées. Pour plus d’informations sur les états de connexion réseau, consultez États du port et de la carte réseau du commutateur extensible Hyper-V.
 

Valeur retournée

Si l’appel réussit, la fonction retourne NDIS_STATUS_SUCCESS. Sinon, elle retourne un code d’erreur NDIS_STATUS_Xxx défini dans Ndis.h.

Remarques

L’extension de commutateur extensible appelle ReferenceSwitchNic pour incrémenter un compteur de références pour une carte réseau connectée à un port de commutateur extensible. Bien que le compteur de référence ait une valeur différente de zéro, le bord du protocole du commutateur extensible n’émet pas de demande de jeu d’identificateur d’objet (OID) de OID_SWITCH_NIC_DELETE pour supprimer la connexion à l’adaptateur.

Une fois que l’extension a appelé ReferenceSwitchNic, elle doit appeler DereferenceSwitchNic pour décrémenter le compteur de référence de commutateur extensible.

L’extension doit appeler ReferenceSwitchNic avant d’effectuer les opérations suivantes :

Note L’extension ne doit pas appeler ReferenceSwitchNic lors du transfert de paquets sur le chemin de données du commutateur extensible. L’interface de commutateur extensible gère ses propres compteurs de référence pour les paquets qui sont transférés aux ports et aux connexions de carte réseau sur le chemin des données.
 
L’extension appelle ReferenceSwitchNic une fois que la connexion de carte réseau a atteint l’état de connexion de la carte réseau créée . L’extension ne doit pas appeler ReferenceSwitchNic une fois que la connexion a atteint les états de la carte réseau déconnectée ou de la carte réseau supprimée . Pour plus d’informations sur ces états, consultez Ports de commutateur extensible Hyper-V et États de la carte réseau.
Note Lorsque l’extension appelle ReferenceSwitchNic, elle n’a pas besoin de synchroniser l’appel avec son code qui gère les requêtes OID. Par conséquent, il est possible pour l’extension d’appeler ReferenceSwitchNic tandis que le bord du protocole du commutateur extensible émet une requête OID de OID_SWITCH_NIC_DISCONNECT. Toutefois, si l’appel à ReferenceSwitchNic se termine avec NDIS_STATUS_SUCCESS, l’extension peut toujours transférer OID_SWITCH_NIC_REQUEST requête OID ou NDIS_STATUS_SWITCH_NIC_STATUS status indications une fois qu’elle a géré la requête OID OID_SWITCH_NIC_DISCONNECT.
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge dans NDIS 6.30 et versions ultérieures.
Plateforme cible Desktop (Expérience utilisateur)
En-tête ndis.h (inclure Ndis.h)
IRQL <= DISPATCH_LEVEL

Voir aussi

DereferenceSwitchNic

NDIS_STATUS_SWITCH_NIC_STATUS

NdisFGetOptionalSwitchHandlers

OID_SWITCH_NIC_DELETE

OID_SWITCH_NIC_DISCONNECT

OID_SWITCH_NIC_REQUEST