SNMP报文解析_WL 下载本文

SNMP-NTCIP报文解析

1. 引言

简单网络管理协议(SNMP)在RFC 1157中定义,SNMP可以在传输层采用各种各样的协议,但是使用最多的还是UDP协议。 2. 协议概述

SNMP到目前为止一共有三个版本,当下使用最广泛的是SNMPv2。 SNMP由三部分组成::SNMP内核、管理信息结构SMI和管理信息库MIB。 2.1. 工作原理

SNMP应用场景:

图1 SNMP的应用场景

管理站和代理端使用MIB进行接口统一,MIB定义了设备中的被管理对象。管理站和代理都实现相应的MIB对象,使得双方可以识别对方的数据,实现通信。管理站向代理请求MIB中定义的数据,代理端识别后,将管理设备提供的相关状态或参数等数据转换成MIB定义的格式,最后将该信息返回给管理站,完成一次管理操作

2.2. 管理信息结构 SMI

管理信息结构SMI一共有三个功能:被管对象命名、存储被管对象的数据类型、网络上传送的管理数据的编码。

被管对象的命名都在对象命名树上,处在该树的某个分支或者节点,如下图所示:

被管对象的数据结构,包括简单类型和结构化类型:

类型 长度 说明

被管对象的编码(TLV编码方式):

2.2.1. T字段

T字段为1个字节,分别为类别(2),格式(1)和编号(5),T字段的各部分含义如下表所示:

名称 长度(bit) 说明 00:通用类 01:应用类 10:上下文类 11:专用类 0:简单结构 1:结构化类型 表示不同的数据类型,取值0~30,支持31中数据类型 类别 2 格式 编号 1 5

数据类型定义如下:

数据类型 Integer Octet String Object Identifier Null Sequence and Sequence of IPAddress Counter Gauge TimeTicks Opaque 类别 00 00 00 00 00 01 01 01 01 01 格式 0 0 0 0 1 0 0 0 0 0 编号 00010 00100 00110 00101 10000 00000 00001 00010 00011 00100 T字段 0x02 0x04 0x06 0x05 0x30 0x40 0x41 0x42 0x43 0x44 2.2.2. L字段

L字段称为长度字段(表示单字节或者多字节),表示方法如下: