egpNeighborLoss TRAP-TYPE
ENTERPRISE snmp
VARIABLES { egpNeighAddr }
DESCRIPTION
"……"
::= 5
所以在宏的处理时有很大的难度 现在采用的方法是对已知的宏进行处理 其他定义的
宏 暂不处理.这些宏有:
1 OID 定义
<名称>OBJTCT INDENTIFIER = <OID>
在 OID 的定义里 包含着 MIB 层次结构的定义 即对 OID 的定义本身定出了 MIB 树
的结构 所以在构建 MIB 树的时候 主要是使用 OID 进行查找关联的
2 数据类型定义
<名称>::= <定义体>
可能用到的数据类型有
"INTEGER" "OCTET STRING","OBJECT IDENTIFIER","NULL",
"NetworkAddress","IpAddress","Counter","Gauge","TimeTicks", "Opaque", "Counter32"
"Integer32" "Gauge32","Unsigned32","Counter64","BITS", "ObjectName",
"DisplayString","PhysAddress","TestAndIncr", "TimeStamp", "ObjectSyntax" ,"RowStatus"
"MacAddress","DateAndTime","TimeInterval"
2
自定义数据类型
基于对 MIB 文件的认识我们在软件中定义以下对象 来处理不同的说明文字
1 MibNote
表示 Mib 节点的特性 分为两个方面 与本身有关的方面 与 MIB 树有关的方面 本
身有关主要是本身的名字 OID 叶子节点语法 访问策略 说明文字等 与 MIB 树有关
的性质是子节点列表 父节 MIB 模块的指针
2 LeafSyntax
对于的数据类型的解析处理 在叶子节点语法中进行处理
3 MibMacro
对于宏的定义和处理 在 MibMacro 中定义处理
4 MibTC
由 TEXTUAL-CONVENTION 定义的
5 MibTrap
对陷阱所使用的数据处理在 MibTRap 中处理
6 MibModule
对 MIB 模块的统一操作主要在该模块中定义 建立对 MIB 节点 叶子语法 宏 陷阱
NOTIFICATION 等的哈希表 并存储 MIB 树的根节点 这样来构成一个访问的体系
3 MIB
解析算法
这样 在数据定义之后 重要的工作将是建立 MIB 树和填充哈希表 MIB 中涉及到 OID
的定义结构都会产生 MibNote 的生成 在MibNode 的生成过程中 将在 MIB 表中查找它的
父节点 并把该 MibNote 加入到父节点的子节点列表中 并将该节点加入到 MIB 表中
语法的定义分析也是十分重要的地方 用于自定义数据结构必须能够解析 所以在
LeafSyntax 中进行解析 得到的新的类型对应一个新的 LeafSyntax 并添加到 LeafSyntax 表
中 对一定数据类型的引用实际上将在 LeafSyntax 表中查到
评论0
最新资源