一种负载分担方法及装置的制造方法

xiaoxiao2021-2-23  117

一种负载分担方法及装置的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,特别是涉及一种负载分担方法及装置。
【背景技术】
[0002]在多链路透明互联(英文:TransparentInterconnect1n of Lots of Links,缩写:TRILL)网络中,使用虚拟别名(英文mickname)技术实现TRILL网络流量的负载分担,即,将多台负载分担设备虚拟化成一台虚拟设备,为所述虚拟设备分配虚拟nickname,所述多台负载分担设备均使用所述虚拟nickname,当基于所述虚拟nickname进行报文转发时,报文将被发送到根据负载分担规则确定的使用所述虚拟nickname的一个负载分担设备上。
[0003]然而,上述实现TRILL网络中负载分担的技术需要在每台负载分担设备上都配置有用于转发各种类型的报文的相同的业务参数。以TRILL网络中多活网关(即多个网关组成一个虚拟网关,每个网关都转发报文)场景为例,需要所述多台网关均配置相同的虚拟局域网(英文:Virtual Local Area Network,缩写:VLAN),当所述多台网关的VLAN配置不一致时,有可能导致报文被丢弃。例如:所述多台网关包括611、612、613、614,这四台网关备均使用同一个虚拟nickname,其中,GW1上配置了 VLAN10、VLAN20、VLAN30、VLAN40、VLAN50, GW2 上配置了 VLAN10、VLAN30、VLAN40、VLAN50, GW3 上配置了 VLAN10、VLAN20、VLAN40、VLAN50,GW4 上配置了 VLAN10、VLAN20、VLAN30、VLAN50。当 VLAN20 的报文通过虚拟nickname寻址被发送到GW2时,由于GW2上没有配置VLAN20,所以GW2不能转发该VLAN20的报文,因此导致转发到GW2的VLAN20的报文被丢弃。
[0004]综上所述,现有技术中,当TRILL网络中使用同一虚拟nickname的每台负载分担设备所配置的业务参数不同时,会导致每台负载分担设备上所能处理的业务不同,当报文被发送到不能处理所述报文所属的业务的负载分担设备时,会导致所述报文被所述负载分担设备丢弃,造成业务中断。

【发明内容】

