NDIS_QOS_PARAMETERS 구조체(ntddndis.h)

NDIS_QOS_PARAMETERS 구조는 IEEE 802.1 DCB(Data Center Bridging) 인터페이스를 지원하는 네트워크 어댑터에서 사용하도록 설정된 NDIS QoS(서비스 품질) 매개 변수를 지정합니다.

구문

typedef struct _NDIS_QOS_PARAMETERS {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  ULONG              NumTrafficClasses;
  UCHAR              PriorityAssignmentTable[NDIS_QOS_MAXIMUM_PRIORITIES];
  UCHAR              TcBandwidthAssignmentTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  UCHAR              TsaAssignmentTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  ULONG              PfcEnable;
  ULONG              NumClassificationElements;
  ULONG              ClassificationElementSize;
  ULONG              FirstClassificationElementOffset;
} NDIS_QOS_PARAMETERS, *PNDIS_QOS_PARAMETERS;

멤버

Header

NDIS_QOS_PARAMETERS 구조체의 형식, 수정 버전 및 크기입니다. 이 멤버는 NDIS_OBJECT_HEADER 구조체로 형식이 지정됩니다.

미니포트 드라이버는 헤더Type 멤버를 NDIS_OBJECT_TYPE_QOS_PARAMETERS 설정해야 합니다. NDIS_QOS_PARAMETERS 구조체의 버전을 지정하려면 드라이버가 HeaderRevision 멤버를 다음 값으로 설정해야 합니다.

NDIS_QOS_PARAMETERS_REVISION_1

NDIS 6.30 이상에 대한 원래 버전입니다.

Size 멤버를 NDIS_SIZEOF_QOS_PARAMETERS_REVISION_1 설정합니다.

Flags

네트워크 어댑터에 대한 NDIS QoS 매개 변수의 상태 지정하는 플래그의 비트 OR을 포함하는 ULONG 값입니다. 이 멤버에 대한 자세한 내용은 Flags 멤버 개요를 참조하세요.

NumTrafficClasses

네트워크 어댑터에서 사용하도록 설정된 NDIS QoS 트래픽 클래스의 수를 지정하는 ULONG 값입니다. 각 트래픽 클래스는 0에서 (NumTrafficClasses–1) 범위의 식별자를 통해 참조됩니다.

참고NumTrafficClasses 멤버의 값은 min(NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES, MaxNumTrafficClasses)보다 작거나 같아야 합니다. 여기서 MaxNumTrafficClassesNDIS_QOS_CAPABILITIES 구조체에 지정된 MaxNumTrafficClasses 멤버의 값입니다.
 

PriorityAssignmentTable[NDIS_QOS_MAXIMUM_PRIORITIES]

각 요소가 IEEE 802.1p 우선 순위 수준과 연결된 트래픽 클래스를 나타내는 UCHAR 요소의 배열입니다. PriorityAssignmentTable 배열은 802.1p 우선 순위 수준(0~7)으로 인덱싱됩니다.

각 요소에는 트래픽 클래스 식별자가 포함됩니다. 이 식별자는 분류 배열 내의 트래픽 클래스에 대한 NDIS_QOS_CLASSIFICATION_ELEMENT 구조체의 인덱스입니다.

참고PriorityAssignmentTable 배열의 각 요소에는 유효한 트래픽 클래스 식별자가 할당되어야 합니다. Traffic 클래스 식별자를 PriorityAssignmentTable 배열의 둘 이상의 요소에 할당할 수 있습니다.
 

TcBandwidthAssignmentTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES]

각 트래픽 클래스에 할당된 대역폭 할당의 백분율을 지정하는 UCHAR 요소의 배열입니다. TcBandwidthAssignmentTable 배열은 트래픽 클래스 식별자에 의해 인덱싱됩니다.

TcBandwidthAssignmentTable 배열의 각 요소는 트래픽 클래스에 대한 대역폭 할당을 지정합니다. TcBandwidthAssignmentTable 배열의 모든 대역폭 할당 할당의 총 값은 100이어야 합니다.

참고 대역폭 할당은 ETS(고급 전송 선택) TSA에 대해서만 지원됩니다. TsaAssignmentTable 배열의 트래픽 클래스에 대한 요소가 NDIS_QOS_TSA_ETS 설정되지 않은 경우 TcBandwidthAssignmentTable 배열의 트래픽 클래스에 대한 요소를 0으로 설정해야 합니다.
 

TsaAssignmentTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES]

각 트래픽 클래스에 할당된 TSA를 지정하는 UCHAR 요소의 배열입니다. TsaAssignmentTable 배열은 트래픽 클래스 식별자에 의해 인덱싱됩니다.

TsaAssignmentTable 배열의 각 요소에는 다음 값 중 하나가 포함됩니다.

NDIS_QOS_TSA_STRICT

엄격한 우선 순위 알고리즘은 트래픽 클래스에 대한 TSA로 사용해야 합니다. 이 TSA에 대한 자세한 내용은 엄격한 우선 순위 알고리즘을 참조하세요.

NDIS_QOS_TSA_CBS

IEEE 802.1Qav CBS(크레딧 기반 셰이퍼) 알고리즘은 트래픽 클래스에 대한 TSA로 사용해야 합니다.

참고 Windows Server 2012 DCB 구성 요소(Msdcb.sys)는 CBS TSA를 지원하지 않으며 OID_QOS_PARAMETERS OID(개체 식별자) 메서드 요청을 통해 이 매개 변수를 사용하도록 설정하지 않습니다. DCB 구성 요소에 대한 자세한 내용은 데이터 센터 브리징을 위한 NDIS QoS 아키텍처를 참조하세요.
 

NDIS_QOS_TSA_ETS

IEEE 802.1Qaz ETS(Enhanced Transmission Selection) 알고리즘은 트래픽 클래스에 대한 TSA로 사용해야 합니다. 이 TSA에 대한 자세한 내용은 ETS(향상된 전송 선택) 알고리즘을 참조하세요.

PfcEnable

32비트 비트맵입니다. 가장 중요한 24비트 는 나중에 사용하도록 예약되어 있습니다. 가장 중요하지 않은 8비트 는 PFC가 IEEE 802.1p 우선 순위 수준에서 사용하도록 설정되어 있는지 여부를 지정하는 데 사용됩니다. 비트가 1로 설정된 경우 우선 순위 수준에 대해 PFC가 사용하도록 설정됩니다.

비트 범위 의미
31:24 다음에 사용하도록 예약됩니다.
7 1로 설정하면 PFC가 802.1p 우선 순위 수준 7(네트워크 제어)에서 사용하도록 설정됩니다.
6 1로 설정하면 PFC가 802.1p 우선 순위 수준 6(인터넷 작업 제어)에서 사용하도록 설정됩니다.
5 1로 설정하면 PFC가 802.1p 우선 순위 수준 5(음성)에서 사용하도록 설정됩니다.
4 1로 설정하면 PFC가 802.1p 우선 순위 수준 4(비디오)에서 사용하도록 설정됩니다.
3 1로 설정하면 PFC가 802.1p 우선 순위 수준 3(중요한 애플리케이션)에서 사용하도록 설정됩니다.
2 1로 설정하면 PFC가 802.1p 우선 순위 수준 2(뛰어난 노력)에서 사용하도록 설정됩니다.
1 1로 설정하면 PFC가 802.1p 우선 순위 수준 1(배경)에서 사용하도록 설정됩니다.
0 1로 설정하면 PFC가 802.1p 우선 순위 수준 0(최선의 작업)에서 사용하도록 설정됩니다.
 
참고 PFC를 사용하도록 설정된 총 802.1p 우선 순위 수준은 NDIS_QOS_CAPABILITIES 구조에서 MaxNumPfcEnabledTrafficClasses 멤버의 값보다 작거나 같아야 합니다.
 
우선 순위 수준에 대한 자세한 내용은 IEEE 802.1p 우선 순위 수준을 참조하세요.

NumClassificationElements

트래픽 분류 배열의 요소 수를 지정하는 ULONG 값입니다. 이 배열의 첫 번째 요소에 대한 오프셋은 FirstClassificationElementOffset 멤버에 의해 지정됩니다.

참고 배열의 각 요소는 NDIS_QOS_CLASSIFICATION_ELEMENT 구조체로 서식이 지정됩니다.
 

ClassificationElementSize

트래픽 분류 배열에 있는 각 요소의 크기를 바이트 단위로 지정하는 ULONG 값입니다.

