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


Очереди получения VMQ

Поставщик службы очереди виртуальных машин (VMQ) выделяет очереди получения VMQ. Оборудование сетевого адаптера назначает входящий пакет сетевых данных очереди, если пакет проходит тесты фильтра, заданные в очереди.

Очередь получения VMQ имеет следующие свойства:

  • Идентификатор очереди, уникальный для связанного сетевого адаптера.

  • Сходство процессоров для прерываний.

  • Фильтры, заданные в очереди.

  • Буферы получения, назначенные очереди.

Существует также очередь по умолчанию со следующими свойствами:

  • Очередь по умолчанию всегда существует. Необходимо выделить другие очереди.

  • Очередь по умолчанию получает пакеты, которые не проходят тесты фильтра для других очередей.

Драйверы минипорта выделяют общую память для буферов приема, связанных с VMQ. В зависимости от версии Windows Server драйверы мини-порта должны следовать рекомендациям по выделению буфера, описанным в следующих разделах:

Требования к общей памяти VMQ предназначены для устранения потенциальных проблем безопасности виртуальных машин. Дополнительные сведения о проблемах с безопасностью VMQ см. в статье Проблемы безопасности с общей памятью виртуальной машины NDIS.

Выделение общей памяти для буферов получения VMQ (Windows Server 2008 R2)

Для NDIS 6.20 в Windows Server 2008 R2, если драйвер miniport поддерживает разделение данных пакетов на отдельные буферы lookahead, он может выделить общую память следующим образом:

  • Драйвер мини-порта выделяет общую память для буфера предварительного просмотра из адресного пространства операционной системы управления, работающей в родительском разделе Hyper-V. Буфер предварительного просмотра — это часть пакета, проверяемая операционной системой управления.

  • Драйвер мини-порта выделяет общую память для буфера после просмотра из адресного пространства гостевой операционной системы, работающей в дочернем разделе Hyper-V. Буфер post-lookahead — это часть пакета, проверяемая операционной системой на виртуальной машине.

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

На следующем рисунке показана общая память в очередях, операционная система управления и гостевые операционные системы.

схема, иллюстрирующая общую память в очередях, раздел операционной системы управления и разделы виртуальных машин.

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

Выделение общей памяти для буферов приема VMQ (Windows Server 2012 и более поздних версий)

Начиная с версии NDIS 6.30 разделение буферов приема VMQ на отдельные буферы lookahead больше не поддерживается. Драйвер мини-порта должен выделять память для каждого буфера получения из адресного пространства операционной системы управления.