CN116032819A - 等价负载分担方法、装置、网络设备及存储介质 - Google Patents
等价负载分担方法、装置、网络设备及存储介质 Download PDFInfo
- Publication number
- CN116032819A CN116032819A CN202211624440.5A CN202211624440A CN116032819A CN 116032819 A CN116032819 A CN 116032819A CN 202211624440 A CN202211624440 A CN 202211624440A CN 116032819 A CN116032819 A CN 116032819A
- Authority
- CN
- China
- Prior art keywords
- port
- member port
- message
- target
- discarded
- 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 43
- 238000012544 monitoring process Methods 0.000 claims abstract description 27
- 238000012545 processing Methods 0.000 claims description 12
- 230000007246 mechanism Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 10
- 230000003139 buffering effect Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及通信技术领域,提供一种等价负载分担方法、装置、网络设备及存储介质。通过对等价路由的多个成员端口进行监控;其中,全部成员端口中第i+1个成员端口为第i个成员端口的备份端口,i为正整数;然后在监控到处于拥塞状态的目标成员端口时,获取目标成员端口的待丢弃报文;并将待丢弃报文环回至目标成员端口的备份端口,以实现等价负载分担。通过将等价路由的每个成员作为其上一个成员的备份端口,和对每个成员端口进行监控,并对处于拥塞状态的成员端口的待丢弃报文进行环回以送往其备份端口,从而实现了等价负载分担和负载均衡,并且减少了丢包和提高了带宽利用率。
Description
技术领域
本发明涉及通信技术领域,具体而言,涉及一种等价负载分担方法、装置、网络设备及存储介质。
背景技术
对于存在多条不同链路到达同一目的地址的网络环境中,传统的路由技术只能利用其中的一条链路向目的地址发送数据包,其它链路处于备份状态或无效状态。ECMP(Equal Cost Multi Path,等价多路径)路由是指多条到达同一目的地址的链路的开销值相等。等价多路径路由也被称为等价路由。等价路由可以同时使用多条链路,不仅能够增加传输带宽,还能达到链路备份的效果。
目前ECMP路由的路径选择策略有多种方式,例如采用哈希算法、或者采用多条路径轮询机制、又或者采用动态负载均衡机制。但是如果采用轮询或者动态负载均衡,则需要使用支持轮询或者动态负载均衡功能的交换芯片,这会导致成本提高。而哈希算法是根据流量选择路径,由于流量完全不可控,则会出现负载不均导致部分路径端口拥塞丢包的情况。
发明内容
有鉴于此,本发明的目的在于提供一种等价负载分担方法、装置、网络设备及存储介质。
为了实现上述目的,本发明采用的技术方案如下:
第一方面,本发明提供一种等价负载分担方法,所述方法包括:
对等价路由的多个成员端口进行监控;其中,全部成员端口中第i+1个成员端口为第i个成员端口的备份端口,i为正整数;
在监控到处于拥塞状态的目标成员端口时,获取所述目标成员端口的待丢弃报文;
将所述待丢弃报文环回至所述目标成员端口的备份端口,以实现等价负载分担。
在可选的实施方式中,所述成员端口具有对应的缓存空间,所述缓存空间用于缓存所述成员端口的待发送报文;
所述对等价路由的多个成员端口进行监控的步骤,包括:
对于任意一个所述成员端口,统计所述成员端口对应的缓存空间中的当前剩余空间;若所述成员端口对应的当前剩余空间大于或者等于所述成员端口接收到的报文所占空间,则判定所述成员端口未处于拥塞状态;若所述成员端口对应的当前剩余空间小于所述成员端口接收到的报文所占空间,则判定所述成员端口处于拥塞状态,以对每个所述成员端口进行监控。
在可选的实施方式中,所述目标成员端口的镜像出口为环回口;
所述将所述待丢弃报文环回至所述目标成员端口的备份端口的步骤,包括:
按照丢包镜像机制对所述待丢弃报文进行镜像处理,得到与所述待丢弃报文相同的镜像报文;
根据所述目标成员端口的镜像出口,获得所述目标成员端口对应的目标环回口;
将所述镜像报文重定向至所述目标环回口,并通过所述目标环回口将所述镜像报文转发至所述目标成员端口的备份端口。
在可选的实施方式中,所述成员端口具有访问控制列表,所述访问控制列表包括预设速率阈值;
所述对等价路由的多个成员端口进行监控的步骤,包括:
对于任意一个所述成员端口,统计所述成员端口的当前流量速率;若所述成员端口的当前流量速率小于或者等于所述成员端口的预设速率阈值,则判定所述成员端口未处于拥塞状态;若所述成员端口的当前流量速率大于所述成员端口的预设速率阈值,则判定所述成员端口处于拥塞状态,以对每个所述成员端口进行监控。
在可选的实施方式中,所述目标成员端口具有对应的目标环回口;
所述将所述待丢弃报文环回至所述目标成员端口的备份端口的步骤,包括:
基于所述目标成员端口的访问控制列表,将所述待丢弃报文重定向至所述目标环回口,并通过所述目标环回口将所述待丢弃报文转发至所述目标成员端口的备份端口。
在可选的实施方式中,所述方法还包括:
将所述目标成员端口的备份端口作为待定成员端口;
确定所述待定成员端口是否处于拥塞状态;
若所述待定成员端口处于拥塞状态且非最后一个成员端口,则将所述待定成员端口的备份端口作为所述待定成员端口后,返回上述确定所述待定成员端口是否处于拥塞状态的步骤;
若所述待定成员端口处于拥塞状态且为最后一个成员端口,则将所述待丢弃报文丢弃;
若所述待定成员端口未处于拥塞状态,则通过所述待定成员端口发送所述待丢弃报文。
第二方面,本发明提供一种等价负载分担装置,所述装置包括:
端口监控模块,用于对等价路由的多个成员端口进行监控;其中,全部成员端口中第i+1个成员端口为第i个成员端口的备份端口,i为正整数;
报文获取模块,用于在监控到处于拥塞状态的目标成员端口时,获取所述目标成员端口的待丢弃报文;
报文环回模块,用于将所述待丢弃报文环回至所述目标成员端口的备份端口,以实现等价负载分担。
在可选的实施方式中,所述装置还包括报文处理模块,用于将所述目标成员端口的备份端口作为待定成员端口;
确定所述待定成员端口是否处于拥塞状态;
若所述待定成员端口处于拥塞状态且非最后一个成员端口,则将所述待定成员端口的备份端口作为所述待定成员端口后,返回上述确定所述待定成员端口是否处于拥塞状态的步骤;
若所述待定成员端口处于拥塞状态且为最后一个成员端口,则将所述待丢弃报文丢弃;
若所述待定成员端口未处于拥塞状态,则通过所述待定成员端口发送所述待丢弃报文。
第三方面,本发明提供一种网络设备,包括处理器和存储器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时,实现前述实施方式中任一项所述的方法。
第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时,实现前述实施方式中任一项所述的方法。
本发明提供的等价负载分担方法、装置、网络设备及存储介质,通过对等价路由的多个成员端口进行监控;其中,全部成员端口中第i+1个成员端口为第i个成员端口的备份端口,i为正整数;然后在监控到处于拥塞状态的目标成员端口时,获取目标成员端口的待丢弃报文;并将待丢弃报文环回至目标成员端口的备份端口,以实现等价负载分担。通过将等价路由的每个成员作为其上一个成员的备份端口,和对每个成员端口进行监控,并对处于拥塞状态的成员端口的待丢弃报文进行环回以送往其备份端口,从而实现了等价负载分担和负载均衡,并且减少了丢包和提高了带宽利用率。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些
实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,5在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的网络设备方框示意图;
图2示出了本发明实施例提供的等价负载分担方法的一种流程示意图;
图3示出了本发明实施例提供的等价负载分担方法的又一种流程示意图;
图4示出了本发明实施例提供的等价负载分担方法的一个示例图;
图5示出了本发明实施例提供的等价负载分担方法的又一种流程示意图;
图6示出了本发明实施例提供的等价负载分担方法的又一种流程示意图;
图7示出了本发明实施例提供的等价负载分担装置的一种功能模块图。
图标:100-网络设备;110-总线;120-处理器;130-存储器;170-通信接口;300-等价负载分担装置;310-端口监控模块;330-报文获取模块;350-报文环回模块;370-报文处理模块。
具体实施方式
0下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行
清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限5制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对于存在多条不同链路到达同一目的地址的网络环境中,传统的路由技术只能利用其中的一条链路向目的地址发送数据包,其它链路处于备份状态或无效状态。ECMP(Equal Cost Multi Path,等价多路径)路由是指多条到达同一目的地址的链路的开销值相等。等价多路径路由也被称为等价路由。等价路由可以同时使用多条链路,不仅能够增加传输带宽,还能达到链路备份的效果。
目前ECMP路由的路径选择策略有多种方式,例如,采用哈希算法即根据源地址的哈希为流选择路径,计算出来的路径完全是基于报文特征和一些固定信息计算得来,同一个口子来的一条流量一定只会负载到一个固定的出口出去。或者采用多条路径轮询机制即各个流在多条路径之间轮询传输,不关心流量特征,同一个口子来的一条流量也会负载到各个出口出去,但会导致乱序。又或者采用动态负载均衡机制即将流量按配置的报文特征计算哈希值,如果该哈希值未存在,则分配一个负载最轻的端口给该哈希值的流量转发使用,能够在尽量保序的前提下,尽量提高转发性能,如果进来的流量是从同一个口进来的同一条流量,在流量很大的情况下,同样无法做到负载均衡。同时如果采用轮询或者动态负载均衡,则需要使用支持轮询或者动态负载均衡功能的交换芯片,这会导致成本提高。而哈希算法是根据流量选择路径,由于流量完全不可控,则会出现负载不均导致部分路径端口拥塞丢包的情况。进而本发明实施例提高了一种等价负载分担的方法以解决上述问题。
请参照图1,是本发明实施例提供的一种网络设备100的方框示意图。网络设备100包括总线110、处理器120、存储器130、通信接口170。
总线110可以是将上述元件相互连接并在上述元件之间传递信息的电路。
处理器120可以通过总线110从上述其它元件接收命令,可以解释接收到的命令,并可以根据所解释的命令来执行计算或数据处理。
处理器120可以是一种集成电路芯片,具有信号处理能力。该处理器120可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以将处理器120理解为网络设备100的交换芯片。
存储器130可以存储从处理器120或其它元件接收的命令或数据或者由处理器120或其它元件产生的命令或数据。
存储器130可以是但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)。
通信接口170可用于与其他节点设备进行信令或数据的通信。
可以理解的是,图1所示的结构仅为网络设备100的结构示意图,网络设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
下面将以上述的网络设备100作为执行主体,执行本发明实施例提供的各个方法中的各个步骤,并实现对应技术效果。
请参阅图2,图2是本发明实施例提供的一种等价负载分担方法的流程示意图。
步骤S202,对等价路由的多个成员端口进行监控;其中,全部成员端口中第i+1个成员端口为第i个成员端口的备份端口,i为正整数;
在本实施例中,网络设备存储有等价路由中每个成员的基本信息。成员可以理解为“下一跳”即下一个通信节点。成员的基本信息包括物理地址,网络地址,传输端口即成员端口等。
将等价路由的每个成员端口设置为其上一个成员端口的备份端口,即第i+1个成员端口是第i个成员端口的备份端口。备份端口在其对应的成员端口出现拥塞或者失效等异常情况时,可以无时延地进入转发状态。
可以按照预先设置的监控规则对等价路由的每个成员端口进行监控。
步骤S204,在监控到处于拥塞状态的目标成员端口时,获取目标成员端口的待丢弃报文;
步骤S206,将待丢弃报文环回至目标成员端口的备份端口,以实现等价负载分担;
可以理解的是,当成员端口所转发的流量超过其带宽上限时会出现拥塞,则成员端口会将部分报文进行丢弃。而本实施例中,在监控到处于拥塞状态的成员端口即目标成员端口时,会获取其准备丢弃的报文即待丢弃保文,并且将待丢弃报文环回至目标成员端口的备份端口。
可以理解为,本发明实施例是将目标成员端口无法处理的报文分担到其备份端口,以利用其备份端口的带宽来处理待丢弃的报文,这样实现了等价负载分担和负载均衡。相比于现有技术,本发明实施例可以应用于不支持轮询或者动态负载均衡功能的交换芯片,可以降低了成本并且适用于多种场景,还能够有效地解决因为哈希算法带来的负载不均导致的丢包问题,可以减少了丢包同时提高了带宽利用率。
可见基于上述步骤,通过对等价路由的多个成员端口进行监控;其中,全部成员端口中第i+1个成员端口为第i个成员端口的备份端口,i为正整数;然后在监控到处于拥塞状态的目标成员端口时,获取目标成员端口的待丢弃报文;并将待丢弃报文环回至目标成员端口的备份端口,以实现等价负载分担。通过将等价路由的每个成员作为其上一个成员的备份端口,
和对每个成员端口进行监控,并对处于拥塞状态的成员端口的待丢弃报文5进行环回以送往其备份端口,从而实现了等价负载分担和负载均衡,并且
减少了丢包和提高了带宽利用率。
可选地,对于上述步骤S202,本发明实施例提供了一种可能的实现方式。
步骤S202A,对于任意一个成员端口,统计成员端口对应的缓存空间0中的当前剩余空间;若成员端口对应的当前剩余空间大于或者等于成员端
口接收到的报文所占空间,则判定成员端口未处于拥塞状态;若成员端口对应的当前剩余空间小于成员端口接收到的报文所占空间,则判定成员端口处于拥塞状态,以对每个成员端口进行监控。
在本实施例中,每个成员端口均有对应的缓存空间,这个缓存空间用5于缓存其对应的成员端口的待发送报文,即将成员端口的待发送报文以队
列的形式缓存在其对应的缓存空间,基于缓存队列依次发送报文。网络设备的交换芯片内具有MMU(Memory Management Unit,内存管理单元),其可以管理每个成员端口所对应的缓存空间。
可以理解的是,对每个成员端口进行监控的方式类似,下面将以任意0一个成员端口作为示例进行说明。
可以在成员端口对应的缓存空间中统计当前剩余空间,以获得成员端口对应的当前剩余空间;然后将这个当前剩余空间与成员端口接收到的报文所占空间进行比较。
如果成员端口对应的当前剩余空间大于或者等于成员端口接收到的报5文所占空间,表示当前成员端口对应的剩余空间还可以继续缓存报文,则判定成员端口未处于拥塞状态。
如果成员端口对应的当前剩余空间小于成员端口接收到的报文所占空间,表示当前成员端口对应的剩余空间无法继续缓存报文,则判定成员端口处于拥塞状态。
按照上述类似的方式,可以对每个成员端口进行监控来确定其是否处于拥塞状态,以便于将处于拥塞状态的成员端口的待丢弃报文环回至其备份端口。
可选地,基于上述提供的对成员端口进行监控的方式,本发明实施例对于上述步骤S206提供了一种相应地的实现方式,请参阅图3。
步骤S206A-1,按照丢包镜像机制对待丢弃报文进行镜像处理,得到与待丢弃报文相同的镜像报文;
步骤S206A-3,根据目标成员端口的镜像出口,获得目标成员端口对应的目标环回口;
步骤S206A-5,将镜像报文重定向至目标环回口,并通过目标环回口将镜像报文转发至目标成员端口的备份端口。
在本实施例中,网络设备还设置有多个环回口,其是网络设备中的一种逻辑接口,也可以理解为是虚拟接口。
MOD(Mirror On Drop,丢包镜像)是一种报文在网络设备内部转发过程中发生丢包时,会立即收集报文的特征信息的机制。因此,本发明实施例是为每个具有备份端口的成员端口配置环回口,并将环回口作为其镜像出口,以利用丢包镜像机制将待丢弃报文通过环回口重新送往其备份端口。
为了便于理解,本发明实施例提供了一个示例图,请参阅图4,等价路由包括4个成员端口即成员端口1至成员端口4。其中,成员端口1至成员端口3具有备份端口,分别为成员端口2、成员端口3和成员端口4,并且其镜像出口分别为环回口1、环回口2和环回口3。
例如,对成员端口1至成员端口4进行监控,即统计成员端口1至成员端口4分别对应的缓存空间中的当前剩余空间,并与其接收到的报文所占空间进行比较以确定其是否处于拥塞状态。
假设监控到成员端口1处于拥塞状态,即成员端口1为目标成员端口,则获取成员端口1的待丢弃报文;然后按照丢包镜像机制对该待丢弃报文进行镜像处理,得到与待丢弃报文相同的镜像报文;并根据成员端口1的镜像出口,获得成员端口1对应的环回口,即目标环回口为环回口1;再将镜像报文重定向至环回口1,并通过环回口1将镜像报文转发至成员端口1的备份端口即成员端口2,从而实现了等价负载分担。
可选地,对于上述步骤S202,本发明实施例提供了另一种可能的实现方式。
步骤S202B,对于任意一个成员端口,统计成员端口的当前流量速率;若成员端口的当前流量速率小于或者等于成员端口的预设速率阈值,则判定成员端口未处于拥塞状态;若成员端口的当前流量速率大于成员端口的预设速率阈值,则判定成员端口处于拥塞状态,以对每个成员端口进行监控。
在本实施例中,每个成员端口均绑定有ACL(Access Control List,访问控制列表),ACL记录有一条或者多条规则,如可以在ACL中设置成员端口的监控规则,其监控规则包括预设速率阈值即预先设置的成员端口的流量速率的最大值。可选地,可以将成员端口的预设速率阈值设置为略小于其带宽所对应的流量速率。应当理解的是,预设速率阈值可以按照实际应用设置,本发明实施例不做限定。
可以理解的是,对每个成员端口进行监控的方式类似,下面将以任意一个成员端口作为示例进行说明。
可以统计成员端口的当前流量速率;然后将这个当前流量速率与成员端口的预设速率阈值进行比较。
如果成员端口的当前流量速率小于或者等于成员端口的预设速率阈值,表示成员端口的剩余带宽较多,即还可以继续发送报文,则判定成员端口未处于拥塞状态。
如果成员端口的当前流量速率大于成员端口的预设速率阈值,表示成员端口的剩余带宽较少,即无法继续发送报文,则判定成员端口处于拥塞状态。
可选地,ACL中的监控规则还可以对成员端口处于不同流量速率时所发送的报文进行颜色标记。例如,当成员端口的当前流量速率小于或者等于成员端口的预设速率阈值时,其发送的报文可以标记为绿色;当成员端口的当前流量速率大于成员端口的预设速率阈值时,其发送的报文可以标记为黄色或者红色,即被标记为黄色或者红色的报文为待丢弃报文。
按照上述类似的方式,可以对每个成员端口进行监控来确定其是否处于拥塞状态,以便于将处于拥塞状态的成员端口的待丢弃报文环回至其备份端口。
可选地,基于上述提供的对成员端口进行监控的方式,本发明实施例对于上述步骤S206提供了一种相应地的实现方式,请参阅图5。
步骤S206B,基于目标成员端口的访问控制列表,将待丢弃报文重定向至目标环回口,并通过目标环回口将待丢弃报文转发至目标成员端口的备份端口。
在本实施例中,对于每个具有备份端口的成员端口,其均有对应的环回口。本发明实施例通过ACL配置条件的触发动作,来将成员端口的待丢弃报文通过环回口重新送往其备份端口。
为了便于理解,本发明实施例将以上述图4所示的例子进行说明。如图4所示的成员端口1至成员端口3,其对应的环回口分别为环回口1、环回口2和环回口3。
例如,对成员端口1至成员端口4进行监控,即统计成员端口1至成员端口4的当前流量速率,并与其对应的预设速率阈值进行比较以确定其是否处于拥塞状态。
假设监控到成员端口1处于拥塞状态,即成员端口1为目标成员端口,则获取成员端口1的待丢弃报文;然后根据成员端口1的访问控制列表,将待丢弃报文重定向至成员端口1对应的环回口即环回口1,并通过环回口1将待丢弃报文转发至成员端口1的备份端口即成员端口2,从而实现了等价负载分担。
可选地,在上述步骤S206之后,本发明实施例还提供了一种可能的实现方式,请参阅图6。
步骤S208,将目标成员端口的备份端口作为待定成员端口;
步骤S210,确定待定成员端口是否处于拥塞状态;
步骤S212A,若待定成员端口处于拥塞状态且非最后一个成员端口,则将待定成员端口的备份端口作为待定成员端口后,返回上述确定待定成员端口是否处于拥塞状态的步骤;
步骤S212B,若待定成员端口处于拥塞状态且为最后一个成员端口,则将待丢弃报文丢弃;
步骤S212C,若待定成员端口未处于拥塞状态,则通过待定成员端口发送待丢弃报文。
在本实施例中,将目标成员端口的待丢弃报文环回至目标成员端口的备份端口后,还会基于这个备份端口是否处于拥塞状态来对待丢弃报文进行处理。
为了便于理解,本发明实施例将以上述图4所示的例子进行说明。请参阅图4,在等价路由的4个成员端口中,成员端口2是成员端口1的备份端口、成员端口3是成员端口2的备份端口、成员端口4是成员端口3的备份端口。成员端口1至成员端口3分别对应的环回口为环回口1、环回口2和环回口3。
例如,对成员端口1至成员端口4进行监控,并且网络设备将接收到的报文固定转发至成员端口1。
假设网络设备将接收到报文转发至成员端口1时,监控到成员端口1正处于拥塞状态,则成员端口1准备将这个报文丢弃,即这个报文为成员端口1的待丢弃报文;然后将待丢弃报文重定向至环回口1,并通过环回口1转发至成员端口1的备份端口即成员端口2。
如果成员端口2未处于拥塞状态,则通过成员端口2发送这个待丢弃报文。
如果成员端口2处于拥塞状态,由于成员端口2不是最后一个成员端口,则将待丢弃报文重定向至环回口2,并通过环回口2转发至成员端口2的备份端口即成员端口3,并重复上述判断的过程,直至将待丢弃报文发送出去或者待丢弃报文被转发到成员端口4。
如果最后一个成员端口即成员端口4也处于拥塞状态,则说明此时成员端口1至成员端口4的带宽都占满了,即实现了等价路由带宽的最大化,那么将这个待丢弃报文丢弃。
为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种等价负载分担装置的实现方式。请参阅图7,图7为本发明实施例提供的一种等价负载分担装置300的功能模块图。需要说明的是,本实施例所提供的等价负载分担装置300,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该等价负载分担装置300包括:
端口监控模块310,用于对等价路由的多个成员端口进行监控;其中,全部成员端口中第i+1个成员端口为第i个成员端口的备份端口,i为正整数;
报文获取模块330,用于在监控到处于拥塞状态的目标成员端口时,获取目标成员端口的待丢弃报文;
报文环回模块350,用于将待丢弃报文环回至目标成员端口的备份端口,以实现等价负载分担。
可选地,端口监控模块310,还用于对于任意一个成员端口,统计成员端口对应的缓存空间中的当前剩余空间;若成员端口对应的当前剩余空间大于或者等于成员端口接收到的报文所占空间,则判定成员端口未处于拥塞状态;若成员端口对应的当前剩余空间小于成员端口接收到的报文所占空间,则判定成员端口处于拥塞状态,以对每个成员端口进行监控。
可选地,报文环回模块350,还用于按照丢包镜像机制对待丢弃报文进行镜像处理,得到与待丢弃报文相同的镜像报文;根据目标成员端口的镜像出口,获得目标成员端口对应的目标环回口;将镜像报文重定向至目标环回口,并通过目标环回口将镜像报文转发至目标成员端口的备份端口。
可选地,端口监控模块310,还用于对于任意一个成员端口,统计成员端口的当前流量速率;若成员端口的当前流量速率小于或者等于成员端口的预设速率阈值,则判定成员端口未处于拥塞状态;若成员端口的当前流量速率大于成员端口的预设速率阈值,则判定成员端口处于拥塞状态,以对每个成员端口进行监控。
可选地,报文环回模块350,还用于基于目标成员端口的访问控制列表,将待丢弃报文重定向至目标环回口,并通过目标环回口将待丢弃报文转发至目标成员端口的备份端口。
可选地,等价负载分担装置300还包括报文处理模块370,用于将目标成员端口的备份端口作为待定成员端口;确定待定成员端口是否处于拥塞状态;若待定成员端口处于拥塞状态且非最后一个成员端口,则将待定成员端口的备份端口作为待定成员端口后,返回上述确定待定成员端口是否处于拥塞状态的步骤;若待定成员端口处于拥塞状态且为最后一个成员端口,则将待丢弃报文丢弃;若待定成员端口未处于拥塞状态,则通过待定成员端口发送待丢弃报文。
本发明实施例还提供了一种网络设备,包括处理器和存储器,存储器存储有计算机程序,处理器执行计算机程序时,实现本发明实施例揭示的等价负载分担方法。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现本发明实施例揭示的等价负载分担方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依
所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及5框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
0所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使
用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储
介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服5务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于0本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种等价负载分担方法,其特征在于,所述方法包括:
对等价路由的多个成员端口进行监控;其中,全部成员端口中第i+1个成员端口为第i个成员端口的备份端口,i为正整数;
在监控到处于拥塞状态的目标成员端口时,获取所述目标成员端口的待丢弃报文;
将所述待丢弃报文环回至所述目标成员端口的备份端口,以实现等价负载分担。
2.根据权利要求1所述的方法,其特征在于,所述成员端口具有对应的缓存空间,所述缓存空间用于缓存所述成员端口的待发送报文;
所述对等价路由的多个成员端口进行监控的步骤,包括:
对于任意一个所述成员端口,统计所述成员端口对应的缓存空间中的当前剩余空间;若所述成员端口对应的当前剩余空间大于或者等于所述成员端口接收到的报文所占空间,则判定所述成员端口未处于拥塞状态;若所述成员端口对应的当前剩余空间小于所述成员端口接收到的报文所占空间,则判定所述成员端口处于拥塞状态,以对每个所述成员端口进行监控。
3.根据权利要求2所述的方法,其特征在于,所述目标成员端口的镜像出口为环回口;
所述将所述待丢弃报文环回至所述目标成员端口的备份端口的步骤,包括:
按照丢包镜像机制对所述待丢弃报文进行镜像处理,得到与所述待丢弃报文相同的镜像报文;
根据所述目标成员端口的镜像出口,获得所述目标成员端口对应的目标环回口;
将所述镜像报文重定向至所述目标环回口,并通过所述目标环回口将所述镜像报文转发至所述目标成员端口的备份端口。
4.根据权利要求1所述的方法,其特征在于,所述成员端口具有访问控制列表,所述访问控制列表包括预设速率阈值;
所述对等价路由的多个成员端口进行监控的步骤,包括:
对于任意一个所述成员端口,统计所述成员端口的当前流量速率;若所述成员端口的当前流量速率小于或者等于所述成员端口的预设速率阈值,则判定所述成员端口未处于拥塞状态;若所述成员端口的当前流量速率大于所述成员端口的预设速率阈值,则判定所述成员端口处于拥塞状态,以对每个所述成员端口进行监控。
5.根据权利要求4所述的方法,其特征在于,所述目标成员端口具有对应的目标环回口;
所述将所述待丢弃报文环回至所述目标成员端口的备份端口的步骤,包括:
基于所述目标成员端口的访问控制列表,将所述待丢弃报文重定向至所述目标环回口,并通过所述目标环回口将所述待丢弃报文转发至所述目标成员端口的备份端口。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述目标成员端口的备份端口作为待定成员端口;
确定所述待定成员端口是否处于拥塞状态;
若所述待定成员端口处于拥塞状态且非最后一个成员端口,则将所述待定成员端口的备份端口作为所述待定成员端口后,返回上述确定所述待定成员端口是否处于拥塞状态的步骤;
若所述待定成员端口处于拥塞状态且为最后一个成员端口,则将所述待丢弃报文丢弃;
若所述待定成员端口未处于拥塞状态,则通过所述待定成员端口发送所述待丢弃报文。
7.一种等价负载分担装置,其特征在于,所述装置包括:
端口监控模块,用于对等价路由的多个成员端口进行监控;其中,全部成员端口中第i+1个成员端口为第i个成员端口的备份端口,i为正整数;
报文获取模块,用于在监控到处于拥塞状态的目标成员端口时,获取所述目标成员端口的待丢弃报文;
报文环回模块,用于将所述待丢弃报文环回至所述目标成员端口的备份端口,以实现等价负载分担。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括报文处理模块,用于将所述目标成员端口的备份端口作为待定成员端口;
确定所述待定成员端口是否处于拥塞状态;
若所述待定成员端口处于拥塞状态且非最后一个成员端口,则将所述待定成员端口的备份端口作为所述待定成员端口后,返回上述确定所述待定成员端口是否处于拥塞状态的步骤;
若所述待定成员端口处于拥塞状态且为最后一个成员端口,则将所述待丢弃报文丢弃;
若所述待定成员端口未处于拥塞状态,则通过所述待定成员端口发送所述待丢弃报文。
9.一种网络设备,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时,实现权利要求1至6中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时,实现权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211624440.5A CN116032819A (zh) | 2022-12-16 | 2022-12-16 | 等价负载分担方法、装置、网络设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211624440.5A CN116032819A (zh) | 2022-12-16 | 2022-12-16 | 等价负载分担方法、装置、网络设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116032819A true CN116032819A (zh) | 2023-04-28 |
Family
ID=86071515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211624440.5A Pending CN116032819A (zh) | 2022-12-16 | 2022-12-16 | 等价负载分担方法、装置、网络设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116032819A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060274647A1 (en) * | 2005-06-02 | 2006-12-07 | Broadcom Corporation | Dynamic port failover |
CN101499974A (zh) * | 2009-03-11 | 2009-08-05 | 中兴通讯股份有限公司 | 一种队列调度优化方法及系统 |
US20150029855A1 (en) * | 2011-12-26 | 2015-01-29 | Hangzhou H3C Technologies Co., Ltd. | Traffic routing |
CN111740917A (zh) * | 2020-03-23 | 2020-10-02 | 北京京东尚科信息技术有限公司 | 一种报文转发方法和装置 |
CN112187637A (zh) * | 2020-09-17 | 2021-01-05 | 苏州浪潮智能科技有限公司 | 以太链路聚合组的配置方法、装置及计算机可读存储介质 |
CN113645145A (zh) * | 2021-08-02 | 2021-11-12 | 迈普通信技术股份有限公司 | 负载均衡方法、装置、网络设备及计算机可读存储介质 |
CN115174480A (zh) * | 2022-06-30 | 2022-10-11 | 苏州浪潮智能科技有限公司 | 一种负载均衡方法、装置、设备及可读存储介质 |
US20220368154A1 (en) * | 2021-05-17 | 2022-11-17 | Sma Solar Technology Ag | Electrical unit and backup power system |
-
2022
- 2022-12-16 CN CN202211624440.5A patent/CN116032819A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060274647A1 (en) * | 2005-06-02 | 2006-12-07 | Broadcom Corporation | Dynamic port failover |
CN101499974A (zh) * | 2009-03-11 | 2009-08-05 | 中兴通讯股份有限公司 | 一种队列调度优化方法及系统 |
US20150029855A1 (en) * | 2011-12-26 | 2015-01-29 | Hangzhou H3C Technologies Co., Ltd. | Traffic routing |
CN111740917A (zh) * | 2020-03-23 | 2020-10-02 | 北京京东尚科信息技术有限公司 | 一种报文转发方法和装置 |
CN112187637A (zh) * | 2020-09-17 | 2021-01-05 | 苏州浪潮智能科技有限公司 | 以太链路聚合组的配置方法、装置及计算机可读存储介质 |
US20220368154A1 (en) * | 2021-05-17 | 2022-11-17 | Sma Solar Technology Ag | Electrical unit and backup power system |
CN113645145A (zh) * | 2021-08-02 | 2021-11-12 | 迈普通信技术股份有限公司 | 负载均衡方法、装置、网络设备及计算机可读存储介质 |
CN115174480A (zh) * | 2022-06-30 | 2022-10-11 | 苏州浪潮智能科技有限公司 | 一种负载均衡方法、装置、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11005769B2 (en) | Congestion avoidance in a network device | |
US8817807B2 (en) | System and method for distributed resource control of switches in a network environment | |
US10498612B2 (en) | Multi-stage selective mirroring | |
US20170048144A1 (en) | Congestion Avoidance Traffic Steering (CATS) in Datacenter Networks | |
US7675857B1 (en) | Method and apparatus to avoid network congestion | |
US9270598B1 (en) | Congestion control using congestion prefix information in a named data networking environment | |
EP2615802B1 (en) | Communication apparatus and method of content router to control traffic transmission rate in content-centric network (CCN), and content router | |
US7602720B2 (en) | Active queue management methods and devices | |
US10938724B2 (en) | Flow rate based network load balancing | |
US7911960B1 (en) | Delayed-start method for minimizing internal switch congestion | |
US9166919B2 (en) | Reducing headroom | |
US10574546B2 (en) | Network monitoring using selective mirroring | |
US20040223452A1 (en) | Process for detecting network congestion | |
KR102455886B1 (ko) | 서비스 기능 체이닝 혼잡 피드백 | |
US11258723B2 (en) | Data processing method and apparatus, and switching device using footprint queues | |
EP3334101B1 (en) | Load balancing eligible packets in response to a policing drop decision | |
US10305787B2 (en) | Dropping cells of a same packet sent among multiple paths within a packet switching device | |
US7430167B2 (en) | Method and system to enable an adaptive load balancing in a parallel packet switch | |
US7391785B2 (en) | Method for active queue management with asymmetric congestion control | |
US10887237B2 (en) | Advanced load balancing based on bandwidth estimation | |
Jiang et al. | An explicit rate control framework for lossless ethernet operation | |
CN116032819A (zh) | 等价负载分担方法、装置、网络设备及存储介质 | |
CN113765796B (zh) | 流量转发控制方法及装置 | |
US7500012B2 (en) | Method for controlling dataflow to a central system from distributed systems | |
Ma et al. | Asap: Preventing starvation in backpressure forwarding |
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 |