Поделиться через


структура NDIS_QOS_SQ_PARAMETERS_ENUM_ARRAY (ntddndis.h)

NDIS_QOS_SQ_PARAMETERS_ENUM_ARRAY в настоящее время не используется и обновлен до NDIS_QOS_SQ_ARRAY для NDIS 6.45 и более поздних версий.

Структура NDIS_QOS_SQ_ARRAY используется для перечисления очередей планировщика качества обслуживания (QoS) NDIS для параметров и статистики. Эта структура возвращается в запросах OID OID_QOS_OFFLOAD_ENUM_SQS и OID_QOS_OFFLOAD_SQ_STATS.

Чтобы просмотреть определение заголовка для NDIS_QOS_SQ_ARRAY, см. примечания.

Синтаксис

#define NDIS_QOS_SQ_PARAMETERS_ARRAY_REVISION_1        1

#if (NDIS_SUPPORT_NDIS684)
#define NDIS_QOS_SQ_ARRAY_REVISION_1                   1
#endif // (NDIS_SUPPORT_NDIS684)

typedef struct _NDIS_QOS_SQ_PARAMETERS_ENUM_ARRAY {
    NDIS_OBJECT_HEADER                 Header;
    ULONG                              Flags;
    NDIS_QOS_SQ_TYPE                   SqType;
    NDIS_QOS_SQ_ID                     FirstSqId;
    ULONG                              MaxSqsToReturn;
#if (NDIS_SUPPORT_NDIS684)
    union {
        ULONG                          SqArrayOffset;
        ULONG                          SqParamsArrayOffset;
    };
    union {
        ULONG                          SqArrayNumElements;
        ULONG                          SqParamsArrayNumElements;
    };
    union {
        ULONG                          SqArrayElementSize;
        ULONG                          SqParamsArrayElementSize;
    };
#else
    ULONG                              SqParamsArrayOffset;
    ULONG                              SqParamsArrayNumElements;
    ULONG                              SqParamsArrayElementSize;
#endif // (NDIS_SUPPORT_NDIS684)
} NDIS_QOS_SQ_PARAMETERS_ENUM_ARRAY, *PNDIS_QOS_SQ_PARAMETERS_ENUM_ARRAY;

#if (NDIS_SUPPORT_NDIS684)
typedef struct _NDIS_QOS_SQ_PARAMETERS_ENUM_ARRAY NDIS_QOS_SQ_ARRAY, *PNDIS_QOS_SQ_ARRAY;
#define NDIS_SIZEOF_QOS_SQ_ARRAY_REVISION_1                     \
    RTL_SIZEOF_THROUGH_FIELD(NDIS_QOS_SQ_ARRAY, SqArrayElementSize)
#endif // (NDIS_SUPPORT_NDIS684)

#define NDIS_SIZEOF_QOS_SQ_PARAMETERS_ENUM_ARRAY_REVISION_1     \
    RTL_SIZEOF_THROUGH_FIELD(NDIS_QOS_SQ_PARAMETERS_ENUM_ARRAY, SqParamsArrayElementSize)

Члены

Header

Тип, редакция и размер структуры NDIS_QOS_SQ_STATS . Этот элемент имеет формат структуры NDIS_OBJECT_HEADER .

Драйвер мини-порта должен задать для элемента Typeзаголовка значение NDIS_OBJECT_TYPE_DEFAULT, для элемента Revision — NDIS_QOS_SQ_PARAMETERS_ARRAY_REVISION_1, а для элемента Size — NDIS_SIZEOF_QOS_SQ_PARAMETERS_ARRAY_REVISION_1.

Flags

Не используется в NDIS_QOS_SQ_PARAMETERS_ARRAY_REVISION_1. Вызывающий объект задает для этого поля нулевое значение.

SqType

NDIS_QOS_SQ_TYPE, содержащий тип этого SQ. Это может быть NdisQSQosSqSQTypeStandard из определения перечисления NDIS_QOS_SQ_TYPE.

FirstSqId

NDIS_QOS_SQ_ID, указывающий первый идентификатор SQ этого массива.

MaxSqsToReturn

Максимальное число SQ, содержащихся в этом массиве.

SqArrayOffset

Смещение в байтах от начала этой структуры, обозначающее начало массива. Тип каждого элемента зависит от запроса OID:

OID Тип элемента
OID_QOS_OFFLOAD_ENUM_SQS NDIS_QOS_SQ_PARAMETERS
OID_QOS_OFFLOAD_SQ_STATS NDIS_QOS_SQ_STATS

SqParamsArrayOffset

Это поле не используется в NDIS_QOS_SQ_ARRAY.

SqArrayNumElements

Количество элементов в этом массиве, заданное SQArrayOffset.

SqParamsArrayNumElements

Это поле не используется в NDIS_QOS_SQ_ARRAY.

SqArrayElementSize

Размер каждого элемента в этом массиве.

SqParamsArrayElementSize

Это поле не используется в NDIS_QOS_SQ_ARRAY.

Комментарии

Структура NDIS_QOS_SQ_ARRAY используется для перечисления QoS SQ для параметров и статистики.

Синтаксис

typedef struct _NDIS_QOS_SQ_ARRAY {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  NDIS_QOS_SQ_TYPE   SqType;
  NDIS_QOS_SQ_ID     FirstSqId;
  ULONG              MaxSqsToReturn;
  ULONG              SqArrayOffset;
  ULONG              SqArrayNumElements;
  ULONG              SqArrayElementSize;
} NDIS_QOS_SQ_ARRAY, *PNDIS_QOS_SQ_ARRAY;

В приведенных выше описаниях элементов объясняется, как задать поля NDIS_QOS_SQ_ARRAY .

NDIS_QOS_SQ_ARRAY возвращается в OID_QOS_OFFLOAD_ENUM_SQS запроса OID, который перечисляет SQ, созданные в коммутаторе сетевой карты.

NDIS_QOS_SQ_ARRAY также возвращается в OID_QOS_OFFLOAD_SQ_STATS запроса OID, который используется для получения списка SQ, присутствующих в данный момент на адаптере мини-порта, и их счетчиков статистики.

Требования

Требование Значение
Минимальная версия клиента Поддерживается в NDIS 6.85 и более поздних версиях.
Минимальная версия сервера Windows Server 2022
Верхняя часть ntddndis.h (включая ndis.h)

См. также раздел

OID_QOS_OFFLOAD_ENUM_SQS

OID_QOS_OFFLOAD_SQ_STATS

NDIS_QOS_SQ_STATS

NDIS_QOS_SQ_TYPE

NDIS_QOS_SQ_PARAMETERS

NDIS_OBJECT_HEADER