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


Управление сведениями о состоянии функции пользовательского коммутатора

Интерфейс расширяемого коммутатора Hyper-V использует следующий идентификатор объекта (OID) для запроса пользовательских сведений о состоянии расширяемого коммутатора. Эти сведения о состоянии называются сведениями о состоянии функции коммутатора :

OID_SWITCH_FEATURE_STATUS_QUERY
Этот запрос метода OID отправляется краем протокола расширяемого коммутатора для получения сведений о состоянии пользовательской функции для указанного свойства коммутатора.

После успешного возврата из этого запроса метода OID элемент InformationBufferструктуры NDIS_OID_REQUEST содержит указатель на буфер. Этот буфер содержит следующие данные:

  • Структура NDIS_SWITCH_FEATURE_STATUS_PARAMETERS , указывающая возвращаемые сведения о состоянии настраиваемых компонентов.

    Примечание Для состояния настраиваемого компонента член FeatureStatusType имеет значение NdisSwitchPropertyTypeCustom.

  • Структура NDIS_SWITCH_FEATURE_STATUS_CUSTOM , содержащая сведения о состоянии настраиваемого свойства, назначенного порту расширяемого коммутатора.

    Когда граница протокола расширяемого коммутатора выдает запрос OID_SWITCH_FEATURE_STATUS_QUERY , он устанавливает элементы FeatureStatusCustomBufferLength и FeatureStatusCustomBufferOffset в расположение в элементе InformationBuffer , которое расширение может использовать для возврата сведений о состоянии функции.

Расширение расширяемого коммутатора должно следовать этим рекомендациям при получении запроса метода OID OID_SWITCH_FEATURE_STATUS_QUERY:

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

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

    Если буфер состояния функции слишком мал, расширение должно завершить запрос OID с NDIS_STATUS_INVALID_LENGTH. Расширение должно задать значение DATA. SET_INFORMATION. Элемент BytesNeeded в NDIS_OID_REQUEST структуру до минимального требуемого размера буфера.

    В противном случае расширение должно вернуть сведения о состоянии функции и завершить запрос OID с NDIS_STATUS_SUCCESS.

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

    Дополнительные сведения о переадресации запросов OID см. в разделе Фильтрация запросов OID в драйвере фильтра NDIS.

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