структура NDIS_BIND_PARAMETERS (ndis.h)
NDIS инициализирует структуру NDIS_BIND_PARAMETERS со сведениями, которые определяют характеристики привязки и передают ее драйверу протокола.
Синтаксис
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;
Члены
Header
Структура NDIS_OBJECT_HEADER для структуры NDIS_BIND_PARAMETERS . NDIS задает элемент Type структуры, указанной заголовком , NDIS_OBJECT_TYPE_BIND_PARAMETERS.
Чтобы указать версию структуры NDIS_BIND_PARAMETERS, NDIS присваивает члену Revision одно из следующих значений:
NDIS_BIND_PARAMETERS_REVISION_4
Добавлены различные члены для NDIS 6.30.
NDIS задает для элемента Size значение NDIS_SIZEOF_BIND_PARAMETERS_REVISION_4.
NDIS_BIND_PARAMETERS_REVISION_3
Добавлены члены ReceiveFilterCapabilities, PowerManagementCapabilitiesEx и NicSwitchCapabilities для NDIS 6.20.
NDIS задает для элемента Size значение NDIS_SIZEOF_BIND_PARAMETERS_REVISION_3.
NDIS_BIND_PARAMETERS_REVISION_2
Добавлен элемент HDSplitCurrentConfig для NDIS 6.1.
NDIS задает для элемента Size значение NDIS_SIZEOF_BIND_PARAMETERS_REVISION_2.
NDIS_BIND_PARAMETERS_REVISION_1
Исходная версия для NDIS 6.0.
NDIS задает для элемента Size значение NDIS_SIZEOF_BIND_PARAMETERS_REVISION_1.
ProtocolSection
Указатель на строку Юникода, содержащую путь к реестру. Путь начинается с ключа службы драйвера протокола и продолжается вниз по иерархии реестра до имени адаптера мини-порта (например, Tcpip\Parameters\Adapters\<miniport adapter name>). Имя адаптера мини-порта — это имя самого нижнего адаптера минипорта в стеке драйверов. Если в стеке есть промежуточный драйвер MUX, самым нижним адаптером мини-порта является виртуальный мини-порт. В противном случае самым нижним адаптером является адаптер минипорта для физического устройства.
Драйвер протокола может использовать этот путь реестра для чтения параметров конфигурации, относящихся к привязке между драйвером и базовым адаптером мини-порта.
AdapterName
Указатель на строку Юникода, содержащую имя базового адаптера мини-порта, к которому следует привязать ProtocolBindAdapterEx .
PhysicalDeviceObject
Объект физического устройства для базового адаптера мини-порта.
MediaType
Тип NdisMediumXxx , поддерживаемый базовым адаптером минипорта. Дополнительные сведения о типах NdisMediumXxx см. в разделе NDIS_MEDIUM.
MtuSize
Максимальный размер единицы передачи (MTU). Дополнительные сведения см. в разделе OID_GEN_MAXIMUM_FRAME_SIZE.
MaxXmitLinkSpeed
Максимальная скорость передачи канала базового адаптера в битах в секунду. Дополнительные сведения см. в разделе OID_GEN_MAX_LINK_SPEED.
XmitLinkSpeed
Текущая скорость канала передачи базового адаптера в битах в секунду. Дополнительные сведения см. в разделе OID_GEN_LINK_SPEED_EX.
MaxRcvLinkSpeed
Максимальная скорость канала приема базового адаптера в битах в секунду. Дополнительные сведения см. в разделе OID_GEN_MAX_LINK_SPEED.
RcvLinkSpeed
Текущая скорость канала приема базового адаптера в битах в секунду. Дополнительные сведения см. в разделе OID_GEN_LINK_SPEED_EX.
MediaConnectState
Состояние подключения носителя для базового адаптера мини-порта. Дополнительные сведения см. в разделе OID_GEN_MEDIA_CONNECT_STATUS_EX.
MediaDuplexState
Дуплексное состояние носителя для базового адаптера минипорта. Дополнительные сведения см. в разделе OID_GEN_MEDIA_DUPLEX_STATE.
LookaheadSize
Размер lookahead для базового адаптера минипорта. Дополнительные сведения см. в разделе OID_GEN_CURRENT_LOOKAHEAD.
PowerManagementCapabilities
Возможности Plug and Play базового адаптера мини-порта. Дополнительные сведения см. в разделе OID_PNP_CAPABILITIES. Драйверы NDIS 6.20 и более поздних версий должны использовать элемент PowerManagementCapabilitiesEx .
SupportedPacketFilters
Набор флагов, определяющих типы сетевых пакетов, которые может фильтровать базовый адаптер мини-порта.
MaxMulticastListSize
Размер списка адресов многоадресной рассылки для базового адаптера минипорта. Дополнительные сведения см. в разделе OID_802_3_MAXIMUM_LIST_SIZE.
MacAddressLength
Длина MAC-адреса в байтах. Длина MAC-адреса зависит от типа носителя.
CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
Текущий MAC-адрес. Например, OID_802_3_CURRENT_ADDRESS OID указывает текущий MAC-адрес для драйверов IEEE 802.3.
PhysicalMediumType
Тип физического носителя для адаптера мини-порта. Дополнительные сведения см. в разделе OID_GEN_PHYSICAL_MEDIUM.
RcvScaleCapabilities
Возможности масштабирования на стороне приема (RSS) сетевого адаптера. Дополнительные сведения см. в разделе OID_GEN_RECEIVE_SCALE_CAPABILITIES.
BoundIfNetluid
Значение NDIS NET_LUID , которое также является именем сетевого интерфейса ( ifName в RFC 2863) интерфейса самого высокого уровня, размещенного в адаптере мини-порта. То есть при наличии виртуальных минипортов или модулей фильтров, установленных через адаптер минипорта, это NET_LUID значение виртуального минипорта или фильтра самого высокого уровня.
BoundIfIndex
Индекс сетевого интерфейса NDIS интерфейса самого высокого уровня, который размещен на адаптере мини-порта. Это значит, что при наличии виртуальных минипортов или модулей фильтров, установленных через адаптер минипорта, это значение ifIndex виртуального мини-порта или фильтра самого высокого уровня.
LowestIfNetluid
Значение NDIS NET_LUID , которое также является именем сетевого интерфейса ( ifName в RFC 2863) интерфейса самого низкого уровня в привязке. То есть сетевой интерфейс NDIS адаптера минипорта в нижней части стека фильтров.
LowestIfIndex
Индекс сетевого интерфейса NDIS интерфейса самого низкого уровня в привязке. То есть сетевой интерфейс NDIS адаптера минипорта в нижней части стека фильтров.
AccessType
Тип доступа к сетевому интерфейсу NET_IF_ACCESS_TYPE NDIS.
DirectionType
Тип направления сетевого интерфейса NET_IF_DIRECTION_TYPE NDIS.
ConnectionType
Тип подключения сетевого интерфейса NDIS. Используйте NET_IF_CONNECTION_DEDICATED для типичного адаптера Ethernet. Допустимы следующие значения:
NET_IF_CONNECTION_DEDICATED
Указывает тип выделенного подключения. Соединение устанавливается автоматически, если значение мультимедиа имеет значение TRUE. Например, подключение Ethernet выделено.
NET_IF_CONNECTION_PASSIVE
Указывает тип пассивного подключения. Другой конец должен установить соединение с местной станцией. Например, интерфейс RAS является пассивным.
NET_IF_CONNECTION_DEMAND
Указывает тип подключения по запросу. Подключение по запросу появляется в ответ на локальное действие, например на отправку пакета.
IfType
Тип интерфейса IANA. Например, IF_TYPE_ETHERNET_CSMACD (6) — это значение ifType , назначенное любому интерфейсу, подобному Ethernet. Список типов интерфейсов см. в разделе Типы интерфейсов NDIS.
IfConnectorPresent
Логическое значение, указывающее, присутствует ли соединитель. NDIS устанавливает для этого значения значение TRUE , если имеется физический адаптер.
ActivePorts
Подлежит уточнению.
DataBackFillSize
Требуемый размер обратного заполнения данных в байтах базового стека драйверов.
ContextBackFillSize
Требуемый размер обратного заполнения контекста (в байтах) базового стека драйверов.
MacOptions
Параметры MAC-адреса для адаптера мини-порта. Дополнительные сведения см. в разделе OID_GEN_MAC_OPTIONS.
CompartmentId
Секция, которой принадлежит базовый интерфейс, или одно из следующих значений:
NET_IF_COMPARTMENT_ID_UNSPECIFIED
Указывает, что идентификатор секции не используется или не указан.
NET_IF_COMPARTMENT_ID_PRIMARY
Указывает идентификатор секции по умолчанию. Сторонние поставщики интерфейсов всегда должны указывать NET_IF_COMPARTMENT_ID_PRIMARY. Все остальные значения зарезервированы для внутреннего использования Майкрософт.
DefaultOffloadConfiguration
Указатель на структуру NDIS_OFFLOAD . Эта структура определяет возможности адаптера мини-порта с поддержкой разгрузки задач. Дополнительные сведения см. в разделе OID_TCP_OFFLOAD_CURRENT_CONFIG.
TcpConnectionOffloadCapabilities
Указатель на NDIS_TCP_CONNECTION_OFFLOAD структура, указывающая текущие возможности разгрузки, предоставляемые базовым адаптером мини-порта.
BoundAdapterName
Указатель на строку Юникода, содержащую имя адаптера мини-порта самого высокого уровня, расположенного в базовом адаптере мини-порта. То есть, если есть фильтр промежуточных виртуальных минипортов драйвера, установленных через адаптер минипорта, этот элемент является именем виртуального мини-порта промежуточного драйвера самого высокого уровня фильтра.
HDSplitCurrentConfig
Указатель на NDIS_HD_SPLIT_CURRENT_CONFIG структура. Эта структура определяет текущую конфигурацию разделения заголовков и данных базового адаптера минипорта. Это значение может иметь значение NULL , если адаптер минипорта не поддерживает разделение заголовков и данных.
ReceiveFilterCapabilities
Указатель на NDIS_RECEIVE_FILTER_CAPABILITIES структура. Эта структура определяет возможности универсальной фильтрации, которые в настоящее время включены в базовом адаптере мини-порта. Это значение может иметь значение NULL , если адаптер минипорта не поддерживает фильтрацию приема.
PowerManagementCapabilitiesEx
Указатель на структуру NDIS_PM_CAPABILITIES . Эта структура определяет возможности управления питанием адаптера минипорта. Этот член является обязательным для драйверов NDIS 6.20 и более поздних версий.
NicSwitchCapabilities
Указатель на NDIS_NIC_SWITCH_CAPABILITIES структура. Эта структура определяет возможности переключения сетевого адаптера базового мини-порта. Это значение может иметь значение NULL , если адаптер мини-порта не поддерживает функции коммутатора сетевой карты.
NDKEnabled
NDIS устанавливает для этого значения значение TRUE , если сетевой интерфейс поставщика ядра (NDKPI) в настоящее время включен на базовом адаптере минипорта.
NDKCapabilities
Указатель на структуру NDIS_NDK_CAPABILITIES . Эта структура определяет возможности NDKPI, которые в настоящее время включены в базовом адаптере мини-порта. Это значение может иметь значение NULL , если адаптер мини-порта не поддерживает NDKPI.
SriovCapabilities
Указатель на структуру NDIS_SRIOV_CAPABILITIES . Эта структура определяет возможности виртуализации ввода-вывода с одним корнем (SR-IOV), которые в настоящее время включены в базовом адаптере минипорта. Это значение может иметь значение NULL , если адаптер минипорта не поддерживает функции SR-IOV.
NicSwitchArray
Указатель на структуру NDIS_NIC_SWITCH_INFO_ARRAY . Этот массив перечисляет коммутаторы сетевой карты, созданные на адаптере мини-порта. Коммутаторы сетевого адаптера можно создавать только в том случае, если sr-IOV поддерживается и включен на адаптере.
Комментарии
NDIS передает указатель на структуру NDIS_BIND_PARAMETERS в параметре BindParameters объекта Функция ProtocolBindAdapterEx .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Поддерживается в NDIS 6.0 и более поздних версиях. |
Верхняя часть | ndis.h (включая Ndis.h) |
См. также раздел
NDIS_RECEIVE_FILTER_CAPABILITIESOID_GEN_MEDIA_CONNECT_STATUS_EX
OID_GEN_RECEIVE_SCALE_CAPABILITIESОбратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по