Управление сведениями о состоянии компонента пользовательского порта
Интерфейс расширяемого коммутатора Hyper-V использует следующий идентификатор объекта (OID) для запроса пользовательских сведений о состоянии порта расширяемого коммутатора. Эти сведения о состоянии называются сведениями о состоянии компонента порта :
OID_SWITCH_PORT_FEATURE_STATUS_QUERY
Этот запрос метода OID отправляется краем протокола расширяемого коммутатора для получения сведений о состоянии пользовательской функции для указанного свойства порта.
После успешного возврата из этого запроса метода OID элемент InformationBufferструктуры NDIS_OID_REQUEST содержит указатель на буфер. Этот буфер содержит следующие данные:
Структура NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS , указывающая возвращаемые сведения о состоянии настраиваемых компонентов.
Примечание Для состояния настраиваемого компонента элемент FeatureStatusType имеет значение NdisSwitchPortPropertyTypeCustom.
Структура NDIS_SWITCH_PORT_FEATURE_STATUS_CUSTOM , содержащая сведения о состоянии настраиваемого свойства, назначенного порту расширяемого коммутатора.
Когда ребро протокола расширяемого коммутатора выдает запрос OID_SWITCH_PORT_FEATURE_STATUS_QUERY , он задает элементы FeatureStatusCustomBufferLength и FeatureStatusCustomBufferOffset в расположение в элементе InformationBuffer , которое расширение может использовать для возврата сведений о состоянии функции.
Расширение расширяемого коммутатора должно соответствовать этим рекомендациям при получении запроса метода OID OID_SWITCH_PORT_FEATURE_STATUS_QUERY:
Расширение должно обрабатывать запрос OID, если оно управляет настраиваемым свойством порта расширяемого коммутатора, которое соответствует члену FeatureStatusIdструктуры NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS .
Если расширение обрабатывает запрос метода OID, оно должно возвращать сведения о состоянии компонента, соответствующие параметрам, указанным в структуре NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS .
Если буфер состояния функции слишком мал, расширение должно завершить запрос OID с NDIS_STATUS_INVALID_LENGTH. Расширение должно задать значение DATA. SET_INFORMATION. Элемент BytesNeeded в NDIS_OID_REQUEST структуру до минимального требуемого размера буфера.
В противном случае расширение должно вернуть сведения о состоянии функции и завершить запрос OID с NDIS_STATUS_SUCCESS.
Если расширение не управляет пользовательским свойством расширяемого коммутатора, оно должно вызвать NdisFOidRequest для пересылки запроса OID вниз по стеку драйвера расширяемого коммутатора.
Дополнительные сведения о переадресации запросов OID см. в разделе Фильтрация запросов OID в драйвере фильтра NDIS.
Дополнительные сведения о том, как определить и зарегистрировать сведения о состоянии компонента порта, см. в разделе Состояние компонента пользовательского порта.