将 NDIS 网络接口映射到 NDIS OID
为了响应 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 OID。 NDIS 可以向提供程序发布这些 OID,而提供程序也可以在必要时发布这些 OID,以便从机场接口收集信息。
注意 NDIS 定义 RFC 2863 中未包含的其他统计信息。 有关将所有 NDIS 支持的接口统计信息映射到 OID 的列表,请参阅 NDIS_INTERFACE_INFORMATION 结构的成员。 本主题中的表格定义了 RFC 2863 规范中定义的统计信息的映射,以便读者将该规范与 NDIS 实现联系起来。
下表显示了从管理信息库 (MIB) 中定义的对象到 NDIS 6.0 OID 的映射,以及到 NDIS 可能用来从 NDIS 5.x 和早期驱动程序获取信息的 OID 的映射。 该表还包括一些未定义为 MIB 对象的其他接口对象。 接口对象还与 NDIS_INTERFACE_INFORMATION 结构中的成员相对应,该结构与 OID_GEN_INTERFACE_INFO OID 相关联。
注意 表中标有星号 (*) 前缀的 NDIS 6.0 OID 特定于接口提供程序。 可将其他 NDIS 6.0 OID 发布给接口提供程序以及其他 NDIS 驱动程序。
接口 MIB 值 | NDIS 6.0 OID | NDIS 5.x 及更早版本的 OID |
---|---|---|
ifAdminStatus |
||
ifAlias |
||
ifCounterDiscontinuityTime |
||
ifHCInBroadcastPkts |
OID_GEN_BROADCAST_FRAMES_RCV |
|
ifHCInMulticastPkts |
OID_GEN_MULTICAST_FRAMES_RCV |
|
ifHCInOctets |
NDIS 添加这些 OID 的结果,以收集来自 NDIS 5.x 驱动程序的 ifHCInOctets 值: NDIS 6.0 接口提供程序也应支持这些 OID。 |
|
ifHCInUcastPkts |
OID_GEN_DIRECTED_FRAMES_RCV |
|
ifHCOutBroadcastPkts |
OID_GEN_BROADCAST_FRAMES_XMIT |
|
ifHCOutMulticastPkts |
OID_GEN_MULTICAST_FRAMES_XMIT |
|
ifHCOutOctets |
NDIS 添加这些 OID 的结果,以收集来自 NDIS 5.x 驱动程序的 ifHCInOctets 值: NDIS 6.0 接口提供程序也应支持这些 OID。 |
|
ifHCOutUCastPkts |
OID_GEN_DIRECTED_FRAMES_XMIT |
|
ifHighSpeed |
* OID_GEN_LINK_SPEED_EX、* OID_GEN_XMIT_LINK_SPEED、* OID_GEN_RCV_LINK_SPEED |
|
ifInDiscards |
||
ifInErrors |
OID_GEN_RCV_ERROR |
|
ifLastChange |
||
ifMtu |
OID_GEN_MAXIMUM_FRAME_SIZE |
|
ifOperStatus |
||
ifOutDiscards |
OID_GEN_XMIT_DISCARDS |
|
ifOutErrors |
OID_GEN_XMIT_ERROR |
|
ifPhysAddress |
OID_802_3_CURRENT_ADDRESS |
|
ifPromiscuousMode |
||
不适用 |
OID_802_3_PERMANENT_ADDRESS |
|
不适用 |
||
不适用 |
||
不适用 |
||
不适用 |