产品展示

鹅厂网事:数据中心网络中的hash问题研究千龙国际娱乐

  跟着腾讯营业的快速成长,腾讯收集所承载的流量也正在成倍的增加,收集容量从晚年的10G快速增加到100G,1T,10T以至更大。受制于收集手艺的成长和成本的考虑,当前收集端口容量次要仍是以10G为从,近两年腾讯也逐渐起头利用了100G端口,可是单端口容量的增加,仍远远无法满脚腾讯对带宽的需求,所以多链路绑缚,路由ECMP等手艺,正在腾讯收集中大量利用。千龙国际链路数量的的添加正在提拔收集容量的同时,也对收集运营带来了良多问题。记得晚年刚起头接触收集的时候,已经很简单的理解1条10G链路取10条1G链路绑缚正在一路是等同的,但正在工做中慢慢发觉,流量并不会完全平均的分布正在10条链路上,这里涉及到多路径hash问题,接下来简单引见下腾讯数据核心收集中多路径hash碰到的几种常见问题。

  某日,腾讯收集监控发觉,LC(IDC内网焦点设备)到MAN(城域网设备)的一条链路带宽撑爆了,排查发觉,LC-1到MAN-1的带宽已满,而LC-1到MAN-2的链路几乎没有流量,查看LC的路由表,转颁发等都没有非常,最初定位是hash极化问题形成的。

  以下图为例,正在这个毛病案例中,腾讯IDC收集的L互换机(三层接入设备)和LC互换机利用的是统一个型号的设备,并利用了不异的hash算法,对于L互换机来说,有四个分歧的流,此中流1,2选择了左边的链路,达到了LC-1设备。因为LC-1和L的hash算法完全不异,所以正在做hash时,LC1将流1,2归为了统一类,都选择了左边的链路进行转发。

  下图场景中也可能存正在hash极化问题。当某一设备的ECMP条目数取lacp绑缚链路数分歧的环境,若是hash算法一样,算出的成果分歧,千龙国际官网lacp上面的流量会因为hash极化而集中到此中的一条链路上。

  b.当前部门厂商设备正在hash计较时候,除保守的五元组外,能够添加其他因子参取计较,避免hash计较成果不异的环境

  a.留意ecmp总数量和每个lacp的链路数量能否存正在比例对应关系,判断能否可能呈现极化现象

  对于收集设备的hash算法,能够基于五元组+源目mac地址进行肆意组合,凡是我们城市选择基于源目IP加源目端口的体例进行hash,由于如许参取hash计较的因子较多,流量正在多条链路上的平衡性较好。可是正在有些场景下,需要设置特定的hash算法。

  以腾讯LVS专区收集为例,LVS互换机从LD(负载平衡)进修到统一方针地址的等价的路由。LVS互换机收到数据后,会按照hash算法,将数据转发到负载平衡设备,再由LD将数据转发到后端具体担任营业处置的办事器上。对于部门营业,例如领取类的营业,统一个用户的一次领取过程会挪用多个营业办事,营业侧要求一次领取的过程都落正在统一个处置办事器上,也就是一个源目标ip的会话必需hash到统一台LD进行转发。

  正在晚期的收集设想中,千龙国际娱乐LVS交hash换机的hash算法是基于源目IP+和谈端口进行计较的,因为方针和谈端口正在交互过程中可能发生变化,导致了部门营业的非常。正在此场景中,LVS互换机的hash算法确定为基于源目IP,确保统一个源目IP数据流,只会被转发到统一台LD上。

  跟着云收集的快速成长,收集虚拟化手艺曾经越来越多的正在腾讯收集中使用,当前支流手艺是基于overlay的收集。

  如图所示,子机用户拜候外部收集时,母机正在子机发出的原始报文外层又添加了一层新的IP包头,正在某些环境,因为子机发出的报文过大,再添加一个新的IP包头后,报文跨越了母机网卡MTU的大小,这时母机遇对该报文进行分片,分成了如图所示的两个报文。

  对于第一个报文,因为报文包含了两层IP包头,部门收集设备正在进行hash计较时,会基于表里层包头一路计较,于是分片报文被转发到了分歧的LD设备,导致营业失败。

  2)点窜营业逻辑,母机收到较大的子机报文后,先对报文进行分片,再进行外层封拆;

  对于方案三,当前并不是所有厂商设备都支撑,考虑到后续雷同场景会越来越多,目前腾讯对新引入的设备,要求可以或许支撑此特征。

  当前收集运营的一大痛点正在于,当营业反馈数据转发存正在非常时,因为收集中存正在海量节点,链路,导致无法快速定位到毛病点,底子缘由,就正在于很难晓得非常流量,承载正在那条路径上。目前大大都收集设备对于流量hash的成果,都是不成视的,若是可以或许实现hash计较成果可视化,那么任何一条流量的转发路径,我们就能够很是清晰的晓得,毛病处置起来,将变得轻松容易良多。

  当前收集设备的hash算法次要仍是基于数据流的五元组进行hash的,正在良多场景下,数据流量仍是没法正在多条链路间做到较为平均的转发。若是正在hash计较时,可以或许将当前链路流量大小也做为hash计较的一个要素,将极大提拔链路的操纵率。