Compartir a través de


estructura NDIS_BIND_PARAMETERS (ndis.h)

NDIS inicializa una estructura de NDIS_BIND_PARAMETERS con información que define las características de un enlace y la pasa a un controlador de protocolo.

Sintaxis

typedef struct _NDIS_BIND_PARAMETERS {
  NDIS_OBJECT_HEADER                Header;
  PNDIS_STRING                      ProtocolSection;
  PNDIS_STRING                      AdapterName;
  PDEVICE_OBJECT                    PhysicalDeviceObject;
  NDIS_MEDIUM                       MediaType;
  ULONG                             MtuSize;
  ULONG64                           MaxXmitLinkSpeed;
  ULONG64                           XmitLinkSpeed;
  ULONG64                           MaxRcvLinkSpeed;
  ULONG64                           RcvLinkSpeed;
  NDIS_MEDIA_CONNECT_STATE          MediaConnectState;
  NDIS_MEDIA_DUPLEX_STATE           MediaDuplexState;
  ULONG                             LookaheadSize;
  PNDIS_PNP_CAPABILITIES            PowerManagementCapabilities;
  ULONG                             SupportedPacketFilters;
  ULONG                             MaxMulticastListSize;
  USHORT                            MacAddressLength;
  UCHAR                             CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
  NDIS_PHYSICAL_MEDIUM              PhysicalMediumType;
  PNDIS_RECEIVE_SCALE_CAPABILITIES  RcvScaleCapabilities;
  NET_LUID                          BoundIfNetluid;
  NET_IFINDEX                       BoundIfIndex;
  NET_LUID                          LowestIfNetluid;
  NET_IFINDEX                       LowestIfIndex;
  NET_IF_ACCESS_TYPE                AccessType;
  NET_IF_DIRECTION_TYPE             DirectionType;
  NET_IF_CONNECTION_TYPE            ConnectionType;
  NET_IFTYPE                        IfType;
  BOOLEAN                           IfConnectorPresent;
  PNDIS_PORT                        ActivePorts;
  ULONG                             DataBackFillSize;
  ULONG                             ContextBackFillSize;
  ULONG                             MacOptions;
  NET_IF_COMPARTMENT_ID             CompartmentId;
  PNDIS_OFFLOAD                     DefaultOffloadConfiguration;
  PNDIS_TCP_CONNECTION_OFFLOAD      TcpConnectionOffloadCapabilities;
  PNDIS_STRING                      BoundAdapterName;
  PNDIS_HD_SPLIT_CURRENT_CONFIG     HDSplitCurrentConfig;
  PNDIS_RECEIVE_FILTER_CAPABILITIES ReceiveFilterCapabilities;
  PNDIS_PM_CAPABILITIES             PowerManagementCapabilitiesEx;
  PNDIS_NIC_SWITCH_CAPABILITIES     NicSwitchCapabilities;
  BOOLEAN                           NDKEnabled;
  PNDIS_NDK_CAPABILITIES            NDKCapabilities;
  PNDIS_SRIOV_CAPABILITIES          SriovCapabilities;
  PNDIS_NIC_SWITCH_INFO_ARRAY       NicSwitchArray;
} NDIS_BIND_PARAMETERS, *PNDIS_BIND_PARAMETERS;

Miembros

Header

Estructura NDIS_OBJECT_HEADER para la estructura de NDIS_BIND_PARAMETERS . NDIS establece el miembro Type de la estructura que Header especifica para NDIS_OBJECT_TYPE_BIND_PARAMETERS.

Para indicar la versión de la estructura de NDIS_BIND_PARAMETERS, NDIS establece el miembro Revision en uno de los valores siguientes:

NDIS_BIND_PARAMETERS_REVISION_4

Se agregaron varios miembros para NDIS 6.30.

NDIS establece el miembro Size en NDIS_SIZEOF_BIND_PARAMETERS_REVISION_4.

NDIS_BIND_PARAMETERS_REVISION_3

Se agregaron los miembros ReceiveFilterCapabilities, PowerManagementCapabilitiesEx y NicSwitchCapabilities para NDIS 6.20.

NDIS establece el miembro Size en NDIS_SIZEOF_BIND_PARAMETERS_REVISION_3.

NDIS_BIND_PARAMETERS_REVISION_2

Se agregó el miembro HDSplitCurrentConfig para NDIS 6.1.

NDIS establece el miembro Size en NDIS_SIZEOF_BIND_PARAMETERS_REVISION_2.

