NDIS_NIC_SWITCH_CAPABILITIES 구조체(ntddndis.h)
NDIS_NIC_SWITCH_CAPABILITIES 구조는 네트워크 어댑터에서 NIC 스위치의 기능을 지정합니다.
구문
typedef struct _NDIS_NIC_SWITCH_CAPABILITIES {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
ULONG NdisReserved1;
ULONG NumTotalMacAddresses;
ULONG NumMacAddressesPerPort;
ULONG NumVlansPerPort;
ULONG NdisReserved2;
ULONG NdisReserved3;
ULONG NicSwitchCapabilities;
ULONG MaxNumSwitches;
ULONG MaxNumVPorts;
ULONG NdisReserved4;
ULONG MaxNumVFs;
ULONG MaxNumQueuePairs;
ULONG NdisReserved5;
ULONG NdisReserved6;
ULONG NdisReserved7;
ULONG MaxNumQueuePairsPerNonDefaultVPort;
ULONG NdisReserved8;
ULONG NdisReserved9;
ULONG NdisReserved10;
ULONG NdisReserved11;
ULONG NdisReserved12;
ULONG MaxNumMacAddresses;
ULONG NdisReserved13;
ULONG NdisReserved14;
ULONG NdisReserved15;
ULONG NdisReserved16;
ULONG NdisReserved17;
ULONG MaxNumRssCapableNonDefaultPFVPorts;
ULONG NumberOfIndirectionTableEntriesForDefaultVPort;
ULONG NumberOfIndirectionTableEntriesPerNonDefaultPFVPort;
ULONG MaxNumQueuePairsForDefaultVPort;
} NDIS_NIC_SWITCH_CAPABILITIES, *PNDIS_NIC_SWITCH_CAPABILITIES;
멤버
Header
NDIS_NIC_SWITCH_CAPABILITIES 구조체의 형식, 수정 버전 및 크기입니다. 이 멤버는 NDIS_OBJECT_HEADER 구조체로 형식이 지정됩니다.
미니포트 드라이버는 헤더의 Type 멤버를 NDIS_OBJECT_TYPE_DEFAULT 설정해야 합니다. NDIS_NIC_SWITCH_CAPABILITIES 구조체의 버전을 지정하려면 드라이버는 Header의 Revision 멤버를 다음 값 중 하나로 설정해야 합니다.
NDIS_NIC_SWITCH_CAPABILITIES_REVISION_3
NDIS 6.60에 대한 RSS 인터페이스 멤버가 추가되었습니다.
Size 멤버를 NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_3 설정합니다.
NDIS_NIC_SWITCH_CAPABILITIES_REVISION_2
NDIS 6.30에 대한 SR-IOV(단일 루트 I/O 가상화) 인터페이스 멤버가 추가되었습니다.
Size 멤버를 NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_2 설정합니다.
NDIS_NIC_SWITCH_CAPABILITIES_REVISION_1
NDIS 6.20의 원래 버전입니다.
Size 멤버를 NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_1 설정합니다.
Flags
플래그의 비트 OR을 포함하는 ULONG 값입니다. 이 멤버는 NDIS용으로 예약되어 있습니다.
NdisReserved1
NDIS용으로 예약되었습니다.
NumTotalMacAddresses
네트워크 어댑터가 지원하는 MAC(미디어 액세스 제어) 주소의 총 수를 포함하는 ULONG 값입니다.
NumMacAddressesPerPort
각 포트에 대해 지원되는 MAC 주소 수를 포함하는 ULONG 값입니다.
NumVlansPerPort
각 포트에 대해 지원되는 VLAN 수를 포함하는 ULONG 값입니다.
NdisReserved2
NDIS용으로 예약되었습니다.
NdisReserved3
NDIS용으로 예약되었습니다.
NicSwitchCapabilities
NIC 스위치의 기능을 지정하는 다음 플래그의 비트 OR을 포함하는 ULONG 값입니다.
NDIS_NIC_SWITCH_CAPS_RSS_ON_PF_VPORTS_SUPPORTED
NIC가 PF VPort에 대한 VMMQ를 지원한다고 지정합니다.
NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_INDIRECTION_TABLE_SUPPORTED
1로 설정하면 NIC가 PF별 VPort 간접 테이블을 유지할 수 있도록 지정합니다.
NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_FUNCTION_SUPPORTED
1로 설정하면 NIC가 PF VPort당 다른 해시 함수 설정을 지원하도록 지정합니다. 이 플래그가 설정되면 NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_KEY_SUPPORTED 설정해야 합니다.
NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_TYPE_SUPPORTED
1로 설정하면 NIC가 PF VPort당 다른 해시 형식 설정을 지원하도록 지정합니다.
NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_KEY_SUPPORTED
1로 설정하면 NIC가 PF VPort당 다른 해시 비밀 키 설정을 지원하도록 지정합니다. NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_FUNCTION_SUPPORTED 설정된 경우 이 플래그를 설정해야 합니다.
NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_INDIRECTION_TABLE_SIZE_RESTRICTED
1로 설정하면 NIC에 PF VPorts에 대한 간접 참조 테이블 크기에 제한이 있음을 지정합니다. 이 플래그는 RSS OID의 발급자에서 PF당 VPort 간접 테이블 크기를 다음 2의 전원으로 반올림된 VPort 큐 수와 동일하게 사용하도록 강제합니다. PF VPort에만 적용되며 VF VPort에는 적용되지 않습니다. 이 플래그는 NDIS_NIC_SWITCH_CAPS_ASYMMETRIC_QUEUE_PAIRS_FOR_NONDEFAULT_VPORT_SUPPORTED 플래그와 결합할 수 있습니다(PF VPort의 큐 수가 다를 수 있음). 이 플래그를 사용하면 VMMQ 사용자가 세분화된 큐 조향을 수행할 수 없습니다.
NDIS_NIC_SWITCH_CAPS_NIC_SWITCH_WITHOUT_IOV_SUPPORTED
NDIS 6.60에서 도입된 이 플래그는 SR-IOV를 사용하지 않고 NIC 스위치를 만들 수 있도록 지정합니다. 이 플래그를 사용하면 *SRIOV 키워드(keyword) NIC 스위치를 분리할 수 있습니다. 즉, *SRIOV = 0인 경우에도 OID_NIC_SWITCH_CREATE_SWITCH 통해 NIC 스위치를 만들 수 있습니다.
NDIS 6.60 이상 미니포트 드라이버에 대한 NIC 스위치 기능을 보고하는 방법에 대한 자세한 내용은 NIC 스위치 기능 확인을 참조하세요.
NDIS_NIC_SWITCH_CAPS_VLAN_SUPPORTED
이 플래그는 NIC 스위치가 VLAN(가상 로컬 영역 네트워크) ID(식별자)를 기반으로 하드웨어 패킷 필터링을 지원한다고 지정합니다.
NDIS_NIC_SWITCH_CAPS_PER_VPORT_INTERRUPT_MODERATION_SUPPORTED
이 플래그는 NIC 스위치가 개별 VPort에서 인터럽트 조정 구성을 지원할 수 있도록 지정합니다.
NDIS_NIC_SWITCH_CAPS_ASYMMETRIC_QUEUE_PAIRS_FOR_NONDEFAULT_VPORT_SUPPORTED
이 플래그는 NIC 스위치가 기본이 아닌 각 VPort에 대해 서로 다른 수의 큐 쌍을 구성할 수 있도록 지정합니다. 즉, 기본이 아닌 각 VPort는 서로 다른 수의 큐 쌍을 갖도록 비대칭적으로 구성할 수 있습니다.
이 플래그가 설정되지 않은 경우 동일한 수의 큐 쌍을 갖도록 모든 기본값이 아닌 VPort를 대칭적으로 구성해야 합니다.
이 플래그가 설정되었는지 여부에 관계없이 NIC 스위치는 기본 VPort에서 큐 쌍 수를 설정하는 기능을 지원해야 합니다. 이는 기본이 아닌 VPort에 설정된 큐 쌍의 수와 다를 수 있습니다.
NDIS_NIC_SWITCH_CAPS_VF_RSS_SUPPORTED
이 플래그는 PCI Express(PCIe) VF(가상 함수)에 연결된 기본이 아닌 VPort의 큐 쌍을 RSS(수신 측 크기 조정)에 사용할 수 있도록 지정합니다. VF 미니포트 드라이버는 Hyper-V 자식 파티션의 게스트 운영 체제에서 실행됩니다.
이 플래그가 설정된 경우 미니포트 드라이버는 VF에서 RSS를 지원하며 RSS용 기본이 아닌 VPort의 큐 쌍 중 하나 이상을 사용할 수 있습니다.
NDIS_NIC_SWITCH_CAPS_SINGLE_VPORT_POOL
이 플래그는 비기본 VPort를 네트워크 어댑터의 VPort 풀에서 예약되지 않은 방식으로 만들 수 있도록 지정합니다. 이렇게 하면 PF 및 할당된 VF에 필요에 따라 사용 가능한 기본이 아닌 VPort를 만들고 할당할 수 있습니다. 네트워크 어댑터가 VMQ(가상 머신 큐) 인터페이스를 지원하는 경우 PF에 할당된 기본이 아닌 VPort를 VM 수신 큐에도 사용할 수 있습니다.
VMQ에 대한 자세한 내용은 VMQ(가상 머신 큐)를 참조하세요.
VPort에 대한 자세한 내용은 가상 포트 관리를 참조하세요.
MaxNumSwitches
네트워크 어댑터의 PCIe(PCI Express) PF(물리적 함수)에서 만들 수 있는 스위치의 최대 수를 지정하는 ULONG 값입니다.
MaxNumVPorts
네트워크 어댑터에서 만들 수 있는 VPort의 최대 수를 지정하는 ULONG 값입니다. 여기에는 항상 PF에 연결된 기본 VPort가 포함됩니다.
NdisReserved4
NDIS용으로 예약되었습니다.
MaxNumVFs
NIC 스위치에서 만들 수 있는 최대 VF 수를 지정하는 ULONG 값입니다.
MaxNumQueuePairs
모든 VPort에 할당할 수 있는 최대 큐 쌍 수를 지정하는 ULONG 값입니다. 여기에는 PF에 연결된 기본 VPort가 포함됩니다.
NdisReserved5
NDIS용으로 예약되었습니다.
NdisReserved6
NDIS용으로 예약되었습니다.
NdisReserved7
NDIS용으로 예약되었습니다.
MaxNumQueuePairsPerNonDefaultVPort
기본이 아닌 VPort에 할당할 수 있는 최대 큐 쌍 수를 지정하는 ULONG 값입니다.
이 값은 2의 권한으로 지정되며 비대칭 구성 및 VPort에 큐 쌍 할당을 제공합니다. 자세한 내용은 큐 쌍의 대칭 및 비대칭 할당을 참조하세요.
NdisReserved8
NDIS용으로 예약되었습니다.
NdisReserved9
NDIS용으로 예약되었습니다.
NdisReserved10
NDIS용으로 예약되었습니다.
NdisReserved11
NDIS용으로 예약되었습니다.
NdisReserved12
NDIS용으로 예약되었습니다.
MaxNumMacAddresses
NIC 스위치에서 사용할 수 있는 유니캐스트 MAC 주소 필터의 최대 수를 지정하는 ULONG 값입니다.
NdisReserved13
NDIS용으로 예약되었습니다.
NdisReserved14
NDIS용으로 예약되었습니다.
NdisReserved15
NDIS용으로 예약되었습니다.
NdisReserved16
NDIS용으로 예약되었습니다.
NdisReserved17
NDIS용으로 예약되었습니다.
MaxNumRssCapableNonDefaultPFVPorts
RSS 지원 비 기본 PFVPort의 최대 수를 지정하는 ULONG 값입니다.
NumberOfIndirectionTableEntriesForDefaultVPort
기본 VPort에 대한 간접 참조 테이블 항목 수를 지정하는 ULONG 값입니다.
NumberOfIndirectionTableEntriesPerNonDefaultPFVPort
기본이 아닌 각 PFVPort에 대한 간접 테이블 항목 수를 지정하는 ULONG 값입니다.
MaxNumQueuePairsForDefaultVPort
기본 VPort에 할당할 수 있는 최대 큐 쌍 수를 지정하는 ULONG 값입니다.
이 값은 2의 권한으로 지정되며 비대칭 구성 및 VPort에 큐 쌍 할당을 제공합니다. 자세한 내용은 큐 쌍의 대칭 및 비대칭 할당을 참조하세요.
설명
NDIS_NIC_SWITCH_CAPABILITIES 구조체는 다음 구조체의 멤버에서 사용됩니다.
- 의 HardwareNicSwitchCapabilities 및 CurrentNicSwitchCapabilities 멤버 NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 구조체입니다.
- 의 NicSwitchCapabilities 멤버 NDIS_FILTER_ATTACH_PARAMETERS 및 NDIS_BIND_PARAMETERS 구조체.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | NDIS 6.20 이상에서 지원됩니다. |
머리글 | ntddndis.h(Ndis.h 포함) |
추가 정보
NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES