前言
业务的高速发展驱动了腾讯DCN(Data Center Network)数据中心网络的大规模建设,对此我们通过设备自研、自动化系统等手段打造了高质量、低成本、高效率的智能DCN。近年来,随着大数据以及人工智能时代的来临,对性能有着苛刻诉求的分布式系统对网络提出了更高要求。因此,在规模与应用双重驱动下,我们也将极致性能与极致运营并驾齐驱,通过端网协同,构建高吞吐、低时延、高可用的极致DCN。

1.构建大规模网络的核心能力:
底层极简,上层智能
回顾过去几年DCN的演进历程,我们围绕着数据中心网络的两个主要特征——标准以及海量,通过架构弹性设计、软硬件自研以及智能化运营系统,在质量、效率、成本上得到了重大提升:
1.架构弹性设计(架构极简,分层解耦):我们将数据中心抽象成不同的网络架构单元,去除复杂特性,通过弹性架构设计的思路提供最小逻辑产品,例如将业务接入层,网关接入层与核心层解耦,并以搭积木的方式满足不同业务需求,不但帮助业务选择最优成本的方案,更利于快速建设。

分层组件化,弹性组装
2.交换机软硬件全面自研(设备极简,快速迭代):在数据中心网络架构降低复杂度的前提下,我们开启了自研交换机产品(TNOS)的工作,在交换机硬件上具备部件级成本透明、乐高式模块化设计、高精度状态采集以及极简无背板框架等特点,打造了高可控、高质量、低成本的交换机产品平台。在软件上通过基于开源SONiC深度自研的TCSOS,不光提供了自动化、智能化的可运营能力,更结合可编程芯片在高性能的基础上,实现高灵活性。
3.智能化运营系统(运营极简,系统智能):以网络数据模型化驱动上层应用快速开发,帮助数据中心网络克服海量运营的难题。集中体现在:

搭载智能化上层应用平台的腾讯自研交换机
底层极简,上层智能,该体系将复杂度上移到管理平台,简约并不简单,是DCN长期以来应对大规模网络的有效手段。
2. 端网协同打造极致DCN
做到海量设备的稳定运行、成本最优、快速交付之后,面对大数据&人工智能时代,极致DCN将解决性能与可用性两方面的难题:
1.高性能诉求:分布式并行系统中存在海量的数据交互,通信效率直接影响到分布式系统整体加速比,因此最终通信能力成为制约分布式系统算力规模scale out上限的关键因素,例如在存储介质不断提升的今日,网络已陡然成为通信瓶颈。因此提供高吞吐、低时延的网络成为了迫切需求。
2.高可用诉求:所有计算、存储资源承载于网络之上,任何网络故障都会造成大面积服务与大量用户的影响。网络故障分钟级恢复能力已无法满足云计算对网络可靠性的要求,云计算对通信故障的恢复要求已经提升到了秒级以下。然而传统从网络视角对设备、端口、链路粒度的故障发现与隔离恢复等手段都无法达到秒级以下水平,因此也催生了极致DCN在故障发现机制和恢复手段等方面新的突破和创新。
作为离端侧最近的DCN,资源池化的趋势让网络就像一台计算机一样,不光提供高速的管道,更通过端侧协议栈、智能网卡等与交换机协同作业,从主动拥塞控制算法提供低延时,再到协议栈快速感知故障,秒级自愈,打造极致性能与极致运营。

极致DCN:端网协同打造确定性低时延
2.1 极致性能:提供低延时、
高吞吐的网络性能服务
极致性能是满足分布式系统高加速比要求、保障云计算极速体验的核心内容,其中包含低时延、高吞吐以及大规模等多个方面。首先我们在架构上提供大带宽、无阻塞比的交换矩阵,之后通过对业务进行分级,从而实现带宽容量管理,确保分级传输,形成差异化服务。此外,我们通过对交换机hash算法的抽象,对超算场景进行流量规划,可将带宽跑到90%以上。最后,为了更好的贴近应用需求,提供差异化的传输能力、进一步提高业务整体性能,我们提出了基于Credit的主动拥塞控制方案。传统的拥塞控制以被动的形式进行调控,交换机通过监控缓存对排队的报文着色,接收端根据着色信息对源端发送通告降速,基于这种做法,网络仅反馈低频&低精度的信息,算法收敛慢。此外,一直以来的拥塞控制算法追求的高吞吐、低排队时延的目标与业务实际感受到的流/message目标完成时间有一定距离。这种优化目标的差距决定了上述拥塞控制算法不能针对具体的流/message需求做差异化的传输。也不能根据应用流量的大小分布做针对平均流完成时间的进一步优化。

基于主动拥塞控制的流调度算法
对此,我们让存在资源冲突的终端以低开销的信令通信的方式进行协商,从而实现提高网络收敛速度。同时也提出,基于上述信令通信结果的带宽补足技术,解决带宽资源分配冲突导致的带宽资源浪费问题,实现提高网络收敛过程中的带宽利用率。进而提高整体FCT和网络能承受的最大负载。
2.2 极致运营:提供业务级度量、
秒级自愈等运营能力
业务对速率的要求越高,对损失速率的容忍度就越低。因此极致网络不光要考虑如何提供极致的速率,更要通过更加智能化的手段保证高速率。
2.2.1 面向业务的精准测量:
Service Telemetry

基于“以应用为中心的网络”理念,我们研发了Service Telemetry系统,向业务提供高精度、更加丰满和定制化的数据,帮助业务打开网络的黑盒子,主要提供三方面的能力:
2.2.2秒级内故障自愈
此前我们通过网络上的各种探测手段,或是基于探针,或是基于设备状态,加上控制器路由隔离手段,将故障自愈时间控制在20S以内。然而在面对高性能业务的秒级自愈要求下,我们转变了避障思路,需求起源于业务,那么为何不把避障的主动权交于业务呢?通过端网协同,首先我们在端侧实现了协议栈层面的TCP&RDMA状态检测,通过内核获取协议栈状态信息。从而细粒度的获得业务流吞吐、丢包等信息,将故障发现降低到600ms以内。其次在故障换路上,相对于更换五元组改变hash结果的不确定性,我们在自研交换机上实现了基于HASH偏移的确定性换路特性,业务可以通过更换魔术字来确保100%更换到其余路径上。当发生静默丢包时,端侧无需依赖于网络,自身快速秒级内避障。
结语
回顾腾讯DCN的发展历程,我们先是依托底层极简,上层智能的思想构建了一套让海量设备快速建设与稳定运行的基础能力体系。如今,在对网络性能有着极致要求的应用驱动下,我们通过端网协同的手段,不光提供极速,更让智能化运营体系更进一步,保证极速。最终让用户体验到极致的云服务。
欢迎关注公众帐号“鹅厂网事”,我们给你提供最新的行业动态信息、腾讯网络最接地气的干货分享。
注1:凡注明来自“鹅厂网事”的文字和图片等作品,版权均属于“深圳市腾讯计算机系统有限公司”所有,未经官方授权,不得使用,如有违反,一经查实,将保留追究权利;
注2:本文图片部分来自互联网,如涉及相关版权问题,请联系:sandyshuang@tencent.com 或 mianyang@tencent.com
/
关
注
我
们
/

/ 鹅厂网事/
分享鹅厂网络的那些事