专利名称:用于虚拟交换系统的主备链路负荷分担方法和装置的制作方法
技术领域:
本发明涉及数据网络通信技术领域,尤其是涉及一种用于虚拟 交换系统的主备链路负荷分担方法和装置。
背景技术:
虚交换(V-Switch)技术是一种建立虚拟电路的方法。在 V画Switch中,通过以太网才艮文的入4妾口 ( ingress interface )和入VLAN (Virtual Local Area Network,虚拟局域网)ID来选才奪才艮文的出4妄口 和出虚拟局域网(VLAN) ID号。该技术可以使三层路由器达到模 拟交换机的对报文在不同VLAN进行交换的功能,并且实现起来比 MPLS ( Multi-Protocol Label Switching,多协i义标签交换d支术)简单。 这种低成本的技术可用于构建电信级以太承载网,并引起广泛关注。
目前的V-Switch 4支术可以让每一个4妄口都有4095个VLAN来 区分用户,即VLAN ID从1到4094分配给用户使用,0表示非VLAN 用户,4095为系统保留。并且现有的V-Switch技术还包括了 VLAN 与普通非VLAN报文之间的交换功能,即除了交换时候的替换 VLAN标签方式,还提供了加VLAN标签(add-label)和去VLAN 标签(delete-labd )。而这种增加删除标签的转发功能,又为我们提 供了 QINQ (即VLAN Stacking,可堆叠VLAN )的VLAN堆叠封 装技术,对数据包的VLAN封装进行多次嵌套,扩展VLAN的范 围。目前的V-Switch还支持配置主备出接口来实现多条等效的虚交 换链^各。在主出接口链^各状态为非活动的情况下,转发层面通常自 动选择备份出接口作为报文发送的方向。这种方式虽然可以增加 V-Switch转发的可靠性,^f旦是如果对每一条链^各都去配置一条用于 可靠性保护的备份出接口链路的话,对带宽的资源浪费就会相当的 严重。
发明内容
本发明旨在4是供一种用于V-Switch系统的主备负荷分担方法和 装置,能够解决现有技术主备链路仅用于故障切换导致带宽利用率 较低的问题。
才艮据本发明的一个方面,提供了 一种用于V-Switch系统的主备 负荷分担方法,包括以下步骤对V-Switch系统中源局域网的用户 到达目的局域网的用户的V-Switch路径中的每个V-Switch节点建立 出VLAN的路径处理策略,路径处理策略中配置了 V-Switch节点的 主出接口和备份出接口的负荷分担;判断主出接口和备份出接口的
活动状态;以及按照3各径处理策略对活动的主出4妄口和备4分出4妄口 配置负荷分担。
负荷分担的原理提高了网络带宽的利用率。
根据本发明的另一方面,提供了一种用于V-Switch系统的主备 负荷分担装置,包括建立模块,用于对V-Switch系统中源局域网 的用户到达目的局域网的用户的V-Switch路径中的每个V-Switch 节点建立出VLAN的^各径处理策略,^各径处理策略中配置了 V-Switch节点的主出接口和备份出接口的负荷分担;判断才莫块,用于判断主出接口和备份出接口的活动状态;以及配置模块,用于按 照路径处理策略对活动的主出接口和备份出接口配置负荷分担。
该主备负荷分担装置改变原先主备链路仅用于故障切换,利用 负荷分担的原理^提高了网络带宽的利用率。
此处所说明的附图用来提供对本发明的进一步理解,构成本申 请的一部分,本发明的示意性实施例及其说明用于解释本发明,并 不构成对本发明的不当限定。在附图中
图1示出了才艮据本发明实施例的用于V-S witch系统的主备负荷 分4旦方法的流程图2示出了本发明实施例的V-S witch负荷分担应用的一种需求 组网图3示出了应用本发明实施例的主备负荷分担方法的流程示意
图4示出了才艮据本发明实施例的V-Switch表项的结构;
图5示出了根据本发明实施例的负荷分担策略处理的流程示意
图6示出了根据本发明实施例的用于V-Switch系统的主备负荷 分担装置的方框图。
具体实施例方式
图1示出了根据本发明实施例的用于V-Switch系统的主备负荷 分4旦方法的流程图,包括以下步骤
步骤SIO,对V-Switch系统中源局域网的用户到达目的局域网 的用户的V-Switch路径中的每个V-Switch节点建立出VLAN的路 径处理策略,路径处理策略中配置了 V-Switch节点的主出接口和备 份出4妄口的负^^分4旦;
步骤S20,判断主出接口和备份出接口的活动状态;以及
步骤S30,按照路径处理策略对活动的主出接口和备份出接口 配置负荷分4旦。
负荷分担的原理提高了网络带宽的利用率。
优选的,通过查询V-Switch节点的V-Switch表项获得路径处 理策略。
如图4所示,V-Switch表项可包括负荷分担权重字段311, 包括主出接口权重项和备份出接口权重项,用于指示主备出接口发 送的报文的流量比例为主出接口 4又重项和备份出接口 4又重项的比 值;主备出接口计数字段312:包括主出接口计数项和备份出接口 计数项,用于记录主出接口计数项和备份出接口每条链路所发送的 报文数;主备出接口标记字段313:用于表示负荷分担的时候当前 才艮文应采用主接口还是备份出接口发送;负荷分担标记字段307 用于表示是否启用主备负荷分担。优选的,按照路径处理策略对活动的主出接口和备份出接口配
置负荷分担具体包括如果主出接口和备份出接口都不是活动的, 则丢弃报文;如果主出接口是不活动的,备份出接口是活动的,则 选择备份出接口发送报文;如果备份出接口是不活动的,主出接口 是活动的,则选择主出接口发送报文;以及如果主出接口和备份出 接口都是活动的,则按照路径处理策略中的主备负荷分担,使用主 备出接口共同发送报文。
图2示出了本发明实施例的V-Switch负荷分担应用的一种需求 组网图。
V-Switch设备101是带有V-Switch功能的转发设备,两侧为用 户侧,来自用户侧的才艮文带有VLAN标签,范围是1-4094, V-Switch 设备建立如下转发表
入4妄口 102,入VLAN ID=4094,才艮文处理类型为替换VLAN 标签,主出接口 103,备份出接口 104,出VLANID-1,负荷分担 标志置l,主出接口权重6,备份出接口权重4。
该配置为转发建立了两条等效链3各,对进入V-Switch系统的数 据流进行负荷分担。
用户侧A的数据流进入到V-Switch设备101之后,被替换外层 VLANID后,通过"每报文"算法对每一个转发的报文选择出接口 , 从主出接口 103和备份出接口 104发送的才艮文个数的比例为主备出 孑妄口配置的4又重比。当V-Switch设备101与用户侧B之间的网症各带 宽有限的时候,这种负荷分担方法可以确保实时传送,即使用户侧 B和V-Switch之间由于流量过大出现网络拥塞,用户也无需担心下 栽速率,网络的流量负载通过负荷分担大大减轻了,即4吏用户侧B
的 一条链路出现故障,报文依然可以通过另外一条链路继续发送, 链路的可靠性也得到保证。
可见实施本发明实施例的主备负荷分担方法后,通过对
V-Switch系统所支持的多条虚拟转发链路的合理利用,改变原先主 备链路仅用于故障切换,利用负荷分担的原理,解决了系统中主备 链路带宽浪费的缺点。
将本发明实施例的主备负荷分担方法应用到实践中,可包括以 下步骤
步骤A:才艮据每个局域网用户的信息,分配给每个局域网用户 一个p舉一标识的ID;
步骤B:源局域网的用户对应的V-Switch系统根据目的局域网 用户的ID,确定到达目的局i或网用户所经过的V-Switch ^各径;
步骤C:在路径的每个V-Switch节点上,建立V-Switch交换表 项,交换表项以入VLAN ID和入4妾口号为索引,查询已经建立的 V-Switch交换表项,获得对出VLAN的处理策略,该处理策略包括 两部分 一部分是对才艮文的处理,包4舌增加、删除或^^^奂才艮文的 VLAN标签,另一部分是对路径的选择,包括选择主出接口和备份 出接口 ,以及对于配置了主备负荷分担的情况的策略操作。
进一步;也,步骤C可以包4舌
步骤Cl:当前V-Switch转发系统选择出VLAN的处理策略, 对才艮文的处理策略可以包括增加VLAN ID、减少VLAN ID和替 换VLAN ID,对于出VLAN ID的处理策略是增加VLAN ID,则在 凄史据包的源mac后面增加一层VLAN标签,对于减少VLAN ID , 则先^r查凄t据包的二层类型是否为IEEE802.1,如果是则将凄t据包
的最外层标签去除,对于策略是替换标签则检查数据包的二层类型
是否是IEEE802.1,如果是则将数据包的外层标签替换成策略中的 出VLAN ID;
步骤C2:对路径选择的策略包括选择主出接口和备份出接口 , 具体处理的策略为判断主出接口状态是否活动,如果是转C3,否 则转C4;
步骤C3:判断处理策略中备份出接口状态是否活动,如果不是, 转C5,如果是,转C6;
步骤C4:判断处理策略中备份出接口状态是否活动,如果是转 C8,如果不是,转C9;
步骤C5:选4奪主出接口发送;
步骤C6:查看策略中是否配置了负荷分担,如果没有配置,转 C5,如果配置了,转C7;
步骤C7:根据负荷分担策略,按照配置的主备链路的权重对报 文流采用per-packet (每报文)的算法,将数据流按权重分担到两条 等效链路中;
步骤C8:选择备份出接口发送;
步骤C9:丟弃才艮文。
图3示出了应用本发明实施例的主备负荷分4旦方法的流程示意 图,包括以下步艰《
步艰《201:对每个局域网用户分配p舉一标识的ID;
步骤202:确定到达目的局域网用户所经过的V-Switch路径;
步骤203:查询已经建立的V-Switch交换表项,获得对出VLAN 的处理策略;
步骤204: 4艮据纟艮文处理策略对数据4艮进行增加、删除或替换 VLAN标签的处理;
步骤205:判断主出接口状态是否活动,如果是转206,否则转
207;
步骤206:判断处理策略中备份出接口状态是否活动,如果不 是,转208,如果是,转209;
步骤207:判断处理策略中备份出接口状态是否活动,如果是 转211,如果不是,转212;
步骤208:选择主出接口发送;
步骤209:查看策略中是否配置了负荷分担,如果没有配置, 转208,如果配置了,转210;
步骤210:根据负荷分担策略,按照配置的主备链路的权重对 报文流采用per-packet (每报文)的算法,将数据流按权重分担到两 条等效链路中;
步骤211:选择备份出接口发送;
步骤212:丟弃^艮文。
图4示出了才艮据本发明实施例的V-Switch表项的结构,包括
V-Switch转发表301: V-Switch转发表的KEY由入4妾口号和入 VLAN ID号构成,V-Switch转发表RESULT结果存储一系列标记 位(报文处理类型、负荷分担标记)和出VLAN ID号、主备出接 口号以及负荷分担权重等其他信息;
V-Switch转发表KEY 302:由入4妄口号304和入VLAN ID号 305两部分构成,用于冲企索V-Switch转发表;
V-Switch转发表RESULT 303:存储一系列标记位(报文处理 类型306、负荷分4旦标记307 )和出VLAN ID号308、主出4妄口号 309,备^f分出4妄口号310、负荷分4旦4又重311,主备出4妄口计凄t312 以及主备出接口标记313等其他信息;
入接口号304:用于构成检索V-Switch转发表的KEY值;
入VLAN ID号305:用于构成检索V-Switch转发表的KEY值;
才艮文处理类型306:通过标i己标识乂于才艮文的处理策略是增加 VLAN标签、替换VLAN标签,删除VLAN标签;
负荷分担标记307:表示该条转发表是否启用主备负荷分担;
出VLAN ID号308:在进行增加一层新的VLAN和替换VLAN 操作时,使用V-Switch转发表中的出VLAN ID号作为最外层VLAN 封装的新VLANID号,如果才艮文处理策略是删除VLAN标签,那 么这种情况是不需要出VLANID号的;
主出接口号309:数据包封装成为新的报文后,在未配置负荷 分担且主出接口链路状态正常的情况下,从主接口号发送出去;
备4分出接口号310:数据包封装成为新的净艮文后,在未配置负 荷分担且主接口链路状态非正常的情况下,由备份出接口号发送出 去,若配置负荷分担且主备出接口状态都正常的情况下,备份出接 口承担和主出接口进行负荷分担的工作,将才艮文按照"每报文"策 略发送出去;
负荷分担权重311:负荷分担策略按照负荷分担权重"每报文" 发送数据包,其主备出接口发送的报文的流量比例为主备负荷分担 权重比;
主备出接口计凄t 312:该计数用于"每才艮文"负荷分担策略4丸 行时候记录每条链路所发送的报文数;
主备出接口标记313:表示负荷分担的时候当前报文应采用主 接口还是备份出接口发送;
如图5所示,应用本发明在配置主备负荷分担情况下对才艮文采 用"每报文,,负荷分担策略的处理流程包括
步-骤401:判断主备出4妄口标记,如果是主出才妄口,转402,如 果是备份出接口,转409; 步骤402:读取V-Switch转发表中主出接口的权重,转403;
步骤403:读取V-Switch转发表中主出接口的计数;
步骤404:判断主出接口计数是否大于等于主出接口权重,如 果是,转405,如果不是,转407;
步骤405:主出接口计数置0,并保存在表项中,转406;
步骤406:设置表项中主备出接口标记为备份出接口 ,转408;
步骤407:主出4妄口计凄t加一,并4呆存在表项中,4争408; 步骤408:通过主出接口发送报文; 步骤409:读取备份出接口的权重,转410; 步骤410:读取备份出接口计数,转411;
步骤411:判断备份出接口计数是否大于等于备份出接口权重, 如果是转413,如果不是转412;
步骤412:备份出接口计数加一,并保存在表项中,转415;
步骤413:备份出接口计数置O,并保存在表项中,转414;
步艰《414: i殳置表项中主备出4妄口标记为主出4妄口 ,转415;
步骤415:通过备份出接口发送报文。
综上所述,本发明实现了 V-Switch主备链路负荷分担的功能, 利用V-Switch主备出接口对"每报文,,选路策略,实施流量的负荷 分4旦方法,该方法^尤于主备链^各的快速切4灸方法, 一方面可以有岁文 地降低网络的负荷,充分利用带宽资源,另一方面可以为V-Switch 的转发提供更可靠的保证。
图6示出了根据本发明实施例的用于V-Switch系统的主备负荷 分担装置的方框图,包括
建立才莫块10,用于对V-Switch系统中源局域网的用户到达目 的局i或网的用户的V-Switch 3各径中的每个V-Switch节点建立出 VLAN的路径处理策略,鴻4圣处理策略中配置了 V-Switch节点的主 出接口和备份出接口的负荷分担; 判断模块20,用于判断主出接口和备份出接口的活动状态;
配置才莫块30,用于4安照路径处理策略对活动的主出4妄口和备4分 出接口配置负荷分担。
该主备负荷分担装置改变原先主备链路仅用于故障切换,利用 负荷分担的原理提高了网络带宽的利用率。
建立才莫块10可通过查询V-Switch节点的V-Switch表项获得路 径处理策略。如图4所示,V-Switch表项可包括负荷分担权重字 段311,包括主出接口权重项和备份出接口权重项,用于指示主备 出接口发送的报文的流量比例为主出接口权重项和备份出接口权重 项的比值;主备出接口计数字段312:包括主出接口计数项和备份 出接口计数项,用于记录主出接口计数项和备份出接口每条链路所 发送的报文数;主备出接口标记字段313:用于表示负荷分担的时 候当前报文应采用主接口还是备份出接口发送;负荷分担标记字段 307:用于表示是否启用主备负荷分担。
乂人以上的描述中,可以看出,采用本发明所述方法和装置可以 有效地解决现有的V-Switch采用主备链路的方式对带宽资源造成的 浪费,通过主备链路使用负荷分担,使得单链^各切换机制变为多链 路分担,不仅均衡了网络链路的流量压力,同时也增加了 V-Switch 传输的可靠性。
显然,本领域的技术人员应该明白,上述的本发明的各模块或 各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算 装置上,或者分布在多个计算装置所组成的网络上,可选地,它们 可以用计算装置可执行的程序代码来实现,从而,可以将它们存储
在存储装置中由计算装置来执行,或者将它们分别制作成各个集成
电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模 块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述^f又为本发明的优选实施例而已,并不用于限制本发明, 对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在 本发明的精神和原则之内,所作的任何修改、等同替换、改进等, 均应包含在本发明的保护范围之内。
权利要求
1.一种用于虚拟交换系统的主备负荷分担方法,其特征在于,包括以下步骤对所述虚拟交换系统中源局域网的用户到达目的局域网的用户的虚拟交换路径中的每个虚拟交换节点建立出虚拟局域网的路径处理策略,所述路径处理策略中配置了所述虚拟交换节点的主出接口和备份出接口的负荷分担;判断所述主出接口和备份出接口的活动状态;以及按照所述路径处理策略对活动的所述主出接口和备份出接口配置负荷分担。
2. 根据权利要求1所述的主备负荷分担方法,其特征在于,通过 查询所述虚拟交换节点的虚拟交换表项获得所述路径处理策 略。
3. 根据权利要求2所述的主备负荷分担方法,其特征在于,所述 虚拟交换表项包括负荷分担权重字段,包括主出接口权重项和备份出接口权 重项,用于指示主备出接口发送的报文的流量比例为所述主出 接口权重项和备份出接口权重项的比值。
4. 根据权利要求3所述的主备负荷分担方法,其特征在于,所述 虚拟交换表项还包括主备出接口计数字段包括主出接口计数项和备份出接口 计数项,用于记录主出接口计数项和备份出接口每条链路所发 送的报文凄史。
5. 根据权利要求4所述的主备负荷分担方法,其特征在于,所述 虚拟交换表项还包括主备出接口标记字段用于表示负荷分担的时候当前报文 应采用主接口还是备份出接口发送。
6. 根据权利要求5所述的主备负荷分担方法,其特征在于,所述 虚拟交换表项还包括负荷分担标记字段用于表示是否启用主备负荷分担。
7. 根据权利要求5所述的主备负荷分担方法,其特征在于,按照 所述i 各径处理策略对活动的所述主出4妄口和备份出4姿口配置 负荷分担具体包括如果所述主出接口和备份出接口都不是活动的,则丢弃报文;如果所述主出接口是不活动的,所述备份出接口是活动 的,则选择所述备份出接口发送报文; 如果所述备份出接口是不活动的,所述主出接口是活动的,则选择所述主出接口发送报文;以及如果所述主出接口和备份出接口都是活动的,则按照所述 路径处理策略中的主备负荷分担,使用所述主备出接口共同发 送报文。
8. 根据权利要求7所述的主备负荷分担方法,其特征在于,按照 所述路径处理策略中的主备负荷分担,使用所述主备出接口共 同发送才艮文具体包括步骤401:读取所述主备出接口标记字萃殳,如果是主出接 口,转402,如果是备份出接口,转409;步骤402:读取所述主出接口权重项;步骤403:读耳又所述主出4妄口计凄t项;步骤404:判断所述主出4妄口计凄t项是否大于等于所述主 出4妄口权重项,如果是,转405,如果不是,转407;步艰《405:将所述主出4妄口计凄t向置0;步骤406:设置所述主备出接口标记字革殳为备份出接口 , 转408;步艰钇407:所述主出4妄口计凄t项加一,專争408; 步骤408:通过主出接口发送报文,然后回到401; 步骤409:读取所述备4分出4妄口 4又重项;步骤410:读取所述备份出接口计数项;步骤411:判断所述备份出接口计数项是否大于等于所述 备份出接口权重项,如果是转413,如果不是转412;步骤412:将所述备份出接口计数项加一,转415;步骤413:将所述备份出接口计数项置0;步骤414:设置所述主备出接口标记字段为主出接口;步骤415:通过备份出接口发送报文,然后回到401。
9. 一种用于虚拟交换系统的主备负荷分担装置,其特征在于,包 括建立才莫块,用于对所述虚拟交换系统中源局域网的用户到 达目的局域网的用户的虚拟交换路径中的每个虚拟交换节点 建立出虚拟局i或网的路径处理策略,所述if各径处理策略中配置 了所述虚拟交换节点的主出接口和备份出接口的负荷分担;判断模块,用于判断所述主出接口和备份出接口的活动状 态;以及配置才莫块,用于4姿照所述i 各径处理策略对活动的所述主出 接口和备份出接口配置负荷分担。
10. 根据权利要求9所述的主备负荷分担装置,其特征在于,所述 建立模块通过查询所述虚拟交换节点的虚拟交换表项获得所 述路径处理策略,所述虚拟交换表项包括负荷分担权重字段,包括主出接口权重项和备份出接口权 重项,用于指示主备出接口发送的报文的流量比例为所述主出 *接口 4又重项和备^f分出4妄口 4又重项的比值;主备出接口计数字段包括主出接口计凄t项和备份出接口 计数项,用于记录主出接口计数项和备份出接口每条链路所发 送的才艮文数;主备出接口标记字段用于表示负荷分担的时候当前报文 应采用主接口还是备份出接口发送;负荷分担标记字段用于表示是否启用主备负荷分担。
全文摘要
本发明提供了一种用于V-Switch系统的主备负荷分担方法和装置,方法包括以下步骤对V-Switch系统中源局域网的用户到达目的局域网的用户的V-Switch路径中的每个V-Switch节点建立出VLAN的路径处理策略,路径处理策略中配置了V-Switch节点的主出接口和备份出接口的负荷分担;判断主出接口和备份出接口的活动状态;以及按照路径处理策略对活动的主出接口和备份出接口配置负荷分担。本发明改变原先主备链路仅用于故障切换,利用负荷分担的原理提高了网络带宽的利用率。
文档编号H04L12/56GK101179510SQ20071019537
公开日2008年5月14日 申请日期2007年12月13日 优先权日2007年12月13日
发明者辉 何, 磊 张, 张丽晖 申请人:中兴通讯股份有限公司