前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >速读原著-TCP/IP(ASN.1和BER)

速读原著-TCP/IP(ASN.1和BER)

作者头像
cwl_java
发布2020-03-17 10:56:31
8990
发布2020-03-17 10:56:31
举报
文章被收录于专栏:cwl_Java

第25章 SNMP: 简单网络管理协议

25.11 ASN.1和BER

在正式的S N M P规范中都是采用A S N . 1(Abstract Syntax Notation 1)语法,并且在S N M P报文中比特的编码采用 B E R(Basic Encoding Rule)。和其他介绍S N M P的书不同,我们有目的地把A S N . 1和B E R的讨论放到最后。因为如果放在前面讨论,有可能使读者产生混淆而忽略了S N M P的真正目的是进行网络管理。在这里我们也只是对这两个概念简单地进行解释, [Rose 1990]的第8章详细讨论了A S N . 1和B E R。

A S N . 1是一种描述数据和数据特征的正式语言。它和数据的存储及编码无关。 M I B和S N M P报文中的所有的字段都是用 A S N . 1描述的。例如:对于 S M I中的i p A d d r e s s数据类型,A S N . 1是这样描述的:

代码语言:javascript
复制
IpAddress ::=
[APPLICATION 0] -- in network-byte order
IMPLICIT OCTET STRING (SIZE (4))

同样,在M I B中,简单变量的定义是这样描述的:

在这里插入图片描述
在这里插入图片描述

用S E Q U E N C E和SEQUENCE OF来定义表格的描述更加复杂。

当有了这样的A S N . 1定义,可以有多种编码方法把数据编码为传输的比特流。 S N M P使用的编码方法是B E R。例如,对于一个简单的整数如 6 4,在B E R中需要用3个字节来表示。第一个字节说明类型是一个整数,下个字节说明用了多少个字节来存储该整数(在这里是 1),最后一个字节才是该整数的值。

幸运的是,A S N . 1和B E R这两个繁琐的概念仅仅在实现 S N M P的时候才重要,对我们理解网络管理的概念和流程并没有太大的关系。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/03/13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第25章 SNMP: 简单网络管理协议
    • 25.11 ASN.1和BER
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档