iSlot官方网站

从尺度到落地:万兆园区 ,选以太彩光 丨 《万兆园区以太彩光钻研汇报》技术钻研会
date
预约直播
AI时期 ,医疗网络怎么建 丨 iSlot官方网站医疗极简以太彩光双超融合网络解决规划颁布
date
预约直播
iSlot官方网站 - 引领潮水
产品
< 返回主菜单
产品中心
产品
解决规划
< 返回主菜单
解决规划中心
行业
合作同伴
返回主菜单
选择区域/说话
iSlot官方网站 - 引领潮水

您订阅的产品有更新 ,请实时查阅

查看详情
iSlot官方网站 - 引领潮水 iSlot官方网站 - 引领潮水

数据中心网络等价多蹊径(ECMP)技术利用钻研

【ECMP】目前数据中心网络宽泛利用的Fabric架构中会利用大量的ECMP ,本文结合ECMP运行道理针对以上问题进行分析 ,并探求若何优化ECMP的使用。

  • iSlot官方网站 - 引领潮水

    颁布功夫:2018-09-04

  • iSlot官方网站 - 引领潮水

    点击量:

  • iSlot官方网站 - 引领潮水

    点赞:

分享至

iSlot官方网站 - 引领潮水
iSlot官方网站 - 引领潮水
iSlot官方网站 - 引领潮水

我想评论

目前数据中心网络宽泛利用的Fabric架构中会利用大量的ECMP(Equal-Cost Multipath Routing ,简写ECMP),其利益重要体此刻能够提高网络冗余性和靠得住性 ,同时也提高了网络资源利用率;大量的ECMP链路在特定场景下运行过程中会引发其他问题。例如 ,当某条ECMP链路断开后 ,ECMP组内所有链路流量城市被沉新HASH ,在有状态的服务器区域(如LVS)中将导致雪崩景象 ,又或者会出现多级ECMP的HASH极化导致链路拥塞等。

本文将结合ECMP运行道理针对以上问题进行分析 ,并探求若何优化ECMP的使用。

 

等价多蹊径路由

等价多蹊径路由 ,即存在多条达到统一个主张地址的相称开销的蹊径。当设备支持等价路由时 ,发往该主张IP 或者主张网段的三层转发流量就能够通过分歧的蹊径分管 ,实现网络链路的负载平衡 ,并在链路出现故障时 ,实现急剧切换。

 

ECMP实现流程

iSlot官方网站 - 引领潮水

▲图例1:ECMP流程图

 

• 步骤一:HASH因子的选择

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

 

iSlot官方网站 - 引领潮水

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

 

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

 

• 步骤二:HASH推算

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

ASH算法有好多种 ,我们以XOR算法为例做出注明。XOR运算法令蕴含两个输入比特位一样时为0 ,分歧则为1。HASH因子分歧 ,运算了局也不尽一样。

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

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

●将数值a再进行高16bit和低16bit做XOR推算得出16bit数值b;

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

●数值c代替数值b的11~8bit ,得出数值d;

●数值d截取低位10bit即为lb key。

2、HASH因子为SIP+DIP/DIP

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

●渣滓运算步骤与SIP运算一致。

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

●SIP XOR DIP得到32bit的数值a;

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

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

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

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

●数值e代替数值d的11~8bit ,得出数值f;

●数值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所示:

iSlot官方网站 - 引领潮水

▲图例2:ECMP转发图

 

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

iSlot官方网站 - 引领潮水

▲图例3:故障后ECMP转发图

 

1、优化规划:

为预防单台LVS服务器故障或者单链路故障导致整个ECMP组内流量全数被沉新HASH ,ECMP可选取弹性HASH算法来优化。选取弹性HASH算法后 ,仅将故障链路的流量沉新HASH到其他活跃链路上 ,而非故障链路上的数据流则无需扭转下一跳。实现成效如图例4所示:

iSlot官方网站 - 引领潮水

▲图例4:ECMP弹性HASH算法

 

弹性HASH具体实现道理:

iSlot官方网站 - 引领潮水

▲图例5:弹性HASH流程

 

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

 

iSlot官方网站 - 引领潮水

▲图例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之间链路有一条空闲 ,极大的浪费了网络资源 ,甚至会导致流量拥塞。

iSlot官方网站 - 引领潮水

▲图例7:HASH极化

 

1、优化规划:

• 同厂商Leaf设备和Spine设备均选取一样上联链路数场景下 ,应预防在相邻的两台设备上使用一样的负载平衡算法;

• 设备在运行HASH推算时 ,除传统的五元组表 ,能够增添扰动因子 ,预防HASH推算了局一样。

 

HASH扰动的推算过程中HASH因子依然正常提取 ,再增长用户自界说随机扰动因子 ,经过HASH算法运算时 ,分歧互换机HASH推算了局就将不一致 ,以达到预防HASH极化景象的出现。

 

iSlot官方网站 - 引领潮水

▲图例8:HASH扰动推算过程

 

动态负载平衡技术实现

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

iSlot官方网站网络新一代25G数据中心网络解决规划中所选取的芯片 ,已可能支持DLB(Dynamic load balance ,动态链路负载)个性 ,可基于流量负载状态实现动态的HASH负载平衡。具体实现步骤是互换机为每条进行负载平衡的数据流创建一个流表 ,基于流表纪录流量统计信息 ,凭据流量统计信息动态调整链路负载平衡。

 

本期作者:王磊

iSlot官方网站网络互联网系统部行业征询

iSlot官方网站 - 引领潮水

 

往期杰出回首  

▌ 【第一期】浅谈物联网技术之通讯和谈的纷争

▌ 【第二期】若何通过网络遥测(Network Telemetry)技术实现精密化网络运维?

▌ 【第三期】畅谈数据中心网络运维自动化

▌ 【第四期】基于Rogue AP反造的无线安全技术探求

▌ 【第五期】流量可视化之ERSPAN的前世今生

▌ 【第六期】若何实现数据中心网络架构“去”堆叠

▌ 【第七期】运维可视化之INT职能详解

▌ 【第八期】浅析RDMA网络下MMU水线设置

▌ 【第九期】第七代无线技术802.11ax详解

▌ 【第十期】数据中心自动化运维技术索求之互换机零配置上线

▌ 【第十一期】技术盛宴 | 浅谈数据中心100G光?

 

有关推荐:

• 流量可视化之ERSPAN的前世今生

• 运维可视化之INT职能详解

• 相识gRPC技术 ,这一篇就够了

更多技术博文

任何必要 ,请联系iSlot官方网站

iSlot官方网站 - 引领潮水

返回顶部

收起
iSlot官方网站 - 引领潮水 文档AI副手
iSlot官方网站 - 引领潮水 文档评价
ev-close ev-close-m
该资料是否解决了您的问题?
ev-close ev-close-m
您对当前页面的中意度若何?
不咋滴
极度好
dark-star dark-star dark-star dark-star dark-star
ev-close ev-close-m
您中意的原因是(多。?
您对文档是否还有其它的问题或建议?
为尽快解决问题 ,请您留下联系方式以便回复
邮箱
手机号
ev-bg
感激您的反。
iSlot官方网站 - 引领潮水
iSlot官方网站 - 引领潮水
iSlot官方网站 - 引领潮水
请选择服务项目
关关征询页
售前征询 售前征询
售前征询
售后服务 售后服务
售后服务
定见反馈 定见反馈
定见反馈
更多联系方式
【网站地图】