路由设备、负载均衡设备、消息分发方法及系统的制作方法
【技术领域】
[0001]本发明涉及通信领域,特别涉及一种路由设备、负载均衡设备、消息分发方法及系统。
【背景技术】
[0002]电信设备进行消息分发时,为了避免因分发设备故障导致会话中断的情况,通常会对分发设备设置可靠性冗余。
[0003]在现有技术中,通常采用主备或双归属方式提供可靠性冗余。具体的,每个会话通过一个分发集群进行分发,该分发集群中包含至少两个负载均衡设备,其中一个为主设备,另一个为副设备,正常情况下,主设备激活承担会话消息的分发任务,副设备处于未激活状态。外部网元向业务处理设备发送会话消息时,通过主设备的接口地址将会话消息发送给主设备,由主设备下发给对应的业务处理单元;主设备发生故障时,激活副设备,外部网元将消息头域中的分发设备的接口地址修改为副设备的接口地址,并将后续的消息发送给副设备。此外,负载均衡设备中还设置有链路管理功能,用以对消息链路进行管理。
[0004]在实现本发明的过程中,申请人发现现有技术至少存在以下缺点:
[0005]当主分发设备发生故障时,需要外部网元修改分发设备的接口地址,该过程会导致会话的呼叫损失,影响会话质量,并且,由于负载均衡设备还承担链路管理功能,当主设备发生故障时,当前链路管理功能也不可用,可能导致断链的情况发生,从而导致会话失败。
【发明内容】
[0006]为了解决现有技术中当主分发设备发生故障时,需要外部网元修改分发设备的接口地址,导致会话的呼叫损失,并且,由于负载均衡设备中的链路管理功能不可用而导致断链的问题,本发明实施例提供了一种路由设备、负载均衡设备、消息分发方法及系统。所述技术方案如下:
[0007]第一方面,提供了一种路由设备,用于消息分发系统中,所述消息分发系统包括所述路由设备,以及包含第一负载均衡设备和第二负载均衡设备在内的至少两个负载均衡设备,所述至少两个负载均衡设备各自对应一个接口地址,且所述至少两个负载均衡设备各自对应的接口地址用于在所述路由设备和所述至少两个负载均衡设备之间进行消息的等价分发;所述路由设备包括:
[0008]故障检测模块,用于检测所述第一负载均衡设备是否发生故障,所述第一负载均衡设备是一个会话的原分发设备;
[0009]分发设备确定模块,用于若所述第一负载均衡设备发生故障,则根据预先设置的等价路由规则确定所述第二负载均衡设备为所述会话的新的分发设备;
[0010]发送模块,用于根据所述第二负载均衡设备对应的接口地址,将所述会话的后续消息分发给所述第二负载均衡设备,由所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点。
[0011]在第一方面的第一种可能实现方式中,所述故障检测模块,用于通过双向转发检测BFD协议检测所述第一负载均衡设备是否发生故障。
[0012]在第一方面的第二种可能实现方式中,所述分发设备确定模块,用于根据开放式最短路径优先OSPF协议确定所述第二负载均衡设备为所述会话的新的分发设备。
[0013]第二方面,提供一种负载均衡设备,用于消息分发系统中,所述消息分发系统包括路由设备,以及包含所述负载均衡设备和第一负载均衡设备在内的至少两个负载均衡设备,所述至少两个负载均衡设备各自对应一个接口地址,且所述至少两个负载均衡设备各自对应的接口地址用于在所述路由设备和所述至少两个负载均衡设备之间进行消息的等价分发;所述负载均衡设备包括:
[0014]接收模块,用于接收所述路由设备发送的,一个会话的后续消息;所述后续消息是所述路由设备检测出所述第一负载均衡设备发生故障后,根据预先设置的等价路由规则确定所述负载均衡设备为所述会话的新的分发设备,并根据所述负载均衡设备对应的接口地址分发的;所述第一负载均衡设备是所述会话的原分发设备;
[0015]发送模块,用于将所述后续消息发送给所述对话对应的下一跳节点。
[0016]在第二方面的第一种可能实现方式中,所述发送模块,包括:
[0017]第一发送单元,用于当所述后续消息为业务消息,且所述后续消息中包含调度参数时,根据所述调度参数中携带的业务处理设备的标识,将所述后续消息发送给所述业务处理单元。
[0018]在第二方面的第二种可能实现方式中,所述发送模块,包括:
[0019]第一确定单元,用于当所述后续消息为业务消息,且所述后续消息中不包含调度参数时,根据所述后续消息的呼叫标识进行散列运算,确定所述后续消息对应的业务处理设备;
[0020]第二发送单元,用于将所述后续消息发送给确定的所述业务处理设备。
[0021]在第二方面的第三种可能实现方式中,所述发送模块,包括:
[0022]第二确定单元,用于当所述后续消息为链路管理消息时,根据所述后续消息的目的地址、目的端口以及管理协议进行散列运算,确定所述后续消息对应的链路管理设备;
[0023]第三发送单元,用于将所述后续消息发送给确定的所述链路管理设备。
[0024]第三方面,提供一种消息分发方法,用于消息分发系统中,所述消息分发系统包括路由设备以及包含第一负载均衡设备和第二负载均衡设备在内的至少两个负载均衡设备,所述至少两个负载均衡设备各自对应一个接口地址,且所述至少两个负载均衡设备各自对应的接口地址用于在所述路由设备和所述至少两个负载均衡设备之间进行消息的等价分发;所述方法包括:
[0025]所述路由设备检测所述第一负载均衡设备是否发生故障,所述第一负载均衡设备是一个会话的原分发设备;
[0026]若所述第一负载均衡设备发生故障,则所述路由设备根据预先设置的等价路由规则确定所述第二负载均衡设备为所述会话的新的分发设备;
[0027]所述路由设备根据所述第二负载均衡设备对应的接口地址,将所述会话的后续消息分发给所述第二负载均衡设备,由所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点。
[0028]在第三方面的第一种可能实现方式中,所述路由设备检测所述至少两个负载均衡设备中的第一负载均衡设备是否发生故障,包括:
[0029]所述路由设备通过双向转发检测BFD协议检测所述第一负载均衡设备是否发生故障。
[0030]在第三方面的第二种可能实现方式中,所述路由设备根据预先设置的等价路由规则确定所述第二负载均衡设备为所述会话的新的分发设备,包括:
[0031]所述路由设备根据开放式最短路径优先OSPF协议确定所述第二负载均衡设备为所述会话的新的分发设备。
[0032]第四方面,提供一种消息分发方法,用于消息分发系统中,所述消息分发系统包括路由设备,以及包含第一负载均衡设备和第二负载均衡设备在内的至少两个负载均衡设备,所述至少两个负载均衡设备各自对应一个接口地址,且所述至少两个负载均衡设备各自对应的接口地址用于在所述路由设备和所述至少两个负载均衡设备之间进行消息的等价分发;所述方法包括:
[0033]第二负载均衡设备接收所述路由设备发送的,一个会话的后续消息;所述后续消息是所述路由设备检测出所述第一负载均衡设备发生故障后,根据预先设置的等价路由规则确定所述第二负载均衡设备为所述会话的新的分发设备,并根据所述第二负载均衡设备对应的接口地址分发的;所述第一负载均衡设备是所述会话的原分发设备;
[0034]所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点。
[0035]在第四方面的第一种可能实现方式中,当所述后续消息为业务消息,且所述后续消息中包含调度参数时,所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点,包括:
[0036]所述第二负载均衡设备根据所述调度参数中携带的业务处理设备的标识,将所述后续消息发送给所述业务处理单元。
[0037]第四方面的第二种可能实现方式中,当所述后续消息为业务消息,且所述后续消息中不包含调度参数时,所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点,包括:
[0038]所述第二负载均衡设备根据所述后续消息的呼叫标识进行散列运算,确定所述后续消息对应的业务处理设备;
[0039]所述第二负载均衡设备将所述后续消息发送给确定的所述业务处理设备。
[0040]第四方面的第三种可能实现方式中,当所述后续消息为链路管理消息时,所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点,包括:
[0041]所述第二负载均衡设备根据所述后续消息的目的地址、目的端口以及管理协议进行散列运算,确定所述后续消息对应的链路管理设备;
[0042]所述第二负载均衡设备将所述后续消息发送给确定的所述链路管理设备。
[0043]第五方面,提供一种消息分发系统,所述消息分发系统包括:
[0044]如上述第三方面或者第三方面的任一种可能实现方式所述的路由设备,以及,如上述第四方面或者第四方面的任一种可能实现方式所述的负载均衡设备。
[0045]本发明实施例提供的
技术方案带来的有益效果是:
[0046]路由设备通过在检测出承载一个会话分发任务的第一负载均衡设备发生故障时,根据等价路由规则确定第二负载均衡设备承载该会话的后续消息,并通过仅在路由设备和该第二负载均衡设备之间生效的接口地址向第二负载均衡设备分发该会话的后续消息,在此过程中,外部网元只需要将该会话的消息发送至路由设备即可,不需要修改会话消息中的接口地址,不会发生呼叫损失的情况,从而提高会话质量。
【附图说明】
[0047]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0048]图1是本发明部分实施例提供的消息分发方法所涉及的网络环境的网元架构图;
[0049]图2是本发明一个实施例提供的消息分发方法的方法流程图;
[0050]图3是本发明一个实施例提供的消息分发方法的方法流程图;
[0051]图4是本发明一个实施例提供的消息分发方法的方法流程图;
[0052]图5是本发明一个实施例提供的路由设备的结构图;
[0053]图6是本发明一个实施例提供的负载均衡设备的结构图;
[0054]图7是本发明一个实施例提供的网络设备的框图。
【具体实施方式】
[0055]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0056]请参考图1,其示出了本发明部分实施例提供的消息分发方法所涉及的网络环境的网元架构图。该网络环境至少包含以下网络实体:路由设备110、包括第一负载均衡设备和第二负载均衡设备在内的至少两个负载均衡设备120、至少一个业务处理设备130以及链路管理设备140。
[0057]其中,路由设备110通过应用网络与外部网元150相连,路由设备110还分别与该至少两个负载均衡设备(英文全称:Load Balancer,缩写:LB) 120相连,至少两个负载均衡设备120中的每一个设备都与该至少一个业务处理设备(英文全称:Service ProcessUnit,缩写:SPU)130相连。此外,至少两个负载均衡设备120中的每一个设备还与该链路管理设备140相连。至少两个负载均衡设备120用于将业务消息发送给业务处理设备130,并将链路管理消息发送给链路管理设备140。
[0058]其中,外部网元150根据路由设备110的接口地址将消息发送至路由设备110,由路由设备110分发给至少两个负载均衡设备120中的一个。
[0059]至少两个负载均衡设备120各自对应有一个接口地址(如图1所示,各个负载均衡设备120,从左到右对应的接口地址分别为IPll?IPln),且该至少两个负载均衡设备120各自对应的接口地址仅在路由设备110和该至少两个负载均衡设备120之间生效。
[0060]至少一个业务处理设备130共享一个用于业务消息转发的接口地址(IPl)。
[0061]本发明所示的方案中,外部网元将通过该至少两个负载均衡设备分发的会话消息都发送至路由设备,由路由设备等价转发至相应的负载均衡设备,当其中一个负载均衡设备发生故障时,路由设备根据各个负载均衡设备各自对应的接口地址选择另一个负载均衡设备转发该发生故障的负载均衡设备所承担的会话的后续消息,该过程只由路由设备进行控制,外部网元不需要修改会话消息中的接口地址,不会发生呼叫损失的情况。
[0062]此外,本发明所示的方案设置独立于负载均衡设备之外的链路管理设备,由负载均衡设备将链路管理消息发送给链路管理设备,使链路管理设备与负载均衡设备剥离,避免因为负载均衡设备故障导致断链的情况。
[0063]请参考图2,其示出了本发明一个实施例提供的消息分发方法的方法流程图。该消息分发方法可以用于图1所示网络环境的路由设备中。该消息分发方法可以包括:
[0064]步骤201,路由设备检测第一负载均衡设备是否发生故障,该第一负载均衡设备是一个会话的原分发设备。
[0065]步骤202,若该第一负载均衡设备发生故障,则该路由设备根据预先设置的等价路由规则确定该第二负载均衡设备为该会话的新的分发设备。
[0066]步骤203,该路由设备根据该第二负载均衡设备对应的接口地址,将该会话的后续消息分发给该第二负载均衡设备,由该第二负载均衡设备将该后续消息发送给该对话对应的下一跳节点。
[0067]综上所述,本发明实施例提供的消息分发方法,路由设备通过在检测出承载一个会话分发任务的第一负载均衡设备发生故障时,根据等价路由规则确定第二负载均衡设备承载该会话的后续消息,并通过仅在路由设备和该第二负载均衡设备之间生效的接口地址向第二负载均衡设备分发该会话的后续消息,在此过程中,外部网元只需要将该会话的消息发送至路由设备即可,不需要修改会话消息中的接口地址,不会发生呼叫损失的情况,从而提尚会话质量。
[0068]请参考图3,其示出了本发明一个实施例提供的消息分发方法的方法流程图。该消息分发方法可以用于图1所示网络环境的第二负载均衡设备中。该消息分发方法可以包括:
[0069]步骤301,第二负载均衡设备接收该路由设备发送的,一个会话的后续消息;该后续消息是该路由设备检测出该第一负载均衡设备发生故障后,根据预先设置的等价路由规则确定该第二负载均衡设备为该会话的新的分发设备,并根据该第二负载均衡设备对应的接口地址分发的;该第一负载均衡设备是该会话的原分发设备。
[0070]步骤302,第二负载均衡设备将该后续消息发送给该对话对应的下一跳节点。
[0071]综上所述,本发明实施例提供的消息分发方法,路由设备通过在检测出承载一个会话分发任务的第一负载均衡设备发生故障时,根据等价路由规则确定第二负载均衡设备承载该会话的后续消息,并通过仅在路由设备和该第二负载均衡设备之间生效的接口地址向第二负载均衡设备分发该会话的后续消息,第二负载均衡设备接收该会话的后续消息之后,将该会话的后续消息发送给下一跳节点,在此过程中,外部网元只需要将该会话的消息发送至路由设备即可,不需要修改会话消息中的接口地址,不会发生呼叫损失的情况,从而提尚会话质量。
[0072]请参考图4,其示出了本发明一个实施例提供的消息分发方法的方法流程图。该消息分发方法可以用于图1所示网络环境中。该消息分发方法可以包括:
[0073]步骤401,外部网元建立一个会话时,将该会话的首消息发送给路由设备。
[0074]外部网元建立会话时,根据路由设备的接口地址向路由设备发送系统级封装(英文全程:System In a Package,缩写:SIP)首消息。
[0075]或者,外部网元向链路管理设备发送传输控制协议(英文全称transmiss1nControl Protocol,缩写:TCP)消息时,也根据路由设备的接口地址将TCP消息发送给路由设备。
[0076]步骤402,路由设备根据预先设置的等价路由规则确定第一负载均衡设备为该会话的分发设备。
[0077]路由设备接收该会话的SIP首消息或者TCP消息时,根据预先设置的等价路由规贝1J,比如开放式最短路径优先(英文全称:0pen Shortest Path First,缩写:0SPF)规则确定第一负载均衡设备为该会话的分发设备。
[0078]步骤403,路由设备根据第一负载均衡设备的接口地址向第一负载均衡设备分发该会话的各个消息。
[0079]步骤404,第一负载均衡设备将该会话的各个消息发送给该会话对应的下一条节点。
[0080]当第一负载均衡设备接收到SIP首消息时,根据SIP首消息的呼叫ID (CALL ID)进行散列(hash)计算,获得该对话对应的业务处理设备并发送该SIP首消息,后续再次接收到该会话的消息时,将后续的会话消息发送给同样的业务处理设备。
[0081]当第一负载均衡设备接收到TCP消息时,根据链路管理设备的端口向该链路管理设备发送该TCP消息。
[0082]步骤405,路由设备检测第一负载均衡设备是否发生故障。
[0083]具体的,路由设备可以通过双向转发检测(英文全称:Bidirect1nal ForwardingDetect1n,缩写:BFD)协议检测该第一负载均衡设备是否发生故障。
[0084]步骤406,若第一负载均衡设备发生故障,则路由设备根据预先设置的等价路由规则确定第二负载均衡设备为该会话的新的分发设备。
[0085]如果路由设备检测出第一负载设备发生故障,则根据同样的等价路由规则(0SPF规则),从该至少两个负载均衡设备的其余设备中确定第二负载均衡设备为该会话新的分发设备。
[0086]步骤407,路由设备根据第二负载均衡设备对应的接口地址,将该会话的后续消息分发给该第二负载均衡设备。
[0087]步骤408,第二负载均衡设备将该后续
消息发送给该对话对应的下一跳节点。
[0088]其中,当该后续消息为业务消息,且该后续消息中包含调度参数时,该第二负载均衡设备根据该调度参数中携带的业务处理设备的标识,将该后续消息发送给对应的业务处理单元。其中,该调度参数为DPT (DISPATCH)参数,是SIP消息路由头域扩展自己的参数。
[0089]当该后续消息为业务消息,且该后续消息中不包含调度参数时,该第二负载均衡设备根据该后续消息的呼叫标识进行散列运算,确定该后续消息对应的业务处理设备,并将该后续消息发送给确定的该业务处理设备。
[0090]当该后续消息为链路管理消息时,该第二负载均衡设备根据该后续消息的目的地址、目的端口以及管理协议进行散列运算,确定该后续消息对应的链路管理设备,并将该后续消息发送给确定的该链路管理设备。
[0091]综上所述,本发明实施例提供的消息分发方法,路由设备通过在检测出承载一个会话分发任务的第一负载均衡设备发生故障时,根据等价路由规则确定第二负载均衡设备承载该会话的后续消息,并通过仅在路由设备和该第二负载均衡设备之间生效的接口地址向第二负载均衡设备分发该会话的后续消息,第二负载均衡设备接收该会话的后续消息之后,将该会话的后续消息发送给下一跳节点,在此过程中,外部网元只需要将该会话的消息发送至路由设备即可,不需要修改会话消息中的接口地址,不会发生呼叫损失的情况,从而提尚会话质量。
[0092]此外,本发明实施例提供的消息分发方法中,将链路管理功能设置在独立于负载均衡设备之外的链路管理设备上,并由路由设备选择负载均衡设备进行链路管理消息的分发,当一个负责发送链路管理消息的负载均衡设备发生故障时,路由设备可以选择另一个负载均衡设备发送该链路管理消息,避免因为负载均衡设备鼓掌导致断链的情况,提高链路管理的可靠性。
[0093]请参考图5,其示出了本发明一个实施例提供的路由设备的结构图。该路由设备可以是图1所示的网络环境中的路由设备110,该路由设备可以执行图2所示方法的全部步骤或者执行如图4所示方法中的部分步骤。如图5所示,该路由可以包括:故障检测模块501、分发设备确定模块502以及发送模块503 ;
[0094]所述故障检测模块501,用于检测所述第一负载均衡设备是否发生故障,所述第一负载均衡设备是一个会话的原分发设备;
[0095]所述分发设备确定模块502,用于若所述第一负载均衡设备发生故障,则根据预先设置的等价路由规则确定所述第二负载均衡设备为所述会话的新的分发设备;
[0096]所述发送模块503,用于根据所述第二负载均衡设备对应的接口地址,将所述会话的后续消息分发给所述第二负载均衡设备,由所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点。
[0097]可选的,所述故障检测模块501,用于通过双向转发检测BFD协议检测所述第一负载均衡设备是否发生故障。
[0098]可选的,所述分发设备确定模块502,用于根据开放式最短路径优先OSPF协议确定所述第二负载均衡设备为所述会话的新的分发设备。
[0099]综上所述,本发明实施例提供的路由设备,通过在检测出承载一个会话分发任务的第一负载均衡设备发生故障时,根据等价路由规则确定第二负载均衡设备承载该会话的后续消息,并通过仅在路由设备和该第二负载均衡设备之间生效的接口地址向第二负载均衡设备分发该会话的后续消息,在此过程中,外部网元只需要将该会话的消息发送至路由设备即可,不需要修改会话消息中的接口地址,不会发生呼叫损失的情况,从而提高会话质量。
[0100]请参考图6,其示出了本发明一个实施例提供的负载均衡设备的结构图。该负载均衡设备可以是图1所示的网络环境中的至少两个负载均衡设备120中的第二负载均衡设备,该负载均衡设备可以执行图3所示方法的全部步骤或者执行如图4所示方法中的部分步骤。如图6所示,该路由可以包括:接收模块601以及发送模块602;
[0101]所述消息接收模块601,用于接收所述路由设备发送的,一个会话的后续消息;所述后续消息是所述路由设备检测出所述第一负载均衡设备发生故障后,根据预先设置的等价路由规则确定所述负载均衡设备为所述会话的新的分发设备,并根据所述负载均衡设备对应的接口地址分发的;所述第一负载均衡设备是所述会话的原分发设备;
[0102]所述发送模块602,用于将所述后续消息发送给所述对话对应的下一跳节点。
[0103]可选的,所述发送模块602,包括:
[0104]第一发送单元602a,用于当所述后续消息为业务消息,且所述后续消息中包含调度参数时,根据所述调度参数中携带的业务处理设备的标识,将所述后续消息发送给所述业务处理单元。
[0105]可选的,所述发送模块602,包括:
[0106]第一确定单元602b,用于当所述后续消息为业务消息,且所述后续消息中不包含调度参数时,根据所述后续消息的呼叫标识进行散列运算,确定所述后续消息对应的业务处理设备;
[0107]第二发送单元602c,用于将所述后续消息发送给确定的所述业务处理设备。
[0108]可选的,所述发送模块602,包括:
[0109]第二确定单元602d,用于当所述后续消息为链路管理消息时,根据所述后续消息的目的地址、目的端口以及管理协议进行散列运算,确定所述后续消息对应的链路管理设备;
[0110]第三发送单元602e,用于将所述后续消息发送给确定的所述链路管理设备。
[0111]综上所述,本发明实施例提供的负载均衡设备,接收路由设备在检测出承载一个会话分发任务的第一负载均衡设备发生故障时,根据等价路由规则确定该负载均衡设备承载该会话的后续消息,并通过仅在路由设备和该负载均衡设备之间生效的接口地址分发的该会话的后续消息,并将该会话的后续消息发送给下一跳节点,在此过程中,外部网元只需要将该会话的消息发送至路由设备即可,不需要修改会话消息中的接口地址,不会发生呼叫损失的情况,从而提高会话质量。
[0112]上述图5和图6所示的各个模块中,接收模块所执行的步骤可以由接收器在处理器的控制下完成,发送模块所执行的步骤可以由发射器在处理器的控制下完成,其它各个模块所执行的步骤可以由处理器独立完成。进一步的,请参考图7,其示出了本发明一个实施例提供的网络设备的框图。该网络实体700可以是上述图1所示的网络环境中的路由设备或者负载均衡设备。该网络设备可以包括:总线701,以及连接到所述总线的处理器702、存储器703、发射器704和接收器705。其中,所述存储器703用于存储若干个指令,所述若干个指令被配置成由所述处理器702执行;
[0113]当所述网络设备700实现为上述图1所示的网络环境中的路由设备110时,所述处理器702,用于检测所述第一负载均衡设备是否发生故障,所述第一负载均衡设备是一个会话的原分发设备;
[0114]所述处理器702,用于若所述第一负载均衡设备发生故障,则根据预先设置的等价路由规则确定所述第二负载均衡设备为所述会话的新的分发设备;
[0115]所述处理器702,用于根据所述第二负载均衡设备对应的接口地址,控制所述发射器704将所述会话的后续消息分发给所述第二负载均衡设备,由所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点。
[0116]可选的,所述处理器702,用于控制所述发射器704和所述接收器705,通过双向转发检测BFD协议检测所述第一负载均衡设备是否发生故障。
[0117]可选的,所述处理器702,用于根据开放式最短路径优先OSPF协议确定所述第二负载均衡设备为所述会话的新的分发设备。
[0118]当所述网络设备700实现为上述图1所示的网络环境中的路由设备110时,所述处理器702,用于控制所述接收器705接收所述路由设备发送的,一个会话的后续消息;所述后续消息是所述路由设备检测出所述第一负载均衡设备发生故障后,根据预先设置的等价路由规则确定所述负载均衡设备为所述会话的新的分发设备,并根据所述负载均衡设备对应的接口地址分发的;所述第一负载均衡设备是所述会话的原分发设备;
[0119]所述处理器702,用于控制所述发射器704将所述后续消息发送给所述对话对应的下一跳节点。
[0120]可选的,所述处理器702,用于当所述后续消息为业务消息,且所述后续消息中包含调度参数时,根据所述调度参数中携带的业务处理设备的标识,控制所述发射器704将所述后续消息发送给所述业务处理单元。
[0121]可选的,所述处理器702,用于当所述后续消息为业务消息,且所述后续消息中不包含调度参数时,根据所述后续消息的呼叫标识进行散列运算,确定所述后续消息对应的业务处理设备,并控制所述发射器704将所述后续消息发送给确定的所述业务处理设备。
[0122]可选的,所述处理器702,用于当所述后续消息为链路管理消息时,根据所述后续消息的目的地址、目的端口以及管理协议进行散列运算,确定所述后续消息对应的链路管理设备,并控制所述发射器704将所述后续消息发
送给确定的所述链路管理设备。
[0123]本发明一个实施例还提供一种消息分发系统,该消息系统可以路由设备和至少两个负载均衡设备。该路由设备为上述图5所示的路由设备,该负载均衡设备为上述图6所示的负载均衡设备。或者,该路由设备和负载均衡设备也可以分别实现为上述图7所示的网络设备。
[0124]此外,本发明实施例提供的消息分发系统,还可以包含至少一个业务处理设备和链路管理设备等,且该消息分发统中包含的各个网络设备之间的连接关系可以如图1所示,本发明实施例不再赘述。
[0125]需要说明的是:上述实施例提供的路由设备和消息分发设备在分发消息时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的路由设备和消息分发设备与消息分发方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0126]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0127]本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0128]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1.一种路由设备,其特征在于,用于消息分发系统中,所述消息分发系统包括所述路由设备,以及包含第一负载均衡设备和第二负载均衡设备在内的至少两个负载均衡设备,所述至少两个负载均衡设备各自对应一个接口地址,且所述至少两个负载均衡设备各自对应的接口地址用于在所述路由设备和所述至少两个负载均衡设备之间进行消息的等价分发;所述路由设备包括: 故障检测模块,用于检测所述第一负载均衡设备是否发生故障,所述第一负载均衡设备是一个会话的原分发设备; 分发设备确定模块,用于若所述第一负载均衡设备发生故障,则根据预先设置的等价路由规则确定所述第二负载均衡设备为所述会话的新的分发设备; 发送模块,用于根据所述第二负载均衡设备对应的接口地址,将所述会话的后续消息分发给所述第二负载均衡设备,由所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点。2.根据权利要求1所述的路由设备,其特征在于, 所述故障检测模块,用于通过双向转发检测BFD协议检测所述第一负载均衡设备是否发生故障。3.根据权利要求1所述的路由设备,其特征在于, 所述分发设备确定模块,用于根据开放式最短路径优先OSPF协议确定所述第二负载均衡设备为所述会话的新的分发设备。4.一种负载均衡设备,其特征在于,用于消息分发系统中,所述消息分发系统包括路由设备,以及包含所述负载均衡设备和第一负载均衡设备在内的至少两个负载均衡设备,所述至少两个负载均衡设备各自对应一个接口地址,且所述至少两个负载均衡设备各自对应的接口地址用于在所述路由设备和所述至少两个负载均衡设备之间进行消息的等价分发;所述负载均衡设备包括: 接收模块,用于接收所述路由设备发送的,一个会话的后续消息;所述后续消息是所述路由设备检测出所述第一负载均衡设备发生故障后,根据预先设置的等价路由规则确定所述负载均衡设备为所述会话的新的分发设备,并根据所述负载均衡设备对应的接口地址分发的;所述第一负载均衡设备是所述会话的原分发设备; 发送模块,用于将所述后续消息发送给所述对话对应的下一跳节点。5.根据权利要求4所述的负载均衡设备,其特征在于,所述发送模块,包括: 第一发送单元,用于当所述后续消息为业务消息,且所述后续消息中包含调度参数时,根据所述调度参数中携带的业务处理设备的标识,将所述后续消息发送给所述业务处理单J L.ο6.根据权利要求4所述的负载均衡设备,其特征在于,所述发送模块,包括: 第一确定单元,用于当所述后续消息为业务消息,且所述后续消息中不包含调度参数时,根据所述后续消息的呼叫标识进行散列运算,确定所述后续消息对应的业务处理设备; 第二发送单元,用于将所述后续消息发送给确定的所述业务处理设备。7.根据权利要求4所述的负载均衡设备,其特征在于,所述发送模块,包括: 第二确定单元,用于当所述后续消息为链路管理消息时,根据所述后续消息的目的地址、目的端口以及管理协议进行散列运算,确定所述后续消息对应的链路管理设备; 第三发送单元,用于将所述后续消息发送给确定的所述链路管理设备。8.一种消息分发方法,其特征在于,用于消息分发系统中,所述消息分发系统包括路由设备以及包含第一负载均衡设备和第二负载均衡设备在内的至少两个负载均衡设备,所述至少两个负载均衡设备各自对应一个接口地址,且所述至少两个负载均衡设备各自对应的接口地址用于在所述路由设备和所述至少两个负载均衡设备之间进行消息的等价分发;所述方法包括: 所述路由设备检测所述第一负载均衡设备是否发生故障,所述第一负载均衡设备是一个会话的原分发设备; 若所述第一负载均衡设备发生故障,则所述路由设备根据预先设置的等价路由规则确定所述第二负载均衡设备为所述会话的新的分发设备; 所述路由设备根据所述第二负载均衡设备对应的接口地址,将所述会话的后续消息分发给所述第二负载均衡设备,由所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点。9.根据权利要求8所述的方法,其特征在于,所述路由设备检测所述至少两个负载均衡设备中的第一负载均衡设备是否发生故障,包括: 所述路由设备通过双向转发检测BFD协议检测所述第一负载均衡设备是否发生故障。10.根据权利要求8所述的方法,其特征在于,所述路由设备根据预先设置的等价路由规则确定所述第二负载均衡设备为所述会话的新的分发设备,包括: 所述路由设备根据开放式最短路径优先OSPF协议确定所述第二负载均衡设备为所述会话的新的分发设备。11.一种消息分发方法,其特征在于,用于消息分发系统中,所述消息分发系统包括路由设备,以及包含第一负载均衡设备和第二负载均衡设备在内的至少两个负载均衡设备,所述至少两个负载均衡设备各自对应一个接口地址,且所述至少两个负载均衡设备各自对应的接口地址用于在所述路由设备和所述至少两个负载均衡设备之间进行消息的等价分发;所述方法包括: 第二负载均衡设备接收所述路由设备发送的,一个会话的后续消息;所述后续消息是所述路由设备检测出所述第一负载均衡设备发生故障后,根据预先设置的等价路由规则确定所述第二负载均衡设备为所述会话的新的分发设备,并根据所述第二负载均衡设备对应的接口地址分发的;所述第一负载均衡设备是所述会话的原分发设备; 所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点。12.根据权利要求11所述的方法,其特征在于,当所述后续消息为业务消息,且所述后续消息中包含调度参数时,所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点,包括: 所述第二负载均衡设备根据所述调度参数中携带的业务处理设备的标识,将所述后续消息发送给所述业务处理单元。13.根据权利要求11所述的方法,其特征在于,当所述后续消息为业务消息,且所述后续消息中不包含调度参数时,所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点,包括: 所述第二负载均衡设备根据所述后续消息的呼叫标识进行散列运算,确定所述后续消息对应的业务处理设备; 所述第二负载均衡设备将所述后续消息发送给确定的所述业务处理设备。14.根据权利要求11所述的方法,其特征在于,当所述后续消息为链路管理消息时,所述第二负载均衡设备将所述后续消息发送给所述对话对应的下一跳节点,包括: 所述第二负载均衡设备根据所述后续消息的目的地址、目的端口以及管理协议进行散列运算,确定所述后续消息对应的链路管理设备; 所述第二负载均衡设备将所述后续消息发送给确定的所述链路管理设备。15.一种消息分发系统,其特征在于,所述消息分发系统包括: 如权利要求1至3任一所述的路由设备,以及,至少两个如权利要求4至7任一所述的负载均衡设备。
【专利摘要】本发明公开了一种路由设备、负载均衡设备、消息分发方法及系统,属于通信领域。所述路由设备包括:故障检测模块、分发设备确定模块以及发送模块。所述路由设备通过在检测出承载一个会话分发任务的第一负载均衡设备发生故障时,根据等价路由规则确定第二负载均衡设备承载该会话的后续消息,并通过仅在路由设备和该第二负载均衡设备之间生效的接口地址向第二负载均衡设备分发该会话的后续消息,在此过程中,外部网元只需要将该会话的消息发送至路由设备即可,不需要修改会话消息中的接口地址,不会发生呼叫损失的情况,从而提高会话质量。
【IPC分类】H04L12/707, H04L12/803
【公开号】CN104901881
【申请号】CN201510217297
【发明人】高军利, 李龙, 徐日东, 张文革
【申请人】华为技术有限公司
【公开日】2015年9月9日
【申请日】2015年4月30日