用于智能多跳覆盖路由的方法技术

技术编号:28881401 阅读:12 留言:0更新日期:2021-06-15 23:19
此处提出了用于选择优选路线以将分组从第一网络节点路由到第二网络节点的系统和方法。维护可能路线集,每条路线具有相关联的权重值。然后基于权重值选择路线的随机子集。然后探测该子集的每条路线以确定其增益值。基于增益值(例如,通过选择最高增益值)选择优选路线。然后,基于相应增益值来更新所有权重值。周期性地重复这些步骤。然后,每当需要路由分组时,就使用当前指定为优选的路线。

【技术实现步骤摘要】
【国外来华专利技术】用于智能多跳覆盖路由的方法
技术介绍
在广域网(SD-WAN)中通过软件定义的联网连接的网络设备(或网络节点)常常无法识别用于将分组从一个网络节点路由到另一个网络节点的最优路径。通常,选择具有最短跳数的路线(route)(即,将遍历最少网络节点数量的路线)。然而,将遍历最少节点数量的路线常常不是具有最小时延或最大带宽的路线。例如,时延可以受到网络中某个时刻的停电或掉电的影响。在这样的情况下,基于最短跳数的路由效率非常低。
技术实现思路
因而,需要一种基于网络的实际状况为分组选择优选(例如,最佳)路线的技术。在一些实施例中,路由系统可以尝试为每条可能路线保持时延和带宽的最新表。然而,始终探测所有路线是时间密集且需要计算的任务,在大型网络中执行该任务可能具有挑战性且耗时。在一些实施例中,仅所有路线的子集可以被探测。例如,每条路线可以具有相关联的权重值。可以周期性地选择所有路线的子集来主动被探测。可以随机化该选择,但是可以更频繁地选择具有较高权重值的路线。然后针对时延探测所选择的路线,并基于该探测的结果更新权重。在任何时间,当前已知具有最小延迟的路由被用于路由分组。这样,无需探测所有路线就可以识别出优选(例如,最佳)路线。本文描述的主题包括用于为将要从网络中的第一网络节点被路由到第二网络节点的分组选择优化路由的方法、系统和计算机可读介质。在一些实施例中,每个网络节点可以维护从第一网络节点到第二网络节点的可能路线集。例如,每条路线可以定义将以多跳方式通过其它网络节点来路由分组的该其它网络节点的顺序。在一些实施例中,每条路线可以具有相关联的权重。例如,优选(例如,最佳)路线及其相关联的权重可以被存储为有序对。在一些实施例中,网络节点可以选择要被探测的路线的子集,并且在一些情况下,该子集可以包括随机选择的一些路线,但是其中该随机选择受到权重值的影响或偏向。在一些实施例中,子集可以比完整的路线集小得多。然后可以主动探测子集中的每条路线的时延或带宽,并且可以基于被探测路线的确定的值来选择优选(例如,最佳)路线。然后可以基于时延值或带宽值来更新一些(或全部)权重。可以周期性地重复上面提到的步骤。在一些实施例中,每当节点接收到将分组路由到目的地节点的请求时,网络节点就可以经由当前被指定为优选(例如,最佳)路线的路线来路由该分组。因为这种技术不要求连续探测大量的路线(例如,所有路线),所以实现了显著的计算量和网络带宽的节省。特别地,上面提到的方法优于常规方法,因为优选(例如,最佳)路线的计算利用的花费比主动探测所有可能路线将涉及的花费少得多。在一些实施例中,网络节点可以是路由器、交换机、服务器、虚拟路由器、能够执行联网功能的硬件和软件的任何其它组合,或其任何组合。在一些实施例中,网络节点经由点对点或多址网络链路连接。在一些实施例中,内置在网络节点中的控制电路系统(circuitry)可以执行处理所需的动作。在一些实施例中,控制电路系统可以维护从第一网络节点到第二网络节点的可能路线集,其中每条可能路线具有相关联的权重值。例如,每条路线可以定义可以通过其它网络节点来路由分组的该其它网络节点的顺序,并且具有相关联的数字权重值。然后,控制电路系统可以从可能路线集中随机选择路线的子集,并且有时,该子集可以包括比整个集合少得多的路线。在一些实施例中,随机选择可以受到每条可能路线的相应相关联的权重值的影响。例如,权重值为“10”的路线被选择的可能性是权重值为“5”的路线的两倍。在一些实施例中,路线的子集还可以包括从第一网络节点到第二网络节点的最后使用的路线以及从第一网络节点到第二网络的互联网协议(IP)路线(即,由IP路由算法选择的路线)。在一些实施例中,控制电路系统(例如,第一网络节点的控制电路系统)可以探测路线的子集中的每条路线以确定对于每条被探测路线的增益值。例如,可以沿着该路线发送探测分组以收集增益计算所需要的数据。然后,控制电路系统可以将路线的子集中具有最高增益值的路线指定为优选(例如,最佳)路线。可以通过将增益值彼此比较来确定最高增益值。在一些实施例中,控制电路系统可以基于相应经确定的增益值来更新与每条相应被探测路线相关联的每个权重值。在一些实施例中,可以周期性地(例如,每小时)重复以下步骤:随机地选择路线的子集、探测子集中的每条路线、选择优选(例如,最佳)路线、以及更新权重值。在任何时间,控制电路系统都可以在第一网络节点处接收将分组路由到第二网络节点的请求。例如,可以从另一个网络节点接收要被路由的分组,或者可以由在第一网络节点上执行的应用生成要被路由的分组。控制电路系统可以响应于接收到该请求,而沿着在给定时间被指定为优选(例如,最佳)路线的路线来路由该分组。在一些实施例中,控制电路系统可以通过经由正在评估的被探测路线从第一网络节点向第二网络节点发送探测分组来确定对于路线的子集中的特定被探测路线的增益值。在沿着路线的每一跳之后,每个网络节点都可以将时间戳附加到探测分组。例如,时间戳可以包括节点的标识符以及在相应网络节点处接收到分组的时间。然后,控制电路系统可以基于每个附加的时间戳计算时延值。例如,可以对跳之间的时间求和以计算时延值。然后,控制电路系统可以基于时延值来确定对于特定被探测路线的增益值。例如,可以将增益值设置为等于时延值的倒数值。在一些实施例中,控制电路系统可以探测路线的子集中的每条路线,以确定每条被探测路线的带宽值。在一些实施例中,这可以在探测每条路线的时延的同时或代替探测每条路线的时延来执行。在一些实施例中,控制电路系统可以将路线的子集中具有最高带宽值的路线指定为优选(例如,最佳)路线。在一些实施例中,控制电路系统可以使用以下技术确定对于路线的子集中的特定被探测路线的带宽值。在一些实施例中,控制电路系统可以经由特定被探测路线从第一网络节点向第二网络节点背对背地发送两个分组。在一些实施例中,第二网络节点的控制电路系统可以通过测量在第二网络节点处接收第一分组和第二分组的速率来计算分散(dispersion)值。在一些实施例中,控制电路系统然后可以基于分散值来计算带宽值。例如,分组对序列(TOPP)技术可以被用于执行该计算。在一些实施例中,控制电路系统可以通过修改分组以包括覆盖(overlay)路由报头来沿着优选路线路由分组。在一些实施例中,可以基于覆盖路由报头的数据由沿着路线的每个网络节点路由分组。在一些实施例中,控制电路系统可以填充覆盖路由报头以包括对于优选路线的每一跳的地址。在一些实施例中,沿着路线的每个网络节点将如覆盖路由报头所指定的那样将分组路由到下一个节点。在一些实施例中,控制电路系统可以执行与网络节点相关联的权重的初始化。在一些实施例中,控制电路系统可以基于相应路线的长度来初始化对于每条可能路线的每个相关联的权重值。在一些实施例中,控制电路系统然后可以相对于彼此归一化所有权重。在一些实施例中,控制电路系统可以通过将特定被探测路线的确定的增益除以与特定被探测路线相关联的权重值来计算比率从而更新与特定被探测路线相关联的权重值。然后,控制电路系统可本文档来自技高网...