참고 NDIS 6.30부터 이 멤버를 로 설정 sizeof(NDIS_QOS_CLASSIFICATION_ELEMENT해야 합니다.
 

FirstClassificationElementOffset

이 구조체를 따르는 트래픽 분류 요소 배열의 첫 번째 요소에 대한 오프셋(바이트)을 지정하는 ULONG 값입니다. 오프셋은 NDIS_QOS_PARAMETERS 구조체의 시작부터 첫 번째 요소의 시작 부분까지 측정됩니다. 배열의 각 요소는 NDIS_QOS_CLASSIFICATION_ELEMENT 구조체입니다.

참고NumClassificationElements 가 0으로 설정된 경우 이 멤버는 무시됩니다.
 

설명

NDIS_QOS_PARAMETERS 구조는 네트워크 어댑터가 패킷 전송 또는 송신의 우선 순위를 지정하는 방법을 정의하는 매개 변수를 지정합니다. 이 구조체는 다음 OID 요청에 사용됩니다.

  • OID_QOS_OPERATIONAL_PARAMETERS OID 쿼리 요청입니다. 이 OID 요청은 현재 네트워크 어댑터에 프로비전된 작동 QoS 매개 변수를 반환합니다.
  • OID_QOS_REMOTE_PARAMETERS OID 쿼리 요청입니다. 이 OID 요청은 네트워크 어댑터에 현재 프로비전된 원격 QoS 매개 변수를 반환합니다.
  • OID_QOS_PARAMETERS OID 메서드 요청입니다. 이 OID 요청은 로컬 QoS 매개 변수를 사용하여 네트워크 어댑터를 프로비전합니다.
또한 미니포트 드라이버는 다음 NDIS 상태 표시에서 NDIS_QOS_PARAMETERS 구조를 반환합니다. NDIS QoS 매개 변수 형식에 대한 자세한 내용은 NDIS QoS 매개 변수 개요를 참조하세요.

Flags 멤버 개요

Flags 멤버에는 네트워크 어댑터에 대한 NDIS QoS 매개 변수의 상태 지정하는 플래그의 비트 OR이 포함되어 있습니다.

미니포트 드라이버는 다음 NDIS 상태 표시를 발급할 때 Flags 멤버를 설정합니다.

DCB 구성 요소는 OID_QOS_PARAMETERS OID 메서드 요청을 발급할 때 Flags 멤버를 설정합니다.
참고 DCB 구성 요소만 OID 요청을 실행할 수 있습니다. 지나치게 많은 프로토콜 또는 필터 드라이버는 이 OID를 발급해서는 안됩니다. DCB 구성 요소에 대한 자세한 내용은 데이터 센터 브리징을 위한 NDIS QoS 아키텍처를 참조하세요.
 
Flags 멤버에 대해 다음 플래그 가 정의됩니다.
참고 NDIS는 NDIS_QOS_PARAMETERS_ETS_CONFIGURED 플래그와 NDIS_QOS_PARAMETERS_PFC_CONFIGURED 플래그가 함께 설정되거나 지워지게 합니다.
 
NDIS_QOS_PARAMETERS_Xxx_CHANGED 플래그는 해당 매개 변수 그룹이 이전 OID_QOS_PARAMETERS 메서드 요청 또는 NDIS_QOS_PARAMETERS_Xxx_CHANGED 상태 알림에서 변경되었는지 여부에 대한 힌트를 제공합니다. 미니포트 드라이버가 NDIS_QOS_PARAMETERS_Xxx_CHANGED 상태 알림을 발급하면 필요에 따라 이러한 플래그를 설정할 수 있습니다.
참고NDIS_QOS_PARAMETERS_Xxx_CHANGED 플래그가 설정되지 않은 경우 오버리딩 드라이버는 해당 매개 변수 그룹이 기본 네트워크 어댑터에서 지원되거나 사용하도록 설정되어 있다고 가정해서는 안 됩니다.
 

요구 사항

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

추가 정보

NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES

NDIS_OBJECT_HEADER

NDIS_QOS_CAPABILITIES

NDIS_QOS_CLASSIFICATION_ELEMENT

NDIS_STATUS_QOS_OPERATIONAL_PARAMETERS_CHANGE

NDIS_STATUS_QOS_REMOTE_PARAMETERS_CHANGE

NdisMSetMiniportAttributes

OID_QOS_CURRENT_CAPABILITIES

OID_QOS_HARDWARE_CAPABILITIES