一种应用平台与协议栈之间信令流处理的方法和装置转让专利

申请号 : CN200810182416.4

文献号 : CN101409934B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈俊华黄俊伟

申请人 : 重庆重邮信科通信技术有限公司

摘要 :

本发明公开了一种应用平台与协议栈之间信令流处理的方法和装置,本发明的方法包括:各个应用平台与协议栈之间建立信令通道,协议栈存储各个应用平台的ID和信令通道的关系;协议栈将接收到来自各个应用平台的信令进行协议解析,解析出应用平台在信令中加入的ID和该信令的序列号,记录所述ID和序列号,并将信令进行处理或发送至相应的网络中;协议栈将处理后要回复的信令或接收到网络处理后回复的信令,按照所记录信令通道与应用平台ID的对应关系,将信令加入记录的所述ID和序列号,回复至ID相对应的应用平台。本发明通过在协议栈和各个应用平台之间建立基于ID和序列号的对应关系,实现多应用平台与协议栈之间信令交互,提高了协议栈的使用效率。

权利要求 :

1.一种应用平台与协议栈之间信令流处理的方法,其特征在于,

各个应用平台与协议栈之间建立信令通道,协议栈存储各个应用平台的ID和信令通道的关系;

协议栈将接收到来自各个应用平台的信令进行协议解析,解析出应用平台在信令中加入的ID和该信令的序列号,记录所述ID和该信令的序列号,并将信令进行处理或发送至相应的网络中;

协议栈将处理后要回复的信令或接收到网络处理后回复的信令,按照所记录信令通道与应用平台ID的对应关系,将信令加入记录的所述ID和该信令的序列号,回复至ID相对应的应用平台。

2.根据权利要求1所述的方法,其特征在于,所述协议栈处理后要回复的信令或接收到网络处理后回复的信令为广播信令时,在所述广播信令中加入对应所有应用平台的广播信令标识并发送。

3.根据权利要求1所述的方法,其特征在于,还包括:所述应用平台在发送的信令中加入功能平台标识,所述协议栈记录所述功能平台标识,并加入回复的信令中,所述应用平台接收到所述信令后,按照所述功能平台标识发送至相应的业务程序模块。

4.根据权利要求1所述的方法,其特征在于,还包括:在所述协议栈与各个应用平台之间还连接有信令流分发模块,用于存储所述各个应用平台的ID和信令通道的关系,将各个应用平台的信令流发送至所述协议栈,按照所述协议栈发送来信令中的应用平台ID,将所述信令回复至ID对应的应用平台。

5.一种应用平台与协议栈之间信令流处理的装置,其特征在于,包括:至少两个应用平台连接协议处理单元;

所述应用平台包括:

信令单元,用于连接所述协议栈建立信令通道,并获得应用平台ID单元产生的ID和序列号单元生成的序列号,加入到发出的信令中,接收来自所述协议栈的信令,应用平台ID单元,用于存储所述应用平台对应的ID;

序列号单元,用于为所述信令单元发出的每条信令生成序列号;

所述协议栈包括:

标识单元,用于存储协议处理单元获得的ID和建立信令通道的对应关系、及解析出的序列号;

协议处理单元,用于连接所述应用平台建立信令通道,获得所连接应用平台的ID并存储在标识单元中,解析所述应用平台在信令中加入的ID和该信令的序列号,并记录在所述标识单元中,并将信令进行信令处理,或协议处理后发送至相应的网络中;接收来自网络的信令,进行协议处理后,或将自身处理后要回复的信令加入在所述标识单元内记录的所述ID及序列号,回复至ID相对应的应用平台。

6.根据权利要求5所述的装置,其特征在于,所述协议处理单元内还包括广播模块,用于判断自身处理后要回复的信令,或来自网络中、进行协议处理后的信令为广播信令后,在所述广播信令中加入对应所有应用平台的广播信令标识并发送。

7.根据权利要求5所述的装置,其特征在于,还包括:所述应用平台还包括:功能平台标识单元,用于存储并生成与业务程序模块相对应的功能平台标识;

所述信令单元在发送信令的过程中,加入该信令所对应的功能平台标识;所述协议处理单元解析出信令中的功能平台标识并记录,并加入到回复给应用平台的信令中,所述信令单元按照所述信令解析出的功能平台标识,将信令发送至相应的业务程序模块。

8.根据权利要求5所述的装置,其特征在于,还包括:在所述协议栈与各个应用平台之间还连接有信令流分发模块,用于存储所述各个应用平台的ID和信令通道的对应关系,将各个应用平台的信令流发送至所述协议栈,将所述协议栈发送来的信令回复至ID对应的应用平台。

说明书 :

技术领域

本发明涉及通信技术领域,特别是指一种应用平台与协议栈之间信令流处理的方法和装置。

背景技术

在移动通信终端中,各种业务的发起均需要由应用平台向协议栈发送相应的指令,同时协议栈也需要将指令的执行状况以及一些其他的状态信息上报给应用平台。这些都是通过应用平台与协议栈之间的信令交互来完成的。例如:智能手机可以作为应用平台处理各种业务,如语音业务、数据业务等,完成各种业务处理功能,协议栈则将来自应用平台发起的各种业务进行相应的协议处理,如语音业务可通过GSM、CDMA、WiMAX、TDSCDMA等多种语音接入技术接入到网络中,完成空口和应用平台的信令流、语音流的处理,对于应用平台的数据业务,协议栈可通过应用平台之间的信令交互,通过GPRS、802等分组技术完成应用平台和相应网络之间的接入。
随着移动通信技术由第二代向第三代系统的发展和演进,3G网络空中接口带宽的增加,使得基于更高速率的业务和应用有了发展的必要环境。移动终端提供的数据增值业务也带来多元化发展。3G移动通信终端支持多接口多业务并发的特点也成为其超越2G移动终端吸引用户的一个闪光点。3G技术给移动通信终端带来了多接口多业务并发的特点,甚至对单一MMI来说,应用平台与协议栈之间也可以实现多业务,用户也可以一边拨打语音电话,一边做PS数据业务拨号,如图1所示,AT解析模块实现多协议处理。
应用平台与协议栈之间的信令流不再单一的被限制在如图1所示的人机接口(MMI,Man-Machine interface)与协议栈之间,在MMI进行业务的同时,用户也可以通过外部接口进行其他业务,此时多路AT流将会同时出现,如图2所示,但多接口多业务并发也随之带来了应用控制平面信令流复杂程度的增加。
AT指令是目前在移动通信终端中使用最为广泛的应用平台与协议栈之间的信令格式。通过应用平台发送AT指令,协议栈对接收到的指令进行解析处理和响应,可以实现对用户终端(UE,UserEquipment)的控制以及与网络业务的交互,如功能设置、呼叫、短信、电话簿、数据业务、补充业务等。应用平台发送到协议栈的AT指令可以分为执行指令、查询指令和帮助指令三种;而协议栈发送给应用平台的结果代码可以分为最终结果代码(Final Result Code,简称为FRC)、中间结果代码(Intermediate Result Code,简称为IRC)和主动结果代码(Unsolicited Result Code,简称为URC)三种。FRC用于指明AT指令的执行成功与否(即AT指令的响应结果),通常使用“OK”或“ERROR”表示,协议栈必须对应用平台的AT指令请求使用FRC做出响应。而IRC和URC指令则是在通信过程中,由协议栈主动上报给应用平台关于协议栈、外围设备或网络侧所发生的一些状态变化或事件。
目前的应用平台与协议栈之间信令流的处理过程中,协议栈的AT指令流来源单一,固定的来自于应用平台,而且AT指令采用一个应用平台与协议栈中一种协议处理模块之间的交互,或一个应用平台与协议栈中多个协议处理模块之间的交互。当应用平台为智能终端时,可通过接口连接其它应用平台,如连接另一个智能终端、或掌上电脑、个人PC等,共用其中一个应用平台所对应的协议栈时,这种处理方法存在下列缺陷:
由于存在多个不同的应用平台,如MMI、PC客户端等,协议栈无法区分不同应用平台的信令流。
当多个业务并发(如语音业务与数据业务并发)时,由于协议栈处理不同业务所需的时间不同,返回的响应可能出现乱序,如图3所示,此时应用平台无法区分该响应对应的是哪个应用平台发出的哪种业务的信令。

发明内容