NDIS_BIND_PARAMETERS_REVISION_1

Versión original de NDIS 6.0.

NDIS establece el miembro Size en NDIS_SIZEOF_BIND_PARAMETERS_REVISION_1.

ProtocolSection

Puntero a una cadena Unicode que contiene una ruta de acceso del Registro. La ruta de acceso comienza desde la clave de servicio del controlador de protocolo y continúa la jerarquía del Registro hasta el nombre del adaptador de minipuerto (por ejemplo, Tcpip\Parameters\Adapters\<miniport adapter name>). El nombre del adaptador de minipuerto es el nombre del adaptador de minipuerto inferior en la pila de controladores. Si hay un controlador intermedio MUX en la pila, el adaptador de minipuerto inferior es un miniporte virtual. De lo contrario, el adaptador de miniporte inferior es un adaptador de minipuerto para un dispositivo físico.

El controlador de protocolo puede usar esta ruta de acceso del Registro para leer los parámetros de configuración específicos del enlace entre el controlador y el adaptador de minipuerto subyacente.

AdapterName

Puntero a una cadena Unicode que contiene el nombre del adaptador de minipuerto subyacente al que debe enlazar ProtocolBindAdapterEx .

PhysicalDeviceObject

Objeto de dispositivo físico para el adaptador de minipuerto subyacente.

MediaType

Tipo NdisMediumXxx que admite el adaptador de miniporte subyacente. Para obtener más información sobre los tipos NdisMediumXxx , consulte NDIS_MEDIUM.

MtuSize

Tamaño máximo de la unidad de transferencia (MTU). Para obtener más información, consulte OID_GEN_MAXIMUM_FRAME_SIZE.

MaxXmitLinkSpeed

Velocidad máxima del enlace de transmisión del adaptador subyacente en bits por segundo. Para obtener más información, consulte OID_GEN_MAX_LINK_SPEED.

XmitLinkSpeed

Velocidad de enlace de transmisión actual del adaptador subyacente en bits por segundo. Para obtener más información, consulte OID_GEN_LINK_SPEED_EX.

MaxRcvLinkSpeed

Velocidad máxima del vínculo de recepción del adaptador subyacente en bits por segundo. Para obtener más información, consulte OID_GEN_MAX_LINK_SPEED.

RcvLinkSpeed

Velocidad de vínculo de recepción actual del adaptador subyacente en bits por segundo. Para obtener más información, consulte OID_GEN_LINK_SPEED_EX.

MediaConnectState

Estado de conexión multimedia para el adaptador de minipuerto subyacente. Para obtener más información, vea OID_GEN_MEDIA_CONNECT_STATUS_EX.

MediaDuplexState

Estado dúplex multimedia para el adaptador de minipuerto subyacente. Para obtener más información, consulte OID_GEN_MEDIA_DUPLEX_STATE.

LookaheadSize

Tamaño de lookahead para el adaptador de minipuerto subyacente. Para obtener más información, consulte OID_GEN_CURRENT_LOOKAHEAD.

PowerManagementCapabilities

Las Plug and Play funcionalidades del adaptador de minipuerto subyacente. Para obtener más información, consulte OID_PNP_CAPABILITIES. En su lugar, los controladores NDIS 6.20 y versiones posteriores deben usar el miembro PowerManagementCapabilitiesEx .

SupportedPacketFilters

Conjunto de marcas que identifican los tipos de paquetes de red que el adaptador de miniporte subyacente puede filtrar.

MaxMulticastListSize

Tamaño de la lista de direcciones de multidifusión para el adaptador de minipuerto subyacente. Para obtener más información, vea OID_802_3_MAXIMUM_LIST_SIZE.

MacAddressLength

Longitud de la dirección MAC, en bytes. La longitud de la dirección MAC es específica del tipo de medio.

CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]

La dirección MAC actual. Por ejemplo, el OID de OID_802_3_CURRENT_ADDRESS especifica la dirección MAC actual para los controladores IEEE 802.3.

PhysicalMediumType

Tipo medio físico para el adaptador de minipuerto. Para obtener más información, consulte OID_GEN_PHYSICAL_MEDIUM.

RcvScaleCapabilities

Funcionalidades de escalado lateral de recepción (RSS) de la NIC. Para obtener más información, vea OID_GEN_RECEIVE_SCALE_CAPABILITIES.

BoundIfNetluid

