CN106803805A - 一种解决Diameter网络中消息迂回的方法和装置 - Google Patents
一种解决Diameter网络中消息迂回的方法和装置 Download PDFInfo
- Publication number
- CN106803805A CN106803805A CN201510843408.XA CN201510843408A CN106803805A CN 106803805 A CN106803805 A CN 106803805A CN 201510843408 A CN201510843408 A CN 201510843408A CN 106803805 A CN106803805 A CN 106803805A
- Authority
- CN
- China
- Prior art keywords
- dra
- destination node
- message
- nodes
- dra nodes
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种解决Diameter网络中消息迂回的方法和装置,用以解决现有技术在Diameter网络中DRA节点出现路由故障后导致的消息迂回,进而引起网络时延增大的问题。该方法为,第一DRA节点确定自身在预设时长内连续N次接收到第二DRA节点针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将第二DRA节点与目的节点间的路由关系记录为路由故障,再次接收到携带有目的节点名称的请求消息后,查询到第二DRA节点与目的节点间的路由关系为路由故障时,将所述请求消息转发至与第二DRA节点不同的第三DRA节点。这样能够大量减少Diameter网络中消息迂回数量,进而减少网络时延。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种解决Diameter网络中消息迂回的方法和装置。
背景技术
直径(Diameter)协议作为新一代认证、授权和计费(AuthenticationAuthorization Accounting,AAA)的协议,可以承载于传输控制协议(Transmission Control Protocol,TCP)或者流控制传输协议(Stream ControlTransmission Protocol,SCTP)之上,被广泛应用于IP多媒体子***(IPMultimedia Subsystem,IMS)网络和长期演进(Long Term Evolution,LTE)网络中。
具体的,Diameter网络中的Diameter节点按功能分为Diameter客户端(Client)节点、Diameter路由代理(Diameter Routing Agent,DRA)节点、Diameter服务器(Server)节点三种类型。其中,Diameter客户端节点是处于Diameter网络边缘的节点,一般是发起请求并完成接入控制的节点;Diameter服务器节点是处理请求的节点,并完成对用户的认证、授权和计费;Diameter路由代理节点只是负责转发Diameter客户端节点和Diameter服务器之间的消息。
在Diameter网络中,当前Diameter节点在接收到上一个Diameter节点发来的消息后,如果当前Diameter节点无法将接收到的消息路由出去,此时会通过上一个Diameter节点重选路由。例如,图1为一个Diameter网络中的Diameter节点连接实例图,DRA1接收到发往Diameter服务器1的请求消息后,将接收到的请求消息发往下一跳节点DRA2,由于从DRA2到Diameter服务器1无路由可达,此时,DRA2会向DRA1反馈路由失败消息,DRA1接收到DRA2反馈的路由失败消息后再通过其他Diameter路由代理节点DRA3,将接收到的请求消息发往Diameter服务器1,若后续DRA1接收到发往Diameter服务器1的请求消息后,DAR1依然将接收到的请求消息发往下一跳节点DRA2,DRA1接收到DRA2反馈的路由失败消息后再通过其他Diameter路由代理节点,将接收到的请求消息发往Diameter服务器1。
因此可知,在Diameter网络中若某一个DRA节点到下一跳节点的路由故障,会导致网络中的消息迂回,而且,如果在该Diameter网络中出现路由故障的DRA节点到对应的Diameter客户端节点间存在许多个DRA节点时,会导致消息迂回的路径很长,使网络上面的消息流量大大增加,进一步造成网络时延增大。
发明内容
本发明实施例提供一种解决Diameter网络中消息迂回的方法和装置,用以解决现有技术在Diameter网络中DRA节点出现路由故障后导致的消息迂回,进而引起网络时延增大的问题。
本发明实施例提供的具体技术方案如下:
第一方面,提供一种解决Diameter网络中消息迂回的方法,包括:
第一DRA节点确定自身在预设时长内连续N次接收到第二DRA节点针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将所述第二DRA节点与所述目的节点间的路由关系记录为路由故障,N为设定正整数,所述第二DRA节点为所述第一DRA节点的下一跳DRA节点;
所述第一DRA节点接收到携带有所述目的节点名称的请求消息后,查询所述第二DRA节点与所述目的节点间的路由关系,确定所述路由关系为路由故障时,将所述请求消息转发至第三DRA节点,并通过所述第三DRA节点接收所述目的节点反馈的响应消息,其中,所述第三DRA节点为所述第一DRA节点重新选择的与所述第二DRA节点不同的下一跳DRA节点。
结合第一方面,在第一方面的第一种可能的实现方式中,所述路由关系记录在所述第一DRA节点本地或与所述第一DRA节点通信的其他设备。
结合第一方面,在第一方面的第二种可能的实现方式中,若所述第一DRA节点接收到携带有所述目的节点名称的请求消息后,未查询到所述第二DRA节点与所述目的节点间的路由故障关系时,将所述请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
结合第一方面,在第一方面的第三种可能的实现方式中,所述第一DRA节点接收到未携带有目的节点名称的第一请求消息后,将所述第一请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
结合第一方面或以上任何一种可能的实现方式,在第一方面的第四种可能实现方式中,所述响应消息还包括路由成功消息,所述路由成功消息中携带有所述目的节点名称。
结合第一方面或以上任何一种可能的实现方式,在第一方面的第五种可能实现方式中,所述第一DRA节点将所述请求消息转发至所述第三DRA节点之后,还包括:
所述第一DRA节点通过所述第二DRA节点接收到所述目的节点发送的携带有所述目的节点名称的请求消息,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除;或
所述第一DRA节点通过所述第二DRA节点接收到所述目的节点针对所述第一请求消息反馈的响应消息为路由成功消息时,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除。
第二方面,提供一种解决直径Diameter网络中消息迂回的方法,包括:
第二DRA节点接收到第一DRA节点发送的携带有目的节点名称的请求消息后,将所述请求消息转发至所述第二DRA节点的下一跳节点,所述第二DRA节点为所述第一DRA节点的下一跳DRA节点;
所述第二DRA节点确定自身未能将所述请求消息转发至所述第二DRA节点的下一跳节点时,向所述第一DRA节点反馈自身与所述目的节点间路由失败的响应消息。
第三方面,提供一种解决直径Diameter网络中消息迂回的装置,包括:
确定单元,用于确定自身在预设时长内连续N次接收到第二DRA节点针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将所述第二DRA节点与所述目的节点间的路由关系记录为路由故障,N为设定正整数,所述第二DRA节点为所述装置的下一跳DRA节点;
转发单元,用于接收到携带有所述目的节点名称的请求消息后,查询所述第二DRA节点与所述目的节点间的路由关系,确定所述路由关系为路由故障时,将所述请求消息转发至第三DRA节点,并通过所述第三DRA节点接收所述目的节点反馈的响应消息,其中,所述第三DRA节点为所述装置重新选择的与所述第二DRA节点不同的下一跳DRA节点。
结合第三方面,在第三方面的第一种可能的实现方式中,所述路由关系记录在所述装置本地或与所述装置通信的其他设备。
结合第三方面,在第三方面的第二种可能的实现方式中,所述转发单元还用于:
在接收到携带有所述目的节点名称的请求消息后,未查询到所述第二DRA节点与所述目的节点间的路由故障关系时,将所述请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
结合第三方面,在第三方面的第三种可能的实现方式中,所述转发单元还用于:
在接收到未携带有目的节点名称的第一请求消息后,将所述第一请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
结合第三方面或以上任何一种可能的实现方式,在第三方面的第四种可能实现方式中,所述响应消息还包括路由成功消息,所述路由成功消息中携带有所述目的节点名称。
结合第三方面或以上任何一种可能的实现方式,在第三方面的第五种可能实现方式中,所述装置还包括:
删除单元,用于在所述转发单元将所述请求消息转发至所述第三DRA节点之后,通过所述第二DRA节点接收到所述目的节点发送的携带有所述目的节点名称的请求消息,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除;或
通过所述第二DRA节点接收到所述目的节点针对所述第一请求消息反馈的响应消息为路由成功消息时,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除。
第三方面,提供一种解决直径Diameter网络中消息迂回的装置,包括:
接收单元,用于在接收到第一DRA节点发送的携带有目的节点名称的请求消息后,将所述请求消息转发至所述所述装置的下一跳节点,所述装置为所述第一DRA节点的下一跳DRA节点;
反馈单元,用于确定自身未能将所述请求消息转发至所述装置的下一跳节点时,向所述第一DRA节点反馈自身与所述目的节点间路由失败的响应消息。
本发明有益效果如下:
本发明实施例提供一种解决直径Diameter网络中消息迂回的方案,该方法为,第一DRA节点确定自身在预设时长内连续N次接收到第二DRA节点针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将所述第二DRA节点与所述目的节点间的路由关系记录为路由故障,N为设定正整数,所述第二DRA节点为所述第一DRA节点的下一跳DRA节点;所述第一DRA节点接收到携带有所述目的节点名称的请求消息后,查询所述第二DRA节点与所述目的节点间的路由关系,确定所述路由关系为路由故障时,将所述请求消息转发至第三DRA节点,并通过所述第三DRA节点接收所述目的节点反馈的响应消息,其中,所述第三DRA节点为所述第一DRA节点重新选择的与所述第二DRA节点不同的下一跳DRA节点。这样能够在第二DRA节点发生路由故障时,避免Diameter网络中流经第一DRA节点的消息重复发往第二DRA节点,从而减少网络中的消息迂回,进而减少网络时延,提高消息处理效率。
附图说明
图1为Diameter网络中的Diameter节点连接实例图;
图2为本发明实施例中解决Diameter网络中消息迂回的方法流程示意图;
图3为本发明实施例中一种解决Diameter网络中消息迂回的装置结构示意图;
图4为本发明实施例中一种解决Diameter网络中消息迂回的设备结构示意图;
图5为本发明实施例中另一种解决Diameter网络中消息迂回的装置结构示意图;
图6为本发明实施例中另一种解决Diameter网络中消息迂回的设备结构示意图;
图7为本发明实施例中解决Diameter网络中消息迂回的***结构示意图。
具体实施方式
本发明实施例提供了一种解决Diameter网络中消息迂回的方法和装置,用以解决现有技术在Diameter网络中DRA节点出现路由故障后导致的消息迂回,进而引起网络时延增大的问题。其中,方法和装置是基于同一发明构思的,由于方法及装置解决问题的原理相似,因此装置与方法的实施可以相互参见,重复之处不再赘述。
下面结合附图对本发明优选的实施方式进行详细说明。
参阅图2所示,本发明实施例中提供一种解决Diameter网络中消息迂回的方法,具体流程如下所示:
步骤200:第一DRA节点接收到携带有目的节点名称的请求消息后,将所述请求发往第二DRA节点,所述第二DRA节点为所述第一DRA节点的下一跳DRA节点。
步骤201:第二DRA节点接收到第一DRA节点发送的携带有目的节点名称的请求消息后,将所述请求消息转发至所述第二DRA节点的下一跳节点。
步骤202:第二DRA节点确定自身未能将所述请求消息转发至所述第二DRA节点的下一跳节点时,向所述第一DRA节点反馈自身与所述目的节点间路由失败的响应消息。
步骤203:第一DRA节点确定自身在预设时长内连续N次接收到第二DRA节点针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将第二DRA节点与所述目的节点间的路由关系记录为路由故障,N为设定正整数。
步骤204:第一DRA节点接收到携带有所述目的节点名称的请求消息后,查询第二DRA节点与目的节点间的路由关系,确定所述路由关系为路由故障时,将所述请求消息转发至第三DRA节点,并通过所述第三DRA节点接收所述目的节点反馈的响应消息,其中,所述第三DRA节点为所述第一DRA节点重新选择的与所述第二DRA节点不同的下一跳DRA节点。
其中,所述路由关系记录在所述第一DRA节点本地,这样后续查询第二DRA节点与目的节点间的路由关系时,能够迅速得到所述路由关系使得查询效率较高,进一步降低网络时延,可选的,所述路由关系也可以记录在与所述第一DRA节点通信的其他设备,这样能够节省第一DRA节点的存储空间。
进一步的,若所述第一DRA节点接收到携带有所述目的节点名称的请求消息后,未查询到第二DRA节点与所述目的节点间的路由故障关系时,将所述请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
需要注意的是,Diameter网络的请求消息分为首消息和后续消息两种类型,其中,不携带目的节点名称的请求消息为首消息,对于首消息需要根据其他路由方式找到目的节点,当找到目的节点后,目的节点回应的响应消息中携带有目的节点名称,目的节点将所述响应消息发送到Diameter网络中的客户端节点,因此,客户端节点记录了此Diameter网络中的目的节点名称,从客户端节点发送的后续消息都会携带有目的节点名称,也就是带上目的地信息。
只有用户初次上线时,Diameter网络中的请求消息才不携带目的节点名称,分析发现Diameter网络中的请求消息只有少于5%不会携带目的节点名称,用户上线后大部分请求消息是后续消息,都会携带目的节点名称,所以迂回的消息很少。
可选的,第一DRA节点接收到未携带有目的节点名称的第一请求消息后,将所述第一请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
其中,所述响应消息除包括路由失败消息之外还包括路由成功消息,所述路由成功消息中携带有所述目的节点名称。
进一步的,所述第一DRA节点将所述请求消息转发至所述第三DRA节点之后,出现以下两种情形任意一种情形时,都将记录的第二DRA节点与目的节点间的路由故障关系进行删除:
第一种情形为:所述第一DRA节点通过所述第二DRA节点接收到所述目的节点发送的携带有所述目的节点名称的请求消息时,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除。
第二种情形为:所述第一DRA节点通过所述第二DRA节点接收到所述目的节点针对所述第一请求消息反馈的响应消息为路由成功消息时,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除。
由于对于未携带目的节点名称的首消息都需要发送到第二DRA节点,这样在第二DRA节点与目的节点间路由故障恢复后能够及时反馈至第一DRA节点,便于第一DRA节点的后续消息优先从第二DRA节点发送至目的节点。
基于同一发明构思,参阅图3所示,本发明实施例中还提供了一种解决Diameter网络中消息迂回的装置,由于图3的解决Diameter网络中消息迂回的装置对应的方法为本发明实施例解决Diameter网络中消息迂回的方法,因此本发明实施例解决Diameter网络中消息迂回的装置的实施可以参见该方法的实施,重复之处不再赘述。
如图3所示,本发明实施例中解决Diameter网络中消息迂回的装置,包括:
确定单元30,用于确定自身在预设时长内连续N次接收到第二DRA节点针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将所述第二DRA节点与所述目的节点间的路由关系记录为路由故障,N为设定正整数,所述第二DRA节点为所述装置的下一跳DRA节点;
转发单元31,用于接收到携带有所述目的节点名称的请求消息后,查询所述第二DRA节点与所述目的节点间的路由关系,确定所述路由关系为路由故障时,将所述请求消息转发至第三DRA节点,并通过所述第三DRA节点接收所述目的节点反馈的响应消息,其中,所述第三DRA节点为所述装置重新选择的与所述第二DRA节点不同的下一跳DRA节点。
可选的,所述路由关系记录在所述装置本地或与所述装置通信的其他设备。
可选的,所述转发单元31还用于:
在接收到携带有所述目的节点名称的请求消息后,未查询到所述第二DRA节点与所述目的节点间的路由故障关系时,将所述请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
可选的,所述转发单元31还用于:
在接收到未携带有目的节点名称的第一请求消息后,将所述第一请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
可选的,所述响应消息还包括路由成功消息,所述路由成功消息中携带有所述目的节点名称。
可选的,所述装置还包括删除单元32,用于在所述转发单元31将所述请求消息转发至所述第三DRA节点之后,通过所述第二DRA节点接收到所述目的节点发送的携带有所述目的节点名称的请求消息,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除;或
通过所述第二DRA节点接收到所述目的节点针对所述第一请求消息反馈的响应消息为路由成功消息时,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除。
基于同一发明构思,参阅图4所示,本发明实施例中还提供了一种解决Diameter网络中消息迂回的设备,图4为本发明实施例中解决Diameter网络中消息迂回的设备的结构示意图,该设备1包括处理器401和存储器402。其中,处理器401和存储器402相连接。本发明实施例中不限定上述部件之间的具体连接介质。本发明实施例选择在图4中处理器401和存储器402之间通过总线403连接,总线在图4中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本发明实施例中存储器402,用于存储处理器401执行的程序代码,存储器402可以是易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器402也可以是非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD)、或者存储器402是能够用于携带或存储具有指令或数据结构形式的期望程序代码并能够由计算机存取的任何其他存储器,但不限于此。此外,存储器402还可以是上述任意存储器的组合。
本发明实施例中,处理器401,用于通过总线调用存储器402中存储的程序代码,并通过执行调用的程序代码执行:
确定自身在预设时长内连续N次接收到第二DRA节点针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将所述第二DRA节点与所述目的节点间的路由关系记录为路由故障,N为设定正整数,所述第二DRA节点为所述装置的下一跳DRA节点;接收到携带有所述目的节点名称的请求消息后,查询所述第二DRA节点与所述目的节点间的路由关系,确定所述路由关系为路由故障时,将所述请求消息转发至第三DRA节点,并通过所述第三DRA节点接收所述目的节点反馈的响应消息,其中,所述第三DRA节点为所述设备1重新选择的与所述第二DRA节点不同的下一跳DRA节点。
本发明实施例中的处理器401,可以是一个中央处理单元(英文:centralprocessing unit,简称CPU)。
基于同一发明构思,参阅图5所示,本发明实施例中还提供了一种解决Diameter网络中消息迂回的装置,由于图5的解决Diameter网络中消息迂回的装置对应的方法为本发明实施例解决Diameter网络中消息迂回的方法,因此本发明实施例解决Diameter网络中消息迂回的装置的实施可以参见该方法的实施,重复之处不再赘述。
如图5所示,本发明实施例中解决Diameter网络中消息迂回的装置,包括:
接收单元50,用于在接收到第一DRA节点发送的携带有目的节点名称的请求消息后,将所述请求消息转发至所述所述装置的下一跳节点,所述装置为所述第一DRA节点的下一跳DRA节点;
反馈单元51,用于确定自身未能将所述请求消息转发至所述装置的下一跳节点时,向所述第一DRA节点反馈自身与所述目的节点间路由失败的响应消息。
基于同一发明构思,参阅图6所示,本发明实施例中还提供了一种解决Diameter网络中消息迂回的设备,图6为本发明实施例中解决Diameter网络中消息迂回的设备的结构示意图,该设备2包括处理器601和存储器602。其中,处理器601和存储器602相连接。本发明实施例中不限定上述部件之间的具体连接介质。本发明实施例选择在图6中处理器601和存储器602之间通过总线603连接,总线在图6中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本发明实施例中存储器602,用于存储处理器601执行的程序代码,存储器602可以是易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器602也可以是非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD)、或者存储器602是能够用于携带或存储具有指令或数据结构形式的期望程序代码并能够由计算机存取的任何其他存储器,但不限于此。此外,存储器602还可以是上述任意存储器的组合。
本发明实施例中,处理器601,用于通过总线调用存储器602中存储的程序代码,并通过执行调用的程序代码执行:
在接收到第一DRA节点发送的携带有目的节点名称的请求消息后,将所述请求消息转发至所述所述装置的下一跳节点,所述设备2为所述第一DRA节点的下一跳DRA节点;确定自身未能将所述请求消息转发至所述装置的下一跳节点时,向所述第一DRA节点反馈自身与所述目的节点间路由失败的响应消息。
本发明实施例中的处理器601,可以是一个中央处理单元(英文:centralprocessing unit,简称CPU)。
基于上述实施例,本发明实施例还提供了一种解决Diameter网络中消息迂回的***,如图7所示,图7为本发明实施例中解决Diameter网络中消息迂回的***的结构示意图,该***包括第一设备70和第二设备71。其中,第一设备70和第二设备71相连接。本发明实施例中不限定上述部件之间的具体连接介质,其中:
第一设备70,用于确定自身在预设时长内连续N次接收到第二设备71针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将所述第二设备71与所述目的节点间的路由关系记录为路由故障,N为设定正整数,所述第二设备71为所述第一设备70的下一跳DRA节点;接收到携带有所述目的节点名称的请求消息后,查询所述第二DRA节点与所述目的节点间的路由关系,确定所述路由关系为路由故障时,将所述请求消息转发至第三DRA节点,并通过所述第三DRA节点接收所述目的节点反馈的响应消息,其中,所述第三DRA节点为所述第一设备70重新选择的与所述第二设备71不同的下一跳DRA节点;
第二设备71,用于在接收到第一设备70发送的携带有目的节点名称的请求消息后,将所述请求消息转发至所述第二设备71的下一跳节点;确定自身未能将所述请求消息转发至所述第二设备71的下一跳节点时,向所述第一设备70反馈自身与所述目的节点间路由失败的响应消息。
可选的,所述路由关系记录在所述装置本地或与所述装置通信的其他设备。
可选的,所述第一设备70用于:
在接收到携带有所述目的节点名称的请求消息后,未查询到所述第二DRA节点与所述目的节点间的路由故障关系时,将所述请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
可选的,所述第一设备70还用于:
在接收到未携带有目的节点名称的第一请求消息后,将所述第一请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
可选的,所述响应消息还包括路由成功消息,所述路由成功消息中携带有所述目的节点名称。
可选的所述第一设备70在将所述请求消息转发至所述第三DRA节点之后,还用于:
通过所述所述第二设备71接收到所述目的节点发送的携带有所述目的节点名称的请求消息,将记录的所述第二设备71与所述目的节点间的路由故障关系进行删除;或
通过所述第二设备71接收到所述目的节点针对所述第一请求消息反馈的响应消息为路由成功消息时,将记录的所述第二设备71与所述目的节点间的路由故障关系进行删除。
综上所述,本发明实施例中,第一DRA节点确定自身在预设时长内连续N次接收到第二DRA节点针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将所述第二DRA节点与所述目的节点间的路由关系记录为路由故障,N为设定正整数,所述第二DRA节点为所述第一DRA节点的下一跳DRA节点;所述第一DRA节点接收到携带有所述目的节点名称的请求消息后,查询所述第二DRA节点与所述目的节点间的路由关系,确定所述路由关系为路由故障时,将所述请求消息转发至第三DRA节点,并通过所述第三DRA节点接收所述目的节点反馈的响应消息,其中,所述第三DRA节点为所述第一DRA节点重新选择的与所述第二DRA节点不同的下一跳DRA节点。这样能够在第二DRA节点发生路由故障时,避免Diameter网络中流经第一DRA节点的消息重复发往第二DRA节点,从而减少网络中的消息迂回,进而减少网络时延,提高消息处理效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (15)
1.一种解决直径Diameter网络中消息迂回的方法,其特征在于,包括:
第一直径路由代理DRA节点确定自身在预设时长内连续N次接收到第二DRA节点针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将所述第二DRA节点与所述目的节点间的路由关系记录为路由故障,N为设定正整数,所述第二DRA节点为所述第一DRA节点的下一跳DRA节点;
所述第一DRA节点接收到携带有所述目的节点名称的请求消息后,查询所述第二DRA节点与所述目的节点间的路由关系,确定所述路由关系为路由故障时,将所述请求消息转发至第三DRA节点,并通过所述第三DRA节点接收所述目的节点反馈的响应消息,其中,所述第三DRA节点为所述第一DRA节点重新选择的与所述第二DRA节点不同的下一跳DRA节点。
2.如权利要求1所述的方法,其特征在于,包括:
所述路由关系记录在所述第一DRA节点本地或与所述第一DRA节点通信的其他设备。
3.如权利要求1所述的方法,其特征在于,还包括:
若所述第一DRA节点接收到携带有所述目的节点名称的请求消息后,未查询到所述第二DRA节点与所述目的节点间的路由故障关系时,将所述请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
4.如权利要求1所述的方法,其特征在于,还包括:
所述第一DRA节点接收到未携带有目的节点名称的第一请求消息后,将所述第一请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
5.如权利要求1-4任一项所述的方法,其特征在于,包括:
所述响应消息还包括路由成功消息,所述路由成功消息中携带有所述目的节点名称。
6.如权利要求5所述的方法,其特征在于,所述第一DRA节点将所述请求消息转发至所述第三DRA节点之后,还包括:
所述第一DRA节点通过所述第二DRA节点接收到所述目的节点发送的携带有所述目的节点名称的请求消息,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除;或
所述第一DRA节点通过所述第二DRA节点接收到所述目的节点针对所述第一请求消息反馈的响应消息为路由成功消息时,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除。
7.一种解决直径Diameter网络中消息迂回的方法,其特征在于,包括:
第二直径路由代理DRA节点接收到第一DRA节点发送的携带有目的节点名称的请求消息后,将所述请求消息转发至所述第二DRA节点的下一跳节点,所述第二DRA节点为所述第一DRA节点的下一跳DRA节点;
所述第二DRA节点确定自身未能将所述请求消息转发至所述第二DRA节点的下一跳节点时,向所述第一DRA节点反馈自身与所述目的节点间路由失败的响应消息。
8.一种解决直径Diameter网络中消息迂回的装置,其特征在于,包括:
确定单元,用于确定自身在预设时长内连续N次接收到第二DRA节点针对携带有目的节点名称的请求消息反馈的响应消息为路由失败消息时,将所述第二DRA节点与所述目的节点间的路由关系记录为路由故障,N为设定正整数,所述第二DRA节点为所述装置的下一跳DRA节点;
转发单元,用于接收到携带有所述目的节点名称的请求消息后,查询所述第二DRA节点与所述目的节点间的路由关系,确定所述路由关系为路由故障时,将所述请求消息转发至第三DRA节点,并通过所述第三DRA节点接收所述目的节点反馈的响应消息,其中,所述第三DRA节点为所述装置重新选择的与所述第二DRA节点不同的下一跳DRA节点。
9.如权利要求8所述的装置,其特征在于,包括:
所述路由关系记录在所述装置本地或与所述装置通信的其他设备。
10.如权利要求8所述的装置,其特征在于,所述转发单元还用于:
在接收到携带有所述目的节点名称的请求消息后,未查询到所述第二DRA节点与所述目的节点间的路由故障关系时,将所述请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
11.如权利要求8所述的装置,其特征在于,所述转发单元还用于:
在接收到未携带有目的节点名称的第一请求消息后,将所述第一请求消息转发至所述第二DRA节点,并通过所述第二DRA节点接收所述目的节点反馈的响应消息。
12.如权利要求8-11任一项所述的装置,其特征在于,包括:
所述响应消息还包括路由成功消息,所述路由成功消息中携带有所述目的节点名称。
13.如权利要求12所述的装置,其特征在于,还包括:
删除单元,用于在所述转发单元将所述请求消息转发至所述第三DRA节点之后,通过所述第二DRA节点接收到所述目的节点发送的携带有所述目的节点名称的请求消息,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除;或
通过所述第二DRA节点接收到所述目的节点针对所述第一请求消息反馈的响应消息为路由成功消息时,将记录的所述第二DRA节点与所述目的节点间的路由故障关系进行删除。
14.一种解决直径Diameter网络中消息迂回的装置,其特征在于,包括:
接收单元,用于在接收到第一DRA节点发送的携带有目的节点名称的请求消息后,将所述请求消息转发至所述所述装置的下一跳节点,所述装置为所述第一DRA节点的下一跳DRA节点;
反馈单元,用于确定自身未能将所述请求消息转发至所述装置的下一跳节点时,向所述第一DRA节点反馈自身与所述目的节点间路由失败的响应消息。
15.一种解决直径Diameter网络中消息迂回的***,其特征在于,包括:如权利8-13任一所述的装置和如权利要求14所述的装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510843408.XA CN106803805B (zh) | 2015-11-26 | 2015-11-26 | 一种解决Diameter网络中消息迂回的方法和装置 |
PCT/CN2016/106911 WO2017088757A1 (zh) | 2015-11-26 | 2016-11-23 | 一种解决Diameter网络中消息迂回的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510843408.XA CN106803805B (zh) | 2015-11-26 | 2015-11-26 | 一种解决Diameter网络中消息迂回的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106803805A true CN106803805A (zh) | 2017-06-06 |
CN106803805B CN106803805B (zh) | 2021-02-12 |
Family
ID=58762951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510843408.XA Active CN106803805B (zh) | 2015-11-26 | 2015-11-26 | 一种解决Diameter网络中消息迂回的方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106803805B (zh) |
WO (1) | WO2017088757A1 (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1602077A (zh) * | 2003-05-05 | 2005-03-30 | 三星电子株式会社 | 无线个人区域网中建立最佳路由的路由选择***及其方法 |
CN1988503A (zh) * | 2006-11-13 | 2007-06-27 | 西北工业大学 | 无线传感器网络路由方法 |
CN101141403A (zh) * | 2007-10-15 | 2008-03-12 | 华为技术有限公司 | 消息路由重选方法及装置 |
CN104113476A (zh) * | 2014-07-22 | 2014-10-22 | 深圳市邦彦信息技术有限公司 | 一种通信线路的切换方法及*** |
US20150095439A1 (en) * | 2012-05-29 | 2015-04-02 | Alcatel-Lucent | Message handling extension using context artifacts |
CN104754550A (zh) * | 2013-12-30 | 2015-07-01 | ***通信集团公司 | 一种Diameter消息传递方法、装置及*** |
CN105101137A (zh) * | 2014-04-16 | 2015-11-25 | 上海贝尔股份有限公司 | 一种用于进行会话绑定的方法、dra和*** |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101141391A (zh) * | 2007-10-09 | 2008-03-12 | 中兴通讯股份有限公司 | 一种实现故障切换的方法 |
CN103648126B (zh) * | 2013-12-25 | 2017-04-05 | 大唐移动通信设备有限公司 | 一种故障处理方法和设备 |
-
2015
- 2015-11-26 CN CN201510843408.XA patent/CN106803805B/zh active Active
-
2016
- 2016-11-23 WO PCT/CN2016/106911 patent/WO2017088757A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1602077A (zh) * | 2003-05-05 | 2005-03-30 | 三星电子株式会社 | 无线个人区域网中建立最佳路由的路由选择***及其方法 |
CN1988503A (zh) * | 2006-11-13 | 2007-06-27 | 西北工业大学 | 无线传感器网络路由方法 |
CN101141403A (zh) * | 2007-10-15 | 2008-03-12 | 华为技术有限公司 | 消息路由重选方法及装置 |
US20150095439A1 (en) * | 2012-05-29 | 2015-04-02 | Alcatel-Lucent | Message handling extension using context artifacts |
CN104754550A (zh) * | 2013-12-30 | 2015-07-01 | ***通信集团公司 | 一种Diameter消息传递方法、装置及*** |
CN105101137A (zh) * | 2014-04-16 | 2015-11-25 | 上海贝尔股份有限公司 | 一种用于进行会话绑定的方法、dra和*** |
CN104113476A (zh) * | 2014-07-22 | 2014-10-22 | 深圳市邦彦信息技术有限公司 | 一种通信线路的切换方法及*** |
Also Published As
Publication number | Publication date |
---|---|
WO2017088757A1 (zh) | 2017-06-01 |
CN106803805B (zh) | 2021-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200213223A1 (en) | Method and apparatus for determining identification information about cross-domain path, and storage medium | |
CN110703817B (zh) | 一种统计流量的控制方法、装置和*** | |
CN103748835B (zh) | 标签交换路径的动态更新 | |
CN106330718B (zh) | 组播报文转发方法及装置 | |
WO2018058677A1 (zh) | 一种报文处理方法、计算设备以及报文处理装置 | |
CN108064443A (zh) | 一种代理转发方法和装置、代理服务器和多级代理网络 | |
EP3661135A1 (en) | Data stream transmission | |
CN104717116A (zh) | 用于软件定义联网隧穿扩展的方法和*** | |
CN110730478B (zh) | 切片关联方法、装置、端到端切片编排器及存储介质 | |
CN109194560A (zh) | 组播方法及vtep | |
WO2017124709A1 (zh) | 流量工程隧道建立方法和装置 | |
US20200044963A1 (en) | Centralized label-based software defined network | |
US9832255B2 (en) | Event distribution method, control device, and processor on software-defined network | |
CN103825826B (zh) | 一种动态路由的实现方法和装置 | |
WO2018214817A1 (zh) | 报文转发方法及装置、设备、存储介质 | |
EP3846392A1 (en) | Cross-domain bidirectional tunnel creation method, communication method and apparatus, and storage medium | |
CN110875886B (zh) | 一种用于传输网络的数据传输方法、装置和*** | |
CN106803805A (zh) | 一种解决Diameter网络中消息迂回的方法和装置 | |
JP4128944B2 (ja) | マルチキャスト転送経路設定方法、マルチキャスト転送経路計算装置、プログラムおよび記録媒体 | |
CN110149365A (zh) | 服务适配方法、设备、***以及计算机可读介质 | |
CN104580287B (zh) | 数据通信设备和数据通信方法 | |
JP3977791B2 (ja) | マルチキャスト転送経路設定方法および装置 | |
CN104348720B (zh) | 一种多域路径计算失败的处理方法及路径计算单元 | |
JP5673268B2 (ja) | 通信装置、およびプログラム | |
WO2019114779A1 (zh) | 信息收集 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |