CN101141391A - 一种实现故障切换的方法 - Google Patents
一种实现故障切换的方法 Download PDFInfo
- Publication number
- CN101141391A CN101141391A CNA2007101406934A CN200710140693A CN101141391A CN 101141391 A CN101141391 A CN 101141391A CN A2007101406934 A CNA2007101406934 A CN A2007101406934A CN 200710140693 A CN200710140693 A CN 200710140693A CN 101141391 A CN101141391 A CN 101141391A
- Authority
- CN
- China
- Prior art keywords
- message
- link
- peers include
- route
- sending node
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种实现故障切换的方法,该方法发送节点对消息初次进行路由分析时,得到所有互为备选对等端的链路,并缓存该路由结果,同时选择其中一条链路发送消息,首选链路发生故障时,根据缓存的路由结果发送消息到备选对等端。本发明方法采用了一种改进的域路由处理方式,使得Diameter节点在链路故障发生时可以快速切换到备用链路,提高了处理效率,从而达到提高Diameter节点可靠性的要求。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种实现故障切换的方法。
背景技术
对于商业化运营的通信网络来说,AAA(Authentication、Authorization、Accounting,认证、授权、计费),即认证、授权以及计费体制成为其运营的基础。Diameter协议族是新一代的AAA技术,由于其强大的可扩展性和安全性,使其备受关注。在ITU(国际电信联盟),3GPP和3GPP2等国际标准组织中,已经正式将Diameter作为NGN(下一代网络),WCDMA(宽带码分多址)和CDMA2000等未来通信网络的首选AAA协议。网络中各类资源的使用,需要认证、授权和计费等机制进行保障。因此Diameter协议相比Radius协议明确提出了Failover/Failback(故障切换及故障回溯)机制。协议中描述的故障切换机制是指当本节点检测到传输失败时,如果可能的话,所有未收到响应的请求消息会被重新发送至备选代理,消息中T标志置位。当本节点检测到原传输恢复,后续消息将被发送至该对等端,此过程称为故障回溯。
但是RFC3588协议中只是简单描述了故障切换及故障回溯机制发生时的过程,对于采用何种方案实现这些过程没有进行规定,所以产生了多种实现该机制的方法,这些方法各不相同,效率也差别较大。
现有技术一般采用传统的路由方式实现故障切换及故障回溯机制,如图1所示,现有技术发送节点发送请求消息时发送故障切换的流程包括以下步骤:
步骤101:发送节点需要发送消息时,根据请求消息中的目的域名进行路由分析,获得下一跳节点对应的链路;
步骤102:发送节点将请求消息发往下一跳,然后将请求消息缓存到本地请求消息队列;
步骤103:发送节点定时检测链路状态,如果链路状态正常,则执行步骤106,否则,执行步骤104启动故障切换;
步骤104:发送节点扫描消息队列,通过目的域名重新进行路由分析,获得备选对等端对应的链路;
步骤105,发送节点发送消息到备选对等端;
步骤106:发送节点收到请求消息对应的响应消息,将该请求消息从本地缓存的消息队列中移出。
启动故障切换后,一旦主用对等端恢复正常,则后续消息发往主用对等端。
上述现有技术中,每次发送节点发现主对等端链路故障,启动故障切换(Failover)后,都需要扫描待重发的请求消息队列,对消息队列中每一条消息都重新分析域名获取路由,获得备选对等端对应的链路,然后将队列中的消息依次发往备选对等端。若队列中消息很多,则影响处理效率,电信网中对于处理效率要求很高的情况下,这种方法必然存在缺陷。
发明内容
本发明要解决的技术问题是提供一种实现故障切换的方法,以提高节点间通讯的可靠性并且提高了处理效率。
为解决上述技术问题,本发明提供一种实现故障切换的方法,该方法发送节点对消息初次进行路由分析时,得到所有互为备选对等端的链路,并缓存该路由结果,同时选择其中一条链路发送消息,首选链路发生故障时,根据缓存的路由结果发送消息到备选对等端。
进一步地,该方法包括以下步骤:
(a)当发送节点需要发送消息时,发送节点通过目的域名查找本地路由表,得到所有互为备选对等端对应的链路;
(b)发送节点在路由分析结果中选择一条链路将消息发往下一跳,并将该请求消息及路由分析结果缓存在请求消息队列中,等待响应消息;
(c)发送节点实时检测链路状态,若首选链路出现故障,则扫描消息队列,选择请求消息队列中缓存的路由中的其他备选链路发送消息。
进一步地,该方法进一步包括以下步骤:收到对等端响应消息,从请求消息队列中删除原请求消息。
进一步地,发送消息的首选的链路是随机获得的。
进一步地,把所有链路按照对等端划分优先级,发送消息时首选的链路是优先级最高的链路。
与现有技术相比,本发明实现故障切换的方法采用了一种改进的域路由处理方式,使得Diameter节点在链路故障发生时可以快速切换到备用链路,将消息发往备用对等端,提高了处理效率,从而达到提高Diameter节点可靠性的要求。
附图说明
图1是现有技术实现故障切换的流程图;
图2是本发明应用的Diameter实体之间信息交互示意图;
图3是本发明实现故障切换的流程图。
具体实施方式
下面结合附图对本发明进行详细说明。
图2是本发明应用的Diameter实体之间信息交互示意图,涉及的Diameter实体包括Diameter客户端(Diameter Client)和Diameter服务器(Diameter Server)。
具体描述如下:
Diameter客户端根据业务需要向Diameter服务器发起应用请求,发出的该请求消息可能会经过多个中继(Relay)代理,最后到达目的服务器,因此中继是一种Diameter节点,它根据与路由相关的属性值对AVP和域路由表转发请求和响应消息。中继不做任何策略决定,因此他们不检查或者改变非路由AVP,也从不生成消息,不需要理解消息或者非路由AVP的语义。
Diameter服务器是接收并处理AAA请求的节点。需要指出的是Diameter客户端和Diameter服务器只是相对的概念,某种情况下,它们的角色也可能互换。
如图2中所示Diameter客户端有两个备选对等端,分别为Diameter服务器1和Diameter服务器2,当Diameter服务器1的链路断开或Diameter服务器1发生故障(图中用虚线表示)时,Diameter客户端将所有未收到响应消息的请求消息重发到备选对等端Diameter服务器2上去,并作T标志置位。
在实际的通信系统中,客户端、中继和服务器都可以作为Diameter发送节点,但是中继只是转发消息,不主动生成消息。
为了保证系统中一个节点发生故障时能尽快切换到备选节点,提高切换效率,本发明域路由算法将互为备选对等端的路由归为一条路由,这样初次路由查询时得到的是互为备选对等端所在的所有链路并缓存路由,发生故障切换时,就不用再次查找路由,而是根据缓存的路由的备选链路直接发送,在请求消息队列中消息数目较多时,本发明域路由算法可以大大提高处理效率。
另外,可以在路由下面增加链路组的概念,并根据对等端对链路组内链路进行优先级划分,以便根据优先级选择主用对等端优先发送消息。
图3是本发明采用改进的路由算法实现Diameter故障切换的流程图,其包括以下步骤:
步骤301:当发送节点需要发送消息时,发送节点通过目的域名查找本地路由表,得到所有互为备选对等端对应的链路;
在实际中可以是Diameter客户端向Diameter服务器发送一条请求消息,或者Diameter中继收到一条从前面Diameter节点(客户端或者中继)转发来的请求消息向后一节点(中继或服务器)转发消息。
当存在多个对等端时,消息中不需要携带主机名,只携带目的域名。
当该发送节点有两个或多个备选对等端,则消息中的目的域名对应的路由存在两条或多条链路,可以把它们合在一个链路组中,则该目的域名对应的路由结果是一个链路组。
步骤302:发送节点在路由分析结果中选择一条链路将消息发往下一跳,并将该请求消息及路由分析结果缓存在请求消息队列中,等待响应消息;
本步骤首选的链路可以随机获得,也可以对链路组中链路按照主用对等端和次要对等端划分优先级,把优先级最高的链路做为首选链路。
步骤303:发送节点实时检测链路状态,若首选链路正常,则执行步骤306,若首选链路出现故障,则进入步骤304,启动故障切换机制;
发送节点检测链路时采用协议规定的收发连接正常检测消息(DWR/DWA,Device-Watchdog-Request/Answer)进行,一旦多次发送DWR没有收到对等端回复的DWA时,认为本节点与下一跳的链路发生故障。
步骤304:扫描消息队列,选择请求消息队列中缓存的路由中的其他备选链路;
步骤305:将消息通过备选链路发往备选对等端,将重新发送的消息T标志置位;
重发请求消息时,需要判断该请求消息是否携带目标主机名,若携带,则不再重发,直接回复错误响应。
步骤306:收到对等端响应消息,从请求消息队列中删除原请求消息。
启动故障切换后,发送节点在定时器控制下尝试重新与主用对等端建立连接,一旦主用链路恢复正常,则将后续消息发往主用对等端。
现有技术的域路由算法针对一个目的域名每次只查找到一条链路对应的对等端。相较于现有的域路由算法,本发明的域路由算法,对于一个目的域名每次可以查找到一组链路对应的对等端,当消息需要重新发送时,可以不再查路由表,直接从第一次查到的链路组中得到目的对等端,节省时间。
本发明实现故障切换的方法,对于存在主用和备用对等端的节点,其同一个目标域对应的路由只有一条,但是路由的方向选择有两个,一个指向主用代理(或服务器),另一个指向备用代理(或服务器)。即一条路由下面对应一个链路组,一个链路组对应两条链路。依次类推,若该节点存在多个备选对等端,则链路组下对应多条链路。对等端对应的链路通过优先级进行区分,主用对等端对应的链路优先级最高,其它次之。在消息初次发送时进行路由分析时,将这些信息保存在消息队列中,这样在底层发生链路故障时,不再重新进行路由分析,而是通过路由下面的链路组重新选择另一条链路发送出去,这样节省了大量的重新路由时间,达到故障切换的目的。
综上所述,本发明域路由算法和实现故障切换的方法可以有效提高系统的可靠性和高效性,并且易于实施。
上述针对具体实施的描述较为详细,不能因而认为是对本发明专利保护范围的限制,本发明的专利保护范围应以所附权利要求为准。
Claims (5)
1.一种实现故障切换的方法,其特征在于:发送节点对消息初次进行路由分析时,得到所有互为备选对等端的链路,并缓存该路由结果,同时选择其中一条链路发送消息,首选链路发生故障时,根据缓存的路由结果发送消息到备选对等端。
2.如权利要求1所述的方法,其特征在于,该方法包括以下步骤:
(a)当发送节点需要发送消息时,发送节点通过目的域名查找本地路由表,得到所有互为备选对等端对应的链路;
(b)发送节点在路由分析结果中选择一条链路将消息发往下一跳,并将该请求消息及路由分析结果缓存在请求消息队列中,等待响应消息;
(c)发送节点实时检测链路状态,若首选链路出现故障,则扫描消息队列,选择请求消息队列中缓存的路由中的其他备选链路发送消息。
3.如权利要求2所述的方法,其特征在于,该方法进一步包括以下步骤:收到对等端响应消息,从请求消息队列中删除原请求消息。
4.如权利要求1至3任一项所述的方法,其特征在于:发送消息的首选的链路是随机获得的。
5.如权利要求1至3任一项所述的方法,其特征在于:把所有链路按照对等端划分优先级,发送消息时首选的链路是优先级最高的链路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101406934A CN101141391A (zh) | 2007-10-09 | 2007-10-09 | 一种实现故障切换的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101406934A CN101141391A (zh) | 2007-10-09 | 2007-10-09 | 一种实现故障切换的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101141391A true CN101141391A (zh) | 2008-03-12 |
Family
ID=39193143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007101406934A Pending CN101141391A (zh) | 2007-10-09 | 2007-10-09 | 一种实现故障切换的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101141391A (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783836A (zh) * | 2009-11-11 | 2010-07-21 | 中兴通讯股份有限公司 | 监听链路倒换装置、对监听链路倒换的方法以及网元 |
WO2010142197A1 (zh) * | 2009-06-11 | 2010-12-16 | 中兴通讯股份有限公司 | 一种不断链进行能力协商的方法、系统及相关装置 |
CN101945412A (zh) * | 2009-07-07 | 2011-01-12 | 中兴通讯股份有限公司 | 基于用户级别的业务保护方法与装置 |
CN102238069A (zh) * | 2010-04-29 | 2011-11-09 | 杭州华三通信技术有限公司 | 一种链路切换过程中的数据处理方法和装置 |
CN102523594A (zh) * | 2011-11-30 | 2012-06-27 | 中国科学院微电子研究所 | 基于ZigBee协议获取节点丢失信息的方法和系统 |
CN102640476A (zh) * | 2009-12-03 | 2012-08-15 | 欧搜卡德远程有限责任公司 | 操作传感器网络的系统和方法 |
WO2012109873A1 (zh) * | 2011-08-02 | 2012-08-23 | 华为技术有限公司 | 对Diameter路由进行管理的方法和装置 |
CN102055664B (zh) * | 2009-11-10 | 2012-12-26 | 武汉大学 | 一种基于覆盖网络环境的快速备选路由分配方法 |
CN104270441A (zh) * | 2014-09-28 | 2015-01-07 | 曙光信息产业股份有限公司 | 一种分布式系统多优先级通信的方法和系统 |
CN105045674A (zh) * | 2015-09-15 | 2015-11-11 | 浪潮(北京)电子信息产业有限公司 | 一种链路切换方法和系统 |
CN105591930A (zh) * | 2014-10-24 | 2016-05-18 | 中兴通讯股份有限公司 | 一种路由转发的方法及设备 |
CN105991597A (zh) * | 2015-02-15 | 2016-10-05 | 中兴通讯股份有限公司 | 认证处理方法及装置 |
CN103026670B (zh) * | 2011-08-02 | 2016-11-30 | 华为技术有限公司 | 对Diameter路由进行管理的方法和装置 |
WO2017088757A1 (zh) * | 2015-11-26 | 2017-06-01 | 华为技术有限公司 | 一种解决Diameter网络中消息迂回的方法和装置 |
CN107147562A (zh) * | 2017-04-27 | 2017-09-08 | 腾讯科技(深圳)有限公司 | 消息处理方法和装置 |
CN110855627A (zh) * | 2019-01-16 | 2020-02-28 | 星环信息科技(上海)有限公司 | 应用部署方法、装置、设备及介质 |
WO2024093611A1 (zh) * | 2022-11-01 | 2024-05-10 | 中兴通讯股份有限公司 | 链路状态的检测方法、装置、电子设备及存储介质 |
-
2007
- 2007-10-09 CN CNA2007101406934A patent/CN101141391A/zh active Pending
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010142197A1 (zh) * | 2009-06-11 | 2010-12-16 | 中兴通讯股份有限公司 | 一种不断链进行能力协商的方法、系统及相关装置 |
CN101945412A (zh) * | 2009-07-07 | 2011-01-12 | 中兴通讯股份有限公司 | 基于用户级别的业务保护方法与装置 |
CN102055664B (zh) * | 2009-11-10 | 2012-12-26 | 武汉大学 | 一种基于覆盖网络环境的快速备选路由分配方法 |
CN101783836A (zh) * | 2009-11-11 | 2010-07-21 | 中兴通讯股份有限公司 | 监听链路倒换装置、对监听链路倒换的方法以及网元 |
CN101783836B (zh) * | 2009-11-11 | 2014-04-09 | 中兴通讯股份有限公司 | 监听链路倒换装置、对监听链路倒换的方法以及网元 |
CN102640476B (zh) * | 2009-12-03 | 2015-07-08 | 欧搜卡德远程有限责任公司 | 处理节点、用于在处理节点处理数据的方法以及用于操作传感器网络的系统 |
CN102640476A (zh) * | 2009-12-03 | 2012-08-15 | 欧搜卡德远程有限责任公司 | 操作传感器网络的系统和方法 |
US8983799B2 (en) | 2009-12-03 | 2015-03-17 | Osocad Remote Limited Liability Company | System and method for operating a network of sensors |
CN102238069B (zh) * | 2010-04-29 | 2014-07-30 | 杭州华三通信技术有限公司 | 一种链路切换过程中的数据处理方法和装置 |
CN102238069A (zh) * | 2010-04-29 | 2011-11-09 | 杭州华三通信技术有限公司 | 一种链路切换过程中的数据处理方法和装置 |
WO2012109873A1 (zh) * | 2011-08-02 | 2012-08-23 | 华为技术有限公司 | 对Diameter路由进行管理的方法和装置 |
CN103026670A (zh) * | 2011-08-02 | 2013-04-03 | 华为技术有限公司 | 对Diameter路由进行管理的方法和装置 |
US9319266B2 (en) | 2011-08-02 | 2016-04-19 | Huawei Technologies Co., Ltd. | Method and apparatus for managing diameter routing |
CN103026670B (zh) * | 2011-08-02 | 2016-11-30 | 华为技术有限公司 | 对Diameter路由进行管理的方法和装置 |
CN102523594A (zh) * | 2011-11-30 | 2012-06-27 | 中国科学院微电子研究所 | 基于ZigBee协议获取节点丢失信息的方法和系统 |
CN104270441B (zh) * | 2014-09-28 | 2018-12-04 | 曙光信息产业股份有限公司 | 一种分布式系统多优先级通信的方法和系统 |
CN104270441A (zh) * | 2014-09-28 | 2015-01-07 | 曙光信息产业股份有限公司 | 一种分布式系统多优先级通信的方法和系统 |
CN105591930A (zh) * | 2014-10-24 | 2016-05-18 | 中兴通讯股份有限公司 | 一种路由转发的方法及设备 |
CN105991597A (zh) * | 2015-02-15 | 2016-10-05 | 中兴通讯股份有限公司 | 认证处理方法及装置 |
CN105045674A (zh) * | 2015-09-15 | 2015-11-11 | 浪潮(北京)电子信息产业有限公司 | 一种链路切换方法和系统 |
WO2017088757A1 (zh) * | 2015-11-26 | 2017-06-01 | 华为技术有限公司 | 一种解决Diameter网络中消息迂回的方法和装置 |
CN107147562A (zh) * | 2017-04-27 | 2017-09-08 | 腾讯科技(深圳)有限公司 | 消息处理方法和装置 |
CN110855627A (zh) * | 2019-01-16 | 2020-02-28 | 星环信息科技(上海)有限公司 | 应用部署方法、装置、设备及介质 |
WO2024093611A1 (zh) * | 2022-11-01 | 2024-05-10 | 中兴通讯股份有限公司 | 链路状态的检测方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101141391A (zh) | 一种实现故障切换的方法 | |
US7336615B1 (en) | Detecting data plane livelines in connections such as label-switched paths | |
CN101631360B (zh) | 负载均衡的实现方法、装置和系统 | |
US20060050643A1 (en) | Router for multicast redundant routing and system for multicast redundancy | |
US7940647B2 (en) | Method and node for implementing multicast fast reroute | |
CN102480753B (zh) | 链路状态检测方法和装置 | |
CN102035676B (zh) | 基于arp协议交互的链路故障检测与恢复的方法和设备 | |
US7778204B2 (en) | Automatic maintenance of a distributed source tree (DST) network | |
US20110216654A1 (en) | Scheme for randomized selection of equal cost links during restoration | |
CN101075970A (zh) | 路由选择的方法和设备 | |
CN1969492A (zh) | 动态转发邻接关系 | |
CN101136789A (zh) | 一种实现端到端的链路检测、路由策略倒换的方法及装置 | |
CN1889579A (zh) | 提高路由信息协议路由收敛速度的方法及装置 | |
JP2005524261A (ja) | 冗長性接続用に動的に修正されるメトリック値を用いるトラフィックネットワークフロー制御方法 | |
CN106331117A (zh) | 一种数据传输方法 | |
WO2011026319A1 (zh) | 基于本地故障检测的环网保护方法及系统 | |
Scott et al. | Robust communications for disconnected, intermittent, low-bandwidth (DIL) environments | |
CN101094119A (zh) | 基于快速切换的覆盖网络故障检测与恢复方法 | |
CN102325079B (zh) | 报文传输方法和出口路由器 | |
CN104717083A (zh) | 一种a-sbc设备的容灾切换系统、方法及装置 | |
CN103297340A (zh) | Mpls和bgp组网中的路由收敛方法和设备 | |
US20100296412A1 (en) | Method, Device, and System for Establishing Label Switching Path in Fast Rerouting Switching | |
US8379514B2 (en) | Route reflector for a communication system | |
TWI292266B (en) | System and method for a handoff in an internet protocol-based multimedia mobile network | |
CN113615132A (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20080312 |