CN111740917A - 一种报文转发方法和装置 - Google Patents
一种报文转发方法和装置 Download PDFInfo
- Publication number
- CN111740917A CN111740917A CN202010206990.XA CN202010206990A CN111740917A CN 111740917 A CN111740917 A CN 111740917A CN 202010206990 A CN202010206990 A CN 202010206990A CN 111740917 A CN111740917 A CN 111740917A
- Authority
- CN
- China
- Prior art keywords
- interface
- member interface
- forwarding
- main member
- message
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000002776 aggregation Effects 0.000 claims description 5
- 238000004220 aggregation Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 235000008694 Humulus lupulus Nutrition 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 241000764238 Isis Species 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- 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
-
- 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/122—Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种报文转发方法和装置,所述方法包括:根据报文的转发信息确定转发所述报文的出接口;若确定所述出接口对应主成员接口和备成员接口,则选择一个所述主成员接口;确定选择的所述主成员接口是否发生拥塞;若确定选择的所述主成员接口发生拥塞,则选择一个所述备成员接口转发所述报文。该方法能够在实现负载均衡的前提下,提高报文转发效率。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种报文转发方法和装置。
背景技术
当前互联网络承载的流量越来越多元化,负载愈发沉重,某条链路的突发故障,对业务的影响也越来越大。针对一些骨干节点,可以通过提供多条链路,来保障网络的冗余性,持续性,稳定性。当某条链路中断或者发生其他一些故障时,冗余链路保证了流量的快速切换,实现链路级别的高可用。多条冗余链路的接入,也提供了流量的负载均衡。
在实现本申请的过程中,发明人发现多条冗余链路只是将不同的流分散到不同的路径上进行转发,并不会感知网络拥塞。某些大流量可能都被分布到同一条链路上,引起该路径拥塞,这时流量并不会自动切换到别的路径,后续的流量仍会分布到该链路上,加剧了路径的拥塞,大大降低报文转发效率,并可能产生丢包问题。
发明内容
有鉴于此,本申请提供一种报文转发方法和装置,能够在实现负载均衡的前提下,提高报文转发效率。
为解决上述技术问题,本申请的技术方案是这样实现的:
在本申请的一个实施例中,提供了一种报文转发方法,所述方法包括:
根据报文的转发信息确定转发所述报文的出接口;
若确定所述出接口对应主成员接口和备成员接口,则选择一个所述主成员接口;
确定选择的所述主成员接口是否发生拥塞;
若确定选择的所述主成员接口发生拥塞,则选择一个所述备成员接口转发所述报文。
在本申请的另一个实施例中,提供了一种报文转发装置,所述装置包括:第一确定单元、第二确定单元、第一选择单元、第三确定单元、第二选择单元和转发单元;
所述第一确定单元,用于根据报文的转发信息确定转发所述报文的出接口;
所述第二确定单元,用于确定所述出接口是否对应主成员接口和备成员接口;
所述第一选择单元,用于若所述确定单元确定所述出接口对应主成员接口和备成员接口,则选择一个所述主成员接口;
所述第二确定单元,用于确定所述第一选择单元选择的所述主成员接口是否发生拥塞;
所述第二选择单元,用于若所述第二确定单元确定选择的所述主成员接口发生拥塞,则选择一个所述备成员接口;
所述转发单元,用于使用所述第二选择单元选择的所述备成员接口转发所述报文。
在本申请的另一个实施例中,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如所述报文转发方法的步骤。
在本申请的另一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述报文转发方法的步骤。
由上面的技术方案可见,上述实施例中将一个出接口对应的多成员接口划分为主备两个角色,优先在主成员接口中选择转发接口,在选择的主成员接口拥塞时,再在备成员接口中选择一个转发接口转发待转发报文,该方案对选择的转发接口拥塞时能够二次选择转发接口,能够在负载均衡转发报文的基础上提高报文的转发效率,避免丢包等情况的发生。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为LAG链路聚合的网络系统示意图;
图2为创建ECMP组的网络系统示意图;
图3为本申请实施例一中报文转发流程示意图;
图4为本申请实施例二中报文转发流程示意图;
图5为本申请实施例中应用于上述技术的装置结构示意图;
图6为本发明实施例提供的电子设备的实体结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。
下面以具体实施例对本发明的技术方案进行详细说明。下面几个具体实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
本申请实施例中提供了一种报文转发方法,应用于网络设备上;所述网络设备支持多个物理接口作为成员接口加入到一个出接口中。
本申请实施例中的出接口可以为聚合链路组(Link Aggregation Group,LAG),也可以为一个等价路由(Equal-CostMultipathRouting,ECMP)组;但不限于此,针对一个出接口对应多个作为成员接口的物理接口的实现本申请实施例均适用。
其中,LAG技术是将两台网络设备之间的多条物理链路当作是一条逻辑链路来处理,当其中一条链路发生故障时,流量会自动切换到别的链路,自动实现链路的冗余。多条物理链路也提供了负载均衡功能,LAG链路支持的带宽是其聚合的所有物理链路带宽的总和。
本申请实施例中在将物理接口加入到LAG时,指定所述物理接口的角色,现有实现是不指定角色的;这里指定的角色包括:主成员接口和备成员接口;即将一个物理接口加入到LAG作为LAG的成员接口时,指定该物理接口为主成员接口,或备成员接口。
针对一个LAG,其中,主成员接口为1个或多个,备成员接口为1个或多个。
参见图1,图1为LAG链路聚合的网络系统示意图。图1中网络设备A和网络设备B之间有6条物理链路(L1、L2、L3、L4、L5、L6)可达,网络设备A和网络设备B对应的物理接口为接口1、接口2、接口3、接口4、接口5和接口6;可以聚合成1个LAG,将接口1到接口6加入到LAG时,指定各接口的角色,如指定接口1到接口4为主成员接口,指定接口5和接口6为备成员接口。
本申请实施例中无论主成员接口还是备成员接口,都可以从对端接收报文,也就是说在接收方向上不区分接口的角色(从芯片角度讲,报文都是从该LAG对应的接口收到的,LAG对应的接口会作为入端口进行芯片流水线的一些检查,以及后续的处理);
在发送方向上,本申请实施例会区分成员接口的角色,至于在发送报文时,如何选择成员接口,将在下文详细描述。
其中,ECMP组,是指存在多条具有相同开销的路径可以到达同一个目的地址。交换机和路由器一般都支持该功能,在网络设备中,存在这样的路由,即同一目的IP网段对应多个下一跳即出口,发往该目的IP网段的报文可以通过多个路径进行负载分担,当其中某些路径出现故障时,其他路径可以自动代替其完成流量转发。
网络设备提供ECMP功能,同一目的的地址网段可以有多条路由,即多个下一跳。网络操作系统可以运行bgp、ospf、isis等路由协议,学习到路由,包括ECMP等价路由;也可以通过静态配置的方式配置路由。对于ECMP路由,网络芯片需要创建ECMP组,并将对应出接口(此处出口为虚拟接口,是根据路由下一跳IP地址对应的MAC地址以及对应的出接口生成的虚拟接口,虚拟接口与物理接口是具有映射关系的,本文实施例中为了描述方便,直接使用物理接口加入到ECMP组的描述)加入到该ECMP组,作为ECMP组的成员接口。
本申请实施例中在将物理接口加入所述ECMP组时,指定所述物理接口的角色,现有实现是不指定角色的;这里指定的角色包括:主成员接口和备成员接口。
针对一个ECMP组,其中主成员接口为多个,备成员接口为1个或多个。
参见图2,图2为创建ECMP组的网络系统示意图。图2中从网络设备1到网络设备2的流量,有4条等价路由可以选择。本申请实施例中在将成员接口加入ECMP组时,需要为ECMP组的成员接口划分角色,被设置为主成员接口的成员接口对应的链路为主链路,被设置为备成员接口的对应的链路为备链路。以网络设备1上的ECMP组为例,在将网络设备1与网络设备3连接时对应的接口1、网络设备1与网络设备4连接时对应的接口2,网络设备1与网络设备5连接时对应的接口3加入ECMP组时,分别设置为主成员接口,在网络设备1与网络设备6连接时对应的接口4加入ECMP组时,设置为备成员接口。
本申请实施例中ECMP组中的成员接口无论是主成员接口还是备成员接口,都可以从对端接收报文,也就是说在接收方向上不区分接口的角色(从芯片角度讲,报文都是从该ECMP组对应的接口收到的,ECMP组对应的接口会作为入端口进行芯片流水线的一些检查,以及后续的处理);
在发送方向上,本申请实施例会区分成员接口的角色,至于在发送报文时,如何选择成员接口,将在下文详细描述。
下面详细说明本申请实施例中报文转发的过程。
实施例一
参见图3,图3为本申请实施例一中报文转发流程示意图。具体步骤为:
步骤301,根据报文的转发信息确定转发所述报文的出接口。
网络设备收到报文后,会对报文做解析,并做一些检查,查找二层MAC表,以及三层路由表,ACL等一系列操作,确定转发所述报文的出接口。
上述实现过程可以按照现有实现,本申请对此并不做改进。
步骤302,若确定所述出接口对应主成员接口和备成员接口,则选择一个所述主成员接口。
确定所述出接口对应的一种类型的成员接口,即不区分角色的成员接口时,按照现有实现即可;确定所述出接口对应的接口为一物理接口或一虚拟接口,也可以按照现有实现即可,即本申请实施例也可以兼容现有实现,不限于对应多种角色的出接口进行报文转发的处理流程。
如果出接口对应主成员接口和备成员接口的时候,则优先在主成员接口中选择出一个主成员接口。
如果对应一个主成员接口,则直接选择该主成员接口,如果对应多个主成员接口,则在所述多个主成员接口中选择一个主成员接口。
步骤303,确定选择的所述主成员接口是否发生拥塞。
步骤304,若确定选择的所述主成员接口发生拥塞,则选择所述备成员接口转发所述报文。
当选择的主成员接口发生拥塞时,需要选择对应的备成员接口进行报文转发,这时需要确定备成员接口的个数,如果是一个,直接选择该备成员接口;如果是多个,可以从中选择一个备成员接口转发。
本申请实施例中将一个出接口对应的多成员接口划分为主备两个角色,优先在主成员接口中选择转发接口,在选择的主成员接口拥塞时,再在备成员接口中选择一个转发接口转发待转发报文,该方案对选择的转发接口拥塞时能够二次选择转发接口,能够在负载均衡转发报文的基础上提高报文的转发效率,避免丢包等情况的发生。
如果主成员接口和备成员接口的个数均为多个,在选择主成员接口和备成员接口时,又均采用哈希算法进行成员接口的选择时,需要网络设备支持可编程芯片,以便支持二次哈希运算。
实施例二
参见图4,图4为本申请实施例二中报文转发流程示意图。具体步骤为:
步骤401,根据报文的转发信息确定转发所述报文的出接口。
网络设备收到报文后,会对报文做解析,并做一些检查,查找二层MAC表,以及三层路由表,ACL等一系列操作,确定转发所述报文的出接口。
上述实现过程可以按照现有实现,本申请对此并不做改进。
步骤402,确定所述出接口是否对应主成员接口和备成员接口,如果是,执行步骤403;否则,执行步骤407。
步骤403,选择一个所述主成员接口。
如果出接口对应主成员接口和备成员接口的时候,则优先在主成员接口中选择出一个主成员接口。
在选择主成员接口时,如果只有一个主成员接口,则直接选择该主成员接口,如果存在多个主成员接口,则采用第一负载负载均衡原则选择出一个主成员接口;
本申请实施例中对第一负载均衡原则不进行限制,如可以采用哈希算法实现负载均衡,也可以使用轮询方法实现负载均衡等。
如采用哈希算法时,选择报文中的一些字段作为哈希算法的输入,包括报文的五元组(目的IP地址,源IP地址,IP协议号,目的端口号,源端口号),报文的目的MAC地址、源MAC地址、VLAN ID等,还可以是以上字段的任意组合。本申请实施例中对此均不进行限制。
本申请实施例中在选择了一个主成员接口之后并不是直接使用该主成员接口转发所述报文,而是需要判断所述主成员接口是否发生拥塞,如果拥塞,就会选择备成员接口转发,这样不会造成主成员接口的进一步拥塞,导致丢包,转发效率低下等一系列问题的发生。
步骤404,确定选择的所述主成员接口是否发生拥塞,如果是,执行步骤405;否则,执行步骤406。
每个主成员接口对应一个转发队列,对转发队列的占用情况可以进行统计,具体实现时可以通过芯片内存管理单元(Memory Management Unit,MMU)来实现转发队列占用情况的统计。
本申请实施例中确定选择的所述主成员接口是否发生拥塞,具体实现可以为:
确定所述主成员接口对应的转发队列中待调度转发的报文的条数是否小于预设阈值,如果是,确定所述主成员接口未发生拥塞;否则,确定所述主成员接口发生拥塞。
其中,预设阈值根据实际需要配置,如根据芯片的类型、转发能力,缓存等配置。
通过对主成员接口是否拥塞的判断,来分流主成员接口上的报文,这样不会继续将报文通过负担重的成员接口上转发。
步骤405,选择一个所述备成员接口转发所述报文,结束本流程。
当选择的主成员接口发生拥塞时,需要选择对应的备成员接口进行报文转发,这时需要确定备成员接口的个数,如果是一个,直接选择该备成员接口;否则,可以随机选择一个备成员接口,也可以采用第二负载均衡原则选择一个备成员接口进行所述报文的转发;
其中,第二负载均衡原则与第一负载均衡原则相同,或不同,即使同时使用哈希算法进行负载均衡,也可以选择不同的字段,或相同的字段进行哈希来选择成员接口。
步骤406,使用选择的主成员接口转发所述报文,结束本流程。
步骤407,按照现有实现转发所述报文。
确定所述出接口对应的一种类型的成员接口,即不区分角色的成员接口时,按照现有实现即可;确定所述出接口对应的接口为一物理接口或一虚拟接口,也可以按照现有实现即可,即本申请实施例也可以兼容现有实现,不限于对应多种角色的出接口进行报文转发的处理流程。
本申请实施例中通过对成员接口指定不同的角色,在选择出的主成员接口未发生拥塞时,直接使用该主成员接口转发报文,在选择出的主成员接口发生拥塞时,可以再次在备成员接口中选择一个所述备成员接口进行报文的转发,能够在实现流量负载均衡转发的前提下,提高网络设备的报文转发效率,避免转发效率低下,丢包等问题的产生。
如果主成员接口和备成员接口的个数均为多个,在选择主成员接口和备成员接口时,又均采用哈希算法进行成员接口的选择时,需要网络设备支持可编程芯片,以便支持二次哈希运算。
实施例三
以图1中的出接口为LAG为例,其中,LAG包括4个主成员接口(接口1、接口2、接口3和接口4)和2个备成员接口(接口5和接口6)。
假设网路设备A根据报文转发信息确定转发报文的出接口对应所述LAG,且确定该LAG对应主成员接口和备成员接口时,在对应的主成员接口中选择一个主成员接口;
如使用的第一负载均衡原则为哈希算法选择主成员接口,使用的字段包括:目的IP地址,源IP地址,IP协议号,目的接口号,源接口号,则分别获取所述五个字段在报文中对应的内容,进行哈希计算;
根据预先设定的哈希值与对应接口的映射关系,使用计算获得的哈希值匹配到对应的主成员接口,如匹配到的主成员接口为接口1;
确定选择的主成员接口(接口1)对应的转发队列中待调度转发的报文的条数是否小于预设阈值,如果是,确定所述主成员接口未发生拥塞;否则,确定所述主成员接口发生拥塞。
如接口1对应的转发队列中待调度转发的报文的条数为20,预设阈值为30,则确定选择的主成员接口(接口1)未发生拥塞;
使用选择的主成员接口转发所述报文。
如接口1对应的转发队列中待调度转发的报文的跳数为40,预设阈值为30,则确定选择的主成员接口(接口1)发生拥塞,则在备成员接口中选择转发所述报文的接口;
先确定备成员接口的个数,如图1所示的备成员接口的个数为2个,则需要在2个备成员接口中选择一个备成员接口,如使用的第一负载均衡原则为哈希算法,则可以使用与选择主成员接口一样的哈希算法选择,仅是主成员接口选择时,哈希值对应四个接口号,选择备成员接口时,哈希值映射为两个接口号。
假设匹配到的备成员端口为接口5,则使用接口5转发所述报文。
至此,完成了转发当前报文的出接口的确定,并使用确定的出接口转发报文。
对端网络设备B无论从哪个接口接收到网络设备A转发的报文时,均认为从LAG接口接收到的报文,不区分LAG接口中的哪个接口接收到,也就是说在接收侧,不区分接收报文的接口的角色。
本实施例中通过对加入LAG的成员接口分配角色,在确定出接口对应该LAG时,按照负载均衡原则在主成员接口中选择一个主成员接口,在该主成员接口未发生拥塞时,直接使用该主成员接口转发报文,在该主成员接口发生拥塞时,在备成员接口中选择一个备成员接口转发报文;这种将成员接口分为两种角色,在保证流量负载均衡的转发原则下,不再向拥塞接口引流的方案,可以提供报文转发效率,且避免丢包等问题的产生。
实施例四
以图2中的出接口为ECMP组为例,其中,ECMP组包括3个主成员接口(接口1、接口2、接口3和接口4)和1个备成员接口(接口4)。
假设网路设备1根据报文转发信息确定转发待转发的报文的出接口对应所述ECMP组,且确定该ECMP组对应主成员接口和备成员接口时,在对应的主成员接口中选择一个主成员接口;
如使用的第一负载均衡原则为轮询方式选择主成员接口,当前轮询到接口2对应的主成员接口,则选择出的主成员接口为接口2;
确定选择的主成员接口(接口2)对应的转发队列中待调度转发的报文的条数是否小于预设阈值,如果是,确定所述主成员接口未发生拥塞;否则,确定所述主成员接口发生拥塞。
如接口2对应的转发队列中待调度转发的报文的条数为34,预设阈值为30,则确定选择的主成员接口(接口1)发生拥塞;
在所述出接口对应的备成员接口中选择转发所述报文的备接口:
确定对应的备成员接口的个数为1,且为接口4,则选择备成员接口-接口4转发所述报文。
至此,完成了转发当前报文的出接口的确定,并使用确定的出接口转发报文。
本实施例中通过对加入ECMP组的成员接口分配角色,在确定出接口对应该ECMP组时,按照负载均衡原则在主成员接口中选择一个主成员接口,在该主成员接口未发生拥塞时,直接使用该主成员接口转发报文,在该主成员接口发生拥塞时,在备成员接口中选择一个备成员接口转发报文;这种将成员接口分为两种角色,在保证流量负载均衡的转发原则下,不再向拥塞接口引流的方案,可以提供报文转发效率,且避免丢包等问题的产生。
基于同样的发明构思,本申请实施例中还提供一种报文转发装置。参见图5,图5为本申请实施例中应用于上述技术的装置结构示意图。所述装置包括:第一确定单元501、第二确定单元502、第一选择单元503、第三确定单元504、第二选择单元505和转发单元506;
第一确定单元501,用于根据报文的转发信息确定转发所述报文的出接口;
第二确定单元502,用于确定第一确定单元501确定的所述出接口是否对应主成员接口和备成员接口;
第一选择单元503,用于若第二确定单元502确定所述出接口对应主成员接口和备成员接口,则选择一个所述主成员接口;
第三确定单元504,用于确定第一选择单元503选择的所述主成员接口是否发生拥塞;
第二选择单元505,用于若第三确定单元504确定选择的所述主成员接口发生拥塞,则选择一个所述备成员接口;
转发单元506,用于使用第二选择单元505选择的所述备成员接口转发所述报文。
优选地,
第三确定单元504,具体用于确定所述主成员接口对应的转发队列中待调度转发的报文的条数是否小于预设阈值,如果是,确定所述主成员接口未发生拥塞;否则,确定所述主成员接口发生拥塞。
优选地,所述装置进一步包括:配置单元;
所述配置单元,用于将物理接口加入所述出接口时,指定所述物理接口为主成员接口,或备成员接口。
优选地,
第一选择单元503,具体用于若所述出接口对应的主成员接口为多个,则选择一个所述主成员接口时采用第一负载均衡原则选择;
第二选择单元505,具体用于若所述出接口对应的备成员接口为多个,则选择一个所述备成员接口时采用第二负载均衡原则选择;其中,所述第一负载均衡原则与所述第二负载均衡原则相同,或不同。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
在另一个实施例中,还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述报文转发方法的步骤。
在另一个实施例中,还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被处理器执行时可实现所述报文转发方法中的步骤。
图6为本发明实施例提供的电子设备的实体结构示意图。如图6所示,该电子设备可以包括:处理器(Processor)610、通信接口(Communications Interface)620、存储器(Memory)630和通信总线640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。处理器610可以调用存储器630中的逻辑指令,以执行如下方法:
根据报文的转发信息确定转发所述报文的出接口;
若确定所述出接口对应主成员接口和备成员接口,则选择一个所述主成员接口;
确定选择的所述主成员接口是否发生拥塞;
若确定选择的所述主成员接口发生拥塞,则选择一个所述备成员接口转发所述报文。
此外,上述的存储器630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (11)
1.一种报文转发方法,其特征在于,所述方法包括:
根据报文的转发信息确定转发所述报文的出接口;
若确定所述出接口对应主成员接口和备成员接口,则选择一个所述主成员接口;
确定选择的所述主成员接口是否发生拥塞;
若确定选择的所述主成员接口发生拥塞,则选择一个所述备成员接口转发所述报文。
2.根据权利要求1所述的方法,其特征在于,所述确定选择的所述主成员接口是否发生拥塞,包括:
确定所述主成员接口对应的转发队列中待调度转发的报文的条数是否小于预设阈值,如果是,确定所述主成员接口未发生拥塞;否则,确定所述主成员接口发生拥塞。
3.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
将物理接口加入所述出接口时,指定所述物理接口为主成员接口,或备成员接口。
4.根据权利要求3所述的方法,其特征在于,所述出接口为链路聚合组LAG,或等价路由ECMP组。
5.根据权利要求1-4任一项所述的方法,其特征在于,
若所述出接口对应的主成员接口为多个,则选择一个所述主成员接口时采用第一负载均衡原则选择;
若所述出接口对应的备成员接口为多个,则选择一个所述备成员接口时采用第二负载均衡原则选择;
其中,所述第一负载均衡原则与所述第二负载均衡原则相同,或不同。
6.一种报文转发装置,其特征在于,所述装置包括:第一确定单元、第二确定单元、第一选择单元、第三确定单元、第二选择单元和转发单元;
所述第一确定单元,用于根据报文的转发信息确定转发所述报文的出接口;
所述第二确定单元,用于确定所述出接口是否对应主成员接口和备成员接口;
所述第一选择单元,用于若所述确定单元确定所述出接口对应主成员接口和备成员接口,则选择一个所述主成员接口;
所述第二确定单元,用于确定所述第一选择单元选择的所述主成员接口是否发生拥塞;
所述第二选择单元,用于若所述第二确定单元确定选择的所述主成员接口发生拥塞,则选择一个所述备成员接口;
所述转发单元,用于使用所述第二选择单元选择的所述备成员接口转发所述报文。
7.根据权利要求6所述的装置,其特征在于,
所述第二确定单元,具体用于确定所述主成员接口对应的转发队列中待调度转发的报文的条数是否小于预设阈值,如果是,确定所述主成员接口未发生拥塞;否则,确定所述主成员接口发生拥塞。
8.根据权利要求6所述的装置,其特征在于,所述装置进一步包括:配置单元;
所述配置单元,用于将物理接口加入所述出接口时,指定所述物理接口为主成员接口,或备成员接口。
9.根据权利要求6-8任一项所述的装置,其特征在于,
所述第一选择单元,具体用于若所述出接口对应的主成员接口为多个,则选择一个所述主成员接口时采用第一负载均衡原则选择;
所述第二选择单元,具体用于若所述出接口对应的备成员接口为多个,则选择一个所述备成员接口时采用第二负载均衡原则选择;其中,所述第一负载均衡原则与所述第二负载均衡原则相同,或不同。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如下步骤:
根据报文的转发信息确定转发所述报文的出接口;
若确定所述出接口对应主成员接口和备成员接口,则选择一个所述主成员接口;
确定选择的所述主成员接口是否发生拥塞;
若确定选择的所述主成员接口发生拥塞,则选择一个所述备成员接口转发所述报文。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010206990.XA CN111740917A (zh) | 2020-03-23 | 2020-03-23 | 一种报文转发方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010206990.XA CN111740917A (zh) | 2020-03-23 | 2020-03-23 | 一种报文转发方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111740917A true CN111740917A (zh) | 2020-10-02 |
Family
ID=72647116
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010206990.XA Pending CN111740917A (zh) | 2020-03-23 | 2020-03-23 | 一种报文转发方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111740917A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112565102A (zh) * | 2020-11-30 | 2021-03-26 | 锐捷网络股份有限公司 | 一种负载均衡方法、装置、设备及介质 |
CN116032819A (zh) * | 2022-12-16 | 2023-04-28 | 迈普通信技术股份有限公司 | 等价负载分担方法、装置、网络设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079795A (zh) * | 2007-07-27 | 2007-11-28 | 杭州华三通信技术有限公司 | 数据转发方法及转发设备 |
CN101547082A (zh) * | 2009-04-22 | 2009-09-30 | 华为技术有限公司 | 一种主备链路倒换方法及网络设备 |
CN103023804A (zh) * | 2012-12-18 | 2013-04-03 | 北京星网锐捷网络技术有限公司 | 一种聚合链路自适应流量负载均衡方法、装置及网络设备 |
CN103152251A (zh) * | 2013-02-27 | 2013-06-12 | 杭州华三通信技术有限公司 | 一种报文处理方法及装置 |
CN103401801A (zh) * | 2013-08-07 | 2013-11-20 | 盛科网络(苏州)有限公司 | 动态负载均衡的实现方法及装置 |
WO2014101125A1 (zh) * | 2012-12-28 | 2014-07-03 | 华为技术有限公司 | 聚合组链路协商方法、装置和系统 |
CN105743801A (zh) * | 2014-12-08 | 2016-07-06 | 中兴通讯股份有限公司 | 一种堆叠系统的流量转发的方法及装置 |
US20170346885A1 (en) * | 2016-05-24 | 2017-11-30 | Nicira, Inc. | Load balancing for a team of network interface controllers |
CN110838974A (zh) * | 2019-11-14 | 2020-02-25 | 苏州盛科科技有限公司 | 一种实现负载均衡的方法和装置 |
-
2020
- 2020-03-23 CN CN202010206990.XA patent/CN111740917A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079795A (zh) * | 2007-07-27 | 2007-11-28 | 杭州华三通信技术有限公司 | 数据转发方法及转发设备 |
CN101547082A (zh) * | 2009-04-22 | 2009-09-30 | 华为技术有限公司 | 一种主备链路倒换方法及网络设备 |
CN103023804A (zh) * | 2012-12-18 | 2013-04-03 | 北京星网锐捷网络技术有限公司 | 一种聚合链路自适应流量负载均衡方法、装置及网络设备 |
WO2014101125A1 (zh) * | 2012-12-28 | 2014-07-03 | 华为技术有限公司 | 聚合组链路协商方法、装置和系统 |
CN103152251A (zh) * | 2013-02-27 | 2013-06-12 | 杭州华三通信技术有限公司 | 一种报文处理方法及装置 |
CN103401801A (zh) * | 2013-08-07 | 2013-11-20 | 盛科网络(苏州)有限公司 | 动态负载均衡的实现方法及装置 |
CN105743801A (zh) * | 2014-12-08 | 2016-07-06 | 中兴通讯股份有限公司 | 一种堆叠系统的流量转发的方法及装置 |
US20170346885A1 (en) * | 2016-05-24 | 2017-11-30 | Nicira, Inc. | Load balancing for a team of network interface controllers |
CN110838974A (zh) * | 2019-11-14 | 2020-02-25 | 苏州盛科科技有限公司 | 一种实现负载均衡的方法和装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112565102A (zh) * | 2020-11-30 | 2021-03-26 | 锐捷网络股份有限公司 | 一种负载均衡方法、装置、设备及介质 |
CN116032819A (zh) * | 2022-12-16 | 2023-04-28 | 迈普通信技术股份有限公司 | 等价负载分担方法、装置、网络设备及存储介质 |
CN116032819B (zh) * | 2022-12-16 | 2024-07-19 | 迈普通信技术股份有限公司 | 等价负载分担方法、装置、网络设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10666563B2 (en) | Buffer-less virtual routing | |
US9014006B2 (en) | Adaptive routing using inter-switch notifications | |
EP2911348B1 (en) | Control device discovery in networks having separate control and forwarding devices | |
US20180131604A1 (en) | Routing Control Method, Device, and System | |
CN100466629C (zh) | 一种网络设备和基于多核处理器的报文转发方法 | |
EP3399703B1 (en) | Method for implementing load balancing, apparatus, and network system | |
US20140140210A1 (en) | Network system and load balancing method | |
US11290376B2 (en) | Prioritized formation of BGP sessions | |
WO2021000848A1 (zh) | 一种报文转发方法、报文处理方法及装置 | |
EP4181477B1 (en) | Path selection in software defined wide area networks | |
CN104243345B (zh) | 一种基于业务类型的流量调度方法、系统和设备 | |
CN110798400B (zh) | 报文转发方法及装置 | |
CN109088822B (zh) | 数据流量转发方法、装置、系统、计算机设备及存储介质 | |
EP3637688B1 (en) | Method and device for determining link state | |
CN111740917A (zh) | 一种报文转发方法和装置 | |
EP3474504B1 (en) | Leaf-to-spine uplink bandwidth advertisement to leaf-connected servers | |
CN109039916B (zh) | 报文转发方法、装置及存储介质 | |
CN113595919A (zh) | 一种负载分担的方法及装置 | |
US10567270B1 (en) | Dynamic signaling of bypass tunnel based on bandwidth threshold at a point of local repair | |
CN108123871A (zh) | 等价多路径ecmp处理方法及装置 | |
Mon et al. | Flow path computing in software defined networking | |
CN113141265B (zh) | 跨设备链路聚合方法及设备 | |
EP4436134A1 (en) | Egress rerouting of packets at a communication device | |
CN108011820B (zh) | 基于监测网络流量条件的旁路标签交换路径的动态修改 | |
JP2005176268A (ja) | 死活監視を利用したipネットワーク迂回システム |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201002 |