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


Требования к INF для расширений расширяемого коммутатора Hyper-V

Расширения расширяемых коммутаторов Hyper-V разрабатываются как драйверы фильтров NDIS. В результате требования INF для расширений основаны на требованиях INF для всех драйверов фильтров NDIS. При создании INF-файла для расширения расширяемого коммутатора следует использовать параметры INF для изменения или мониторинга драйвера фильтра. Дополнительные сведения об этих параметрах см. в разделе Параметры INF-файла для драйверов фильтров.

Кроме того, необходимо соблюдать следующие рекомендации по INF-файлам для расширяемых расширений коммутатора:

  • Расширение расширяемого коммутатора должно быть установлено в качестве изменяющего драйвера фильтра.

    Дополнительные сведения о требованиях INF для изменения драйвера фильтра см. в статье Настройка INF-файла для изменения драйвера фильтра.

    Примечание Расширение с классом фильтра ms_switch_capture может выполнять те же задачи, что и драйвер фильтра мониторинга. Дополнительные сведения см. в разделе Типы драйверов фильтров.

  • Запись FilterMediaTypes в INF-файле фильтра определяет привязки драйвера к другим драйверам и интерфейсам. Запись FilterMediaTypes для расширения расширяемого коммутатора должна содержать значение vmnetextension . Это значение задает привязку к мини-адаптеру расширения расширяемого коммутатора.

    Запись FilterMediaTypes позволяет указать список типов мультимедиа с разделителями-запятыми. Это позволяет привязать расширение к физическому интерфейсу или интерфейсу расширяемого коммутатора.

    В следующем примере показана запись FilterMediaTypes , которая позволяет привязать расширение либо к физическому сетевому адаптеру Ethernet, либо к виртуальному сетевому адаптеру расширяемого коммутатора.

    HKR, Ndi\Interfaces, FilterMediaTypes, , "ethernet, vmnetextension"
    

    Если в записи FilterMediaTypes указано только значение vmnetextension , расширение привязывается только к стекам драйверов для всех расширяемых коммутаторов в системе.

    Если запись FilterMediaTypes указывает vmnetextension , а также другие типы мультимедиа, расширение может определить, привязано ли оно в стеке драйверов расширяемого коммутатора, вызвав NdisFGetOptionalSwitchHandlers. Если функция возвращает NDIS_STATUS_SUCCESS, расширение привязывается к стеку драйверов расширений. Если функция возвращает NDIS_STATUS_NOT_SUPPORTED, расширение привязано к стеку драйверов для другого физического сетевого интерфейса.

    Дополнительные сведения о записи FilterMediaTypes см. в разделе Записи ФАЙЛА INF для промежуточного драйвера UpperRange и LowerRange.

  • Значение FilterClass в INF-файле для расширения определяет его порядок в стеке фильтров. Запись FilterClass должна содержать одно из значений из следующей таблицы.

    Значение FilterClass Описание

    ms_switch_capture

    Расширение этого класса отслеживает трафик пакетов. Однако этот класс расширения не может применять политики портов или изменять порты назначения для пакета.

    Дополнительные сведения об этом классе расширения см. в разделе Захват расширений.

    ms_switch_filter

    Расширение этого класса фильтрует трафик пакетов и применяет политику порта или коммутатора для доставки пакетов через расширяемый коммутатор. Этот класс драйверов также может проверять и удалять порты назначения для каждого пакета на основе параметров политики.

    Дополнительные сведения об этом классе расширения см. в разделе Фильтрация расширений.

    ms_switch_forward

    Расширение этого класса имеет те же возможности, что и класс ms_switch_filter . Этот класс расширения также может пересылать пакеты на другие расширяемые порты коммутатора, а также внедрять трафик пакетов в любой порт расширяемого коммутатора.

    В пути к данным входящего трафика этот класс расширения вызывается после ms_switch_filter класса расширения. В пути к данным исходящего трафика этот класс расширения вызывается перед ms_switch_filter классом расширения.

    Дополнительные сведения об этом классе расширений см. в разделе Переадресация расширений.

    Примечание В стеке драйвера расширяемого коммутатора допускается только одно расширение этого класса.

При установке расширения с этими параметрами INF оно будет настроено для привязки к каждому экземпляру расширяемого коммутатора. Однако привязка будет отключена и должна быть явно включена с помощью командлета PowerShell. Дополнительные сведения об этой процедуре см. в разделе Включение расширений расширяемого коммутатора Hyper-V.