VoIP网络中基于SIP信令实现呼叫心跳保持的方法

文档序号:7959987阅读:967来源:国知局
专利名称:VoIP网络中基于SIP信令实现呼叫心跳保持的方法
技术领域
本发明涉及网络通信技术领域,特别涉及VoIP网络中基于SIP信令的多媒体通信技术领域,具体是指一种VoIP网络中基于SIP信令实现呼叫心跳保持的方法。
背景技术
VoIP (Voice over Internet Protocol)是将模拟的声音讯号经过压缩与封包之后,以数据封包的形式在IP网络的环境进行语音讯号的传输的协议,通俗来说也就是互联网电话、网络电话或者简称IP电话。VoIP技术是目前互联网应用领域的一个热门话题,其基本原理是通过语音的压缩算法对语音数据编码进行压缩处理,然后把这些语音数据按TCP/IP标准进行打包,经过 IP网络把数据包送至接收地,再把这些语音数据包串起来,经过解压处理后,恢复成原来的语音信号,从而达到由互联网传送语音的目的。IP电话的核心与关键设备是IP网关,它把各地区电话区号映射为相应的地区网关IP地址。这些信息存放在一个数据库中,数据接续处理软件将完成呼叫处理、数字语音打包、路由管理等功能。在用户拨打长途电话时,网关根据电话区号数据库资料,确定相应网关的IP地址,并将此IP地址加入IP数据包中,同时选择最佳路由,以减少传输时延,IP数据包经 hternet到达目的地的网关。在一些hternet尚未延伸到或暂时未设立网关的地区,可设置路由,由最近的网关通过长途电话网转接,实现通信业务。在VoIP的应用中,对电信级的软交换和IP多媒体子系统(IMS)而言,终端与相关的软交换服务器之间保持实时心跳是非常重要和必要的。会话发起协议(SIP)作为软交换系统和IMS系统的主要信令协议之一,在下一代网络(NGN)系统中有着重要作用,但是SIP 协议本身没有明确定义网络实体之间的心跳保持机制。目前在SIP系统的实现中,存在着一些比较常见的心跳机制实现方式,IETF的SIP 工作组也正致力于这方面的研究和讨论。通常在通话过程中,可以通过重发Rehvite信令来实现心跳的,但这样做问题在于,Invite包中通常加载SDP和媒体网络地址等信息,这些信息在发送和接收时,要消耗收发两方和服务器的资源,降低了运行效率,使网络整体性能大大降低,同时降低了服务器的通话的并发数。

发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种在VoIP网络通信的过程中,无需消耗过多的收发双发和服务器的资源,在保持网络整体性能和运行效率,也同时保证服务器通话的并发数的情况下,既能检测通信是否通畅,且应用方式简单,实现成本低廉,应用范围较为广泛的VoIP网络中基于SIP信令实现呼叫心跳保持的方法。为了实现上述的目的,在本发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法中,所述的VoIP网络中包括主叫终端、被叫终端以及连接于所述的主叫终端和被叫终端之间的服务器,所述的方法包括主叫终端操作处理、被叫终端操作处理和服务器操作处理,所述的主叫终端操作处理具体包括以下步骤(11)主叫终端连通被叫终端后,开始运行主叫终端计时器;(12)主叫终端判断是否在所述的主叫终端计时器超时前接收到ping包,若是,则进入步骤(13),若否,进入步骤(14);(13)主叫终端向所述的服务器发送确认信号,并重置所述的主叫终端计时器,返回步骤(12);(14)主叫终端关闭所述的主叫终端计时器,并向所述的服务器发送断开信号,中断与所述的被叫终端的连接;所述的被叫终端操作处理,包括以下步骤(21)被叫终端开始运行被叫终端计时器;(22)当所述的被叫终端计时器超时时,被叫终端向所述的服务器发送ping包,并开始延时计时;(23)被叫终端判断是否在所述的延时计时超过预设的上限前收到确认信号,若是,则进入步骤(M),若否,则进入步骤(25);(24)被叫终端重置所述的被叫终端计时器,并返回步骤02);(25)被叫终端关闭所述的被叫计时器,并向所述的服务器发送断开信号,中断与所述的主叫终端的连接;所述的服务器操作处理,包括以下步骤(31)所述的服务器收到被叫终端发送的ping包后,将所述的ping包转发到所述的主叫终端;(32)所述的服务器收到主叫终端发送的确认信号后,将所述的确认信号转发到所述的被叫终端;(33)所述的服务器收到所述的主叫终端或被叫终端发送的断开信号后,中断主叫终端与被叫终端之间的连接。该VoIP网络中基于SIP信令实现呼叫心跳保持的方法中,所述的主叫终端计时器时间长于所述的被叫终端计时器时间。该VoIP网络中基于SIP信令实现呼叫心跳保持的方法中,所述的主叫终端计时器时间为所述的被叫终端计时器时间的1. 5倍。该VoIP网络中基于SIP信令实现呼叫心跳保持的方法中,所述的确认信号为 “2000K” 信息。该VoIP网络中基于SIP信令实现呼叫心跳保持的方法中,所述的断开信号为 “bye”信息。采用了该发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法,在通信的过程中,被叫方定时地通过服务器向主叫方发送Ping包,主叫方接收到ping包后,通过服务器向被叫方回复确认信号,从而实现基于SIP信令的呼叫心跳保持。本发明所述的方法无需消耗过多的收发双发和服务器的资源,在保持网络整体性能和运行效率,同时保证服务器通话的并发数的情况下,既能检测通信是否通畅,且本发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法应用方式简单,实现成本低廉,应用范围较为广泛。


