一种交换系统及其中接续消息的处理方法

文档序号:7589380阅读:203来源:国知局
专利名称:一种交换系统及其中接续消息的处理方法
技术领域
本发明涉及一种交换系统及其中接续消息的处理方法,尤其涉及通讯领域的程控交换机的交换系统及其中接续消息的打包处理方法。
背景技术
电信电路域交换系统目前广泛采用交换/控制分离的结构,基本结构如图1所示的MP(Management Processor管理模块)-SWITCH(交换模块)结构,MP和SWITCH模块处于不同的单板上,MP管理呼叫,SWITCH只管接收MP的接续消息并处理。这样做的好处可以使系统结构划分清晰,功能独立,便于管理。一个呼叫的基本流程中需要MP向SWITCH模块发送多个接续消息,以实现把用户A和用户B的通话链路连接起来或者断开连接。
在现有的设计中,每个接续消息都是单独发送,为处理简单,MP模块向SWITCH模块发送接续消息,SWITCH模块不应答。这样在交换系统中,MP和SWITCH模块之间就会存在大量频繁的消息交互,在大容量交换系统中,此时两个模块之间的消息流量限制或者单板上的CPU对消息的处理能力限制就成为整个系统容量的瓶颈。
通过研究在以前系统运行时MP和SWITCH之间的消息特点可以发现它们之间的消息总流量并不大,这些接续消息以及应答消息的消息结构都非常小,通常也就几个,最多十几个字节大小,但是数目却非常多,这样两个模块的CPU都被大量占用于每条消息收发的协议栈以及进程调度处理,在增大系统处理容量的时候就会遇到两种问题一、若消息量大到一定程度时导致MP模块或者SWITCH模块的CPU来不及处理消息收发及调度,从而造成大量接续消息丢失。二、即使两个模块的CPU能够处理如此多的消息,那么这些处理也将占用大量的CPU运行时间,使得系统处理冗余度下降,影响稳定性。

