CN101510883B - 一种sip消息传输的方法 - Google Patents
一种sip消息传输的方法 Download PDFInfo
- Publication number
- CN101510883B CN101510883B CN2009101061641A CN200910106164A CN101510883B CN 101510883 B CN101510883 B CN 101510883B CN 2009101061641 A CN2009101061641 A CN 2009101061641A CN 200910106164 A CN200910106164 A CN 200910106164A CN 101510883 B CN101510883 B CN 101510883B
- Authority
- CN
- China
- Prior art keywords
- link
- sip
- message
- new
- sip message
- 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.)
- Active
Links
Images
Landscapes
- Telephonic Communication Services (AREA)
Abstract
一种SIP消息传输的方法,尤其是涉及基于TCP/TLS长连接的SIP(SessionInitialization Protocol,会话初始协议)消息传输的实现方法。包括如下步骤:步骤一:SIP实体向目标群集系统发送SIP消息,并建立多条链路;步骤二:链路经过有效期和保留期的不断循环,并且在和应用层检测部分的共同作用下达到链路的动态负载均衡。从而较好的解决了SIP消息的负载均衡、链路回切、虚假链路检测等问题,同时增加群集系统间的系统吞吐量,并具有方便系统扩容的特点。
Description
技术领域
本发明涉及IP通信网络中消息传输的方法,尤其是涉及基于TCP/TLS长连接的SIP(Session Initialization Protocol,会话初始协议)消息传输的实现方法。
背景技术
SIP协议属于应用层协议,其对两个SIP实体间使用哪种传输层协议的限制比较宽松,可以是UDP、SCTP、TCP、TLS等协议,但在某些环境中,拥塞控制性、协议成熟性、安全性都成为衡量采用哪种传输层协议的重要指标,尤其是商用的大型群集系统对这些要求更为突出。由于基于链路的传输层协议(如TCP、TLS等)具有UDP等其他协议不可比拟的优势,TCP拥有优越的拥塞控制和可靠性,而TLS在TCP的基础上增加了安全性,TCP/TLS长连接已经成为很多大型商用群集系统中的主要传输层协议。但在实际应用过程,群集系统间通过TCP或TLS长连接进行SIP消息传输时有几个突出问题需要解决。
首先是SIP消息的负载均衡问题,对于基于连接的SIP消息,四层交换机只能提供基于连接的负载均衡,即只能将链路均衡地分配到群集系统的内部各服务器上,如何通过连接均衡来完成SIP消息的均衡?
其次是链路回切问题,群集系统内部服务器发生故障后,四层交换会将属于故障服务器的新链路转接到其他正常服务器上,从而对外透明地屏蔽了群集系统部分的故障,但是当故障服务器恢复正常后,由于四层交换只有转接功能,没有关闭链路的功能,那么如何将其他服务器上的正常链路切回到恢复后服务器?
最后是虚假链路的检测问题,链路在地理位置或网络拓扑结构上跨度非常大,这就不可避免地存在虚假链路的情况,虽然TCP协议本身提供了链路存活检测机制,但是由于兼容性、检测周期、防火墙的安全策略等等因素的影响,TCP本身的检测机制很难凑效,那么又如何发现虚假链路?本发明的提出即为解决上面提出的问题,同时本发明还可以起到增加群集系统间的系统吞吐量、方便系统扩容等作用。
发明内容
本发明所要解决的技术问题主要是解决SIP消息的负载均衡、链路回切、虚假链路检测等问题。
为此,本发明提供一种SIP消息传输的方法,包括如下步骤:
步骤一:SIP实体向目标群集系统发送SIP消息,并建立相应的链路;
步骤二:链路经过有效期和保留期的循环,在应用层检测部分的共同作用下达到链路的动态负载均衡。
所述的方法,进一步的,所述步骤一中,所述SIP实体在所述每条链路上均衡地发送SIP消息。
所述的方法,进一步的,所述步骤一中,所述链路数量是所述目标群集系统中服务器数量的整数倍。
所述的方法,进一步的,所述步骤二中,在所述链路建立完毕后,先处于所述的有效期,后进入所述的保留期,如此循环。
所述的方法,进一步的,在所述有效期期间所述SIP实体在该链路上发送所述SIP请求消息,也在该链路上接收这些请求消息的响应消息。
所述的方法,进一步的,进入所述的保留期时,所述SIP实体会建立一条新链路,并在该新链路上发送新的请求消息和接收这些新的请求消息的响应消息,同时,对于处于该保留期的旧链路,仍然会接收该旧链路上的响应消息,从而确保旧链路的请求消息都能够收到响应消息。
所述的方法,进一步的,在所述步骤二中所述的检测层部分,所述SIP实体在该每条链路上定时发送所述应用层检测消息,如果在规定时间内没有收到响应消息则认为该链路为虚假链路,关闭该链路,同时建立一个新的替代链路。
通过本发明可以很好地解决负载均衡、链路回切、虚假链路检测等问题,同时增加群集系统间的系统吞吐量,并具有方便系统扩容的特点。
附图说明
图1示例了正常状态下的链路状况
图2示例了服务器2发生故障后的链路状况
图3示例了服务器2恢复且链路2’进入保留期时的链路状况
图4示例了服务器2恢复且链路2’保留期结束后的链路状况
具体实施方式
以下结合附图1到附图4,详细说明本发明的具体实施,在本例中模拟的应用场景是SIP实体通过四层交换机向某群集系统发送SIP消息:
(1)SIP实体向群集系统建立N条链路,并在这N条链路上均匀地发送SIP消息;
(2)四层交换机在链路均衡机制下将这N条链路分别转接到群集系统中的N个服务器上,这样达到了SIP消息的均衡负载的目的;
(3)群集系统中的2号服务器发生故障,2号链路被会断开;
(4)SIP实体发现2号链路断开后,立刻向群集系统建立一条新的替代链路2’;
(5)由于2号服务器处于故障状态,四层交换机将2’链路转接到群集系统内的某台其他服务器上,比如1号服务器;
(6)在后面的某个时刻,2号服务器恢复正常,但当前N条链路都在工作正常,四层交换机无法将其他服务器上的链路切回到恢复正常的2号服务器上,这时2号服务器仍然处于空闲状态;
(7)经过一段时间后,2’号链路进入保留期,这时SIP实体会主动向群集系统建立一条新的替代链路2”,这时四层交换机根据均衡原则将2”链路转接到2号服务器上;
(8)当2’号链路的保留期结束后,SIP实体会主动关闭2’号链路,这时从图4可以看出,其链路状况又恢复成2号服务器发生故障前的状况;
上述流程主要用于解释SIP消息是如何在群集系统内实现SIP消息的均衡负载的,以及故障服务器恢复后,链路又是如何切回的。由于四层交换机只能进行链路的转接,其不能主动关闭链路或者将链路转移,所以只能依靠SIP实体本身的链路层机制来满足这种切回工作。
综上所述,本发明的各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的步骤制作成单个集成电路模块来实现,本发明不限制于任何特定的硬件和软件结合。
应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (5)
1.一种SIP消息传输的方法,包括如下步骤:
步骤一:SIP实体向目标群集系统发送SIP消息,并建立相应的链路;在服务器发生故障时,新的替代链路被建立并转接到群集系统内的其它服务器上;
步骤二:所述新的替代链路经过有效期和保留期的循环,在应用层检测部分的共同作用下达到链路的动态负载均衡;其中,
所述新的替代链路建立完毕后,先处于所述的有效期,后进入所述的保留期,如此循环;进入所述的保留期时,所述SIP实体会建立一条新链路,并在该新链路上发送新的请求消息和接收这些新的请求消息的响应消息,同时,对于处于该保留期的旧链路,仍然会接收该旧链路上的响应消息,从而确保旧链路的请求消息都能够收到响应消息;所述保留期结束后,所述SIP实体关闭所述旧链路。
2.如权利要求1所述的SIP消息传输的方法,其特征在于,所述步骤一中,所述SIP实体在所述每条链路上均衡地发送SIP消息。
3.如权利要求1所述的SIP消息传输的方法,其特征在于,所述步骤一中,所述链路数量是所述目标群集系统中服务器数量的整数倍。
4.如权利要求1所述的SIP消息传输的方法,其特征在于,在所述有效期期间所述SIP实体在该链路上发送所述SIP请求消息,也在该链路上接收这些请求消息的响应消息。
5.权利要求1所述的SIP消息传输的方法,其特征在于,在所述步骤二中所述的应用层检测部分,所述SIP实体在该每条链路上定时发送所述应用层检测消息,如果在规定时间内没有收到响应消息则认为该链路为虚假链路,关闭该链路,同时建立一个新的替代链路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101061641A CN101510883B (zh) | 2009-03-23 | 2009-03-23 | 一种sip消息传输的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101061641A CN101510883B (zh) | 2009-03-23 | 2009-03-23 | 一种sip消息传输的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101510883A CN101510883A (zh) | 2009-08-19 |
CN101510883B true CN101510883B (zh) | 2012-05-23 |
Family
ID=41003147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101061641A Active CN101510883B (zh) | 2009-03-23 | 2009-03-23 | 一种sip消息传输的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101510883B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103118055A (zh) * | 2012-10-10 | 2013-05-22 | 中兴通讯股份有限公司 | 一种多媒体接入的方法和设备 |
CN104683253A (zh) * | 2013-11-27 | 2015-06-03 | 北京大唐高鸿数据网络技术有限公司 | 用于统一通信系统的动态负载均衡方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005027563A1 (en) * | 2003-09-15 | 2005-03-24 | Matsushita Electric Industrial Co., Ltd. | Method for releasing allocated resources at sip handover |
CN1992711A (zh) * | 2005-12-27 | 2007-07-04 | 中兴通讯股份有限公司 | 一种sip终端对服务器进行链路检测的方法 |
CN101212478A (zh) * | 2006-12-30 | 2008-07-02 | 华为技术有限公司 | 分组业务方法和网络设备 |
-
2009
- 2009-03-23 CN CN2009101061641A patent/CN101510883B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005027563A1 (en) * | 2003-09-15 | 2005-03-24 | Matsushita Electric Industrial Co., Ltd. | Method for releasing allocated resources at sip handover |
CN1992711A (zh) * | 2005-12-27 | 2007-07-04 | 中兴通讯股份有限公司 | 一种sip终端对服务器进行链路检测的方法 |
CN101212478A (zh) * | 2006-12-30 | 2008-07-02 | 华为技术有限公司 | 分组业务方法和网络设备 |
Also Published As
Publication number | Publication date |
---|---|
CN101510883A (zh) | 2009-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5361794B2 (ja) | ネットワーク要素の転送プレーンにおいてポート状態テーブルを保持するための方法及び装置 | |
US8438307B2 (en) | Method and device of load-sharing in IRF stack | |
CN104168193B (zh) | 一种虚拟路由器冗余协议故障检测的方法及路由设备 | |
CN102238072B (zh) | 一种动态选择路由的方法及clos交换网系统 | |
CN107454155A (zh) | 一种基于负载均衡集群的故障处理方法、装置以及系统 | |
CN108306777A (zh) | 基于sdn控制器的虚拟网关主备切换方法及装置 | |
CN101888307B (zh) | 用于本地实现端口选择的方法和装置 | |
WO2011100609A2 (en) | Methods, systems, and computer readable media for inter-message processor status sharing | |
CN101888330A (zh) | 用于提供分组的快速重新路由的方法和装置 | |
CN101820358A (zh) | 高利用率以及多路的以太网光纤通道 | |
WO2012136078A1 (en) | A method for traffic load balancing | |
CN104243239B (zh) | 一种sdn集群中控制器的状态检测方法和装置 | |
CN103281247A (zh) | 一种数据中心网络的通用路由方法及系统 | |
CN104243323B (zh) | 交换网多播路由方法及系统 | |
CN101163060B (zh) | Bfd会话建立方法、bfd会话建立装置及路由设备 | |
Wang et al. | Designing efficient high performance server-centric data center network architecture | |
CN101702678B (zh) | 一种星形堆叠系统和方法 | |
WO2014090120A1 (zh) | 链路切换方法及系统 | |
CN103346967A (zh) | 一种数据中心网络拓扑结构及其路由方法 | |
CN101764706A (zh) | 基于epa网桥的链路冗余控制方法 | |
CN106254242A (zh) | 一种数据传输方法、集中控制器、转发面设备和本端通信装置 | |
US20160124884A1 (en) | Redundancy for port extender chains | |
CN104618189A (zh) | 链路故障检测方法及装置 | |
CN107968747A (zh) | 一种路径调整管理方法及装置、通信系统 | |
CN101510883B (zh) | 一种sip消息传输的方法 |
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 |