NDIS_RECEIVE_QUEUE_INFO 구조체(ntddndis.h)

NDIS_RECEIVE_QUEUE_INFO 구조에는 네트워크 어댑터의 수신 큐에 대한 정보가 포함됩니다.

구문

typedef struct _NDIS_RECEIVE_QUEUE_INFO {
  NDIS_OBJECT_HEADER                   Header;
  ULONG                                Flags;
  NDIS_RECEIVE_QUEUE_TYPE              QueueType;
  NDIS_RECEIVE_QUEUE_ID                QueueId;
  NDIS_RECEIVE_QUEUE_GROUP_ID          QueueGroupId;
  NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE QueueState;
  GROUP_AFFINITY                       ProcessorAffinity;
  ULONG                                NumSuggestedReceiveBuffers;
  ULONG                                MSIXTableEntry;
  ULONG                                LookaheadSize;
  NDIS_VM_NAME                         VmName;
  NDIS_QUEUE_NAME                      QueueName;
  ULONG                                NumFilters;
  ULONG                                InterruptCoalescingDomainId;
} NDIS_RECEIVE_QUEUE_INFO, *PNDIS_RECEIVE_QUEUE_INFO;

멤버

Header

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

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

NDIS_RECEIVE_QUEUE_INFO_REVISION_2

NDIS 6.30에 대한 추가 멤버가 추가되었습니다.

참고 이 구조의 수정 버전 2는 Windows Server 2012 이상 버전의 Windows Server에서만 지원됩니다.

Size 멤버를 NDIS_SIZEOF_RECEIVE_QUEUE_INFO_REVISION_2 설정합니다.

NDIS_RECEIVE_QUEUE_INFO_REVISION_1

NDIS 6.20의 원래 버전입니다.

Size 멤버를 NDIS_SIZEOF_RECEIVE_QUEUE_INFO_REVISION_1 설정합니다.

Flags

플래그의 비트 OR을 포함하는 ULONG 값입니다. 이 멤버는 NDIS용으로 예약되어 있습니다.

QueueType

수신 큐의 형식을 지정하는 NDIS_RECEIVE_QUEUE_TYPE 열거형 값입니다.

QueueId

수신 큐 식별자를 포함하는 NDIS_RECEIVE_QUEUE_ID 형식 값입니다. 이 식별자는 0과 네트워크 어댑터가 지원하는 큐 수 사이의 정수 값입니다. NDIS_DEFAULT_RECEIVE_QUEUE_ID 값은 기본 수신 큐를 지정합니다.

QueueGroupId

이 멤버는 NDIS용으로 예약되어 있습니다.

QueueState

수신 큐의 작동 상태를 지정하는 NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE 열거형 값입니다.

ProcessorAffinity

큐에 선호도가 있는 CPU를 지정하는 GROUP_AFFINITY 비트맵입니다. 예를 들어 비트 0을 설정하면 CPU 0이 사용되고 비트 1을 설정하면 CPU 1이 사용됨을 나타냅니다. VM 큐는 하나의 CPU와 연결되므로 큐에 대한 모든 수신 표시가 해당 프로세서에서 처리됩니다.

NumSuggestedReceiveBuffers

네트워크 어댑터가 큐를 지원하는 데 사용해야 하는 수신 버퍼 수에 대해 제안된 값을 포함하는 ULONG 값입니다. 이 숫자는 미니포트 드라이버가 사용할 수 있는 리소스를 기준으로 조정하거나 네트워크 어댑터가 다른 큐에 사용하는 수에 비례하여 조정할 수 있습니다. 예를 들어 실제 수신 버퍼 수는 제안된 값의 두 배 또는 절반일 수 있습니다.

MSIXTableEntry

큐에 대한 MSI-X 테이블 항목 인덱스를 포함하는 ULONG 값입니다.

LookaheadSize

이 큐에 대한 lookahead 크기 요구 사항의 크기(바이트)에 대한 ULONG 값입니다. VM 큐에서 lookahead를 지원하는 네트워크 어댑터는 요청된 lookahead 크기와 같거나 큰 오프셋으로 수신된 패킷을 분할하고 DMA를 사용하여 lookahead 데이터와 사후 조회 데이터를 별도의 공유 메모리 세그먼트로 전송합니다.

참고 NDIS 6.30부터 패킷 데이터를 별도의 lookahead 버퍼로 분할하는 것은 더 이상 지원되지 않습니다. 이 멤버의 값은 0으로 설정해야 합니다.

VmName

가상 머신에 대한 사용자에게 친숙한 설명을 포함하는 NDIS_VM_NAME 값입니다.

QueueName

큐에 대한 사용자에게 친숙한 설명을 포함하는 NDIS_QUEUE_NAME 값입니다.

NumFilters

네트워크 어댑터에 구성된 수신 필터 수를 지정하는 ULONG 값입니다.

참고 NDIS 6.30부터 미니포트 드라이버는 네트워크 어댑터에 설정된 현재 수신 필터 수에 대한 카운터를 유지해야 합니다. 드라이버는 수신 필터가 OID_RECEIVE_FILTER_SET_FILTER OID 집합 요청을 통해 설정될 때마다 카운터를 증가시켜야 합니다. 또한 드라이버는 OID_RECEIVE_FILTER_CLEAR_FILTER OID 집합 요청을 통해 수신 필터를 지울 때마다 카운터를 감소시켜야 합니다.

InterruptCoalescingDomainId

NDIS에서 사용하도록 예약된 ULONG 값입니다. 이 값은 미니포트 드라이버에서 정보를 제공하는 데 사용됩니다.

설명

NDIS_RECEIVE_QUEUE_INFO 구조체는 에 대한 NDIS_RECEIVE_QUEUE_INFO_ARRAY 구조체 OID_RECEIVE_FILTER_ENUM_QUEUES 를 열거하는 OID는 네트워크 어댑터에서 큐를 받습니다.

OID_RECEIVE_FILTER_ENUM_QUEUES 성공적으로 반환된 NDIS는 수신 큐 배열의 속성을 정의하는 NDIS_RECEIVE_QUEUE_INFO_ARRAY 구조를 제공합니다. 배열의 각 요소는 NDIS_RECEIVE_QUEUE_INFO 구조체입니다.

요구 사항

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

추가 정보

NDIS_OBJECT_HEADER

NDIS_RECEIVE_QUEUE_INFO_ARRAY

NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE

NDIS_RECEIVE_QUEUE_TYPE

OID_RECEIVE_FILTER_CLEAR_FILTER

OID_RECEIVE_FILTER_ENUM_QUEUES

OID_RECEIVE_FILTER_SET_FILTER