有鉴于此,本发明在于提供一种应用平台与协议栈之间信令流处理的方法和装置,以解决上述协议栈无法区分不同应用平台的信令流及业务的问题。
为解决上述问题,本发明提供一种应用平台与协议栈之间信令流处理的方法,
各个应用平台与协议栈之间建立信令通道,协议栈存储各个应用平台的ID和信令通道的关系;
协议栈将接收到来自各个应用平台的信令进行协议解析,解析出应用平台在信令中加入的ID和该信令的序列号,记录所述ID和该信令的序列号,并将信令进行处理或发送至相应的网络中;
协议栈将处理后要回复的信令或接收到网络处理后回复的信令,按照所记录信令通道与应用平台ID的对应关系,将信令加入记录的所述ID和该信令的序列号,回复至ID相对应的应用平台。
优选的,所述协议栈处理后要回复的信令或接收到网络处理后回复的信令为广播信令时,在所述广播信令中加入对应所有应用平台的广播信令标识并发送。
优选的,还包括:所述应用平台在发送的信令中加入功能平台标识,所述协议栈记录所述功能平台标识,并加入回复的信令中,所述应用平台接收到所述信令后,按照所述功能平台标识发送至相应的业务程序模块。
优选的,还包括:在所述协议栈与各个应用平台之间还连接有信令流分发模块,用于存储所述各个应用平台的ID和信令通道的关系,将各个应用平台的信令流发送至所述协议栈,按照所述协议栈发送来信令中的应用平台ID,将所述信令回复至ID对应的应用平台。
本发明还提供一种应用平台与协议栈之间信令流处理的装置,包括:至少两个应用平台连接协议处理单元;
所述应用平台包括:
信令单元,用于连接所述协议栈建立信令通道,并获得应用平台ID单元产生的ID和序列号单元生成的序列号,加入到发出的信令中,接收来自所述协议栈的信令,
应用平台ID单元,用于存储所述应用平台对应的ID;
序列号单元,用于为所述信令单元发出的每条信令生成序列号;
所述协议栈包括:
标识单元,用于存储协议处理单元获得的ID和建立信令通道的对应关系、及解析出的序列号;
协议处理单元,用于连接所述应用平台建立信令通道,获得所连接应用平台的ID并存储在标识单元中,解析所述应用平台在信令中加入的ID和该信令的序列号,并记录在所述标识单元中,并将信令进行信令处理,或协议处理后发送至相应的网络中;接收来自网络的信令,进行协议处理后,或将自身处理后要回复的信令加入在所述标识单元内记录的所述ID及序列号,回复至ID相对应的应用平台。
优选的,所述协议处理单元内还包括广播模块,用于判断自身处理后要回复的信令,或来自网络中、进行协议处理后的信令为广播信令后,在所述广播信令中加入对应所有应用平台的广播信令标识并发送。
优选的,还包括:所述应用平台还包括:
功能平台标识单元,用于存储并生成与业务程序模块相对应的功能平台标识;
所述信令单元在发送信令的过程中,加入该信令所对应的功能平台标识;所述协议处理单元解析出信令中的功能平台标识并记录,并加入到回复给应用平台的信令中,所述信令单元按照所述信令解析出的功能平台标识,将信令发送至相应的业务程序模块。
优选的,还包括:在所述协议栈与各个应用平台之间还连接有信令流分发模块,用于存储所述各个应用平台的ID和信令通道的对应关系,将各个应用平台的信令流发送至所述协议栈,将所述协议栈发送来的信令回复至ID对应的应用平台。
本发明通过在协议栈和各个应用平台之间建立基于ID和序列号的对应关系,实现多个应用平台与一个协议栈之间的信令数据交互,提高了应用平台扩充能力,通过功能应用平台ID,可便于单个应用平台在使用多个业务同时,各个业务程序模块便于通过协议栈进行信令交互;每条信令上均对应有序列号,由于采用了序列号标示不同的信令,因此可以分辨出响应的信令对应的之前所发送的信令的对应关系。对于应用平台连续发送多个信令,可识别出回复的多个信令与发出信令的对应关系,避免信令间的乱序现象。。
图1是一个应用平台与一个协议栈信令交互的示意图;
图2是多个应用平台共用一个协议栈信令交互的示意图;

附图说明

图3是多个应用平台共用一个协议栈信令交互产生时序错误的示意图;
图4是信令流中加入ID和序列号的示意图;
图5是ID编号的示意图;
图6是方法实施例的流程图;
图7是协议栈与应用平台进行信令交互的示意图;
图8是信令流分发模块转发协议栈、应用平台之间信令流的示意图;
图9是装置实施例的结构图。
为清楚说明本发明中的方案,下面给出优选的实施例并结合附图详细说明。