图1为本发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法中主叫终端操作处理的步骤流程图。图2为本发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法中被叫终端操作处理的步骤流程图。图3为本发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法中服务器操作处理的步骤流程图。图4为本发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法在实际应用中主叫方的流程示意图。图5为本发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法在实际应用中被叫方的流程示意图。
具体实施例方式为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。在一种实施方式中,所述的VoIP网络中包括主叫终端、被叫终端以及连接于所述的主叫终端和被叫终端之间的服务器,本发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法包括主叫终端操作处理、被叫终端操作处理和服务器操作处理。其中,所述的主叫终端操作处理,如图1所示,包括以下步骤(11)主叫终端连通被叫终端后,开始运行主叫终端计时器;(12)主叫终端判断是否在所述的主叫终端计时器超时前接收到ping包,若是,则进入步骤(13),若否,进入步骤(14);(13)主叫终端向所述的服务器发送确认信号,并重置所述的主叫终端计时器,返回步骤(12);(14)主叫终端关闭所述的主叫终端计时器,并向所述的服务器发送断开信号,中断与所述的被叫终端的连接;所述的被叫终端操作处理,如图2所示,包括以下步骤(21)被叫终端开始运行被叫终端计时器;(22)当所述的被叫终端计时器超时时,被叫终端向所述的服务器发送ping包,并开始延时计时;(23)被叫终端判断是否在所述的延时计时超过预设的上限前收到确认信号,若是,则进入步骤(M),若否,则进入步骤(25);(24)被叫终端重置所述的被叫终端计时器,并返回步骤02);(25)被叫终端关闭所述的被叫计时器,并向所述的服务器发送断开信号,中断与所述的主叫终端的连接;所述的服务器操作处理,如图3所示,包括以下步骤(31)所述的服务器收到被叫终端发送的ping包后,将所述的ping包转发到所述的主叫终端;(32)所述的服务器收到主叫终端发送的确认信号后,将所述的确认信号转发到所述的被叫终端;
(33)所述的服务器收到所述的主叫终端或被叫终端发送的断开信号后,中断主叫终端与被叫终端之间的连接。在一种较优选的实施方式中,所述的主叫终端计时器时间长于所述的被叫终端计时器时间。更优选地,所述的主叫终端计时器时间为所述的被叫终端计时器时间的1. 5倍。在另一种优选的实施方式中,所述的确认信号为“2000K”信息,所述的断开信号为 “bye”信息。 在本发明的实际应用中,通过使用ping的方法来完成呼叫心跳,即在VoIP语音通话过程中,通过使用非标准的Ping方法来实现呼叫心跳保持。该方法是通过在接通电话后,主叫方打开定时器计时。被叫方向服务器发起Ping包,同时打开计时器计时。再由服务器转发到主叫方,主叫方收到Ping包后向服务器返回“2000K”,同时复位定时器重新计时。服务器收到“2000K”后向被叫方转发“2000K”。被叫方收到“2000K”后,复位定时器。 每当被叫方定时器超时时,发送Ping包,按上面的步骤反复进行,直到呼叫挂断,关闭主叫方和被叫方的定时器。在主叫和被叫在接通后,该方法的具体步骤如下主叫方,如图4所示,其中呼叫心跳时间为T,包括以下步骤1、打开定时器计时,定时器时间为呼叫心跳时间的1. 5倍;2、定时器超时,说明长时间没有收到心跳包,发送bye包,中断呼叫;3、当定时器在计时期间收到ping包,复位定时器;4、同时向服务器发送2000K回应包。被叫方,如图5所示,其中收包最大延时为Tmax,包括以下步骤1、被叫方向服务器发起ping包,同时打开计时器计时,定时器时间为呼叫心跳;2、服务器接收到ping包转发到主叫方;3、服务器收到主叫发来的2000K响应包后,将他转发到被叫方;4、被叫方收到2000K响应包,复位定时器;5、定时器超时后,重新发起ping包,回到步骤1 ;6、当ping包发出后在规定时间内没有收到2000K说明已经不能正常通信,发送 bye,中断呼叫。该方法具有简单且易于处理的特点,在呼叫过程中既能探测到通信异常,又能提高速度,并有效节约服务器和终端的资源。采用了该发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法,在通信的过程中,被叫方定时地通过服务器向主叫方发送Ping包,主叫方接收到ping包后,通过服务器向被叫方回复确认信号,从而实现基于SIP信令的呼叫心跳保持。本发明所述的方法无需消耗过多的收发双发和服务器的资源,在保持网络整体性能和运行效率,同时保证服务器通话的并发数的情况下,既能检测通信是否通畅,且本发明的VoIP网络中基于SIP信令实现呼叫心跳保持的方法应用方式简单,实现成本低廉,应用范围较为广泛。在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
权利要求
1.一种VoIP网络中基于SIP信令实现呼叫心跳保持的方法,其特征在于,所述的VoIP 网络中包括主叫终端、被叫终端以及连接于所述的主叫终端和被叫终端之间的服务器,所述的方法包括主叫终端操作处理、被叫终端操作处理和服务器操作处理,所述的主叫终端操作处理,包括以下步骤(11)主叫终端连通被叫终端后,开始运行主叫终端计时器;(12)主叫终端判断是否在所述的主叫终端计时器超时前接收到ping包,若是,则进入步骤(13),若否,进入步骤(14);(13)主叫终端向所述的服务器发送确认信号,并重置所述的主叫终端计时器,返回步骤(12);(14)主叫终端关闭所述的主叫终端计时器,并向所述的服务器发送断开信号,中断与所述的被叫终端的连接;所述的被叫终端操作处理,包括以下步骤(21)被叫终端开始运行被叫终端计时器;(22)当所述的被叫终端计时器超时时,被叫终端向所述的服务器发送ping包,并开始延时计时;(23)被叫终端判断是否在所述的延时计时超过预设的上限前收到确认信号,若是,则进入步骤(M),若否,则进入步骤(25);(24)被叫终端重置所述的被叫终端计时器,并返回步骤02);(25)被叫终端关闭所述的被叫计时器,并向所述的服务器发送断开信号,中断与所述的主叫终端的连接;所述的服务器操作处理,包括以下步骤(31)所述的服务器收到被叫终端发送的ping包后,将所述的ping包转发到所述的主叫终端;(32)所述的服务器收到主叫终端发送的确认信号后,将所述的确认信号转发到所述的被叫终端;(33)所述的服务器收到所述的主叫终端或被叫终端发送的断开信号后,中断主叫终端与被叫终端之间的连接。
2.根据权利要求1所述的VoIP网络中基于SIP信令实现呼叫心跳保持的方法,其特征在于,所述的主叫终端计时器时间长于所述的被叫终端计时器时间。
3.根据权利要求2所述的VoIP网络中基于SIP信令实现呼叫心跳保持的方法,其特征在于,所述的主叫终端计时器时间为所述的被叫终端计时器时间的1. 5倍。
4.根据权利要求1至3中任一项所述的VoIP网络中基于SIP信令实现呼叫心跳保持的方法,其特征在于,所述的确认信号为“2000K”信息。
5.根据权利要求1至3中任一项所述的VoIP网络中基于SIP信令实现呼叫心跳保持的方法,其特征在于,所述的断开信号为“bye”信息。
全文摘要
本发明涉及一种VoIP网络中基于SIP信令实现呼叫心跳保持的方法,VoIP网络中包括主叫终端、被叫终端以及连接于主叫终端和被叫终端之间的服务器,所述的方法包括主叫终端操作处理、被叫终端操作处理和服务器操作处理,在被叫终端操作处理过程中,被叫方定时地通过服务器向主叫方发送ping包,在主叫终端操作处理过程中,主叫方接收到ping包后,通过服务器向被叫方回复确认信号,从而实现基于SIP信令的呼叫心跳保持,本发明的方法无需消耗过多的收发双发和服务器的资源,在保持网络整体性能和运行效率,同时保证服务器通话的并发数的情况下,既能检测通信是否通畅,且该方法应用方式简单,实现成本低廉,应用范围较为广泛。
文档编号H04L29/06GK102340510SQ201110341879
公开日2012年2月1日 申请日期2011年11月2日 优先权日2011年11月2日
发明者曹新鹏, 赵伟东, 陈杰 申请人:上海市共进通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1