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


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

Интерфейс расширяемого коммутатора 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.

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