数据中心入门学习(四):服务器概述与PCIe总线

目录

  • 概述
    • [1 概念](#1 概念)
      • [1.1 组成](#1.1 组成)
      • [1.2 分类](#1.2 分类)
      • [1.3 层次架构](#1.3 层次架构)
      • [1.4 其他](#1.4 其他)
    • [2 主板组成](#2 主板组成)
    • [3 PCIe总线](#3 PCIe总线)
      • [3.1 服务器主板总线](#3.1 服务器主板总线)
      • [3.2 概念](#3.2 概念)
      • [3.3 出现原因](#3.3 出现原因)
      • [3.4 设计](#3.4 设计)
      • [3.5 形式](#3.5 形式)
      • [3.6 拓扑结构图](#3.6 拓扑结构图)
      • [3.7 应用场景](#3.7 应用场景)
  • 参考

本篇记录和梳理服务器方面的知识,目前写的还比较简略,后续会逐步补充。

概述

1 概念

1.1 组成

服务器主要由CPU、内存、硬盘 、RAID卡、网卡组成。

与PC相比,服务器旨在全天候运行,管理、存储、发送和处理数据,需要管理所有的网络资源,并提供普通台式计算机中不常用的各种功能和硬件。

图源:服务器的组成

服务器是专用计算机,硬件会运行一项或多项服务。

服务器自带BMC管理系统用于硬件设备管理,PC一般没有BMC。

注:BMC(基板管理控制器,Baseboard Manager Controller) ,其作用是对系统硬件进行监视和控制("大管家"),涉及到系统的温度、电压、风扇、电源灯,做出相应的调节工作,保证系统处于健康的状态。

包括五项主要功能:monitoring监视状态,recovery复位,logging记录异常或超过阈值的情况,alerting告警,inventory提供清单以帮助快速查找坏件。

将以上功能集成到一个控制器实现,就是BMC。服务器从上电之后,所有的部件都归BMC负责和管理。

BMC是一个独立的系统,运行在服务器上单独的ARM芯片上(即BMC软件的CPU),并且配有自己的RAM、Flash等器件,不依赖与系统上其他的硬件(CPU、内存等)。
注:带外管理和带内管理是什么?
带外 :使用网卡或专用管理口与服务器连接,实现对服务器的远程管理和控制。

可以对服务器进行全面的远程控制和管理,可以在任何时间、任何地点对服务器进行管理,适用于远程数据中心、云计算。
带内 :在服务器本身运行的管理软件。

可以对服务器进行实时监控和维护,只能在服务器本身运行的操作系统范围内进行管理,对于操作系统故障或者服务器无法正常启动的情况下,无法进行管理

通常在X86侧执行的运维管理动作是带内;BMC是脱离X86侧独立运行的服务器管理软件,即为带外管理。

1.2 分类

  • 应用层次 划分

    入门级服务器:小型企业、小部门需求。主要用于完成文件、打印服务等

    工作组服务器:中型部门等、不复杂的业务,比如没有大型数据库需要管理。

    部门级服务器:能够承载中大型数据库、网站等,具有较高的可用性、可靠性、可扩展性、可管理性。

    企业级服务器:企业级服务器主要应用于需要处理大量数据,对处理速度和可靠性要求极高的大型企业和重要行业(如金融、交通、通信等行业)。

  • 用途 划分

    通用服务器:没有为某种服务专门设计的,可以提供各种服务功能的服务器。

    功能服务器(专用服务器):专门为某一种或某几种功能专门设计的服务器,可以实现"即插即用",无需专业人员进行专门的软硬件配置。

  • 体系架构 划分

    非X86服务器:包括大型机、小型机和Unix服务器。使用RISC或EPIC处理器

    X86服务器:即CISC架构服务器,也就是我们常说的PC服务器。

  • 外形 划分
    机架式服务器 :用于安装在标准19英寸宽的机架中的服务器,通常具有扁平且长方形的外形。

    特点:现阶段销售数量最多,机箱尺寸比较小,机柜可以放多台。

    适用于需要高效利用空间的数据中心环境。

    其高度的计量方式是U,1U=1.75inch=44.45mm。

塔式服务器 :外观类似于传统的台式计算机,但拥有更强的硬件配置和更高的性能,可以独立放置或堆叠放置。

适合中小企业或者不需要大量服务器的企业使用,特别是在没有专门机房的情况下。

刀片式服务器 :刀片式服务器是一种模块化的服务器架构,其中多个薄型服务器板(称为刀片)被插入到一个机箱中。每个刀片都是一个完整的服务器,包含处理器、内存和网络连接等。

在标准高度的机架式机箱内可插装多个卡式的服务器单元,是一种实现HAHD(High Availability High Density,高可用高密度)的低成本服务器平台,为特殊应用行业和高密度计算环境专门设计。

适用于大型企业和数据中心,尤其是那些对空间和能源消耗有严格要求的应用场景。

注1:ARM架构是什么

ARM架构最初设计用于低功耗、嵌入式系统,如移动电话、平板电脑和嵌入式系统。ARM采用RISC(Reduced Instruction Set Computing,精简指令集)设计哲学,简化指令集,通过执行更少的指令来提高性能。ARM处理器通常采用低功耗设计,适用于移动设备等对功耗要求较高的场景。

ARM处理器可以在很多消费性电子产品上看到,从可携式装置(PDA、移动电话、多媒体播放器、掌上型电子游戏,和计算机)到电脑外设(硬盘、桌上型路由器)甚至在导弹的弹载计算机等军用设施中都有他的存在。
注2:x86和ARM架构的区别

①指令集和复杂度:ARM采用RISC设计,指令集相对较小,执行速度更快,但每条指令的功能较为简单;x86采用CISC(Complex Instruction Set Computer,复杂指令系统计算机)设计,指令集较大,每条指令的功能更为丰富,但执行速度相对较慢。

②功耗和散热:ARM处理器采用低功耗设计,适用于便携设备;x86架构更多应用于桌面和服务器系统,功耗较高,需要更多散热措施以稳定运行。

③应用领域:ARM架构在移动设备、嵌入式系统、物联网设备应用广泛;x86架构更多应用于桌面计算、服务器、高性能计算等更高性能和计算场景。

④制造商:ARM架构的许多制造商采用许可模式,允许其他公司基于ARM设计开发自己的处理器核心,也因此可以看到许多不同厂商的ARM处理器;x86架构主要由Intel和AMD等几个大厂商垄断。
注3:国产化架构

1.3 层次架构

① OS、Driver、APP

OS(Operating System,操作系统):对服务器软硬件和数据资源管理调度。OS分为32位和64位,OS位数决定计算机处理器在RAM处理信息的效率,64位比32位可以处理更多内存和应用程序。

Driver驱动程序:驱动程序是一组软件指令,它们允许操作系统能够识别并控制连接到计算机的各种硬件设备。换句话说,驱动程序是特定硬件组件与操作系统之间的接口。

图源(概念很全,可学习):史上最全计算机操作系统详解

② iBMA

以华为为例,华为服务器智能管理系统(Huawei Intelligent Baseboard Management Controller,以下简称iBMC)是面向服务器全生命周期的服务器嵌入式管理系统。提供硬件状态监控、部署、节能、安全等系列管理工具,标准化接口构建服务器管理更加完善的生态系统。

源:服务器智能管理系统iBMC

③ BMC

基板管理控制器,前面已经介绍过了。

④ BIOS

BIOS(Basic input/ Output System)

基本输入输出系统,是服务器启动后最先运行的软件。它包括基本输入输出控制程序、上电自检程序、系统启动自举程序、系统设置信息。

BIOS是服务器硬件和OS之间的抽象层,用来设置硬件,为OS运行做准备。BIOS设置程序是储存在BIOS芯片中的。BIOS的进化版本是UEFI(Unified Extensible FirmwareInterface),即统一的可扩展固定接口。这种接口用于操作系统自动从预启动的操作环境,加载到一种操作系统上,从而使开机程序化繁为简,节省时间。

⑤ CPU、GPU、硬盘、RAID等

⑥ 硬件:主板等硬件板卡

⑦ 整机:机箱和散热结构

1.4 其他

  • 扩展插槽

    主板上用于固定扩展卡并连接到系统总线上的插槽,从而增加电脑功能。

  • 服务器散热方式

    风冷、液冷。通过PUE衡量数据中心散热效率。

  • 金手指

    不同品牌的服务器拥有不同针脚的金手指,常见的有24pin,64pin等,每一pin都有自己的作用,金手指最大的部分是电流主路输出,还有热插拔启动,其他的金手指就是其他的信号传输。

  • 衡量标准

    R:Reliability可靠性;A:Availability可用性;S:Scalability可扩展性;U:Usability易用性;M:Manageability可管理性;即服务器的RASUM衡量标准。

2 主板组成

芯片组 (Chipset):这是主板的核心逻辑系统,控制着数据在处理器、内存和其他设备之间的流动。
处理器插槽/插座 (CPU Socket):用于安装服务器的中央处理器(CPU)。根据主板设计的不同,可能有一个或多个CPU插槽来支持多处理器配置。
内存插槽 (RAM Slots):提供位置给随机存取存储器(RAM ),这决定了服务器可以同时处理的数据量和速度。服务器主板通常支持ECC(Error-Correcting Code)内存,以提高数据完整性和系统稳定性。
扩展插槽 (Expansion Slots):如PCIe (Peripheral Component Interconnect Express ,外设组件互连高速总线)插槽,允许添加额外的硬件组件,例如网络卡、RAID控制器等。
存储接口 (Storage Interfaces):包括SATA (Serial Advanced Technology Attachment,串行高级技术附件)、SAS (Serial Attached SCSI)等接口,用于连接硬盘驱动器(HDD )、固态硬盘(SSD )等存储设备。
网络接口卡 (NIC, Network Interface Card):提供服务器与网络之间通信的能力,有些服务器主板内置了多个千兆或万兆网络端口。
USB接口和外部连接端口 :用于连接外部设备,如键盘、鼠标、外部存储设备等。
电源连接器 (Power Connectors):为整个主板及其组件供电的接口。
BIOS/UEFI (Basic Input Output System/Unified Extensible Firmware Interface):负责初始化硬件并启动操作系统。

3 PCIe总线

3.1 服务器主板总线

服务器总线用于在服务器内部各组件之间传输数据的通信路径。

图源:服务器硬件知识之主板芯片组和总线的概念详解

如图所示,服务器中存在多种总线,帮助不同类型的器件实现数据传输。

3.2 概念

PCIe(Peripheral Component Interconnect Express)是一种高速串行计算机扩展总线标准,用于连接主板上的各种外部设备或内部组件,提供高速数据传输路径及相应协议。

高带宽、低延迟和可扩展性,成为现代计算机系统的核心互联标准。

注1:总线是多个硬件之间的一条电路,就像CPU想找内存沟通的通路。总线的数据传输能力被称为带宽。

注2:PCIe是总线还是协议?答:PCIe总线是符合并运行PCIe协议的数据总线。

3.3 出现原因

主板不同设备使用的总线接口完全不一样,导致主板结构只能对应一个硬件,难以进行扩展和同一,为解决这一问题设计了统一的总线。

随着时代的发展、淘汰与变革, PCI总线一统天下,但由于PCI总线是并行总线设计,传输速度受限;其带宽共享机制,出现强带宽现象,也不支持热插拔。

为解决PCI总线的缺陷,技术升级革新,出现了PCIe总线。

代表着传统并行总线高速串行总线发展的时代的到来。

3.4 设计

PCIe采用全双工 的传输设计,即能够在同一时刻同时发送和接收数据。所有数据以数据包为单位进行发送。

注:并行总线中,数据通过多条线路同时传输,每一条线路在同一时间可以传输一个比特数据,因此多个比特(一个字节或更多)能够同时被发送。

串行总线中,数据以数据包形式依次发送,虽然每次只能传输一位数据,但通过较高的时钟频率和复杂的编码技术能够实现较高的传输速率。

数据以比特形式通过物理介质传输,但以"数据包"为单位涉及了更高层次的数据组织和管理,能够确保数据完整性和正确性。

图源:PCIe扫盲------PCIe总线基本概念

设备A和设备B之间通过双向的Link相连接,每个Link支持1到32个通道(Lane)。

为了兼容之前的PCI总线设备,虽然PCIe是一种串行总线,无法再物理层上兼容PCI总线,但是在软件层上面却是兼容PCI总线的。

3.5 形式

PCIe有两个重要概念:物理接口(插槽)和通道(lane),一个是其物理表现形式,一个是其内部的数据传输机制。

物理接口:是实际安装在主板上的PCIe插槽,用于插入相应的硬件扩展卡(显卡、网卡等)。根据支持的带宽的不同,这些插槽可以有不同的物理尺寸,常见x1、x2、x4、x8、x16规格,数字代表可用lane数量。一个PCIe X16插槽最多可以支持16条lane,适合需要高带宽的应用场景。

当PCIe以接口形式存在的时候,就是如下图所示主板上横着的长槽。

x1、x2、x4、x8、x16的尺寸的最大带宽是不同的,在同一代PCIe总线上,X16的PCIe速度就是X8的两倍,X8就是X4的两倍。

如需要很高的带宽,则采用多个Lane(比如显卡);如果并不需要特别高的带宽,则只需要一个Lane就可以了(比如说网卡等)。

但值得说明的是,如果x16长度的带宽使用的是x4带宽,那么x16长度下x4带宽速度=x4长度下x4带宽速度。

通道:lane是PCIe通信的基本单位,每一条lane由一对差分信号线组成,分别用于发送和接收数据,一个lane可以提供双向的数据传输路径,理论上允许同时进行数据的发送和接收

如下图所示,PCIe采用了差分对进行收发,以提高总线的性能。

注1:M.2接口(M.2固态硬盘的接口)、USB4.0、雷电3、雷电4接口协议都是借助PCIe通道传输数据,虽然与PCIe接口不同,但采用的仍是PCIe通道。

其他接口协议类型的接口,一般都是借助DMI总线去传输数据的。

除此之外,PCIe引入了嵌入式时钟技术,即发送端不再向接收端发送时钟,但是接收端可以通过8b/10b(版本不同编码方式不同)的编码从数据Lane中恢复出时钟。

注:以8b/10b为例,将每8位原始数据编码为10位符号,增加了2位****冗余 实现数据平衡和错误检测。定义特殊字符****k码 ,标识数据包的起始、结束和空闲状态,确保链路同步。

8位数据分为5位和3位两个部分,再被编码为6位和4位,组合成10位。每个lane的10位符号通过差分信号传输,接收端解码后恢复为8位数据。

这样的编码形式通过冗余位和特殊字符实现数据同步、时钟恢复和数据检测。

3.6 拓扑结构图

由于非常高的传输速度 ,PCIe是一种点对点连接的总线,而不像PCI那样的共享总线。

PCIe总线系统可以通过Switch连接多个PCIe设备,也可以通过PCIe桥连接传统的PCI和PCI-X设备。

注:图中Root Complex理解为CPU与PCIe总线系统通信的媒介;Switch实际上包含了多个类似于PCI总线中桥的概念;Endpoint处于PCIe总线系统拓扑结构中的最末端,一般作为总线操作的发起者(initiator,类似于PCI总线中的主机)或者终结者(Completers,类似于PCI总线中的从机);Lagacy PCIe Endpoint是指那些原本准备设计为PCI-X总线接口的设备,但是却被改为PCIe接口的设备。

3.7 应用场景

PCIe作为现代计算系统的核心互联标准,其设计贯穿主板、加速卡、存储、网络 等全领域。

如:主板与核心组件互联 --- CPU与芯片组连接、多CPU互联;

图形处理与加速 --- 独立显卡、GPU加速卡;

高速存储设备 --- NVMe SSD、RAID控制器;

网络与通信设备 --- 高速网卡、FPGA加速卡。

参考

1\] [什么是服务器,服务器与普通电脑有什么区别?](https://cloud.tencent.com/developer/article/1160195) \[2\] [什么是带内管理和带外管理?](https://blog.csdn.net/m0_57032851/article/details/129705907) \[3\] [授人以渔 篇一:硬件科普:PCIe到底是总线还是协议?关于PCIe的一些科普](https://zhuanlan.zhihu.com/p/420873978) \[4\] [PCIe扫盲------PCIe总线基本概念](https://blog.csdn.net/kunkliu/article/details/93993436) \[5\] [PCIe(Peripheral Component Interconnect Express)详解](https://zhuanlan.zhihu.com/p/31916113580) \[6\] [服务器简介(一):服务器定义、服务器特点、服务器分类、服务器软件](https://blog.csdn.net/qq_46254436/article/details/105342533) \[7\] [一文看懂arm架构和x86架构有什么区别](https://blog.csdn.net/Bruce_0712/article/details/109743895) \[8\] [arm架构和x86架构区别](https://developer.aliyun.com/article/1543154) \[9\] [服务器硬件学习-服务器电源和PC电源](https://blog.csdn.net/little_startoo/article/details/134240498)

相关推荐
AKAMAI29 分钟前
跳过复杂环节:Akamai应用平台让Kubernetes生产就绪——现已正式发布
人工智能·云原生·云计算
天翼云开发者社区2 小时前
Rust 中的 Tokio 线程同步机制
云计算
天翼云开发者社区5 小时前
亮相2025年服贸会,天翼云打造高质量算力服务新生态!
云计算·天翼云
容器魔方2 天前
Bloomberg 正式加入 Karmada 用户组!
云原生·容器·云计算
AKAMAI3 天前
Sport Network 凭借 Akamai 实现卓越成就
人工智能·云原生·云计算
10岁的博客3 天前
《云计算如何驱动企业数字化转型:关键技术与实践案例》
云计算
m0_694845574 天前
教你使用服务器如何搭建数据库
linux·运维·服务器·数据库·云计算
shinelord明4 天前
【数据行业发展】可信数据空间~数据价值的新型基础设施
大数据·架构·云计算·创业创新
XINVRY-FPGA4 天前
XCKU15P-2FFVA1760I AMD 赛灵思 Xilinx Kintex UltraScale+ FPGA
arm开发·嵌入式硬件·阿里云·fpga开发·云计算·硬件工程·fpga
王道长服务器 | 亚马逊云4 天前
一个迁移案例:从传统 IDC 到 AWS 的真实对比
java·spring boot·git·云计算·github·dubbo·aws