[0005]本发明实施例提供一种负载分担方法及装置,用于解决现有技术中TRILL网络中每台负载分担设备所配置的业务参数不同时,数据报文被发送到不能处理所述报文所属的业务的负载分担设备时被丢弃所造成的业务中断问题。
[0006]本发明实施例第一方面提供一种负载分担方法,所述方法包括:
[0007]获取多链路透明互联TRILL网络中的每个负载分担设备的业务信息,每个负载分担设备的业务信息包括所述负载分担设备的标识与所述负载分担设备能够处理的业务的对应关系,所述TRILL网络包括多个负载分担设备;
[0008]根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备能够处理的业务相同;
[0009]获取每个负载分担组的虚拟别名nickname,根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系;
[0010]利用所述映射表实现所述TRILL网络中的流量负载分担。
[0011 ] 本发明实施例第一方面的第一种可能的实施方式中,
[0012]所述负载分担设备包括网关,所述业务由虚拟局域网标识VLAN ID识别;
[0013]所述获取多链路透明互联TRILL网络中的每个负载分担设备的业务信息包括:获取所述TRILL网络中每个网关的标识与所述网关上配置的VLAN ID的对应关系;
[0014]所述根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组包括:根据每个网关上配置的VLAN ID,将所述多个网关划分为至少一个负载分担组,每个负载分担组中的网关上配置有相同的VLAN ID ;
[0015]所述根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表包括:根据每个负载分担组对应的VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname以及VLAN ID的对应关系。
[0016]结合本发明实施例第一方面第一种可能的实施方式,在第二种可能的实施方式中,所述利用所述映射表实现所述TRILL网络中的流量负载分担包括:
[0017]接收数据发送设备发送的地址解析协议ARP请求,所述ARP请求携带有VLAN ID ;
[0018]根据所述VLAN ID查找所述映射表,得到与所述VLAN ID对应的负载分担组的虚拟nickname ;以及
[0019]向所述数据发送设备发送携带有所述VLAN ID以及所述虚拟nickname的ARP响应,以便所述数据发送设备根据所述虚拟nickname查找与所述nickname所对应的负载分担组实现对包括所述VLAN ID的数据报文在所述TRILL网络中的负载分担。
[0020]本发明实施例第一方面第三种可能的实施方式中,
[0021]所述业务由链路聚合组标识Lag ID和虚拟局域网标识VLAN ID识别,所述Lag ID用于标识链路聚合组,每个链路聚合组包括多条链路,所述多条链路为同一接入设备与多个不同负载分担设备之间的链路;
[0022]所述获取TRILL网络中的每个负载分担设备的业务信息包括:
[0023]获取所述TRILL网络中的每个负载分担设备的标识、所述负载分担设备的LagID、以及所述负载分担设备上配置的VLAN ID的对应关系;
[0024]所述根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组包括:
[0025]根据每个负载分担设备的Lag ID以及每个所述负载分担设备上配置的VLAN ID,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备的Lag ID相同,并且配置有相同的VLAN ID ;
[0026]所述根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表包括:根据每个负载分担组对应的Lag ID、VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname、LagID以及VLAN ID的对应关系。
[0027]结合本发明实施例第一方面第三种可能的实施方式,在第四种可能的实施方式中,所述利用所述映射表实现所述TRILL网络中的流量负载分担包括:
[0028]接收所述接入设备发送的第一数据报文,获取对应所述接入设备的LagID,所述第一数据报文包括目的设备的标识、所述接入设备的MAC地址,以及VLAN ID ;
[0029]根据所述Lag ID以及所述第一数据报文包括的VLAN ID查找所述映射表,得到与所述Lag ID和所述VLAN ID对应的负载分担组的虚拟nickname ;以及
[0030]根据所述目的设备的标识将封装了所述虚拟nickname的第一数据报文发送至目的设备,以便所述目的设备建立所述接入设备的MAC地址、所述第一数据报文包括的VLANID以及所述虚拟nickname之间的第一对应关系,利用所述第一对应关系以及预先获取的所述虚拟nickname与负载分担组的第二对应关系实现对包括所述VLAN ID的第二数据报文在所述TRILL网络中的负载分担。
[0031]结合本发明实施例第一方面至第一方面第四种可能的实施方式,在第五种可能的实施方式中,所述方法还包括:
[0032]当能够处理不同业务的至少两个负载分担组中所包含的负载分担设备完全相同时,将所述至少两个负载分担组合并为一个负载分担组。
[0033]本发明实施例第二方面提供一种负载分担装置,包括:
[0034]获取单元,用于获取多链路透明互联TRILL网络中的每个负载分担设备的业务信息,每个负载分担设备的业务信息包括所述负载分担设备的标识与所述负载分担设备能够处理的业务的对应关系,所述TRILL网络包括多个负载分担设备;
[0035]分组单元,用于根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备能够处理的业务相同;
[0036]建立单元,用于获取每个负载分担组的虚拟别名nickname,根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系;
[0037]处理单元,用于利用所述映射表实现所述TRILL网络中的流量负载分担。
[0038]本发明实施例第二方面第一种可能的实施方式中,
[0039]所述负载分担设备包括网关,所述业务由虚拟局域网标识VLAN ID识别;
[0040]则所述获取单元为:
[0041]第一获取子单元,用于获取所述TRILL网络中每个网关的标识与所述网关上配置的VLAN ID的对应关系;
[0042]所述分组单元为:
[0043]第一分组子单元,用于根据每个网关上配置的VLAN ID,将所述多个网关划分为至少一个负载分担组,每个负载分担组中的网关上配置有相同的VLAN ID ;
[0044]所述建立单元为:
[0045]第一建立子单元,用于根据每个负载分担组对应的VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname以及VLAN ID的对应关系。
[0046]结合本发明实施例第二方面第一种可能的实施方式,在第二种可能的实施方式中,所述处理单元包括:
[0047]第一接收子单元,用于接收数据发送设备发送的地址解析协议ARP请求,所述ARP请求携带有VLAN ID ;
[0048]第一查找子单元,用于根据所述VLAN ID查找所述映射表,得到与所述VLAN ID对应的负载分担组的虚拟nickname ;
[0049]第一发送子单元,用于向所述数据发送设备发送携带有所述VLAN ID以及所述虚拟nickname的ARP响应,以便所述数据发送设备根据所述虚拟nickname查找与所述nickname所对应的负载分担组实现对包括所述VLAN ID的数据报文在所述TRILL网络中的负载分担。
[0050]本发明实施例第二方面第三种可能的实施方式中,
[0051]所述业务由链路聚合组标识Lag ID和虚拟局域网标识VLAN ID识别,所述Lag ID用于标识链路聚合组,每个链路聚合组包括多条链路,所述多条链路为同一接入设备与多个不同负载分担设备之间的链路;
[0052]所述获取单元为:
[0053]第二获取子单元,用于获取所述TRILL网络中的每个负载分担设备的标识、所述负载分担设备的Lag ID、以及所述负载分担设备上配置的VLAN ID的对应关系;
[0054]所述分组单元为:
[0055]第二分组子单元,用于根据每个负载分担设备的Lag ID以及每个所述负载分担设备上配置的VLAN ID,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备的Lag ID相同,并且配置有相同的VLAN ID ;
[0056]所述建立单元为:
[0057]第二建立子单元,用于根据每个负载分担组对应的Lag ID、VLAN ID以及每个负载分担组的虚拟nick name建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname、Lag ID以及VLAN ID的对应关系。
[0058]结合本发明实施例第二方面第三种可能的实施方式,在第四种可能的实施方式中,所述处理单元包括:
[0059]第二接收子单元,用于接收所述接入设备发送的第一数据报文,获取对应所述接入设备的Lag ID,所述第一数据报文包括目的设备的标识、所述接入设备的MAC地址以及VLAN ID ;
[0060]第二查找子单元,用于根据所述Lag ID以及所述第一数据报文包括的VLAN ID查找所述映射表,得到与所述Lag ID和所述VLAN ID对应的负载分担组的虚拟nickname ;
[0061]第二发送子单元,用于根据所述目的设备的标识将封装了所述虚拟nickname的第一数据报文发送至目的设备,以便所述目的设备建立所述接入设备的MAC地址、所述第一数据报文包括的VLAN ID以及所述虚拟nickname之间的第一对应关系,利用所述第一对应关系以及预先获取的所述虚拟nickname与负载分担组的第二对应关系实现对包括所述VLAN ID的第二数据报文在所述TRILL网络中的负载分担。
[0062]结合本发明实施例第二方面至第二方面第四种可能的实施方式,在第五种可能的实施方式中,所述装置还包括:
[0063]合并单元,用于当能够处理不同业务的至少两个负载分担组中所包含的负载分担设备完全相同时,将所述至少两个负载分担组合并为一个负载分担组。
[0064]本发明上述方案中,将能够处理相同业务的负载分担设备划分为至少一个负载分担组,并为每个负载分担组分配一个虚拟别名nickname,建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系,利用所述映射表实现TRILL网络中的流量负载分担。由于所述负载分担组中的每一个负载分担设备都能实现对相同业务的报文的转发,因此当负载分担组被选定后,不会产生将某种业务的报文发送至不能处理该种业务的负载分担设备的问题,从而可以避免报文被丢弃造成的业务中断问题。
【附图说明】
[0065]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0066]图1为本发明TRILL网络的组网结构示意图;
[0067]图2为本发明实施例提供的一种负载分担方法的流程示意图;
[0068]图3为本发明负载分担设备发布业务信息的数据帧的帧结构示意图;
[0069]图4为本发明实施例所述负载分担方法在场景一下的流程示意图;
[0070]图5为本发明TRILL网络中多活网关场景不意图;
[0071]图6为本发明网关发布所配置的VLAN ID的数据帧的帧结构示意图;
[0072]图7为本发明实施例所述负载分担方法在场景二下的流程示意图;
[0073]图8为本发明TRILL网络中多活接入场景示意图;
[0074]图9为本发明实施例提供的一种负载分担装置的结构示意图;
[0075]图10为本发明实施例提供的应用于多活网关场景的负载分担装置的结构示意图;
[0076]图11为本发明实施例提供的应用于多活接入场景的负载分担装置的结构示意图;
[0077]图12为本发明实施例提供的另一种负载分担装置的结构示意图。
【具体实施方式】
[0078]本发明实施例提供一种负载分担方法及装置,将能够处理相同业务的业务信息负载分担设备划分为一个负载分担组,并为每个负载分担组分配一个虚拟别名nickname,根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系;利用所述映射表实现所述TRILL网络中的流量负载分担,从而可以避免报文被丢弃造成的业务中断问题。
[0079]下面结合附图对本发明具体实施例进行详细说明。
[0080]实施例一
[0081]TRILL网络中包括多个负载分担设备,所述多个负载分担设备与至少一个数据发送设备建立通信相连,数据发送设备发送至数据接收设备的报文被所述多个负载分担设备分担转发,从而实现对TRILL网络的流量负载分担。
[0082]举例说明:如图1所示,TRILL网络中有四个负载分担设备GW1、GW2、GW3以及GW4,上述四个负载分担设备与一个数据发送设备101建立通信连接,数据发送设备101发送的数据报文被上述四个负载分担设备分担转发,收到数据发送设备101发送的数据报文的负载分担设备将所述数据报文转发至第一数据接收设备102或第二数据接收设备103。
[0083]这里需要说明的是,图1所给出的TRILL网络的组网结构主要是为了说明在TRILL网络中实现流量的负载分担的实例,实际应用中,TRILL网络中的负载分担设备不限于四个,并且数据发送设备以及数据接收设备也可以根据实际情况进行设置。
[0084]图2为本发明实施例提供的一种负载分担方法的流程示意图,应用于TRILL网络中的负载分担设备,所述方法包括:
[0085]步骤201:获取TRILL网络中的每个负载分担设备的业务信息。
[0086]每个负载分担设备的业务信息包括所述负载分担设备的标识与所述负载分担设备能够处理的业务的对应关系,所述TRILL网络包括多个负载分担设备。
[0087]TRILL网络中包括多个负载分担设备,每个负载分担设备在加入TRILL网络时,采用图3所示的帧格式发布此负载分担设备的业务信息,TRILL网络中的每个负载分担设备都可以接收其他负载分担设备发布业务信息的第一数据帧,从而获取所述TRILL网络中其他负载分担设备的业务信息。每个负载分担设备的业务信息包括所述负载分担设备的标识与所述负载设备能够处理的业务的对应关系。所述负载分担设备能够处理的业务指的是所述负载分担设备能够转发的业务数据的种类。例如:当用VLAN来划分业务时,负载分担设备所配置的业务为VLAN10、VLAN20、VLAN30、VLAN40以及VLAN50,即表示此负载分担设备在虚拟局域网 VLAN10、VLAN20、VLAN30、VLAN40 以及 VLAN50 中,可以转发 VLAN10、VLAN20、VLAN30, VLAN40 以及 VLAN50 的流量。
[0088]其中,业务信息所述第一数据帧中,Type = INT-VLAN表示第一数据帧的类型,INT-VLAN表示第一数据帧用于发布负载分担设备所能处理的业务所属的VLAN,占用1字节byte ;Length表示第一数据巾贞的长度,占用lbyte ;nickname表示发布第一数据巾贞的负载分担设备的真实nickname,占用2byte interested VLANS表示发送第一数据巾贞的负载分担设备所能处理的业务,即所述负载分担设备能够处理的业务所属的VLAN。举例说明,当一个负载分担设备上所配置的业务为VLAN10、VLAN20、VLAN30、VLAN40以及VLAN50时,其所发布的第一数据帧中的 Interested VLANS 包括 VLAN10、VLAN20、VLAN30、VLAN40、VLAN50。
[0089]步骤202:根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备能够处理的业务相同。
[0090]本发明所提供的实施例中,负载分担组划分的依据是每个负载分担设备能够处理的业务,将能够处理相同业务的负载分担设备划分到同一个负载分担组,因此,每个负载分担组中的负载分担设备能够处理的业务相同。
[0091]在实际应用中,步骤202还包括:
[0092]当能够处理不同业务的至少两个负载分担组中所包含的负载分担设备完全相同时,将所述至少两个负载分担组合并为一个负载分担组。
[0093]举例说明:若能够处理业务VLAN 10的负载分担组B1包括负载分担设备GW1、GW2、GW3、GW4以及GW5 ;能够处理业务VLAN 20的负载分担组B2包括负载分担设备GW1、GW2、GW3、GW4以及GW5 ;能够处理业务VLAN 30的负载分担组B3包括负载分担设备GW1、Gff2.Gff3.Gff4以及GW5。由于负载分担组B1、B2和B3中所包含的负载分担设备完全相同,都是GW1、GW2、GW3、GW4以及GW5。此时,可以将负载分担组B1、B2和B3合并为负载分担组B,合并后的负载分担组B中包括负载分担设备GW1、GW2、GW3、GW4以及GW5,并且负载分担组中的每个负载分担设备都可以处理业务VLAN 10.VLAN20以及VLAN 30。
[0094]步骤203:获取每个负载分担组的虚拟别名nickname,根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系。
[0095]每个负载分担设备根据每个负载分担设备能够处理的业务划分好负载分担组后,TRILL网络中预先确定的一个负载分担设备作为分配设备,给每个负载分担组分配一个虚拟nickname,再向TRILL网络中除所述分配设备以外的其他负载分担设备分别发布携带有每个负载分担组的虚拟nickname的第二数据中贞。
[0096]获取每个负载分担组的虚拟nickname有两种情况:第一种情况,TRILL网络中的分配设备从自身获取为每个负载分担组分配的虚拟nickname ;第二种情况,TRILL网络中除分配设备以外的其他负载分担设备,接收TRILL网络中的分配设备发布的第二数据帧,从所接收的第二数据帧中获取每个负载分担组的虚拟nickname。
[0097]这里需要说明的是,所述第二数据帧的格式与图3所示的帧格式相同,其中,Type=INT-VLAN表示第二数据巾贞的类型,占用1字节byte ;Length表示第二数据巾贞的长度,占用lbyte ;Nickname表示所发布的第二数据巾贞的所代表的负载分担组的虚拟nickname,占用2byte ;Interested VLANS表示此第二数据巾贞的负载分担组所能处理的业务。分配设备所发布的每个第二数据帧仅携带有一个负载分担组的虚拟nickname,因此,分配设备所发布的第二数据帧的个数与负载分担组的个数相同。
[0098]TRILL网络中除分配设备以外的其他负载分担设备接收到所述分配设备发布的第二数据帧后,从每个第二数据帧中获取所携带的虚拟nickname,分别建立映射表,所述映射表的每个表项包括负载分担组的虚拟nickname以及业务的对应关系,每个负载分担设备的映射表的表项的项数与所述负载分担设备所划分的负载分担组的个数相同。
[0099]步骤204:利用所述映射表实现所述TRILL网络中的流量负载分担。
[0100]当每个负载分担设备刷新其所划分的每个负载分担组的虚拟nickname后,每个负载分担设备向TRILL网络中的数据发送设备分别发布此负载分担设备的多个虚拟nickname,数据发送设备可以获取到每个负载分担设备的多个虚拟nickname。所述数据发送设备可以根据虚拟nickname查找到所述nickname所对应的负载分担组实现TRILL网络中的流量负载分担。
[0101]本发明所提供的负载分担方法中,根据每个负载分担设备所能处理的业务将多个负载分担设备划分为多个负载分担组,并为每个负载分担组分配一个虚拟别名nickname,建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系,利用所述映射表实现TRILL网 络中的流量负载分担。当数据发送设备接收到某个业务的数据流时,选择与此业务对应的虚拟nickname,查找与所述虚拟nickname对应的负载分担组,并根据负载分担规则确定所述负载分担组中的负载分担设备转发此业务的数据流。这样,每个负载分担设备只能接收到此负载分担设备能处理的业务的数据流,每种业务的数据流都能够被正常转发,能够避免某种业务的数据流未被转发所导致的业务中断的问题。
[0102]TRILL网络中主要在多活网关和多活接入两个场景中使用虚拟nickname技术实现流量负载分担,下面结合附图对本发明在这两个具体场景中实现流量负载分担的方法进行说明。
[0103]场景一:多活网关场景实现流量负载分担
[0104]图4为本发明实施例所述负载分担方法在场景一下的流程示意图,应用于多活网关场景。
[0105]多活网关场景中,所述负载分担设备包括网关,所述业务由虚拟局域网标识(英文:Virtual Local Area Network Identifier,缩写:VLAN ID)识别。每个所述负载分担设备即为一个网关,每个网关上配置有能识别此网关所能处理的业务的虚拟局域网标识VLANID。以图5所示的本发明TRILL网络中多活网关场景示意图为例,TRILL网络中包含四个网关 GW1,GW2, GW3 以及 GW4,网关 GW1 配置有 VLAN10,VLAN20, VLAN30, VLAN40 以及 VLAN50 ;网关 GW2 配置有 VLAN10,VLAN30, VLAN40 以及 VLAN50 ;网关 GW3 配置有 VLAN10,VLAN20,VLAN40以及VLAN50 ;网关GW4配置有VLAN10,VLAN20,VLAN30以及VLAN50。数据发送设备501与四个网关GW1,GW2,GW3以及GW4都建立有通信连接,可以向四个网关分别发送不同业务的数据流。
[0106]需要说明的是,实际应用中不仅限于图5所示的TRILL网络中多活网关场景结构,还可以包含其他数量的网关,并且每个网关所配置的网关VLAN ID可以根据实际情况具体设定,这里不进行具体限定。
[0107]如图4所示,所述方法包括:
[0108]步骤401:犾取所述TRILL网络中每个网关的标识与所述网关上配直的VLAN ID的对应关系。
[0109]所述TRILL网络中有多个网关,每个网关的标识与所述网关上配置的VLAN ID的对应关系用于描述此网关可以处理的业务。如图5所示,网关GW1配置有VLAN10,VLAN20,VLAN30, VLAN40 以及 VLAN50,表示网关 GW1 能够处理 VLAN10,VLAN20, VLAN30, VLAN40 以及VLAN50的业务,即可以转发VLAN10,VLAN20, VLAN30, VLAN40以及VLAN50的数据报文。TRILL网络中其他网关配置的VLAN ID可以处理的业务类似,这里不再赘述。
[0110]每个网关在加入TRILL网络时,都采用图3的帧格式在TRILL网络中发布此网关所配置的VLAN ID。以图5中网关GW1为例,网关GW1发布所配置的VLAN10,VLAN20,VLAN30,VLAN40以及VLAN50的数据帧如图6所示。TRILL网络中其他的网关接收到网关GW1发布的图6中所示的数据帧后,从所述数据帧中获取网关GW1所配置的VLAN ID。以此类推,TRILL网络中其他网关发布此网关所配置的VLAN ID的方法与网关GW1发布配置的VLAN ID的方法类似,这里不再赘述。
[0111]TRILL网络中每个网关都犾取其他网关的标识与网关上配直的VLAN ID的对应关系,获取到的对应关系如下所示:
[0112]网关 GW1:VLAN10, VLAN20, VLAN30, VLAN40, VLAN50 ;
[0113]网关 GW2:VLAN10, VLAN30, VLAN40, VLAN50 ;
[0114]网关 GW3:VLAN10, VLAN20, VLAN40, VLAN50 ;
[0115]网关 GW4:VLAN10, VLAN20, VLAN30, VLAN50。
[0116]步骤402:根据每个网关上配置的VLAN ID,将所述多个网关划分为至少一个负载分担组,每个负载分担组中的网关上配置有相同的VLAN ID。
[0117]以VLAN ID为依据,将多个网关划分为多个负载分担组,每个负载分担组中的网关可以处理同一种业务,即,以一个VLAN ID划分得到的负载分担组中的每个网关都可以转发此VLAN ID的报文。
[0118]将图5中的网关划分得到的多个负载分担组如下:
[0119]G1 组,VLAN 10:Gffl, GW2, GW3, GW4 ;
[0120]G2 组,VLAN 20:Gffl, GW3, GW4 ;
[0121]G3 组,VLAN 30:Gffl, GW2, GW4 ;
[0122]G4 组,VLAN 40:Gffl, GW2, GW3 ;
[0123]G5 组,VLAN 50:Gffl, GW2, GW3, GW4。
[0124]上述所划分的5个负载分担组,每个负载分担组中的多个网关只能处理一种业务,即只能转发一种业务数据。如:G1组中的网关GW1,GW2,GW3,GW4只能转发VLAN 10的数据流;G2组中的网关GW1,GW3,GW4只能转发VLAN 20的数据流;G3组中的网关GW1,GW2,GW4只能转发VLAN 30的数据流;G4组中的网关GW1,GW2,GW3,只能转发VLAN 40的数据流;G5组中的网关GW1,GW2,GW3,GW4只能转发VLAN 50的数据流。
[0125]在具体实施过程中,步骤402还包括:
[0126]当能够处理不同业务的至少两个负载分担组中所包含的负载分担设备完全相同时,将所述至少两个负载分担组合并为一个负载分担组。
[0127]上述划分的负载分担组中,G1组和G5组中所包含的网关完全相同,可以将G1组和G5组合并成一个负载分担组H,合并后的负载分担组Η可以处理G1和G5组所能处理的业务,即合并后的负载分担组Η可以转发VLAN 10和VLAN 50的数据流。
[0128]将G1组和G5组合并后得到负载分担组Η后,步骤402划分得到的负载分担组如下所示:
[0129]Η 组,VLAN 10 和 VLAN 50:Gffl, GW2, GW3, GW4 ;
[0130]G2 组,VLAN 20:Gffl, GW3, GW4 ;
[0131]G3 组,VLAN 30:Gffl, GW2, GW4 ;
[0132]G4 组,VLAN 40:Gffl, GW2, GW3。
[0133]Η组中的网关GW1,GW2,GW3,GW4能转发VLAN 10和VLAN 50的报文;G2组中的网关GW1,GW3,GW4只能转发VLAN 20的数据流;G3组中的网关GW1,GW2,GW4只能转发VLAN30的数据流。
[0134]步骤403:获取每个负载分担组的虚拟别名nickname,根据每个负载分担组对应的VLAN ID以及每个负载分担组的虚拟nickname建立映射表。
[0135]其中,所述映射表的每个表项包括负载分担组的虚拟nickname以及VLAN ID的对应关系。
[0136]每个网关都按照步骤402所述的方法依据每个网关上所配置的VLAN ID将所述多个网关划分为至少一个负载分担组,划分好负载分担组后,预先确定的一个网关给每个负载分担组分配一个虚拟nickname,所述预先确定的网关再将所分配的虚拟nickname按照图3所示的帧格式依次发布给TRILL网络中的其他网关。在实际应用中,所述预先确定的网关可以是系统编号最大或最小的网关。当TRILL网络中的其他网关接收到发布虚拟nickname的数据巾贞时,查找与数据巾贞中携带的VALN ID对应的负载分担组,用数据巾贞中所携带的虚拟nickname作为所查找到的负载分担组的nickname。而所述预先确定的网关用自身给一个负载分担组所分配的虚拟nickname作为所述负载分担组的nickname。
[0137]当TRILL网络中每个网关为每个负载分担组确定了虚拟nickname后,所述网关发布所述网关所属的负载分担组的虚拟nickname。一般情况下,由于每个网关属于多个负载分担组,则每个网关会发布自身所属的多个虚拟nickname与VLAN ID对应关系。TRILL网络中的其他设备接收并存储所述对应关系,根据所述对应关系以及获取的虚拟nickname以及负载分担组的对应关系,向发布所述虚拟nickname的网关转发报文。
[0138]步骤404:接收数据发送设备发送的地址解析协议ARP请求,所述ARP请求携带有VLAN IDο
[0139]当TRILL网络中的数据发送设备需要发送IP报文时,首先会发送地址解析协议(Address Resolut1n Protocol, ARP)请求以获取 TRILL 网关的 MAC 地址,所述 ARP 请求中携带有所要转发的数据流的VLAN ID。
[0140]步骤405:根据所述VLAN ID查找所述映射表,得到与所述VLAN ID对应的负载分担组的虚拟nickname。
[0141]步骤406:向所述数据发送设备发送携带有所述VLAN ID以及所述虚拟nickname的ARP响应,以便所述数据发送设备根据所述虚拟nickname查找与所述nickname所对应的负载分担组实现对包括所述VLAN ID的数据报文在所述TRILL网络中的负载分担。
[0142]当网关接收到ARP请求时,查找映射表中与所述ARP请求中所携带的VLAN ID所对应的虚拟nickname,并将查找到的虚拟nickname以及所述VLAN ID封装在ARP响应消息中回复给所述数据发送设备。
[0143]需要说明的是,由于数据发送设备所发送的ARP请求是一种广播报文,TRILL网络中的所有网关都能接收到所述数据发送设备所发送的ARP请求。由于每个网关设备都存储有包括每个负载分担组的虚拟nickname与VLAN ID的对应关系的映射表,因此可以预先选取一个网关执行步骤405和步骤406,例如,选取系统编码最大的网关执行步骤405和步骤406。此外,也可以使TRILL网络中的所有网关都执行步骤405和步骤406。
[0144]当数据发送设备接收到ARP响应后,获取所述ARP响应中所携带的虚拟nickname以及VLAN ID,查找发布过所述虚拟nickname的网关,将所要发送的包括所述VLAN ID的报文利用发布过所述虚拟nickname的网关实现负载分担。
[0145]由于每个虚拟nickname对应于一个负载分担组,每个负载分担组中的负载分担设备所能处理的业务相同。因此,数据发送设备501要发送数据流前,向网关发送携带有所要发送的数据流的VLAN ID的ARP请求,网关根据ARP请求所携带的VLAN ID,查找与所述VLAN ID所对应的虚拟nickname返回给数据发送设备501,数据发送设备501再找到所述虚拟nickname所对应的负载分担组,利用所述负载分担组中所包含的负载分担设备分担所要发送的数据报文。
[0146]本场景中所提供的负载数据分担的方法中,每种VLAN数据流都能被发送到可以转发此VLAN数据流的负载分担设备,实现VLAN数据流的有效转发,防止VLAN数据流无法转发所导致的业务中断。
[0147]场景二:多活接入场景实现流量负载分担
[0148]图7为本发明实施例所述负载分担方法在场景二下的流程示意图,应用于多活接入场景。
[0149]在多活接入场景中,所述 负载分担设备包括边缘设备,所述业务由链路聚合组标识(英文:Link Aggregat1n Group Identifier,缩写:Lag ID)和 VLAN ID 识别,所述 LagID用于标识链路聚合组,每个链路聚合组包括多条链路,所述多条链路为同一接入设备与多个不同负载分担设备之间的链路。一个链路聚合组中,多个负载分担设备分别与同一接入设备连接并建立多条链路,每条链路即为一个数据信道,每个负载分担设备都可以转发从接入设备所发送的数据流,接入设备根据负载分担策略选择一条链路,通过链路上的负载分担设备将数据流发送到对端设备,对端设备也可以选择一个负载分担设备将数据流转发至接入设备。
[0150]所述边缘设备的主要功能是对TRILL网络外的设备发送的数据报文添加TRILL头后发送到TRILL网络或者将TRILL网络设备发送的报文删除TRILL头后发送给TRILL网络外的设备。
[0151]场景二中负载分担方法的描述以图8所示的本发明TRILL网络中多活接入场景示意图为例,图8中TRILL网络中包含四个负载分担设备RB1、RB2、RB3以及RB4,负载分担设备RB1配置有VLAN10,表示RB1能转发VLAN10的数据流;负载分担设备RB2、RB3和RB4分别配置有VLAN10,VLAN20以及VLAN30,表示RB2、RB3以及RB4均能转发VLAN10,VLAN20以及VLAN30的数据流。
[0152]第一链路聚合组包括接入设备Switch A与负载分担设备RB1、负载分担设备RB2、负载分担设备RB3以及负载分担设备RB4之间的4条链路,采用Lag A进行标识。第二链路聚合组包括接入设备Switch B与负载分担设备RB2、负载分担设备RB3以及负载分担设备RB4之间的链路,采用Lag B进行标识。并且,四个负载分担设备RB1、RB2、RB3以及RB4都与目的设备801建立通信连接。
[0153]这里需要说明的是,实际应用中不仅限于图8所示的TRILL网络中多活接入场景结构,还可以包含其他数量的负载分担设备以及接入设备,并且每个负载分担设备所配置的网关VLAN ID可以根据实际情况具体设定,与负载分担设备建立通信连接的目的设备801的个数也可以有多个,这里不进行具体限定。
[0154]步骤701:获取所述TRILL网络中每个负载分担设备的标识、所述负载分担设备的Lag ID、以及所述负载分担设备上配置的VLAN ID的对应关系。
[0155]所述业务由链路聚合组标识Lag ID和VLAN ID识别,所述Lag ID用于标识链路聚合组,每个链路聚合组包括多条链路,所述多条链路为同一接入设备与多个不同负载分担设备之间的链路,即所述接入设备分别连接所述多个不同负载分担设备的多条链路。
[0156]TRILL网络中每个负载分担设备向TRILL网络中其他的负载分担设备发布此负载分担设备的Lag ID,以及所述负载分担设备上配置的VLAN ID等信息。Lag ID主要用来标识此负载分担设备所在的链路聚合组,即标识此负载分担设备与接入设备之间的链路所属的链路聚合组。
[0157]TRILL网络中每个负载分担设备都能获取其他负载分担设备的标识、LagID,以及所述负载分担设备上配置的VLAN ID的对应关系,如下所示,获取到的对应关系包括:
[0158]RBI:Lag A ;VLA10 ;
[0159]RB2:Lag A, Lag B ;VLA10, VLA20, VLA30 ;
[0160]RB3:Lag A, Lag B ;VLA10, VLA20, VLA30 ;
[0161]RB4:Lag A, Lag B ;VLA10, VLA20, VLA30。
[0162]步骤702:根据每个负载分担设备的Lag ID以及每个所述负载分担设备上配置的VLAN ID,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备的Lag ID相同,并且配置有相同的VLAN ID。
[0163]以Lag ID以及VLAN ID为依据,将多个负载分担设备划分为多个负载分担组,每个负载分担组中的负载分担设备的Lag ID相同,并且配置有相同的VLAN ID。每个负载分担组中的负载分担设备可以处理同一种业务,即,以Lag ID以及VLAN ID划分得到的负载分担组中的每个负载分担设备都可以转发此Lag ID所标识的接入设备的所述VLAN ID的数据流。
[0164]将图8中的负载分担送设备划分后,可得到如下所示的多个负载分担组:
[0165]K1 组,Lag A VLAN 10:RB1, RB2, RB3, RB4 ;
[0166]K2 组,Lag A VLAN 20:RB2, RB3, RB4 ;
[0167]K3 组,Lag A VLAN 30:RB2, RB3, RB4 ;
[0168]K4 组,Lag B VLAN 10:RB2, RB3, RB4 ;
[0169]K5 组,Lag B VLAN 20:RB2, RB3, RB4 ;
[0170]K6 组:Lag B VLAN 30:RB2, RB3, RB4。
[0171]上述所划分的6个负载分担组,每个负载分担组中的多个负载分担设备只能处理同一种业务,即只能转发同一个接入设备所发送的一种类型的业务数据。如:K1组中的负载分担设RB1,RB2, RB3, RB4只能转发接入设备Switch A所发送的VLAN 10的数据流;K2组中的负载分担设RB2,RB3,RB4只能转发接入设备Switch A所发送的VLAN 20的数据流;K3组中的负载分担设RB2,RB3,RB4只能转发接入设备Switch A所发送的VLAN 30的数据流;K4组中的负载分担设RB2,RB3, RB4只能转发接入设备Switch B所发送的VLAN 10的数据流;K5组中的负载分担设RB2,RB3,RB4只能转发接入设备Switch B所发送的VLAN 20的数据流;K6组中的负载分担设RB2,RB3, RB4只能转发接入设备Switch B所发送的VLAN30的数据流。
[0172]在具体实施过程中,步骤702还包括:
[0173]当能够处理不同业务的至少两个负载分担组中所包含的负载分担设备完全相同时,将所述至少两个负载分担组合并为一个负载分担组。
[0174]上述划分的负载分担组中,K2组、K3组、K4组、K5组和K6组中所包含的负载分担设备完全相同,可以将K2组、K3组、K4组、K5组和K6组合并成一个负载分担组L,合并后的负载分担组L可以处理K2组、K3组、K4组、K5组和K6所能处理的业务,即合并后的负载分担组L可以转发接入设备Switch A所发送的VLAN 20和VLAN 30的数据流;合并后的负载分担组L还可以转发接入设备Switch B所发送的VLAN 10、VLAN 20和VLAN30数据流。
[0175]将K2组、K3组、K4组、K5组和K6组合并后得到负载分担组L后,负载分担组如下所示:
[0176]K1 组,Lag A VLAN 10:RB1, RB2, RB3, RB4 ;
[0177]L组:Lag A VLAN 10,Lag A VLAN 20,Lag A VLAN 30,Lag BVLAN 10,Lag B VLAN20、Lag B VLAN 30:RB2, RB3, RB4。
[0178]K1组中的负载分担设备RB1,RB2, RB3, RB4仅能转发接入设备Switch A所发送的VLAN 10数据流;L组中的负载分担设备RB2,RB3, RB4不仅可以转发接入设备Switch A所发送的VLAN 10,VLAN20以及VLAN 30数据流,还可以转发接入设备Switch B所发送的VLAN 10,VLAN20 以及 VLAN30 数据流。
[0179]步骤703:获取每个负载分担组的虚拟别名nickname,根据每个负载分担组对应的Lag ID、VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表,所述映射表的表项具体包括负载分担组的虚拟nickname、Lag ID以及VLAN ID的对应关系。
[0180]每个负载分担设备都按照步骤702所述的方法依据每个负载分担设备的Lag ID以及此负载分担设备上所配置的VLAN ID将多个负载分担设备划分为至少一个负载分担组,划分好负载分担组后,预先确定的一个负载分担设备给每个负载分担组分配一个虚拟nickname,此被确定的负载分担设备再将给每个负载分担组所分配的虚拟nickname依次发布给TRILL网络中其他的网关,每次能发布一个虚拟nickname。在实际应用中,以预先选取系统编号最大的负载分担设备给每个负载分担组分配一个虚拟nickname为例,系统编号最大的负载分担设备分配好虚拟nickname后,将每个虚拟nickname发布给TRILL网络中其他的负载分担设备。
[0181]当TRILL网络中其他的负载分担设备接收到所发布的负载分担组的虚拟nickname的数据帧时,查找与数据帧中携带的Lag ID以及VALN ID所对应的负载分担组,用数据巾贞中所携带的虚拟nickname作为所查找到的负载分担组的nickname。而TRILL网络中系统编号最大的负载分担设备用自身给一个负载分担组所分配的虚拟nickname作为此负载分担组的nickname。
[0182]这里需要说明的是,并不仅限于预先选取系统编号最大的负载分担设备分配虚拟nickname,还可以预先选取系统编号最小的负载分担设备分配虚拟nickname,还可以预先选取其他的负载分担设备分配虚拟nickname,这里不进行具体限定,实施方法类似,这里不再赘述。
[0183]当TRILL网络中每个负载分担设备中的负载分担组都确定好虚拟nickname后,每个负载分担设备发布此负载分担设备的虚拟nickname。一般情况下,由于每个负载分担设备属于多个负载分担组,则每个负载分担设备会发布多个虚拟nickname。网络中的其他设备接收并存储所述对应关系,根据所述对应关系以及获取的虚拟nickname以及负载分担组的对应关系,向发布所述虚拟nickname的负载分担设备转发报文。
[0184]由步骤703可知,并不是TRILL网络中的所有负载分担设备使用同一个虚拟nickname,而是TRILL网络中每个负载分担组对应一个虚拟nickname, —个虚拟nickname对应一个负载分担组,一个负载分担组中的多个负载分担设备所能处理的业务相同。
[0185]步骤704:接收所述接入设备发送的第一数据报文,获取对应所述接入设备的LagID,所述第一数据报文包括目的设备的标识以及所述接入设备的MAC地址。
[0186]步骤705:根据所述Lag ID以及第一数据报文所包括的VLAN ID查找所述映射表,得到与所述Lag ID和所述VLAN ID对应的负载分担组的虚拟nickname。
[0187]步骤706:根据所述目的设备的标识将采用所述虚拟nickname封装的第一数据报文发送至目的设备,以便所述目的设备建立所述接入设备的的MAC地址、所述VLAN ID与虚拟nickname之间的第一对应关系,利用所述第一对应关系以及预先获取的所述虚拟nickname与负载分担组的第二对应关系实现TRILL网络中的流量负载分担。
[0188]接入设备将发给目的设备801的第一数据报文发送至与此接入设备建立链路的负载分担设备,负载分担设备获取此接入设备的Lag ID以及第一数据报文的所属的VLANID,以及第一数据报文所携带的目的设备的标识以及所述接入设备的MAC地址,根据所述Lag ID以及VLAN ID查找映射表中对应的虚拟nickname,并将所述第一数据报文采用 所述虚拟nickname封装发送至目的设备。
[0189]如图8所示,接入设备Switch A可以将VLAN 10的数据报文通过负载分担设备RB1转发至目的设备801,负载分担设备RB1会采用K1组的虚拟nickname封装由RB1转发的数据报文;接入设备Switch A可以将VLAN10、VLAN20和VLAN30的数据流通过负载分担设备RB2、RB3以及RB4转发至目的设备801,RB2、RB3以及RB4会采用L组的虚拟nickname封装RB2、RB3以及RB4所转发的VLAN10、VLAN20和VLAN30的数据报文;接入设备SwitchB可以将VLAN10、VLAN20和VLAN30的数据流通过负载分担设备RB2、RB3以及RB4转发至目的设备801,RB2、RB3以及RB4会采用L组的虚拟nickname封装B2、RB3以及RB4所转发的VLAN10、VLAN20和VLAN30的数据报文。
[0190]第一数据报文是泛指负载分担设备所转发的接入设备向目的设备所发送的数据报文。目的设备801在接收不同负载分担设备所转发的多个第一数据报文后,可以学习到发送所述第一数据报文的接入设备的MAC地址、第一数据报文包括的VLAN ID与虚拟nickname之间的对应关系,然后建立不同VALN ID下的MAC地址与虚拟nickname的第一对应关系,即所述第一对应关系包括VLAN ID、MAC地址与虚拟nickname的对应关系。所述目的设备进一步获取步骤703后根据每个负载分担设备所发布的虚拟nickname所建立的虚拟nickname与负载分担组之间的第二对应关系,并利用所述第一对应关系以及第二对应关系实现对目的设备发送的包括所述VLAN ID的数据报文(称为第二数据报文)的流量分担。
[0191]目的设备801根据所要发送的第二数据报文的VLAN ID以及MAC地址查找第一对应关系,得到虚拟nickname,再根据第二数据报文所述第二对应关系获取与所述虚拟nickname对应的负载分担组,通过所述负载分担组中的负载分担设备向所述接入设备发送所述第二数据报文,实现目的设备801发送至所述接入设备的第二数据报文在TRILL网络中的负载分担。
[0192]本场景所提供的负载分担方法中,目的设备根据负载分担设备发送的包括了负载分担组的虚拟nickname第一数据报文,建立接入设备的MAC地址、负载分担组的虚拟nickname以及VLAN ID的第一对应关系,根据所述第一对应关系以及虚拟nickname与负载分担组的第二对应关系,可以确保将包括所述VLAN ID的第二数据报文发送给能够转发所述第二数据报文的负载分担设备,实现VLAN数据流的有效转发,防止VLAN数据流无法转发所导致的业务中断。
[0193]实施例二
[0194]图9为本发明实施例提供的一种负载分担装置的结构示意图,所述装置包括:
[0195]获取单元901,用于获取多链路透明互联TRILL网络中的每个负载分担设备的业务信息,每个负载分担设备的业务信息包括所述负载分担设备的标识与所述负载分担设备能够处理的业务的对应关系,所述TRILL网络包括多个负载分担设备。
[0196]分组单元902,用于根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备能够处理的业务相同。
[0197]建立单元903,用于获取每个负载分担组的虚拟别名nickname,根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系。
[0198]处理单元904,用于利用所述映射表实现所述TRILL网络中的流量负载分担。
[0199]在实际应用中,所述装置还包括:
[0200]合并单元,用于当能够处理不同业务的至少两个负载分担组中所包含的负载分担设备完全相同时,将所述至少两个负载分担组合并为一个负载分担组。
[0201]在TRILL网络的多活网关和多活接入场景中,所述装置有不同的结构。、
[0202]场景一,所述负载分担设备包括网关,所述业务由虚拟局域网标识VLANID识别,图10为本发明实施例提供的应用于多活网关场景负载分担装置结构示意图,所述装置包括:
[0203]第一获取子单元1001,用于获取所述TRILL网络中每个网关的标识与所述网关上配置的VLAN ID的对应关系。
[0204]第一分组子单元1002,用于根据每个网关上配置的VLAN ID,将所述多个网关划分为至少一个负载分担组,每个负载分担组中的网关上配置有相同的VLAN ID。
[0205]第一建立子单元1003,用于根据每个负载分担组对应的VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname以及VLAN ID的对应关系。
[0206]第一接收子单元1004,用于接收数据发送设备发送的地址解析协议ARP请求,所述ARP请求携带有VLAN ID。
[0207]第一查找子单元1005,用于根据所述VLAN ID查找所述映射表,得到与所述VLANID对应的负载分担组的虚拟nickname。
[0208]第一发送子单元1006,用于向所述数据发送设备发送携带有所述VLAN ID以及所述虚拟nickname的ARP响应,以便所述数据发送设备根据所述虚拟nickname查找与所述nickname所对应的负载分担组实现对包括所述VLAN ID的数据报文在所述TRILL网络中的负载分担。
[0209]场景二,所述业务由链路聚合组标识Lag ID和VLAN ID识别,所述LagID用于标识链路聚合组,每个链路聚合组包括多条链路,所述多条链路为同一接入设备与多个不同负载分担设备之间的链路,图11为本发明实施例提供的应用于多活接入场景负载分担装置结构示意图,所述装置包括:
[0210]第二获取子单元1101,用于获取所述TRILL网络中的每个负载分担设备的标识、所述负载分担设备的Lag ID、以及所述负载分担设备上配置的VLAN ID的对应关系。
[0211]第二分组子单元1102,用于根据每个负载分担设备的Lag ID以及每个所述负载分担设备上配置的VLAN ID,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备的Lag ID相同,并且配置有相同的VLAN ID。
[0212]第二建立子单元1103,用于根据每个负载分担组对应的Lag ID、VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname、Lag ID以及VLAN ID的对应关系。
[0213]第二接收子单元1104,用于接收所述接入设备发送的第一数据报文,获取对应所述接入设备的Lag ID,所述第一数据报文包括目的设备的标识、所述接入设备的MAC地址以及 VLAN ID。
[0214]第二查找子单元1105,用于根据所述Lag ID以及所述第一数据报文包括的VLAN ID查找所述映射表,得到与所述Lag ID和所述VLAN ID对应的负载分担组的虚拟nickname。
[0215]第二发送子单元1106,用于根据所述目的设备的标识将封装了所述虚拟nickname的第一数据报文发送至目的设备,以便所述目的设备建立所述接入设备的MAC地址、所述第一数据报文包括的VLAN ID以及所述虚拟nickname之间的第一对应关系,利用所述第一对应关系以及预先获取的所述虚拟nickname与负载分担组的第二对应关系实现对包括所述VLAN ID的第二数据报文在所述TRILL网络中的负载分担。
[0216]实施例二是实施例一所述的方法所对应的装置,与实施例一类似,参考实施例一的描述,这里不再赘述。
[0217]实施例三
[0218]图12为本发明实施例提供的另一种负载分担装置的结构示意图,所述装置包括:
[0219]存储器1201和处理器1202,所述存储器1201用于存储指令,所述处理器1202用于调取并执订指令,所述指令包括:
[0220]获取多链路透明互联TRILL网络中的每个负载分担设备的业务信息,每个负载分担设备的业务信息包括所述负载分担设备的标识与所述负载分担设备能够处理的业务的对应关系,所述TRILL网络包括多个负载分担设备;
[0221]根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备能够处理的业务相同;
[0222]获取每个负载分担组的虚拟别名nickname,根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系;
[0223]利用所述映射表实现所述TRILL网络中的流量负载分担;
[0224]可选的,所述负载分担设备包括网关,所述业务由虚拟局域网标识VLAN ID识别;
[0225]所述获取多链路透明互联TRILL网络中的每个负载分担设备的业务信息包括:获取所述TRILL网络中每个网关的标识与所述网关上配置的VLAN ID的对应关系;
[0226]所述根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组包括:根据每个网关上配置的VLAN ID,将所述多个网关划分为至少一个负载分担组,每个负载分担组中的网关上配置有相同的VLAN ID ;
[0227]所述根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表包括:根据每个负载分担组对应的VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname以及VLAN ID的对应关系;
[0228]可选的,所述利用所述映射表实现TRILL网络中的流量负载分担包括:
[0229]接收数据发送设备发送的地址解析协议ARP请求,所述ARP请求携带有VLAN ID ;
[0230]根据所述VLAN ID查找所述映射表,得到与所述VLAN ID对应的负载分担组的虚拟nickname ;以及
[0231]向所述数据发送设备发送携带有所述VLAN ID以及所述虚拟nickname的ARP响应,以便所述数据发送设备根据所述虚拟nickname查找与所述nickname所对应的负载分担组实现对包括所述VLAN ID的数据报文在所述TRILL网络中的负载分担;
[0232]可选的,所述业务由链路聚合组标识Lag ID和虚拟局域网标识VLAN ID识别,所述Lag ID用于标识链路聚合组,每个链路聚合组包括多条链路,所述多条链路为同一接入设备与多个不同负载分担设备之间的链路;
[0233]所述获取TRILL网络中的每个负载分担设备的业务信息包括:
[0234]获取所述TRILL网络中的每个负载分担设备的标识、所述负载分担设备的LagID、以及所述负载分担设备上配置的VLAN ID的对应关系;
[0235]所述根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组包括:
[0236]根据每个负载分担设备的Lag ID以及每个所述负载分担设备上配置的VLAN ID,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备的Lag ID相同,并且配置有相同的VLAN ID ;
[0237]所述根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表包括:根据每个负载分担组对应的Lag ID、VLAN I D以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname、LagID以及VLAN ID的对应关系;
[0238]可选的,所述利用所述映射表实现TRILL网络中的流量负载分担包括:
[0239]接收所述接入设备发送的第一数据报文,获取对应所述接入设备的LagID,所述第一数据报文包括目的设备的标识、所述接入设备的MAC地址,以及VLAN ID ;
[0240]根据所述Lag ID以及所述第一数据报文包括的VLAN ID查找所述映射表,得到与所述Lag ID和所述VLAN ID对应的负载分担组的虚拟nickname ;以及
[0241]根据所述目的设备的标识将封装了所述虚拟nickname的第一数据报文发送至目的设备,以便所述目的设备建立所述接入设备的MAC地址、所述第一数据报文包括的VLANID以及所述虚拟nickname之间的第一对应关系,利用所述第一对应关系以及预先获取的所述虚拟nickname与负载分担组的第二对应关系实现对包括所述VLAN ID的第二数据报文在所述TRILL网络中的负载分担;
[0242]可选的,当处理不同业务的至少两个负载分担组中所包含的负载分担设备完全相同时,将所述至少两个负载分担组合并为一个负载分担组。
[0243]以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【主权项】
1.一种负载分担方法,其特征在于,所述方法包括: 获取多链路透明互联TRILL网络中的每个负载分担设备的业务信息,每个负载分担设备的业务信息包括所述负载分担设备的标识与所述负载分担设备能够处理的业务的对应关系,所述TRILL网络包括多个负载分担设备; 根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备能够处理的业务相同; 获取每个负载分担组的虚拟别名nickname,根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系; 利用所述映射表实现所述TRILL网络中的流量负载分担。2.根据权利要求1所述的方法,其特征在于, 所述负载分担设备包括网关,所述业务由虚拟局域网标识VLAN ID识别; 所述获取多链路透明互联TRILL网络中的每个负载分担设备的业务信息包括:获取所述TRILL网络中每个网关的标识与所述网关上配置的VLAN ID的对应关系; 所述根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组包括:根据每个网关上配置的VLAN ID,将所述多个网关划分为至少一个负载分担组,每个负载分担组中的网关上配置有相同的VLAN ID ; 所述根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表包括:根据每个负载分担组对应的VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname以及VLAN ID的对应关系。3.根据权利要求2所述的方法,其特征在于,所述利用所述映射表实现所述TRILL网络中的流量负载分担包括: 接收数据发送设备发送的地址解析协议ARP请求,所述ARP请求携带有VLAN ID ; 根据所述VLAN ID查找所述映射表,得到与所述VLAN ID对应的负载分担组的虚拟nickname ;以及 向所述数据发送设备发送携带有所述VLAN ID以及所述虚拟nickname的ARP响应,以便所述数据发送设备根据所述虚拟nickname查找与所述nickname所对应的负载分担组实现对包括所述VLAN ID的数据报文在所述TRILL网络中的负载分担。4.根据权利要求1所述的方法,其特征在于, 所述业务由链路聚合组标识Lag ID和虚拟局域网标识VLAN ID识别,所述Lag ID用于标识链路聚合组,每个链路聚合组包括多条链路,所述多条链路为同一接入设备与多个不同负载分担设备之间的链路; 所述获取TRILL网络中的每个负载分担设备的业务信息包括: 获取所述TRILL网络中的每个负载分担设备的标识、所述负载分担设备的Lag ID、以及所述负载分担设备上配置的VLAN ID的对应关系; 所述根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组包括: 根据每个负载分担设备的Lag ID以及每个所述负载分担设备上配置的VLAN ID,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备的Lag ID相同,并且配置有相同的VLAN ID ; 所述根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表包括:根据每个负载分担组对应的Lag ID、VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname、LagID以及VLAN ID的对应关系。5.根据权利要求4所述的方法,其特征在于,所述利用所述映射表实现所述TRILL网络中的流量负载分担包括: 接收所述接入设备发送的第一数据报文,获取对应所述接入设备的Lag ID,所述第一数据报文包括目的设备的标识、所述接入设备的MAC地址,以及VLAN ID ; 根据所述Lag ID以及所述第一数据报文包括的VLAN ID查找所述映射表,得到与所述Lag ID和所述VLAN ID对应的负载分担组的虚拟nickname ;以及 根据所述目的设备的标识将封装了所述虚拟nickname的第一数据报文发送至目的设备,以便所述目的设备建立所述接入设备的MAC地址、所述第一数据报文包括的VLAN ID以及所述虚拟nickname之间的第一对应关系,利用所述第一对应关系以及预先获取的所述虚拟nickname与负载分担组的第二对应关系实现对包括所述VLAN ID的第二数据报文在所述TRILL网络中的负载分担。6.根据权利要求1-5任意一项所述的方法,其特征在于,所述方法还包括: 当能够处理不同业务的至少两个负载分担组中所包含的负载分担设备完全相同时,将所述至少两个负载分担组合并为一个负载分担组。7.一种负载分担装置,其特征在于,包括: 获取单元,用于获取多链路透明互联TRILL网络中的每个负载分担设备的业务信息,每个负载分担设备的业务信息包括所述负载分担设备的标识与所述负载分担设备能够处理的业务的对应关系,所述TRILL网络包括多个负载分担设备; 分组单元,用于根据每个负载分担设备能够处理的业务,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备能够处理的业务相同; 建立单元,用于获取每个负载分担组的虚拟别名nickname,根据每个负载分担组能够处理的业务以及每个负载分担组的虚拟nickname建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系; 处理单元,用于利用所述映射表实现所述TRILL网络中的流量负载分担。8.根据权利要求7所述的装置,其特征在于, 所述负载分担设备包括网关,所述业务由虚拟局域网标识VLAN ID识别; 则所述获取单元为: 第一获取子单元,用于获取所述TRILL网络中每个网关的标识与所述网关上配置的VLAN ID的对应关系; 所述分组单元为: 第一分组子单元,用于根据每个网关上配置的VLAN ID,将所述多个网关划分为至少一个负载分担组,每个负载分担组中的网关上配置有相同的VLAN ID ; 所述建立单元为: 第一建立子单元,用于根据每个负载分担组对应的VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname以及VLAN ID的对应关系。9.根据权利要求8所述的装置,其特征在于,所述处理单元包括: 第一接收子单元,用于接收数据发送设备发送的地址解析协议ARP请求,所述ARP请求携带有VLAN ID ; 第一查找子单元,用于根据所述VLAN ID查找所述映射表,得到与所述VLAN ID对应的负载分担组的虚拟nickname ; 第一发送子单元,用于向所述数据发送设备发送携带有所述VLAN ID以及所述虚拟nickname的ARP响应,以便所述数据发送设备根据所述虚拟nickname查找与所述nickname所对应的负载分担组实现对包括所述VLAN ID的数据报文在所述TRILL网络中的负载分担。10.根据权利要求7所述的装置,其特征在于, 所述业务由链路聚合组标识Lag ID和虚拟局域网标识VLAN ID识别,所述Lag ID用于标识链路聚合组,每个链路聚合组包括多条链路,所述多条链路为同一接入设备与多个不同负载分担设备之间的链路; 所述获取单元为: 第二获取子单元,用于获取所述TRILL网络中的每个负载分担设备的标识、所述负载分担设备的Lag ID、以及所述负载分担设备上配置的VLAN ID的对应关系; 所述分组单元为: 第二分组子单元,用于根据每个负载分担设备的Lag ID以及每个所述负载分担设备上配置的VLAN ID,将所述多个负载分担设备划分为至少一个负载分担组,每个负载分担组中的负载分担设备的Lag ID相同,并且配置有相同的VLAN ID ; 所述建立单元为: 第二建立子单元,用于根据每个负载分担组对应的Lag ID、VLAN ID以及每个负载分担组的虚拟nickname建立所述映射表;所述映射表的表项具体包括负载分担组的虚拟nickname、Lag ID以及VLAN ID的对应关系。11.根据权利要求10所述的装置,其特征在于,所述处理单元包括: 第二接收子单元,用于接收所述接入设备发送的第一数据报文,获取对应所述接入设备的Lag ID,所述第一数据报文包括目的设备的标识、所述接入设备的MAC地址以及VLANID ; 第二查找子单元,用于根据所述Lag ID以及所述第一数据报文包括的VLAN ID查找所述映射表,得到与所述Lag ID和所述VLAN ID对应的负载分担组的虚拟nickname ; 第二发送子单元,用于根据所述目的设备的标识将封装了所述虚拟nickname的第一数据报文发送至目的设备,以便所述目的设备建立所述接入设备的MAC地址、所述第一数据报文包括的VLAN ID以及所述虚拟nickname之间的第一对应关系,利用所述第一对应关系以及预先获取的所述虚拟nickname与负载分担组的第二对应关系实现对包括所述VLANID的第二数据报文在所述TRILL网络中的负载分担。12.根据权利要求7-11任意一项所述的装置,其特征在于,所述装置还包括: 合并单元,用于当能够处理不同业务的至少两个负载分担组中所包含的负载分担设备完全相同时,将所述至少两个负载分担组合并为一个负载分担组。
【专利摘要】本发明公开了一种负载分担方法及装置,将能够处理相同业务的负载分担设备划分为至少一个负载分担组,并为每个负载分担组分配一个虚拟别名nickname,建立映射表,所述映射表的表项包括负载分担组的虚拟nickname以及业务的对应关系,利用所述映射表实现TRILL网络中的流量负载分担。由于所述负载分担组中的每一个负载分担设备都能实现对相同业务的报文的转发,因此当负载分担组被选定后,不会产生将某种业务的报文发送至不能处理该种业务的负载分担设备的问题,从而可以避免报文被丢弃造成的业务中断问题。
【IPC分类】H04L12/803
【公开号】CN105490957
【申请号】CN201410535143
【发明人】胡志波, 张旭东, 郝卫国
【申请人】华为技术有限公司
【公开日】2016年4月13日
【申请日】2014年10月11日
【公告号】WO2016054956A1

最新回复(0)