El valor de NDIS NET_LUID , que también es el nombre de la interfaz de red ( ifName en RFC 2863), de la interfaz de nivel más alto que se apilan en el adaptador de miniport. Es decir, si hay minipuertos virtuales o módulos de filtro que se instalan a través del adaptador de minipuerto, este es el valor NET_LUID del miniporte virtual de nivel más alto o módulo de filtro.

BoundIfIndex

Índice de la interfaz de red NDIS de la interfaz de nivel más alto que se apilan en el adaptador de minipuerto. Es decir, si hay minipuertos virtuales o módulos de filtro que se instalan a través del adaptador de minipuerto, este es el ifIndex del miniporte virtual de nivel más alto o módulo de filtro.

LowestIfNetluid

El valor NET_LUID NDIS, que también es el nombre de la interfaz de red ( ifName en RFC 2863), de la interfaz de nivel más bajo en un enlace. Es decir, la interfaz de red NDIS del adaptador de minipuerto en la parte inferior de una pila de filtros.

LowestIfIndex

Índice de la interfaz de red NDIS de la interfaz de nivel más bajo en un enlace. Es decir, la interfaz de red NDIS del adaptador de minipuerto en la parte inferior de una pila de filtros.

AccessType

Tipo de acceso de interfaz de red NDIS NET_IF_ACCESS_TYPE.

DirectionType

Un NET_IF_DIRECTION_TYPE tipo de dirección de la interfaz de red NDIS.

ConnectionType

Tipo de conexión de interfaz de red NDIS. Use NET_IF_CONNECTION_DEDICATED para un adaptador Ethernet típico. Valores válidos son:

NET_IF_CONNECTION_DEDICATED

Especifica el tipo de conexión dedicado. La conexión aparece automáticamente cuando el sentido multimedia es TRUE. Por ejemplo, una conexión Ethernet está dedicada.

NET_IF_CONNECTION_PASSIVE

Especifica el tipo de conexión pasiva. El otro extremo debe abrir la conexión a la estación local. Por ejemplo, la interfaz RAS es pasiva.

NET_IF_CONNECTION_DEMAND

Especifica el tipo de conexión de marcado a petición. Una conexión de marcado a petición aparece en respuesta a una acción local, por ejemplo, el envío de un paquete.

IfType

Tipo de interfaz de la autoridad de números asignados a Internet (IANA). Por ejemplo, IF_TYPE_ETHERNET_CSMACD (6) es el valor de IfType asignado a cualquier interfaz similar a Ethernet. Para obtener una lista si los tipos de interfaz, consulte Tipos de interfaz NDIS.

IfConnectorPresent

Valor booleano que indica si hay un conector presente. NDIS establece este valor en TRUE si hay un adaptador físico.

ActivePorts

por determinar.

DataBackFillSize

Tamaño de reposición de datos requerido, en bytes, de la pila de controladores subyacente.

ContextBackFillSize

Tamaño de reposición de contexto necesario, en bytes, de la pila de controladores subyacente.

MacOptions

Las opciones mac del adaptador de minipuerto. Para obtener más información, consulte OID_GEN_MAC_OPTIONS.

CompartmentId

Compartimiento al que pertenece la interfaz subyacente o uno de los siguientes valores:

NET_IF_COMPARTMENT_ID_UNSPECIFIED

Especifica que el identificador del compartimiento no se usa ni se especifica.

NET_IF_COMPARTMENT_ID_PRIMARY

Especifica el identificador de compartimiento predeterminado. Los proveedores de interfaz de terceros siempre deben especificar NET_IF_COMPARTMENT_ID_PRIMARY. Todos los demás valores están reservados para uso interno de Microsoft.

DefaultOffloadConfiguration

Puntero a una estructura de NDIS_OFFLOAD . Esta estructura especifica las funcionalidades de un adaptador de minipuerto compatible con descarga de tareas. Para obtener más información, vea OID_TCP_OFFLOAD_CURRENT_CONFIG.

TcpConnectionOffloadCapabilities

Puntero a un NDIS_TCP_CONNECTION_OFFLOAD estructura que indica las funcionalidades de descarga actuales que proporciona el adaptador de miniport subyacente.

BoundAdapterName

Puntero a una cadena Unicode que contiene el nombre del adaptador de miniporte de nivel superior que se apilan en el adaptador de minipuerto subyacente. Es decir, si hay miniporte virtual de controlador intermedio de filtro instalado sobre el adaptador de miniporte, este miembro es el nombre del miniporte virtual del controlador intermedio de filtro de nivel superior.

