我们一起再聊数据中心网络

​本着“将通信科普到底”的再聊中心原则 ,今天 ,数据我再继续聊一下这个话题 。网络

故事还是再聊中心要从头开始说起 。

1973年夏天 ,数据两名年轻的网络科学家(温顿·瑟夫和罗伯特卡恩)开始致⼒于在新⽣的计算机⽹络中,寻找⼀种能够在不同机器之间进行通讯的再聊中心⽅法。

不久后 ,数据在一本黄⾊的网络便签本上,他们画出了TCP/IP协议族的再聊中心原型。建站模板

几乎在同时 ,数据施乐公司的网络梅特卡夫和博格思,发明了以太网(Ethernet) 。再聊中心

我们现在都知道  ,数据互联网的网络最早原型 ,是老美搞出来的ARPANET(阿帕网)。

ARPANET最开始用的协议超烂 ,满足不了计算节点规模增长的需求。于是,香港云服务器70年代末,大佬们将ARPANET的核心协议替换成了TCP/IP(1978年) 。

进入80年代末 ,在TCP/IP技术的加持下 ,ARPANET迅速扩大  ,并衍生出了很多兄弟姐妹 。这些兄弟姐妹互相连啊连啊 ,就变成了举世闻名的互联网。

可以说  ,TCP/IP技术和以太网技术,是互联网早期崛起的基石。模板下载它们成本低廉  ,结构简单 ,便于开发、部署 ,为计算机网络的普及做出了巨大贡献。

但是后来,随着网络规模的急剧膨胀,传统TCP/IP和以太网技术开始显现疲态 ,无法满足互联网大带宽 、高速率的发展需求 。

最开始出现问题的,源码库是存储。

早期的存储 ,大家都知道,就是机器内置硬盘 ,通过IDE、SCSI 、SAS等接口,把硬盘连到主板上,通过主板上的总线(BUS),实现CPU、内存对硬盘数据的存取 。云计算

后来 ,存储容量需求越来越大  ,再加上安全备份的考虑(需要有RAID1/RAID5) ,硬盘数量越来越多,若干个硬盘搞不定,服务器内部也放不下 。于是,就有了磁阵 。

磁阵,磁盘阵列

磁阵就是专门放磁盘的设备,一口子插几十块那种 。

硬盘数据存取 ,高防服务器一直都是服务器的瓶颈 。开始的时候,用的是网线或专用电缆连接服务器和磁阵,很快发现不够用。于是,就开始用光纤 。这就是FC通道(Fibre Channel ,光纤通道)。

2000年左右 ,光纤通道还是比较高大上的技术 ,成本不低。

当时 ,公共通信网络(骨干网)的光纤技术处于在SDH 155M、622M的阶段  ,2.5G的SDH和波分技术才刚起步 ,没有普及。后来 ,光纤才开始爆发,容量开始迅速跃升 ,向10G(2003)、40G(2010)、100G(2010) 、400G(现在)的方向发展 。

光纤不能用于数据中心的普通网络 ,那就只能继续用网线 ,还有以太网 。

好在那时服务器之间的通信要求还没有那么高  。100M和1000M的网线 ,勉强能满足一般业务的需求 。2008年左右 ,以太网的速率才勉强达到了1Gbps的标准 。

2010年后 ,又出幺蛾子 。

除了存储之外 ,因为云计算、图形处理 、人工智能、超算还有比特币等乱七八糟的原因  ,人们开始盯上了算力 。

摩尔定律的逐渐疲软,已经无法支持CPU算力的提升需求。牙膏越来越难挤,于是 ,GPU开始崛起。使用显卡的GPU处理器进行计算 ,成为了行业的主流趋势  。

​得益于AI的高速发展,各大企业还搞出了AI芯片 、APU 、xPU啊各自五花八门的算力板卡。

算力极速膨胀(100倍以上),带来的直接后果,就是服务器数据吞吐量的指数级增加。

除了AI带来的变态算力需求之外 ,数据中心还有一个显著的变化趋势 ,那就是服务器和服务器之间的数据流量急剧增加 。

