数据中心网络等价多路径ECMP技术

文章正文
发布时间:2024-08-19 04:23

服务器 数据中心

目前数据中心网络广泛应用的Fabric架构中会应用大量的ECMP(Equal-Cost Multipath Routing,简写ECMP),其优点主要体现在可以提高网络冗余性和可靠性,同时也提高了网络资源利用率;大量的ECMP链路在特定场景下运行过程中会引发其他问题。

目前数据中心网络广泛应用的Fabric架构中会应用大量的ECMP(Equal-Cost Multipath Routing,简写ECMP),其优点主要体现在可以提高网络冗余性和可靠性,同时也提高了网络资源利用率;大量的ECMP链路在特定场景下运行过程中会引发其他问题。例如,当某条ECMP链路断开后,ECMP组内所有链路流量都会被重新HASH,在有状态的服务器区域(如LVS)中将导致雪崩现象,又或者会出现多级ECMP的HASH极化导致链路拥塞等。本文将结合ECMP运行原理针对以上问题进行分析,并探讨如何优化ECMP的运用。

[[248001]]

等价多路径路由

等价多路径路由,即存在多条到达同一个目的地址的相等开销的路径。当设备支持等价路由时,发往该目的IP 或者目的网段的三层转发流量就可以通过不同的路径分担,实现网络链路的负载均衡,并在链路出现故障时,实现快速切换。

ECMP实现流程:

图例1:ECMP流程图

步骤一:HASH因子的选择

首先数据报文转发查询路由表,确认存在多个等价路由,再根据当前用户配置的流量均衡算法,提取参与 HASH 计算的关键字段,即HASH因子。ECMP 流量均衡可选择的 HASH 因子如下表:

图表1:流量均衡模式对应HASH因子表

注:因ECMP为三层转发,即使配置基于源MAC、目的MAC或者源目MAC作为HASH因子,系统也会默认选择源IP作为HASH因子。另外,在选择提取HASH因子为目的IP时ECMP会默认选择源目IP作为HASH因子。

步骤二:HASH计算

基于步骤一提取的 HASH 因子,根据 HASH 算法进行计算,得出相应的 HASH lb-key(load-balance key)。 ECMP 流量均衡支持的 HASH 算法包括异或(XOR)、CRC、 CRC+扰码等。

HASH算法有很多种,我们以XOR算法为例做出说明。XOR运算法则为两个输入比特位相同时为0,不同则为1。HASH因子不同,运算结果也不尽相同。

1、 HASH因子为IP address source(SIP):

a) SIP XOR 0 ,得出一个32bit的数值a

b) 将数值a再进行高16bit和低16bit做XOR计算得出16bit数值b

c) 数值b的15~12bit与11~8bit再做XOR计算,得出4bit数值c

d) 数值c替换数值b的11~8bit,得出数值d

e) 数值d截取低位10bit即为lb key

2、 HASH因子为SIP+DIP/DIP:

a) DIP XOR SIP ,得出一个32bit的数值a

b) 剩余运算步骤与SIP运算一致

3、 HASH因子为SIP+DIP+SP+DP:

a) SIP XOR DIP得到32bit的数值a

b) 数值a的低16bit XOR SP 得到32bit的数值b

c) 数值b的低 16bit XOR DP 得到 32bit 的数值c

d) 数值c的高16bit XOR 低16bit得到16bit的数值d

e) 数值d的15~12bit XOR 11~8bit,得到4bit的数值e

f) 数值e替换数值d的11~8bit,得出数值f

g) 数值f截取低10bit,即为lb-key

步骤三:确认转发下一跳

数据报文经过路由查表后找到对应ECMP 基值(base-ptr),根据 HASH 因子通过 HASH 算法计算获得 HASH lb-key 后,进行 ECMP 下一跳链路数(Member-count)求余计算,再与ECMP基值进行加法运算得出转发下一跳index,即确定了下一跳转发路由。

计算公式:Next-hop =(lb-key % Member-count)+ base-ptr

上述流程为ECMP常规转发流程,但在特定网络环境下运行过程中就会出现问题,接下来继续分析数据中心网络中ECMP遇到的2个常见问题。

问题一 单链路故障导致ECMP组所有数据流被重新HASH计算

当Leaf交换机发送6条数据流到LVS服务器,Leaf先进行HASH运算负载均衡到每一台LVS服务器上,正常流量转发如图例2所示:

图例2:ECMP转发图

当某台LVS服务器网卡出现故障或者链路出现故障,Leaf交换机会将ECMP组内数据流将重新HASH计算,再进行负载均衡到剩余有效链路上,进而导致TCP会话断开,发生雪崩现象,例如一些支付类业务,同一个用户的一次支付过程会调用多个业务服务,业务侧要求一次支付的过程都落在同一个处理服务器上,当出现单条链路故障后不仅影响该链路所在LVS承载的用户,同时还影响该ECMP组下其他LVS承载的用户,如图例3所示:

图例3:故障后ECMP转发图

优化方案:

为避免单台LVS服务器故障或者单链路故障导致整个ECMP组内流量全部被重新HASH,ECMP可采用弹性HASH算法来优化。采用弹性HASH算法后,仅将故障链路的流量重新HASH到其他活跃链路上,而非故障链路上的数据流则无需改变下一跳。实现效果如图例4所示:

图例4:ECMP弹性HASH算法

弹性HASH具体实现原理:

图例5:弹性HASH流程

在交换机上生成一张索引表(RH Flow Set Table),用于存放相关索引值对应下一跳路由地址。数据报文经过路由查表后找到对应ECMP 基值,提取HASH因子进行HASH运算,在HASH Key与ECMP数量取余数时无论是否出现故障链路,均以最初数量进行取余运算,因此运算结果一致,非故障链路数据依然按照原有链路转发。如下图中,链路3故障后软件CPU将及时更新RH flow table,将失效链路用正常链路均匀替换。

图例6:弹性HASH索引表替换示意图

问题二 HASH极化问题

如图例7所示,在Leaf设备和Spine设备均采用上联链路数为偶数且ECMP算法及HASH因子一致的情况下,数据流在Leaf设备上经过一次HASH计算,将数据流负载分担到两台Spine上,均衡后效果为数据流1、2、3转发至Spine-1,数据流4、5、6转发至Spine-2,Spine再进行HASH计算负载分担到两台DCI核心上,因在Spine层采用的HASH算法与Leaf的HASH算法一致,最终Spine-1的数据流1、2、3均转发至DCI-1上,未负载分担到DCI-2上任何数据流,而Spine-2的数据流4、5、6均转发至DCI-2上,未负载分担到DCI-1上任何数据流,同理Leaf-2发送的数据流也是如此,进而产生HASH极化问题,导致SPINE和DCI之间链路有一条空闲,极大的浪费了网络资源,甚至会导致流量拥塞。

图例7:HASH极化

优化方案:

同厂商Leaf设备和Spine设备均采用相同上联链路数场景下,应避免在相邻的两台设备上使用相同的负载均衡算法;

设备在运行HASH计算时,除传统的五元组外,可以增添扰动因子,避免HASH计算结果相同。

HASH扰动的计算过程中HASH因子仍然正常提取,再增加用户自定义随机扰动因子,经过HASH算法运算时,不同交换机HASH计算结果就将不一致,以达到避免HASH极化现象的出现。

图例8:HASH扰动计算过程

动态负载均衡技术实现

在数据中心网络中,突发流量多,并且存在大象流和老鼠流并存现象,本文所描述的基于数据流五元组的HASH算法,并结合HASH扰动因子技术实现流量负载均衡,但无法实现大象流和老鼠流并存的网络中多链路之间的流量负载均衡。

锐捷网络新一代25G数据中心网络解决方案中所采用的***芯片,已能够支持DLB(Dynamic load balance,动态链路负载)特性,可基于流量负载状态实现动态的HASH负载均衡。具体实现方法是交换机为每条进行负载均衡的数据流创建一个流表,基于流表记录流量统计信息,根据流量统计信息动态调整链路负载均衡。

责任编辑:武晓燕 来源: 机房360

分享到微信

微信扫码分享

分享到微博

相关推荐

技术盛宴 | 数据中心网络等价多路径(ECMP)技术应用研究

目前数据中心网络广泛应用的Fabric架构中会应用大量的ECMP,其优点主要体现在可以提高网络冗余性和可靠性,同时也提高了网络资源利用率;大量的ECMP链路在特定场景下运行过程中会引发其他问题。

2018-09-07 10:35:27

数据中心

数据中心内负载均衡-ECMP的使用分析

数据中心的网络拓扑通常采用CLOS结构,主机之间常存在多条路径。数据中心为满足吞吐量敏感型流量的需求会提供大量的带宽资源。

2018-03-15 09:20:00

数据中心容器网络技术

容器的到来给数据中心网络提出了一些新的挑战,为了适配容器,网络部分也需要随之调整,所以围绕容器产生了很多不同的网络解决方案,本文主要来介绍一下几种容器网络方案技术。

2019-03-29 14:45:29

开发进阶:Dotnet Core多路径异步终止

今天用一个简单例子说说异步的多路径终止。我尽可能写得容易理解吧,但今天的内容需要有一定的编程能力。

2021-01-20 08:16:06

二层多路径环境中的网关负载

在目前的数据中心解决方案中,二层多路径应该是一个大趋势,它可以消除环路,同时还能提供多路径负载。但二层多路径中网关的设置在目前的方案中却提的比较少,收集了一些信息,目前的解决方案主要...

2011-05-13 14:55:13

计算机网络最伟大的变革:多路径TCP