HDSplitCurrentConfig

Puntero a un NDIS_HD_SPLIT_CURRENT_CONFIG estructura. Esta estructura especifica la configuración actual de división de datos de encabezado del adaptador de minipuerto subyacente. Este valor puede ser NULL si el adaptador de miniporte no admite la división de datos de encabezado.

ReceiveFilterCapabilities

Puntero a un NDIS_RECEIVE_FILTER_CAPABILITIES estructura. Esta estructura especifica las funcionalidades de filtrado genéricas que están habilitadas actualmente en el adaptador de minipuerto subyacente. Este valor puede ser NULL si el adaptador de minipuerto no admite el filtrado de recepción.

PowerManagementCapabilitiesEx

Puntero a una estructura de NDIS_PM_CAPABILITIES . Esta estructura especifica las funcionalidades de administración de energía del adaptador de minipuerto. Este miembro es obligatorio para los controladores NDIS 6.20 y versiones posteriores.

NicSwitchCapabilities

Puntero a un NDIS_NIC_SWITCH_CAPABILITIES estructura. Esta estructura especifica las funcionalidades del conmutador NIC del adaptador de miniport subyacente. Este valor puede ser NULL si el adaptador de minipuerto no admite características de conmutador NIC.

NDKEnabled

NDIS establece este valor en TRUE si la interfaz del proveedor de kernel directo de red (NDKPI) está habilitada actualmente en el adaptador de miniport subyacente.

NDKCapabilities

Puntero a una estructura de NDIS_NDK_CAPABILITIES . Esta estructura especifica las funcionalidades de NDKPI que están habilitadas actualmente en el adaptador de miniporte subyacente. Este valor puede ser NULL si el adaptador de minipuerto no admite NDKPI.

SriovCapabilities

Puntero a una estructura de NDIS_SRIOV_CAPABILITIES . Esta estructura especifica las funcionalidades de virtualización de E/S raíz única (SR-IOV) que están habilitadas actualmente en el adaptador de miniport subyacente. Este valor puede ser NULL si el adaptador de minipuerto no admite características SR-IOV.

NicSwitchArray

Puntero a una estructura de NDIS_NIC_SWITCH_INFO_ARRAY . Esta matriz enumera los conmutadores NIC que se han creado en el adaptador de minipuerto. Los conmutadores NIC solo se pueden crear si sr-IOV es compatible y habilitado en el adaptador.

Nota A partir de Windows Server 2012, Windows solo admite el conmutador NIC predeterminado en el adaptador de miniporte. Por lo tanto, esta matriz solo puede contener un elemento.
 

Comentarios

NDIS pasa un puntero a una estructura de NDIS_BIND_PARAMETERS en el parámetro BindParameters del Función ProtocolBindAdapterEx .

Requisitos

Requisito Value
Cliente mínimo compatible Compatible con NDIS 6.0 y versiones posteriores.
Encabezado ndis.h (incluya Ndis.h)

Consulte también

NDIS_HD_SPLIT_CURRENT_CONFIG

NDIS_MEDIUM

NDIS_NIC_SWITCH_CAPABILITIES

NDIS_NIC_SWITCH_INFO_ARRAY

NDIS_OBJECT_HEADER

NDIS_OFFLOAD

NDIS_PM_CAPABILITIES

NDIS_RECEIVE_FILTER_CAPABILITIES

NDIS_SRIOV_CAPABILITIES

NDIS_TCP_CONNECTION_OFFLOAD

NET_IF_ACCESS_TYPE

NET_IF_DIRECTION_TYPE

NET_LUID

OID_802_3_CURRENT_ADDRESS

OID_802_3_MAXIMUM_LIST_SIZE

OID_802_3_PERMANENT_ADDRESS

OID_GEN_CURRENT_LOOKAHEAD

OID_GEN_LINK_SPEED_EX

OID_GEN_MAC_OPTIONS

OID_GEN_MAXIMUM_FRAME_SIZE

OID_GEN_MAX_LINK_SPEED

OID_GEN_MEDIA_CONNECT_STATUS_EX

OID_GEN_MEDIA_DUPLEX_STATE

OID_GEN_PHYSICAL_MEDIUM

OID_GEN_RECEIVE_SCALE_CAPABILITIES

OID_PNP_CAPABILITIES

OID_TCP_OFFLOAD_CURRENT_CONFIG

ProtocolBindAdapterEx