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


Настройка параметров коммутатора сетевой карты

Избыточный драйвер может изменять параметры коммутатора сетевого адаптера, созданного на сетевом адаптере, поддерживающем виртуализацию одно корневых операций ввода-вывода (SR-IOV). Драйвер выдает запрос на определение идентификатора объекта (OID) OID_NIC_SWITCH_PARAMETERS для изменения этих параметров. Этот запрос набора OID обрабатывает только драйвер минипорта для физической функции PCI Express (PCIe) адаптера SR-IOV.

Перед выполнением этого запроса на набор OID драйвер должен инициализировать структуру NDIS_NIC_SWITCH_PARAMETERS с параметрами, которые необходимо изменить в коммутаторе сетевого адаптера. Затем драйвер инициализирует структуру NDIS_OID_REQUEST для запроса OID и задает элементу InformationBuffer указатель структуры NDIS_NIC_SWITCH_PARAMETERS .

Изменить можно только ограниченное подмножество параметров конфигурации для коммутатора сетевой карты. Драйвер overlying задает параметр, который необходимо изменить, задав следующие члены структуры NDIS_NIC_SWITCH_PARAMETERS :

  • Элементу SwitchId присваивается идентификатор коммутатора сетевой карты, параметры которого будут изменены.

    Примечание Начиная с Windows Server 2012 интерфейс SR-IOV поддерживает только один коммутатор сетевого адаптера. Этот параметр называется коммутатором сетевого адаптера по умолчанию. Для элемента SwitchId необходимо задать значение NDIS_DEFAULT_SWITCH_ID.

  • Соответствующие флаги NDIS_NIC_SWITCH_PARAMETERS_Xxx_CHANGED задаются в элементе Flags . Элементы структуры NDIS_NIC_SWITCH_PARAMETERS можно изменить, только если в ntddndis.h определен соответствующий флаг NDIS_NIC_SWITCH_PARAMETERS_Xxxx_CHANGED.

  • Члены структуры NDIS_NIC_SWITCH_PARAMETERS , соответствующие флагам NDIS_NIC_SWITCH_PARAMETERS_Xxxx_CHANGED, установленным в элементе Flags , задаются с помощью параметров конфигурации коммутатора сетевого адаптера, которые необходимо изменить.

    Примечание Начиная с Windows Server 2012, только элемент SwitchName структуры NDIS_NIC_SWITCH_PARAMETERS можно изменить с помощью запроса набора OID OID_NIC_SWITCH_PARAMETERS.

Драйвер мини-порта PF должен следовать этим рекомендациям при получении запроса на набор OID OID_NIC_SWITCH_PARAMETERS

  • Если драйвер мини-порта PF может применить изменения без повторной инициализации сетевого адаптера, драйвер применяет изменения к оборудованию и завершает запрос OID с NDIS_STATUS_SUCCESS.

    Если возвращается этот код состояния, NDIS обновляет сведения о конфигурации коммутатора сетевой карты в реестре.

  • Если драйвер мини-порта PF требует повторной инициализации сетевого адаптера для применения изменений, драйвер завершает запрос OID с NDIS_STATUS_REINIT_REQUIRED.

    Если возвращается этот код состояния, NDIS также обновляет сведения о конфигурации коммутатора сетевой карты в реестре. Однако драйвер, выдавающий запрос на набор OID, должен повторно инициализировать сетевой адаптер, чтобы изменения вступили в силу.

    Примечание Драйверы минипорта PF, поддерживающие создание и настройку статического сетевого адаптера, могут возвращать NDIS_STATUS_REINIT_REQUIRED, чтобы убедиться, что адаптер повторно инициализирован, чтобы новые параметры вступают в силу.

  • Если драйвер мини-порта PF не может применить изменения, запрошенные в OID, он должен завершить ошибку OID и вернуть соответствующий код NDIS_STATUS_Xxx .

    В этом случае NDIS не обновляет сведения о конфигурации коммутатора сетевой карты в реестре.