互联网高速发展 、用户数猛涨,传统的集中式计算架构无法满足需求,开始转变为分布式架构。

举例来说,现在618,大家都在血拼。百八十个用户,一台服务器就可以 ,千万级亿级,肯定不行了。所以,有了分布式架构,把一个服务,放在N个服务器上 ,分开算 。

分布式架构下,服务器之间的数据流量大大增加了  。数据中心内部互联网络的流量压力陡增 ,数据中心与数据中心之间也是一样 。

这些横向(专业术语叫东西向)的数据报文,有时候还特别大 ,一些图形处理的数据 ,包大小甚至是Gb级别 。

综上原因 ,传统以太网根本搞不定这么大的数据传输带宽和时延(高性能计算 ,对时延要求极高)需求 。所以 ,少数厂家就搞了一个私有协议的专用网络通道技术,也就是Infiniband网络(直译为“无限带宽”技术,缩写为IB) 。

FC vs IB vs 以太网

IB技术时延极低 ,但是造价成本高,而且维护复杂 ,和现有技术都不兼容 。所以,和FC技术一样  ,只在特殊的需求下使用。

算力高速发展的同时,硬盘不甘寂寞,搞出了SSD固态硬盘 ,取代机械硬盘。内存嘛 ,从DDR到DDR2、DDR3、DDR4甚至DDR5 ,也是一个劲的猥琐发育,增加频率,增加带宽 。

处理器 、硬盘和内存的能力爆发,最终把压力转嫁到了网卡和网络身上。

学过计算机网络基础的同学都知道 ,传统以太网是基于“载波侦听多路访问/冲突检测(CSMA/CD)”的机制,极容易产生拥塞,导致动态时延升高 ,还经常发生丢包 。

TCP/IP协议的话 ,服役时间实在太长,都40多年的老技术了,毛病一大堆 。

举例来说,TCP协议栈在接收/发送报文时,内核需要做多次上下文切换 ,每次切换需要耗费5us~10us左右的时延 。另外 ,还需要至少三次的数据拷贝和依赖CPU进行协议封装 。

这些协议处理时延加起来 ,虽然看上去不大 ,十几微秒 ,但对高性能计算来说,是无法忍受的。

除了时延问题外 ,TCP/IP网络需要主机CPU多次参与协议栈内存拷贝。网络规模越大 ,带宽越高 ,CPU在收发数据时的调度负担就越大 ,导致CPU持续高负载 。

按照业界测算数据 :每传输1bit数据需要耗费1Hz的CPU,那么当网络带宽达到25G以上(满载)的时候 ,CPU要消费25GHz的算力 ,用于处理网络 。大家可以看看自己的电脑CPU ,工作频率是多少。

那么,是不是干脆直接换个网络技术就行呢?​

不是不行,是难度太大 。

CPU、硬盘和内存  ,都是服务器内部硬件,换了就换了 ,和外部无关。

但是通信网络技术,是外部互联技术,是要大家协商一起换的。我换了,你没换 ,网络就嗝屁了。

全世界互联网同时统一切换技术协议 ,你觉得可不可能 ?

不可能。所以,就像现在IPv6替换IPv4,就是循序渐进 ,先双栈(同时支持v4和v6) ,然后再慢慢淘汰v4 。

数据中心网络的物理通道,光纤替换网线 ,还稍微容易一点 ,先小规模换,再逐渐扩大 。换了光纤后 ,网络的速度和带宽上的问题,得以逐渐缓解 。

网卡能力不足的问题,也比较好解决 。既然CPU算不过来 ,那网卡就自己算呗  。于是 ,就有了现在很火的智能网卡 。某种程度来说 ,这就是算力下沉。

搞5G核心网的同事应该很熟悉,5G核心网媒体面网元UPF ,承担了无线侧上来的所有业务数据 ,压力极大。

现在 ,UPF网元就采用了智能网卡技术 ,由网卡自己进行协议处理 ,缓解CPU的压力 ,流量吞吐还更快。

