NDIS_SWITCH_REFERENCE_SWITCH_NIC función de devolución de llamada (ndis.h)

La función ReferenceSwitchNic incrementa el contador de referencia de conmutador extensible de Hyper-V para un adaptador de red conectado a un puerto de conmutador extensible.

Sintaxis

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
)
{...}

Parámetros

[in] NdisSwitchContext

Valor NDIS_SWITCH_CONTEXT que contiene el identificador del módulo de conmutador extensible al que está asociada la extensión de conmutador extensible de Hyper-V. Cuando la extensión llama a NdisFGetOptionalSwitchHandlers, este identificador se devuelve a través del parámetro NdisSwitchContext .

[in] SwitchPortId

Valor NDIS_SWITCH_PORT_ID que contiene el identificador único del puerto de conmutador extensible al que está conectado el adaptador de red virtual.

[in] SwitchNicIndex

Valor de NDIS_SWITCH_NIC_INDEX que especifica el índice del adaptador de red virtual para el que se va a incrementar el contador de referencia de conmutador extensible.

Para obtener más información sobre los valores de NDIS_SWITCH_NIC_INDEX, vea Valores de índice del adaptador de red.

Nota Este parámetro debe especificar el valor de índice de un adaptador de red que se encuentra en un estado conectado. No se pueden especificar los valores de índice de los adaptadores de red que están en un estado creado o desconectado. Para obtener más información sobre los estados de conexión de red, consulte Puerto de conmutador extensible de Hyper-V y Estados del adaptador de red.
 

Valor devuelto

Si la llamada se realiza correctamente, la función devuelve NDIS_STATUS_SUCCESS. De lo contrario, devuelve un código de error NDIS_STATUS_Xxx definido en Ndis.h.

Comentarios

La extensión de conmutador extensible llama a ReferenceSwitchNic para incrementar un contador de referencia para un adaptador de red conectado a un puerto de conmutador extensible. Aunque el contador de referencia tiene un valor distinto de cero, el borde del protocolo del conmutador extensible no emitirá una solicitud de conjunto de identificador de objeto (OID) de OID_SWITCH_NIC_DELETE para eliminar la conexión al adaptador.

Una vez que la extensión llama a ReferenceSwitchNic, debe llamar a DereferenceSwitchNic para reducir el contador de referencia de conmutador extensible.

La extensión debe llamar a ReferenceSwitchNic antes de realizar las siguientes operaciones:

Nota La extensión no debe llamar a ReferenceSwitchNic al reenviar paquetes a través de la ruta de acceso de datos de conmutador extensible. La interfaz de conmutador extensible administra sus propios contadores de referencia para los paquetes que se reenvía a puertos y conexiones de adaptador de red a través de la ruta de acceso de datos.
 
La extensión llama a ReferenceSwitchNic después de que la conexión del adaptador de red haya alcanzado el estado de creación de la conexión del adaptador de red. La extensión no debe llamar a ReferenceSwitchNic después de que la conexión haya alcanzado los estados Desconectados del adaptador de red o Adaptador de red eliminados . Para obtener más información sobre estos estados, consulte Puerto de conmutador extensible de Hyper-V y Estados del adaptador de red.
Nota Cuando la extensión llama a ReferenceSwitchNic, no tiene que sincronizar la llamada con su código que controla las solicitudes de OID. Como resultado, es posible que la extensión llame a ReferenceSwitchNic mientras que el borde del protocolo del conmutador extensible emite una solicitud de OID de OID_SWITCH_NIC_DISCONNECT. Sin embargo, si la llamada a ReferenceSwitchNic se completa con NDIS_STATUS_SUCCESS, la extensión todavía puede reenviar OID_SWITCH_NIC_REQUEST solicitud OID o NDIS_STATUS_SWITCH_NIC_STATUS indicaciones de estado después de controlar la solicitud de OID de OID_SWITCH_NIC_DISCONNECT.
 

Requisitos

Requisito Value
Cliente mínimo compatible Se admite en NDIS 6.30 y versiones posteriores.
Plataforma de destino Escritorio
Encabezado ndis.h (incluya Ndis.h)
IRQL <= DISPATCH_LEVEL

Consulte también

DereferenceSwitchNic

NDIS_STATUS_SWITCH_NIC_STATUS

NdisFGetOptionalSwitchHandlers

OID_SWITCH_NIC_DELETE

OID_SWITCH_NIC_DISCONNECT

OID_SWITCH_NIC_REQUEST