SNMP协议分析软件设计
2017-04-13孟开元杨海超曹庆年
孟开元,杨海超,曹庆年
(西安石油大学 计算机学院,陕西 西安 710065)
SNMP协议分析软件设计
孟开元,杨海超,曹庆年
(西安石油大学 计算机学院,陕西 西安 710065)
在探讨SNMP协议的体系结构、协议规范、协议ASN.1描述和BER编码的基础上,基于VC++平台设计并开发了SNMP协议分析软件。软件划分为3个功能模块:数据包捕获与过滤模块、SNMP数据包解析模块、SNMP PDU结构分解与显示模块。首先论述了利用Socket技术捕获数据包的方法,给出了数据包捕获与UDP数据包过滤的实现;然后在分析SNMP协议ASN.1描述和BER编码的基础上,实现了SNMP PDU字段类型的解析;最后,以合理的方式对协议字段组织结构进行了显示。经过测试,系统功能正确,运行良好。
SNMP;BER;协议分析
0 引言
简单网络管理协议是基于TCP/IP协议族的网络管理标准,用来对通信线路进行管理,它由一组网络管理的标准组成,包含一个应用层协议(application layer protocol)、数据库模型(database schema)和一组资源对象[1],有3个版本,分别是SNMPv1、SNMPv2、SNMPv3。它的基本功能包括监视网络性能、检测分析网络差错和配置网络设备等[2]。
SNMP协议主要包括3个部分:SNMP、SMI及MIB。SNMP系统采用客户/服务器工作模式。图1为SNMP系统基本结构。

图1 SNMP系统基本结构
SNMP系统包括两个组成部分:SNMP管理器与SNMP代理。其中,SNMP管理器(SNMP Manager)是运行在网管工作站中的管理进程,它是大多数SNMP请求(不包括告警)的发起者;SNMP代理(SNMP Agent)是运行在网络设备中的管理进程,它是大多数SNMP请求(不包括告警)的响应者。每种SNMP请求对应一种具体的网络操作,实际上是对网络管理信息的读或者写操作,而管理信息都保存在代理的MIB中。……
