一种Diameter消息的封装、解封装方法和装置的制作方法

文档序号:7713253阅读:155来源:国知局
专利名称:一种Diameter消息的封装、解封装方法和装置的制作方法
技术领域
本发明涉及通信技术领域,更具体地说,涉及一种Diameter消息的封装、解封 装方法和装置。
背景技术
Diameter 协议是由互联网工程任务组(IETF,Internet Engineering Task Force)开 发的认证(Authentication)、授权(Authorization)和计费(Accounting)的 AAA 协议,用来
给众多的接入技术提供AAA服务。Diameter协议由两部分组成Diameter基本协议和Diameter应用协议。Diameter 基本协议用来传递Diameter数据单元、协商能力集、处理错误并提供可扩展性。Diameter 应用协议部分则定义了特定应用的功能和数据单元,并且每个Diameter应用都具有单独定义。Diameter 基本协议可以使用传输控制协议(TCP,Transmission Control Protocol) 或者流控制传输协议(SCTP,Stream Control Transmission Protocol)作为传输协议。 Diameter应用协议在Diameter基本协议的基础上进行了扩展,以完成特定的接入应用业务。而目前,由于Diameter应用协议的多样性,在对Diameter进行应用的过程中,
需要为不同的Diameter应用协议提供对应的接口,使这些接口为对应的Diameter应用 协议提供特定的编解码功能。例如在在线计费应用中,电信智能网业务平台上的业 务控制点(SCP,Service Control Point)上承载着多种电信业务,而对端的在线计费系统 (OCS, OnlineChargingSystem)提供在线计费功能。通过在电信智能网业务平台和在线 计费系统之间进行Diameter消息的交互,完成计费事务。在实现本发明的过程中,发明人发现现有技术存在如下问题由于SCP—般针 对一种Diameter应用协议提供一套接口,而Diameter协议编解码功能是强应用相关的, 同时SCP上可能承载多种不同的业务,并且每种业务可能用不同的应用协议与OCS进行 交互,这样就必须提供多套接口,并相应需要开发大量的接口。

