Compartir a través de


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

La función SetNetBufferListSource establece el Hyper-V identificador de puerto de origen del conmutador extensible y el índice del adaptador de red para un paquete especificado por una estructura de NET_BUFFER_LIST.

Sintaxis

NDIS_SWITCH_SET_NET_BUFFER_LIST_SOURCE NdisSwitchSetNetBufferListSource;

NDIS_STATUS NdisSwitchSetNetBufferListSource(
  [in] NDIS_SWITCH_CONTEXT NdisSwitchContext,
       PNET_BUFFER_LIST NetBufferList,
  [in] NDIS_SWITCH_PORT_ID PortId,
  [in] NDIS_SWITCH_NIC_INDEX NicIndex
)
{...}

Parámetros

[in] NdisSwitchContext

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

NetBufferList

Puntero a una estructura de NET_BUFFER_LIST para un único paquete.

Nota Esta estructura debe contener un contexto de reenvío de conmutador extensible asignado anteriormente mediante una llamada a la función de AllocateNetBufferListForwardingContext. Para obtener más información sobre el contexto de reenvío extensible de conmutadores, vea Hyper-V contexto de reenvío extensible de conmutadores.
 

[in] PortId

Valor NDIS_SWITCH_PORT_ID que especifica el identificador único del puerto de origen en el conmutador extensible.

[in] NicIndex

Valor NDIS_SWITCH_NIC_INDEX que especifica el índice del adaptador de red que está conectado al puerto de conmutador extensible especificado por el parámetro portId de.

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 se encuentran en un estado creado o desconectado. Para obtener más información sobre los estados de conexión de red, consulte Hyper-V puerto de conmutador extensible 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 NDIS_STATUS_código de error xxx definido en Ndis.h.

Observaciones

La extensión de conmutador extensible llama a la función SetNetBufferListSource para establecer el identificador de puerto de origen y el índice del adaptador de red en la estructura NET_BUFFER_LIST de un paquete. La extensión lo hace para los siguientes tipos de paquetes:

  • Nuevo paquete que la extensión ha asignado para las operaciones de envío o recepción.
    Nota Antes de que la extensión llame SetNetBufferListSource para un paquete asignado, debe llamar a AllocateNetBufferListForwardingContext.
     
  • Un paquete duplicado que la extensión había clonado de un paquete original que filtraba. La extensión duplica un paquete llamando a NdisAllocateCloneNetBufferList.
En ambos casos, un paquete nuevo o duplicado tendrá su identificador de puerto de origen establecido en NDIS_SWITCH_DEFAULT_PORT_ID y su índice de adaptador de red de origen establecido en NDIS_SWITCH_DEFAULT_NIC_INDEX. La extensión llama a la función setNetBufferListSource para cambiar el identificador de puerto de origen y el índice del adaptador de red en la estructura NET_BUFFER_LIST de un paquete.

Por ejemplo, un paquete que tiene un identificador de puerto de origen de NDIS_SWITCH_DEFAULT_PORT_ID es de confianza y omite muchas directivas de puerto de conmutador extensible. Estas directivas incluyen listas de control de acceso (ACL) y calidad de servicio (QoS). Si la extensión especifica un puerto de origen no predeterminado para el paquete, esto permite aplicar las directivas para ese puerto al paquete.

Nota Dado que los paquetes con un identificador de puerto de origen de NDIS_SWITCH_DEFAULT_PORT_ID son de confianza, la extensión debe usar este identificador de puerto de origen con mucho cuidado cuando se origina el tráfico de paquetes. Para obtener más información sobre el uso recomendado del NDIS_SWITCH_DEFAULT_PORT_ID para los puertos de origen, consulte Administración de datos de puerto de origen de conmutador extensible Hyper-V.
 
Para obtener más información sobre las operaciones de envío y recepción de paquetes, consulte Filtrar módulo enviar y recibir operaciones.

Requisitos

Requisito Valor
cliente mínimo admitido Compatible con NDIS 6.30 y versiones posteriores.
de la plataforma de destino de Escritorio
encabezado de ndis.h (incluya Ndis.h)
irQL <= DISPATCH_LEVEL

Consulte también

AllocateNetBufferListForwardingContext

NET_BUFFER

NET_BUFFER_LIST

NdisAllocateCloneNetBufferList

NdisFGetOptionalSwitchHandlers