如何解决数据中心通信网络架构的问题呢 ?专家们想了半天,还是决定硬着头皮换架构。他们从服务器内部通信架构的角度,重新设计一个方案 。

在新方案里,应用程序的数据,不再经过CPU和复杂的操作系统,直接和网卡通信。

这就是新型的通信机制——RDMA(Remote Direct Memory Access,远程直接数据存取) 。

RDMA相当于是一个“消灭中间商”的技术 ,或者说“走后门”技术。

RDMA的内核旁路机制  ,允许应用与网卡之间的直接数据读写,将服务器内的数据传输时延降低到接近1us。同时 ,RDMA的内存零拷贝机制,允许接收端直接从发送端的内存读取数据  ,极大的减少了CPU的负担 ,提升CPU的效率。RDMA的能力远远强于TCP/IP ,逐渐成为主流的网络通信协议栈 ,将来一定会取代TCP/IP。

RDMA有两类网络承载方案,分别是专用InfiniBand和传统以太网络 。

RDMA最早提出时 ,是承载在InfiniBand网络中。​

但是,InfiniBand是一种封闭架构 ,交换机是特定厂家提供的专用产品 ,采用私有协议,无法兼容现网,加上对运维的要求过于复杂 ,并不是用户的合理选择。

于是,专家们打算把RDMA移植到以太网上。

比较尴尬的是,RDMA搭配传统以太网 ,存在很大问题。

RDMA对丢包率要求极高 。0.1%的丢包率 ,将导致RDMA吞吐率急剧下降 。2%的丢包率 ,将使得RDMA的吞吐率下降为0 。

InfiniBand网络虽然贵 ,但是可以实现无损无丢包 。所以RDMA搭配InfiniBand ,不需要设计完善的丢包保护机制 。

现在好了 ,换到传统以太网环境,以太网的人生态度就是两个字——“摆烂” 。以太网发包,采取的是“尽力而为”的原则,丢包是家常便饭 ,丢了就再传 。

于是 ,专家们必须解决以太网的丢包问题 ,才能实现RDMA向以太网的移植 。再于是 ,就有了前天文章提到的 ,华为的超融合数据中心网络智能无损技术。

说白了,就是让以太网做到零丢包,然后支撑RDMA 。有了RDMA,就能实现超融合数据中心网络。

关于零丢包技术的细节 ,我不再赘述 ,大家看前天那篇文章(再给一遍链接:这里​)。

值得一提的是,引入AI的网络智能无损技术是华为的首创,但超融合数据中心 ,是公共的概念。除了华为之外 ,别的厂家(例如深信服、联想等)也讲超融合数据中心 ,而且,这个概念在2017年就很热了 。

什么叫超融合 ?

准确来说,超融合就是一张网络 ,通吃HPC高性能计算、存储和一般业务等多种业务类型。处理器 、存储 、通信 ,全部都是超融合管理的资源,大家平起平坐。

超融合不仅要在性能上满足这些低时延、大带宽的变态需求 ,还要有低成本,不能太贵 ,也不能太难维护 。

未来  ,数据中心在整体网络架构上 ,就是叶脊网络一条路走到黑(到底什么是叶脊网络 ?​) 。路由交换调度上 ,SDN 、IPv6 、SRv6慢慢发展 。微观架构上 ,RDMA技术发展,替换TCP/IP。物理层上,全光继续发展,400G 、800G 、1.2T…我个人臆测 ,目前电层光层的混搭 ,最终会变成光的大一统 。光通道到全光交叉之后,就是渗透到服务器内部,服务器主板不再是普通PCB,而是光纤背板 。芯片和芯片之间 ,全光通道。芯片内部,搞不好也是光。

路由调度上 ,以后都是AI的天下,网络流量啊协议啊全部都是AI接管 ,不需要人为干预。大量的通信工程师下岗。

好了 ,关于数据中心通信网络的介绍就是这么多 。不知道大家这次有没有看明白?

没看明白的话 ,就再看一次。​

滇ICP备2023006006号-38