发明内容
有鉴于此,本发明实施例提供一种Diameter消息封装、解封装方法和装置,可 以有效减少Diameter消息接口的开发和维护的工作量。本发明实施例是这样实现的本发明实施例提供了一种Diameter消息封装方法,包括根据业务应用所提供数据信息创建Diameter对象,其中,所述Diameter对象的 数据域包括多个Diameter AVP对象,所述Diameter AVP对象的数据域包括所述业务应用
所提供的所述数据信息;提取所述Diameter对象的头域和数据域,组成Diameter消息。
本发明实施例提供了一种Diameter消息解封装方法,包括提取所接收到的Diameter消息的消息头和数据部分,分别组成Diameter对象的头域和数据域;根据所述Diameter对象的数据域获取Diameter AVP对象。本发明实施例提供了 一种Diameter消息封装平台,包括Diameter对象创建单元,用于根据业务应用所提供的数据信息创建Diameter对 象;Diameter消息组成单元,用于提取所创建的Diameter对象的头域和数据域,组 成Diameter消息。本发明实施例提供了 一种Diameter消息解封装平台,包括Diameter对象获取单元,用于根据所接收到的Diameter消息的消息头和数据部 分,分别组成Diameter对象的头域和数据域;Diameter AVP对象获取单元,用于根据所述Diameter对象的数据域获取Diameter AVP对象。与现有技术相比,本发明实施例提供的技术方案具有以下优点和特点本发 明实施例所提供的技术方案,通过将不同业务应用的数据信息以统一的封装格式进行封 装,生成通用的Diameter消息,以供与对端平台进行信息交互;而当接收到对端平台发 送的Diameter消息后,还可以将该Diameter消息以预先规定的格式进行解封装,获取不 同业务应用的数据信息。本发明实施例所提供的技术方案可以有效减少接口的开发量和 后续的维护工作,并相应降低在接口维护过程中其他业务应用所受影响。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或 现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅 是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提 下,还可以根据这些附图获得其他的附图。图1为本发明实施例所涉及的一种Diameter消息封装方法流程图;图2为本发明实施例所涉及的一种Diameter消息解封装方法流程图;图3为本发明实施例所涉及的一种Diameter消息封装平台结构示意图;图4为本发明实施例所涉及的一种Diameter消息封装平台中某一单元的结构示意 图;图5为本发明实施例所涉及的一种Diameter消息封装平台中另一单元的结构示意 图;图6为本发明实施例所涉及的一种Diameter消息解封装平台结构示意图;图7为本发明实施例所涉及的另一种Diameter消息封装方法流程图;图8为本发明实施例所涉及的另一种Diameter消息解封装方法流程图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施 例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得 的所有其他实施例,都属于本发明保护的范围。 本发明实施例提供了一种Diameter消息封装方法,该方法具体流程如图1所示, 包括SlOl 根据业务应用所提供数据信息创建Diameter对象,其中,所述Diameter 对象的数据域包括多个Diameter属性值对(AVP,Attribute-Length-Value Pair)对象, DiameterAVP对象的数据域包括业务应用所提供的数据信息;在SlOl中,由于Diameter对象的数据域由多个Diameter AVP对象所构成,因 此,在创建Diameter对象的过程中,可以首先创建Diameter AVP对象,根据所创建的 Diameter AVP对象生成Diameter对象;当然也可以采用首先创建Diameter对象,再创建 Diameter AVP对象,并将创建完成的Diameter AVP对象填充至Diameter对象的数据域部分。其中,对于前面所述的两种方法中的第一种,可以具体为由于Diameter对象的数据域中包括Diameter AVP对象,因此,可以首先进行 Diameter AVP对象的创建,并根据创建后的Diameter AVP对象进行Diameter对象的创 建。其中。在进行DiameterAVP对象的创建时,需要首先提取业务应用所提供的各 种数据信息,例如,在进行用户的认证业务时,所提供的数据信息可能会包括用户的 标识信息;而在进行计费服务时,所提供的数据信息可能会包括用户的标识信息、资 费标准等。在提取业务应用所提供的各种数据信息后,根据所提取的数据信息构建对 应DiameterAVP对象的数据域,并根据所生成的DiameterAVP对象的数据域构建对应 Diameter AVP对象的头域,从而实现创建一个完整的Diameter AVP对象。另外,在创 建DiameterAVP对象时,由于业务应用所提供的数据信息之间有可能存在的是并列的关 系,并且该数据信息中不包括其他子信息,例如在某用户的一次计费过程中所提供的用 户标识信息、通话时长信息以及资费信息等,在这种情况下所创建的Diameter AVP对象 可称为原子型DiameterAVP对象。同时,还存在另外一种情况,也就是说,业务应用 所提供的数据信息中仍包含子信息,这样,在创建Diameter AVP对象时,就需要首先提 取业务应用中所提供的最小单元信息,将该信息首先创建为对应的底层DiameterAVP对 象,之后,再将这些创建好的底层Diameter AVP对象进行组合,生成上层底层Diameter AVP对象,在此,将这种Diameter AVP对象称为复合型Diameter AVP对象。在创建Diameter AVP对象完成后,利用所创建的Diameter AVP对象组成 Diameter对象的数据域,根据所组成的Diameter对象的数据域,生成对应的Diameter对 象的头域,最终创建Diameter对象。而对于前面所述的两种方法中的第二种,可以具体为首先进行Diameter对象的创建,之后再进行Diameter AVP对象的创建。此时,
需要预估业务应用的业务量,并根据该业务量首先申请一定量的内存,并根据所申请到 的内存,确定Diameter对象的头域和数据域。在创建Diameter对象完成之后,进行Diameter AVP对象的创建,该创建过程同 前面所述DiameterAVP的创建方法相同,在此不做赘述。之后,将创建完成的DiameterAVP对象填充至Diameter对象的数据域中即可。
S102 提取所述Diameter对象的头域和数据域,组成Diameter消息。本发明实施例所提供的一种Diameter消息封装方法,该方法通过将不同业务应 用的数据信息以统一的封装格式进行封装,生成通用的Diameter消息,以供与对端平台 进行信息交互。本发明实施例所提供的技术方案可以有效减少接口的开发量和后续的维 护工作,并相应降低在接口维护过程中其他业务应用所受影响。本发明实施例提供了一种Diameter消息解封装方法,该方法具体流程如图2所 示,包括S201 提取所接收到的Diameter消息的消息头和数据部分,分别组成Diameter
对象的头域和数据域;在S201中,在接收到对端平台发送的Diameter消息后,提取该Diameter消息的 头部,构成Diameter对象的头域;提取该Diameter消息的数据部分,即构成Diameter对
象的数据域。S202 根据所述Diameter对象的数据域获取Diameter AVP对象。在S202中,在获取Diameter对象之后,要对其数据域中所包括的Diameter AVP
对象进行获取,在获取过程中,由于Diameter AVP对象有可能是原子型的,也有可能是 复合型的,因此,在完成对顶层DiameterAVP对象的获取之后,还需要检查该Diameter AVP对象是否还对应有下层DiameterAVP对象,如果有,则需要对下层Diameter AVP对 象进行获取,直至获取全部DiameterAVP对象。有前面所述封装过程可以得知,由于 Diameter AVP对象中包括业务应用基本数据信息,因此,将所获取的Diameter AVP对象 中所包括的各种进行按照所归属的业务应用进行处理。本发明实施例所提供的一种Diameter消息解封装方法,该方法通过将所接收到 的Diameter消息以预先规定的格式进行解封装,以获取不同业务应用的数据信息。本发 明实施例所提供的技术方案可以有效减少接口的开发量和后续的维护工作,并相应降低 在接口维护过程中其他业务应用所受影响。相应地,本发明实施例还提供了一种Diameter消息封装平台,该装置结构如图3 所示,包括Diameter对象创建单元301,用于根据业务应用所提供的数据信息创建Diameter
对象;Diameter消息组成单元302,用于提取所创建的Diameter对象的头域和数据域, 组成Diameter消息。其中,对于Diameter对象创建单元301,还可根据Diameter对象创建方式的不同
做进一步划分,可包括如图4所述结构第一提取子单元401,用于提取所述业务应用所提供的数据信息;DiameterAVP对象创建子单元402,用于根据所述数据信息创建DiameterAVP对 象;Diameter对象创建子单元403,用于利用所述Diameter AVP对象组成所述 Diameter对象的数据域,根据所组成的Diameter对象的数据域,生成对应的Diameter对
象的头域,并利用所述Diameter对象的数据域和头域创建生成所述Diameter对象。
除此以外,还可包括如图5所示结构 Diameter对象创建子单元501,用于预先申请一定量内存,根据所申请内存生成 所述Diameter对象;第二提取子单元502,用于提取所述业务应用所提供的数据信息;Diameter AVP对象创建子单元503,用于根据所述数据信息创建Diameter AVP对 象,并将所述DiameterAVP对象填充至所述Diameter对象的数据域中。本发明实施例所提供的一种Diameter消息封装平台,该装置通过将不同业务应 用的数据信息以统一的封装格式进行封装,生成通用的Diameter消息,以供与对端平台 进行信息交互。本发明实施例所提供的技术方案可以有效减少接口的开发量和后续的维 护工作,并相应降低在接口维护过程中其他业务应用所受影响。另外,本发明实施例还提供了一种Diameter消息解封装平台,该装置结构如图6 所示,包括Diameter对象获取单元601,用于根据所接收到的Diameter消息的消息头和数据 部分,分别组成Diameter对象的头域和数据域;DiameterAVP对象获取单元602,用于根据所述Diameter对象的数据域获取 DiameterAVP 对象。本发明实施例所提供的一种Diameter消息解封装平台,该装置通过将所接收到 的Diameter消息以预先规定的格式进行解封装,以获取不同业务应用的数据信息。本发 明实施例所提供的技术方案可以有效减少接口的开发量和后续的维护工作,并相应降低 在接口维护过程中其他业务应用所受影响。结合上述方法、系统、装置和具体用应场景,对本发明所涉及的技术方案做进 一步介绍,目前,运营商为了减小运营成本以及提高设备的利用率,通常将多个电信业 务加载于一个SCP上,而该SCP可以根据具体的业务应用通过向不同的平台进行信息交 互为用户提供相应的服务。在本实施例中,以电信业务中的计费业务为例对本发明所涉 及的技术方案做一个较为详细的介绍。具体步骤如图7所示步骤701 SCP上的某电信业务向通用软件开发工具包(SDK,Software Development Kit)提供计费数据信息;在步骤701中,SCP上的某电信业务需要进行计费活动,此时,该业务应用需要 向该SCP上的通用接口提供进行计费活动所需的相关数据,例如,该业务中所要计费的 用户的标识信息、该业务的资费标准以及业务时长等信息。需要说明的是,此处所提到的通用SDK,是指该SDK可以将同一 SCP上所承载 的不同业务应用所提供的数据信息按照统一的格式进行封装,以生成通用的Diameter消
肩、ο步骤702 通用SDK根据该电信业务所提供的数据信息创建相应的Diameter AVP对象;Diameter AVP对象存在原子型和复合型两种形式,其中,原子型Diameter AVP 对象是指该Diameter AVP对象已不可进一步划分,并且各个Diameter AVP之间的关
系为并列关系;以一次短信计费为例,某一 DiameterAVP对象中包含的是用户的标识 信息,而另一 DiameterAVP对象中包含的是该条短信的资费标准,由此可以看出,该两个DiameterAVP对象已 不可再进一步划分。而复合型DiameterAVP对象则是各个 Diameter AVP对象以分层的形式存在,位于上层的DiameterAVP对象可以划分为多个下 层Diameter AVP对象,以某用户一个月的电话计费为例,在上层的某一 Diameter AVP对
象中可包含该用户的标识信息,另一上层DiameterAVP对象中可包含此次计费的业务类 型——电话业务,而在该Diameter AVP对象还可进行进一步划分,由于电话业务可包括 长途电话业务或本地电话业务,因此,下层Diameter AVP对象中可分别包含长途电话业 务的资费标准和本地电话业务的资费标准。需要说明的是,无论是原子型Diameter AVP对象还是复合型Diameter AVP对
象,均包括头域和数据域。其中,头域部分包括AVP码,该AVP码结合Vendor-ID, 可构成该Diameter AVP对象的唯一标识,通常位于所创建的Diameter AVP对象的前4个 字节;两外,头域部分还可包括消息标志位,位于所创建的Diameter AVP对象的第5字 节,对于信息标志位,通常有V、M或P三个标识,其中V表示Vendor-ID有效、M表 示该AVP必选、P表示需要进行端对端加密;除此以外,头域部分还可包括该Diameter AVP对象的长度以及发行商标识等信息。由于Diameter AVP对象包括原子型和复合型两种,对于原子型Diameter AVP对 象来说,通用SDK可以根据所要进行的业务中所提供的数据直接采用设置AVP值的方式 来设置Diameter AVP对象内容。而对于复合型Diameter AVP对象来说,则需要逐层创 建,即首先创建下层Diameter AVP对象,在完成下层Diameter AVP对象的创建工作后, 通用SDK调用Append AVP List将该层所创建好的Diameter AVP对象加入到列表中, 形成集合,然后利用集合中Diameter AVP对象的头域和数据域分别填充至对应的上层 DiameterAVP对象的头域和数据以形成上层对应DiameterAVP对象。步骤703 通用SDK根据创建完成的DiameterAVP对象创建Diameter对象;在步骤703中,Diameter对象同样包括头域和数据域两部分,其中,数据域部分 包括所创建的DiameterAVP对象的内容,由于Diameter AVP有原子型和复合型两种,如 果所创建的Diameter AVP对象为原子型,则Diameter对象的数据域部分需要包括所有创 建完成的DiameterAVP对象;而如果所创建的Diameter AVP对象为复合型,则Diameter 对象的数据域部分只需要包括所有最上层DiameterAVP对象即可。需要说明的是,由于一个Diameter对象可能包括多个Diameter AVP对象,因此 在Diameter对象的数据域部分,每个Diameter AVP对象以首尾相接的方式存在,并且还 可以根据DiameterAVP对象的长度动态改变Diameter对象的长度。除了上述的数据域部分外,Diameter对象还包括携带有各种标识信息的头域部 分,例如版本信息,通常情况位于Diameter对象头域的第1个字节;信息长度,该信 息位于Diameter对象头域第2-4个字节;消息标志位,相应地位于Diameter对象头域 的第5个字节;消息命令码,位于Diameter对象头域的第6-8个字节,应用标识,位于 Diameter对象头域的9-12个字节;除此以外,还包括匹配请求和相应以及检测重复消息 标识等信息。需要说明的是,在本发明实施例中,是首先创建Diameter AVP对象,并根据创 建完成之后的Diameter AVP对象来创建Diameter对象。除了该种方法外,还可以首先进 行Diameter对象的创建,之后再进行Diameter AVP对象的创建,下面将该方法做相应说明此时通用SDK需要对业务应用所提供的数据量进行一个预估,并根据预估的结果申 请一定量的内存,在申请到相应的内存之后,确定所创建的Diameter对象的头域和数据 域。由于Diameter对象的数据域中应该包括的是多个DiameterAVP对象,因此,需要 进行Diameter AVP对象的创建,此处对于Diameter AVP对象的创建与前面所述的方法相 同,均是通过业务应用所提供的相应数据来进行创建,此处就不再做赘述。在利用这种 方法进行Diameter对象的创建时,需要说明的是,由于在进行内存的申请时,是根据预 估的业务数据量来进行申请的,因此,在遇到所申请的内存不够的情况时,通用SDK还 可以根据实际需要进行内存的动态申请。步骤704:通用SDK提取所创建的Diameter对象的头域和数据域,形成 Diameter消息流。在步骤704中,由于在创建Diameter对象的过程中,通用SDK均是按照统一 的格式将不同业务的数据内容进行封装,例如创建生成的Diameter对象的头域和数据 域所包括的信息内容以及各部分的字节长度等均有一定的标准和顺序,因此,在进行 Diameter消息流的创建时,只需要将Diameter对象的头域部分和数据域部分进行提取即可。步骤705 SCP将所生成的Diameter消息流发送至计费平台。在步骤705中,在通用SDK将Diameter消息封装生成之后,SCP将生成的
Diameter消息流利用可以识别Diameter消息的通信组件发送至对端的计费平台,使计费 平台根据该Diameter消息流中所携带的信息进行对应业务的计费。至此,SCP通过通用SDK将不同应用业务的数据进行封装转化为统一格式的 Diameter消息的过程已全部结束。本实施例是通过将一个SCP上的业务应用所提供的数 据信息以统一的格式进行封装,生成相应的Diameter消息,以用于进行相关业务。如前面所述,一个SCP上很可能承载这多个业务应用,而当该SCP接收到某个 对端平台发送的Diameter消息后,仍然需要利用通用SDK进行对该消息的解封装,并将 解封装后的业务数据发送至对应的业务应用。其中,仍以上以实施例中所提供的计费业 务为例,对本发明所提供的技术方案做相应介绍步骤801 SCP接收计费平台发送的Diameter消息流;在步骤801中,SCP利用可以识别Diameter消息的通信组件接收到计费平台发 送的Diameter消息,并执行步骤802。步骤802 通用SDK将SCP所接收到的Diameter消息流转化为对应的Diameter
对象;在步骤802中,SCP在接收到计费平台返回的计费请求消息的反馈信息之后,需 要通过通用SDK将该消息转化为对应的Diameter对象,在转化过程中,只需要将所接收 到的Diameter反馈消息的消息头提取至Diameter对象的头域部分,而将消息的数据部分 提取至Diameter对象的数据域即可。步骤803 通用SDK获取Diameter对象中的DiameterAVP对象; 在步骤803中,在通用SDK将所接收到的Diameter消息转化为Diameter对象之
后,有前面所述的封装过程可以得知,Diameter对象的数据域部分所包括的信息即为各 个Diameter AVP对象,而由于Diameter AVP对象包括原子型和复合型两种,因此,在进行Diameter AVP对象的获取时,SDK通过Get AVP List方法首先获取顶层所有Diameter AVP对象内容,如果该Diameter对象中的DiameterAVP对象为原子型,则进行到该步骤 就可获取全部的Diameter AVP对象;如果该Diameter对象中的Diameter AVP对象为复合
型,则还需要对其他的DiameterAVP对象进行逐层获取,直至全部获取。步骤804 通用SDK根据所获取的Diameter AVP对象进行业务应用数据信息的 提取。在步骤804中,由前面所述相关内容可以得知,Diameter AVP对象中所包含的 内容为各种业务应用的具体数据信息,例如所进行业务的业务标识信息、用户的标识信 息,结合本实施例中的计费业务,还包括各项通 信业务的资费标识等。那么在计费平台 所发送的Diameter消息中,所获取的Diameter AVP对象中相应包含所进行业务的业务标 识信息、用户的标识信息以及计费结果信息等。因此,在进行Diameter消息中数据信息的提取时,只需要逐个提取Diameter
AVP对象中的数据域即可,之后执行步骤805。步骤805 通用软件开发工具包SDK将所提取的业务应用的数据信息发送至对 应业务应用。在步骤805中,由于通用SDK已将该SCP所接收到的Diameter消息中所包含的 业务数据信息进行了提取,因此可以根据所获取的数据信息找到对应的业务应用,并将 该数据信息发送至对应的业务应用上。在上两个实施例中,分别介绍了多业务SCP如何通过通用的SDK进行Diameter
消息的封装和解封装。在实际应用过程中,由于多业务SCP可能会在一定情况下成为服 务器端设备,例如接收用户的认证请求等业务;而在一定情况下也会成为客户端设备, 例如向计费平台发送计费请求等。无论属于哪种情况,多业务SCP通过通用SDK对业务 数据信息封装生成Diameter消息和对Diameter消息解封装生成业务数据信息的方式和过 程并没有区别。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可 以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质 中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括 ROM (Read-Only Memory,只读存储记忆体)、RAM (Random Access Memory,随机存储
记忆体)、磁碟或者光盘等各种可以存储程序代码的介质。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发 明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所 定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因 此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和 新颖特点相一致的最宽的范围。
权利要求
1.一种Diameter消息封装方法,其特征在于,包括根据业务应用所提供数据信息创建Diameter对象,其中,所述Diameter对象的数据 域包括多个Diameter AVP对象,所述Diameter AVP对象的数据域包括所述业务应用所提 供的所述数据信息;提取所述Diameter对象的头域和数据域,组成Diameter消息。
2.根据权利要求1所述的方法,其特征在于,所述根据业务应用所提供的数据信息创 建Diameter对象,包括提取所述业务应用所提供的数据信息; 根据所述数据信息创建DiameterAVP对象;利用所述Diameter AVP对象组成所述Diameter对象的数据域,根据所组成的 Diameter对象的数据域,生成对应的Diameter对象的头域,并利用所述Diameter对象的 数据域和头域创建生成所述Diameter对象。
3.根据权利要求1所述的方法,其特征在于,所述根据业务用所提供数据信息创建 Diameter对象,包括预先申请一定量内存,根据所申请内存生成所述Diameter对象,所述Diameter对象 包括头域和数据域;提取所述业务应用所提供的数据信息;根据所述数据信息创建DiameterAVP对象;将所述DiameterAVP对象填充至所述Diameter对象的数据域中。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述数据信息创建 DiameterAVP 对象,包括利用所述数据信息构成所述DiameterAVP对象的数据域;根据所生成的DiameterAVP对象的数据域构建对应DiameterAVP对象的头域。
5.根据权利要求2或3所述的方法,其特征在于,所述根据所述数据信息创建对应的 DiameterAVP 对象,包括利用所述数据信息构成底层DiameterAVP对象的数据域;根据所生成的底层Diameter AVP对象的数据域构建对应底层Diameter AVP对象的头域;根据所述数据信息创建对应的底层DiameterAVP对象;根据所述将所述底层DiameterAVP对象创建上层DiameterAVP对象。
6.—种Diameter消息解封装方法,其特征在于,包括提取所接收到的Diameter消息的消息头和数据部分,分别组成Diameter对象的头域 和数据域;根据所述Diameter对象的数据域获取DiameterAVP对象。
7.根据权利要求6所述的方法,其特征在于,所述根据所述Diameter对象的数据域获 取DiameterAVP对象,包括提取所述Diameter对象的数据域内容,解析出其中所包括的DiameterAVP对象。
8.根据权利要求6所述的方法,其特征在于,所述根据所述Diameter对象的数据域获 取DiameterAVP对象,包括提取所述Diameter对象的数据域内容,解析出其中所包括的最上层Diameter AVP对 象,根据所述最上层DiameterAVP对象解析出对应的下层DiameterAVP对象。
9.一种Diameter消息封装平台,其特征在于,包括Diameter对象创建单元,用于根据业务应用所提供的数据信息创建Diameter对象; Diameter消息组成单元,用于提取所创建的Diameter对象的头域和数据域,组成 Diameter 消息。
10.根据权利要求9所述的Diameter消息封装平台,其特征在于,所述Diameter对象创建单元包括第一提取子单元,用于提取所述业务应用所提供的数据信息; DiameterAVP对象创建子单元,用于根据所述数据信息创建DiameterAVP对象; Diameter对象创建子单元,用于利用所述Diameter AVP对象组成所述Diameter对象 的数据域,根据所组成的Diameter对象的数据域,生成对应的Diameter对象的头域,并 利用所述Diameter对象的数据域和头域创建生成所述Diameter对象;或者,Diameter对象创建子单元,用于预先申请一定量内存,根据所申请内存生成所述 Diameter 对象;第二提取子单元,用于提取所述业务应用所提供的数据信息; Diameter AVP对象创建子单元,用于根据所述数据信息创建Diameter AVP对象,并 将所述DiameterAVP对象填充至所述Diameter对象的数据域中。
11.一种Diameter消息解封装平台,其特征在于,包括Diameter对象获取单元,用于根据所接收到的Diameter消息的消息头和数据部分, 分别组成Diameter对象的头域和数据域;Diameter AVP对象获取单元,用于根据所述Diameter对象的数据域获取Diameter AVP对象。
全文摘要
本发明实施例公开了一种Diameter消息封装、解封装方法和装置,其中封装方法包括根据业务应用所提供数据信息创建Diameter对象,其中,所述Diameter对象的数据域部分包括多个Diameter AVP对象,所述DiameterAVP对象的数据域部分包括所述业务应用所提供的所述数据信息;提取所述Diameter对象的头域和数据域,组成Diameter消息;而在解封装阶段,提取所接收到的Diameter消息的消息头和数据部分,分别组成Diameter对象的头域和数据域;根据所述Diameter对象的数据域获取Diameter AVP对象。本发明实施例所提供的技术方案,通过将不同业务应用的数据信息以统一的根式进行封装、解封装,可以有效减少接口的开发量和后续的维护工作,并相应降低在接口维护过程中其他业务应用所受影响。
文档编号H04L29/06GK102025699SQ20091017394
公开日2011年4月20日 申请日期2009年9月22日 优先权日2009年9月22日
发明者查峰 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1