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


OID_NIC_SWITCH_CREATE_SWITCH

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

NDIS отправляет этот запрос метода OID драйверу мини-порта физической функции (PF) сетевого адаптера PCI Express (PCIe). Этот запрос метода 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 miniport поддерживает создание и настройку статического коммутатора, он создает коммутатор сетевой карты, когда 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 используются для создания и удаления неотделимых виртуальных портов в коммутаторе сетевого адаптера.

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

    Дополнительные сведения о пространстве конфигурации SR-IOV см. в спецификации PCI-SIG Single Root I/O Virtualization and Sharing 1.1 .

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

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

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

  • В коммутаторе сетевого адаптера можно создать виртуальные порты, не являющиеся стандартными, с помощью запросов метода 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

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

NDIS_STATUS_FAILURE

Сбой запроса по другим причинам.

Требования

Версия

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

Заголовок

Ntddndis.h (включая Ndis.h)

См. также раздел


MiniportInitializeEx

NDIS_OID_REQUEST

NDIS_NIC_SWITCH_PARAMETERS

NdisMEnableVirtualization

OID_NIC_SWITCH_ALLOCATE_VF

OID_NIC_SWITCH_CREATE_VPORT