发明内容
本发明所要解决的技术问题在于提供一种交换系统和对其中接续消息的处理方法,克服现有技术中的MP和SWITCH模块间大量接续消息降低通讯效率的缺点,解决现有技术中存在的MP和SWITCH模块间通讯能力的瓶颈问题。
本发明的另一目的在于提供一种交换系统和对其中接续消息的处理方法,同时提出了支持MP和SWITCH模块之中任何一方存在主备时的解决方案。
为了实现上述目的,本发明提供了一种交换系统,用于程控交换机对接续消息的处理,包括有分离的管理模块和交换模块,所述管理模块用于管理呼叫,所述交换模块用于接收所述接续消息并处理,其特点在于,在所述管理模块和交换模块之间还包括一消息搜集模块,其内设置有一消息缓存区,用于缓存所搜集到的接续消息,并将所述接续消息在达到预定的消息数量或预定的时延后通过打包方式发送处理。
上述的交换系统,其特点在于,所述搜集模块与所述管理模块或所述交换模块位于同一块单板上。
上述的交换系统,其特点在于,所述搜集模块还包括有定时器。
上述的交换系统,其特点在于,所述管理模块和/或所述交换模块包括主用模块和备用模块。
本发明还提供了一种交换系统中接续消息的处理方法,用于程控交换机对接续消息的处理,所述交换系统中包括有分离的管理模块和交换模块,所述管理模块用于管理呼叫,所述交换模块用于接收所述接续消息并处理,其特点在于,该方法包括步骤一,在所述交换系统中设置一消息搜集模块,截获所有发往所述交换模块上处理接续的进程的接续消息,并将其缓存起来;步骤二,所述搜集模块根据是否达到预定的消息数量或者一预定时延来确定是否将缓存的接续消息通过打包方式发送给所述交换模块处理;步骤三,所述交换模块接收并解析打包后的接续消息,并进行相应处理。
上述的交换系统中接续消息的处理方法,其特点在于,在步骤三中,所述交换模块接收到打包后的接续消息后,还给所述搜集模块发送应答消息。
上述的交换系统中接续消息的处理方法,其特点在于,在步骤一中,通过在所述搜集模块中管理一个可存放消息的缓存队列,在截获到接续消息时把所述接续消息从所述缓冲队列的存放指针对应的存储区按顺序存放,同时每次存放之后向后移动所述存放指针,当从所述缓冲队列末尾向后继续移动时令所述存放指针指向队列的头部作缓存,并且,当移动所述存放指针将使得所述缓冲队列的存放指针和发送指针重叠时,不移动所述存放指针,并将新来的接续消息丢弃。
上述的交换系统中接续消息的处理方法,其特点在于,在步骤二中,发送消息的步骤如下所述搜集模块在截获到所述接续消息时判断此时缓存的消息数目是否超过一发送门限,如果超过发送门限且上次发送的消息所述交换模块已经应答,则把所述接续消息打包发送出去;所述搜集模块从所述缓冲队列的发送指针对应的存储区开始发送所述接续消息至所述交换模块,并且每次发送把从发送指针到存放指针的全部消息打包进行发送,如果从缓冲队列头部到末尾之间的消息超过所述发送门限,则把发送门限个消息打包发送出去,同时记录上次打包发送的消息中包含的记录数目并设置应答定时器;当收到来自所述交换模块的应答后关闭所述应答定时器,并把所述发送指针向后移动记录数目个位置,如果其指向的位置超过所述缓冲队列的最大长度,则其移动后指向的位置为移动前指针指向的位置+记录数目-缓冲队列最大长度;当所述应答定时器超时则说明上次发送的消息未发送成功,将上次发送的消息重新发送出去。
上述的交换系统中接续消息的处理方法,其特点在于,所述步骤二还包括一步骤所述搜集模块设置一定时器,产生所述预定时延,当所述定时器超时时判断如果上次消息已经应答并且消息缓存区中存在等待发送的消息,不论所述缓存区中存在的等待发送的消息是否超过发送门限,均立即将所述等待发送的消息打包发送出去。
上述的交换系统中接续消息的处理方法,其特点在于,所述搜集模块每次收到来自所述交换模块的应答后都检查消息缓冲队列中的缓存消息数目是否超过发送门限,如果超过,则立即把发送门限个消息打包发送出去。
上述的交换系统中接续消息的处理方法,其特点在于,当所述交换模块存在主用模块和备用模块时,所述搜集模块打包发送的消息只向其主用模块发送,由其主用模块向其备用模块转发。
上述的交换系统中接续消息的处理方法,其特点在于,当所述管理模块存在主用模块和备用模块,每次所述管理模块的主用模块所截获的接续消息均需要向其备用模块转发,并且在消息中附加上缓冲队列发送指针和存放指针指向的位置以及所述记录数目,而且,所述管理模块的主用模块除重发消息外,在发送所述打包的接续消息并收到所述交换模块应答时,均需要将改变后的队列参数向备用模块转发。
上述的交换系统中接续消息的处理方法,其特点在于,所述管理模块的备用模块和主用模块共同维护所述缓冲队列,收到所述接续消息后将其存入缓冲队列,同时检查其队列参数和主用模块的参数是否一致,如果不一致则请求主用模块将缓冲队列中的数据的差异部分同步到备用模块。
采用本发明所述方法,与现有技术相比,大大降低了MP与SWITCH模块上的CPU占用率,提高了MP与SWITCH模块之间的通讯效率,同时也提高了整个交换系统的处理能力。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。


