[发明专利]一种在通讯网络中实现编解码的方法有效
| 申请号: | 200610105152.3 | 申请日: | 2006-12-13 |
| 公开(公告)号: | CN101202736A | 公开(公告)日: | 2008-06-18 |
| 发明(设计)人: | 赖龙;余宏钊;段保平 | 申请(专利权)人: | 西安大唐电信有限公司 |
| 主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L1/00;G10L19/00 |
| 代理公司: | 西安西达专利代理有限责任公司 | 代理人: | 张军 |
| 地址: | 710075陕*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 通讯 网络 实现 解码 方法 | ||
技术领域:
本发明涉及数据通信技术领域,特别是涉及一种网络通讯系统中实现信息传递时的编解码的方法。
背景技术:
ASN.1(Abstract Syntax Notation One抽象语法标记)是一种独立于机器的描述语言,用于描述在网络上传递的消息,特别是广泛应用于移动网络通讯系统中的各种协议的传输。例如RANAP(Radio Access NetworkApplication Part无线接入网络应用部分)协议、MAP(Mobile ApplicationPart移动应用部分)协议、H.248协议等。ASN.1的编码方式能够快速并可靠的传输可扩展信息——这是无线带宽的一个优势。由于从1982年以后ASN.1已经成为一个国际标准,所以它的编码规则是成熟的并且它有长期的可靠性和互用性的跟踪记录。ASN.1的数据类型包括:1、简单数据类型:是ASN.1中规定的不包含子结构的数据类型,例如:Integer,Boolean,Bit String(比特串类型)等;2、结构数据类型:是ASN.1中规定的包含子结构的数据类型,例如:Sequence(序列类型),Set(集合类型),Choice(选择类型)等。
然而,ASN.1编解码是一个很费时费工的工作,目前多数的ASN.1编解码方式是针对协议的,需要对于不同的协议以及不同的消息内容编写不同的编解码程序,当协议发生改变时,编解码程序也必须进行相应的修改,不同版本协议的编解码程序也存在较大的区别,这些都增加了编写编解码程序员的工作量以及程序出错的几率。
已公开中国专利申请:用于抽象语法表示法高层应用的编解码方法(公开号:1635763A,申请号:200310104144.3)也提供了一种通用的编解码方法,编码过程如下:根据高层应用协议基于ASN.1的数据类型和关系,构建编码格式串,利用格式串生成相应空值的二叉树结构,然后根据需要参照应用的操作编码定义向结构中插值,最后遍历二叉树生成二进制信息流数据;解码过程如下:根据编码格式串生成收到ASN.1编码信息的二叉树数据结构,然后根据二叉树的遍历的反向过程解码,并把数据赋给数据结构中,业务逻辑再通过二叉树的节点查询来取得数据信息。但该方法的信息编码格式串的定义方法未加说明及应用层使用数据时需要查询二叉树才能获取数据,致使应用层使用复杂,不方便。
发明内容:
本发明的目的就是利用词法语法分析工具,提供一种针对结构的统一编解码方法,解决上述现有技术中存在的技术问题。本发明的方法适用于所有通讯网络中需要进行编解码的协议。
为了达到上述目的,本发明提供以下技术方案:
一种在通讯网络中实现编解码的方法,包括以下步骤:
A、数据结构的定义:根据分析工具的要求和协议的描述,定义出协议中消息的结构,编码时由应用层填写结构中的数据,而解码时由编解码模块填写结构中的数据;
B、结构信息的生成:利用分析工具分析定义的结构,分析出消息中结构及参数的属性并记录到文件中,以供编解码模块调用;
C、编解码的调度:获取参数的信息,根据获得的信息进行数据结构的拆分和数值填写以及将结构数据类型分解成简单数据类型进行编解码;
D、简单类型的编解码:根据调度模块的调用进行简单数据类型的编解码。
本发明与现有技术相比具有以下特点:
本方法根据协议语法,针对不同的协议,定义应用层使用的头文件(即协议中消息的结构)。用分析工具来读取头文件,生成编解码需要的结构及参数信息。编解码模块根据这些信息以及通过信息获取的结构中参数地址和值进行编解码,编解码模块仅针对协议中的基本数据类型进行编解码,大幅降低程序开发维护的工作量以及难度。
程序员只需针对不同协议定义不同的数据结构,不必编写针对不同协议的不同编解码程序,所以本发明能够简单,快捷实现协议的编解码。
在编码方式不改变的情况下,当协议发生改变或协议升级版本时,无需重新编写编解码的程序,只需修改根据协议定义的数据结构的头文件,使得它更加灵活和具有扩展性。
根据协议定义的数据结构的头文件是按照协议来定义的,并根据协议的语法注释数据的属性,使得头文件更具可读性。
统一的编解码接口,编解码模块对外只提供两个接口函数(编码函数和解码函数),使得应用层不必关心编解码的内部实现机制。为程序的开发,升级提供了方便。
应用层使用数据时,只需从结构中获取数据或向结构中赋值,简化了应用层的使用。
附图说明:
图1是词法语法分析工具的原理图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安大唐电信有限公司,未经西安大唐电信有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200610105152.3/2.html,转载请声明来源钻瓜专利网。





