Compartir a través de


Administración de directivas de puerto

Las extensiones de filtrado y reenvío extensible de Hyper-V se pueden aprovisionar con las propiedades de las propiedades de puerto estándar y personalizadas. Una vez aprovisionadas, estas extensiones aplican las directivas cuando filtran los paquetes obtenidos en la ruta de acceso de datos de entrada extensible del conmutador. Para obtener más información sobre estas directivas, vea Directivas de puerto.

La interfaz de conmutador extensible de Hyper-V usa los siguientes identificadores de objeto (OID) para aprovisionar extensiones de filtrado y reenvío con las propiedades de las directivas de puerto estándar y personalizadas:

OID_SWITCH_PORT_PROPERTY_ADD
Esta solicitud de conjunto de OID se emite mediante el borde del protocolo del conmutador extensible para notificar a las extensiones subyacentes la adición de una propiedad en el nivel de administración de WMI. InformationBuffer de la estructura NDIS_OID_REQUEST contiene un puntero a una estructura de NDIS_SWITCH_PORT_PROPERTY_PARAMETERS.

Nota Las propiedades de puerto personalizadas se especifican mediante un valor de enumeración NDIS_SWITCH_PORT_PROPERTY_TYPEde NdisSwitchPortPropertyTypeCustom. Las propiedades de puerto estándar se especifican mediante un valor de enumeración NDIS_SWITCH_PORT_PROPERTY_TYPE de NdisSwitchPortPropertyTypeSecurity, NdisSwitchPortPropertyTypeVlan y NdisSwitchPortPropertyTypeProfile.

OID_SWITCH_PORT_PROPERTY_UPDATE
Esta solicitud de conjunto de OID se emite mediante el borde del protocolo del conmutador extensible para informar a las extensiones subyacentes de la actualización de una propiedad en el nivel de administración de WMI. InformationBuffer de la estructura NDIS_OID_REQUEST contiene un puntero a una estructura de NDIS_SWITCH_PORT_PROPERTY_PARAMETERS.

OID_SWITCH_PORT_PROPERTY_DELETE
Esta solicitud de conjunto de OID se emite mediante el borde del protocolo del conmutador extensible para informar a las extensiones subyacentes de la eliminación de una propiedad en el nivel de administración de WMI. InformationBuffer de la estructura NDIS_OID_REQUEST contiene un puntero a una estructura de NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS.

OID_SWITCH_PORT_PROPERTY_ENUM
La extensión envía esta solicitud de método OID para consultar el borde de miniporte subyacente del conmutador extensible sobre las propiedades configuradas actualmente para un puerto especificado en el conmutador extensible. El informationBuffer de la estructura NDIS_OID_REQUEST contiene un puntero a un búfer. Este búfer contiene los datos siguientes:

Nota La extensión no debe originar solicitudes de conjunto de OID de OID_SWITCH_PORT_PROPERTY_ADD. OID_SWITCH_PORT_PROPERTY_UPDATE o OID_SWITCH_PORT_PROPERTY_DELETE.

La extensión de conmutador extensible debe seguir estas instrucciones cuando controla una solicitud de conjunto de OID de OID_SWITCH_PORT_PROPERTY_ADD, OID_SWITCH_PORT_PROPERTY_UPDATE o OID_SWITCH_PORT_PROPERTY_DELETE:

  • La extensión no debe modificar la estructura NDIS_SWITCH_PORT_PROPERTY_PARAMETERS o NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS asociada a la solicitud OID.

  • La extensión debe controlar estas solicitudes de OID si la extensión administra la propiedad . Según la solicitud de OID, la extensión debe inspeccionar los siguientes miembros de las estructuras de NDIS_SWITCH_PORT_PROPERTY_PARAMETERS o NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS para determinar si administra la propiedad port:

    • El miembro PropertyType . Este miembro especifica el tipo de la propiedad port. Las propiedades de puerto personalizadas tienen un valor de miembro PropertyType de NdisSwitchPortPropertyTypeCustom. Las propiedades de puerto estándar tienen otros valores de tipo de propiedad. Por ejemplo, las directivas de puerto VLAN estándar tienen un valor de tipo de propiedad de NdisSwitchPortPropertyTypeVlan.

    • El miembro PropertyId . Este miembro especifica un valor GUID propietario para una propiedad de puerto personalizada. Este valor GUID lo crea el proveedor de software independiente (ISV) que también define el formato de la propiedad de conmutador extensible personalizada.

      Nota La extensión debe omitir este miembro para las directivas de puerto estándar.

  • La extensión debe controlar una solicitud OID_SWITCH_PORT_PROPERTY_UPDATE establecer si la extensión se aprovisionó previamente con una propiedad port que coincida con los siguientes miembros de la estructura NDIS_SWITCH_PROPERTY_PARAMETERS :

    • El miembro PropertyType .

    • El miembro PropertyId .

      Nota La extensión debe omitir este miembro para las directivas de puerto estándar.

    • El miembro PropertyVersion . Este miembro especifica la versión de la propiedad port con la que se aprovisionó la extensión.

    • El miembro PropertyInstanceId . Este miembro especifica la instancia de la propiedad port con la que se aprovisionó la extensión.

  • La extensión de filtrado o reenvío puede vetar la adición o actualización de una directiva de puerto que administra. La extensión lo hace completando la solicitud de OID con STATUS_DATA_NOT_ACCEPTED.

    Nota La captura de extensiones no debe vetar la adición o actualización de una directiva de puerto. En su lugar, debe reenviar la solicitud OID hacia abajo en la ruta de acceso de control de conmutador extensible.

  • Una extensión de reenvío puede producir un error en la solicitud de OID para las propiedades de puerto estándar que no admite o si la propiedad entra en conflicto con su propia configuración de directiva. En este caso, la extensión debe completar la solicitud OID y devolver el código de estado NDIS adecuado para notificar el error.

  • Si la extensión controla correctamente la solicitud de establecimiento de OID para una directiva de puerto estándar, no debe completar la solicitud OID y debe reenviarla hacia abajo en la ruta de acceso de control de conmutador extensible.

  • Si la extensión de captura o filtrado controla correctamente la solicitud de conjunto de OID para una directiva de puerto personalizada, no debe completar la solicitud OID y reenviarla hacia abajo en la ruta de acceso de control de conmutador extensible.

    Si la extensión de reenvío controla correctamente la solicitud de establecimiento de OID para una directiva de puerto personalizada, debe completar la solicitud OID y devolver el valor NDIS_STATUS_Xxx adecuado.

  • Si la extensión no completa la solicitud de establecimiento de OID, debe llamar a NdisFOidRequest para reenviar la solicitud OID a la pila extensible del controlador del conmutador. En este caso, las extensiones deben supervisar el estado de finalización del OID para detectar si una extensión subyacente ha producido un error en la solicitud de OID.