Управление сведениями о состоянии функции пользовательского коммутатора
Интерфейс расширяемого коммутатора 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.
Дополнительные сведения о том, как определить и зарегистрировать сведения о состоянии функции коммутатора, см. в разделе Состояние компонента настраиваемого коммутатора.