第1章 SNMP概述 1
1.1历史背景 1
1.2基础知识 2
1.2.1 SNMPv 1的组成 3
1.2.2 SNMP系统框架与安全机制 4
1.2.3 Trap消息 5
1.2.4 SNMP与UDP 5
1.3管理信息库和管理信息结构 6
1.3.1管理信息库 6
1.3.2管理信息结构 7
1.4简单网络管理协议 7
本章小结 8
第2章 抽象语法标记基础 9
2.1 ASN.1初步 9
2.1.1什么是ASN.1 9
2.1.2巴柯斯范式 10
2.1.3类型和值 10
2.1.4命名约定与特殊符号 13
2.1.5 ASN.1模块 13
2.1.6宏定义 14
2.1.7对象标识符 16
2.2基本编码规则(Basic Encoding Rules) 17
2.2.1一般原则 17
2.2.2编码举例 20
2.3综合实例 21
2.3.1模块定义 21
2.3.2编码分析 22
本章小结 24
第3章 管理信息结构 25
3.1对象标识与结构 25
3.1.1管理信息与被管理对象 25
3.1.2对象标识与语法 26
3.2被管理对象 27
3.2.1定义被管理对象 27
3.2.2标量对象和表 29
3.3模块定义分析 30
3.4改进的宏定义 32
本章小结 35
第4章 简单网络管理协议 36
4.1 SNMP消息格式 36
4.1.1辅助类型定义 37
4.1.2 GetRequest PDU 38
4.1.3 GetNextRequest PDU 39
4.1.4 SetRequest PDU 40
4.1.5 GetReponse PDU 41
4.1.6 Trap PDU 41
4.2 SNMP分析 42
4.2.1环境 42
4.2.2 Get操作 43
4.2.3 GetNext操作 46
4.2.4 Set操作 47
4.2.5 Trap 50
4.3 Trap宏定义 50
4.3.1宏定义 50
4.3.2标准Trap定义示例 52
4.3.3扩展Trap定义示例 53
第5章 管理信息库MIB 55
5.1 MIB基础 55
5.1.1文本约定 55
5.1.2文件结构 56
5.2被管理对象 57
5.2.1对象组织 57
5.2.2定义表 58
5.2.3标识对象实例 59
5.3被管理对象剖析 60
5.3.1宏子句 60
5.3.2被管理对象举例 62
5.4 MIB-II 62
5.4.1 system组 63
5.4.2 interfaces组 64
5.4.3 at组 65
5.4.4 ip组 65
5.4.5 icmp组 65
5.4.6 tcp组 66
5.4.7 udp组 66
5.4.8 egp组 67
5.4.9 transmission组 67
5.4.10 snmp组 67
本章小结 67
第6章 管理信息结构SMIv2 69
6.1 SMIv2 69
6.1.1信息模块 69
6.1.2数据类型 70
6.1.3 OBJECT-TYPE宏 70
6.1.4 MODULE-IDENTITY宏 73
6.1.5 OBJECT-IDENTITY宏 74
6.1.6 NOTIFICATION-TYPE宏 74
6.2文本约定 75
6.2.1 TEXTUAL-CONVENTION宏 75
6.2.2文本约定宏举例 77
6.3 MIB一致性陈述 78
6.3.1 OBJECT-GROUP宏 78
6.3.2 NOTIFICATION-GROUP宏 79
6.3.3 MODULE-COMPLIANCE宏 80
6.3.4 AGENT-CAPABILITIES宏 83
本章小结 86
第7章 Windows环境下SNMP编程 87
7.1 SNMP编程特点 87
7.1.1 SNMP编程的主要工作 87
7.1.2 SNMP变量 88
7.1.3 MIB表的操作 89
7.2 SNMP++软件包简介 89
7.2.1 SNMP++组成文件 90
7.2.2编译SNMP++软件包 91
7.3 SNMP++软件包中的类介绍 92
7.3.1数据类型类 93
7.3.2 Vb类 95
7.3.3 Pdu类 97
7.3.4 Snmp Target类 98
7.3.5 Snmp类 99
7.4其他注意事项 100
7.4.1编译链接 100
7.4.2内存泄露问题 101
第8章 MIB浏览器 103
8.1相关知识 106
8.1.1 MIB文件关键字 106
8.1.2辅助节点 107
8.1.3叶节点 109
8.1.4字符串处理函数 110
8.1.5读入行的预处理 111
8.1.6 MIB节点信息的存储 111
8.1.7保存已装载MIB文件信息 112
8.1.8顶端节点 113
8.1.9定位Tree Control节点 113
8.2程序实现 113
8.2.1模块设计 113
8.2.2建立并配置工程文件 114
8.2.3加载MIB文件模块实现 118
8.2.4操作命令响应模块实现 131
8.2.5辅助功能模块的实现 141
8.2.6编译链接 148
第9章 监视广域网通信线路 150
9.1相关知识 152
9.1.1点到点线路 153
9.1.2帧中继线路 153
9.2相关Trap和被管理对象分析 153
9.2.1 Trap定义 154
9.2.2 LinkDown Trap 154
9.2.3 LinkUp Trap 155
9.2.4 PVC状态变化Trap 155
9.2.5 MIB-II的interfaces组 156
9.2.6帧中继相关的被管理对象 158
9.2.7其他对象定义 160
9.3程序实现 162
9.3.1模块设计 162
9.3.2建立并配置工程文件 164
9.3.3系统托盘模块实现 166
9.3.4设备扫描模块实现 167
9.3.5 Trap接收与处理模块实现 177
9.3.6辅助功能模块实现 181
第10章 测量广域网线路数据流量 183
10.1相关知识 186
10.1.1点到点线路的带宽 186
10.1.2帧中继线路的带宽 186
10.1.3利用SNMP测量数据流量 186
10.1.4流量以及带宽利用率计算公式 187
10.2相关被管理对象定义 188
10.3程序实现 189
10.3.1模块设计 189
10.3.2建立并配置工程文件 191
10.3.3设备扫描模块实现 193
10.3.4流量数据采样模块实现 196
10.3.5流量数据实时显示模块实现 201
10.3.6数据分析模块实现 213
10.3.7辅助功能模块实现 215
第11章 监控网络设备性能 216
11.1相关知识 218
11.1.1交换机 218
11.1.2路由器 219
11.1.3服务器 220
11.2相关被管理对象分析 222
11.2.1 CISCO有关的MIB文件 222
11.2.2 Windows 2000系统 225
11.3程序实现 226
11.3.1模块设计 226
11.3.2建立并配置工程文件 227
11.3.3辅助功能模块实现 228
11.3.4配置、扫描模块实现 230
11.3.5数据采集模块实现 233
11.3.6数据处理模块实现 235
第12章 自动探测网络拓扑 237
12.1相关知识 239
12.1.1探测网络拓扑的一般方法 239
12.1.2 Cisco Discovery Protocol 239
12.2相关被管理对象分析 241
12.3程序实现 246
12.3.1模块设计 246
12.3.2建立并配置工程文件 249
12.3.3界面模块实现 252
12.3.4拓扑连接信息获取模块实现 254
12.3.5拓扑图形绘制模块实现 261
12.3.6图形修正模块实现 265
12.3.7辅助功能模块实现 268
第13章 基于VLAN的局域网管理 270
13.1相关知识 272
13.1.1虚拟局域网(VLAN) 273
13.1.2 Trunk端口 273
13.1.3 VTP协议 274
13.1.4 VTP修剪和Trunk链路上清除VLAN 275
13.1.5 ARP协议 275
13.2相关被管理对象分析 276
13.2.1 CISCO-VTP-MIB 276
13.2.2 CISCO-VLAN-MEMBERSHIP-MIB 279
13.2.3 BRIDGE-MIB 279
13.3 MIB表中行的创建与删除 282
13.3.1 VLAN编辑控制表 282
13.3.2 VLAN编辑表 285
13.4程序实现 287
13.4.1模块设计 287
13.4.2配置工程文件 289
13.4.3获取VLAN信息模块实现 294
13.4.4获取交换机端口信息模块实现 297
13.4.5配置VLAN模块实现 304
13.4.6辅助功能模块实现 307
第14章 基于地址的IP数据流量统计 309
14.1相关知识 311
14.1.1基于MAC地址的流量统计 311
14.1.2基于IP地址的流量统计 312
14.2相关被管理对象分析 312
14.2.1 CISCO-IP-STAT-MIB 313
14.2.2 OLD-CISCO-IP-MIB 314
14.3程序实现 316
14.3.1模块划分 316
14.3.2建立并配置工程文件 317
14.3.3接口扫描模块实现 318
14.3.4流量统计模块实现 319
14.3.5图表显示模块实现 323
14.3.6辅助功能模块实现 332
附录A 文本约定RowStatus 333
A.1文本约定RowStatus 333
A.1.1创建概念行 335
A.1.2概念行挂起 337
A.1.3概念行删除 337
A.2应用举例 338
附录B Cisco网络产品的SNMP支持 340
B.1配置SNMP 340
B.1.1启用SNMP 340
B.1.2配置MIB视图 340
B.1.3配置SNMP Trap 341
B.1.4其他命令 342
B.2其他问题 342
B.2.1网络接口索引值 342
B.2.2 SNMP引起 CPU利用率过高 343
B.2.3对象sysObjectID实例值 343