1.1 历史背景 1
第1章 SNMP概述 1
1.2 基础知识 2
1.2.1 SNMPvl的组成 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
1.5 本章小结 8
2.1.1 什么是ASN.1 9
第2章 抽象语法标记基础 9
2.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 编码分析 23
2.4 本章小结 25
第3章 管理信息结构 27
3.1 对象标识与结构 27
3.1.1 管理信息与被管理对象 27
3.1.2 对象标识与语法 27
3.2 被管理对象 29
3.2.1 定义被管理对象 29
3.2.2 标量对象和表 31
3.3 模块定义分析 32
3.4 改进的宏定义 34
3.5 本章小结 37
4.1 SNMP消息格式 39
第4章 简单网络管理协议 39
4.1.1 辅助类型定义 40
4.1.2 GetRequest PDU 41
4.1.3 GetNextRequest PDU 42
4.1.4 SetRequest PDU 43
4.1.5 GetReponse PDU 44
4.1.6 Trap PDU 44
4.2 SNMP协议分析 45
4.2.1 环境 45
4.2.2 Get操作 46
4.2.3 GetNext操作 49
4.2.4 Set操作 50
4.2.5 Trap 53
4.3 Trap宏定义 53
4.3.1 宏定义 54
4.3.2 标准Trap定义示例 55
4.3.3 扩展Trap定义示例 56
4.4 本章小结 58
第5章 管理信息库 59
5.1 MIB基础 59
5.1.1 文本约定 59
5.1.2 文件结构 60
5.2 被管理对象 61
5.2.1 对象组织 61
5.2.2 定义表 62
5.2.3 标识对象实例 64
5.3 被管理对象剖析 64
5.3.1 宏子句 65
5.3.2 被管理对象举例 66
5.4 使用SMIv2定义的MIB 67
5.4.1 主要内容 67
5.4.2 信息模块 67
5.4.3 OBJECT-TYPE宏 68
5.4.4 MODULE-IDENTITY宏 69
5.4.5 OBJECT-IDENTITY宏 71
5.4.6 NOTIFICATION-TYPE宏 71
5.4.7 TEXTUAL-CONVENTION宏 72
5.4.8 OBJECT-GROUP宏 74
5.4.9 NOTIFICATION-GROUP宏 75
5.4.10 MODULE-COMPLIANCE宏 76
5.4.11 AGENT-CAPABILITIES宏 79
5.5 本章小结 82
第6章 Windows环境下SNMP编程 83
6.1 SNMP编程特点 83
6.1.1 SNMP编程的主要工作 83
6.1.2 SNMP变量 84
6.1.3 MIB表的操作 85
6.2 SNMP++软件包简介 85
6.2.1 SNMP++组成文件 86
6.2.2 编译SNMP++软件包 86
6.3 SNMP++软件包中的类介绍 88
6.3.1 数据类型类 89
6.3.2 Vb类 91
6.3.3 Pdu类 93
6.3.4 SnmpTarget类 94
6.3.5 Snmp类 95
6.4 其他注意事项 96
6.4.1 编译链接 96
6.4.2 内存泄露问题 97
第7章 MIB浏览器 99
7.1 相关知识 102
7.1.1 MIB文件关键字 102
7.1.2 辅助节点 103
7.1.3 叶节点 105
7.1.4 字符串处理函数 106
7.1.5 读入行的预处理 107
7.1.6 MIB节点信息的存储 108
7.1.9 定位Tree Control节点 109
7.1.8 顶端节点 109
7.1.7 保存已装载MIB文件信息 109
7.2 程序实现 110
7.2.1 模块设计 110
7.2.2 建立并配置工程文件 110
7.2.3 加载MIB文件模块实现 115
7.2.4 操作命令响应模块实现 130
7.2.5 辅助功能模块的实现 142
7.2.6 编译链接 150
第8章 监视广域网通信线路 153
8.1 相关知识 155
8.2.1 Trap定义 156
8.2 相关Trap和被管理对象分析 156
8.1.2 帧中继线路 156
8.1.1 点到点线路 156
8.2.2 LinkDown Trap 157
8.2.3 LinkUp Trap 158
8.2.4 PVC状态变化Trap 158
8.2.5 MIB-II的interfaces组 158
8.2.6 帧中继相关的被管理对象 161
8.2.7 其他对象定义 163
8.3 程序实现 165
8.3.1 模块设计 165
8.3.2 建立并配置工程文件 167
8.3.3 系统托盘模块实现 168
8.3.4 设备扫描模块实现 171
8.3.5 Trap接收与处理模块实现 182
8.3.6 辅助功能模块实现 187
第9章 测量广域网线路数据流量 189
9.1 相关知识 191
9.1.1 点到点线路的带宽 191
9.1.2 帧中继线路的带宽 191
9.1.3 利用SNMP测量数据流量 192
9.1.4 流量以及带宽利用率计算公式 192
9.2 相关被管理对象定义 193
9.3 程序实现 195
9.3.1 模块设计 195
9.3.2 建立并配置工程文件 197
9.3.3 设备扫描模块实现 198
9.3.4 流量数据采样模块实现 203
9.3.5 流量数据实时显示模块实现 208
9.3.6 数据分析模块实现 222
9.3.7 辅助功能模块实现 225
第10章 监控网络设备性能 227
10.1 相关知识 229
10.1.1 交换机 229
10.1.2 路由器 229
10.1.3 服务器 230
10.2 相关被管理对象分析 233
10.2.1 CISCO有关的MIB文件 233
10.2.2 Windows 2000系统 236
10.3 程序实现 238
10.3.1 模块设计 238
10.3.2 建立并配置工程文件 239
10.3.3 辅助功能模块实现 240
10.3.4 配置、扫描模块实现 241
10.3.5 数据采集模块实现 246
10.3.6 数据处理模块实现 247
第11章 自动探测网络拓扑 251
11.1 相关知识 253
11.1.1 探测网络拓扑的一般方法 253
11.1.2 Cisco Discovery Protocol 253
11.2 相关被管理对象分析 255
11.3 程序实现 260
11.3.1 模块设计 260
11.3.2 建立并配置工程文件 264
11.3.3 界面模块实现 267
11.3.4 拓扑连接信息获取模块实现 269
11.3.5 拓扑图形绘制模块实现 277
11.3.6 图形修正模块实现 282
11.3.7 辅助功能模块实现 286
第12章 基于VLAN的局域网管理 289
12.1 相关知识 291
12.1.1 虚拟局域网(VLAN) 292
12.1.2 Trunk端口 292
12.1.3 VTP协议 293
12.1.4 VTP修剪和Trunk链路上清除VLAN 294
12.1.5 ARP协议 294
12.2 相关被管理对象分析 295
12.2.1 CISCO-VTP-MIB 295
12.2.2 CISCO-VLAN-MEMBERSHIP-MIB 298
12.2.3 BRIDGE-MIB 299
12.3 MIB表中行的创建与删除 301
12.3.1 VLAN编辑控制表 302
12.3.2 VLAN编辑表 305
12.4 程序实现 307
12.4.1 模块设计 307
12.4.2 配置工程文件 310
12.4.3 获取VLAN信息模块实现 315
12.4.4 获取交换机端口信息模块实现 319
12.4.5 配置VLAN模块实现 327
12.4.6 辅助功能模块实现 330
第13章 基于地址的IP数据流量统计 333
13.1.2 基于IP地址的流量统计 335
13.1.1 基于MAC地址的流量统计 335
13.1 相关知识 335
13.2 相关被管理对象分析 336
13.2.1 CISCO-IP-STAT-MIB 337
13.2.2 OLD-CISCO-IP-MIB 339
13.3 程序实现 341
13.3.1 模块划分 341
13.3.2 建立并配置工程文件 342
13.3.3 接口扫描模块实现 343
13.3.4 流量统计模块实现 344
13.3.5 图表显示模块实现 348
13.3.6 辅助功能模块实现 359
附录A 文本约定RowStatus 361
附录B CISCO网络产品的SNMP支持 369