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


OID_GEN_RECEIVE_SCALE_PARAMETERS_V2

Предупреждение

Некоторые сведения в этом разделе относятся к предварительно созданному продукту, который может быть существенно изменен до его коммерческого выпуска. Корпорация Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых в отношении информации, предоставленной здесь.

RSSv2 доступна только в Windows 10 версии 1809.

OID OID_GEN_RECEIVE_SCALE_PARAMETERS_V2 отправляется в RSSv2мини-драйверы, поддерживающие мини-порт, для задания параметров времени выполнения, отличных от таблицы косвенного обращения, для сущности масштабирования. OID_GEN_RECEIVE_SCALE_PARAMETERS_V2 заменяет OID_GEN_RECEIVE_SCALE_PARAMETERS OID из RSSv1 и не отображается фильтрам легкого веса NDIS (LWFs) до NDIS 6.80. Этот OID является обычным OID и может быть выдан в качестве запроса или задания запроса. Он выдан в IRQL == PASSIVE_LEVEL. Он может нацелиться на заданный VPort, если флаг NDIS_OID_REQUEST_FLAGS_VPORT_ID_VALID установлен при создании коммутатора сетевого адаптера. В противном случае он предназначен для физического сетевого адаптера в случае собственного RSS.

В качестве запроса драйверы NDIS и драйверы чрезмерного использования могут использовать OID_GEN_RECEIVE_SCALE_PARAMETERS_V2 для запроса параметров RSS сетевого адаптера. NDIS возвращает NDIS_RECEIVE_SCALE_PARAMETERS_V2 структуру, которая определяет текущие параметры RSS.

В качестве набора цель этого OID состоит в выполнении следующих действий:

  • Первоначально настройте сущность масштабирования (минипортовый адаптер в режиме собственного RSS или VPort в режиме VMQ).
  • Включение или отключение RSS.
  • В режиме RSS выполняют некритичные функции управления, такие как изменение хэш-ключа, хэш-типа и хэш-функции, количество очередей или количество записей непрямой таблицы для сущности масштабирования.

Замечания

Включение RSS и настройка параметров RSS можно выполнить на одном шаге. После включения RSS с помощью этого OID начальное состояние сущности масштабирования выглядит следующим образом:

  • Основной процессор становится неактивным.
  • Обработчик по умолчанию становится активным .
  • Все ИТ-службы становятся активными .
  • Минипорт-драйвер запускает вычисление хэша RSS, настройки соответствующего OOB для всех пакетов и перенаправления пакетов в процессор, указанный записью таблицы косвенного обращения или параметром процессора по умолчанию.

После включения RSS верхний слой выдает OID_GEN_RSS_SET_INDIRECTION_TABLE_ENTRIES OID для перемещения ИТ-служб на разные процессоры. В RSSv2 DefaultQueue и PrimaryProcessor также перемещаются в другой процессор с помощью OID_GEN_RSS_SET_INDIRECTION_TABLE_ENTRIES.

Во время отключения RSS верхний слой будет указывать всем ИТ-службам основного процессора перед вызовом этого OID, чтобы отключить RSS. По истечении этого момента трафик должен быть направлен на основной процессор. Однако минипорт-драйверы не должны ожидать отключения RSS перед удалением VPort. Верхний слой может задать фильтр получения в VPort равным нулю, что гарантирует, что трафик приема не передается через VPort, а затем переходит к удалению VPort без отключения RSS.

Верхний слой гарантирует, что важные инварианты не нарушаются перед выполнением функций управления. Например:

  • Перед изменением количества очередей верхний слой гарантирует, что таблица непрямого обращения не ссылается на больше процессоров, чем настроено для VPort. Перед изменением количества записей таблицы косвенного обращения для адаптеров VMMQ-RESTRICTED верхний слой гарантирует, что содержимое таблицы косвенного обращения нормализуется до 2.

Условия ошибки и коды состояния

Этот OID возвращает следующие коды состояния при возникновении ошибки:

Код состояния Условие ошибки
NDIS_STATUS_INVALID_LENGTH OID был неправильно сформирован.
NDIS_STATUS_NO_QUEUES Количество очередей изменяется при включении RSS, но текущая таблица косвенного обращения ссылается на больше процессоров, чем новое число очередей.
NDIS_STATUS_INVALID_DATA
  • Таблица непрямого обращения уменьшается в размерах, но не содержит шаблон двух повторений.
  • Во время перехода состояния RSS (на на или от), процессор из управляемого параметра, который становится активным не принадлежит набору обработчиков RSS адаптера. Обратите внимание, что неактивные параметров управления только отслеживают записи в процессор и не применяются. Принудительное применение происходит во время перехода состояния RSS, когда параметр становится активной.
NDIS_STATUS_INVALID_PARAMETER Другие поля в заголовке или самом OID содержат недопустимые значения.

Требования

версии: Windows 10, версия 1709 заголовка: Ntddndis.h (include Ndis.h)

См. также