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


Обработка стандартизированных ключевых слов INF, SR-IOV, VMQ и RSS

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

  • SR-IOV и VMQ можно включить по отдельности или одновременно.

  • RSS нельзя включить в сетевом адаптере при включении SR-IOV или VMQ.

Операционная система позволяет использовать интерфейсы SR-IOV, VMQ или RSS следующим образом:

  • Если сетевой адаптер привязан к стеку TCP/IP, операционная система позволяет использовать функцию RSS.

  • Если сетевой адаптер привязан к стеку драйверов Hyper-V расширяемого коммутатора, операционная система позволяет использовать функцию SR-IOV или VMQ.

    Дополнительные сведения о расширяемом коммутаторе Hyper-V см. в разделе Hyper-V Расширяемый коммутатор.

Если сетевой адаптер не подключен к стеку TCP/IP и стеку драйвера расширяемого коммутатора Hyper-V, мини-порт будет остановлен, а затем повторно инициализирован. Из-за этого такие сетевые адаптеры не могут переключаться между RSS, VMQ и SR-IOV автоматически.

Когда NDIS вызывает функцию MiniportInitializeEx, драйвер минипорта выполняет следующие действия, прежде чем сообщить о своих возможностях SR-IOV, VMQ или RSS в NDIS:

  1. Драйвер минипорта считывает ключевое слово *SriovPreferred, прежде чем сообщить NDIS о своих текущих активированных возможностях.

    Если значение ключевого слова *SriovPreferred является одним, драйвер минипорта настроен для SR-IOV предпочтения.

  2. Драйвер минипорта считывает ключевое слово *RssOrVmqPreference, прежде чем сообщать о своих текущих возможностях в NDIS.

    Если значение ключевого слова *RssOrVmqPreference равно единице, драйвер минипорта настроен на предпочтение VMQ.

    Если значение ключевого слова *RssOrVmqPreference равно нулю или ключевое слово отсутствует, драйвер минипорта настроен для настройки RSS.

  3. Если минипорт-драйвер настроен с предпочтением SR-IOV, он должен прочитать ключевое слово *SRIOV, чтобы определить, включена ли SR-IOV в сетевом адаптере. Если для ключевого параметра задано значение один, драйвер сообщает о включенных в данный момент параметрах SR-IOV.

    Дополнительные сведения о том, как драйвер минипорта сообщает о параметрах SR-IOV, см. в разделе "Определение возможностей SR-IOV".

    Для получения более подробной информации о ключевых словах SR-IOV, см. стандартные INF ключевые слова для SR-IOV.

    Примечание Если драйвер минипорта настроен для SR-IOV предпочтения, он не должен читать ни одного из стандартных ключевых слов RSS. Однако драйвер должен прочитать стандартизированное ключевое слово *VMQVlanFiltering. Это ключевое слово указывает, включен ли минипорт-драйвер для фильтрации сетевых пакетов с помощью идентификатора виртуальной локальной локальной сети (VLAN) в заголовке управления доступом мультимедиа (MAC). Драйвер минипорта сообщает о данной возможности, устанавливая флаг NDIS_RECEIVE_FILTER_MAC_HEADER_VLAN_ID_SUPPORTED в элементе SupportedMacHeaderFields структуры NDIS_RECEIVE_FILTER_CAPABILITIES. Дополнительные сведения об стандартизованном ключевом слове *VMQVlanFiltering см. в стандартизованных ключевых словах INF для VMQ.

  4. Если минипорт-драйвер настроен для предпочтения VMQ, он должен прочитать ключевое слово *VMQ, чтобы определить, включена ли функция VMQ на сетевом адаптере. Если для ключевого слова задано одно значение, драйвер сообщает о параметрах VMQ, включенных в данный момент. Дополнительные сведения о том, как минипорт драйвер сообщает о параметрах VMQ, см. в Определении возможностей VMQ сетевого адаптера.

    Дополнительные сведения о ключевых словах VMQ см. в разделе Стандартные ключевые слова INF для VMQ.

    Примечание Если драйвер минипорта настроен для предпочтения VMQ, он не должен читать ни один из RSS или SR-IOV стандартизированных ключевых слов.

  5. Если мини-драйвер настроен для настройки RSS, он должен прочитать ключевое слово *RSS, чтобы определить, включен ли RSS в сетевом адаптере. Если для ключевого слова задано одно значение, драйвер сообщает о параметрах RSS, включенных в данный момент. Дополнительные сведения о том, как драйвер минипорта описывает параметры RSS, см. в конфигурации RSS.

    Дополнительные сведения о ключевых словах RSS см. в разделе Стандартные ключевые слова INF для RSS.

    Примечание Если драйвер минипорта настроен для предпочтения RSS, он не должен читать ни один из VMQ или SR-IOV стандартных ключевых слов.

В следующей таблице описывается, как минипорт-драйвер определяет параметры SR-IOV, VMQ или RSS, чтобы включить правильный интерфейс в сетевом адаптере.

ШриовПредпочтительно RssOrVmqPreference ШРИОВ VMQ RSS Активированный интерфейс

1

1

1

1

N/A

SR-IOV и VMQ

1

1

0

1

N/A

VMQ

1

1, 0 или нет в реестре

0

0

N/A

Никакой

0 или нет в реестре

1

N/A

1

N/A

VMQ

0 или нет в реестре

1

N/A

0

N/A

Отсутствует

0 или нет в реестре

0 или нет в реестре

N/A

N/A

1

RSS

0 или нет в реестре

0 или нет в реестре

N/A

N/A

0

Нет

Примечание. Если оба интерфейса SR-IOV и VMQ включены, SR-IOV неотделимые виртуальные порты (VPorts), подключенные к физической функции PCI Express (PCIe) (PF), используются вместо очередей виртуальных машин для интерфейса VMQ. Дополнительные сведения см. в разделе Недефаултные виртуальные порты иVMQ.

Минипорт-драйвер должен объявлять возможности текущего интерфейса. Например, если SR-IOV включен, минипорт-драйвер должен объявлять о возможностях SR-IOV, но не возможности для VMQ и RSS. Однако минипорт-драйвер всегда должен сообщать полные RSS, VMQ и SR-IOV аппаратные возможности независимо от того, какой интерфейс включен в сетевом адаптере.

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