【技术保护点】
1.一种用于识别对于从第一网络节点到第二网络节点的分组的优选路线的方法,所述方法包括:/n(a)维护从第一网络节点到第二网络节点的可能路线集,其中每条可能路线具有相关联的权重值;/n(b)从可能路线集中随机选择路线的子集,其中所述随机选择受到每条可能路线的相应相关联的权重值的影响;/n(c)探测路线的子集中的每条路线,以确定对于每条被探测路线的增益值;/n(d)基于比较经确定的增益值,将路线的子集中的路线指定为优选路线;/n(e)基于相应经确定的增益值,更新与每条相应被探测路线相关联的每个权重值;/n(f)周期性地重复步骤(b)-(e);/n(g)在给定时间在第一网络节点处接收将所述分组路由到第二网络节点的请求;以及/n(h)响应于接收到所述请求,沿着在给定时间被指定为优选路线的路线路由所述分组。/n

【技术特征摘要】
【国外来华专利技术】20180910 US 16/126,8551.一种用于识别对于从第一网络节点到第二网络节点的分组的优选路线的方法,所述方法包括:
(a)维护从第一网络节点到第二网络节点的可能路线集,其中每条可能路线具有相关联的权重值;
(b)从可能路线集中随机选择路线的子集,其中所述随机选择受到每条可能路线的相应相关联的权重值的影响;
(c)探测路线的子集中的每条路线,以确定对于每条被探测路线的增益值;
(d)基于比较经确定的增益值,将路线的子集中的路线指定为优选路线;
(e)基于相应经确定的增益值,更新与每条相应被探测路线相关联的每个权重值;
(f)周期性地重复步骤(b)-(e);
(g)在给定时间在第一网络节点处接收将所述分组路由到第二网络节点的请求;以及
(h)响应于接收到所述请求,沿着在给定时间被指定为优选路线的路线路由所述分组。


