且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《思科UCS服务器统一计算》一2.3 I/O子系统

更新时间:2022-10-12 18:59:13

本节书摘来自异步社区《思科UCS服务器统一计算》一书中的第2章,第2.3节,作者【美】Silvano Gai,Tommi Salli, Roger Andersson,更多章节内容可以访问云栖社区“异步社区”公众号查看

2.3 I/O子系统

思科UCS服务器统一计算
I/O子系统负责在服务器内存和外部世界之间传输数据。传统上,这种传输是通过服务器主板上兼容PCI(外围组件互联,PCI)标准的I/O总线实现的。开发PCI的目的是让计算机系统的外围设备可实现互联。PCI的历史非常悠久[1],现在的最新版本是PCI-Express。

外围部件互联专业组(Peripheral Component Interconnect Special Interest Group,PCI-SIG)负责开发和增强PCI标准。

PCI Express
PCI Express(PCIe)[2]是一种计算机扩展卡接口格式,旨在替代PCI、PCI-X和AGP。

它消除了困扰所有I/O整合的限制,即服务器总线缺少I/O带宽。目前所有的操作系统都支持PCI Express。

上一代基于总线拓扑的PCI和PCI-X已被点对点连接取代。由此产生的拓扑结构是一个单根联合体的树形结构。根联合体负责系统配置,枚举PCIe资源,管理PCIe树的中断和错误。根联合体及其端点共享单个地址空间,并通过内存读写和中断进行通信。

PCIe使用点对点链接连接两个组件。链接由N个通道(Lane)组成(一个N链接由N个通道组成)。每个通道包含两对电路:一对用于传输,另一对用于接收。

南桥(也称为ICH:I/O控制器集线器)通常会提供多个PCIe通道实现“根联合体”功能。

每个通道与PCI Express端点、PCI Express交换机或PCIe到PCIe桥接器相连,如图2-21所示。


《思科UCS服务器统一计算》一2.3 I/O子系统

根据不同通道数量使用不同的连接器,图2-22显示了4个不同的连接器及采用PCIe 1.1可达到的速度。


《思科UCS服务器统一计算》一2.3 I/O子系统

在PCIe 1.1中,通道以2.5Gbp/s(在数据链路上的速度为2Gbit/s)的速度运行,可并行部署16条通道(参见图2-23)。可支持的速度从2Gbp/s(1x)到32Gbp/s(16x)。由于协议开销,支持10GE接口需要8x。


《思科UCS服务器统一计算》一2.3 I/O子系统

PCIe 2.0(也称为第二代PCIe)将每个通道的带宽提升了一倍,即从2Gbit/s提高到4Gbit/s,同时也将通道的最大数量扩大到了32x。PCIe 4x足以支持10GE了。

PCIe 3.0将会再增加一倍带宽。最终的PCIe 3.0规范(包括外观规范更新)预计会在2010年年中发布,到2011年就可看到支持PCIe 3.0的产品[3]。要有效支持40GE(千兆以太网)就需要PCIe 3.0,这将是以太网的下一步演进。

目前所有的PCI Express部署都是单根的(Single Root,SR),也就是说,单个I/O控制器中枢(ICH)控制多个端点。

多根(Multi Root,MR)也已发展了一段时间了,但目前还未见到曙光,由于缺少组件和关注,目前还存在诸多问题。

单根I/O虚拟化(Single Root I/O Virtualization,SR-IOV)是PCI-SIG开发的另一个相关的标准,主要用于连接虚拟机和Hypervisor。这将在第3章的“DCBX:数据中心桥接交换”部分中进行介绍。