《一种路由消息的方法及装置.pdf》由会员分享,可在线阅读,更多相关《一种路由消息的方法及装置.pdf(26页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104301221A43申请公布日20150121CN104301221A21申请号201410535818322申请日20141011H04L12/72120130171申请人华为技术有限公司地址518129广东省深圳市龙岗区坂田华为总部办公楼72发明人颜石专74专利代理机构北京三高永信知识产权代理有限责任公司11138代理人罗振安54发明名称一种路由消息的方法及装置57摘要本发明公开了一种路由消息的方法及装置,属于通信领域领域。所述方法包括接收下游设备发送的第一错误响应,所述第一错误响应至少携带所述第一错误响应经过的路由设备的标识;根据所述第一错误响应经过的路由设备的标识。
2、和本地存储的所述第一错误响应对应的第一请求消息经过的路由设备的标识,为所述第一请求消息选择所述第一请求消息未经过的下一跳设备;发送所述第一请求消息给所述下一跳设备。所述装置包括接收模块、选择模块和发送模块。本发明能够避免在网络中产生大量的信令以及产生信令风暴。51INTCL权利要求书3页说明书17页附图5页19中华人民共和国国家知识产权局12发明专利申请权利要求书3页说明书17页附图5页10申请公布号CN104301221ACN104301221A1/3页21一种路由消息的方法,其特征在于,所述方法包括接收下游设备发送的第一错误响应,所述第一错误响应至少携带所述第一错误响应经过的路由设备的标识。
3、;根据所述第一错误响应经过的路由设备的标识和本地存储的所述第一错误响应对应的第一请求消息经过的路由设备的标识,为所述第一请求消息选择所述第一请求消息未经过的下一跳设备;发送所述第一请求消息给所述下一跳设备。2如权利要求1所述的方法,其特征在于,所述根据所述第一错误响应经过的路由设备的标识和本地存储的所述第一错误响应对应的第一请求消息经过的路由设备的标识,为所述第一错误响应对应的第一请求消息选择所述第一请求消息未经过的下一跳设备,包括从所述第一错误响应对应的第一请求消息中获取目的设备的路由信息;根据所述路由信息,从路由表中获取对应的下一跳设备的标识,将获取的每个下一跳设备的标识对应的下一跳设备组。
4、成第一设备集合;从所述第一设备集合中去除所述错误响应经过的路由设备的标识对应的路由设备和本地存储的所述第一错误响应对应的第一请求消息经过的路由设备的标识对应的路由设备,得到第二设备集合;如果所述第二设备集合不为空,则从所述第二设备集合中选择一个下一跳设备。3如权利要求2所述的方法,其特征在于,所述方法还包括如果所述第二设备集合为空,则将自身的标识添加到所述第一错误响应,发送所述第一错误响应给上游设备。4如权利要求1所述的方法,其特征在于,所述发送所述第一请求消息给所述下一跳设备,包括将所述第一错误响应经过的路由设备的标识添加到所述第一请求消息中,发送所述第一请求消息给所述下一跳设备。5如权利要。
5、求1至4任一项权利要求所述的方法,其特征在于,所述方法还包括接收第二请求消息,所述第二请求消息携带目的设备的路由信息,如果无法将所述第二请求消息送达到所述路由信息对应的目的设备,则设置第二错误响应,所述第二错误响应携带自身的标识,发送所述第二错误响应给上游设备。6一种路由消息的方法,其特征在于,所述方法包括接收上游设备发送的第一请求消息,所述第一请求消息中包含目的设备的路由信息;判断是否能够将所述第一请求消息送达到所述路由信息对应的目的设备;如果不能送达到所述路由信息对应的目的设备,则生成包含第一错误码的第一错误响应,所述第一错误码用于说明无法将所述第一请求消息送达到所述目的设备;发送所述第一。
6、错误响应给所述上游设备,使所述上游设备根据所述第一错误码的指示不进行路由重选。7如权利要求6所述的方法,其特征在于,所述方法还包括接收下游设备发送的第二错误响应,所述第二错误响应至少携带第二错误码;根据所述第二错误码,确定是否能将所述第二错误码对应的第二请求消息送达到目的权利要求书CN104301221A2/3页3设备;如果不能,将所述第二错误响应转发给上游设备。8一种路由消息的装置,其特征在于,所述装置包括接收模块,用于接收下游设备发送的第一错误响应,所述第一错误响应至少携带所述第一错误响应经过的路由设备的标识;选择模块,用于根据所述第一错误响应经过的路由设备的标识和本地存储的所述第一错误响。
7、应对应的第一请求消息经过的路由设备的标识,为所述第一请求消息选择所述第一请求消息未经过的下一跳设备;发送模块,用于发送所述第一请求消息给所述下一跳设备。9如权利要求8所述的装置,其特征在于,所述选择模块包括第一获取单元,用于从所述第一错误响应对应的第一请求消息中获取目的设备的路由信息;第二获取单元,用于根据所述路由信息,从路由表中获取对应的下一跳设备的标识,将获取的每个下一跳设备的标识对应的下一跳设备组成第一设备集合;去除单元,用于从所述第一设备集合中去除所述错误响应经过的路由设备的标识对应的路由设备和本地存储的所述第一错误响应对应的第一请求消息经过的路由设备的标识对应的路由设备,得到第二设备。
8、集合;选择单元,用于如果所述第二设备集合不为空,则从所述第二设备集合中选择一个下一跳设备。10如权利要求9所述的装置,其特征在于,所述装置还包括添加模块,用于如果所述第二设备集合为空,则将自身的标识添加到所述第一错误响应,发送所述第一错误响应给上游设备。11如权利要求8所述的装置,其特征在于,所述发送模块,用于将所述第一错误响应经过的路由设备的标识添加到所述第一请求消息中,发送所述第一请求消息给所述下一跳设备。12如权利要求8至11任一项权利要求所述的装置,其特征在于,所述装置还包括设置模块,用于接收第二请求消息,所述第二请求消息携带目的设备的路由信息,如果无法将所述第二请求消息送达到所述路由。
9、信息对应的目的设备,则设置第二错误响应,所述第二错误响应携带自身的标识,发送所述第二错误响应给上游设备。13一种路由消息的装置,其特征在于,所述装置包括接收模块,用于接收上游设备发送的第一请求消息,所述第一请求消息中包含目的设备的路由信息;判断模块,用于判断是否能够将所述第一请求消息送达到所述路由信息对应的目的设备;生成模块,用于如果不能送达到所述路由信息对应的目的设备,则生成包含第一错误码的第一错误响应,所述第一错误码用于说明无法将所述第一请求消息送达到所述目的设备;发送模块,用于发送所述第一错误响应给所述上游设备,使所述上游设备根据所述第一错误码的指示不进行路由重选。权利要求书CN1043。
10、01221A3/3页414如权利要求13所述的装置,其特征在于,所述装置还包括接收模块,用于接收下游设备发送的第二错误响应,所述第二错误响应至少携带第二错误码;确定模块,用于根据所述第二错误码,确定是否能将所述第二错误码对应的第二请求消息送达到目的设备;转发模块,用于如果不能,将所述第二错误响应转发给上游设备。权利要求书CN104301221A1/17页5一种路由消息的方法及装置技术领域0001本发明涉及通信领域,特别涉及一种路由消息的方法及装置。背景技术0002在DIAMETER直径网络中,当客户端需要发送请求消息给位于网络中的网元时,客户端先将该请求消息发送给位于该客户端与该网元之间的路径。
11、上的路由节点,路由节点找出下一跳并将该请求消息路由给该下一跳。如果该下一跳也是个路由节点,该路由节点按上述方法将该请求消息路由给下一跳,直到该请求消息被路由至该网元。0003其中,在将客户端的请求消息发送给网元的过程中,如果该路径上的某个路由节点发现无法将该请求消息送达到该网元,此时该路由节点沿该路径往回返回错误响应,该路径上的路由节点当接收到该错误响应后可以为该请求消息路由重选,并通过重选的路由将该请求消息发送给该网元。然而,目前的路由重选技术,使得很多路由设备重复地为该请求消息进行路由重选,导致在网络中产生大量的信令,甚至造成信令风暴。发明内容0004为了避免在网络中产生大量的信令以及产生。
12、信令风暴,本发明提供了路由消息的方法及装置。所述技术方案如下0005第一方面,一种路由消息的方法,所述方法包括0006接收下游设备发送的第一错误响应,所述第一错误响应至少携带所述第一错误响应经过的路由设备的标识;0007根据所述第一错误响应经过的路由设备的标识和本地存储的所述第一错误响应对应的第一请求消息经过的路由设备的标识,为所述第一请求消息选择所述第一请求消息未经过的下一跳设备;0008发送所述第一请求消息给所述下一跳设备。0009结合第一方面,在第一方面的第一种可能的实现方式中,所述根据所述第一错误响应经过的路由设备的标识和本地存储的所述第一错误响应对应的第一请求消息经过的路由设备的标识。
13、,为所述第一错误响应对应的第一请求消息选择所述第一请求消息未经过的下一跳设备,包括0010从所述第一错误响应对应的第一请求消息中获取目的设备的路由信息;0011根据所述路由信息,从路由表中获取对应的下一跳设备的标识,将获取的每个下一跳设备的标识对应的下一跳设备组成第一设备集合;0012从所述第一设备集合中去除所述错误响应经过的路由设备的标识对应的路由设备和本地存储的所述第一错误响应对应的第一请求消息经过的路由设备的标识对应的路由设备,得到第二设备集合;0013如果所述第二设备集合不为空,则从所述第二设备集合中选择一个下一跳设备。0014结合第一方面的第一种可能的实现方式,在第一方面的第二种可能。
14、的实现方式说明书CN104301221A2/17页6中,所述方法还包括0015如果所述第二设备集合为空,则将自身的标识添加到所述第一错误响应,发送所述第一错误响应给上游设备。0016结合第一方面,在第一方面的第三种可能的实现方式中,所述发送所述第一请求消息给所述下一跳设备,包括0017将所述第一错误响应经过的路由设备的标识添加到所述第一请求消息中,发送所述第一请求消息给所述下一跳设备。0018结合第一方面或第一方面的第一至第三中任一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述方法还包括0019接收第二请求消息,所述第二请求消息携带目的设备的路由信息,如果无法将所述第二请求消息送达。
15、到所述路由信息对应的目的设备,则设置第二错误响应,所述第二错误响应携带自身的标识,发送所述第二错误响应给上游设备。0020第二方面、一种路由消息的方法,所述方法包括0021接收上游设备发送的第一请求消息,所述第一请求消息中包含目的设备的路由信息;0022判断是否能够将所述第一请求消息送达到所述路由信息对应的目的设备;0023如果不能送达到所述路由信息对应的目的设备,则生成包含第一错误码的第一错误响应,所述第一错误码用于说明无法将所述第一请求消息送达到所述目的设备;0024发送所述第一错误响应给所述上游设备,使所述上游设备根据所述第一错误码的指示不进行路由重选。0025结合第二方面,在第二方面的。
16、第一种可能的实现方式中,所述方法还包括0026接收下游设备发送的第二错误响应,所述第二错误响应至少携带第二错误码;0027根据所述第二错误码,确定是否能将所述第二错误码对应的第二请求消息送达到目的设备;0028如果不能,将所述第二错误响应转发给上游设备。0029第三方面、一种路由消息的装置,所述装置包括0030接收模块,用于接收下游设备发送的第一错误响应,所述第一错误响应至少携带所述第一错误响应经过的路由设备的标识;0031选择模块,用于根据所述第一错误响应经过的路由设备的标识和本地存储的所述第一错误响应对应的第一请求消息经过的路由设备的标识,为所述第一请求消息选择所述第一请求消息未经过的下一。
17、跳设备;0032发送模块,用于发送所述第一请求消息给所述下一跳设备。0033结合第三方面,在第三方面的第一种可能的实现方式中,所述选择模块包括0034第一获取单元,用于从所述第一错误响应对应的第一请求消息中获取目的设备的路由信息;0035第二获取单元,用于根据所述路由信息,从路由表中获取对应的下一跳设备的标识,将获取的每个下一跳设备的标识对应的下一跳设备组成第一设备集合;0036去除单元,用于从所述第一设备集合中去除所述错误响应经过的路由设备的标识对应的路由设备和本地存储的所述第一错误响应对应的第一请求消息经过的路由设备的说明书CN104301221A3/17页7标识对应的路由设备,得到第二设。
18、备集合;0037选择单元,用于如果所述第二设备集合不为空,则从所述第二设备集合中选择一个下一跳设备。0038结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述装置还包括0039添加模块,用于如果所述第二设备集合为空,则将自身的标识添加到所述第一错误响应,发送所述第一错误响应给上游设备。0040结合第三方面,在第三方面的第三种可能的实现方式中,0041所述发送模块,用于将所述第一错误响应经过的路由设备的标识添加到所述第一请求消息中,发送所述第一请求消息给所述下一跳设备。0042结合第三方面或第三方面的第一至第三中任一种可能的实现方式,在第一方面的第四种可能的实现方式中,。
19、所述装置还包括0043设置模块,用于接收第二请求消息,所述第二请求消息携带目的设备的路由信息,如果无法将所述第二请求消息送达到所述路由信息对应的目的设备,则设置第二错误响应,所述第二错误响应携带自身的标识,发送所述第二错误响应给上游设备。0044第四方面、一种路由消息的装置,所述装置包括0045接收模块,用于接收上游设备发送的第一请求消息,所述第一请求消息中包含目的设备的路由信息;0046判断模块,用于判断是否能够将所述第一请求消息送达到所述路由信息对应的目的设备;0047生成模块,用于如果不能送达到所述路由信息对应的目的设备,则生成包含第一错误码的第一错误响应,所述第一错误码用于说明无法将所。
20、述第一请求消息送达到所述目的设备;0048发送模块,用于发送所述第一错误响应给所述上游设备,使所述上游设备根据所述第一错误码的指示不进行路由重选。0049结合第四方面,在第四方面的第一种可能的实现方式中,所述装置还包括0050接收模块,用于接收下游设备发送的第二错误响应,所述第二错误响应至少携带第二错误码;0051确定模块,用于根据所述第二错误码,确定是否能将所述第二错误码对应的第二请求消息送达到目的设备;0052转发模块,用于如果不能,将所述第二错误响应转发给上游设备。0053在本发明实施例中,由于第一错误响应携带其经过的路由设备的标识,如此路由设备可以根据第一错误响应经过的路由设备的标识和。
21、本地存储的第一错误响应对应的第一请求消息经过的路由设备的标识,为第一请求消息选择第一请求消息未经过的下一跳设备,从而避免路由设备重复地为第一请求消息进行路由重选,避免在网络中产生大量的信令以及避免产生信令风暴。附图说明0054图11是本发明实施例应用的网络架构示意图;说明书CN104301221A4/17页80055图12是本发明实施例1提供的一种路由消息的方法流程图;0056图2是本发明实施例2提供的一种路由消息的方法流程图;0057图3是本发明实施例3提供的一种路由消息的方法流程图;0058图4是本发明实施例4提供的一种路由消息的方法流程图;0059图5是本发明实施例5提供的一种路由消息的。
22、装置结构示意图;0060图6是本发明实施例6提供的一种路由消息的装置结构示意图;0061图7是本发明实施例7提供的一种路由消息的装置结构示意图;0062图8是本发明实施例8提供的一种路由消息的装置结构示意图。具体实施方式0063为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。0064参见图11,本发明实施例应用于DIAMETER网络中,DIAMETER网络由多个路由设备组成。位于DIAMETER网络中的每个路由设备中包含路由表,路由表用于存储至少一个目的设备的路由信息和至少一个目的设备中的每个目的设备对应的至少一个下一跳设备的标识,下一跳设备的标识可。
23、以为下一跳设备的IPINTERNETPROTOCOL,网络之间互连的协议地址或下一跳设备的主机名域名等,目的设备的路由信息可以为目的设备的地址或目的设备对应的用户的用户标识。0065客户端和服务器等设备连接到DIAMETER网络,当客户端需要目的设备发送请求消息时,该请求消息中包含目的设备的路由信息,目的设备可以为服务器等设备,客户端先向与其直接相连的路由设备发送该请求消息。该路由设备接收该请求消息,根据该请求消息包含的路由信息,从路由表中找出对应的下一跳设备的标识,从找出的每个下一跳设备的标识对应的设备中选择一个下一跳设备,优选的,从找出的每个下一跳设备的标识对应的下一跳设备中选择能最近到达。
24、目的设备的下一跳设备,向选择的下一跳设备发送该请求消息。如果选择的下一跳设备不是目的设备而是一个路由设备,选择的下一跳设备按上述方法将该请求消息转发给其下一跳设备,直到将该请求消息转发给目的设备时为止。0066参见图11所示的DIAMETER网络,该DIAMETER网络包括路由设备1、2、3和4,当客户端需要将请求消息发送给服务器时,客户端可以先向路由设备1发送该请求消息,该请求消息中包含目的设备的路由信息IPSERVER,路由信息IPSERVER为该服务器的地址。路由设备1接收该请求消息,根据该请求消息包含的路由信息IPSERVER,从自身存储的路由表找出对应的下一跳设备的标识,找出的下一跳。
25、设备的标识包括路由设备2的地址IP2和路由设备3的地址IP3,从找出的路由设备2的地址IP2对应的路由设备2和路由设备3的地址IP3对应的路由设备3中选择到达目的设备最近的下一跳设备,假设选择路由设备3,向路由设备3发送该请求消息。0067路由设备3接收该请求消息,根据该请求消息包含的路由信息IPSERVER,从自身存储的路由表中找出对应的下一跳设备的标识,找出的下一跳设备的标识包括该服务器的地址IPSERVER和路由设备4的地址IP4,从找出的该服务器的地址IPSERVER对应的服务器和路由设备4的地址IP4对应的路由设备4中选择达到目的设备最近的下一跳设备,选择的下一跳设备为该服务器,向该。
26、服务器发送该请求消息。说明书CN104301221A5/17页90068其中,需要说明中,路由设备在接收上游设备发送的请求消息后,如果发现无法将该请求消息送达到目的设备,则生成错误响应,将该错误响应返回给上游设备。该上游设备可以通过如下实施例提供的路由消息的方法来路由该错误响应对应的请求消息。0069实施例10070参见图12,本发明实施例提供了一种路由消息的方法,包括0071步骤101接收下游设备发送的第一错误响应,第一错误响应至少携带第一错误响应经过的路由设备的标识。0072步骤102根据第一错误响应经过的路由设备的标识和本地存储的第一错误响应对应的第一请求消息经过的路由设备的标识,为第一。
27、请求消息选择第一请求消息未经过的下一跳设备。0073步骤103发送第一请求消息给选择的下一跳设备。0074在本发明实施例中,由于第一错误响应携带其经过的路由设备的标识,如此路由设备可以根据第一错误响应经过的路由设备的标识和本地存储的第一错误响应对应的第一请求消息经过的路由设备的标识,为第一请求消息选择第一请求消息未经过的下一跳设备,从而避免路由设备重复地为第一请求消息进行路由重选,避免在网络中产生大量的信令以及避免产生信令风暴。0075实施例20076参见图2,本发明实施例提供了一种路由消息的方法,包括0077步骤201第一路由设备接收客户端发送的请求消息,第一路由设备为与客户端直接相连的路由。
28、设备,该请求消息包含目的设备的路由信息。0078当客户端需要发送请求消息给目的设备时,客户端从与其直接相连的路由设备中选择一个路由设备。优选的,选择到达目的设备的路径最近的路由设备,为了便于说明将选择的路由设备称为第一路由设备。然后客户端再向第一路由设备发送该请求消息。0079例如,参见图11,当客户端需要发送请求消息给服务器时,客户端从与其直接相连的路由设备1和2中选择路由设备1,向与其直接相连的路由设备1发送请求消息,该请求消息包含目的设备的路由信息,该路由信息为该服务器的地址IPSERVER。0080步骤202第一路由设备根据该请求消息包含的路由信息获取下一跳设备,向该下一跳设备转发该请。
29、求消息。0081具体地,第一路由设备根据该请求消息包含的路由信息,从自身存储的路由表中找出对应的下一跳设备的标识,将找出的每个下一跳设备的标识对应的下一跳设备组成第一设备集合,从剩下的路由设备中选择一下一跳设备,优选的,选择最近到达目的设备的下一跳设备,将自身的标识添加到该请求消息,向选择的下一跳设备转发该请求消息。0082进一步地,第一路由设备将自身的标识添加到该请求消息后,还可以存储该请求消息。0083例如,路由设备1接收客户端发送的请求消息,根据该请求消息包含的路由信息IPSERVER,从自身存储的路由表中找出对应的下一跳设备的标识包括路由设备2的地址IP2和路由设备3的地址IP3。将找。
30、出的路由设备2的地址IP2对应的路由设备2和路由设备3的地址IP3对应的路由设备3组成第一设备集合,从第一设备集合中选择一下一跳设备,假设选择的下一跳设备为路由设备3,将自身的标识IP1添加到该请求消息中,存储说明书CN104301221A6/17页10该请求消息以及向路由设备3转发该请求消息。0084其中,如果第一路由设备没有成功地将该请求消息送达到选择的下一跳设备,则第一路由设备从第一设备集合中去除选择的下一跳设备得到第二设备集合。如果第二设备集合不为空,则从第二设备集合中重新选择一下一跳设备,向选择的下一跳设备转发该请求消息。如果第二设备集合为空,则生成错误响应,将自身的标识添加到该错误。
31、响应,向客户端发送该错误响应。客户端根据该错误响应携带的第一路由设备的标识,从与其自身相连的路由设备中去除第一路由设备,如果还存在剩下的路由设备,则从剩下的路由设备中选择一路由设备,将该请求消息发送给选择的路由设备。0085第一路由设备选择的下一跳设备可能为目的设备或者为路由设备。当选择的下一跳设备为目的设备,则第一路由器将该请求消息转发给目的设备;如果目的设备成功接收到该请求消息,则结束操作。当选择的下一跳设备为路由设备且该路由设备成功接收到该请求消息,则该路由设备执行后续步骤。0086其中,如果目的设备没有成功接收到该请求消息,第一路由设备从第一设备集合重新选择一个下一跳设备,该下一跳设备。
32、为一个路由设备,且该路由设备执行后续步骤。0087步骤203第二路由设备接收其上游路由设备发送的该请求消息,根据该请求消息携带的路由信息获取第一设备集合,第一设备集合包括至少一个下一跳设备。0088第二路由设备可以为第一路由设备选择的下一跳路由设备或者为DIAMETER网络中的其他路由设备。0089本步骤可以为第二路由设备接收其上游路由设备发送的该请求消息,根据该请求消息包含的路由信息,从自身存储的路由表中找出对应的下一跳设备的标识,将找出的每个下一跳设备的标识对应的下一跳设备组成第一设备集合。0090例如,路由设备3接收路由设备1发送的请求消息,根据该请求消息包含的路由信息IPSERVER,。
33、根据路由信息IPSERVER,从自身存储的路由表中找出对应的下一跳设备的标识包括路由设备4的地址IP4和服务器的地址IPSERVER。将找出的路由设备4的地址IP4对应的路由设备4和服务器的地址IPSERVER对应的服务器组成第一设备集合。0091步骤204第二路由设备从第一设备集合去除该请求消息经过的路由设备得到第二设备集合,从第二设备集合中选择一下一跳设备,向选择的下一跳设备转发该请求消息。0092具体地,第二路由设备从该请求消息中提取该请求消息携带的路由设备的标识,该提取的路由设备的标识即为该请求消息经过的路由设备的标识,从第一设备集合中去除该请求消息经过的路由设备的标识对应的路由设备得。
34、到第二设备集合,从第二设备集合中选择最近到达目的设备的下一跳设备,将自身的标识添加到该请求消息中,存储该请求消息,并向选择的下一跳设备转发该请求消息。0093例如,路由设备3从该请求消息提取该请求消息经过的路由设备的标识为IP1,从第一设备集合中去除该请求消息经过的路由设备的标识IP1对应的路由设备1得到第二设备集合,第二设备集合包括路由设备4和服务器,从第二设备集合包括的路由设备4和服务器中选择一下一跳设备,且选择的下一跳设备为服务器,将自身的标识IP3添加到该请求消息中,存储该请求消息,并向服务器转发该请求消息。0094当该下一跳设备为目的设备时,如果目的设备成功接收到该请求消息,结束操作。
35、。如果目的设备没有成功接收到该请求消息,即第二路由设备没有成功地将该请求消息送达说明书CN104301221A107/17页11到选择的下一跳设备,则第二路由设备执行如下步骤205。0095当下一跳设备不是目的设备而是DIAMETER网络中的一个路由设备,则该下一跳设备在成功接收到该请求消息后,同第二路由设备一样执行上述步骤203和204的操作。0096如果该下一跳设备没有成功接收到该请求消息,即第二路由设备没有成功地将该请求消息送达到选择的下一跳设备,则第二路由设备需要执行如下步骤205的操作。0097步骤205如果没有成功地将该请求消息送达到该下一跳设备,则第二路由设备从第二设备集合中去除。
36、选择的下一跳设备得到第三设备集合。0098例如,假设服务器没有成功接收路由设备3转发的该请求消息,路由设备3从第二设备集合包括的路由设备4和服务器中去除服务器,得到的第三设备集合中包括路由设备4。0099步骤206如果第三设备集合不为空,则第二路由设备从第三设备集合中重新选择一下一跳设备,向选择的下一跳设备转发该请求消息。0100例如,第三设备集合中包括路由设备4,所以第三设备集合不为空,路由设备3从第三设备集合中选择路由设备4,向路由设备4转发该请求消息。0101当该下一跳设备为目的设备时,如果目的设备成功接收到该请求消息,结束操作,如果目的设备没有成功接收到该请求消息,则从第三设备集合中去。
37、除选择下一跳设备,然后重新执行本步骤。0102当下一跳设备不是目的设备而是DIAMETER网络中的一个路由设备,则该下一跳设备在该下一跳设备成功接收到该请求消息后,同第二路由设备一样执行上述步骤203和204的操作。0103如果该下一跳设备没有成功接收到该请求消息,即第二路由设备没有成功地将该请求消息送达到选择的下一跳设备,则第二路由设备从第三设备集合中去除选择的下一跳设备,然后重新执行本步骤。0104例如,路由设备4接收路由设备3转发的请求消息,根据该请求消息携带的路由信息IPSERVER,从自身存储的路由表中找出下一跳设备的标识为IPSERVER,将下一跳设备的标识IPSERVER对应的服。
38、务器组成第一设备集合;从该请求消息中提取该请求消息经过的路由设备的标识IP1和IP3,从第一设备集合中去除该请求消息经过的路由设备的标识IP1对应的路由设备1和IP3对应的路由设备3,得到第二设备集合,第二设备集合包括该服务器,从第二设备集合中选择下一跳设备为该服务器,将自身的标识IP4添加到该请求消息中,存储该请求消息并向该服务器转发该请求消息。0105步骤207如果第三设备集合为空,则第二路由设备生成错误响应,将自身的标识添加到该错误响应,向其上游路由设备发送该错误响应。0106其中,生成的错误响应还携带该请求消息的标识。0107例如,假设路由设备4没有将该请求消息送达到服务器,然后路由设。
39、备4从第二设备集合中去除选择的下一跳设备,即去除选择的服务器,得到第三设备集合,且第三设备集合为空。如此,路由设备4生成错误响应,将自身的标识IP4添加到该错误响应中,路由设备4的上游设备为路由设备3,向路由设备3发送该错误响应。0108步骤208第三路由设备接收其下游设备发送的错误响应,从本地存储的该错误响应对应的请求消息中获取该路由信息。说明书CN104301221A118/17页120109其中,第三路由设备为第二路由设备的上游设备或者为DIAMETER网络中的其他路由设备。0110本步骤可以为第三路由设备接收其下游设备发送的错误响应,从该错误响应中提取该错误响应对应的请求消息的标识,根。
40、据该请求消息的标识,从本地存储的请求消息中获取对应的请求消息,从该请求消息中提取该路由信息。0111例如,路由设备3接收路由设备4发送的错误响应,从该错误响应对应的请求消息中提取路由信息为IPSERVER。0112步骤209第三路由设备根据该路由信息获取第一设备集合,第一设备集合包括至少一个下一跳设备。0113具体地,第三路由设备根据该路由信息,从自身存储的路由表中获取对应的下一跳设备的标识,将获取的下一跳设备的标识对应的下一跳设备组成第一设备集合。0114例如,路由设备3根据路由信息IPSERVER,从自身存储的路由表中获取对应的下一跳设备的标识为路由设备4的地址IP4和服务器的地址IPSE。
41、RVER,将路由设备4的地址IP4对应的路由设备4和服务器的地址IPSERVER对应的服务器组成第一设备集合。0115步骤210第三路由设备从第一设备集合中去除该错误响应携带的设备的标识对应的设备和该请求消息经过的路由设备的标识对应的设备,得到第二设备集合。0116具体地,第三路由设备从该请求消息中提取该请求消息携带的路由设备的标识,提取的路由设备的标识即为该请求消息经过的路由设备的标识,从第一设备集合中去除该错误响应携带的设备的标识对应的设备和该请求消息经过的路由设备的标识对应的设备,得到第二设备集合。0117例如,路由设备3从第一设备集合中去除该错误响应携带的路由设备4的IP4对应的路由设。
42、备4和为该请求消息选择的服务器,得到第二设备集合,第二设备集合为空。0118步骤211如果第二设备集合为空,则第三路由设备将自身的标识添加到该错误响应,向其上游设备转发该错误响应。0119其中,该上游设备接收该错误响应后,如果该上游设备不是客户端,则该上游设备同第三路由设备一样,执行上述步骤208至212的步骤,直到将该错误响应转发给客户端。0120步骤212如果第二设备集合不为空,则第三路由设备从第二设备集合中选择一下一跳设备,将该错误响应携带的设备标识添加到该请求消息,向选择的下一跳设备发送该请求消息。0121选择的下一跳设备可能为目的设备或者为路由设备。当选择的下一跳设备为目的设备,则第。
43、三路由设备将该请求消息转发给目的设备;如果目的设备成功接收到该请求消息,则结束操作,如果目的设备没有成功接收到该请求消息,即第三路由设备没有成功地将该请求消息送达到目的设备,则第三路由设备从第二设备集合中去除选择的下一跳设备,然后执行步骤211和212。0122当选择的下一跳设备为路由设备,如果该下一跳设备没有成功接收到该请求消息,则第三路由设备从第二设备集合中去除选择的下一跳设备,然后执行步骤211和212,如果该下一步设备接收到该请求消息,则执行如下步骤213。0123例如,路由设备3判断出第二设备集合为空,将自身的标识IP3添加到该错误响应,路由设备3的上游设备为路由设备1,向其路由设备。
44、1发送该错误响应,该错误响应携带说明书CN104301221A129/17页13路由设备3的IP3和路由设备4的标识IP4。0124路由设备1接收该错误响应,从该错误响应对应的请求消息中提取路由信息IPSERVER,根据该路由信息IPSERVER,从自身存储的路由表中获取对应的下一跳设备的标识,包括路由设备3的标识IP3和路由设备2的标识IP2,将路由设备3的标识IP3对应的路由设备3和路由设备2的标识IP2对应的路由设备2组成第一设备集合,从本地获取该错误响应对应的请求消息,从该请求消息中提取该请求消息经过的路由设备的标识为IP1,从第一设备集合中去除该错误响应携带的设备标识IP3对应的路由。
45、设备3和该请求消息经过的路由设备的标识为IP1对应的路由设备1,得到第二设备集合包括路由设备2,从第二设备集合中选择路由设备2,向该请求消息添加该错误响应携带的路由设备3的标识IP3和路由设备4的标识IP4,存储该请求消息并将该请求消息转发给路由设备2。0125步骤213第四路由设备接收其上游路由设备发送的该请求消息,根据该请求消息携带的路由信息获取第一设备集合,第一设备集合包括至少一个下一跳设备。0126第四路由设备可以为第三路由设备选择的下一跳路由设备或者为DIAMETER网络中的其他路由设备。0127本步骤可以为第四路由设备接收其上游路由设备发送的该请求消息,根据该请求消息包含的路由信息。
46、,从自身存储的路由表中找出对应的下一跳设备的标识,将找出的每个下一跳设备的标识对应的下一跳设备组成第一设备集合。0128例如,路由设备2接收路由设备1发送的请求消息,根据该请求消息包含的路由信息IPSERVER,根据路由信息IPSERVER,从自身存储的路由表中找出对应的下一跳设备的标识包括路由设备4的地址IP4。将找出的路由设备4的地址IP4对应的路由设备4组成第一设备集合。0129步骤214第四路由设备从第一设备集合中去除该请求消息携带的设备标识对应的设备得到第二设备集合。0130例如,路由设备2从第一设备集合中去除该请求消息携带的设备标识IP4对应的路由设备4,得到的第二设备集合为空。0。
47、131步骤215如果第二设备集合不为空,则第四路由设备从第二设备集合中选择一下一跳设备,向选择的下一跳设备转发该请求消息。0132具体地,第四路由设备从第二设备集合中选择最近到达目的设备的下一跳设备,将自身的标识添加到该请求消息中,存储该请求消息,并向选择的下一跳设备转发该请求消息。0133当该下一跳设备为目的设备时,如果目的设备成功接收到该请求消息,结束操作,如果目的设备没有成功接收到该请求消息,则第四路由设备从第二设备集合中去除选择的下一跳设备,然后执行本步骤。当下一跳设备不是目的设备而是DIAMETER网络中的一个路由设备,则该下一跳设备在该下一跳设备成功接收到该请求消息后,同第四路由设。
48、备一样执行213至215的操作。0134如果该下一跳设备没有成功接收到该请求消息,即第四路由设备没有成功地将该请求消息送达到选择的下一跳设备,第四路由设备从第二设备集合中去除选择的下一跳设备,然后执行本步骤。0135步骤216如果第二设备集合为空,则第四路由设备生成错误响应,将自身的标识说明书CN104301221A1310/17页14和该请求消息携带的设备标识添加到该错误响应,向其上游设备发送该错误响应。0136例如,路由设备2判断第二设备集合为空,生成错误响应,将自身的标识IP2,该请求消息携带的标识IP3和IP4添加到该错误响应,路由设备2的上游设备为路由设备1,向路由设备1发送该错误响。
49、应。0137步骤217第一路由设备接收其下游设备发送的错误响应,从本地存储的该错误响应对应的请求消息中获取该路由信息。0138本步骤可以为第一路由设备接收其下游设备发送的错误响应,从该错误响应中提取该错误响应对应的请求消息的标识,根据该请求消息的标识从本地存储的请求消息中获取对应的请求消息,从该请求消息中提取该路由信息。0139例如,路由设备1接收路由设备2发送的错误响应,从该错误响应对应的请求消息中提取路由信息为IPSERVER。0140步骤218第一路由设备根据该路由信息获取第一设备集合,第一设备集合包括至少一个下一跳设备。0141具体地,第一路由设备根据该路由信息,从自身存储的路由表中获。
50、取对应的下一跳设备的标识,将获取的下一跳设备的标识对应的下一跳设备组成第一设备集合。0142例如,路由设备1根据路由信息IPSERVER,从自身存储的路由表中获取对应的下一跳设备的标识为路由设备2的地址IP2和路由设备3的地址IP3R,将路由设备2的地址IP2对应的路由设备2和路由设备3的地址IP3对应的路由设备3组成第一设备集合。0143步骤219第一路由设备从第一设备集合中去除该错误响应携带的设备的标识对应的设备得到第二设备集合。0144例如,路由设备1从第一设备集合中去除该错误响应携带的路由设备2的IP2对应的路由设备2和路由设备3的IP3对应的路由设备3,得到第二设备集合,第二设备集合。