다음을 통해 공유


NDIS_PD_QUEUE_PARAMETERS 구조체(ndis.h)

이 구조는 큐 루틴을 호출할 때 전송 또는 수신 큐에 대한 매개 변수를 유지하는 데 사용됩니다.

통사론

typedef struct _NDIS_PD_QUEUE_PARAMETERS {
  NDIS_OBJECT_HEADER     Header;
  ULONG                  Flags;
  NDIS_PD_QUEUE_TYPE     QueueType;
  ULONG                  QueueSize;
  ULONG                  ReceiveDataLength;
  GROUP_AFFINITY         Affinity;
  ULONG                  TrafficClassId;
  ULONG                  MaximumPartialBufferCount;
  NDIS_PD_COUNTER_HANDLE CounterHandle;
} NDIS_PD_QUEUE_PARAMETERS;

회원

Header

NDIS_PD_CONFIG 구조체의 NDIS_OBJECT_HEADER 구조체입니다. 이 구조체의 멤버를 다음과 같이 설정합니다.

  • 형식 = NDIS_OBJECT_TYPE_DEFAULT
  • 수정 버전 = NDIS_PD_QUEUE_PARAMETERS_REVISION_1
  • 크기 = NDIS_SIZEOF_PD_QUEUE_PARAMETERS_REVISION_1

Flags

이 멤버는 예약되어 있으며 공급자가 0으로 설정해야 합니다.

QueueType

큐의 형식입니다. 자세한 내용은 NDIS_PD_QUEUE_TYPE.

QueueSize

이 큐에서 보유할 수 있는 PD_BUFFER 구조의 최대 크기이며 항상 여러 형식(2^k)-1(63, 127, 255, 511, 1023 등)과 같습니다. 이를 통해 효율적인 순환 인덱스 산술 연산을 수행할 수 있습니다.

ReceiveDataLength

최소 PD_BUFFER 데이터 길이입니다.

Affinity

프로세서 선호도는 성능 최적화를 위한 공급자에 대한 힌트입니다. 플랫폼은 주로 이 마스크로 표시된 프로세서에서 큐를 처리합니다. 공급자는 이 값을 OID_GEN_RECEIVE_SCALE_PARAMETERS 구성된 간접 참조 테이블에서 파생된 프로세서 코어로 설정해야 합니다.

TrafficClassId

MaximumPartialBufferCount

전송 큐의 경우 클라이언트가 단일 L2 패킷을 형성하기 위해 함께 연결할 수 있는 부분 PD_BUFFER 구조의 최대 수입니다. 이 값은 NDIS_PD_CAPABILITIES 구조체의 MaximumTxPartialBufferCount 값과 같아야 합니다.

수신 큐의 경우 공급자가 RSC를 사용하여 단일 대형 L2 패킷을 형성하기 위해 함께 연결할 수 있는 부분 PD_BUFFER 구조의 최대 수입니다. 이 값은 NDIS_PD_CAPABILITIES 구조체의 MaximumRxPartialBufferCount 값보다 작거나 같아야 합니다.

참고 클라이언트는 부분 플래그가 있는 PD_BUFFER 구조를 수신 큐에 게시하지 않습니다. 클라이언트는 항상 데이터 시작 위치에서 시작하여 MTU 크기 이상의 공간이 있는 PD_BUFFER 구조를 게시해야 합니다. 공급자는 RSC의 경우에만 체인을 수행합니다. 일부 공급자는 RSC 체인을 지원하지 못할 수 있습니다. 이러한 공급자는 NDIS_PD_CAPABILITIES 구조에서 MaximumRxPartialBufferCount 멤버로 값을 1로 설정합니다.
 

CounterHandle

전송 큐에 대한 전송 큐 카운터 및 수신 큐에 대한 수신 큐 카운터에 대한 핸들입니다. 큐를 만드는 동안 클라이언트는 필요에 따라 카운터 핸들을 제공할 수 있습니다. 이 경우 큐 유형에 따라 공급자는 큐에서 작업이 수행되면 카운터 값을 업데이트해야 합니다. 클라이언트는 큐가 닫힌 후에만 카운터 핸들을 닫습니다.

RSS와 같이 클라이언트에서 직접 만들지 않은 큐의 경우(예: NdisPDOnRssReceiveQueues루틴을 사용하여 가져온 큐를 수신하는 경우 공급자는 항상 큐와 연결된 카운터 핸들이 있어야 합니다. 즉, 지정된 RSS 수신 큐 집합의 경우 공급자는 각 수신 큐에 대해 하나의 전용 수신 큐 카운터가 있어야 합니다.

발언

이 구조체는 8 바이트 경계에 맞춰야 합니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows 10
지원되는 최소 서버 Windows Server 2016
헤더 ndis.h

참고 항목

NDIS_PD_QUEUE_TYPE

NdisPDAllocateQueue