CN110417674B - 一种数据流量分担方法及装置 - Google Patents
一种数据流量分担方法及装置 Download PDFInfo
- Publication number
- CN110417674B CN110417674B CN201910681036.3A CN201910681036A CN110417674B CN 110417674 B CN110417674 B CN 110417674B CN 201910681036 A CN201910681036 A CN 201910681036A CN 110417674 B CN110417674 B CN 110417674B
- Authority
- CN
- China
- Prior art keywords
- node
- transmission parameter
- equivalent path
- detection message
- returned
- 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.)
- Active
Links
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
Abstract
本发明实施例提供了一种数据流量分担方法及装置,源节点通过沿到达目的节点的每条等价路径发送探测报文,对等价路径上各节点对应的节点传输参数进行探测,探测得到一条等价路径上每个节点对应的节点传输参数,基于每个节点对应的节点传输参数来衡量整条等价路径的负载轻重,如果最大节点传输参数大于预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,通过将这条等价路径上的数据流量分担到最小节点传输参数对应的节点所属等价路径上,减轻了路径负载重的等价路径的传输负担,从而提高了网络的数据流量分担效果。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种数据流量分担方法及装置。
背景技术
在一些实际网络场景下,源节点和目的节点之间往往存在多条等价路径,为了保证数据流量传输的可靠性,采用数据流量分担的方式,将从源节点上来的各数据流量分担到不同的等价路径上进行传输。
传统的数据流量分担方法中,源节点在接收到数据流量后,提取数据流量的特征信息,对数据流量的特征信息进行哈希运算,根据运算结果将数据流量分担到对应的等价路径上,这种方法的分担效果完全依赖于数据流量,很容易出现数据流量分担不均衡的情况。
为了应对上述问题,相应的数据流量分担方法中,源节点通过监控与每条等价路径上相邻接点之间的链路负载,统计源节点上每条等价路径对应出端口的度量值,当源节点上有一条新的数据流量需要传输时,选择将该数据流量分担到度量值最小的出端口对应的等价路径上。
然而,每一条等价路径上可能存在多个节点,每两个相邻节点之间的链路负载不同,源节点与相邻接点之间的链路负载无法反映整条等价路径的负载轻重,导致数据流量分担效果并不理想。
发明内容
本发明实施例的目的在于提供一种数据流量分担方法及装置,以提高网络的数据流量分担效果。具体技术方案如下:
第一方面,本发明实施例提供了一种数据流量分担方法,该方法包括:
当前检测周期到达时,沿到达目的节点的每条等价路径发送一个探测报文,其中,每个探测报文携带参数收集标识以及返回标识;参数收集标识用于指示收集节点标识以及节点传输参数,返回标识用于指示目的节点将每个探测报文通过其经过的等价路径返回;
判断当前检测周期内每条等价路径是否在预定时长内分别接收到每个返回的探测报文;
若是,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数;
当最大节点传输参数超出预设阈值时,将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,以使最大节点传输参数对应的节点所属等价路径的一个以上大流量业务流被分担到最小节点传输参数对应的节点所属等价路径。
第二方面,本发明实施例提供了一种数据流量分担装置,该装置包括:
发送模块,用于当前检测周期到达时,沿到达目的节点的每条等价路径发送一个探测报文,其中,每个探测报文携带参数收集标识以及返回标识;参数收集标识用于指示收集节点标识以及节点传输参数,返回标识用于指示目的节点将每个探测报文通过其经过的等价路径返回;
判断模块,用于判断当前检测周期内每条等价路径是否在预定时长内分别接收到每个返回的探测报文;
识别模块,用于若判断模块的判断结果为当前检测周期内每条等价路径在预定时长内分别接收到每个返回的探测报文,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数;
替换模块,用于当最大节点传输参数超出预设阈值时,将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳。
第三方面,本发明实施例提供了一种网络设备,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行的指令,指令由处理器加载并执行:以实现本发明实施例第一方面的方法。
第四方面,本发明实施例提供了一种机器可读存储介质,机器可读存储介质内存储有机器可执行的指令,指令由处理器加载并执行,以实现本发明实施例第一方面的方法。
本发明实施例提供的一种数据流量分担方法及装置,在当前检测周期到达时,源节点沿到达目的节点的每条等价路径发送一个探测报文,用于探测经过的等价路径上各节点对应的节点传输参数,目的节点所接收到的每个探测报文携带有探测得到的其经过的等价路径上各节点对应的节点传输参数,并且每个探测报文还携带有参数收集标识和返回标识,目的节点在识别出返回标识后,将探测报文通过其经过的等价路径返回给源节点,源节点判断当前检测周期内每条等价路径是否在预定时长内分别接收到每个返回的探测报文,如果在预定时长内接收到每个返回的探测报文,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数,当最大节点传输参数超出预设阈值时,将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,使得最大节点传输参数对应的节点所属等价路径的一个以上大流量业务流被分担到最小节点传输参数对应的节点所属等价路径。如果最大节点传输参数超出了预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,因此,需要将这条等价路径上的数据流量分担至最小节点传输参数对应的节点所属等价路径上传输。通过探测报文对节点传输参数的探测,探测得到一条等价路径上每个节点对应的节点传输参数,基于每个节点对应的节点传输参数来衡量整条等价路径的负载轻重,如果最大节点传输参数大于预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,通过将这条等价路径上的数据流量分担到路径负载更轻的等价路径(最小节点传输参数对应的节点所属等价路径)上,减轻了路径负载重的等价路径的传输负担,从而提高了网络的数据流量分担效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的组网示意图;
图2为本发明实施例的数据流量分担方法的流程示意图;
图3为本发明实施例的一具体实例下数据流量分担调整前的组网示意图;
图4为本发明实施例的一具体实例下数据流量分担调整后的组网示意图;
图5为本发明实施例的数据流量分担装置的结构示意图;
图6为本发明实施例的网络设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在如图1所示的现有技术的组网中,源节点A通过监控与节点B、节点C、节点D之间的链路负载,统计源节点A上对应的3个出端口的metric值(度量值)分别为0、2、4,则当源节点上有一条新的数据流量需要传输时,选择将该数据流量分担到A-B-E这条等价路径上。
然而,如果B-E的区段链路上出现拥塞或者负载很大,由于节点A无法感知B-E的链路负载,源节点A按照上述选路策略,选择的A-B-E这条等价路径并不是最优的等价路径。
为了提高网络的数据流量分担效果,本发明实施例提供了一种数据流量分担方法、装置、网络设备及机器可读存储介质。下面,首先对本发明实施例所提供的数据流量分担方法进行介绍。
本发明实施例所提供的数据流量分担方法应用于上述作为源节点的网络设备,该网络设备可以为路由器、交换机等具有数据转发功能的网络设备。实现本发明实施例所提供的数据流量分担方法的方式可以为设置于网络设备中的软件、硬件电路和逻辑电路中的至少一种。
如图2所示,本发明实施例所提供的一种数据流量分担方法,可以包括如下步骤。
S201,当前检测周期到达时,沿到达目的节点的每条等价路径发送一个探测报文,其中,每个探测报文携带参数收集标识以及返回标识,参数收集标识用于指示收集节点标识以及节点传输参数,返回标识用于指示目的节点将每个探测报文通过其经过的等价路径返回。
源节点与目的节点之间存在多条等价路径,在源节点上可以构造一个源地址信息为源节点的地址信息、目的地址信息为目的节点的地址信息的探测报文,分别指定探测报文的下一跳地址信息为到每条等价路径上相邻节点的地址信息进行发送,则每条等价路径上都会传输一个探测报文到目的节点。并且,源节点在每一条等价路径上,是周期性地发送探测报文的,每到一个检测周期,就会发送一个探测报文。例如,源节点和目的节点之间有3条等价路径,源节点每间隔1秒会在3条等价路径上分别发送一个探测报文。
探测报文携带参数收集标识,参数收集标识用于指示收集节点标识以及节点传输参数。探测报文每到达一个节点,该节点可以识别出探测报文的参数收集标识,则会将自身的节点标识和检测得到的节点传输参数添加至探测报文中。节点传输参数是指节点传输探测报文时,与能够表征传输性能的参数信息,例如出端口带宽利用率、时间戳等。
探测报文还携带有返回标识,一旦目的节点接收到探测报文,识别出返回标识,就知道需要将接收到的探测报文返回给源节点。目的节点返回探测报文给源节点是按照原路返回,也就是,例如目的节点是从等价路径A-B-E收到探测报文,则会通过等价路径A-B-E将该探测报文返回给源节点。
在本发明实施例的一种实现方式中,探测报文携带的返回标识可以为loopback(环回)标志位,该标志位在探测报文的报文头,目的节点在收到探测报文后,根据报文头的loopback标志位,对报文的目的地址信息和源地址信息进行互换,将接收到的探测报文返回给源节点。
在本发明实施例的一种实现方式中,探测报文可以为INT(Inband NetworkTelemetry,带内网络遥测)探测报文。每个探测报文为INT探测报文,参数收集标识以及返回标识设置于INT报文的INT头内。每经过一个节点,该节点就可以根据INT头的参数收集标识,在带内网络遥测报文的元数据metedata***本节点的节点标识和节点传输参数,INT探测报文到达目的节点后,INT头后的元数据metedata携带有所有经过节点的节点传输参数,节点传输参数可以包括时间戳、出端口带宽利用率等信息。目的节点接收到INT探测报文后,识别出INT头中的返回标识,则会将该INT探测报文按照原路返回给源节点。
S202,判断当前检测周期内每条等价路径是否在预定时长内分别接收到每个返回的探测报文。
每到达一次检测周期,源节点就会沿每条等价路径向目的节点发送一个探测报文,相应的在正常情况下,在每一个检测周期内源节点会在预定时长内接收到从每条等价路径返回的探测报文,源节点需要对这种情况进行判断,判断当前检测周期内每条等价路径是否在预定时长内分别接收到每个返回的探测报文。
可选的,若当前检测周期内有任一一条等价路径未在预定时长内接收到返回的探测报文,本发明实施例所提供的数据流量分担方法还可以执行如下步骤:
判断在当前检测周期内未在预定时长内接收到返回的探测报文的等价路径是否在连续M个周期未在预定时长内接收到返回的探测报文,其中,M为大于2的正整数;
若是,则将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换连续M个周期未在预定时长内接收到返回的探测报文的等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,以使连续M个周期未在预定时长内接收到返回的探测报文的等价路径的一个以上大流量业务流被分担到最小节点传输参数对应的节点所属等价路径。
如果源节点从某一条等价路径超过预定时长未收到返回的探测报文,则说明这条等价路径可能存在时延或者丢包的情况,如果多次发生从这条路径超过预定时长未收到返回的探测报文,则说明这条等价路径接近拥塞或者已经拥塞。则需要将这条等价路径的一个以上大流量业务流分担到其他的等价路径上传输,具体分担接近拥塞或者已经拥塞的等价路径的数据流量的等价路径是在当前检测周期中最小节点传输参数对应的节点所属等价路径。业务流实现分担的方式主要是通过替换转发表项中的下一跳地址信息实现,对于如何通过替换转发表项中的下一跳地址信息实现业务流分担,将在S204步骤中做详细介绍。
S203,若当前检测周期内每条等价路径在预定时长内分别接收到每个返回的探测报文,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数。
在当前检测周期内,源节点在从每条等价路径接收到目标节点返回的每个探测报文后,可以从每个探测报文中提取出各节点对应的节点传输参数,例如出端口带宽利用率、时间戳等。节点传输参数越大,说明该节点的传输性能越差,因此,可以从各节点对应的节点传输参数中识别出最大节点传输参数,最大节点传输参数表征了当前检测周期内,传输性能最差的节点,对应的等价路径负载最重。
可选的,节点传输参数可以是出端口带宽利用率。
则S203具体可以为:
根据每个返回的探测报文中各节点对应的出端口带宽利用率,识别最大的出端口带宽利用率。
节点的出端口带宽利用率是指节点的出端口上已经利用的带宽的比例,是节点传输业务流的一个重要传输参数,一个节点的出端口带宽利用率越大,则说明该节点的出端口上已经利用的带宽越多。针对于出端口带宽利用率非常大的情况,如果再有新的业务流上来时,如果还通过这个节点传输,可能会超过该节点出端口最大带宽的要求,导致业务流传输失败。
可选的,节点传输参数可以是时间戳。
则S203中具体可以为:
根据每个返回的探测报文中各节点对应的时间戳,识别最大的节点时延。
对于源节点来讲,时间戳记录的是发送探测报文的时间;对于目的节点来讲,时间戳记录的是接收探测报文的时间;对于中间经过的节点来讲,时间戳记录的可以是接收探测报文的时间,也可以是发送探测报文的时间。节点时延是指一个节点的时间戳与转发探测报文的等价路径上这个节点的上一跳节点的时间戳的差值。例如,如果源节点发送探测报文的时间戳为9:40,源节点的下一跳节点接收到探测报文的时间戳为9:45,则可以计算出源节点的下一跳节点的节点时延为5分钟。
S204,当最大节点传输参数超出预设阈值时,将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,以使最大节点传输参数对应的节点所属等价路径的一个以上大流量业务流被分担到最小节点传输参数对应的节点所属等价路径。
一个节点的节点参数表征了这个节点和下一跳节点之间的区段链路的负载轻重,例如,一个节点的出端口带宽利用率越大,或者,一个节点的节点时延越大,则表明这个节点和下一跳节点之间的区段链路的负载越重。因此,在本发明实施例中,设置有一个预设阈值,该预设阈值为根据数据传输的经验数据进行设置的,如果最大节点传输参数超出预设阈值,则说明最大节点传输参数对应的节点和下一跳节点之间的区段链路的负载过重,进一步的,说明该节点所属等价路径的链路负载太重,需要对其进行流量分担。
通常情况下需要将最大节点传输参数对应的节点所属等价路径的一个以上大流量业务流被分担到最小节点传输参数对应的节点所属等价路径。
在转发业务流时,源节点根据等价路径转发的业务流的数据报文三元组、五元组、或七元组计算hash(哈希)值,查找计算的hash值匹配的转发表项,将数据报文发往匹配的转发表项中下一跳。当某个业务流的流量越大,基于该业务流报文计算的hash值匹配到的转发表项的次数则会越大。因此,根据通过读取各转发表项的硬件计数器的计数值可以获取各转发表项的命中次数,。
最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项对应的业务流就是大流量业务流,优先考虑将这些业务流分担到最小节点传输参数对应的节点所属等价路径上。具体的,是通过修改转发表项中的下一跳实现的,将最小节点传输参数对应的节点等价路径的下一跳,替换最大节点传输参数对应的节点等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,这样,流量大的业务流会通过最小节点参数所属的等价路径转发。
应用本发明实施例,在当前检测周期到达时,源节点沿到达目的节点的每条等价路径发送一个探测报文,用于探测经过的等价路径上各节点对应的节点传输参数,目的节点所接收到的每个探测报文携带有探测得到的其经过的等价路径上各节点对应的节点传输参数,并且每个探测报文还携带有参数收集标识和返回标识,目的节点在识别出返回标识后,将探测报文通过其经过的等价路径返回给源节点,源节点判断当前检测周期内每条等价路径是否在预定时长内分别接收到每个返回的探测报文,如果在预定时长内接收到每个返回的探测报文,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数,当最大节点传输参数超出预设阈值时,将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,使得最大节点传输参数对应的节点所属等价路径的一个以上大流量业务流被分担到最小节点传输参数对应的节点所属等价路径。如果最大节点传输参数超出了预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,因此,需要将这条等价路径上的数据流量分担至最小节点传输参数对应的节点所属等价路径上传输。通过探测报文对节点传输参数的探测,探测得到一条等价路径上每个节点对应的节点传输参数,基于每个节点对应的节点传输参数来衡量整条等价路径的负载轻重,如果最大节点传输参数大于预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,通过将这条等价路径上的数据流量分担到路径负载更轻的等价路径(最小节点传输参数对应的节点所属等价路径)上,减轻了路径负载重的等价路径的传输负担,从而提高了网络的数据流量分担效果。
为了便于理解,下面结合具体实例对本发明实施例所提供的数据流量分担方法进行介绍。
如图3所示,源节点A和目的节点F之间存在等价路径1:A-B-E-F,路径2:A-C-E-F,路径3:A-D-F。
源节点A沿达到目的节点F的等价路径1、等价路径2和等价路径3分别发送探测报文,探测报文携带有参数收集标识和返回标识,探测报文每到达一个节点则会收集该节点的节点标识和节点传输参数,目的节点F在收到三条等价路径发来的探测报文后,识别出返回标识,则将探测报文的目的地址信息和源地址信息进行互换,将探测报文返回给源节点A。
源节点A从等价路径1、等价路径2和等价路径3分别接收返回的探测报文。从等价路径1接收到的返回的探测报文中携带节点A的出端口带宽利用率为40%、节点B的出端口带宽利用率为50%、节点E的出端口带宽利用率为90%;从等价路径2接收到的返回的探测报文中携带节点A的出端口带宽利用率为30%、节点C的出端口带宽利用率为40%、节点E的出端口带宽利用率为90%;从等价路径3接收到的返回的探测报文中携带节点A的出端口带宽利用率为30%、节点D的出端口带宽利用率为50%。
等价路径1最大的节点传输参数为90%、等价路径2最大的节点传输参数也是90%、等价路径3最大的节点传输参数为50%。假设预设阈值为60%,则等价路径1最大的节点传输参数和等价路径2最大的节点传输参数都超过了预设阈值,则需要进行流量分担,将等价路径1和/或等价路径2上的数据流量分担到等价路径3上传输。
由于等价路径1和等价路径2最大的节点传输参数相等,则比较等价路径1和等价路径2的次大的节点传输参数,等价路径1次大的节点传输参数为50%、等价路径2次大的节点传输参数为40%,因此,确定等价路径1的路径负载最重、等价路径3的路径负载最轻。
走等价路径1的数据流量,有命中3个转发表项,统计这3个转发表项的命中次数,命中次数越高,数据流量传输占用率一般情况下也越大,例如,第一个转发表项的命中次数最多,为20次,对应的数据流量传输占用率为20%,第二个和第三个转发表项命中次数较少,为10次,对应的数据流量传输占用率均为10%。将走等价路径1的数据流量的第一个转发表项的下一跳替换为走等价路径3的数据流量的转发表项的下一跳,使得等价路径1上数据流量传输占用率为20%的数据流量分担到了等价路径3上传输,则流量分担后各等价路径的区段传输参数如图4所示,减轻了E-F区段的拥塞程度。
针对于节点传输参数是时间戳的情况,最大节点传输参数即为节点时延,可以通过相邻两个节点的时间戳的差值计算出来,后续的判断、流量分担的处理过程与节点传输参数是出端口带宽利用率的情况下的处理过程相类似,可以参照上述实例,这里不再举例说明。
相应于上述方法实施例,本发明实施例提供了一种数据流量分担装置,如图5所示,该数据流量分担装置可以包括:
发送模块510,用于当前检测周期到达时,沿到达目的节点的每条等价路径发送一个探测报文,其中,每个探测报文携带参数收集标识以及返回标识;参数收集标识用于指示收集节点标识以及节点传输参数,返回标识用于指示目的节点将每个探测报文通过其经过的等价路径返回;
判断模块520,用于判断当前检测周期内每条等价路径是否在预定时长内分别接收到每个返回的探测报文;
识别模块530,用于若判断模块520的判断结果为当前检测周期内每条等价路径在预定时长内分别接收到每个返回的探测报文,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数;
替换模块540,用于当最大节点传输参数超出预设阈值时,将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳。
可选的,若当前检测周期内有任一一条等价路径未在预定时长内接收到返回的探测报文,判断模块520,还可以用于:
判断在当前检测周期内未在预定时长内接收到返回的探测报文的等价路径是否在连续M个周期未在预定时长内接收到返回的探测报文;其中,M为大于2的正整数;
替换模块540,还可以用于:
若判断模块520的判断结果为在当前检测周期内未在预定时长内接收到返回的探测报文的等价路径在连续M个周期未在预定时长内接收到返回的探测报文,则将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换连续M个周期未在预定时长内接收到返回的探测报文的等价路径的多个转发表项中最高匹配次数转发表项中的下一跳。
可选的,节点传输参数可以是出端口带宽利用率;
识别模块530,具体可以用于:
根据每个返回的探测报文中各节点对应的出端口带宽利用率,识别最大的出端口带宽利用率。
可选的,节点传输参数可以是时间戳;
识别模块530,具体可以用于:
根据每个返回的探测报文中各节点对应的时间戳,识别最大的节点时延。
可选的,每个探测报文为带内网络遥测探测报文;参数收集标识以及返回标识设置于带内网络遥测探测报文的带内网络遥测头内;
每个返回的带内网络遥测报文的元数据metedata携带了各节点标识及其节点传输参数。
应用本发明实施例,在当前检测周期到达时,源节点沿到达目的节点的每条等价路径发送一个探测报文,用于探测经过的等价路径上各节点对应的节点传输参数,目的节点所接收到的每个探测报文携带有探测得到的其经过的等价路径上各节点对应的节点传输参数,并且每个探测报文还携带有参数收集标识和返回标识,目的节点在识别出返回标识后,将探测报文通过其经过的等价路径返回给源节点,源节点判断当前检测周期内每条等价路径是否在预定时长内分别接收到每个返回的探测报文,如果在预定时长内接收到每个返回的探测报文,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数,当最大节点传输参数超出预设阈值时,将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,使得最大节点传输参数对应的节点所属等价路径的一个以上大流量业务流被分担到最小节点传输参数对应的节点所属等价路径。如果最大节点传输参数超出了预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,因此,需要将这条等价路径上的数据流量分担至最小节点传输参数对应的节点所属等价路径上传输。通过探测报文对节点传输参数的探测,探测得到一条等价路径上每个节点对应的节点传输参数,基于每个节点对应的节点传输参数来衡量整条等价路径的负载轻重,如果最大节点传输参数大于预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,通过将这条等价路径上的数据流量分担到路径负载更轻的等价路径(最小节点传输参数对应的节点所属等价路径)上,减轻了路径负载重的等价路径的传输负担,从而提高了网络的数据流量分担效果。
本发明实施例还提供了一种网络设备,如图6所示,包括处理器601和机器可读存储介质602,机器可读存储介质602存储有能够被处理器601执行的机器可执行的指令,指令由处理器601加载并执行:以实现本发明实施例所提供的数据流量分担方法。
上述机器可读存储介质可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,机器可读存储介质还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processor,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本实施例中,处理器601通过读取机器可读存储介质602中存储的机器可执行的指令,通过加载并执行指令,能够实现:在当前检测周期到达时,源节点沿到达目的节点的每条等价路径发送一个探测报文,用于探测经过的等价路径上各节点对应的节点传输参数,目的节点所接收到的每个探测报文携带有探测得到的其经过的等价路径上各节点对应的节点传输参数,并且每个探测报文还携带有参数收集标识和返回标识,目的节点在识别出返回标识后,将探测报文通过其经过的等价路径返回给源节点,源节点判断当前检测周期内每条等价路径是否在预定时长内分别接收到每个返回的探测报文,如果在预定时长内接收到每个返回的探测报文,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数,当最大节点传输参数超出预设阈值时,将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,使得最大节点传输参数对应的节点所属等价路径的一个以上大流量业务流被分担到最小节点传输参数对应的节点所属等价路径。如果最大节点传输参数超出了预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,因此,需要将这条等价路径上的数据流量分担至最小节点传输参数对应的节点所属等价路径上传输。通过探测报文对节点传输参数的探测,探测得到一条等价路径上每个节点对应的节点传输参数,基于每个节点对应的节点传输参数来衡量整条等价路径的负载轻重,如果最大节点传输参数大于预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,通过将这条等价路径上的数据流量分担到路径负载更轻的等价路径(最小节点传输参数对应的节点所属等价路径)上,减轻了路径负载重的等价路径的传输负担,从而提高了网络的数据流量分担效果。
另外,本发明实施例还提供了一种机器可读存储介质,机器可读存储介质内存储有机器可执行的指令,指令被处理器加载并执行,以实现本发明实施例所提供的数据流量分担方法。
本实施例中,机器可读存储介质存储有处理器在运行时执行本发明实施例所提供的数据流量分担方法的机器可执行的指令,因此能够实现:在当前检测周期到达时,源节点沿到达目的节点的每条等价路径发送一个探测报文,用于探测经过的等价路径上各节点对应的节点传输参数,目的节点所接收到的每个探测报文携带有探测得到的其经过的等价路径上各节点对应的节点传输参数,并且每个探测报文还携带有参数收集标识和返回标识,目的节点在识别出返回标识后,将探测报文通过其经过的等价路径返回给源节点,源节点判断当前检测周期内每条等价路径是否在预定时长内分别接收到每个返回的探测报文,如果在预定时长内接收到每个返回的探测报文,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数,当最大节点传输参数超出预设阈值时,将当前检测周期内最小节点传输参数对应的节点所属等价路径的下一跳,替换最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,使得最大节点传输参数对应的节点所属等价路径的一个以上大流量业务流被分担到最小节点传输参数对应的节点所属等价路径。如果最大节点传输参数超出了预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,因此,需要将这条等价路径上的数据流量分担至最小节点传输参数对应的节点所属等价路径上传输。通过探测报文对节点传输参数的探测,探测得到一条等价路径上每个节点对应的节点传输参数,基于每个节点对应的节点传输参数来衡量整条等价路径的负载轻重,如果最大节点传输参数大于预设阈值,则说明最大节点传输参数对应的节点所属等价路径的路径负载较重,通过将这条等价路径上的数据流量分担到路径负载更轻的等价路径(最小节点传输参数对应的节点所属等价路径)上,减轻了路径负载重的等价路径的传输负担,从而提高了网络的数据流量分担效果。
对于网络设备及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、网络设备及机器可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种数据流量分担方法,其特征在于,所述方法包括:
当前检测周期到达时,沿到达目的节点的每条等价路径发送一个探测报文,其中,每个所述探测报文携带参数收集标识以及返回标识;所述参数收集标识用于指示收集节点标识以及节点传输参数,所述返回标识用于指示所述目的节点将每个所述探测报文通过其经过的等价路径返回;
判断所述当前检测周期内每条所述等价路径是否在预定时长内分别接收到每个返回的探测报文;
若是,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数;
当所述最大节点传输参数超出预设阈值时,将所述当前检测周期内最大节点传输参数最小的等价路径的下一跳,替换所述最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,以使所述最大节点传输参数对应的节点所属等价路径的一个以上大流量业务流被分担到所述最大节点传输参数最小的等价路径。
2.根据权利要求1所述的方法,其特征在于,若所述当前检测周期内有任一一条等价路径未在所述预定时长内接收到返回的探测报文,所述方法还包括:
判断在所述当前检测周期内未在所述预定时长内接收到返回的探测报文的等价路径是否在连续M个周期未在所述预定时长内接收到返回的探测报文;其中,M为大于2的正整数;
若是,则将所述当前检测周期内最大节点传输参数最小的等价路径的下一跳,替换所述连续M个周期未在所述预定时长内接收到返回的探测报文的等价路径的多个转发表项中最高匹配次数转发表项中的下一跳,以使所述连续M个周期未在所述预定时长内接收到返回的探测报文的等价路径的一个以上大流量业务流被分担到所述最大节点传输参数最小的等价路径。
3.根据权利要求1所述的方法,其特征在于,所述节点传输参数是出端口带宽利用率;所述根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数,包括:
根据每个返回的探测报文中各节点对应的出端口带宽利用率,识别最大的出端口带宽利用率。
4.根据权利要求1所述的方法,其特征在于,所述节点传输参数是时间戳;所述根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数,包括:
根据每个返回的探测报文中各节点对应的时间戳,识别最大的节点时延。
5.根据权利要求1所述的方法,其特征在于,每个所述探测报文为带内网络遥测探测报文;所述参数收集标识以及所述返回标识设置于所述带内网络遥测探测报文的带内网络遥测头内;
每个返回的带内网络遥测报文的元数据metedata携带了各节点标识及其节点传输参数。
6.一种数据流量分担装置,其特征在于,所述装置包括:
发送模块,用于当前检测周期到达时,沿到达目的节点的每条等价路径发送一个探测报文,其中,每个所述探测报文携带参数收集标识以及返回标识;所述参数收集标识用于指示收集节点标识以及节点传输参数,所述返回标识用于指示所述目的节点将每个所述探测报文通过其经过的等价路径返回;
判断模块,用于判断所述当前检测周期内每条所述等价路径是否在预定时长内分别接收到每个返回的探测报文;
识别模块,用于若所述判断模块的判断结果为所述当前检测周期内每条所述等价路径在预定时长内分别接收到每个返回的探测报文,则根据每个返回的探测报文中各节点对应的节点传输参数,识别最大节点传输参数;
替换模块,用于当所述最大节点传输参数超出预设阈值时,将所述当前检测周期内最大节点传输参数最小的等价路径的下一跳,替换所述最大节点传输参数对应的节点所属等价路径的多个转发表项中最高匹配次数转发表项中的下一跳。
7.根据权利要求6所述的装置,其特征在于,若所述当前检测周期内有任一一条等价路径未在所述预定时长内接收到返回的探测报文,所述判断模块,还用于:
判断在所述当前检测周期内未在所述预定时长内接收到返回的探测报文的等价路径是否在连续M个周期未在所述预定时长内接收到返回的探测报文;其中,M为大于2的正整数;
所述替换模块,还用于:
若所述判断模块的判断结果为在所述当前检测周期内未在所述预定时长内接收到返回的探测报文的等价路径在连续M个周期未在所述预定时长内接收到返回的探测报文,则将所述当前检测周期内最大节点传输参数最小的等价路径的下一跳,替换所述连续M个周期未在所述预定时长内接收到返回的探测报文的等价路径的多个转发表项中最高匹配次数转发表项中的下一跳。
8.根据权利要求6所述的装置,其特征在于,所述节点传输参数是出端口带宽利用率;
所述识别模块,具体用于:
根据每个返回的探测报文中各节点对应的出端口带宽利用率,识别最大的出端口带宽利用率。
9.根据权利要求6所述的装置,其特征在于,所述节点传输参数是时间戳;
所述识别模块,具体用于:
根据每个返回的探测报文中各节点对应的时间戳,识别最大的节点时延。
10.根据权利要求6所述的装置,其特征在于,每个所述探测报文为带内网络遥测探测报文;所述参数收集标识以及所述返回标识设置于所述带内网络遥测探测报文的带内网络遥测头内;
每个返回的带内网络遥测报文的元数据metedata携带了各节点标识及其节点传输参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910681036.3A CN110417674B (zh) | 2019-07-26 | 2019-07-26 | 一种数据流量分担方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910681036.3A CN110417674B (zh) | 2019-07-26 | 2019-07-26 | 一种数据流量分担方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110417674A CN110417674A (zh) | 2019-11-05 |
CN110417674B true CN110417674B (zh) | 2022-06-21 |
Family
ID=68363217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910681036.3A Active CN110417674B (zh) | 2019-07-26 | 2019-07-26 | 一种数据流量分担方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110417674B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110995609A (zh) * | 2019-12-20 | 2020-04-10 | 新华三半导体技术有限公司 | 报文发送方法、装置、电子设备及存储介质 |
CN113132222B (zh) * | 2019-12-31 | 2023-04-18 | 华为技术有限公司 | 报文转发方法、设备及计算机可读存储介质 |
EP4068710A4 (en) | 2020-01-07 | 2023-01-11 | Huawei Technologies Co., Ltd. | LOAD SHARE METHOD, DEVICE AND NETWORK SYSTEM |
CN112003763B (zh) * | 2020-08-07 | 2022-05-24 | 山东英信计算机技术有限公司 | 网络链路的监测方法、监测装置、监测设备及存储介质 |
CN112804145B (zh) * | 2020-12-31 | 2022-06-21 | 锐捷网络股份有限公司 | 基于分段标识列表的流量统计方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1929442A (zh) * | 2006-08-11 | 2007-03-14 | 杭州华为三康技术有限公司 | 网络节点及其估算接收报文间隔时间、探测路径带宽的方法 |
CN103139070A (zh) * | 2013-01-29 | 2013-06-05 | 大唐移动通信设备有限公司 | 一种数据发送的路径选择方法及装置 |
WO2016062106A1 (zh) * | 2014-10-20 | 2016-04-28 | 华为技术有限公司 | 报文处理方法、装置及*** |
CN106605391A (zh) * | 2014-08-29 | 2017-04-26 | 思科技术公司 | 带宽加权的等价多路径路由 |
CN107547365A (zh) * | 2017-08-29 | 2018-01-05 | 新华三技术有限公司 | 一种报文传输路径选择方法及装置 |
CN108390820A (zh) * | 2018-04-13 | 2018-08-10 | 华为技术有限公司 | 负载均衡的方法、设备及*** |
CN109361603A (zh) * | 2018-11-26 | 2019-02-19 | 浪潮思科网络科技有限公司 | 基于可编程交换芯片动态调整等价路径流量的方法及*** |
US10298488B1 (en) * | 2016-09-30 | 2019-05-21 | Juniper Networks, Inc. | Path selection and programming of multiple label switched paths on selected paths of multiple computed paths |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4961833B2 (ja) * | 2006-05-19 | 2012-06-27 | 日本電気株式会社 | クラスタシステム、負荷分散方法、最適化クライアントプログラム、及び調停サーバプログラム |
-
2019
- 2019-07-26 CN CN201910681036.3A patent/CN110417674B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1929442A (zh) * | 2006-08-11 | 2007-03-14 | 杭州华为三康技术有限公司 | 网络节点及其估算接收报文间隔时间、探测路径带宽的方法 |
CN103139070A (zh) * | 2013-01-29 | 2013-06-05 | 大唐移动通信设备有限公司 | 一种数据发送的路径选择方法及装置 |
CN106605391A (zh) * | 2014-08-29 | 2017-04-26 | 思科技术公司 | 带宽加权的等价多路径路由 |
WO2016062106A1 (zh) * | 2014-10-20 | 2016-04-28 | 华为技术有限公司 | 报文处理方法、装置及*** |
US10298488B1 (en) * | 2016-09-30 | 2019-05-21 | Juniper Networks, Inc. | Path selection and programming of multiple label switched paths on selected paths of multiple computed paths |
CN107547365A (zh) * | 2017-08-29 | 2018-01-05 | 新华三技术有限公司 | 一种报文传输路径选择方法及装置 |
CN108390820A (zh) * | 2018-04-13 | 2018-08-10 | 华为技术有限公司 | 负载均衡的方法、设备及*** |
CN109361603A (zh) * | 2018-11-26 | 2019-02-19 | 浪潮思科网络科技有限公司 | 基于可编程交换芯片动态调整等价路径流量的方法及*** |
Non-Patent Citations (1)
Title |
---|
一种基于链路繁忙趋势值的等价多路径选择算法;田铭等;《信息工程大学学报》;20100415(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110417674A (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110417674B (zh) | 一种数据流量分担方法及装置 | |
US8115617B2 (en) | Alarm reordering to handle alarm storms in large networks | |
US8427958B2 (en) | Dynamic latency-based rerouting | |
EP2583420B1 (en) | Monitoring path characterisation information | |
US8363551B2 (en) | Measuring network metrics | |
CN112994961B (zh) | 传输质量检测方法及装置、***、存储介质 | |
RU2019104412A (ru) | Чувствительная ко времени программно определяемая сеть | |
US20130132608A1 (en) | System And Method For Determination Of Routing Information In A Network | |
US9548928B2 (en) | Network system, controller, and load distribution method | |
JP5673663B2 (ja) | ループ検出装置、システム、方法およびプログラム | |
US20210273952A1 (en) | Attack response point selecting apparatus and attack response point selecting method | |
Shihada et al. | A novel implementation of TCP Vegas for optical burst switched networks | |
US8274889B2 (en) | Method, system and computer program product involving congestion detection in ethernet | |
US20200136944A1 (en) | Data Transmission Performance Detection | |
JP5408608B2 (ja) | 暗号トラヒック識別装置及びそれを備える暗号トラヒック識別システム | |
CN113810295A (zh) | 一种路径检测方法及装置、*** | |
US8615011B2 (en) | Method of routing a packet | |
CN108243117B (zh) | 一种流量监控方法、装置及电子设备 | |
JP3953999B2 (ja) | 輻輳検知装置、tcpトラヒックの輻輳検知方法およびプログラム | |
EP3085021B1 (en) | Probing a network | |
EP4243368A1 (en) | Data obtaining method and apparatus, device, and storage medium | |
Poddar et al. | A channel trust based approach for congestion control in IoT | |
US9813319B1 (en) | Method of detecting packet loss in a communication network | |
CN115632986A (zh) | 一种路径负载均衡方法和*** | |
CN117978739A (zh) | 报文发送方法和装置、存储介质及电子装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |