☁️ 第五章 驱动云服务的技术
📄 一句话概括

数据中心里的交换机和园区里的交换机名字一样,但要求完全不同:园区网关心的是【能不能连上】,数据中心网关心的是【两台服务器之间要走几跳、跳数会不会变】。所以数据中心改用脊叶(Spine-Leaf)架构——不为了少用设备,为了把路径长度固定下来,让延迟变成可以算出来的数。

📝 本节和前面几节的关系

上一节讲的是【从外面怎么接进来】,这一节讲的是进来之后,在机房里怎么走。

它和 网络的虚拟化③ 扁平网络 是同一条线上的两节:那一节讲的是流量方向的转变(从南北向八成变成东西向八成),这一节讲的是为了适应这个转变,硬件层面要怎么搭。它也接着 4-1——那一节讲机房这栋楼要具备什么,这一节讲楼里的网怎么铺。

一、先看流量往哪走

园区里的网络和数据中心里的网络,最根本的差别在流量的方向:

位置 主要流量方向 典型行为
园区网 南北向为主 员工访问外面的网站、访问机房里的服务器
数据中心网 东西向为主 服务器之间互相调用(一个请求要问好几台机器)

方向一变,对网络的要求就全变了:

这就是数据中心要专门设计网络的原因——不是流量更大,是流量之间的关系更密(4-13 里把这件事叫作【从八成南北向变成八成东西向】)。

二、两种交换机,两种取向

项目 园区交换机 数据中心交换机
端口密度 24 ~ 48 个 32 ~ 64 个(单机)
端口速率 1 Gbps 为主 25 / 100 / 400 Gbps
上行收敛比 1 : 20(够用) 1 : 1(不收敛)
时延要求 毫秒级 亚微秒级
散热 风冷即可 高密度风冷或液冷

表里最值得琢磨的是【上行收敛比】这一行:

换句话说:园区网可以按【人的行为】估算,数据中心网必须按【最坏情况】准备。

三、动手 Demo:240 台服务器的两种铺法

看到什么算成功:

==================================================================================================
【Demo 3】数据中心端的网络:数据中心专用交换机
==================================================================================================
  园区里用的交换机和数据中心里用的,名字一样,要求完全不同。

  【一】两种交换机的差别

  项目            园区交换机              数据中心交换机
  ------------------------------------------------------------------------------
  端口密度        24 ~ 48 个              32 ~ 64 个(单机)
  端口速率        1 Gbps 为主             25 / 100 / 400 Gbps
  上行收敛比      1 : 20(够用)          1 : 1(不收敛)
  时延要求        毫秒级                  亚微秒级
  散热            风冷即可                高密度风冷或液冷

  【二】拓扑账:240 台服务器,12 个机架,每机架 20 台

  架构                    交换机台数            两台服务器之间的跳数
  ------------------------------------------------------------------------------------
  三层(核心-汇聚-接入)  2 + 2 + 12 = 16       2 / 4 / 6 跳(随位置变化)
  脊叶(Spine-Leaf)      4 + 12 = 16           1 / 3 跳(永远只有两种)

  台数一样,端口数一样,换来的是【可预测】——
  不管两台服务器隔了几个机架,路径长度只有两种,延迟是可以算出来的。

  【三】为什么数据中心非要【可预测】
  一个请求要经过 【服务器 A -> 交换机 -> 服务器 B】 这条路。
  如果路径长度会变 2 / 4 / 6 跳,延迟就会跳 3 倍;
  而云上成千上万个服务互相调用,抖动会一层层放大。

  另外还有一条趋势:2026 年 AI 集群里最多的端口速率已经到 800 Gbps,
  交换机单机交换容量 51.2 Tbps——这是 5 年前整个机架的量。

读结果:

四、这条线接下来往哪走

数据中心网络这几年有两个明显方向:

这里有一条值得记住的规律:当机器的协同越来越紧,网络就从【连接设备】变成了【系统的一部分】。它不再是外设,而是决定整个系统上限的那一环。

30 秒实验

