CN1330154C - 一种交换系统中接续消息的处理方法 - Google Patents
一种交换系统中接续消息的处理方法 Download PDFInfo
- Publication number
- CN1330154C CN1330154C CNB2004100091261A CN200410009126A CN1330154C CN 1330154 C CN1330154 C CN 1330154C CN B2004100091261 A CNB2004100091261 A CN B2004100091261A CN 200410009126 A CN200410009126 A CN 200410009126A CN 1330154 C CN1330154 C CN 1330154C
- Authority
- CN
- China
- Prior art keywords
- module
- message
- connect message
- packing
- connect
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种交换系统及对其中接续消息的处理方法,该系统包括有分离的管理模块、交换模块以及一搜集模块,搜集模块截获所有发往所述交换模块上处理接续的进程的接续消息,并将其缓存起来;根据是否达到预定的消息数量或者一预定时延来确定是否将缓存的接续消息通过打包方式发送给交换模块处理;交换模块接收并解析打包后的接续消息,并进行相应处理。本发明的交换系统及对其中接续消息打包处理的方法解决了现有大容量交换系统中管理模块和交换模块之间消息流量限制或者单板上CPU对消息处理能力限制成为整个系统容量的瓶颈的问题,并且使得系统处理能力提高,增强了系统的稳定性。
Description
技术领域
本发明涉及一种交换系统中接续消息的处理方法,尤其涉及通讯领域的程控交换机的交换系统及其中接续消息的打包处理方法。
背景技术
电信电路域交换系统目前广泛采用交换/控制分离的结构,基本结构如图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模块上的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所示的实施例,但是与现有方案相比改动较小,系统复杂度小。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (9)
1、一种交换系统中接续消息的处理方法,用于程控交换机对接续消息的处理,所述交换系统中包括有分离的管理模块和交换模块,所述管理模块用于管理呼叫,所述交换模块用于接收所述接续消息并处理,其特征在于,该方法包括:
步骤一,在所述交换系统中设置一消息搜集模块,所述消息搜集模块管理一个可存放消息的缓存队列,在截获所有发往所述交换模块上处理接续的进程的接续消息时,把所述接续消息从缓存队列的存放指针对应的存储区按顺序存放,同时每次存放之后向后移动所述存放指针,当从所述缓冲队列末尾向后继续移动时令所述存放指针指向队列的头部作缓存;
步骤二,所述搜集模块根据超过预定的消息数量或者一预定时延来确定将缓存的接续消息通过打包方式发送给所述交换模块处理;
步骤三,所述交换模块接收并解析打包后的接续消息,并进行相应处理。
2、根据权利要求1所述的交换系统中接续消息的处理方法,其特征在于,在步骤三中,所述交换模块接收到打包后的接续消息后,还给所述搜集模块发送应答消息。
3、根据权利要求2所述的交换系统中接续消息的处理方法,其特征在于,在步骤一中,进一步包括当移动所述存放指针将使得所述缓冲队列的存放指针和发送指针重叠时,不移动所述存放指针,并将新来的接续消息丢弃。
4、根据权利要求2或3所述的交换系统中接续消息的处理方法,其特征在于,在步骤二中,发送消息的步骤如下:
所述搜集模块在截获到所述接续消息时判断此时缓存的消息数目是否超过一发送门限,如果超过发送门限且上次发送的消息所述交换模块已经应答,则把所述接续消息打包发送出去;
所述搜集模块从所述缓冲队列的发送指针对应的存储区开始发送所述接续消息至所述交换模块,并且每次发送把从发送指针到存放指针的全部消息打包进行发送,如果从缓冲队列头部到末尾之间的消息超过所述发送门限,则把发送门限个消息打包发送出去,同时记录上次打包发送的消息中包含的记录数目并设置应答定时器;
当收到来自所述交换模块的应答后关闭所述应答定时器,并把所述发送指针向后移动记录数目个位置,如果其指向的位置超过所述缓冲队列的最大长度,则其移动后指向的位置为:移动前指针指向的位置+记录数目-缓冲队列最大长度;
当所述应答定时器超时则说明上次发送的消息未发送成功,将上次发送的消息重新发送出去。
5、根据权利要求4所述的交换系统中接续消息的处理方法,其特征在于,所述步骤二还包括一步骤:
所述搜集模块设置一定时器,产生所述预定时延,当所述定时器超时时判断如果上次消息已经应答并且消息缓存区中存在等待发送的消息,不论所述缓存区中存在的等待发送的消息是否超过发送门限,均立即将所述等待发送的消息打包发送出去。
6、根据权利要求4所述的交换系统中接续消息的处理方法,其特征在于,所述搜集模块每次收到来自所述交换模块的应答后都检查消息缓冲队列中的缓存消息数目是否超过发送门限,如果超过,则立即把发送门限个消息打包发送出去。
7、根据权利要求4所述的交换系统中接续消息的处理方法,其特征在于,当所述交换模块存在主用模块和备用模块时,所述搜集模块打包发送的消息只向其主用模块发送,由其主用模块向其备用模块转发。
8、根据权利要求4所述的交换系统中接续消息的处理方法,其特征在于,当所述管理模块存在主用模块和备用模块,每次所述管理模块的主用模块所截获的接续消息均需要向其备用模块转发,并且在消息中附加上缓冲队列发送指针和存放指针指向的位置以及所述记录数目,而且,所述管理模块的主用模块除重发消息外,在发送所述打包的接续消息并收到所述交换模块应答时,均需要将改变后的队列参数向备用模块转发。
9、根据权利要求8所述的交换系统中接续消息的处理方法,其特征在于,所述管理模块的备用模块和主用模块共同维护所述缓冲队列,收到所述接续消息后将其存入缓冲队列,同时检查其队列参数和主用模块的参数是否一致,如果不一致则请求主用模块将缓冲队列中的数据的差异部分同步到备用模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100091261A CN1330154C (zh) | 2004-05-24 | 2004-05-24 | 一种交换系统中接续消息的处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100091261A CN1330154C (zh) | 2004-05-24 | 2004-05-24 | 一种交换系统中接续消息的处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1585378A CN1585378A (zh) | 2005-02-23 |
CN1330154C true CN1330154C (zh) | 2007-08-01 |
Family
ID=34600198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100091261A Expired - Fee Related CN1330154C (zh) | 2004-05-24 | 2004-05-24 | 一种交换系统中接续消息的处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1330154C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101335694B (zh) * | 2007-06-29 | 2011-03-02 | 联想(北京)有限公司 | 中断处理方法和系统 |
CN101136772B (zh) * | 2007-09-28 | 2010-10-27 | 华为技术有限公司 | 定时发送报文的方法及报文发送模块 |
CN102045654B (zh) * | 2009-10-10 | 2015-01-28 | 上海中兴通讯技术有限责任公司 | 异步socket通讯方法及采用该方法的手机定位系统 |
CN104967579B (zh) * | 2015-06-30 | 2018-04-06 | 上海斐讯数据通信技术有限公司 | 交换机mac 地址同步方法以及系统 |
CN107038075B (zh) * | 2015-07-14 | 2020-12-25 | 阿里巴巴集团控股有限公司 | 消息队列系统以及实现消息通信的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6044078A (en) * | 1996-04-11 | 2000-03-28 | Nec Corporation | Method of and system for exchanging information of payload fields of ATM cells |
US6636507B1 (en) * | 1999-03-08 | 2003-10-21 | Sony Corporation | Frame data exchanging method and apparatus |
CN1450767A (zh) * | 2002-04-10 | 2003-10-22 | 深圳市中兴通讯股份有限公司 | 一种数据包转发控制装置和方法 |
-
2004
- 2004-05-24 CN CNB2004100091261A patent/CN1330154C/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6044078A (en) * | 1996-04-11 | 2000-03-28 | Nec Corporation | Method of and system for exchanging information of payload fields of ATM cells |
US6636507B1 (en) * | 1999-03-08 | 2003-10-21 | Sony Corporation | Frame data exchanging method and apparatus |
CN1450767A (zh) * | 2002-04-10 | 2003-10-22 | 深圳市中兴通讯股份有限公司 | 一种数据包转发控制装置和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1585378A (zh) | 2005-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2002215901B2 (en) | Method and system for exchanging information between communication networks | |
CN101179790A (zh) | 一种移动终端处理器之间的串口通信方法 | |
CN101997727B (zh) | 一种通讯管理机主备机无缝切换的装置及其方法 | |
CN1330154C (zh) | 一种交换系统中接续消息的处理方法 | |
CN100461882C (zh) | 一种短消息系统中对网元进行重试的方法 | |
CN101753584A (zh) | VxWorks系统下提高智能变电站快速报文处理速度的方法 | |
CN101217587A (zh) | 收取短信的方法以及装置 | |
CN101772007A (zh) | 一种改进的全网信令跟踪系统及方法 | |
CN101715252A (zh) | 一种群集短信中心及其实现容灾分流的方法 | |
CN101459694A (zh) | 针对分布式文件系统的高可用消息传输框架和方法 | |
CN100571219C (zh) | 一种负载分担路由器以及实现负载分担的设备、方法 | |
CN101616365A (zh) | 一种基于并行队列的短消息重试系统及方法 | |
CN100466637C (zh) | 一种信令消息负荷分担的方法 | |
CN100518172C (zh) | 一种h.248协议的信令传输适配方法及系统 | |
CN101378538B (zh) | 一种群发消息处理方法及系统 | |
CN101321140B (zh) | 一种数字中继网关及其实现方法 | |
CN100375454C (zh) | 一种网络计算机终端与服务器的通讯方法 | |
CN101019439B (zh) | 一种多媒体数据集中存储装置及方法 | |
CN101123471A (zh) | 可变带宽通信寻址数据处理方法 | |
CN101060487B (zh) | 一种数据转发系统和方法 | |
CN208971544U (zh) | 一种通信平台整合的通讯系统 | |
CN100484110C (zh) | 一种处理信令链路切换的方法及设备 | |
CN101262533B (zh) | 液化气余量监控系统 | |
WO2008128405A1 (fr) | Système optimisé basé sur un protocole de transport de signalisation de réseau ip et son procédé d'obtention | |
CN1564172A (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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20070801 Termination date: 20140524 |