图1是交换机中典型的MP-SWITCH结构示意图;图2是本发明一较佳实施例的结构示意图;图3是本发明另一较佳实施例的结构示意图;图4是本发明的消息缓冲区队列示意图;图5是本发明实现消息交互的示意图。
具体实施例方式
如图1所示,是交换机中典型的MP-SWITCH结构示意图,其中实线为通话的PCM通道,虚线为控制消息通道,可以为以太网,HDLC等连接。用户A和B的呼叫控制在MP模块10上实现,而A和B通话的PCM连接在SWITCH模块20由接续芯片实现。MP模块10发送接续消息指示SWITCH模块20把通话用户40连接起来或者断开。
如图2、3所示的本发明的两实施例,较佳的可增加一搜集模块30,其设置有一消息缓存区,用于缓存所搜集到的接续消息,并将所述接续消息通过打包方式发送处理。所述搜集模块30可与所述管理模块10(如图2所示)或所述交换模块20(如图3所示)位于同一块单板上。
如图2所示,在MP模块10增加一个消息搜集(COLLECT)模块30,该模块30和MP模块10位于同一块单板上,整个系统变为图2所示结构。MP模块10发送的接拆续消息首先被搜集模块30截获,搜集模块30开一片可以存放一定数目(CAPACITY)消息的内存空间作为缓冲将消息缓存起来。搜集模块30管理的消息缓冲环形队列31如图4所示,消息交互流程图如图5所示,其中COLLECT模块30工作流程如下所述(1)截获到接拆续消息时从缓冲队列31的存放(INPUT)指针32对应的存储区按顺序存放,同时每次存放之后向后移动指针32,当从队列末尾38向后继续移动时令其指向队列的头部36。
(2)截获到接拆续消息时搜集模块30都判断此时缓存的消息数目是否超过一定的数目,该数目由每条接拆续消息的大小以及消息通道适合发送的打包消息尺寸决定,称作发送门限,如果超过发送门限且上次发送消息已经应答,则把消息打包发送出去。
(3)发送打包消息时从缓冲队列31的发送(OUTPUT)指针34对应的存储区开始发送,每次发送把从OUTPUT指针34到INPUT指针32的全部消息打包进行发送,如果从HEAD36到TAIL38之间的消息超过发送门限,则把发送门限个消息打包发送出去。同时记录上次打包发送的消息中包含的记录数目(MSGNUM)并设置应答定时器。如果SWITCH模块20存在备用模块,则只向主用模块发送。由SWITCH模块20的主用模块向备用模块转发。
(4)当收到来自SWITCH模块20的应答后杀死应答定时器,并把OUTPUT指针34向后移动MSGNUM个位置,如果其指向的位置超过队列最大长度,则其移动后指向的位置为PRESENT+MSGNUM-CAPACITY,其中PRESENT为移动前指针指向的位置。
(5)当应答定时器超时则说明上次发送未收到应答,此时应根据OUTPUT指针34和MSGNUM把上次发送的消息重新发送出去。
(6)如果第(1)条中的移动指针将使得INPUT指针32和OUTPUT指针34重叠时说明该缓冲区已满,说明此时系统通讯出了问题或者CPU处理能力达到极限,此时将新来的消息丢弃,不移动INPUT指针32以避免覆盖以前未发送的消息。
(7)由于MP模块10上的话务密度不均匀,当话务不忙的时候有可能在很长时间积攒不到发送门限,因此会给用户带来较长时间的延迟,为此,需要搜集模块设置一个定时器(图中未示),当定时器到达时判断如果上次消息已经应答并且消息缓存中存在等待发送的消息,不论其是否超过发送门限,立即将其打包发送出去。
(8)每次收到SWITCH模块20的应答消息后应当检查消息缓冲队列31中的缓存消息数目是否超过发送门限,如果超过,则需要立即把发送门限个消息打包发送出去。
(9)如果MP模块10存在备份,则每次主用模块截获接拆续消息时均需要向备份模块转发。并且在消息中附加上环形队列OUTPUT和INPUT指针指向的位置以及MSGNUM。备份模块和主用模块维护一套相同的环形队列。收到消息后将接拆续消息存入缓冲队列。同时检查队列参数和主用模块的参数是否一致,如果不一致则请求主用模块将缓冲队列31中的数据的差异部分同步到备用模块。
(10)如果MP模块10存在备份,则主用模块发送打包消息(重发消息除外),收到SWITCH模块20应答时均需要将改变后的队列参数向备用模块转发。备用模块检查队列参数和主用模块的参数是否一致,如果不一致则请求主用模块将缓冲队列中的数据的差异部分同步到备用模块。
其中,SWITCH模块20的工作流程如下(1)收到搜集模块30发送的打包消息,则解析该消息内容并执行消息包含的命令。并给搜集模块发送消息应答。
(2)如果SWITCH模块10存在备份,则每次收到打包后的接拆续消息主用模块均向备用模块转发。
如图3所示的本发明的另一较佳实施例,由于MP模块10需要实现处理呼叫相关的信令等功能,因此一般CPU处理能力设计的比较强大,相对来说SWITCH模块20的功能相对简单,为节省成本起见,一般CPU的处理能力设计的比较弱,并且有的系统设计可能会有多个MP模块10同时向同一个SWITCH模块20发送接续消息。此时系统处理能力的瓶颈集中在SWITCH模块20上的CPU处理能力限制上。因此,只需要缓解SWITCH模块20的CPU处理能力就能达到提高系统整体处理能力的目的,在大容量交换系统中对于接收大量消息而引发的频繁的调度需要占用大量的CPU资源,方案二的主要立足点就在于避免频繁调度。基于此,可以将消息搜集(COLLECT)模块30设计和SWITCH模块位于同一块单板上,整个系统变为如图3所示结构,消息交互流程图如图5所示。
(1)MP模块上和现有的方案相比没有任何改动,实现方式为所有的接续消息逐条发送,如果SWITCH单板10有主备的话MP模块10同时向主备SWITCH模块20发送接续消息,MP模块10和SWITCH模块20之间的消息没有消息应答机制。
(2)COLLECT模块首先截获MP发送过来的接续消息,COLLECT模块维护一个缓存队列,将接收到的接续消息先缓存起来。
(3)在缓存的接续消息达到预置的数量或者缓存时间超过预置的时延后将缓存的消息打包派发给SWITCH模块处理。
(4)SWITCH模块接收并解析打包后的接续消息,并进行相应处理。
图2和图3两种实施例比较,图2所示的实施例同时对MP模块和SWITCH模块的消息收发和调度都得到了优化,优化效果明显。而图3所示的实施例只优化了SWITCH模块的CPU的调度处理能力。其优化效果不如图2所示的实施例,但是与现有方案相比改动较小,系统复杂度小。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种交换系统,用于程控交换机对接续消息的处理,包括有分离的管理模块和交换模块,所述管理模块用于管理呼叫,所述交换模块用于接收所述接续消息并处理,其特征在于,在所述管理模块和交换模块之间还包括一消息搜集模块,其内设置有一消息缓存区,用于缓存所搜集到的接续消息,并将所述接续消息在达到预定的消息数量或预定的时延后通过打包方式发送处理。
2.根据权利要求1所述的交换系统,其特征在于,所述搜集模块与所述管理模块或所述交换模块位于同一块单板上。
3.根据权利要求1所述的交换系统,其特征在于,所述搜集模块还包括有定时器。
4.根据权利要求1或2或3所述的交换系统,其特征在于,所述管理模块和/或所述交换模块包括主用模块和备用模块。
5.一种交换系统中接续消息的处理方法,用于程控交换机对接续消息的处理,所述交换系统中包括有分离的管理模块和交换模块,所述管理模块用于管理呼叫,所述交换模块用于接收所述接续消息并处理,其特征在于,该方法包括步骤一,在所述交换系统中设置一消息搜集模块,截获所有发往所述交换模块上处理接续的进程的接续消息,并将其缓存起来;步骤二,所述搜集模块根据是否达到预定的消息数量或者一预定时延来确定是否将缓存的接续消息通过打包方式发送给所述交换模块处理;步骤三,所述交换模块接收并解析打包后的接续消息,并进行相应处理。
6.根据权利要求5所述的交换系统中接续消息的处理方法,其特征在于,在步骤三中,所述交换模块接收到打包后的接续消息后,还给所述搜集模块发送应答消息。
7.根据权利要求6所述的交换系统中接续消息的处理方法,其特征在于,在步骤一中,通过在所述搜集模块中管理一个可存放消息的缓存队列,在截获到接续消息时把所述接续消息从所述缓冲队列的存放指针对应的存储区按顺序存放,同时每次存放之后向后移动所述存放指针,当从所述缓冲队列末尾向后继续移动时令所述存放指针指向队列的头部作缓存,并且,当移动所述存放指针将使得所述缓冲队列的存放指针和发送指针重叠时,不移动所述存放指针,并将新来的接续消息丢弃。
8.根据权利要求6或7所述的交换系统中接续消息的处理方法,其特征在于,在步骤二中,发送消息的步骤如下所述搜集模块在截获到所述接续消息时判断此时缓存的消息数目是否超过一发送门限,如果超过发送门限且上次发送的消息所述交换模块已经应答,则把所述接续消息打包发送出去;所述搜集模块从所述缓冲队列的发送指针对应的存储区开始发送所述接续消息至所述交换模块,并且每次发送把从发送指针到存放指针的全部消息打包进行发送,如果从缓冲队列头部到末尾之间的消息超过所述发送门限,则把发送门限个消息打包发送出去,同时记录上次打包发送的消息中包含的记录数目并设置应答定时器;当收到来自所述交换模块的应答后关闭所述应答定时器,并把所述发送指针向后移动记录数目个位置,如果其指向的位置超过所述缓冲队列的最大长度,则其移动后指向的位置为移动前指针指向的位置+记录数目一缓冲队列最大长度;当所述应答定时器超时则说明上次发送的消息未发送成功,将上次发送的消息重新发送出去。
9.根据权利要求8所述的交换系统中接续消息的处理方法,其特征在于,所述步骤二还包括一步骤所述搜集模块设置一定时器,产生所述预定时延,当所述定时器超时时判断如果上次消息已经应答并且消息缓存区中存在等待发送的消息,不论所述缓存区中存在的等待发送的消息是否超过发送门限,均立即将所述等待发送的消息打包发送出去。
10.根据权利要求8所述的交换系统中接续消息的处理方法,其特征在于,所述搜集模块每次收到来自所述交换模块的应答后都检查消息缓冲队列中的缓存消息数目是否超过发送门限,如果超过,则立即把发送门限个消息打包发送出去。
11.根据权利要求8所述的交换系统中接续消息的处理方法,其特征在于,当所述交换模块存在主用模块和备用模块时,所述搜集模块打包发送的消息只向其主用模块发送,由其主用模块向其备用模块转发。
12.根据权利要求8所述的交换系统中接续消息的处理方法,其特征在于,当所述管理模块存在主用模块和备用模块,每次所述管理模块的主用模块所截获的接续消息均需要向其备用模块转发,并且在消息中附加上缓冲队列发送指针和存放指针指向的位置以及所述记录数目,而且,所述管理模块的主用模块除重发消息外,在发送所述打包的接续消息并收到所述交换模块应答时,均需要将改变后的队列参数向备用模块转发。
13.根据权利要求12所述的交换系统中接续消息的处理方法,其特征在于,所述管理模块的备用模块和主用模块共同维护所述缓冲队列,收到所述接续消息后将其存入缓冲队列,同时检查其队列参数和主用模块的参数是否一致,如果不一致则请求主用模块将缓冲队列中的数据的差异部分同步到备用模块。
全文摘要
本发明涉及一种交换系统及对其中接续消息的处理方法,该系统包括有分离的管理模块、交换模块以及一搜集模块,搜集模块截获所有发往所述交换模块上处理接续的进程的接续消息,并将其缓存起来;根据是否达到预定的消息数量或者一预定时延来确定是否将缓存的接续消息通过打包方式发送给交换模块处理;交换模块接收并解析打包后的接续消息,并进行相应处理。本发明的交换系统及对其中接续消息打包处理的方法解决了现有大容量交换系统中管理模块和交换模块之间消息流量限制或者单板上CPU对消息处理能力限制成为整个系统容量的瓶颈的问题,并且使得系统处理能力提高,增强了系统的稳定性。
文档编号H04L12/56GK1585378SQ20041000912
公开日2005年2月23日 申请日期2004年5月24日 优先权日2004年5月24日
发明者杜骏, 童晓演, 王茂华 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1