Сопоставление сетевых интерфейсов NDIS с идентификаторами NDIS

Чтобы отвечать на запросы объектов интерфейса NDIS, поставщики интерфейсов NDIS могут кэшировать информацию, полученную от базовых драйверов, а также выдавать запросы OID для получения сведений о базовых интерфейсах.

Как поставщик прокси-интерфейса NDIS обычно кэширует получаемые сведения об адаптерах минипорта и модулях фильтрации. Поставщик прокси-интерфейса NDIS использует кэшированные сведения, если это необходимо, для ответа на запросы интерфейса. В некоторых случаях поставщик прокси-интерфейса NDIS выдает идентификаторы OID для получения сведений об интерфейсах. Например, основной источник сведений об интерфейсе для NDIS 5. Драйверы x и более ранних версий выполняются через запросы OID. В драйверах NDIS 6.0 существуют дополнительные источники информации об интерфейсе, такие как NDIS_RESTART_ATTRIBUTES и структуры NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES . Дополнительные сведения об альтернативных источниках информации в идентификаторах OID см. на справочной странице для каждого объекта OID.

Поставщик прокси-интерфейса NDIS также создает некоторые сведения об интерфейсе от имени адаптеров мини-портов и модулей фильтров. Например, NDIS создает псевдоним интерфейса (ifAlias в RFC 2863) в ответ на запрос ifAlias . NDIS определяет дополнительные идентификаторы OID для получения таких сведений от поставщиков интерфейсов NDIS. Например, OID_GEN_ALIAS позволяет поставщику интерфейса указать объект ifAlias . Такие идентификаторы OID относятся к поставщикам интерфейсов и никогда не используются для получения информации от других драйверов NDIS.

Помимо идентификаторов OID, относящихся к поставщикам интерфейсов, поставщики интерфейсов должны поддерживать другие идентификаторы NDIS, которые NDIS может использовать для получения сведений об интерфейсе. NDIS может выдать эти идентификаторы OID поставщику, а поставщик может выдать эти идентификаторы OID, если это необходимо, для сбора информации из базовых интерфейсов.

Примечание NDIS определяет дополнительную статистику, которая не включена в RFC 2863. Список, сопоставляющий все статистические данные интерфейса, поддерживаемые NDIS, с идентификаторами OID, см. в разделе Элементы структуры NDIS_INTERFACE_INFORMATION . В таблице в этом разделе определяется сопоставление статистики, определенной в спецификации RFC 2863, для читателей, пытающихся связать спецификацию с реализацией NDIS.

В следующей таблице показано сопоставление объектов, определенных в базе данных управления (MIB), с идентификаторами NDIS 6.0 и OID, которые NDIS может использовать для получения информации из NDIS 5. Драйверы x и более ранних версий. Таблица также содержит некоторые дополнительные объекты интерфейса, которые не определены как объекты MIB. Объекты интерфейса также соответствуют членам структуры NDIS_INTERFACE_INFORMATION , связанной с OID_GEN_INTERFACE_INFO OID.

Примечание Идентификаторы NDIS 6.0 в таблице, помеченные префиксом звездочки (*), относятся к поставщикам интерфейсов. Другие идентификаторы OID NDIS 6.0 могут быть выданы поставщикам интерфейсов и другим драйверам NDIS.

Значение MIB интерфейсов Идентификаторы NDIS 6.0 Идентификаторы NDIS 5.x и более ранних версий

ifAdminStatus

* OID_GEN_ADMIN_STATUS

ifAlias

* OID_GEN_ALIAS

ifCounterDiscontinuityTime

* OID_GEN_DISCONTINUITY_TIME

ifHCInBroadcastPkts

OID_GEN_BROADCAST_FRAMES_RCV

OID_GEN_BROADCAST_FRAMES_RCV

ifHCInMulticastPkts

OID_GEN_MULTICAST_FRAMES_RCV

OID_GEN_MULTICAST_FRAMES_RCV

ifHCInOctets

OID_GEN_BYTES_RCV

NDIS добавляет результаты из этих идентификаторов OID, чтобы получить значение ifHCInOctets из NDIS 5. Драйверы x :

OID_GEN_DIRECTED_BYTES_RCV+

OID_GEN_MULTICAST_BYTES_RCV+

OID_GEN_BROADCAST_BYTES_RCV

Поставщики интерфейсов NDIS 6.0 также должны поддерживать эти идентификаторы OID.

ifHCInUcastPkts

OID_GEN_DIRECTED_FRAMES_RCV

OID_GEN_DIRECTED_FRAMES_RCV

ifHCOutBroadcastPkts

OID_GEN_BROADCAST_FRAMES_XMIT

OID_GEN_BROADCAST_FRAMES_XMIT

ifHCOutMulticastPkts

OID_GEN_MULTICAST_FRAMES_XMIT

OID_GEN_MULTICAST_FRAMES_XMIT

ifHCOutOctets

OID_GEN_BYTES_XMIT

NDIS добавляет результаты из этих идентификаторов OID, чтобы получить значение ifHCInOctets из NDIS 5. Драйверы x :

OID_GEN_DIRECTED_BYTES_XMIT+

OID_GEN_MULTICAST_BYTES_XMIT+

OID_GEN_BROADCAST_BYTES_XMIT

Поставщики интерфейсов NDIS 6.0 также должны поддерживать эти идентификаторы OID.

ifHCOutUCastPkts

OID_GEN_DIRECTED_FRAMES_XMIT

OID_GEN_DIRECTED_FRAMES_XMIT

ifHighSpeed

* OID_GEN_LINK_SPEED_EX, * OID_GEN_XMIT_LINK_SPEED, * OID_GEN_RCV_LINK_SPEED

OID_GEN_LINK_SPEED

ifInDiscards

OID_GEN_RCV_DISCARDS

ifInErrors

OID_GEN_RCV_ERROR

OID_GEN_RCV_ERROR

ifLastChange

* OID_GEN_LAST_CHANGE

ifMtu

OID_GEN_MAXIMUM_FRAME_SIZE

OID_GEN_MAXIMUM_FRAME_SIZE

ifOperStatus

* OID_GEN_OPERATIONAL_STATUS

ifOutDiscards

OID_GEN_XMIT_DISCARDS

OID_GEN_XMIT_DISCARDS

ifOutErrors

OID_GEN_XMIT_ERROR

OID_GEN_XMIT_ERROR

ifPhysAddress

OID_802_3_CURRENT_ADDRESS

OID_802_3_CURRENT_ADDRESS

ifPromiscuousMode

* OID_GEN_PROMISCUOUS_MODE

Неприменимо

OID_802_3_PERMANENT_ADDRESS

OID_802_3_PERMANENT_ADDRESS

Неприменимо

* OID_GEN_INTERFACE_INFO

Неприменимо

* OID_GEN_MEDIA_CONNECT_STATUS_EX

Неприменимо

* OID_GEN_MEDIA_DUPLEX_STATE

Неприменимо

OID_GEN_STATISTICS