OID_NIC_SWITCH_CREATE_SWITCH

NDIS выдает запрос метода идентификатора объекта (OID) OID_NIC_SWITCH_CREATE_SWITCH для создания коммутатора сетевого адаптера. При обработке этого запроса OID драйвер минипорта выделяет ресурсы для коммутатора сетевого адаптера.

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

Примечание переопределения драйверов, таких как протокол или драйверы фильтров, не могут выдавать запросы метода OID OID_NIC_SWITCH_CREATE_SWITCH драйверу мини-порта PF.

Элемент InformationBuffer структуры NDIS_OID_REQUEST содержит указатель на структуру NDIS_NIC_SWITCH_PARAMETERS.

Замечания

При получении запроса метода OID OID_NIC_SWITCH_CREATE_SWITCH драйвер минипорта PF должен выполнить следующие действия:

  1. Если драйвер мини-порта PF поддерживает создание и настройку статического коммутатора, он создает коммутатор сетевого адаптера при вызове NDIS MiniportInitializeEx. Когда драйвер обрабатывает этот запрос OID, он должен проверить параметры конфигурации в структуре NDIS_NIC_SWITCH_PARAMETERS. Параметры должны совпадать с параметрами, используемыми драйвером для создания коммутатора во время вызова MiniportInitializeEx. Если это не так, драйвер должен завершить запрос OID.

    Дополнительные сведения см. в разделе статического создания коммутатора сетевого адаптера.

  2. Если драйвер мини-порта PF поддерживает динамическое создание и настройку коммутатора, драйвер должен проверить значения конфигурации структуры NDIS_NIC_SWITCH_PARAMETERS и создать коммутатор сетевого адаптера на основе этих значений.

    Дополнительные сведения см. в динамическом создании коммутатора сетевого адаптера.

  3. Драйвер мини-порта PF должен выделить необходимые аппаратные и программные ресурсы для VPort по умолчанию на коммутаторе сетевого адаптера.

    примечание VPort по умолчанию всегда создается с помощью запроса OID OID_NIC_SWITCH_CREATE_SWITCH и удаляется с помощью запроса OID OID_NIC_SWITCH_DELETE_SWITCH. Запросы OID OID_NIC_SWITCH_CREATE_VPORT и OID_NIC_SWITCH_DELETE_VPORT используются для создания и удаления недефаult VPorts на коммутаторе сетевого адаптера.

  4. Драйвер мини-порта PF, поддерживающий динамическое создание и настройку коммутатора, должен включать SR-IOV виртуализацию на коммутаторе путем вызова NdisMEnableVirtualization. Этот вызов настраивает элемент NumVFs и VF Enable бит в структуре SR-IOV расширенных возможностей пространства конфигурации PCI Express (PCIe) адаптера.

    Дополнительные сведения о пространстве конфигурации SR-IOV см. в спецификации PCI-SIG виртуализации единого корневого ввода-вывода и совместного использования 1.1.

    Примечание Если драйвер мини-порта PF поддерживает создание статического коммутатора, он включает SR-IOV виртуализацию после создания коммутатора при вызове MiniportInitializeEx.

Если драйвер мини-порта PF успешно завершает запрос метода OID OID_NIC_SWITCH_CREATE_SWITCH, он позволяет выполнить следующее:

  • Виртуальные машины можно выделить на коммутаторе сетевого адаптера с помощью запросов метода OID OID_NIC_SWITCH_ALLOCATE_VF.

  • В коммутаторе сетевого адаптера можно создать недефаult VPorts с помощью запросов метода OID OID_NIC_SWITCH_CREATE_VPORT.

Дополнительные сведения об обработке этого запроса OID см. в разделе Обработка OID_NIC_SWITCH_CREATE_SWITCH запроса.

Коды состояния возврата

Драйвер мини-порта PF возвращает один из следующих кодов состояния для запроса метода OID OID_NIC_SWITCH_CREATE_SWITCH.

Код состояния Описание

NDIS_STATUS_SUCCESS

Запрос OID успешно завершен.

NDIS_STATUS_NOT_SUPPORTED

Драйвер мини-порта PF либо не поддерживает интерфейс SR-IOV, либо не включен для использования интерфейса.

NDIS_STATUS_INVALID_PARAMETER

Один или несколько членов структуры NDIS_NIC_SWITCH_PARAMETERS имеют недопустимые значения.

NDIS_STATUS_INVALID_LENGTH

Длина буфера информации меньше размера (NDIS_NIC_SWITCH_PARAMETERS). Драйвер мини-порта PF должен задать DATA. METHOD_INFORMATION. Элемент BytesNeeded в структуре NDIS_OID_REQUEST к минимальному размеру буфера, который требуется.

NDIS_STATUS_FAILURE

Запрос завершился ошибкой по другим причинам.

Требования

Версия

Поддерживается в NDIS 6.30 и более поздних версиях.

Заголовок

Ntddndis.h (include Ndis.h)

См. также


MiniportInitializeEx

NDIS_OID_REQUEST

NDIS_NIC_SWITCH_PARAMETERS

NdisMEnableVirtualization

OID_NIC_SWITCH_ALLOCATE_VF

OID_NIC_SWITCH_CREATE_VPORT