专利名称:降低m2pa数据丢失的方法及判断mtp3是否发生故障的方法
技术领域:
本发明属于IP网络的数据发送领域,具体涉及一种在处理机故障时降低 M2PA (MTP2 User Peer-to-Peer Adaptation Layer, MTP2用户对等适配协议, MTP2是Signaling System 7 (SS7) Message Transfer Part 2,信令传输第二 部分)数据丢失的方法,以及判断MTP3是否发生处理机故障的方法。
背景技术:
随着IP网络技术的逐步成熟,出现了在IP网络上传输七号信令等电路交 换信令协议的需求。为了满足在IP网络上传输信令协议的需求,IETF (Internet Engineering Task Force, Internet工程任务组)网络工作组成立了专门的信 令传输小组,他们所制订的IP网络SIGTRAN (Signaling Transport)协议(即 IP网络信令传输协议)支持通过IP网络传输传统电路交换信令。2005年IETF 工作组正式发布了 MTP2对等适配层协议M2PA (M2PA协议的规定见RFC4165, RFC为Request For Comments,英特网标准草案),M2PA协议实际上不是一种 适配协议,而是和SCTP (Stream Control Transmission Protocol,流控制传 输协议)协议一起实现MTP2的功能。通过M2PA协议, 一条SCTP在IP网 的连接被完全封装成一条信令链路,而M2PA层上的MTP3 (Signaling System 7 (SS7) Message Transfer Part 3,信令传输第三部分)协议可以像管理一条
PSTN (Public Switched Tel印hone Network,公共交换电话网)信令链路一样
无缝地对其进行管理。
根据RFC4165,目前对M2PA从对端接收到的数据并没有明确说明数据如何 有效地被缓存,只是说明在本地处理机故障时需要缓存,但是对于M2PA和MTP3 在不同的处理机工作时,当MTP3发生处理机故障时,M2PA发现MTP3处理机故 障时需要一个时间,那么在M2PA发现MTP3发生处理机故障时之前这段时间, 从对端接收到的数据发送到MTP3时很可能被丢失,影响了通讯数据的安全,进 而影响了通讯效果。
发明内容
本发明的目的在于克服现有技术的不足,提供一种降低M2PA数据丢失的方 法。该方法不仅适用于M2PA和MTP3处于不同的处理机,还适用于M2PA和MTP3 处于相同的处理机,可使数据可靠传输到MTP3。
本发明的另一目的在于提供一种判断MTP3是否发生故障的方法。
为解决上述技术问题,本发明是通过以下技术方案实现的 一种降低M2PA数据丢失的方法,包括如下步骤 步骤A.本端M2PA把接收到的对端M2PA数据保存在其接收缓存中; 步骤B.本端M2PA将接收缓存中的数据发送到本端MTP3,如果发送成功执 行步骤C,否则执行步骤D;
步骤C.本端M2PA继续接收来自对端M2PA的数据;
步骤D.设置本端M2PA本端处理机故障,然后向对端发送本端处理机故障消 息,如果本端处理机故障消息发出后收到对端的数据,那么缓存这些数据,同 时对这些数据不进行认证,待故障处理好后将缓存的数据继续发送给本端MTP3。
为了使接收缓存中能有更多的空间保存数据,所述步骤C中,在本端M2PA 继续接收来自对端M2PA的数据之前可将已发送成功的数据从接收缓存中删除。
所述步骤B中,本端M2PA发送到本端MTP3的数据是按先后顺序发送的。
另一种降低M2PA数据丢失的方法,包括如下步骤 步骤A.本端M2PA把接收到的对端M2PA数据发送到本端MTP3; 步骤B.如果步骤A中数据成功发送到本端MTP3就执行步骤C,否则执行 步骤D;
步骤C.本端M2PA继续接收来自对端M2PA的数据;
步骤D.本端M2PA将数据放入该链路的接收缓存中,同时设置本端M2PA本 端处理机故障,然后向对端发送本端处理机故障消息,如果本端处理机故障消息 发出后收到对端的数据,那么缓存这些数据,同时对这些数据不进行认证,待 故障处理好后将缓存的数据继续发送给本端MTP3。
所述步骤A中,本端M2PA发送到本端MTP3的数据是按先后顺序发送的。
一种判断MTP3是否发生故障的方法,包括如下步骤
步骤一.本端M2PA把接收到的对端M2PA数据发送到本端MTP3;
步骤二.若步骤一中数据成功发送到本端MTP3,则MTP3没有发生处理机故 障;若发送不成功,则MTP3发生了处理机故障。
所述步骤一中,本端M2PA接收到对端M2PA的数据可以先保存在其接收缓 存中,然后再将数据发送到本端MTP3。
所述步骤一中,本端M2PA发送到本端MTP3的数据是按先后顺序发送的。
本发明从对端M2PA接收到数据后,可以将数据缓存到本端M2PA的接收缓 存中,也可以不缓存直接发送到本端MTP3。若发送成功,则表示MTP3处理机没 故障;若发送不成功,则表示MTP3处理机发生了故障。本发明方法可在本端M2PA 接收到对端M2PA数据时先缓存数据,也可在本端M2PA把数据发送到本端MTP3 失败后缓存数据,发送失败后同时设置本端M2PA本端处理机故障,然后向对端 发送本端处理机故障消息,消息发出后若收到对端的数据,那么缓存这些数据, 待故障处理好后将缓存的数据继续发送给本端MTP3,处理机故障的处理按 RFC4165中4.1. 4的描述处理。
使用本发明方法,具有以下有益效果
第一,本方法充分利用了M2PA接收缓存,使得接收缓存不仅仅只在发生处 理机故障后才被使用,而在MTP3出现处理机故障之前也可被很好的使用,这样 既保证了数据的不丢失,而且也快速地判断出MTP3是否已经发生了处理机故障;
第二,本方法可以只在M2PA协议层实现,并不增加系统开发的难度和复杂
度,同时也提高了系统的可靠性;
第三,原则上M2PA的上层用户只有MTP3,但是实际使用中这种情况可能会 发生变化,本发明也适用于任何使用M2PA的环境。
图1是本发明M2PA在SIGTRAN协议栈中所处位置的结构示意图2是本发明降低M2PA数据丢失的方法的数据处理流程图3是本发明降低M2PA数据丢失的另一种方法的数据处理流程图。
具体实施例方式
为了更好地理解本发明,下面结合附图和具体实施例对本发明作进一步地 描述。
请参阅图1,它是本发明M2PA在SIGTRAN协议栈中所处位置的结构示意图, MTP3是M2PA的上层用户,M2PA是SCTP的上层用户,SCTP是IP的上层用户。
请参阅图2,它是本发明降低M2PA数据丢失的方法的数据处理流程图,包 括如下步骤
步骤1:本端M2PA的数据接口从底层SCTP处接收来自对端M2PA的数据; 步骤2:本端M2PA将接收到的对端M2PA数据存入其接收缓存中; 步骤3:本端M2PA将其接收缓存中的数据按先后顺序递交给本端MTP3; 步骤4:如果步骤3中递交到本端MTP3失败,那么立刻设置本端M2PA本端
处理机故障,然后向对端发送本端处理机故障消息,如果本端处理机故障消息
发出后收到对端的数据,那么缓存这些数据,同时对这些数据不进行认证,待
故障处理好后将缓存的数据继续发送给本端MTP3。
步骤5:如果步骤3中递交成功,将已发送成功的数据从接收缓存中删除,
然后本端M2PA继续接收来自对端M2PA的数据。
上述步骤3中,如果递交到本端MTP3的数据失败,则说明MTP3发生了处 理机故障,应及时处理;如果递交成功,则说明MTP3没有发生处理机故障,可继续传送数据,这可用来判断MTP3是否发生处理机故障,非常方便、快捷。
请参阅图3,它是本发明降低M2PA数据丢失的另一种方法的数据处理流程 图,包括如下步骤
步骤a:本端M2PA数据接口从底层SCTP处接收来自对端M2PA的数据;
步骤b:本端M2PA对接收到的数据进行校验后,通过本端M2PA和本端MTP3 之间的数据收发接口,将数据按先后顺序发送到本端MTP3;
步骤c:根据步骤b的结果,当本端M2PA将数据发送到本端MTP3失败后, 本端M2PA将该数据放入该链路的接收缓存中,同时设置本端M2PA本端处理机 故障,然后向对端发送本端处理机故障消息,如果本端处理机故障消息发出后收 到对端的数据,那么缓存这些数据,同时对这些数据不进行认证,待故障处理 好后将缓存的数据继续发送给本端MTP3;
步骤d:根据步骤b的结果,当本端M2PA将数据发送到本端MTP3成功后, 本端M2PA继续接收来自对端M2PA的数据。
上述步骤b中,如果发送到本端MTP3的数据失败,则说明MTP3发生了处 理机故障,应及时处理;如果递交成功,则说明MTP3没有发生处理机故障,可 继续传送数据,这可用来判断MTP3是否发生处理机故障,非常方便、快捷。
上面两种降低M2PA数据丢失的方法都是本发明的较好实施例,但第二种方 法要比第一钟方法效率更高,所以我们建议使用时可采用第二种方法。
上述两种方法中,原则上M2PA的上层用户只有MTP3,但是实际使用中这种 情况可能会发生变化,本发明同样适用于任何使用M2PA的环境。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,应当指出,对
于本领域的普通技术人员来说,凡是本发明的精神和原则之内所作的任何修改、 等同替换或改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种降低M2PA数据丢失的方法,其特征在于,包括如下步骤步骤A.本端M2PA把接收到的对端M2PA数据保存在其接收缓存中;步骤B.本端M2PA将接收缓存中的数据发送到本端MTP3,如果发送成功执行步骤C,否则执行步骤D;步骤C.本端M2PA继续接收来自对端M2PA的数据;步骤D.设置本端M2PA本端处理机故障,然后向对端发送本端处理机故障消息,如果本端处理机故障消息发出后收到对端的数据,那么缓存这些数据,同时对这些数据不进行认证,待故障处理好后将缓存的数据继续发送给本端MTP3。
2. 根据权利要求1所述的降低M2PA数据丢失的方法,其特征在于,所述 步骤C中,在本端M2PA继续接收来自对端M2PA的数据之前将已发送成功的数 据从接收缓存中删除。
3. 根据权利要求1或2所述的降低M2PA数据丢失的方法,其特征在于, 所述步骤B中,本端M2PA发送到本端MTP3的数据是按先后顺序发送的。
4. 一种降低M2PA数据丢失的方法,其特征在于,包括如下步骤 步骤A.本端M2PA把接收到的对端M2PA数据发送到本端MTP3;步骤B.如果步骤A中数据成功发送到本端MTP3就执行步骤C,否则执行 步骤D;步骤C.本端M2PA继续接收来自对端M2PA的数据;步骤D.本端M2PA将数据放入该链路的接收缓存中,同时设置本端M2PA本 端处理机故障,然后向对端发送本端处理机故障消息,如果本端处理机故障消息 发出后收到对端的数据,那么缓存这些数据,同时对这些数据不进行认证,待 故障处理好后将缓存的数据继续发送给本端MTP3。
5. 根据权利要求4所述的降低M2PA数据丢失的方法,其特征在于,所述 步骤A中,本端M2PA发送到本端MTP3的数据是按先后顺序发送的。
6. —种判断MTP3是否发生故障的方法,其特征在于,包括如下步骤 步骤一.本端M2PA把接收到的对端M2PA数据发送到本端MTP3;步骤二.若步骤一中数据成功发送到本端MTP3,则MTP3没有发生处理机故 障;若发送不成功,则MTP3发生了处理机故障。
7. 根据权利要求6所述的判断MTP3是否发生故障的方法,其特征在于, 所述步骤一中,本端M2PA接收到对端M2PA的数据先保存在其接收缓存中,然 后再将数据发送到本端MTP3。
8. 根据权利要求6或7所述的判断MTP3是否发生故障的方法,其特征在 于,所述步骤一中,本端M2PA发送到本端MTP3的数据是按先后顺序发送的。
全文摘要
本发明公开了一种降低M2PA数据丢失的方法以及判断MTP3是否发生故障的方法。该降低M2PA数据丢失的方法通过本端M2PA把接收到数据发送到本端MTP3,如果数据成功发送,则说明MTP3处理机没故障,如果数据发送失败,则说明MTP3处理机发生了故障;当故障发生后,设置本端M2PA本端处理机故障,并缓存对端发送的数据,待故障处理好后将缓存的数据继续发送给本端MTP3。本方法充分利用了M2PA接收缓存,使得接收缓存不仅仅只在发生处理机故障后才被使用,而在MTP3出现处理机故障之前也可被很好的使用,既保证了数据不丢失,而且也快速地判断出MTP3是否已经发生了处理机故障。本方法不增加系统开发的难度,提高了系统的可靠性,适用于任何使用M2PA的环境。
文档编号H04L12/56GK101188549SQ20071007740
公开日2008年5月28日 申请日期2007年11月27日 优先权日2007年11月27日
发明者张坤左, 科 王, 陈普然 申请人:中兴通讯股份有限公司