CN112104549A - 负载分担的实现方法及装置 - Google Patents
负载分担的实现方法及装置 Download PDFInfo
- Publication number
- CN112104549A CN112104549A CN202010790003.5A CN202010790003A CN112104549A CN 112104549 A CN112104549 A CN 112104549A CN 202010790003 A CN202010790003 A CN 202010790003A CN 112104549 A CN112104549 A CN 112104549A
- Authority
- CN
- China
- Prior art keywords
- equivalent
- link
- link bandwidth
- bandwidth information
- pbr
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种负载分担的实现方法及装置,该方法包括:接收用户输入的第一配置信息,该第一配置信息包括第一字段,该第一字段用于指示是否使能负载分担模式;当第一字段为第一值时,判断PBR模块是否使能非等值负载分担UCMP模式;如果PBR模块已使能UCMP模式,则获取多条等价链路的第一链路带宽信息,该第一链路带宽信息为每个出接口与对应的等价下一跳之间的链路的带宽;向驱动模块发送第二配置信息,该第二配置信息包括多个下一跳的IP地址以及多条等价链路的第一链路带宽信息,以使得驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据权重比生成实现负载分担的等价转发表,该权重比用于表征链路承载的流量比重。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种负载分担的实现方法及装置。
背景技术
策略路由(英文:Policy Based Routing,简称:PBR)是指一种依据用户制定的转发策略实现对IP报文进行转发的机制。PBR对于满足一定条件(例如,ACL规则、报文长度等)的IP报文,执行指定的转发操作。路由器接收到IP报文后,IP报文若与PBR匹配,路由器则不再依照本地转发表进行常规转发,路由器仅按照PBR对IP报文进行特殊转发。
目前,在路由器产品中,对于PBR可配置多个出接口,多个出接口共同实现等值负载分担(英文:Equal Cost Multiple Path,简称:ECMP)处理。但,ECMP处理在多路径负载分担环境中,将每条等价链路的带宽、时延、可靠性等信息作为同一权重来处理,如此,无法最大限度地利用链路带宽。尤其是在多条等价链路的带宽存在较大差异时,效果非常不理想。
如图1所示,图1为PBR通过多个出接口对应的链路实现ECMP处理示意图。在图1中,X、Y为路由器,X上配置PBR,A、B、C、D分别为X到达Y的四条等价链路。其中,A链路带宽为1G,B链路带宽为10G,C链路带宽为40G,D链路带宽为100G。根据配置在X上的PBR,将流量从X引至Y。当配置PBR实现ECMP处理时,一种实现方式为:每条链路按照1:1:1:1的权重承载流量,每条链路承载流量的范围很小,若流量超过4G则导致链路A丢包,无法实现ECMP,也浪费B、C、D链路的带宽。
发明内容
有鉴于此,本申请提供了一种负载分担的实现方法及装置,用以解决现有技术中PBR配置多个出接口实现ECMP处理时,由于多个出接口对应的链路带宽不同,导致链路带宽浪费的问题。
第一方面,本申请提供了一种负载分担的实现方法,所述方法应用于路由器包括的策略路由PBR模块,所述路由器已配置PBR,每条所述PBR包括多个出接口,与多个出接口中每个出接口对应的等价下一跳的IP地址,所述方法包括:
接收用户输入的第一配置信息,所述第一配置信息包括第一字段,所述第一字段用于指示是否使能负载分担模式;
当所述第一字段为第一值时,判断所述PBR模块是否使能非等值负载分担UCMP模式;
如果所述PBR模块已使能所述UCMP模式,则获取多条等价链路的第一链路带宽信息,所述第一链路带宽信息为所述每个出接口与对应的等价下一跳之间的链路的带宽;
向驱动模块发送第二配置信息,所述第二配置信息包括多个下一跳的IP地址以及所述多条等价链路的第一链路带宽信息,以使得所述驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据所述权重比生成实现负载分担的等价转发表,所述权重比用于表征所述链路承载的流量比重。
第二方面,本申请提供了一种负载分担的实现装置,所述装置应用于路由器包括的策略路由PBR模块,所述路由器已配置PBR,每条所述PBR包括多个出接口,与多个出接口中每个出接口对应的等价下一跳的IP地址,所述装置包括:
接收单元,用于接收用户输入的第一配置信息,所述第一配置信息包括第一字段,所述第一字段用于指示是否使能负载分担模式;
第一判断单元,用于当所述第一字段为第一值时,判断所述PBR模块是否使能非等值负载分担UCMP模式;
获取单元,用于如果所述PBR模块已使能所述UCMP模式,则获取多条等价链路的第一链路带宽信息,所述第一链路带宽信息为所述每个出接口与对应的等价下一跳之间的链路的带宽;
发送单元,用于向驱动模块发送第二配置信息,所述第二配置信息包括多个下一跳的IP地址以及所述多条等价链路的第一链路带宽信息,以使得所述驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据所述权重比生成实现负载分担的等价转发表,所述权重比用于表征所述链路承载的流量比重。
第三方面,本申请提供了一种网络设备,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行指令,处理器被机器可执行指令促使执行本申请第一方面所提供的方法。
因此,通过应用本申请提供的负载分担的实现方法及装置,PBR模块接收用户输入的包括第一字段的第一配置信息。当第一字段为第一值时,PBR模块判断PBR模块是否使能UCMP模式。在PBR模块已使能所述UCMP模式的情况下,PBR模块获取多条等价链路的第一链路带宽信息,该第一链路带宽信息为每个出接口与对应的等价下一跳之间的链路的带宽。PBR模块向驱动模块发送第二配置信息,其中,该第二配置信息包括多个下一跳的IP地址以及多条等价链路的第一链路带宽信息,以使得驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据权重比生成实现负载分担的等价转发表。
由于PBR模块获取多个下一跳的IP地址以及多条等价链路的第一链路带宽信息,并将上述信息发送至驱动模块,使得驱动模块计算出链路的权重比,并根据权重比生成等价转发表。解决了现有技术中,PBR配置多个出接口实现ECMP处理时,由于多个出接口对应的链路带宽不同,导致链路带宽浪费的问题。同时,也实现了在PBR中设置多个等价下一跳,多条等价链路之间的负载分担。
附图说明
图1为PBR通过多个出接口对应的链路实现ECMP处理示意图;
图2为本申请实施例提供的一种负载分担的实现方法的流程图;
图3为本申请实施例提供的另一种负载分担的实现方法的流程图;
图4为本申请实施例提供的一种负载分担的实现装置结构图;
图5为本申请实施例提供的一种网络设备硬件结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施例并不代表与本申请相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
下面对本申请实施例提供的负载分担的实现方法进行详细地说明。参见图2,图2为本申请实施例提供的负载分担的实现方法的流程图。该方法应用于路由器包括的PBR模块,本申请实施例提供的负载分担的实现方法可包括如下所示步骤。
步骤210、接收用户输入的第一配置信息,所述第一配置信息包括第一字段,所述第一字段用于指示是否使能负载分担模式。
具体地,用户向PBR模块下发第一配置信息,该第一配置信息包括用户配置的PBR。PBR模块接收到第一配置信息后,从中获取用户配置的PBR,并在本地配置PBR。
其中,每条PBR包括匹配规则以及执行动作。例如,匹配规则可具体为ACL规则、报文长度等;执行动作可具体为设置报文的下一跳、出接口、缺省下一跳和缺省出接口等。
本申请实施例中,配置的PBR可用于实现负载分担。即,将满足匹配规则的IP报文,通过PBR中设置的多个出接口转发至与每个出接口对应的等价下一跳中进行处理。
本步骤中,配置的PBR包括多个出接口,与多个出接口中每个出接口对应的等价下一跳的IP地址。
进一步地,第一配置信息还包括第一字段。PBR模块在本地配置PBR后,还从第一配置信息中获取第一字段。该第一字段用于指示PBR模块是否使能负载分担模式。
该第一字段可具体为1个比特(bit)位,通过该bit的值指示PBR模块是否使能负载分担模式。
步骤220、当所述第一字段为第一值时,判断所述PBR模块是否使能非等值负载分担UCMP模式。
具体地,PBR模块从第一配置信息中获取到第一字段后,识别该第一字段的值,也即是,PBR模块识别表征第一字段的bit的值。
当该bit的值为第一值时,PBR模块判断自身是否使能UCMP模式。UCMP模式是指若到达目的端存在多条带宽不同但优先级相同的链路,则流量会根据带宽按比例分担到每条链路上。
步骤230、如果所述PBR模块已使能所述UCMP模式,则获取多条等价链路的第一链路带宽信息,所述第一链路带宽信息为所述每个出接口与对应的等价下一跳之间的链路的带宽。
具体地,根据步骤220的判断,如果PBR模块已使能UCMP模式,则PBR模块获取多条等价链路的第一链路带宽信息。其中,该第一链路带宽信息为每个出接口与对应的等价下一跳之间的链路的带宽。
在一个例子中,PBR中包括4个出接口,分别为出接口A、出接口B、出接口C、出接口D。PBR中还包括与每个出接口对应的等价下一跳的IP地址,分别为等价下一跳A’、等价下一跳B’、等价下一跳C’、等价下一跳D’。
其中,出接口A与等价下一跳A’对应,出接口A与等价下一跳A’之间的链路为第一链路。也即是从出接口A转发的IP报文通过第一链路到达A’。同理,出接口B与等价下一跳B’之间的链路为第二链路。出接口C与等价下一跳C’之间的链路为第三链路。出接口D与等价下一跳D’之间的链路为第四链路。各链路之间互为等价链路。
PBR模块获取每条链路的链路带宽信息,在本申请实施例中,每条链路的链路带宽信息统称为第一链路带宽信息。
需要说明的是,链路带宽信息存储在PBR模块本地。PBR模块可通过一个或多个表格的形式,将出接口、等价下一跳、链路带宽信息进行存储。链路带宽信息可在路由器规划本地接口的规格、属性时配置。例如,出接口A设置为以太口、带宽配置为20G。
步骤240、向驱动模块发送第二配置信息,所述第二配置信息包括所述每个下一跳的IP地址以及所述多条等价链路的第一链路带宽信息,以使得所述驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据所述权重比生成实现负载分担的等价转发表,所述权重比用于表征所述链路承载的流量比重。
具体地,PBR模块获取每条链路的链路带宽信息后,PBR模块生成第二配置信息。该第二配置信息包括每个下一跳的IP地址以及多条等价链路的第一链路带宽信息。
PBR模块向驱动模块发送第二配置信息。驱动模块接收到第二配置信息后,从中获取多个下一跳的IP地址以及多条等价链路的第一链路带宽信息。
驱动模块调用一算法函数(例如,算法函数IPUC_ConvertWeight(),通过该算法函数计算每个第一链路带宽信息对应的链路的权重比。该权重比用于表征该链路承载的流量比重。
根据计算出的权重比,驱动模块生成实现负载分担的等价转发表。在一个例子中,存在4条等价链路,驱动模块计算出4条等价链路的权重比为1:1:1:1。则此时,驱动模块生成等价转发表,后续当IP报文到达路由器且与PBR匹配时,转发芯片根据等价转发表,实现4条等价链路的ECMP处理。也即是,4条等价链路承载相同比重的流量。
在另一个例子中,存在4条等价链路,驱动模块计算出4条等价链路的权重比为1:2:3:4。则此时,驱动模块生成等价转发表,后续当IP报文到达路由器且与PBR匹配时,转发芯片根据等价转发表,实现4条等价链路的UCMP处理。也即是,4条等价链路承载不同比重的流量。
因此,通过应用本申请提供的负载分担的实现方法,PBR模块接收用户输入的包括第一字段的第一配置信息。当第一字段为第一值时,PBR模块判断PBR模块是否使能UCMP模式。在PBR模块已使能所述UCMP模式的情况下,PBR模块获取多条等价链路的第一链路带宽信息,该第一链路带宽信息为每个出接口与对应的等价下一跳之间的链路的带宽。PBR模块向驱动模块发送第二配置信息,其中,该第二配置信息包括多个下一跳的IP地址以及多条等价链路的第一链路带宽信息,以使得驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据权重比生成实现负载分担的等价转发表。
由于PBR模块获取多个下一跳的IP地址以及多条等价链路的第一链路带宽信息,并将上述信息发送至驱动模块,使得驱动模块计算出链路的权重比,并根据权重比生成等价转发表。解决了现有技术中,PBR配置多个出接口实现ECMP处理时,由于多个出接口对应的链路带宽不同,导致链路带宽浪费的问题。同时,也实现了在PBR中设置多个等价下一跳,多条等价链路之间的负载分担。
可选地,在本申请实施例中,还包括PBR模块判断出第一值不为第一值时,PBR模块所执行的过程。
具体地,PBR识别表征第一字段的bit的值。当该bit的值不为第一值时,PBR模块直接获取多条等价链路的第一链路带宽信息。PBR模块将多条等价链路的第一链路带宽信息更新为默认值。该默认值具体为无效值。
PBR模块生成第三配置信息,该第三配置信息包括每个下一跳的IP地址以及多条等价链路的第一链路带宽信息。
PBR模块向驱动模块发送第三配置信息。驱动模块接收到第三配置信息后,从中获取多个下一跳的IP地址以及多条等价链路的第一链路带宽信息。
驱动模块调用一算法函数(例如,算法函数IPUC_ConvertWeight(),通过该算法函数计算每个第一链路带宽信息对应的链路的权重比。该权重比用于表征该链路承载的流量比重。
根据计算出的权重比,驱动模块生成实现负载分担的等价转发表。
可选地,在本申请实施例中,还包括PBR模块判断出自身未使能UCMP模式时,PBR模块所执行的过程。
具体地,根据步骤220的判断,如果PBR模块未使能UCMP模式,则PBR模块获取多条等价链路的第一链路带宽信息。PBR模块将多条等价链路的第一链路带宽信息更新为默认值。该默认值具体为无效值。
BR模块生成第四配置信息,该第四配置信息包括每个下一跳的IP地址以及多条等价链路的第一链路带宽信息。
PBR模块向驱动模块发送第四配置信息。驱动模块接收到第四配置信息后,从中获取多个下一跳的IP地址以及多条等价链路的第一链路带宽信息。
驱动模块调用一算法函数(例如,算法函数IPUC_ConvertWeight(),通过该算法函数计算每个第一链路带宽信息对应的链路的权重比。该权重比用于表征该链路承载的流量比重。
根据计算出的权重比,驱动模块生成实现负载分担的等价转发表。
可选地,在本申请实施例中,PBR模块周期性检查每个下一跳是否为可达下一跳以及多条等价链路的第一链路带宽信息是否变更。通过前述检查,PBR模块重新更新PBR。
具体地,PBR模块周期性检查每个下一跳是否为可达下一跳以及多条等价链路的第一链路带宽信息是否变更。当每个下一跳变更为不可达或者多条等价链路的第一链路带宽信息已变更(例如,链路带宽增加,或者链路带宽缩小),则PBR模块再次判断第一字段是否为第一值。
如果第一字段为第一值,则PBR模块再次执行步骤220-步骤240的过程,在此不再复述。
如果第一字段不为第一值,则PBR模块再次执行前述可选地步骤的过程,在此不再复述。
下面通过具体示例对本申请实施例提供的负载分担的实现方法进行详细说明。如图3所示,图3为本申请实施例提供的另一种负载分担的实现方法的流程图。具体包括如下步骤:
步骤300、PBR模块接收用户输入的第一配置信息。
步骤301、PBR模块判断第一字段是否为第一值。
步骤302、如果第一字段为第一值,则PBR模块判断自身是否使能UCMP模式。
具体地,步骤300-步骤302与前述实施例中步骤210-步骤220的过程相同,在此不再复述。
步骤303、如果第一字段不为第一值,则PBR模块获取多条等价链路的第一链路带宽信息,并将第一链路带宽信息更新为默认值。
具体地,当第一字段不为第一值时,PBR模块直接获取多条等价链路的第一链路带宽信息。PBR模块将多条等价链路的第一链路带宽信息更新为默认值,并执行步骤306。
其中,该默认值具体为无效值。
步骤304、如果PBR模块已使能UCMP模式,则PBR模块获取多条等价链路的第一链路带宽信息。
具体地,步骤304与前述实施例中步骤230的过程相同,在此不再复述。
步骤305、如果PBR模块未使能UCMP模式,则PBR模块获取多条等价链路的第一链路带宽信息,并将第一链路带宽信息更新为默认值。
具体地,如果PBR模块未使能UCMP模式,则PBR模块获取多条等价链路的第一链路带宽信息。PBR模块将多条等价链路的第一链路带宽信息更新为默认值,并执行步骤306。
其中,该默认值具体为无效值。
步骤306、PBR模块向驱动模块发送第二配置信息。
具体地,PBR模块获取每条链路的链路带宽信息后,PBR模块生成第二配置信息。该第二配置信息包括每个下一跳的IP地址以及多条等价链路的第一链路带宽信息。
PBR模块向驱动模块发送第二配置信息。
步骤307、驱动模块计算每个第一链路带宽信息对应的链路的权重比。
具体地,驱动模块接收到第二配置信息后,从中获取多个下一跳的IP地址以及多条等价链路的第一链路带宽信息。
驱动模块调用一算法函数(例如,算法函数IPUC_ConvertWeight(),通过该算法函数计算每个第一链路带宽信息对应的链路的权重比。该权重比用于表征该链路承载的流量比重。
步骤308、驱动模块根据权重比生成实现负载分担的等价转发表。
具体地,根据计算出的权重比,驱动模块生成实现负载分担的等价转发表。在一个例子中,存在4条等价链路,驱动模块计算出4条等价链路的权重比为1:1:1:1。则此时,驱动模块生成等价转发表,后续当IP报文到达路由器且与PBR匹配时,转发芯片根据等价转发表,实现4条等价链路的ECMP处理。也即是,4条等价链路承载相同比重的流量。
在另一个例子中,存在4条等价链路,驱动模块计算出4条等价链路的权重比为1:2:3:4。则此时,驱动模块生成等价转发表,后续当IP报文到达路由器且与PBR匹配时,转发芯片根据等价转发表,实现4条等价链路的UCMP处理。也即是,4条等价链路承载不同比重的流量。
步骤309、周期性检查每个下一跳是否为可达下一跳以及多条等价链路的第一链路带宽信息是否变更。
具体地,PBR模块周期性检查每个下一跳是否为可达下一跳以及多条等价链路的第一链路带宽信息是否变更。当每个下一跳变更为不可达或者多条等价链路的第一链路带宽信息已变更(例如,链路带宽增加,或者链路带宽缩小),则PBR模块再次执行前述步骤301-步骤308。
基于同一发明构思,本申请实施例还提供了与上述负载分担的实现方法对应的负载分担的实现装置。参见图4,图4为本申请实施例提供的负载分担的实现装置结构图,该装置应用于路由器包括的策略路由PBR模块,所述路由器已配置PBR,每条所述PBR包括多个出接口,与多个出接口中每个出接口对应的等价下一跳的IP地址,所述装置包括:
接收单元410,用于接收用户输入的第一配置信息,所述第一配置信息包括第一字段,所述第一字段用于指示是否使能负载分担模式;
第一判断单元420,用于当所述第一字段为第一值时,判断所述PBR模块是否使能非等值负载分担UCMP模式;
获取单元430,用于如果所述PBR模块已使能所述UCMP模式,则获取多条等价链路的第一链路带宽信息,所述第一链路带宽信息为所述每个出接口与对应的等价下一跳之间的链路的带宽;
发送单元440,用于向驱动模块发送第二配置信息,所述第二配置信息包括多个下一跳的IP地址以及所述多条等价链路的第一链路带宽信息,以使得所述驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据所述权重比生成实现负载分担的等价转发表,所述权重比用于表征所述链路承载的流量比重。
可选地,所述获取单元430还用于,当所述第一值不为所述第一值时,获取所述多条等价链路的第一链路带宽信息;
所述装置还包括:更新单元(图中未示出),用于将所述多条等价链路的第一链路带宽信息更新为默认值;
所述发送单元440还用于,向所述驱动模块发送第三配置信息。
可选地,所述获取单元430还用于,如果所述路由器未使能所述UCMP模式,则获取所述多条等价链路的第一链路带宽信息;
所述装置还包括:更新单元(图中未示出),用于将所述多条等价链路的第一链路带宽信息更新为默认值;
所述发送单元440还用于,向所述驱动模块发送第四配置信息。
可选地,所述装置还包括:检查单元(图中未示出),用于周期性检查所述每个下一跳是否为可达下一跳以及所述多条等价链路的第一链路带宽信息是否变更;
第二判断单元(图中未示出),用于当所述每个下一跳不可达或者所述多条等价链路的第一链路带宽信息已变更,则判断所述第一字段是否为第一值。
可选地,所述第三/第四配置信息包括多个下一跳的IP地址以及所述多条等价链路的第一链路带宽信息,以使得所述驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据所述权重比生成实现负载分担的等价转发表,所述权重比用于表征所对应的链路承载的流量比重。
因此,通过应用本申请提供的负载分担的实现装置,该装置接收用户输入的包括第一字段的第一配置信息。当第一字段为第一值时,该装置判断PBR模块是否使能UCMP模式。在PBR模块已使能所述UCMP模式的情况下,该装置获取多条等价链路的第一链路带宽信息,该第一链路带宽信息为每个出接口与对应的等价下一跳之间的链路的带宽。该装置向驱动模块发送第二配置信息,其中,该第二配置信息包括多个下一跳的IP地址以及多条等价链路的第一链路带宽信息,以使得驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据权重比生成实现负载分担的等价转发表。
由于PBR模块获取多个下一跳的IP地址以及多条等价链路的第一链路带宽信息,并将上述信息发送至驱动模块,使得驱动模块计算出链路的权重比,并根据权重比生成等价转发表。解决了现有技术中,PBR配置多个出接口实现ECMP处理时,由于多个出接口对应的链路带宽不同,导致链路带宽浪费的问题。同时,也实现了在PBR中设置多个等价下一跳,多条等价链路之间的负载分担。
基于同一发明构思,本申请实施例还提供了一种网络设备,如图5所示,包括处理器510、收发器520和机器可读存储介质530,机器可读存储介质530存储有能够被处理器510执行的机器可执行指令,处理器510被机器可执行指令促使执行本申请实施例所提供的负载分担的实现方法。前述图4所示的负载分担的实现装置,可采用如图5所示的网络设备硬件结构实现。
上述计算机可读存储介质530可以包括随机存取存储器(英文:Random AccessMemory,简称:RAM),也可以包括非易失性存储器(英文:Non-volatile Memory,简称:NVM),例如至少一个磁盘存储器。可选的,计算机可读存储介质530还可以是至少一个位于远离前述处理器510的存储装置。
上述处理器510可以是通用处理器,包括中央处理器(英文:Central ProcessingUnit,简称:CPU)、网络处理器(英文:Network Processor,简称:NP)等;还可以是数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:ApplicationSpecific Integrated Circuit,简称:ASIC)、现场可编程门阵列(英文:Field-Programmable Gate Array,简称:FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例中,处理器510通过读取机器可读存储介质530中存储的机器可执行指令,被机器可执行指令促使能够实现处理器510自身以及调用收发器520执行前述本申请实施例描述的负载分担的实现方法。
另外,本申请实施例提供了一种机器可读存储介质530,机器可读存储介质530存储有机器可执行指令,在被处理器510调用和执行时,机器可执行指令促使处理器510自身以及调用收发器520执行前述本申请实施例描述的负载分担的实现方法。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
对于负载分担的实现装置以及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种负载分担的实现方法,其特征在于,所述方法应用于路由器包括的策略路由PBR模块,所述路由器已配置PBR,每条所述PBR包括多个出接口,与多个出接口中每个出接口对应的等价下一跳的IP地址,所述方法包括:
接收用户输入的第一配置信息,所述第一配置信息包括第一字段,所述第一字段用于指示是否使能负载分担模式;
当所述第一字段为第一值时,判断所述PBR模块是否使能非等值负载分担UCMP模式;
如果所述PBR模块已使能所述UCMP模式,则获取多条等价链路的第一链路带宽信息,所述第一链路带宽信息为所述每个出接口与对应的等价下一跳之间的链路的带宽;
向驱动模块发送第二配置信息,所述第二配置信息包括多个下一跳的IP地址以及所述多条等价链路的第一链路带宽信息,以使得所述驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据所述权重比生成实现负载分担的等价转发表,所述权重比用于表征所述链路承载的流量比重。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述第一值不为所述第一值时,获取所述多条等价链路的第一链路带宽信息;
将所述多条等价链路的第一链路带宽信息更新为默认值;
向所述驱动模块发送第三配置信息。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果所述PBR模块未使能所述UCMP模式,则获取所述多条等价链路的第一链路带宽信息;
将所述多条等价链路的第一链路带宽信息更新为默认值;
向所述驱动模块发送第四配置信息。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述接收用户输入的第一配置信息之后,所述方法还包括:
周期性检查所述每个下一跳是否为可达下一跳以及所述多条等价链路的第一链路带宽信息是否变更;
当所述每个下一跳不可达或者所述多条等价链路的第一链路带宽信息已变更,则判断所述第一字段是否为第一值。
5.根据权利要求2或3任一项所述的方法,其特征在于,所述第三/第四配置信息包括多个下一跳的IP地址以及所述多条等价链路的第一链路带宽信息,以使得所述驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据所述权重比生成实现负载分担的等价转发表,所述权重比用于表征所对应的链路承载的流量比重。
6.一种负载分担的实现装置,其特征在于,所述装置应用于路由器包括的策略路由PBR模块,所述路由器已配置PBR,每条所述PBR包括多个出接口,与多个出接口中每个出接口对应的等价下一跳的IP地址,所述装置包括:
接收单元,用于接收用户输入的第一配置信息,所述第一配置信息包括第一字段,所述第一字段用于指示是否使能负载分担模式;
第一判断单元,用于当所述第一字段为第一值时,判断所述PBR模块是否使能非等值负载分担UCMP模式;
获取单元,用于如果所述PBR模块已使能所述UCMP模式,则获取多条等价链路的第一链路带宽信息,所述第一链路带宽信息为所述每个出接口与对应的等价下一跳之间的链路的带宽;
发送单元,用于向驱动模块发送第二配置信息,所述第二配置信息包括多个下一跳的IP地址以及所述多条等价链路的第一链路带宽信息,以使得所述驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据所述权重比生成实现负载分担的等价转发表,所述权重比用于表征所述链路承载的流量比重。
7.根据权利要求6所述的装置,其特征在于,所述获取单元还用于,当所述第一值不为所述第一值时,获取所述多条等价链路的第一链路带宽信息;
所述装置还包括:更新单元,用于将所述多条等价链路的第一链路带宽信息更新为默认值;
所述发送单元还用于,向所述驱动模块发送第三配置信息。
8.根据权利要求6所述的装置,其特征在于,所述获取单元还用于,如果所述路由器未使能所述UCMP模式,则获取所述多条等价链路的第一链路带宽信息;
所述装置还包括:更新单元,用于将所述多条等价链路的第一链路带宽信息更新为默认值;
所述发送单元还用于,向所述驱动模块发送第四配置信息。
9.根据权利要求6-8任一项所述的装置,其特征在于,所述装置还包括:
检查单元,用于周期性检查所述每个下一跳是否为可达下一跳以及所述多条等价链路的第一链路带宽信息是否变更;
第二判断单元,用于当所述每个下一跳不可达或者所述多条等价链路的第一链路带宽信息已变更,则判断所述第一字段是否为第一值。
10.根据权利要求7或8任一项所述的装置,其特征在于,所述第三/第四配置信息包括多个下一跳的IP地址以及所述多条等价链路的第一链路带宽信息,以使得所述驱动模块计算每个第一链路带宽信息对应的链路的权重比,并根据所述权重比生成实现负载分担的等价转发表,所述权重比用于表征所对应的链路承载的流量比重。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010790003.5A CN112104549A (zh) | 2020-08-07 | 2020-08-07 | 负载分担的实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010790003.5A CN112104549A (zh) | 2020-08-07 | 2020-08-07 | 负载分担的实现方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112104549A true CN112104549A (zh) | 2020-12-18 |
Family
ID=73752737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010790003.5A Withdrawn CN112104549A (zh) | 2020-08-07 | 2020-08-07 | 负载分担的实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112104549A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113452620A (zh) * | 2021-06-22 | 2021-09-28 | 新华三信息安全技术有限公司 | 一种负载分担方法及装置 |
CN113660160A (zh) * | 2021-08-20 | 2021-11-16 | 烽火通信科技股份有限公司 | 一种ucmp负载分担的方法和装置 |
CN114401222A (zh) * | 2021-12-28 | 2022-04-26 | 网络通信与安全紫金山实验室 | 一种基于策略路由的数据转发方法、装置及存储介质 |
CN115022229A (zh) * | 2022-07-15 | 2022-09-06 | 成都安恒信息技术有限公司 | 一种基于策略路由的负载分担计算方法 |
-
2020
- 2020-08-07 CN CN202010790003.5A patent/CN112104549A/zh not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113452620A (zh) * | 2021-06-22 | 2021-09-28 | 新华三信息安全技术有限公司 | 一种负载分担方法及装置 |
CN113660160A (zh) * | 2021-08-20 | 2021-11-16 | 烽火通信科技股份有限公司 | 一种ucmp负载分担的方法和装置 |
CN114401222A (zh) * | 2021-12-28 | 2022-04-26 | 网络通信与安全紫金山实验室 | 一种基于策略路由的数据转发方法、装置及存储介质 |
CN114401222B (zh) * | 2021-12-28 | 2024-03-26 | 网络通信与安全紫金山实验室 | 一种基于策略路由的数据转发方法、装置及存储介质 |
CN115022229A (zh) * | 2022-07-15 | 2022-09-06 | 成都安恒信息技术有限公司 | 一种基于策略路由的负载分担计算方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112104549A (zh) | 负载分担的实现方法及装置 | |
EP3122004B1 (en) | Traffic switching method, device, and system | |
US10567345B2 (en) | Verifying firewall filter entries using rules associated with an access control list (ACL) template | |
US7623533B2 (en) | Switch meshing using multiple directional spanning trees | |
US9559985B1 (en) | Weighted cost multipath routing with intra-node port weights and inter-node port weights | |
US9473408B1 (en) | Shortest first longer next routing with congestion reduction | |
CN103155500A (zh) | 用于网络业务流的无状态负载平衡的方法、系统和计算机可读介质 | |
CN105337858A (zh) | 虚拟路由器集群、数据转发方法和装置 | |
CN105471609A (zh) | 一种用于配置业务的方法和装置 | |
CN107154896B (zh) | 一种数据传输方法以及转发设备 | |
US10291518B2 (en) | Managing flow table entries for express packet processing based on packet priority or quality of service | |
WO2023050874A1 (zh) | 报文转发方法及装置、蜻蜓网络 | |
CN108512755A (zh) | 一种路由信息的学习方法及装置 | |
US11032185B2 (en) | Communication system, edge node, communication method and program | |
US11757747B2 (en) | Preventing traffic outages during address resolution protocol (ARP) storms | |
CN102158422A (zh) | 一种用于二层环网中的报文转发的方法和设备 | |
JP2016201802A (ja) | 通信ネットワークのデータパケットのルーティング | |
WO2022143597A1 (zh) | 一种业务链的转发路径确定方法及通信装置 | |
JP6801075B2 (ja) | データ・パケットのパス情報を得る方法及びデバイス | |
Usman et al. | Review of interior gateway routing protocols | |
US11411866B1 (en) | Supporting multiple segment routing traffic engineering algorithms | |
US20230261941A1 (en) | Configuration of a network using a flex-algorithm routing mechanism | |
US11489767B1 (en) | Interspersing network traffic across members of a container label-switched path | |
US11671322B2 (en) | Configuration of a network using a flex-algorithm routing mechanism | |
US20230188570A1 (en) | Using zones based on entry points and exit points of a network device to apply a security policy to network traffic |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20201218 |
|
WW01 | Invention patent application withdrawn after publication |