具体实施方式

为实现多个应用平台共用一个协议栈,各个应用平台与该协议栈之间进行AT信令交互时,需要在AT信令流中附加应用ID与序列号信息。如附图4,在每一条AT信令的头部添加应用ID与序列号。
应用ID按照附图5的原则进行分配,表1给出了一个示例:使用一个字节(octet)来存放ID,ID高4位与低4位分别作为一、二级应用分类标识,高4位用于标识逻辑平台,比如MMI、外部USB接口等等;低4位用于标识特定逻辑平台中的功能应用,比如MMI中的手机邮件功能就可以作为独立的一个功能平台。下面的表1详细给出ID值的分配,协议栈记录各个应用平台ID和不同AT信令的序列号,当然,可以根据业务的实际情况调整ID。


表1
ID按一、二级进行分配,应用平台以移动终端为例,一级标识在移动终端设备制造设计时就可以固定——AT信令流要么来自MMI平台、要么来自USB口的外接平台,或其他逻辑平台;二级标识为逻辑平台所对应的各个功能平台标识,用于应用平台并发多个业务时,使用该功能平台标识,应用程序能够快速、准确的将AT分类处理。协按照这样的两级分配策略,当添加功能模块时,协议栈软件不用作任何修改,移动终端软件各模块之间的耦合度大大降低。
当IRC/URC主动上报时,在所述广播信令中加入对应所有应用平台的广播信令标识并发送,ID值为0xFF,表示该AT信令需要广播给所有应用平台。例如同时提供移动终端和通过USB外接PC端软件的移动终端,收到网络的电话呼入指示时,应用ID为0xFF的URC将同时上报给移动终端和PC端软件,用户就可以选择移动终端或PC端软件来接听该电话。
下面给出优选的实施例详细说明应用平台的处理流程,参见图5,图5是本发明方法实施例的流程图,包括:
步骤11:各个应用平台与协议栈之间建立信令通道,协议栈记录各个应用平台的ID和信令通道的关系;
协议栈可以是各种形式的适配器,包含多种通信协议,如GSM、WCDMA、TDSCDMA、GPRS、WiMAX、802协议和/或蓝牙协议的解析模块,各个解析模块可实现信令的解析、数据在网络与应用平台之间的交互。
协议栈不断扫描,当发现有应用平台接入后,会与该应用平台建立信令通道,并记录该应用平台的ID,如果该应用平台没有ID,会主动分配一个ID;
例如:A智能终端内包含应用平台和协议栈,当A终端通过USB数据线连接PC电脑,通过蓝牙连接B智能终端后,PC电脑和B智能终端内的应用平台会与A智能终端内的协议栈建立信令连接,A智能终端记录PC电脑和B智能终端内的应用平台的ID;
步骤12:协议栈将接收到来自各个应用平台的信令进行协议解析,并发送至相应的网络中;
协议栈将接收到来自各个应用平台的信令进行协议解析,解析出应用平台在信令中加入的ID和该信令的序列号,记录所述ID和序列号,并将信令进行处理或发送至相应的网络中;
例如,PC电脑的应用平台通过A智能终端发起802.11无线网络业务,B智能终端的应用平台发起CDMA电话业务,A智能终端内的协议栈接到信令请求后,通过相应的协议模块进行信令解析,发送至相应的网络中。当然,对于一些信令,协议栈自身也可以进行处理,并作出需要回复的信令。
步骤13:协议栈接收到来自网络的信令,按照信令通道与应用平台ID的对应关系,将收到信令回复至相应的应用平台。
如果是协议栈自身处理的信令,则直接回复得到相应的应用平台。
协议栈将处理后要回复的信令或接收到网络处理后回复的信令,按照所记录信令通道与应用平台ID的对应关系,将信令加入记录的所述ID和序列号,回复至ID相对应的应用平台。
上述的实施例中,每个应用平台还可根据功能平台ID将所接收的到信令发送至相应业务程序模块,例如,PC电脑发起无线网络业务中的IP电话业务和即时消息业务,PC电脑的应用平台会在信令中加入这两个业务的功能平台标识,当PC电脑接收到不同网络回复的信令后,会按照功能平台标识将信令回复至相应的业务程序模块。但如果是广播消息,例如:URC消息,协议栈将广播给所有AT信令通道。其信令交互的示意图如图6所示。
上述的实施例中,由于应用平台可能会存在多种,随着应用平台种类的扩充,进行调整或删减的时候,协议栈也必须进行相应修改,这样不利于应用平台和协议站内的模块维护。
为此,可建立各个应用平台与协议栈内的协议映射功能,在各个应用平台和协议栈之间建立一个信令流分发模块,即图7中的分发模块,信令流分发模块与协议栈之间建立唯一一个信令流通道,信令流分发模块又与每个应用平台建立一个信令通道。所有的各个应用平台的AT请求信令都经分发模块发送到协议栈;协议栈内的AT解析模块首先记录应用平台ID与序列号,完成相应动作后,将保存的应用平台ID、序列号与AT响应一并返回给AT信令流分发模块;分发模块再根据应用ID的第一级应用平台ID通过对应的信令通道将AT信令返回给应用平台;应用平台再根据应用ID的第二级功能平台ID将该AT信令返回给功能模块;功能模块再根据AT序列号判断是否为当前正在等待的AT响应并完成相应动作。其信令交互的示意图如图7所示。
协议栈上报的URC经分发模块到达每个应用平台。这样协议栈与应用平台分离,不同的通信终端进行功能扩展时不再需要协议栈进行修改,只要修改信令流分发模块即可;同时利用本发明提供的应用ID、AT序列号机制,支持多业务并发的应用平台软件设计更加简单、可靠。
上面详细说明了本发明的方法,对于本发明的方法可采用多种形式的装置实现,下面给出优选的实施例详细说明,参见图9,包括:至少两个以上的应用平台连接协议处理单元;
所述应用平台包括:
信令单元,用于连接所述协议栈建立信令通道,并获得应用平台ID单元产生的ID和序列号单元生成的序列号,加入到发出的信令中,接收来自所述协议栈的信令,
应用平台ID单元,用于存储所述应用平台对应的ID;
序列号单元,用于为所述信令单元发出的每条信令生成序列号;
所述协议栈包括:
标识单元,用于存储协议处理单元获得的ID和建立信令通道的对应关系、及解析出的序列号;
协议处理单元,用于连接所述应用平台建立信令通道,获得所连接应用平台的ID并存储在标识单元中,解析所述应用平台在信令中加入的ID和该信令的序列号,并记录在所述标识单元中,并将信令进行信令处理,或协议处理后发送至相应的网络中;接收来自网络的信令,进行协议处理后,或将自身处理后要回复的信令加入在所述标识单元内记录的所述ID及序列号,回复至ID相对应的应用平台。
优选的,所述协议处理单元内还包括广播模块,用于判断自身处理后要回复的信令,或来自网络中、进行协议处理后的信令为广播信令后,在所述广播信令中加入对应所有应用平台的广播信令标识并发送。
优选的,还包括:所述应用平台还包括:
功能平台标识单元,用于存储并生成与业务程序模块相对应的功能平台标识;
所述信令单元在发送信令的过程中,加入该信令所对应的功能平台标识;所述协议处理单元解析出信令中的功能平台标识并记录,并加入到回复给应用平台的信令中,所述信令单元按照所述信令解析出的功能平台标识,将信令发送至相应的业务程序模块。
优选的,还包括:在所述协议栈与各个应用平台之间还连接有信令流分发模块,用于存储所述各个应用平台的ID和信令通道的对应关系,将各个应用平台的信令流发送至所述协议栈,将所述协议栈发送来信令回复至ID对应的应用平台。
优选的,所述协议处理单元处理的协议为GSM、WCDMA、TDSCDMA、GPRS、WiMAX、802协议和/或蓝牙协议。
本发明通过在协议栈和各个应用平台之间建立基于ID和序列号的对应关系,实现多个应用平台与一个协议栈之间的信令数据交互,提高了应用平台扩充能力,通过功能应用平台ID,可便于单个应用平台在使用多个业务同时,各个业务程序模块便于通过协议栈进行信令交互;每条信令上均对应有序列号,由于采用了序列号标示不同的信令,因此可以分辨出响应的信令对应的之前所发送的信令的对应关系。对于应用平台连续发送多个信令,可识别出回复的多个信令与发出信令的对应关系,避免信令间的乱序现象。
对于本发明各个实施例中所阐述的方法和装置,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。