报文转发的方法及设备的制作方法

文档序号:7897219阅读:192来源:国知局
专利名称:报文转发的方法及设备的制作方法
技术领域
本发明涉及通信领域,尤其涉及一种报文转发的方法及设备。
技术背景
云计算拥有近乎无限的计算、存储、数据通信能力,相应的,提供云计算服务的IT 架构为集结了大规模基础资源的数据中心。数据中心通常拥有大量的服务器,但是大量的 服务器的访问会给数据中心的网络带来沉重的负担。随着服务器数量和密度不断增加,数 据中心的网络变得不胜负荷。要支持全互联网级的大规模应用,服务器集群可能达到数千 台、数万台,业务的部署、扩展、运行、支撑都会存在很多问题。
图1是一种无阻塞网络模型。接入层交换机的下行有40个千兆端口,无阻塞上行 4个万兆端口到η台(图1中η =幻汇聚交换机(或其他核心网络设备)。网络规划上使 用等价路由(Equal-Cost Multipath Routing,ECMP)将接入交换机的上行链路带宽进行负 载分担,从而可以实现整个网络的无阻塞交换,任意服务器端口之间可以具有千兆线速的 能力,完全消除了云计算集群内部的带宽限制因素。其中,等价路由是指对同一路由协议来 说,允许配置多条目的地相同且开销也相同的路由。当到同一目的地的路由中,没有更高优 先级的路由时,这几条路由都被采纳,在转发去往该目的地的报文时,依次通过各条路径发 送,从而实现网络的负载分担。对于同一目的地,特定的路由协议也可能会发现几条等值的 路由,如果该路由协议在所有活跃的路由协议中优先级最高,那么这几条不同的路由都被 看作当前有效的路由。这样,在路由协议层面上,保证了 IP流量的负载分担。
如图2所示,现有技术中,当接入交换机连接汇聚交换机的聚合链路出现异常时, 例如端口 P2的链路故障,这时聚合链路P1/P2并没有中断。但是由于聚合链路的带宽降 低导致该链路的开销变化。接入交换机判断该聚合链路的优先级低于聚合链路P3/P4的路 由优先级,所以将P1/P2的路由从等价路由中删除,导致P1/P2聚合链路虽然还有带宽资源 可以利用,但是被设置处于闲置状态。所有的流量从聚合链路P3/P4上转发,导致该链路流 量压力过大,出现拥塞导致丢包,从而使数据中心的业务出现异常,影响用户的正常访问。发明内容
本发明提供了一种报文转发的方法及设备,避免由于流量全部通过高路由优先级 的聚合链路转发导致的拥塞丢包问题。
本发明提供了一种报文转发的方法,应用于无阻塞接入网络,报文转发设备通过 多条互为等价路由、相同高路由优先级的聚合链路进行报文转发,该方法包括
当有作为等价路由的聚合链路的成员链路故障时,所述报文转发设备通过剩余高 路由优先级的聚合链路转发接收到的报文;
所述报文转发设备统计所述剩余高路由优先级的聚合链路转发报文的丢包率;
当所述丢包率满足预设条件时,所述报文转发设备根据预设策略为接收到的报文 打标记;
所述报文转发设备根据报文的标记将报文分别通过所述剩余高路由优先级的聚 合链路、和所述剩余高路由优先级的聚合链路之外的链路发送。
所述报文转发设备根据预设策略为接收到的报文打标记包括所述报文转发设备 统计接收到的报文所占用的带宽,并当统计得到的带宽未超过所述剩余高路由优先级的聚 合链路的带宽时,所述报文转发设备为接收到的报文打上第一标记;
所述报文转发设备根据报文的标记将报文分别通过所述剩余高路由优先级的聚 合链路、和所述剩余高路由优先级的聚合链路之外的链路发送包括所述报文转发设备将 携带所述第一标记的报文通过所述剩余高路由优先级的聚合链路发送,将没有携带所述第 一标记的报文通过所述剩余高路由优先级的聚合链路之外的链路发送。
当有作为等价路由的聚合链路的成员链路故障时,所述报文转发设备通过剩余高 路由优先级的聚合链路转发接收到的报文包括当有作为等价路由的聚合链路的成员链路 故障时,所述报文转发设备将故障的聚合链路的状态由活跃active设置为静止standby, 停止通过该故障的聚合链路转发接收到的报文,通过该故障的聚合链路之外的高路由优先 级的聚合链路转发报文;
当发生故障的成员链路恢复正常时,所述报文转发设备将所述故障的聚合链路的 状态更新为active,恢复通过该聚合链路转发报文。
所述报文转发设备统计接收到的报文所占用的带宽,并当统计得到的带宽未超过 所述剩余高路由优先级的聚合链路的带宽时,所述报文转发设备为接收到的报文打上第一 标记包括所述报文转发设备在下行端口上下发聚合CAR配置限速,对于接收到的在所述 剩余高路由优先级的聚合链路的带宽范围内的报文打上第一标记。
当所述剩余高路由优先级的聚合链路之外的链路具有不同的路由优先级时,还包 括
当统计得到的带宽超过所述剩余高路由优先级的聚合链路的带宽时,所述报文转 发设备根据所述剩余高路由优先级的聚合链路之外的链路的路由优先级为接收到的报文 打上不同的标记,根据报文的标记通过对应的链路进行报文转发。
本发明提供一种报文转发设备,应用于无阻塞接入网络,包括
发送单元,用于通过多条互为等价路由、相同高路由优先级的聚合链路进行报文 转发,当有作为等价路由的聚合链路的成员链路故障时,通过剩余高路由优先级的聚合链 路转发接收到的报文;当所述剩余高路由优先级的聚合链路的丢包率满足预设条件时,根 据报文的标记将报文分别通过所述剩余高路由优先级的聚合链路、和所述剩余高路由优先 级的聚合链路之外的链路发送;
统计单元,用于当有作为等价路由的聚合链路的成员链路故障时,统计所述剩余 高路由优先级的聚合链路转发报文的丢包率;
标记单元,用于当所述统计单元统计得到的丢包率满足预设条件时,根据预设策 略为接收到的报文打标记。
所述标记单元还用于统计接收到的报文所占用的带宽;当统计得到的带宽未超 过所述剩余高路由优先级的聚合链路的带宽时,为接收到的报文打上第一标记;
所述发送单元还用于将携带所述第一标记的报文通过所述剩余高路由优先级的 聚合链路发送,将没有携带所述第一标记的报文通过所述剩余高路由优先级的聚合链路之外的链路发送。
还包括状态设置单元,用于当有作为等价路由的聚合链路的成员链路故障时,将 故障的聚合链路的状态由活跃active设置为静止standby ;当发生故障的成员链路恢复正 常时,将所述故障的聚合链路的状态更新为active。
所述标记单元还用于在下行端口上下发聚合CAR配置限速,对于接收到的在所 述剩余高路由优先级的聚合链路的带宽范围内的报文打上第一标记。
所述标记单元还用于当所述剩余高路由优先级的聚合链路之外的链路具有不同 的路由优先级时,如果统计得到的带宽超过所述剩余高路由优先级的聚合链路的带宽,则 根据所述剩余高路由优先级的聚合链路之外的链路的路由优先级为接收到的报文打上不 同的标记;
所述发送单元还用于根据报文的标记通过与标记对应链路进行报文转发。
与现有技术相比,本发明至少具有以下优点
本发明中,当高路由优先级的聚合链路丢包率满足预设条件时,报文转发设备通 过高路由优先级的聚合链路之外的链路转发报文,从而避免由于所有流量通过高路由优先 级的聚合链路发送而导致的拥塞丢包问题,使数据中心业务正常。


图1是现有技术中无阻塞网络模型示意图2是现有技术中接入交换机连接汇聚交换机的聚合链路出现异常时的报文发 送示意图3是本发明提供的接入交换机连接汇聚交换机的聚合链路出现异常时的报文 发送示意图4是本发明提供的报文转发的方法的流程示意图5是本发明提供的接入交换机连接汇聚交换机的聚合链路出现异常时的另一 报文发送示意图6是本发明提供的报文转发设备的结构示意图。
具体实施方式
本发明的核心思想是报文转发设备在上行方向包括多条链路,报文转发设备从 下行方向接收的报文通过高优先级的上行链路发送,低优先级的上行链路被闲置。当由于 下行方向的流量过大导致上行丢包时,报文转发设备对下行方向的流量进行优先级划分, 通过高优先级的上行链路发送高优先级的报文,通过低优先级的上行链路发送低优先级的 报文。
为了清楚介绍本发明提供的报文转发的方法,下面通过具体应用场景举例说明该 方法。如图3所示,以该方法应用于无阻塞网络为例,其中报文转发设备为接入层交换机 Si。如图4所示,该方法包括以下步骤
步骤401,Sl根据上行端口的状态进行上行端口链路聚合,将P1/P2链路聚合,将 P3/P4链路聚合。
步骤402,Sl根据链路状态计算路由后发现P1/P2链路(即Pl和P2聚合链路)和P3/P4链路优先级相同,是等价路由,则通过P1/P2链路和P3/P4链路向S3和S4发送报文。
其中,Sl计算链路优先级主要考虑链路带宽、链路开销等因素,本发明中,P1/P2 链路和P3/P4链路带宽相同,优先级相同,构成等价路由,Sl使用P1/P2链路和P3/P4链路 进行负载分担。
步骤403,Sl确定P2链路故障后,将P1/P2聚合链路状态从Active变为Mandby, 后续从服务器接收的报文仅通过P3/P4链路传输。
P1/P2聚合链路作为逻辑链路,在设置其状态为Mandby后,依然可以通过其中的 物理链路Pl链路进行数据传输,但由于Pl链路带宽低于P3/P4链路,优先级较低,在P3/P4 链路正常时,Sl仅使用P3/P4链路传输报文。
步骤404,Sl根据端口丢包统计获知上行端口 P3和P4的丢包满足预设条件,确定 上行链路带宽不足,在下行端口上下发带宽限速配置,在限制带宽范围内的流量标记DSCP 为7 (最高优先级),在限制带宽范围外的流量标记DSCP为6 (低优先级)。
Sl设置端口丢包统计功能,检测上行端口 P3和P4的报文丢包率。当确定P3和 P4丢包,或者检测到报文丢包率大于阈值时,Sl确定上行链路带宽不足。Sl在下行端口上 下发聚合CAR (Committed Access Rate,约定接入速率)配置限速,对于进入Sl的流量打上 不同级别的流量标记。具体的,Sl下行端口接收到的报文进入报文处理芯片,报文处理芯 片根据聚合CAR配置对特定端口范围内进入的流量进行统计,根据统计结果为流量打上流 量标记。本发明实施例中,聚合CAR配置要求对所有下行端口进入的流量进行带宽限速,即 报文处理芯片对所有下行端口接收的流量进行统计,对限制带宽范围内的流量打上高优先 级标记,对限制带宽范围外的流量打上低优先级标记。
步骤405,Sl通过上行链路发送报文时,根据流量标记进行报文转发,通过P3/P4 链路传输DSCP为7的报文,通过Pl链路传输DSCP为6的报文。
Sl设置报文转发策略,将高优先级的报文通过高优先级的上行链路发送,将低优 先级的报文通过低优先级的上行链路发送。本发明实施例中,通过高优先级的P3/P4链路 传输DSCP为7的报文,通过低优先级的Pl链路传输DSCP为6的报文。
如果P2链路恢复正常,则该方法还可以包括
步骤406,Sl获知P2链路恢复正常,将P1/P2聚合链路状态从Mandby变为 Active。
步骤407,Sl删除之前在下行端口上下发的带宽限速配置。
需要说明,本发明提供的方法不仅适用于图3所示场景,对于3条以上链路聚合、 以及3条以上聚合链路的情况同样适用。如图5所示,接入层包括Al与A2交换机,汇聚层 包括Cl、C2、C3和C4交换机。Al将链路Pl 1、P12、P13和P14聚合形成聚合链路P1,将链 路P21-PM、P31-P34、P41-P44分别聚合形成聚合链路P2、P3和P4,每条聚合链路的带宽是 4*n,总的上行流量是m,当16*n时,上行流量正常发送。如果Al与Cl之间的链路Pll 异常,Al与C2之间的链路P21/P22异常,则Al与C1/C2之间的聚合链路从等价路由中删 除,造成8*n的带宽资源浪费。此时,当m > 8*n时流量会出现拥塞丢包。
本发明中,Al交换机检测到丢包发生时,在下行端口下发带宽限速配置,限速带宽 范围内的流量标记高优先级,限速带宽范围外的流量标记低优先级,高优先级的流量通过聚合链路P3和P4发送,低优先级的流量通过聚合链路Pl和P2发送。可选的,设置限速带 宽范围内的流量标记高优先级,限速带宽外的3*n带宽的流量标记次优先级,其余流量标 记低优先级,高优先级的流量通过聚合链路P3和P4发送,次优先级的流量通过聚合链路Pl 发送,低优先级的流量通过聚合链路P2发送。
通过采用本发明提供的方法,当高优先级的上行链路丢包满足预设条件时,报文 转发设备通过高优先级之外的上行链路发送报文,从而避免由于所有流量通过高优先级的 上行链路发送而导致的拥塞丢包问题,使数据中心业务正常。
基于与上述方法实施例相同或相似的技术构思,本发明还提供一种报文转发设 备,包括多条优先级不同的上行链路,如图6所示,该报文转发设备包括
发送单元11,用于通过多条互为等价路由、相同高路由优先级的聚合链路进行报 文转发,当有作为等价路由的聚合链路的成员链路故障时,通过剩余高路由优先级的聚合 链路转发接收到的报文;当所述剩余高路由优先级的聚合链路的丢包率满足预设条件时, 根据报文的标记将报文分别通过所述剩余高路由优先级的聚合链路、和所述剩余高路由优 先级的聚合链路之外的链路发送;
统计单元12,用于当有作为等价路由的聚合链路的成员链路故障时,统计所述剩 余高路由优先级的聚合链路转发报文的丢包率;
标记单元13,用于当所述统计单元12统计得到的丢包率满足预设条件时,根据预 设策略为接收到的报文打标记。
其中,标记单元13根据预设策略为接收到的报文打标记具体包括统计接收到的 报文所占用的带宽;当统计得到的带宽未超过所述剩余高路由优先级的聚合链路的带宽 时,为接收到的报文打上第一标记。相应的,发送单元11将携带所述第一标记的报文通过 所述剩余高路由优先级的聚合链路发送,将没有携带所述第一标记的报文通过所述剩余高 路由优先级的聚合链路之外的链路发送。具体的,所述标记单元13还用于在下行端口上 下发聚合CAR配置限速,对于接收到的在所述剩余高路由优先级的聚合链路的带宽范围内 的报文打上第一标记。该设备还可以包括配置删除单元15,用于在发生故障的聚合链路恢 复正常后,删除在下行端口上下发的聚合CAR配置。
该设备还包括状态设置单元14,用于当有作为等价路由的聚合链路的成员链路故 障时,将故障的聚合链路的状态由活跃active设置为静止standby ;当发生故障的成员链 路恢复正常时,将所述故障的聚合链路的状态更新为active。
该设备还可以包括路由优先级确定单元16,用于根据链路状态确定链路的路由优 先级,例如根据链路带宽确定链路的路由优先级,当聚合链路的成员链路故障时,聚合链路 的带宽降低,路由优先级确定单元16确定该聚合链路的路由优先级降低,当该聚合链路的 故障成员链路恢复正常后,聚合链路的带宽增加,路由优先级确定单元16确定该聚合链路 的路由优先级升高。本发明实施例中对于路有优先级的具体确定方式并不限制。
所述标记单元13还用于当所述剩余高路由优先级的聚合链路之外的链路具有 不同的路由优先级时,如果统计得到的带宽超过所述剩余高路由优先级的聚合链路的带 宽,则根据所述剩余高路由优先级的聚合链路之外的链路的路由优先级为接收到的报文打 上不同的标记;相应的,所述发送单元11还用于根据报文的标记通过与标记对应链路进 行转发。
通过采用本发明提供的报文转发设备,当高路由优先级的聚合链路丢包率满足预 设条件时,报文转发设备通过高路由优先级的聚合链路之外的链路转发报文,从而避免由 于所有流量通过高路由优先级的聚合链路发送而导致的拥塞丢包问题,使数据中心业务正堂巾ο
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助 软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更 佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的 部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若 干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发 明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流 程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分 布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上 述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领 域的技术人员能思之的变化都应落入本发明的保护范围。
权利要求
1.一种报文转发的方法,应用于无阻塞接入网络,报文转发设备通过多条互为等价路 由、相同高路由优先级的聚合链路进行报文转发,其特征在于,该方法包括当有作为等价路由的聚合链路的成员链路故障时,所述报文转发设备通过剩余高路由 优先级的聚合链路转发接收到的报文;所述报文转发设备统计所述剩余高路由优先级的聚合链路转发报文的丢包率;当所述丢包率满足预设条件时,所述报文转发设备根据预设策略为接收到的报文打标记;所述报文转发设备根据报文的标记将报文分别通过所述剩余高路由优先级的聚合链 路、和所述剩余高路由优先级的聚合链路之外的链路发送。
2.如权利要求1所述的方法,其特征在于,所述报文转发设备根据预设策略为接收到的报文打标记包括所述报文转发设备统计 接收到的报文所占用的带宽,并当统计得到的带宽未超过所述剩余高路由优先级的聚合链 路的带宽时,所述报文转发设备为接收到的报文打上第一标记;所述报文转发设备根据报文的标记将报文分别通过所述剩余高路由优先级的聚合链 路、和所述剩余高路由优先级的聚合链路之外的链路发送包括所述报文转发设备将携带 所述第一标记的报文通过所述剩余高路由优先级的聚合链路发送,将没有携带所述第一标 记的报文通过所述剩余高路由优先级的聚合链路之外的链路发送。
3.如权利要求2所述的方法,其特征在于,当有作为等价路由的聚合链路的成员链路故障时,所述报文转发设备通过剩余高路由 优先级的聚合链路转发接收到的报文包括当有作为等价路由的聚合链路的成员链路故障 时,所述报文转发设备将故障的聚合链路的状态由活跃active设置为静止standby,停止 通过该故障的聚合链路转发接收到的报文,通过该故障的聚合链路之外的高路由优先级的 聚合链路转发报文;当发生故障的成员链路恢复正常时,所述报文转发设备将所述故障的聚合链路的状态 更新为active,恢复通过该聚合链路转发报文。
4.如权利要求2所述的方法,其特征在于,所述报文转发设备统计接收到的报文所占 用的带宽,并当统计得到的带宽未超过所述剩余高路由优先级的聚合链路的带宽时,所述 报文转发设备为接收到的报文打上第一标记包括所述报文转发设备在下行端口上下发聚 合CAR配置限速,对于接收到的在所述剩余高路由优先级的聚合链路的带宽范围内的报文 打上第一标记。
5.如权利要求2或4所述的方法,其特征在于,当所述剩余高路由优先级的聚合链路之 外的链路具有不同的路由优先级时,还包括当统计得到的带宽超过所述剩余高路由优先级的聚合链路的带宽时,所述报文转发设 备根据所述剩余高路由优先级的聚合链路之外的链路的路由优先级为接收到的报文打上 不同的标记,根据报文的标记通过对应的链路进行报文转发。
6.一种报文转发设备,应用于无阻塞接入网络,其特征在于,包括发送单元,用于通过多条互为等价路由、相同高路由优先级的聚合链路进行报文转发, 当有作为等价路由的聚合链路的成员链路故障时,通过剩余高路由优先级的聚合链路转发 接收到的报文;当所述剩余高路由优先级的聚合链路的丢包率满足预设条件时,根据报文的标记将报文分别通过所述剩余高路由优先级的聚合链路、和所述剩余高路由优先级的聚 合链路之外的链路发送;统计单元,用于当有作为等价路由的聚合链路的成员链路故障时,统计所述剩余高路 由优先级的聚合链路转发报文的丢包率;标记单元,用于当所述统计单元统计得到的丢包率满足预设条件时,根据预设策略为 接收到的报文打标记。
7.如权利要求6所述的报文转发设备,其特征在于,所述标记单元还用于统计接收到的报文所占用的带宽;当统计得到的带宽未超过所 述剩余高路由优先级的聚合链路的带宽时,为接收到的报文打上第一标记;所述发送单元还用于将携带所述第一标记的报文通过所述剩余高路由优先级的聚合 链路发送,将没有携带所述第一标记的报文通过所述剩余高路由优先级的聚合链路之外的 链路发送。
8.如权利要求7所述的报文转发设备,其特征在于,还包括状态设置单元,用于当有作 为等价路由的聚合链路的成员链路故障时,将故障的聚合链路的状态由活跃active设置 为静止standby ;当发生故障的成员链路恢复正常时,将所述故障的聚合链路的状态更新 为 active。
9.如权利要求6所述的报文转发设备,其特征在于,所述标记单元还用于在下行端口 上下发聚合CAR配置限速,对于接收到的在所述剩余高路由优先级的聚合链路的带宽范围 内的报文打上第一标记。
10.如权利要求6或8所述的报文转发设备,其特征在于,所述标记单元还用于当所 述剩余高路由优先级的聚合链路之外的链路具有不同的路由优先级时,如果统计得到的带 宽超过所述剩余高路由优先级的聚合链路的带宽,则根据所述剩余高路由优先级的聚合链 路之外的链路的路由优先级为接收到的报文打上不同的标记;所述发送单元还用于根据报文的标记通过与标记对应链路进行报文转发。
全文摘要
本发明公开了一种报文转发的方法及设备,该方法包括当有作为等价路由的聚合链路的成员链路故障时,报文转发设备统计剩余高路由优先级的聚合链路转发报文的丢包率;当所述丢包率满足预设条件时,所述报文转发设备统计接收到的报文所占用的带宽,并当统计得到的带宽未超过所述剩余高路由优先级的聚合链路的带宽时,所述报文转发设备根据预设策略为接收到的报文打标记;所述报文转发设备根据报文的标记将报文分别通过所述剩余高路由优先级的聚合链路、和所述剩余高路由优先级的聚合链路之外的链路发送。本发明解决了由于流量全部通过高路由优先级的聚合链路转发导致的拥塞丢包问题。
文档编号H04L12/56GK102035747SQ20101060740
公开日2011年4月27日 申请日期2010年12月27日 优先权日2010年12月27日
发明者李蔚 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1