Recepción de solicitudes de OID sobre los cambios de configuración de conmutador extensible de Hyper-V
La interfaz de conmutador extensible notifica a las extensiones subyacentes los cambios en la configuración del componente de conmutador extensible y los parámetros de directiva mediante la emisión de solicitudes de conjuntos de identificadores de objeto de conmutador extensible (OID). Estas solicitudes las emite el borde del protocolo del conmutador extensible para notificar a las extensiones subyacentes los cambios en los parámetros de directiva y configuración del componente de conmutador extensible. Estas solicitudes de OID se mueven a través de la pila del controlador de conmutador extensible al borde de miniporte subyacente del conmutador extensible.
En la ilustración siguiente se muestra la ruta de acceso de control de conmutador extensible para las solicitudes OID para NDIS 6.40 (Windows Server 2012 R2) y versiones posteriores.
En la ilustración siguiente se muestra la ruta de acceso de control de conmutador extensible para las solicitudes OID para NDIS 6.30 (Windows Server 2012).
Nota En la interfaz de conmutador extensible, los controladores de filtro NDIS se conocen como extensiones de conmutador extensible y la pila de controladores se conoce como pila de controladores de conmutador extensible.
El borde del protocolo del conmutador extensible emite solicitudes de conjunto de OID para los siguientes tipos de notificaciones:
Cambios en la configuración del puerto en el conmutador extensible.
Por ejemplo, el controlador de protocolo emite OID_SWITCH_PORT_CREATE notificar a las extensiones subyacentes la creación de un puerto en el conmutador extensible. Del mismo modo, el controlador de protocolo emite OID_SWITCH_PORT_DELETE notificar a las extensiones sobre la eliminación de un puerto.
Para obtener más información sobre este tipo de notificación de OID, consulte Puertos de conmutador extensible de Hyper-V.
Cambios en la conexión del adaptador de red a un puerto en el conmutador extensible.
Por ejemplo, el controlador de protocolo emite OID_SWITCH_NIC_CONNECT notificar a las extensiones subyacentes la conexión de un adaptador de red a un puerto en el conmutador extensible. Del mismo modo, el controlador de protocolo emite OID_SWITCH_NIC_DISCONNECT notificar a las extensiones que el adaptador de red se ha desconectado del puerto.
Para obtener más información sobre este tipo de notificación de OID, consulte Adaptadores de red de conmutador extensible de Hyper-V.
Cambios en el puerto de conmutador extensible o las directivas de conmutador.
Por ejemplo, el controlador de protocolo emite OID_SWITCH_PROPERTY_ADD notificar a las extensiones subyacentes la adición de una propiedad de conmutador extensible. Del mismo modo, el controlador de protocolo emite OID_SWITCH_PORT_PROPERTY_DELETE notificar a las extensiones la eliminación de una propiedad de puerto.
Para obtener más información sobre este tipo de notificación de OID, consulte Administración de directivas de conmutador extensible de Hyper-V.
Nota La extensión no recibe una notificación de los cambios realizados en el puerto predeterminado o las directivas de conmutador administradas por el borde de miniporte subyacente del conmutador extensible.
Guarde o restaure los datos del puerto en tiempo de ejecución.
Por ejemplo, el controlador de protocolo emite OID_SWITCH_NIC_SAVE notificar a las extensiones subyacentes que guarden los datos en tiempo de ejecución de un puerto especificado en el conmutador extensible. Estos OID se emiten cuando el estado de Hyper-V se guarda o migra a otro host. Del mismo modo, el controlador de protocolo emite OID_SWITCH_NIC_RESTORE notificar a las extensiones que se restauran los datos del puerto en tiempo de ejecución en el conmutador extensible.
Para obtener más información sobre este tipo de notificación de OID, consulte Administración del conmutador extensible de Hyper-V Run-Time datos.
El controlador de miniporte de extensión de conmutador extensible es responsable de completar estas solicitudes de OID. Sin embargo, con algunas solicitudes de OID de conmutador extensible, una extensión subyacente puede producir un error en una solicitud de OID para vetar una notificación. Por ejemplo, cuando el controlador del protocolo de conmutador extensible notifica a los controladores de filtro sobre un puerto nuevo que se creará en el conmutador extensible, emite una solicitud de conjunto de OID de OID_SWITCH_PORT_CREATE. Una extensión de filtrado o reenvío subyacente puede vetar la creación del puerto completando la solicitud OID con STATUS_DATA_NOT_ACCEPTED.
La extensión de conmutador extensible debe seguir estas directrices cuando se llama a su función FilterOidRequest para una solicitud de OID de conmutador extensible:
La extensión no debe modificar ningún dato al que apunte el parámetro OidRequest .
Para algunas solicitudes de OID de conmutador extensible, la extensión puede completar la solicitud OID con STATUS_DATA_NOT_ACCEPTED. Esto veta la operación en un componente de conmutador extensible para el que se emitió la solicitud de OID.
Por ejemplo, la extensión puede completar la solicitud de OID_SWITCH_NIC_CREATE con STATUS_DATA_NOT_ACCEPTED. Es posible que el controlador tenga que hacerlo si no puede satisfacer sus directivas configuradas en el puerto especificado al que se va a crear la conexión de red.
La extensión puede completar las solicitudes de esta manera para los siguientes OID:
Si la extensión no completa la solicitud OID, debe llamar a NdisFOidRequest para reenviar la solicitud a la pila de controladores de conmutador extensible.
Nota Antes de que el controlador llame a NdisFOidRequest, el controlador debe llamar a NdisAllocateCloneOidRequest para asignar una estructura de NDIS_OID_REQUEST y transferir la información de solicitud a la nueva estructura.
La extensión debe supervisar el resultado de finalización de la solicitud OID cuando se llama a su función FilterOidRequestComplete . Esto permite a la extensión determinar si la operación en un componente de conmutador extensible se completó correctamente o fue vetado por una extensión subyacente.
Para obtener más información sobre cómo filtrar y reenviar una solicitud de OID, consulte Filtrado de solicitudes OID en un controlador de filtro NDIS.
NDIS y controladores de filtro y protocolo excesivo pueden emitir solicitudes de OID para las tecnologías de descarga de hardware al adaptador de red físico subyacente. Esto incluye solicitudes de OID para las tecnologías de descarga, como la cola de máquinas virtuales (VMQ), la seguridad del protocolo de Internet (IPsec) y la virtualización de E/S raíz única (SR-IOV).
Cuando estas solicitudes de OID llegan a la interfaz de conmutador extensible, encapsula la solicitud OID dentro de una NDIS_SWITCH_NIC_OID_REQUEST. A continuación, el borde del protocolo del conmutador extensible emite una solicitud de OID de OID_SWITCH_NIC_REQUEST que contiene esta estructura.
Una extensión extensible de reenvío de conmutadores puede proporcionar compatibilidad con una tecnología de descarga de hardware NDIS en uno o varios adaptadores físicos enlazados al adaptador de red externo. En esta configuración, el adaptador de red externo del conmutador extensible se enlaza al borde de miniporte virtual de un controlador intermedio de multiplexador NDIS (MUX). El controlador intermedio MUX está enlazado a un equipo de una o varias redes físicas en el host. Esta configuración se conoce como un equipo de conmutadores extensible. Para obtener más información sobre los equipos de conmutadores extensibles, consulte Tipos de configuraciones de adaptadores de red físicos.
En esta configuración, las extensiones de conmutador extensible se exponen a todos los adaptadores de red del equipo. Esto permite que la extensión de reenvío en la pila de controladores de conmutador extensible administre la configuración y el uso de adaptadores de red individuales en el equipo. Por ejemplo, la extensión puede proporcionar compatibilidad con una solución de conmutación por error de equilibrio de carga (LBFO) a través del equipo reenviando paquetes salientes a adaptadores individuales. Esta extensión se conoce como proveedor de formación de equipos. Para obtener más información sobre los proveedores de formación de equipos, consulte Teaming Provider Extensions.
Al controlar la solicitud de OID de OID_SWITCH_NIC_REQUEST, los proveedores de formación de equipos pueden participar en la configuración del equipo de adaptadores para las descargas de hardware. Por ejemplo, la extensión puede generar su propia solicitud de OID de OID_SWITCH_NIC_REQUEST para configurar un adaptador físico con parámetros para la descarga de hardware.
Para obtener más información sobre cómo controlar la solicitud de OID de OID_SWITCH_NIC_REQUEST , consulte Reenvío de solicitudes de OID a adaptadores de red físicos.
Nota Los controladores de filtro de extensión pueden generar solicitudes de OID de OID_SWITCH_NIC_REQUEST para emitir identificadores de identidad privados a cualquier adaptador físico enlazado al adaptador de red externo de conmutador extensible.
Nota Las solicitudes de reinicio de pila que usan NdisFRestartFilter no se completarán mientras una solicitud de OID de conmutador extensible está pendiente. Por este motivo, una extensión que está esperando un reinicio de pila debe completar las solicitudes de OID en curso.
Para obtener más información sobre la ruta de acceso de control para las solicitudes de OID de conmutador extensible, consulte Ruta de acceso de control de conmutador extensible de Hyper-V para solicitudes OID.