TCP是网络协议集中的核心协议。它将底层IP协议提供的不可靠数据包传输服务变为一种可靠的数据流协议。它无疑是计算机网络进化历程中最伟大的变革。

2015-07-15 11:14:42

2012数据中心网络技术趋势

据ZKResearch首席分析师ZeusKerravala说,过去两年,分析人员预测聚合式基础设施和扁平网络会崛起。到了2012,这些将会真正实施。聚合式基础设施将占据主导位置,而其他数据中心的潮流,比如通过以太网光纤通道实现存储聚合也许就草草收场了。下面是Kerravala对今年数据中心的看法。

2012-01-12 09:36:18

数据中心网络技术

数据中心网络虚拟化技术概要

随着云计算和大数据等新兴应用的快速发展,“数据中心即计算机”(datacenterasacomputer)的技术发展趋势逐渐明朗。数据中心作为一台计算机,与传统的高性能计算机具有很大的不同。

2015-10-09 17:01:08

数据中心网络虚拟化

最新数据中心网络架构技术纵览

网络是数据中心的最重要组成部分,主要由大量的二层接入设备和少量的三层设备组成的网络结构。以前,数据中心的网络规模普遍不大,网络通过数十台设备简单互连就可达到互联互通的目的。而现在,数据中心对网络的要求越来越高,为了满足各种应用,网络架构也需要及时调整,网络架构经历了多种多样的变化。

2017-05-11 17:54:25

最新数据中心网络架构技术纵览

网络是数据中心的最重要组成部分,主要由大量的二层接入设备和少量的三层设备组成的网络结构。

2017-05-08 09:48:50

Google数据中心网络技术漫谈

作为世界上最强大的互联网服务提供商之一,Google一直在推动着业界技术的发展,最知名的当属其在分布式计算领域的领先成果和领导地位。

2015-07-16 11:14:59

述说数据中心网络技术简史

数据中心网络基本只涉及二三层转发,有些四到七层的应用主要在安全、负载均衡上面,网络层面很少,现在也有一些四到七层的网络设备,绝对是非主流,应用规模很小很小。数据中心网络经过这么多年的发展,其实用到的技术就是二三层网络技术。

2018-03-22 12:31:40

TRILL不适合数据中心网络架构的几大原因

关于使用TransparentInterconnectionofLotsofLinks(TRILL)协议来实现数据中心网络桥接和多路径的宣传非常的多,但是将TRILL作为基础的数据中心架构忽略了一些重要的新趋势,包括云网络分段中出现的虚拟LAN(VLAN)类型变化需求。

2011-06-22 10:28:53

优化数据中心升级路径

2016年4月15日,第九届中国数据中心大会在京召开。耐克森综合布线系统(亚太区)应邀参与,并现场同步举行2016年度全新解决方案发布会。此前一直备受期待的八类铜缆解决方案也在发布会现场首次亮相。

2016-04-22 10:10:45

数据中心

数据中心面对的网络监听技术

数据中心里最宝贵的就是数据,这些数据里隐含着很多私有的、机密信息,小到个人隐私,大到国家安全,所以保护数据是数据中心最为关键的任务,数据一旦被窃取被泄露,给数据中心带来的损失无法估计。

2017-06-28 10:29:48

浅谈数据中心网络泛洪技术

泛洪在数据中心网络中是一种常见现象,很多时候泛洪转发都是良性的,对网络无影响。以太网标准对网络设备的要求也是允许流量有短时间的泛洪,尤其是框式设备是不可避免的,只要在极短的时间内就结束泛洪,都是一种正常的网络现象。

2017-12-11 15:15:50

浅谈数据中心网络的SDN技术

SDN除了为网络设计带来了极大便利,也便于对数据中心网络进行管理,可以说SDN就是升级版的网络管理软件。

2014-11-26 10:23:34

数据中心SDN

数据中心网络融合技术DCB漫谈

“融合”并不是一个新词,已经成为许多技术领域的大势所趋,尤其是数据中心领域。数据中心里所讲的融合技术是对硬件层、虚拟化层、控制层以及管理层构件的全面融合,最终可以让整个数据中心资源做到统一控制,统一管理,DCB就是一种数据中心网络融合技术。

2015-10-15 14:32:58

数据中心网络业务隔离技术浅析

数据中心承载的业务是多种多样的,数据中心需要通过各种各样的技术来满足用户的各类需求,其中最常见的需求就是对各种业务的访问进行控制,对业务进行隔离。数据中心有很多种方法实现,比如:防火墙、ACL、策略路由等方法。本文将主要讲述通过数据中心的网络基础技术实现业务隔离的方法。

2014-02-14 09:22:00

数据中心网络业务隔离

浅析云数据中心网络技术特性

随着云计算、移动互联网、Web2.0等新业务的兴起,传统的数据中心已经无法满足。业界正掀起新一轮数据中心建设的高潮,新一代的云计算数据中心随之而产生。