[发明专利]一种ASN.1报文面向对象的处理装置无效
| 申请号: | 200610161181.1 | 申请日: | 2006-12-11 |
| 公开(公告)号: | CN101202739A | 公开(公告)日: | 2008-06-18 |
| 发明(设计)人: | 张新平 | 申请(专利权)人: | 中兴通讯股份有限公司 |
| 主分类号: | H04L29/06 | 分类号: | H04L29/06 |
| 代理公司: | 北京安信方达知识产权代理有限公司 | 代理人: | 龙洪;霍育栋 |
| 地址: | 518057广东省深圳市南山*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 asn 报文 面向 对象 处理 装置 | ||
技术领域
本发明涉及一种ASN.1协议报文处理装置,特别涉及一种ASN.1报文面向对象的处理装置。
背景技术
ASN.1(抽象文法标记规范,Abstract Syntax Notation 1)是ITU定义的描述在网络上传输信息格式的标准规范,为节点间的数据转换提供标准格式。每个节点只关心从ASN.1翻译过来或翻译成ASN.1而不必知道数据存于网络任何处的格式。它有两部分:第一部份(ISO 8824/ITU X.208)描述信息内的数据、数据类型及序列格式,也就是数据的语法;第二部分(ISO8825/ITU X.209)描述如何将各部分数据组成消息,也就是数据的基本编码规则,原来是作为X.409的一部分而开发的,后来才独立地成为一个标准。第一代PKI(即公开密钥体系Public Key Infrastructure)标准主要是基于ASN.1的,在SNMP(简单网络管理协议)中它用于定义SNMP协议数据单元和对象的格式,被广泛应用于通信和计算机的其他领域。
使用ASN.1报文格式通信也就成为电信网管系统最常见的通信方式。
ASN.1报文具有如下特殊性质:
1.报文呈树状结构,可以根据需要定义较多层次的报文嵌套。
2.报文中某个节点的类型多种多样,可能为一个简单数据类型,比如INTEGER、GRAPHICSTRING,ENUM等等;也有可能为包含再下级节点的复合数据类型SET,SEQUENCE,SET OF,SEQUENCE OF。
3.在SET,SEQUENCE结构中,某个节点有可能不存在,因为对应报文节点允许设置为OPTIONAL,表示可有可无。
4.在使用ASN.1文件时,首先在ASN.1文件定义ASN.1结构,然后通过编译器编译成为中间程序语言结构,比如Java,C++语言。然后通过使用对应的程序语言结构,达到通信的目的。
5.ASN.1支持BER(基本编码规则,Basic Encoding Rules),DER(区分编码规则,Distinguished Encoding Rules),VAL(值编码规则,ASN.1valuenotation)等编码,可以将中间语言结构实例编码为码流,但是在从码流解码为中间语言结构实例时会有问题,首先要知道码流对应的结构,然后才能用该结构的解码方法解码,如果该结构中包括ANY类型(指不确定的类型),该类型数据还要通过其它成员字段确定其特定类型才能再进一步解码。
关于ASN.1报文在C/S类型软件中一般常用的方法是:
1.建立客户端与服务器端的连接;
2.客户端与服务器端进行协议交互:
a)报文发送方填写ASN.1报文头和报文体,报文头包括命令码,报文体采用ANY类型,其真实数据类型因命令码不同而不同;
b)报文发送方编码报文为字节流,发送给报文接受方;
c)报文接受方接受到报文字节流,解码报文头,然后根据其中的命令码,用特定数据类型解码报文体;
d)报文接受方根据报文的内容,作相应的响应;
3.交互结束,关闭连接。
在针对报文的接口测试工具中经常需要模拟报文,模拟报文有两种来源,一种是通过解释性脚本语言创建,另一种是通过持久化数据创建报文结构实例,进一步还要求可以修改该实例。而在应用程序中在有时候要求将报文持久化保存为文件或保存到数据库,并且从持久化报文中再现报文。并且希望文件中的数据是可读的,可以修改其中的数据。
通常在网管子系统中采用BER编码传输,BER码流由于其不可阅读,并且对还有ANY成员的数据类型,无法直接复原,这种格式不适合持久化保存报文;DER是一种编码唯一的BER,由于同样的原因不适合持久化保存报文。而VAL(ASN.1 VALue notation)格式是一种供人可读的名字值符号格式,利用“{”,“}”进行层嵌套树状标记结构,具有下面的特点:
1.对于非最外层节点采用“名字值”的格式,对于最外层根节点采用“数据结构类型名称值”的格式。
2.对于SET,SEQUENCE的值中数据采用“{”,“}”括起来,成员之间采用”,”分隔。
3.对于SET OF,SEQUENCE OF的值中数组数据采用“{”,“}”括起来,数组元素之间采用“,”分隔。
4.对于ANY的值中数据,如果ANY中数据是字节串,采用字节串的16进制显示.如果是特定的ASN.1数据类型,则采用“特定数据结构类型名称值”的格式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200610161181.1/2.html,转载请声明来源钻瓜专利网。





