计算接口高速化
阿姆达尔定律(Amdahl's lesser known law)表明:并行计算中,每1MHz的CPU最大能产生1Mbit/s的IO。因此,一台有32核2.5GHz的CPU的服务器,则需要配置100Gb/s的网卡,才能将计算性能充分发挥出来。服务器上行对接100GE接入,400GE核心转发成为越来越清晰的主流网络架构。
计算能力并行化
阿姆达尔定律(Amdahl's lesser known law)表明:并行计算中,每1MHz的CPU最大能产生1Mbit/s的IO。因此,一台有32核2.5GHz的CPU的服务器,则需要配置100Gb/s的网卡,才能将计算性能充分发挥出来。服务器上行对接100GE接入,400GE核心转发成为越来越清晰的主流网络架构。
计算能力并行化
并行化是解决应用性能扩展的成功实践。随着用户数和数据规模增大,并行化程度越来越高。据Facebook统计【2】,用户在朋友圈一个“点赞”动作,会发起到数据中心1KB的HTTP请求,在数据中心内部,则放大为930KB的并行操作,包括88次Cache查找(648KB),35次数据库查找(25.6KB)和392次后端RPC调用(257KB)。计算并行化,使得DCN内部流量(东西向)千倍增大,加剧网络拥塞,增加了通信时间,降低计算效率,智能无损网络的出现,是大势所趋。
计算资源虚拟化
计算资源虚拟化
1998年,Greene(VMWARE创始人)等发明了服务器虚拟化技术,通过把一个物理服务器虚拟为多个虚拟机,将计算资源的平均利用率从10%提升到30%;而近几年新兴的容器技术(如Docker,Kata,Unikernel),通过更轻量化的虚拟层技术,进一步提升计算资源的利用率。计算虚拟化带来的动态性,彻底改变了人管理网络的方式,驱动网络迈向自动驾驶。
计算领域的三大方向,引领DCN发展趋势,向400G智能无损的自动驾驶网络迈进。
400GE DCN网络
迎接计算节点100GE接口浪潮
处理器多核化以及AI处理器的普及, IO带宽需求大幅增加。总线技术的发展,部分缓解了计算的IO瓶颈。2020年,PCIe 4.0@16GT/s开始商用,IO带宽达到50G~100G/200G;2021年,PCIe5.0@32GT/s芯片也将发布,IO带宽达到100G~400G。
网卡的速率成为提升IO能力的又一关键。网卡从10GE演进到25GE,并快速推进到100GE。配置100GE网卡的服务器在2020年快速起量,成为主流。根据分析师机构CREHAN的预测,在2020年, 100GE网卡的发货量将超越50GE网卡,成为业界对25GE网卡下一代的选择;
![](http://www.ctiforum.com/uploadfile/2020/0428/20200428094622664.png)
基于成本、功耗和生态考虑,DCN或将跳过200G,直接演进到400G。从历史实践看,服务器网卡和网络速率之比为1:4,即25G网卡对应100G网络,100G网卡对应400G网络;从光模块架构看,200G和400G都采用4-lane架构,PAM4调制方式,成本和功耗趋同,导致400G每比特成本相比200G降低一倍;从光模块生态看,400G模块种类丰富,给客户更多的选择;目前,200G的模块种类只有100m SR4和2km FR4两种;400G的模块种类达到了5种,涵盖100m、500m和2km。
华为在2019年初已经发布了业界首款面向AI时代的数据中心交换机CloudEngine 16800,支持业界最高密度的48*400GE端口/每槽位,业界的5倍,为100G服务器接入,400G数据中心网络做好了充分的准备。
计算能力并行化
驱动DCN向智能无损网络演进
随着计算规模增大,通信占比持续增大,抵消了规模增长带来的收益,造成集群性能的负增长。如图所示【3】,Netflix的分布式电影评分推荐系统中,当计算规模达到90台,出现拐点,计算效率不升反降。
![](http://www.ctiforum.com/uploadfile/2020/0428/20200428094505165.png)
为了降低通信占比,降低应用等待时间,增大网络规模,无损网络是必经之路。
众所周知,应用之间通信需求是无损的。有两种实现方式:
(1)无损协议+有损网络:
在10G网卡时代,一般采用这种方式,即网络可以在拥塞时丢包,在协议层进行补救,如在TCP协议上部署重传机制,在发现网络丢包后,进行重传。
(2)有损协议+无损网络:
进入到25G/100G网卡时代, 采用网卡硬化协议栈,解决对CPU的消耗。为了硬化协议栈,只能简化协议,从而依赖无损网络。据测算,要吞吐25G~100G的数据,要消耗服务器10%~30%左右的CPU;为了解决此问题,需要在智能网卡上硬化协议,硬化带来的好处是高性能,但也会丧失协议的灵活性。业界采用RDMA协议,替代复杂的TCP, 便于网卡的硬化。RDMA协议对丢包极其敏感,2%的丢包就会造成网络有效吞吐降到0。所以,无损网络成为DCN的基本特征。
从TCP诞生之初,是为Internet设计的,考虑的是低速的,长距(数百公里)的网络,围绕流量控制技术,出现了大量的创新。在进入到400G DCN时代,环境发生了巨大的变化,从Internet的慢速链路到DCN 400G高速链路, 从数百公里的长距Internet到百米的DCN网络,从全互联的流量模型到Incast突发流量模型, TCP已经不能适用这种变化,需要对流量控制技术在协议和网络上重新定义,RDMA协议替代TCP,将成为必然。
拥塞控制,是通过网络和端点协作,控制入网流量速率,使得入网流量和网络带宽匹配,满而不溢。网络拥塞通知的准确性,对网络利用率影响很大。过早拥塞通知,将导致计算侧过度减速,网络利用率低。过晚拥塞通知,将导致网络过载,导致丢包。通过AI算法,预测流量模型,准确的通知计算侧,控制入网流量。
更进一步,网络基于准确的活跃流统计,为每条流分配合适的速率,避免计算节点之间探测式发送,减少突发,从而减少网络的抖动。这种基于Credit的拥塞机制,特别适合存储等低抖动网络上。
在并行计算中, 存在木桶效应,即最长完成的流,决定整个任务的完成时间。所以,对不同的流进行差异化的调度,降低整个任务的完成时间。在关键流或者co-flow识别上, AI算法,可以发挥出重要的作用。
在大规模并行计算场景下,让网络深度参与到计算通信过程中,从而减少通信量和时间,提升应用性能,称为在网计算。
我们知道,并行计算下,多端点之间的通信是全互联的关系,通信量存在N平方问题。造成随着计算规模增大,计算性能下降,在网计算的思路是把网络作为中间节点,参与到计算参数过程中,即把部分计算的功能部署到网络上。这样,通信的复杂度从O(2(n-1))降为O(1);也就是消除计算规模增大的性能拐点。
在网计算,需要通信层和网络协作,主流的并行计算通信层包括MPI和NCCL两种,所以网络也需要分别适配这两种通信层。
华为提出业界首创的智能无损DCN,基于内置的AI芯片和智能无损的iLossless调度算法,重定义流量控制技术,重分布网络计算功能, 100%释放算力。作为业界唯一的0丢包的以太网,经过第三方Tolly的权威认证,在计算和存储场景,要比业界其他厂商的交换机提升30%的应用性能。
计算虚拟化深入发展
驱动DCN从SDN迈向自动驾驶
- 计算虚拟化,打破了服务器物理边界,计算资源可根据需求动态伸缩。SDN的出现,是为了解决网络随计算而动的问题,即根据计算资源位置的变化,由SDN控制器动态为其构建一张逻辑网络,称为部署自动化。
- 部署自动化阶段,由原来的人-机接口,演进到机-机接口,配置效率百倍提升,从小时级到分钟级。
- 部署自动化的第一步是简化;如果在复杂的网络环境下部署自动化,会适得其反,让事情变得更复杂。因为需要匹配各种组网,梳理复杂的依赖关系,应对各种流量模型。业界在SDN的实践中也走过弯路,最终,遵循简化优选的原则,网络拓扑简化为Leaf/Spine,转发简化为VXLAN,协议简化为BGP-EVPN,网关简化为多活网关,为自动化打下坚实基础。
- 部署自动化的第二步是标准化;特别是SDN北向接口的标准化,让网络融入到云计算的生态中。Openstack云平台成为主流,使得Neutron成为事实标准,加速SDN生态的成熟。
- 部署自动化,一方面带来百倍的部署效率提升,另一方面,也带来两大副作用:
高频度变更,使得配置错误存在放大效应
传统网络以天计的变更频度,让管理员有充裕的时间进行检查。但SDN以分钟计的高频变更,让一个小小的配置错误,都放大数百倍,成为潜在的隐患。据谷歌披露【4】,数据中心网络中68%的故障是由于网络变更造成的。网络验证技术,在配置生效前,校验配置面的错误、冲突以及数据面的环路和黑洞等,可提前消除配置风险。
高频度变更,把压缩运维时间到分钟级
当网络瞬息万变,传统静态网络的运维方式都将失效。如何在几分钟之内,完成故障检测,定位和恢复,成为核心需求。
智能运维,基于海量数据采集和AI预测算法,提前预测故障,像扁鹊大哥一样,在病情发作前,提前发现,并下药铲除。当故障发生时, 采用融入专家经验的知识图谱, 拨开各种表面现象,找到根因,为故障恢复提供依据。
自动驾驶网络,除了部署和运维的自动化,还包括规划自动化,建设自动化和网络自优化,即“规建维优”全生命周期自动化。
如自动驾驶汽车,自动驾驶网络根据自动化程度也分为5级,华为CloudFabric数据中心网络的自动驾驶能力已经演进到L3级,即释放运维人员的手。未来会走向L4高度自治和L5完全自治网络,释放运维人员的眼和脑。走向L5的自动驾驶,还有很长的路要走,需要业界同仁的共同努力。
AI是使能器
支撑DCN向智能无损和自动驾驶网络演进
无论是智能无损还是自动驾驶网络,它的最终实现和落地离不开AI技术应用。没有AI算法的支撑,自动驾驶网络和智能无损将是空中楼阁。AI算法在语音、语言处理、图像等领域获得了巨大的成功,将AI技术和网络结合,也将使得网络焕发青春。
如下图所示, 在识别、预测、调优和质量评估等方面, 学术界和工业界都投入了巨大的研究热情,也初显成效。
![](http://www.ctiforum.com/uploadfile/2020/0428/20200428094505267.png)
华为正在携手学术界和工业界, 持续挖掘AI能力, 和网络技术充分结合,持续提升计算效率,一起迈向全新的DCN时代。