2.根据权利要求1所述的方法,还包括:
将从第一网络节点到第二网络节点的最后使用的路线包括到路线的子集中;以及
将从第一网络节点到第二网络节点的(互联网协议)IP路线包括到路线的子集中。


3.根据权利要求1所述的方法,其中确定对于路线的子集中的特定被探测路线的增益值包括:
经由特定被探测路线,从第一网络节点向第二网络节点发送探测分组;
在沿着路线的每一跳处将时间戳附加到所述探测分组;
基于每个附加的时间戳计算时延值;并且
基于所述时延值确定对于特定被探测路线的增益值。


4.根据权利要求1所述的方法,还包括:
探测路线的子集中的每条路线,以确定对于每条被探测路线的带宽值;以及
将路线的子集中具有最高带宽值的路线指定为优选路线。


5.根据权利要求4所述的方法,其中确定对于路线的子集中的特定被探测路线的带宽值包括:
经由特定被探测路线,从第一网络节点向第二网络节点背对背地发送两个分组;
通过测量在第二网络节点处接收所述两个分组中的第一分组和第二分组的速率来计算分散值;并且
基于所述分散值计算所述带宽值。


6.根据权利要求1所述的方法,其中沿着在给定时间被指定为优选路线的优选路线路由所述分组包括:
修改所述分组以包括覆盖路由报头;并且
基于所述覆盖路由报头的数据来路由所述分组。


7.根据权利要求6所述的方法,还包括:
填充所述覆盖路由报头以包括对于优选路线的每一跳的地址;以及
将所述分组路由到所述覆盖路由报头所识别出的每个地址。


8.根据权利要求1所述的方法,还包括:
基于相应路线的长度,初始化对于每条可能路线的每个相关联的权重值;以及
归一化相关联的权重值。


9.根据权利要求1所述的方法,其中更新与特定被探测路线相关联的权重值包括:
通过将特定被探测路线的确定的增益除以与特定被探测路线相关联的权重值来计算比率值;
计算所述比率值的自然指数;并且
将所述自然指数乘以当前权重值以计算更新的权重值。


10.根据权利要求1所述的方法,其中第一网络节点和第二网络节点是软件定义的广域网的节点。


11.一种用于识别对于从第一网络节点到第二网络节点的分组的优选路线的系统,所述系统包括:
存储电路系统,用于存储指令以操作所述系统;
通信电路系统,...

【专利技术属性】
技术研发人员:G·博纳地M·尼斯佩尔
申请(专利权)人:极进网络公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1