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

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

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

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号-51