打开任意一家云服务商的【网络产品】页面,或者搜一下服务器厂商的数据中心交换机产品页,做两件事:

  1. 看它的端口速率有哪几档(会看到 25G / 100G / 400G 这样的写法),记下最高的一档。
  2. 看产品描述里有没有【低延迟】【无收敛】这类词。

做完这个你会注意到:数据中心交换机的宣传语里几乎不出现【稳定】【耐用】这类词,而是清一色地讲速率、延迟、收敛比。原因就是本节说的那件事——园区网要的是【别坏】,数据中心网要的是【快而稳地算得出来】。宣传语往往比规格表更能说明一件事物被看重的是什么。

常见误区

  1. 错误:数据中心网络就是要带宽大,买端口速率最高的就行。——纠正:速率只是三个指标里的一个。另外两个同样致命:收敛比(上行是不是真的独立,还是共享)和延迟稳定性(路径长度会不会变)。一台 100 Gbps 但上行收敛的交换机,在东西向流量下表现可能不如一台 25 Gbps 但无收敛的——因为前者会在峰值排队。选型要看的是【峰值时会不会排队】,不是【标称速率多高】。

  2. 错误:脊叶架构是为了让网络更短、更快。——纠正:它甚至可能让路径更长。三层架构下,同机架的两台服务器可能只经过 2 台设备;脊叶架构下,同一个 Leaf 下是 1 台,跨 Leaf 则固定要经过 Spine,变成 3 台。脊叶换来的不是【最短路径】,是【路径长度只有两种值】——可预测比最短更重要,因为只有可预测才能做容量规划和问题定位。

  3. 错误:网络设备坏了换一台就行,和数据中心设计没关系。——纠正:网络是少数【改起来最麻烦】的东西。服务器的配置可以重装,存储的容量可以扩,但网络的拓扑、地址规划、路由策略一旦投产,改动牵扯的是全机房的机器(3-14 讲网段【能改但代价很大】说的就是这条)。所以数据中心网络是必须在开工前就设计好、之后尽量不动的那一部分——这也是它被单列一节的原因。

  4. 错误:园区网和数据中心网可以套用同一套设计思路。——纠正:两者的假设完全相反。园区网假设【流量是人发起的、有空闲时段、不会同时满速】,所以允许收敛、允许共享;数据中心网假设【流量是程序发起的、会同时满速、路径必须可算】,所以要求无收敛、路径固定。把园区网的设计搬到数据中心,第一种症状就是【平时好好的,一到批量任务就集体变慢】。

自测三问(点开对答案) 1. 为什么【跳数固定】比【跳数更少】更重要? —— 因为**云上的延迟是几十次调用的叠加,而叠加需要可算**。跳数固定意味着**每一跳的延迟上下限是已知的,总延迟也就可以估出来**——这样才能做容量规划、才能判断【这个请求慢到底是网络还是应用的问题】。反过来,如果跳数在 2 到 6 之间随机变化,**同一段代码的性能会时好时坏,而且找不到规律**。**可预测才能被优化,不可预测只能靠猜。** 2. 为什么园区网允许上行收敛,数据中心网就要求 1 : 1? —— 因为**流量的发起者不同**。园区网的流量由人发起:20 个工位同时满速下载的概率极低,**所以按统计学分配资源是划算的**。数据中心网由程序发起:一个批量任务可以同时让几十台机器满速传输,**这不是小概率事件,而是常态**。所以前者可以赌,后者不能赌。**同一条【收敛比】的指标,背后的依据是【流量是不是会被同时触发】。** 3. 为什么说网络在云上从【外设】变成了【系统的一部分】? —— 因为**服务之间的调用密度决定了对网络的依赖程度**。传统架构里一个系统基本在一台机器上跑完,网络主要是【把结果送出去】;而在云上,**一个用户请求可能串起十几个服务,每一次都要过一次网络**。这时候网络的延迟和稳定性**直接进入了系统的性能公式**,不再是可以忽略的外围设备。**判断依据很简单:把网络换成慢一倍,业务指标会不会明显变差——会,那它就是系统的一部分。**

相关笔记