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_BIND_PARAMETERS構造体のNDIS_OBJECT_HEADER構造体。 NDIS は、ヘッダーがNDIS_OBJECT_TYPE_BIND_PARAMETERSに指定する構造体の Type メンバーを設定します。
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
NDIS 6.20 の ReceiveFilterCapabilities、 PowerManagementCapabilitiesEx、 および NicSwitchCapabilities メンバーを追加しました。
NDIS は、 Size メンバーをNDIS_SIZEOF_BIND_PARAMETERS_REVISION_3に設定します。
NDIS_BIND_PARAMETERS_REVISION_2
NDIS 6.1 の HDSplitCurrentConfig メンバーを追加しました。
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
レジストリ パスを含む Unicode 文字列へのポインター。 このパスは、プロトコル ドライバーのサービス キーから開始し、レジストリ階層をミニポート アダプター名 (Tcpip\Parameters\Adapters\<ミニポート アダプター名など) まで続けます>。 ミニポート アダプター名は、ドライバー スタックで最も下位のミニポート アダプターの名前です。 スタックに MUX 中間ドライバーがある場合、最下位のミニポート アダプターは仮想ミニポートです。 それ以外の場合、最下位のミニポート アダプターは、物理デバイスのミニポート アダプターです。
プロトコル ドライバーは、このレジストリ パスを使用して、ドライバーと基になるミニポート アダプター間のバインドに固有の構成パラメーターを読み取ることができます。
AdapterName
ProtocolBindAdapterEx をバインドする基になるミニポート アダプターの名前を含む Unicode 文字列へのポインター。
PhysicalDeviceObject
基になるミニポート アダプターの物理デバイス オブジェクト。
MediaType
基になるミニポート アダプターがサポートする NdisMediumXxx 型。 NdisMediumXxx 型の詳細については、「NDIS_MEDIUM」を参照してください。
MtuSize
最大転送単位 (MTU) サイズ。 詳細については、「 OID_GEN_MAXIMUM_FRAME_SIZE」を参照してください。
MaxXmitLinkSpeed
基になるアダプターの最大送信リンク速度 (1 秒あたりのビット数)。 詳細については、「 OID_GEN_MAX_LINK_SPEED」を参照してください。
XmitLinkSpeed
基になるアダプターの現在の送信リンク速度 (1 秒あたりのビット数)。 詳細については、「 OID_GEN_LINK_SPEED_EX」を参照してください。
MaxRcvLinkSpeed
基になるアダプターの最大受信リンク速度 (1 秒あたりのビット数)。 詳細については、「 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
基になるミニポート アダプターの先読みサイズ。 詳細については、「 OID_GEN_CURRENT_LOOKAHEAD」を参照してください。
PowerManagementCapabilities
基になるミニポート アダプターのプラグ アンド プレイ機能。 詳細については、「 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 は、IEEE 802.3 ドライバーの現在の MAC アドレスを指定します。
PhysicalMediumType
ミニポート アダプターの物理メディアの種類。 詳細については、「 OID_GEN_PHYSICAL_MEDIUM」を参照してください。
RcvScaleCapabilities
NIC の 受信側スケーリング (RSS) 機能。 詳細については、「 OID_GEN_RECEIVE_SCALE_CAPABILITIES。
BoundIfNetluid
NDIS NET_LUID 値。これは、ミニポート アダプターに積み重ねられた最上位レベルのインターフェイスのネットワーク インターフェイス名 (RFC 2863 では ifName ) でもあります。 つまり、ミニポート アダプターにインストールされている仮想ミニポートまたはフィルター モジュールがある場合、これは最上位レベルの仮想ミニポートまたはフィルター モジュールのNET_LUID値です。
BoundIfIndex
ミニポート アダプターにスタックされている最上位レベルのインターフェイスの NDIS ネットワーク インターフェイス インデックス。 つまり、ミニポート アダプター経由でインストールされている仮想ミニポートまたはフィルター モジュールがある場合、これは最上位レベルの仮想ミニポートまたはフィルター モジュールの ifIndex です。
LowestIfNetluid
NDIS NET_LUID 値。これは、バインディングの最下位レベルのインターフェイスのネットワーク インターフェイス名 (RFC 2863 の 場合は ifName ) でもあります。 つまり、フィルター スタックの下部にあるミニポート アダプターの NDIS ネットワーク インターフェイスです。
LowestIfIndex
バインディング上の最下位レベルのインターフェイスの NDIS ネットワーク インターフェイス インデックス。 つまり、フィルター スタックの下部にあるミニポート アダプターの NDIS ネットワーク インターフェイスです。
AccessType
NET_IF_ACCESS_TYPE NDIS ネットワーク インターフェイス アクセスの種類。
DirectionType
NET_IF_DIRECTION_TYPE NDIS ネットワーク インターフェイスの方向の種類。
ConnectionType
NDIS ネットワーク インターフェイス接続の種類。 一般的なイーサネット アダプターには 、NET_IF_CONNECTION_DEDICATED を使用します。 有効な値は、次のとおりです。
NET_IF_CONNECTION_DEDICATED
専用接続の種類を指定します。 メディア センスが TRUE の場合、接続は自動的に起動します。 たとえば、イーサネット接続は専用です。
NET_IF_CONNECTION_PASSIVE
パッシブ接続の種類を指定します。 もう一方の端は、ローカル ステーションへの接続を起動する必要があります。 たとえば、RAS インターフェイスはパッシブです。
NET_IF_CONNECTION_DEMAND
需要ダイヤル接続の種類を指定します。 要求ダイヤル接続は、ローカル アクション (パケットの送信など) に応答して起動します。
IfType
インターネット割り当て番号機関 (IANA) インターフェイスの種類。 たとえば、IF_TYPE_ETHERNET_CSMACD (6) は、任意のイーサネットに似たインターフェイスに割り当てられる IfType の値です。 インターフェイスの種類の一覧については、「 NDIS インターフェイスの種類」を参照してください。
IfConnectorPresent
コネクタが存在するかどうかを示すブール値。 物理アダプターがある場合、NDIS はこの値を TRUE に 設定します。
ActivePorts
未定。
DataBackFillSize
基になるドライバー スタックの必要なデータ バックフィル サイズ (バイト単位)。
ContextBackFillSize
基になるドライバー スタックの必要なコンテキスト バックフィル サイズ (バイト単位)。
MacOptions
ミニポート アダプターの MAC オプション。 詳細については、「 OID_GEN_MAC_OPTIONS」を参照してください。
CompartmentId
基になるインターフェイスが属するコンパートメント、または次のいずれかの値。
NET_IF_COMPARTMENT_ID_UNSPECIFIED
コンパートメント ID が使用されていないか、指定されていないことを指定します。
NET_IF_COMPARTMENT_ID_PRIMARY
既定のコンパートメント識別子を指定します。 サード パーティのインターフェイス プロバイダーでは、常にNET_IF_COMPARTMENT_ID_PRIMARYを指定する必要があります。 その他の値はすべて、Microsoft の内部使用のために予約されています。
DefaultOffloadConfiguration
NDIS_OFFLOAD構造体へのポインター。 この構造体は、タスク オフロード対応ミニポート アダプターの機能を指定します。 詳細については、「 OID_TCP_OFFLOAD_CURRENT_CONFIG。
TcpConnectionOffloadCapabilities
へのポインター NDIS_TCP_CONNECTION_OFFLOAD 基になるミニポート アダプターによって提供される現在のオフロード機能を示す構造体。
BoundAdapterName
基になるミニポート アダプターに積み重ねられた最上位のミニポート アダプターの名前を含む Unicode 文字列へのポインター。 つまり、ミニポート アダプター経由でインストールされているフィルター中間ドライバー仮想ミニポートがある場合、このメンバーは、最上位レベルのフィルター中間ドライバー仮想ミニポートの名前です。
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 構造体。 この構造体は、基になるミニポート アダプターの NIC スイッチ機能を指定します。 ミニポート アダプターが NIC スイッチ機能をサポートしていない場合、この値は NULL にすることができます。
NDKEnabled
ネットワーク ダイレクト カーネル プロバイダー インターフェイス (NDKPI) が基になるミニポート アダプターで現在有効になっている場合、NDIS はこの値を TRUE に設定します。
NDKCapabilities
NDIS_NDK_CAPABILITIES構造体へのポインター。 この構造体は、基になるミニポート アダプターで現在有効になっている NDKPI 機能を指定します。 ミニポート アダプターが NDKPI をサポートしていない場合、この値は NULL にすることができます。
SriovCapabilities
NDIS_SRIOV_CAPABILITIES構造体へのポインター。 この構造体は、基になるミニポート アダプターで現在有効になっている単一ルート I/O 仮想化 (SR-IOV) 機能を指定します。 ミニポート アダプターが SR-IOV 機能をサポートしていない場合、この値は NULL にすることができます。
NicSwitchArray
NDIS_NIC_SWITCH_INFO_ARRAY構造体へのポインター。 この配列は、ミニポート アダプターで作成された NIC スイッチを列挙します。 NIC スイッチは、SR-IOV がサポートされ、アダプターで有効になっている場合にのみ作成できます。
注釈
NDIS は、 の BindParameters パラメーター内のNDIS_BIND_PARAMETERS構造体へのポインターを渡します。 ProtocolBindAdapterEx 関数。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | NDIS 6.0 以降でサポートされています。 |
Header | ndis.h (Ndis.h を含む) |
こちらもご覧ください
NDIS_RECEIVE_FILTER_CAPABILITIESOID_GEN_MEDIA_CONNECT_STATUS_EX
OID_GEN_RECEIVE_SCALE_CAPABILITIES