다음을 통해 공유


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는 Header가 지정하는 구조체의 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

NDIS 6.20용 ReceiveFilterCapabilities, PowerManagementCapabilitiesExNicSwitchCapabilities 멤버가 추가되었습니다.

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

레지스트리 경로가 포함된 유니코드 문자열에 대한 포인터입니다. 경로는 프로토콜 드라이버의 서비스 키에서 시작하여 레지스트리 계층 구조를 미니포트 어댑터 이름(예: Tcpip\Parameters\Adapters\<miniport 어댑터 이름>)으로 계속 실행합니다. 미니포트 어댑터 이름은 드라이버 스택에서 최하위 미니포트 어댑터의 이름입니다. 스택에 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

기본 미니포트 어댑터의 플러그 앤 플레이 기능입니다. 자세한 내용은 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

미니포트 어댑터에 쌓인 최상위 수준 인터페이스의 네트워크 인터페이스 이름(RFC 2863의 ifName)인 NDIS NET_LUID 값입니다. 즉, 미니포트 어댑터 위에 설치된 가상 미니포트 또는 필터 모듈이 있는 경우 가장 높은 수준의 가상 미니포트 또는 필터 모듈의 NET_LUID 값입니다.

BoundIfIndex

미니포트 어댑터에 쌓인 최상위 인터페이스의 NDIS 네트워크 인터페이스 인덱스입니다. 즉, 미니포트 어댑터 위에 설치된 가상 미니포트 또는 필터 모듈이 있는 경우 가장 높은 수준의 가상 미니포트 또는 필터 모듈의 ifIndex입니다.

LowestIfNetluid

바인딩에서 가장 낮은 수준 인터페이스의 네트워크 인터페이스 이름(RFC 2863의 ifName)인 NDIS NET_LUID 값입니다. 즉, 필터 스택 아래쪽에 있는 미니포트 어댑터의 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(Internet Assigned Numbers Authority) 인터페이스 유형입니다. 예를 들어 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

구획 식별자를 사용하거나 지정하지 않도록 지정합니다.

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

기본 미니포트 어댑터에 쌓인 최상위 미니포트 어댑터의 이름을 포함하는 유니코드 문자열에 대한 포인터입니다. 즉, 미니포트 어댑터 위에 설치된 필터 중간 드라이버 가상 미니포트가 있는 경우 이 멤버는 가장 높은 수준의 필터 중간 드라이버 가상 미니포트의 이름입니다.

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

NDIS는 NDKPI(네트워크 직접 커널 공급자 인터페이스)가 현재 기본 미니포트 어댑터에서 사용하도록 설정된 경우 이 값을 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가 지원되고 어댑터에서 사용하도록 설정된 경우에만 만들 수 있습니다.

참고 Windows Server 2012 Windows는 미니포트 어댑터의 기본 NIC 스위치만 지원합니다. 따라서 이 배열은 하나의 요소만 포함할 수 있습니다.
 

설명

NDIS는 의 BindParameters 매개 변수에서 NDIS_BIND_PARAMETERS 구조체에 대한 포인터를 전달합니다. ProtocolBindAdapterEx 함수입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 NDIS 6.0 이상에서 지원됩니다.
머리글 ndis.h(Ndis.h 포함)

추가 정보

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