System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及网络传输,尤其涉及一种等价成本多路径选择系统、方法、设备、集群以及介质。
技术介绍
1、等价成本多路径(equal cost multi-path,ecmp)技术,在具备多个等效路径的情况下,将流量分担到多个路径上,从而达到负载均衡和提高网络性能的目的。当有多个等价的路径可供选择时,路由器可以根据规则将数据包分发到这些路径之一,从而实现多路径负载均衡。例如,在一个网络拓扑中,如果某个目标主机有两条等效路径可供选择,那么路由器可以根据其内部算法将数据包均匀地分发到这些路径上,从而达到负载均衡的目的。当前云计算网络大量使用开源虚拟交换机(openvswitch,ovs)来实现报文的转发。ovs同样支持ecmp,但是ovs是靠软件处理来实现,处理速度慢,并且,会浪费大量的计算资源。
技术实现思路
1、本申请提供了一种等价成本多路径选择系统、方法、设备、集群以及介质,能够把等价成本多路径选择卸载到专用芯片中进行处理,并且数据平面开发工具不感知。
2、第一方面,提供了一种等价成本多路径选择系统,包括数据平面开发工具包以及专用芯片,
3、所述专用芯片用于从第一数据报文中获取所述第一数据报文的第一多元组,其中,所述第一多元组包括目标互联网协议地址以及第一源互联网协议地址;
4、所述专用芯片用于将所述第一多元组和第一下级流表项进行匹配,得到第一匹配结果,其中,所述第一下级流表项是所述数据平面开发工具包生成的,包括第一下级匹配项以及第一下级动作项,其
5、所述专用芯片用于在第一匹配结果为匹配的情况下,执行所述第一下级动作项中的动作。
6、在一些可能的设计中,所述专用芯片用于从第二数据报文中获取所述第二数据报文的第二多元组,其中,所述第二多元组包括目标互联网协议地址以及第二源互联网协议地址;
7、所述专用芯片用于将所述第二多元组和第二下级流表项进行匹配,得到第二匹配结果,其中,所述第二下级流表项是所述数据平面开发工具包生成的,包括第二下级匹配项以及第二下级动作项,其中,所述第二下级匹配项包括第二复合键值,所述第二复合键值包括所述静态键值以及第二动态键值,所述第二动态键值是根据所述目标互联网协议地址以及所述第二源互联网协议地址生成的,所述第二下级动作项包括将所述第二数据报文转发到第二路径,增加所述上级流表项的所述统计量;
8、所述专用芯片用于在第二匹配结果为匹配的情况下,执行所述第二下级动作项中的动作;
9、其中,所述第一路径和所述第二路径为等价成本多路径,所述第二下级流表项级联所述上级流表项,所述动态键值在所述多元组为所述第二多元组的情况下,为所述第二动态键值。
10、在一些可能的设计中,所述第一下级动作项包括增加所述第一下级流表项的统计量,所述第二下级动作项包括增加所述第二下级流表项的统计量。
11、在一些可能的设计中,所述专用芯片用于将第一数据报文中的目标互联网协议地址和所述第一下级流表项中的静态键值进行匹配;
12、所述专用芯片用于在第一数据报文中的目标互联网协议地址和所述第一下级流表项中的静态键值匹配的情况下,将所述第一多元组进行散列运算,得到散列值;
13、所述专用芯片用于将所述散列值和所述第一下级流表项中的第一动态键值进行匹配,在所述散列值和所述第一下级流表项中的第一动态键值匹配的情况下,执行所述第一下级动作项中的动作。
14、在一些可能的设计中,所述专用芯片包括第一流水线、第二流水线以及第三流水线,
15、所述第一流水线用于将第一数据报文中的目标互联网协议地址和所述第一下级流表项中的静态键值进行匹配;
16、所述第二流水线用于在第一数据报文中的目标互联网协议地址和所述第一下级流表项中的静态键值匹配的情况下,将所述第一多元组进行散列运算,得到散列值;
17、所述第三流水线用于将所述散列值和所述第一下级流表项中的第一动态键值进行匹配,在所述散列值和所述第一下级流表项中的第一动态键值匹配的情况下,执行所述第一下级动作项中的动作。
18、在一些可能的设计中,所述数据平面开发工具中安装有虚拟交换机,所述虚拟交换机存储有所述上级流表项,所述第一下级流表项和所述第二下级流表项是所述虚拟交换机生成并发送给所述专用芯片的。
19、在一些可能的设计中,所述第二动态键值是对所述第二多元组进行散列计算得到的。
20、在一些可能的设计中,所述专用芯片包括专用集成电路以及现场可编辑门电路中的一种或多种。
21、在一些可能的设计中,所述等价成本多路径选择系统设置于数据处理单元中。
22、第二方面,提供了一种等价成本多路径选择方法,应用于数据处理单元中,数据处理单元包括数据平面开发工具包以及专用芯片,
23、所述专用芯片从第一数据报文中获取所述第一数据报文的第一多元组,其中,所述第一多元组包括目标互联网协议地址以及第一源互联网协议地址;
24、所述专用芯片将所述第一多元组和第一下级流表项进行匹配,得到第一匹配结果,其中,所述第一下级流表项是所述数据平面开发工具包生成的,包括第一下级匹配项以及第一下级动作项,其中,所述第一下级匹配项包括第一复合键值,所述第一复合键值包括静态键值以及第一动态键值,所述静态键值是根据所述目标互联网协议地址生成的,所述第一动态键值是根据所述目标互联网协议地址以及所述第一源互联网协议地址生成的,所述第一下级动作项包括将所述第一数据报文转发到第一路径,增加上级流表项的流量的统计量,所述上级流表项包括上级匹配项以及上级动作项,所述上级匹配项为所述目标互联网协议地址,所述上级动作项包括所述静态键值以及动态键值,所述动态键值在多元组为所述第一多元组的情况下,为所述第一动态键值,所述第一下级流表项级联所述上级流表项;
25、所述专用芯片在第一匹配结果为匹配的情况下,执行所述第一下级动作项中的动作。
26、在一些可能的设计中,所述第一下级动作项包括增加所述第一下级流表项的统计量,所述第二下级动作项包括增加所述第二下级流表项的统计量。
27、在一些可能的设计中,所述专用芯片将第一数据报文中的目标互联网协议地址和所述第一下级流表项中的静态键值进行匹配;
28、所述专用芯片在第一数据报文中的本文档来自技高网...
【技术保护点】
1.一种等价成本多路径选择系统,其特征在于,包括数据平面开发工具包以及专用芯片,
2.根据权利要求1所述的系统,其特征在于,
3.根据权利要求2所述的系统,其特征在于,所述第一下级动作项包括增加所述第一下级流表项的统计量,所述第二下级动作项包括增加所述第二下级流表项的统计量。
4.根据权利要求3所述的系统,其特征在于,
5.根据权利要求4所述的系统,其特征在于,所述专用芯片包括第一流水线、第二流水线以及第三流水线,
6.根据权利要求1至5任一项所述的系统,其特征在于,所述数据平面开发工具中安装有虚拟交换机,所述虚拟交换机存储有所述上级流表项,所述第一下级流表项和所述第二下级流表项是所述虚拟交换机生成并发送给所述专用芯片的。
7.根据权利要求2至5任一项所述的系统,其特征在于,所述第二动态键值是对所述第二多元组进行散列计算得到的。
8.根据权利要求1至5任一项所述的系统,其特征在于,所述专用芯片包括专用集成电路以及现场可编辑门电路中的一种或多种。
9.根据权利要求1至5任一项所述的系统,
10.一种等价成本多路径选择方法,其特征在于,应用于数据处理单元中,数据处理单元包括数据平面开发工具包以及专用芯片,
11.一种计算设备,其特征在于,包括:处理器以及存储器,其中,所述存储器用于存储指令,所述处理器用于运行所述存储器中的指令,以执行如权利要求10所述的方法。
12.一种计算集群,其特征在于,包括多个计算设备,其中,每个计算设备包括处理器以及存储器,所述存储器用于存储指令,所述处理器用于运行所述存储器中的指令,以执行如权利要求10所述的方法。
13.一种计算机可读存储介质,其特征在于,包括指令,所述指令被计算设备执行时,执行如权利要求10所述的方法。
...【技术特征摘要】
1.一种等价成本多路径选择系统,其特征在于,包括数据平面开发工具包以及专用芯片,
2.根据权利要求1所述的系统,其特征在于,
3.根据权利要求2所述的系统,其特征在于,所述第一下级动作项包括增加所述第一下级流表项的统计量,所述第二下级动作项包括增加所述第二下级流表项的统计量。
4.根据权利要求3所述的系统,其特征在于,
5.根据权利要求4所述的系统,其特征在于,所述专用芯片包括第一流水线、第二流水线以及第三流水线,
6.根据权利要求1至5任一项所述的系统,其特征在于,所述数据平面开发工具中安装有虚拟交换机,所述虚拟交换机存储有所述上级流表项,所述第一下级流表项和所述第二下级流表项是所述虚拟交换机生成并发送给所述专用芯片的。
7.根据权利要求2至5任一项所述的系统,其特征在于,所述第二动态键值是对所述第二多元组进行散列计算得到的。
8.根据权利要...
【专利技术属性】
技术研发人员:刘先锋,
申请(专利权)人:珠海星云智联科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。