CN101631126A - 一种自适应编码/解码方法和装置 - Google Patents
一种自适应编码/解码方法和装置 Download PDFInfo
- Publication number
- CN101631126A CN101631126A CN200910162474A CN200910162474A CN101631126A CN 101631126 A CN101631126 A CN 101631126A CN 200910162474 A CN200910162474 A CN 200910162474A CN 200910162474 A CN200910162474 A CN 200910162474A CN 101631126 A CN101631126 A CN 101631126A
- Authority
- CN
- China
- Prior art keywords
- avp
- information
- decoding
- code stream
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种自适应编码/解码的方法和装置,所述编码方法包括:接收待编码的应用相关信息,读取所述应用相关信息的消息结构,获取AVP的相关信息;根据所述AVP的相关信息查找预先生成的运行时编码配置表,获取与所述AVP相关信息对应的AVP配置信息;根据所述AVP配置信息,对所述AVP的相关信息进行合法性验证,在所述AVP的相关信息合法时,根据所述应用相关信息和AVP的相关信息组织生成Diameter消息码流。本发明提供的方法,通过编解码配置数据与具体应用接口的编解码实现分离,增加了协议实现的可扩展性,同时运行时编解码配置表可以动态获取、动态调整,满足不同运营商、不同应用接口等的需求。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种自适应编码/解码的方法和装置。
背景技术
Diameter协议在Radius协议的基础上发展成为下一代AAA(Authentication、Authorization、Accounting,身份验证、授权、统计)协议标准,正在被越来越广泛的使用。
Diameter协议族包含Diameter基本协议和一些扩展应用协议,如NAS(Network Access Server,网络接入服务)协议、EAP(Extensible AuthenticationProtocol,可扩展鉴别)协议、MIP(Mobile IP,移动IP)协议、CMS(CryptographicMessage Syntax,密码消息语法)协议、SIP(session initiation protocol,会话发起协议)应用协议等。此外,还允许各厂商根据需要对协议AVP进行扩展。
由于各种扩展应用的存在以及各厂商对协议的扩展,使得每一种特定场景下Diameter消息组成结构不同,甚至相同接口相同Diameter消息在不同应用下也略有差别,这就给版本兼容以及产品对接造成影响。
当前技术中,对于不同应用下相同Diameter消息包含不同AVP(AttributeValue Pair,属性值对)的情况,一般采取按照应用进行区分,根据消息结构不同提供与消息结构对应的编解码方案,如图1所示。
根据以上分析可以看出,这种处理方法虽然对于上层应用来说,可以满足自身对Diameter消息的处理需要,但是对于编解码部分来说,这部分代码需要根据新应用的扩展不断加以更新,不利于新应用对Diameter消息的扩展需要,不具有复用性,而且不同应用下多个相同Diameter消息的消息结构同时存在,容易造成混淆,出现错误。
发明内容
本发明提供一种自适应编码/解码方法和装置,用以解决现有技术中编解码过程不能自适应不同应用、不同接口、不同Diameter消息、不同厂商定义、不同版本等条件,从而导致消息定义不灵活、易产生冲突的问题。
本发明提供的一种自适应编码方法,包括:
接收待编码的应用相关信息,读取所述应用相关信息的消息结构,获取AVP的相关信息;
根据所述AVP的相关信息查找预先生成的运行时编码配置表,获取与所述AVP相关信息对应的AVP配置信息;
根据所述AVP配置信息,对所述AVP的相关信息进行合法性验证,在所述AVP的相关信息合法时,根据所述应用相关信息和AVP的相关信息组织生成Diameter消息码流。
其中,所述应用相关信息包括:应用ID号、Diameter消息码、Diameter消息长度、待编码的消息结构和开始位置信息;
所述运行时编码配置表包括:应用的配置信息、Diameter消息的配置信息和AVP的配置信息。
本发明提供的编码方法进一步具有以下特点:
所述运行时编码配置表通过如下方式生成:
读取需要编码的文档,根据Diameter协议的扩展巴克斯范式规则选取各接口应用的消息和相关AVP信息,并将所述应用的消息和相关AVP信息转化为标准文件;
将所述标准文件传输到网管系统前台,通过前台相关进程将所述标准文件转化为二进制码流后存储在前台内存区中;
利用Diameter协议数据配置管理进程读取所述内存区中的二进制码流,并按照消息组成格式将所述二进制码流转化为编码配置表;
利用Diameter协议进程根据项目支持的应用从所述编码配置表中读取数据重新组织为运行时编码配置表。
其中,所述网管系统前台接收到AVP调整命令时,通知所述Diameter协议数据配置管理进程修改所述编码配置表,并在所述编码配置表修改完成后,利用所述Diameter协议进程同步相关调整到所述运行时编码配置表。
具体的,所述编码方法中,根据所述应用相关信息和AVP的相关信息组织生成Diameter消息码流具体为:
根据所述应用相关信息生成Diameter消息头码流,根据所述AVP的相关信息,生成AVP码流,将所述Diameter消息头码流和所有AVP码流合并组织成Diameter消息码流。
本发明还提供一种自适应解码方法,包括:
接收待解码的Diameter消息码流后,解析所述码流头部信息,获取解码所需相关参数;
根据所述获取的相关参数查找预先生成的运行时解码配置表,获取AVP配置信息;
根据所述AVP配置信息,对所述Diameter消息码流中的AVP码流进行合法性验证,在所述AVP码流合法时,将所述AVP码流对应的AVP相关信息填写到根据所述AVP配置信息和解码所需相关参数计算出的AVP信息存放绝对位置。
其中,所述解码所需相关参数包括:应用ID、Diameter消息码、Diameter消息长度信息、Diameter消息码流开始位置信息和解码后消息结构存放开始位置信息。
进一步的,所述运行时解码配置表通过如下方式生成:
读取需要解码的文档,根据Diameter协议的扩展巴克斯范式规则选取各接口应用的消息和相关AVP信息,并将所述应用的消息和相关AVP信息转化为标准文件;
将所述标准文件传输到网管系统前台,通过前台相关进程将所述标准文件转化为二进制码流后存储在前台内存区中;
利用Diameter协议数据配置管理进程读取所述内存区中的二进制码流,并按照消息组成格式将所述二进制码流转化为解码配置表;
利用Diameter协议进程根据项目支持的应用从所述解码配置表中读取数据重新组织为运行时解码配置表。
其中,所述网管系统前台接收到AVP调整命令时,通知所述Diameter协议数据配置管理进程修改所述解码配置表,并在所述解码配置表修改完成后,利用所述Diameter协议进程同步相关调整到所述运行时解码配置表。
本发明还提供一种自适应编码的装置,包括:
编码消息接收单元,用于接收待编码的应用相关信息,读取所述应用相关信息的消息结构,获取AVP的相关信息;
第一AVP配置信息获取单元,用于根据所述编码消息接收单元获取的AVP的相关信息查找预先生成的运行时编码配置表,获取与所述AVP相关信息对应的AVP配置信息;
编码单元,用于根据所述AVP配置信息,对所述AVP的相关信息进行合法性验证,在所述AVP的相关信息合法时,根据所述应用相关信息和AVP的相关信息组织生成Diameter消息码流。
本发明还提供一种自适应解码的装置,包括:
解码消息接收单元,用于接收待解码的Diameter消息码流,并解析所述码流头部信息,获取解码所需相关参数;
第二AVP配置信息获取单元,用于根据所述解码消息接收单元获取的相关参数查找预先生成的运行时解码配置表,获取AVP配置信息;
解码单元,用于根据所述AVP配置信息,对所述Diameter消息码流中的AVP码流进行合法性验证,在所述AVP码流合法时,将所述AVP码流对应的AVP相关信息填写到根据所述AVP配置信息和解码所需相关参数计算出的AVP信息存放绝对位置。
与现有技术相比,本发明具有以下优点:
本发明提供的方法,能够灵活根据现有的标准文档生成运行时编解码配置表,该配置表能够根据不同项目在编解码处理时自适应不同应用需求,避免了各应用的冲突,提高了编解码处理核心部件的复用性,有利于扩展新的Diameter应用。同时,本发明还解决了在支持多个应用相同Diameter消息码的情况下,根据配置进行区分,不至于造成消息结构间的混淆问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图进行简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中同时支持多个应用下相同Diameter消息的编解码工作原理示意图;
图2A为本发明提供的一种自适应编码方法流程图;
图2B为本发明提供的一种自适应解码方法流程图;
图3为本发明实施例中运行时编解码配置表获取流程图;
图4为本发明实施例中运行时编解码配置表动态调整流程图;
图5为本发明实施例中自适应编解码工作原理示意图;
图6为本发明实施例中自适应编码流程图;
图7为本发明实施例中自适应解码流程图;
图8为本发明提供的一种自适应编码装置的结构图;
图9为本发明提供的一种自适应解码装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
基于现有技术中,编解码过程不能自适应不同应用、不同接口、不同Diameter消息、不同厂商定义、不同版本等条件,从而导致消息定义不灵活、易产生冲突的问题,本发明提供一种自适应编码/解码方法和装置,其核心思想是根据各应用的需求定义了对应的运行时编解码配置表,该配置表可以动态获取、动态调整,有效的实现了编解码配置数据与具体应用接口的编解码自动分离。
具体的,本发明提供的一种自适应编码方法,如图2A所示,具体包括以下步骤:
步骤S2A01、接收待编码的应用相关信息,读取该应用相关信息的消息结构,获取AVP的相关信息。
其中,应用相关信息包括:应用ID号、Diameter消息码、Diameter消息长度、待编码的消息结构和开始位置信息。
步骤S2A02、根据获取的AVP的相关信息查找预先生成的运行时编码配置表,获取与AVP相关信息对应的AVP配置信息。
其中,运行时编码配置表包括:应用的配置信息、Diameter消息的配置信息和AVP的配置信息。
具体的,该运行时编码配置表具体通过下述方式生成:
(1)读取需要编码的文档,根据Diameter协议的扩展巴克斯范式规则选取各接口应用的消息和相关AVP信息,并将应用的消息和相关AVP信息转化为标准文件;
(2)将标准文件传输到网管系统前台,通过前台相关进程将标准文件转化为二进制码流后存储在前台内存区中;
(3)利用Diameter协议数据配置管理进程读取所述内存区中的二进制码流,并按照消息组成格式将二进制码流转化为编码配置表;
(4)利用Diameter协议进程根据项目支持的应用从编码配置表中读取数据重新组织为运行时编码配置表。
需要说明的是,当网管系统前台接收到AVP调整命令时,通知Diameter协议数据配置管理进程修改编码配置表,并在编码配置表修改完成后,利用Diameter协议进程同步相关调整到所述运行时编码配置表。
步骤S2A03、根据AVP配置信息,对AVP的相关信息进行合法性验证,在AVP的相关信息合法时,根据应用相关信息和AVP的相关信息组织生成Diameter消息码流。
该步骤中,根据应用相关信息和AVP的相关信息组织生成Diameter消息码流具体通过下述方式实现:根据应用相关信息生成Diameter消息头码流,根据AVP的相关信息,生成AVP码流,将Diameter消息头码流和所有AVP码流合并组织成Diameter消息码流。
本发明还提供一种自适应解码方法,如图2B所示,包括以下步骤:
步骤S2B01、接收待解码的Diameter消息码流后,解析该码流头部信息,获取解码所需相关参数。
其中,解码所需相关参数包括:应用ID、Diameter消息码、Diameter消息长度信息、Diameter消息码流开始位置信息和解码后消息结构存放开始位置信息。
步骤S2B02、根据获取的相关参数查找预先生成的运行时解码配置表,获取AVP配置信息。
其中,该运行时解码配置表具体通过下述方式生成:
(1)读取需要解码的文档,根据Diameter协议的扩展巴克斯范式规则选取各接口应用的消息和相关AVP信息,并将应用的消息和相关AVP信息转化为标准文件;
(2)将标准文件传输到网管系统前台,通过前台相关进程将标准文件转化为二进制码流后存储在前台内存区中;
(3)利用Diameter协议数据配置管理进程读取所述内存区中的二进制码流,并按照消息组成格式将二进制码流转化为解码配置表;
(4)利用Diameter协议进程根据项目支持的应用从解码配置表中读取数据重新组织为运行时解码配置表。
需要说明的是,在网管系统前台接收到AVP调整命令时,通知Diameter协议数据配置管理进程修改解码配置表;Diameter协议进程在解码配置表修改完成后,同步相关调整到运行时解码配置表。
步骤S2B03、根据AVP配置信息,对Diameter消息码流中的AVP码流进行合法性验证,在AVP码流合法时,将AVP码流对应的AVP相关信息填写到根据AVP配置信息和解码所需相关参数计算出的AVP信息存放绝对位置。
本发明提供的编解码方法,能够灵活根据现有的标准文档生成运行时编解码配置表,该配置表能够根据不同项目在编解码处理时自适应不同应用需求,避免了各应用的冲突,提高了编解码处理核心部件的复用性,有利于扩展新的Diameter应用。同时,本发明还解决了在支持多个应用相同Diameter消息码的情况下,根据配置进行区分,不至于造成消息结构间的混淆问题。
下面通过一个较佳的实施例来详细阐述本发明提供的自适应编解码的过程。
为了清楚的说明本发明的具体实现过程,首先对自适应编解码过程中运用的运行时编解码配置表的生成方式做详细介绍,如图3所示,为本发明实施例生成运行时编解码配置表流程图,具体包括以下步骤:
步骤S301、根据Diameter协议的ABNF规则对需要编解码的RFC/3GPP文档进行扫描,将符合此规则的应用消息转换为标准文件,例如XML文件。
步骤S302、继续扫描文档,将符合ABNF规则的相关AVP信息转换为标准文件,例如XML文件。
步骤S303、OMC(Operations Maintenance Center,操作维护中心,即网管系统)根据生成的XML格式的文件,进行Diameter协议合法性检查,若合法性校验通过,则执行续步骤S305;否则执行步骤S304。
步骤S304、合法性校验未通过时,可能存在某些AVP定义已在该协议依赖的其它文档定义过,此时通过引用已存在该AVP定义的XML实现文件或手动增加该AVP定义,然后返回步骤S303。
步骤S305、OMC将XML文件传输到网管系统前台运行的版本中。
具体的,根据实际应用的情况,XML文件传输到前台版本可通过两种方式完成,其一,如果前台单板重启时,不需要OMC再进行数据传输工作,此时需要数据库能够记录此XML配置文件,此时,该步骤具体按下述方式执行:
(1)OMC将XML文件以二进制格式存入网管系统数据库;
(2)网管系统数据库将XML二进制码流同步到前台数据接收进程;
(3)前台Diameter协议进程从前台数据接收进程读取XML二进制码流,并将该XML二进制码流存储在前台内存区中。
其二,如果不考虑前台单板重启时,通过OMC再次进行数据传输工作,此时,该步骤具体按下述方式执行:
(1)OMC将XML二进制码流分包同步到前台数据接收进程。
(2)前台Diameter协议进程从前台数据接收进程读取XML二进制码流的所有包后,重组成XML二进制码流,并将该XML二进制码流存储在前台内存区中。
步骤S306、Diameter协议数据配置管理进程读取前台内存区中的XML二进制码流并按照消息组成格式转化为编解码配置表。
步骤S307、Diameter协议进程根据项目支持的应用从编解码配置表读取数据重新组织为运行时编解码配置表。需要说明的是,后续进行编解码时以运行时编解码配置表作为协议检查、编码、解码的配置来源。
具体的,上述运行时编解码配置表包括:应用的配置信息,Diameter消息的配置信息和AVP的配置信息。
其中,应用的配置信息包括该应用包含的Diameter消息类型;
Diameter消息的配置信息包括:Diameter消息的头部标志信息、所属应用、项目信息以及其内包含的AVP类型、数目、相对位置、是否必选、是否可选等信息。
AVP的配置信息包括:该AVP的头部标志信息、所属应用、项目信息以及厂商标识等,如果该AVP为组合类型,则还包括其子AVP类型、数目、相对位置、是否必选、是否可选等信息。
以上为本发明自适应编解码器的运行时编解码配置表获取流程,由于该配置表可以根据各运营商、各应用接口、项目实际需要进行定制,并且前台运行程序不需要作任何修改、适配,有效地满足了实际应用的需要,又不失灵活性。
同时,本发明实施例提供的运行时编解码配置表还可以依据实际环境需要进行动态调整,主要是根据具体项目的不同局端的实际需要,通过OMC进行相关消息AVP的动态增加、修改、删除。具体的,动态调整流程如图4所示,包括以下步骤:
步骤S401、OMC进行相关消息AVP的动态增加、修改、删除时,将调整操作命令传到前台Diameter协议进程,该前台Diameter协议进程通知Diameter协议数据配置管理进程进行AVP调整。
具体的,根据实际应用的情况,在版本升级或前台单板重启的情况下,某些项目要求能够记录已有的AVP修改信息,某些项目不需要记录原有的修改记录。此时,该步骤在具体执行过程中略有差别,主要表现为:
相关消息AVP的动态增加、修改、删除时,OMC将操作过程和数据变化保存到数据库的处理过程,包括:相关消息AVP的动态增加、修改、删除时,OMC将操作过程和数据变化保存到网管系统数据库中,数据库将该操作过程发送消息到前台Diameter协议进程,告知AVP调整情况;
相关消息AVP的动态增加、修改、删除时,OMC将操作过程直接发送给前台,具体包括:相关消息AVP的动态增加、修改、删除时,OMC将操作过程直接发送给前台Diameter协议进程,告知AVP调整情况。
步骤S402、Diameter协议数据配置管理进程根据AVP调整通知的具体内容,修改编解码配置表。
步骤S403、Diameter协议进程根据具体应用项目的需要,同步相关调整到运行时编解码配置表。
以上为本发明自适应编解码的运行时编解码配置表调整的实施步骤,在能获取运行时编解码配置表的前提下,能根据不同局端的实际应用需求进行小范围的消息AVP调整是非常必要的,这样就可以灵活满足不同运营商的应用需求。本发明是自适应编解码器的运行编解码配置表获取发明的有力补充。
通过运行时编解码配置表的动态获取、动态调整,有效实现了配置数据与具体应用接口的编解码实现自动分离,从而本发明能够根据动态编解码配置实现不同运营商、不同应用接口、不同实际项目的应用需求。
下面详细阐述本发明提供的自适应编解码器的编解码流程,具体的,本实施例提供的自适应编解码方法的工作原理示意图如图5所示,其中,各应用使用的消息结构如图所示,该结构按照业务需求包含特定的AVP,这些AVP按照约定规则进行组织,某个AVP的信息相对消息头开始位置有固定的偏移量。编码前,将应用相关的AVP信息填入该AVP的相对偏移位置。
具体的,本发明实施例提供的自适应编码流程,如图6所示,包括以下步骤:
步骤S601、应用进程调用编码接口,将待编码的应用相关信息传送至编解码核心部件。其中,应用相关信息包含应用ID号、Diameter消息码、待编码的消息结构及该消息结构的开始位置等参数。
步骤S602、编解码核心部件从待编码的消息结构中取出AVP,并获取该AVP的相关信息。
步骤S603、编解码核心部件根据获取的AVP相关信息,在运行时编解码配置表中查找相应的AVP配置信息。
步骤S604、编解码核心部件根据查找到的AVP配置信息,对在步骤S602中获取的AVP相关信息作合法性检查。其中,合法性检查包括:
必选的AVP是否被赋值;
AVP值是否在规定范围内;
AVP出现次数是否满足限定范围;
如果以上检查均通过,则进入下一个步骤S605,否则编码流程结束,编码失败。
步骤S605、编解码核心部件根据步骤S601中传入参数生成Diameter消息头码流;根据步骤S602中获取的AVP相关信息,生成AVP码流,最后将Diameter消息头码流和所有AVP码流合并组织成Diameter消息码流。
以上为本发明实施例自适应编码实施步骤,由于其中包含查询配置表,根据配置表从相对位置中获取AVP相关信息,不需要理解具体应用的消息结构,更易于新应用的扩展。
具体的,本发明实施例提供的自适应解码流程,如图7所示,包括以下步骤:
步骤S701、应用进程接收待解码的Diameter消息码流,并调用编解码核心部件提供的消息头部解码函数,从Diameter消息码流消息头中获取应用ID、Diameter消息码、Diameter消息长度等信息。
需要说明的是,上述信息的位置相对Diameter消息码流开始位置而言均是固定的,不存在技术问题。
步骤S702、应用进程调用解码接口,将步骤S701中获取的相关信息以及Diameter消息码流开始位置、解码后消息结构存放开始位置等信息传送到编解码核心部件。
步骤S703、编解码核心部件根据传入的相关信息,查找运行时编解码配置表,获取应用ID和Diameter消息码包含的AVP配置信息,该配置信息包括:
AVP的类型、AVP的个数限制、AVP的标志位设置和AVP的值范围限制。
步骤S704、编解码核心部件从Diameter消息码流中获取每个AVP码流,并根据步骤S703中获取的AVP配置信息做合法性检查。其中,合法性检查包括:
必选的AVP是否被赋值;
AVP值是否在规定范围内;
AVP出现次数是否满足限定范围。
对码流中的所有AVP,如果以上检查均通过,则进入下一个步骤S705,否则解码流程结束,解码失败。
步骤S705、编解码核心部件根据步骤S703中获取的AVP配置信息计算AVP信息相对开始位置的偏移量n,根据步骤S702中参数解码后消息结构存放开始位置m计算AVP信息存放的绝对位置m+n;
编解码核心部件对步骤S704中获取的每个AVP码流进行分析,获取AVP值和标志位信息后,分别将获取的消息填写到计算的AVP信息绝对位置处,从而完成解码过程。
以上为本发明自适应解码实施步骤,由于其中包含查询配置表,根据配置表中AVP相关信息计算解码后AVP值存放的相对位置,不需要理解具体应用的消息结构,易于新应用的扩展。
综上所述,采用本发明实施例提供的自适应编码/解码方法,通过编解码配置数据与具体应用接口的编解码实现分离,增加了协议实现的可扩展性,同时可以进行运行时编解码配置表的动态获取、动态调整,满足不同运营商、不同应用接口、不同实际项目的应用需求。通过查询运行时编解码配置表,编解码核心部件自动在Diameter消息码流和Diameter应用消息结构之间进行转换,而无须理解Diameter应用消息结构。这种通过查询配置自动适应的方法,既增加了编解码核心部件的复用性,又提高了diameter应用消息的可扩展性。在同时支持多个应用相同Diameter消息码的情况下,根据配置进行区分,不至于造成消息结构间的混淆问题。
本发明还提供一种自适应编码的装置,如图8所示,包括:
编码消息接收单元810,用于接收待编码的应用相关信息,读取应用相关信息的消息结构,获取AVP的相关信息;
第一AVP配置信息获取单元820,用于根据编码消息接收单元810获取的AVP的相关信息查找预先生成的运行时编码配置表,获取与AVP相关信息对应的AVP配置信息;
编码单元830,用于根据AVP配置信息,对AVP的相关信息进行合法性验证,在AVP的相关信息合法时,根据应用相关信息和AVP的相关信息组织生成Diameter消息码流。
其中,应用相关信息包括:应用ID号、Diameter消息码、Diameter消息长度、待编码的消息结构和开始位置信息。
本发明还提供一种自适应解码的装置,如图9所示,包括:
解码消息接收单元910,用于接收待解码的Diameter消息码流,并解析该码流头部信息,获取解码所需相关参数;
第二AVP配置信息获取单元920,用于根据解码消息接收单元910获取的相关参数查找预先生成的运行时解码配置表,获取AVP配置信息;
解码单元930,用于根据AVP配置信息,对Diameter消息码流中的AVP码流进行合法性验证,在AVP码流合法时,将AVP码流对应的AVP相关信息填写到根据AVP配置信息和解码所需相关参数计算出的AVP信息存放绝对位置。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (11)
1、一种自适应编码方法,其特征在于,包括:
接收待编码的应用相关信息,读取所述应用相关信息的消息结构,获取属性值对AVP的相关信息;
根据所述AVP的相关信息查找预先生成的运行时编码配置表,获取与所述AVP相关信息对应的AVP配置信息;
根据所述AVP配置信息,对所述AVP的相关信息进行合法性验证,在所述AVP的相关信息合法时,根据所述应用相关信息和AVP的相关信息组织生成Diameter消息码流。
2、如权利要求1所述的方法,其特征在于,
所述应用相关信息包括:应用ID号、Diameter消息码、Diameter消息长度、待编码的消息结构和开始位置信息;
所述运行时编码配置表包括:应用的配置信息、Diameter消息的配置信息和AVP的配置信息。
3、如权利要求1或2所述的方法,其特征在于,所述运行时编码配置表通过如下方式生成:
读取需要编码的文档,根据Diameter协议的扩展巴克斯范式规则选取各接口应用的消息和相关AVP信息,并将所述应用的消息和相关AVP信息转化为标准文件;
将所述标准文件传输到网管系统前台,通过前台相关进程将所述标准文件转化为二进制码流后存储在前台内存区中;
利用Diameter协议数据配置管理进程读取所述内存区中的二进制码流,并按照消息组成格式将所述二进制码流转化为编码配置表;
利用Diameter协议进程根据项目支持的应用从所述编码配置表中读取数据重新组织为运行时编码配置表。
4、如权利要求3所述的方法,其特征在于,还包括:
所述网管系统前台接收到AVP调整命令时,通知所述Diameter协议数据配置管理进程修改所述编码配置表,并在所述编码配置表修改完成后,利用所述Diameter协议进程同步相关调整到所述运行时编码配置表。
5、如权利要求1或2所述的方法,其特征在于,根据所述应用相关信息和AVP的相关信息组织生成Diameter消息码流具体为:
根据所述应用相关信息生成Diameter消息头码流,根据所述AVP的相关信息,生成AVP码流,将所述Diameter消息头码流和所有AVP码流合并组织成Diameter消息码流。
6、一种自适应解码方法,其特征在于,包括:
接收待解码的Diameter消息码流后,解析所述码流头部信息,获取解码所需相关参数;
根据所述获取的相关参数查找预先生成的运行时解码配置表,获取AVP配置信息;
根据所述AVP配置信息,对所述Diameter消息码流中的AVP码流进行合法性验证,在所述AVP码流合法时,将所述AVP码流对应的AVP相关信息填写到根据所述AVP配置信息和解码所需相关参数计算出的AVP信息存放绝对位置。
7、如权利要求6所述的方法,其特征在于,
所述解码所需相关参数包括:应用ID、Diameter消息码、Diameter消息长度信息、Diameter消息码流开始位置信息和解码后消息结构存放开始位置信息。
8、如权利要求6所述的方法,其特征在于,所述运行时解码配置表通过如下方式生成:
读取需要解码的文档,根据Diameter协议的扩展巴克斯范式规则选取各接口应用的消息和相关AVP信息,并将所述应用的消息和相关AVP信息转化为标准文件;
将所述标准文件传输到网管系统前台,通过前台相关进程将所述标准文件转化为二进制码流后存储在前台内存区中;
利用Diameter协议数据配置管理进程读取所述内存区中的二进制码流,并按照消息组成格式将所述二进制码流转化为解码配置表;
利用Diameter协议进程根据项目支持的应用从所述解码配置表中读取数据重新组织为运行时解码配置表。
9、如权利要求8所述的方法,其特征在于,还包括:
所述网管系统前台接收到AVP调整命令时,通知所述Diameter协议数据配置管理进程修改所述解码配置表,并在所述解码配置表修改完成后,利用所述Diameter协议进程同步相关调整到所述运行时解码配置表。
10、一种自适应编码装置,其特征在于,包括:
编码消息接收单元,用于接收待编码的应用相关信息,读取所述应用相关信息的消息结构,获取AVP的相关信息;
第一AVP配置信息获取单元,用于根据所述编码消息接收单元获取的AVP的相关信息查找预先生成的运行时编码配置表,获取与所述AVP相关信息对应的AVP配置信息;
编码单元,用于根据所述AVP配置信息,对所述AVP的相关信息进行合法性验证,在所述AVP的相关信息合法时,根据所述应用相关信息和AVP的相关信息组织生成Diameter消息码流。
11、一种自适应解码的装置,其特征在于,包括:
解码消息接收单元,用于接收待解码的Diameter消息码流,并解析所述码流头部信息,获取解码所需相关参数;
第二AVP配置信息获取单元,用于根据所述解码消息接收单元获取的相关参数查找预先生成的运行时解码配置表,获取AVP配置信息;
解码单元,用于根据所述AVP配置信息,对所述Diameter消息码流中的AVP码流进行合法性验证,在所述AVP码流合法时,将所述AVP码流对应的AVP相关信息填写到根据所述AVP配置信息和解码所需相关参数计算出的AVP信息存放绝对位置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910162474A CN101631126B (zh) | 2009-08-06 | 2009-08-06 | 一种自适应编码/解码方法和装置 |
PCT/CN2010/074029 WO2011015089A1 (zh) | 2009-08-06 | 2010-06-17 | 一种自适应编码/解码方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910162474A CN101631126B (zh) | 2009-08-06 | 2009-08-06 | 一种自适应编码/解码方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101631126A true CN101631126A (zh) | 2010-01-20 |
CN101631126B CN101631126B (zh) | 2012-09-05 |
Family
ID=41576071
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910162474A Expired - Fee Related CN101631126B (zh) | 2009-08-06 | 2009-08-06 | 一种自适应编码/解码方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101631126B (zh) |
WO (1) | WO2011015089A1 (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011015089A1 (zh) * | 2009-08-06 | 2011-02-10 | 中兴通讯股份有限公司 | 一种自适应编码/解码方法和装置 |
CN102611530A (zh) * | 2012-03-08 | 2012-07-25 | 北京神州数码思特奇信息技术股份有限公司 | 电信数据的编码和解码的方法 |
CN102761543A (zh) * | 2012-06-27 | 2012-10-31 | 北京中创信测科技股份有限公司 | 一种实现sip协议通用编解码的方法和装置 |
CN102929608A (zh) * | 2012-10-09 | 2013-02-13 | 大唐移动通信设备有限公司 | 一种接口编/解码的方法和系统 |
CN103813306A (zh) * | 2012-11-08 | 2014-05-21 | 中兴通讯股份有限公司 | 属性携带方法及装置 |
CN102904862B (zh) * | 2011-07-28 | 2017-12-08 | 中兴通讯股份有限公司 | 一种码流的解码方法及装置 |
CN109309670A (zh) * | 2018-09-07 | 2019-02-05 | 深圳市网心科技有限公司 | 数据流解码方法和系统、电子装置及计算机可读存储介质 |
CN111625244A (zh) * | 2020-05-29 | 2020-09-04 | 华畅科技(大连)股份有限公司 | 基于3gpp协议的asn.1-per动静态编解码方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107171879B (zh) * | 2016-03-07 | 2020-01-07 | 中移信息技术有限公司 | 一种在线计费接口消息的检测方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1219383C (zh) * | 2002-07-22 | 2005-09-14 | 华为技术有限公司 | 一种实现用户业务远程验证拨号协议的编码和解码方法 |
CN100471121C (zh) * | 2006-12-30 | 2009-03-18 | 华为技术有限公司 | 一种解码方法和解码器 |
CN100456680C (zh) * | 2006-12-30 | 2009-01-28 | 华为技术有限公司 | 一种编码方法和编码器 |
CN101237383A (zh) * | 2007-01-31 | 2008-08-06 | 华为技术有限公司 | 一种传输组播信息及授权组播业务的方法和系统 |
CN101631126B (zh) * | 2009-08-06 | 2012-09-05 | 中兴通讯股份有限公司 | 一种自适应编码/解码方法和装置 |
-
2009
- 2009-08-06 CN CN200910162474A patent/CN101631126B/zh not_active Expired - Fee Related
-
2010
- 2010-06-17 WO PCT/CN2010/074029 patent/WO2011015089A1/zh active Application Filing
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011015089A1 (zh) * | 2009-08-06 | 2011-02-10 | 中兴通讯股份有限公司 | 一种自适应编码/解码方法和装置 |
CN102904862B (zh) * | 2011-07-28 | 2017-12-08 | 中兴通讯股份有限公司 | 一种码流的解码方法及装置 |
CN102611530A (zh) * | 2012-03-08 | 2012-07-25 | 北京神州数码思特奇信息技术股份有限公司 | 电信数据的编码和解码的方法 |
CN102761543A (zh) * | 2012-06-27 | 2012-10-31 | 北京中创信测科技股份有限公司 | 一种实现sip协议通用编解码的方法和装置 |
CN102761543B (zh) * | 2012-06-27 | 2016-03-16 | 北京中创信测科技股份有限公司 | 一种实现sip协议通用编解码的方法和装置 |
CN102929608A (zh) * | 2012-10-09 | 2013-02-13 | 大唐移动通信设备有限公司 | 一种接口编/解码的方法和系统 |
CN103813306A (zh) * | 2012-11-08 | 2014-05-21 | 中兴通讯股份有限公司 | 属性携带方法及装置 |
CN109309670A (zh) * | 2018-09-07 | 2019-02-05 | 深圳市网心科技有限公司 | 数据流解码方法和系统、电子装置及计算机可读存储介质 |
CN109309670B (zh) * | 2018-09-07 | 2021-02-12 | 深圳市网心科技有限公司 | 数据流解码方法和系统、电子装置及计算机可读存储介质 |
CN111625244A (zh) * | 2020-05-29 | 2020-09-04 | 华畅科技(大连)股份有限公司 | 基于3gpp协议的asn.1-per动静态编解码方法 |
CN111625244B (zh) * | 2020-05-29 | 2023-04-25 | 华畅科技(大连)股份有限公司 | 基于3gpp协议的asn.1-per动静态编解码方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2011015089A1 (zh) | 2011-02-10 |
CN101631126B (zh) | 2012-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101631126B (zh) | 一种自适应编码/解码方法和装置 | |
US7720888B2 (en) | Contents conversion communication terminal, server system, and method | |
CN103081433B (zh) | 用于经译码视频数据的网络串流传输的清单文件更新 | |
US7634577B1 (en) | Media gateway proxy | |
CN101305555B (zh) | 使用元数据的多媒体中间件装置和用于控制多媒体中间件的方法 | |
US10721317B2 (en) | Global provisioning of millions of users with deployment units | |
US20080098042A1 (en) | Method for data synchronization and apparatus thereof | |
EP2003894A1 (en) | Information delivery system and method, content delivery server and client terminal | |
KR100666400B1 (ko) | 컨텐츠 변환을 지원하는 통신 단말, 서버 시스템 및 그변환 방법 | |
CN104580454A (zh) | 一种数据同步方法、装置及系统 | |
CN102298537A (zh) | 应用程序的迁移方法及系统 | |
KR100673514B1 (ko) | SlP 로드밸런서에서 레지스터 기능을 수행하는 방법 및이를 수행하는 SlP로드밸런서 | |
CN101340541B (zh) | 一种电视与智能设备间的内容同步方法 | |
CN105354002A (zh) | 一种实现多屏间视频无缝切换的系统及方法 | |
CN101472138A (zh) | 一种数字机顶盒节目流分享实现系统及方法 | |
CN107077543A (zh) | 流媒体中内容成分的所有权标识、信令和处理 | |
WO2019179423A1 (zh) | 卡调用方法、装置、信息推送方法、装置及卡分配系统 | |
CN102811338A (zh) | 一种视频会议系统中多级回传视频信号的控制方法及装置 | |
CN101860470A (zh) | 文件同步处理方法、同步网关以及文件同步系统 | |
CN102984261A (zh) | 基于手机终端的网络业务登录方法、设备和系统 | |
CN205230019U (zh) | 一种实现多屏间视频无缝切换的系统 | |
CN106454767A (zh) | 一种业务数据同步方法、装置及系统 | |
CN102638569B (zh) | 一种文件分发同步方法及系统 | |
WO2019141150A1 (zh) | 跨平台内容控制方法、装置、终端、服务器及存储介质 | |
CN107241619B (zh) | 一种媒资内容同步方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120905 Termination date: 20170806 |