0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Fungible自主设计的TrueFabric网络传输协议学习

SSDFans 来源:软硬件融合 作者:Fungible CEO 2021-06-01 18:15 次阅读

Fungible 自主设计的TrueFabric网络传输协议,是Fungible最核心的竞争力,具有媲美RDMA/RoCEv2的性能以及接近TCP的稳定性。

我们来共同学习。

Fungible TrueFabric:数据中心网络技术的根本性改进

作者:Fungible CEO,Pradeep Sindhu先生

Truefabric是基于开放标准的网络技术,并且集成到Fungible DPU中。它旨在提高基于横向扩展原则构建的数据中心的性能、经济性、可靠性和安全性,单个集群规模可以从几个机架扩展到数千个机架。它展示了八个基本的属性:跨越多个数量级的可伸缩性、任意节点到任意节点横截面带宽、低可预测延迟、公平性、避免拥塞、容错、端到端软件定义的安全性,以及使用开放标准来提供优秀的经济性能。没有任何现有技术在单个实现中提供所有这些属性。因此,TruFabric打开了通往单一通用数据中心网络的大门,该网络可用于数据中心内的所有网络任务,最大化网络的价值,并实现真正通用和强大的计算基础设施。

1 介绍

横向扩展架构已经在数据中心中使用了近20年。这些架构的优点在Barroso、Clidarras和Hölzle的一篇题为“作为计算机的数据中心:仓库规模机器的设计介绍”的开创性论文中得到了描述。如今,毫无疑问,几乎所有的数据中心,无论是小型、中型还是大型,无论是公有还是私有,都以这种方式建立。横向扩展数据中心设计的基本思想是,数据中心中的所有服务器节点都通过可靠的高性能局域网连接。这允许数据中心提供的服务的实现方式是,由于故障或计划中的事件导致的单个服务器的丢失不会危及服务本身。

虽然有一些特定的网络技术,如Infiniband、Fiber Channel和RoCE,声称提供了数据中心结构的一些属性,但事实是,今天大多数横向扩展的数据中心使用以太网之上的TCP/IP作为事实上的互联技术。TCP/IP发明于20世纪70年代,用来解决通过使用多种网络技术建立的广域网连接全球范围内的计算机的问题。随后,它被用于在数据中心内提供服务器之间的连接,并且达到了前所未有的规模。考虑到局域网的物理参数比广域网的速度快三个数量级或更多,TCP/IP能起到的作用是很值得注意的,因为它已经坚持了20多年了。对此的部分解释是TCP软件堆栈经过了大量优化,以满足对网络日益增长的需求。为某些TCP函数提供“卸载”的并行尝试不是很成功,因为很难在CPU和卸载引擎之间清晰地拆分TCP。

在过去的十年中,以太网接口和SSD设备的性能比通用CPU提高得更快。这一点很重要,因为绝大多数TCP实现都运行在这样的CPU上的软件中,因此它们不能满足性能要求。在应用程序方面,广泛使用跨节点远程过程调用的“微服务”体系结构现在已成为标准实践。此外,许多新应用程序需要访问必须跨服务器节点“分片”或分散的大数据集。应用端的这两方面的发展特征都增加了数据中心内部的网络流量。总的来说,技术和应用领域的发展共同给网络栈的软件实现带来了巨大的压力,特别是在以太网上的TCP/IP。因此,通用CPU计算能力的很大一部分都花在了与网络的交互上,从而减少了应用程序的可用资源。当前的状况是,将一切构建在TCP/IP的软件实现之上的办法越来越难以为继。

这些发展为TrueFabric作为单一的基于标准的网络技术的引入奠定了基础,从而推动数据中心从横向扩展时代进入以数据为中心的时代。

2 术语

在深入了解TrueFabric的细节之前,先定义一些基本术语是有帮助的。首先,我们在本文中以比标准行业实践更精确的方式使用Fabric这个术语。我们用它来指满足一组最低要求的互连技术:可伸缩性;完全的任意节点-任意节点横截面带宽;公平;可预见的低延迟;拥塞避免;和误差控制。当在现有技术约束下构建横向扩展的基础设施时,这些最低要求是基本的、不可避免的——也就是说,CPU、内存和IO接口等单个基本构建块的性能不能无限地提升。我们使用商标术语TrueFabric是对Fungible技术的确认,因为“Fabric”这个词已经因为过度使用而变得毫无意义。然而,在本文中,我们将准确地使用上面描述的大写术语Fabric和商标术语TrueFabric来具体指代可替换技术。

理想Fabric是一种具有无限横截面带宽和零节点到节点延迟的互连技术。然而,这种Fabric显然是不可实现的。可实现的Fabric是可以以合理的成本实现的,同时提供Fabric的定义属性。在可实现的Fabric中,每个节点以固定的带宽连接,该带宽独立于Fabric中的节点数量(称为可伸缩扩展性的属性)。Fabric的横截面带宽是有限的,但是随着节点数量的增加而增加,而且根据物理定律,延迟是允许最小的。

还需要区分实现内存模型的互连技术和实现网络模型的互连技术。前者用于使用读、写原语和可能的缓存原语连接处理器到内存;这些互连的带宽和延迟要求都非常高,但规模必然有限。网络互连用于使用发送和接收等网络原语将整个服务器节点彼此连接;这些网络互连的带宽和延迟要求比较宽松,但规模可以非常大,可以包含多达一百万个节点。使用上述术语,TrueFabric是一个实现网络模型的可实现Fabric。除了合并可实现Fabric的定义属性之外,它还实现了两个非常理想的附加属性:它构建在开放标准之上,并且支持强大的安全性。我们顺便注意到,虽然TrueFabric是一个网络互连,但它的性能已经足够好,可以使用RDMA在上面实现内存模型。TrueFabric的所有特性都是通过基于标准UDP/ IP以太网的新型Fabric控制协议(FCP)实现的。

对于中小型规模,TrueFabric使用单层标准IP/Ethernet Spine交换机,其中服务器节点直接连接到Spine交换机。对于大规模,它使用两层拓扑结构,由位于每个机架顶部的标准IP/Ethernet Spine交换机和标准IP/Ethernet Leaf交换机组成。在这种情况下,服务器节点连接到Leaf交换机。尽管当前TrueFabric的最大部署中不需要使用超过两层的交换机,但是FCP可以在包含三层或更多交换机的现有网络上完美地运行。

在接下来的内容中,我们将把Leaf、Spine和任何更高的交换层统称为网络核心。网络边缘是TrueFabric在服务器节点内部的Fungible DPU内实现的端点。TrueFabric是网络核心和网络边缘的集合。

有四种服务器类型的多个实例:CPU服务器、AI/数据分析服务器、SSD服务器和HDD服务器。每个服务器实例包含一个Fungible DPU,它以固定的带宽(比如100GE)连接到网络。虽然每个DPU只有一个100GE接口连接到网络核心,但TrueFabric即使在最大的部署规模下,也能让每个DPU之间都有一条专用的100GE链路。事实上,服务器无法进行任何实验来揭示网络核心与抽象图中显示的完整网格有任何不同。

3 TrueFabric的属性

TrueFabric展示了构建现代横向扩展数据中心的8个基本属性:

可扩展性:TrueFabric可以从使用100GE接口的小规模部署的服务器集群扩展到使用200GE-400GE接口的数十万台服务器的大规模部署。所有部署都使用相同的互连拓扑,小型到中型部署使用单层Spine交换机,大型部署使用Spine层和Leaf层。可以增量地扩展部署,而无需关闭网络以实现真正的始终在线操作。

全截面带宽:TrueFabric支持任何节点到任何节点的全截面带宽,适用于标准IP以太网数据包大小,不限制所承载的流量的时间或空间特征。至关重要的是,TrueFabric支持短的、低延迟消息的高效交换,以支持服务器节点之间的频繁交互式通信。这种类型的通信对于TCP是不可能的,因为TCP是一种字节流协议。另一方面,TCP可以非常有效地在FCP之上实现。

低延迟和低抖动:TrueFabric提供节点之间的最小的端到端延迟,以及非常严格的尾巴延迟控制。节点之间的最小延迟意味着流量总是使用任意两个节点之间的最短路径。对尾部延迟的严格控制意味着,即使提供的负载利用率超过90%,99%的延迟也很少超过平均延迟的1.5倍。

公平性:在竞争节点之间以微秒粒度公平分配网络带宽。此外,网络带宽还可以在由给定节点生成的流之间公平地分配。带宽分配取决于IP包的标准服务质量水平。

拥塞避免:TrueFabric有内置的主动拥塞避免,这意味着数据包基本上不会因为拥塞而丢失,即使在非常高的负载下(大于90%)。值得注意的是,拥塞避免技术并不依赖于核心网络交换机来提供任何与拥塞控制相关的特性。

容错:TrueFabric有内置的检测和恢复数据包丢失,因为任何类型的网络故障,包括但不限于电缆切断,交换机故障由于硬件或软件故障,瞬态错误导致交换机内或在终端的数据包下降,瞬态或永久的光电子故障,以及不可避免的铜线或光缆上的随机噪声。FCP的错误恢复比依赖于路由协议的传统恢复技术快五个数量级。

软件定义的安全和策略:TrueFabric支持基于AES标准的端到端加密。此外,可以通过软件配置将给定的部署划分为单独的加密域,每个域为其节点提供任意对任意连接,但禁止从一个域的节点到另一个域的节点的通信。

开放标准:TrueFabric的FCP建立在基于以太网的标准IP之上,可以与以太网上的标准TCP/IP完全互操作。这允许使用现成的Spine和TOR交换机,也允许在一些服务器节点采用DPU,而其他节点不采用DPU。开放的标准还允许TrueFabric提供优异的经济效益。

总的来说,这八个属性使得TrueFabric能够对横向扩展的数据中心的性能、经济性、可靠性和安全性产生实质性的优化。它们在单一技术中的实现代表了数据中心网络技术的根本性进步。

性能和经济性改进的部分原因是网络本身的性能比现有网络高出3倍以上,主要原因是它具有更高的网络利用率,同时仍然提供出色的低延迟。虽然这是一个巨大的改进,但网络通常只占数据中心花费的一小部分(约15%),即使有如此大的改进,数据中心运营商仍不倾向于在此投入。他们这样做对自己是一种损害,因为绝大多数的性能和经济性改善是由于TrueFabric,不是来自网络的直接经济效益,并且间接来自于整个数据中心的计算和存储资源池的有效利用。这样可以减轻CPU的网络负担。TrueFabric实际上可以有效地解构数据中心中的所有资源

我们将高效解构大多数数据中心资源的能力称为超解构,而不是超融合——超融合是一种将资源定位在单一类型服务器内的方法。在超融合方法中,节点内部的CPU可以有效地使用本地资源,但这些资源不能跨服务器节点池。因此,资源使用的效率大大降低。通过比较企业数据中心(由于资源滞留导致利用率低于8%)与超大规模数据中心(通过部分分解达到利用率超过30%)的平均利用率,我们估计这种效率损失超过4倍。

数据中心的可靠性和安全性改进是上面列出的几个属性的直接结果。首先,TrueFabric从根本上改善了数据中心网络的可靠性:它通过完全避免拥塞而不是事后对拥塞做出反应,从而消除了拥塞作为丢包的来源;它还可以从所有网络硬件和软件故障(包括多个故障)中恢复,确保可靠运行,而无需承担通常与此级别的可靠性相关的成本。因此,TrueFabic还从根本上提高了数据中心提供的服务的整体可靠性。第二,TrueFabric的性能特点意味着可以普遍使用纠删码来保护所有存储的数据,特别是高性能存储中的热点数据。这使得我们可以大大提高存储数据的可靠性,而不是创建多副本的成本。

在安全方面,TrueFabric支持数据中心所有DPU-DPU流量的端到端加密。此外,在软件控制下,支持DPU的服务器可以划分为不相连的子集,每个子集形成一个单独的加密安全域。此功能提供了最强大的安全性(除了在服务器组之间提供物理空隙之外)。

4 性能特征

在本节中,我们将介绍TrueFabric的性能特征,重点关注严重网络拥塞的场景。现有技术不能很好地处理这些场景。

4.1 高负载下的Fabric时延

图3显示了用于在重负载网络条件下测试不同流量模式的模拟设置。该设置包含64个相同的机架,每个机架由16个DPU组成,连接到一个6.4Tbps TOR。TOR配置了32x100GE链路连接到DPU(每个DPU 2x100GE)和32x100GE链路连接到32个Spine,每个Spine 100GE——换句话说,TOR和Spine层都是不会超额认购的。

我们测量了在三种不同的流量场景下,从发送DPU的网络单元的输入端口到接收DPU的输出端口的端到端单向延迟:

一对一:每个DPU发送报文到另一个唯一的DPU。在这个场景中没有拥塞。数据包大小从行业标准IMIX配置文件中挑选。

随机目的地:每个DPU将其每个数据包发送到从1024个DPU中随机抽取的DPU。在这种情况下,所有的数据包都被选择为相同的大小(1KB),以在目的DPU上均衡负载。

最大Incast:所有1024个DPU发送到一个接受者DPU——这是拥塞的极限测试。数据包大小从行业标准IMIX配置文件中挑选。下表显示了这三种场景中的Fabric利用率、平均延迟、延迟方差和P99延迟。

三种情况下,Fabric利用率均超过90%。平均延迟在1-2μs范围内;P99时延的绝对值在1 ~ 3μs范围内。值得注意的是,Spine和TOR交换机占了大约0.5μs的延迟预算,其余的在发送和接收DPU之间分布。最后,P99延迟与平均延迟的比率是1.16,1.57和1.02,分别。

4.2 与RoCEv2在拥塞情况下的比较

我们比较了TrueFabric和RoCEv2在10:1 Incast条件下的性能。所比较的两种配置是相同的,除了一个在10台服务器上使用Mellanox ConnectX-5网卡,另一个在10台服务器上使用Fungible的DPU。图5显示了设置:

第一组测量显示了TrueFabric与RoCEv2在10:1 Incast下分配给每个发送方的瞬时带宽随时间的变化。参见下面的图6。很明显,TrueFabric提供给发送者的带宽几乎是相等的,而且随着时间的推移也很稳定。对于RoCEv2,跨发送者和跨时间的分布是高度可变的。

查看相同数据的另一种方法是在10:1 Incast场景下测量TrueFabric和RoCEv2的P99尾部延迟。TrueFabric的每个流的端到端应用程序延迟为987μs, RoCEv2为16302μs,或者更高的16.5倍。图7以直方图的形式显示了数据。

图7 TrueFabric和RoCEv2之间的P99尾延迟比较

5 结论

在横向扩展数据中心中,服务器之间相互连接的网络是以给定成本构建最通用、最强大的计算设施的关键。这个网络需要有一组属性,这些属性对于实现高性能、卓越的经济性、高可靠性和强安全性的目标至关重要。在本文中,我们精确地定义了这些属性,并解释了它们如何有助于实现高级目标。

无论是当前的TCP/IP以太网,还是InfiniBand、光纤通道和RoCEv2等更利基的技术,都不能完全提供前面确定的所有属性。

TrueFabric是业界首次专注于提供基于开放标准的单一、统一的网络技术,该技术具有在大范围内构建高性能、经济、可靠和安全数据中心所需的所有属性。因此,它代表了数据中心网络技术水平的根本进步。

原文标题:DPU怎样颠覆数据中心网络?

文章出处:【微信公众号:SSDFans】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据
    +关注

    关注

    8

    文章

    6786

    浏览量

    88705
  • 网络
    +关注

    关注

    14

    文章

    7461

    浏览量

    88511
  • DPU
    DPU
    +关注

    关注

    0

    文章

    353

    浏览量

    24090

原文标题:DPU怎样颠覆数据中心网络?

文章出处:【微信号:SSDFans,微信公众号:SSDFans】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    低功耗4G模组HTTP网络协议应用

    ​大家好,今天我们来学习合宙Air780E模组LuatOS开发4G通信中HTTP网络协议的应用,实现模组和服务器之间数据的传输。 一、HTTP概述 1.1 简介 HTTP
    的头像 发表于 11-01 07:23 33次阅读
    低功耗4G模组HTTP<b class='flag-5'>网络</b><b class='flag-5'>协议</b>应用

    Linux网络协议栈的实现

    网络协议栈是操作系统核心的一个重要组成部分,负责管理网络通信中的数据包处理。在 Linux 操作系统中,网络协议栈(Network Stac
    的头像 发表于 09-10 09:51 222次阅读
    Linux<b class='flag-5'>网络</b><b class='flag-5'>协议</b>栈的实现

    嵌入式学习-常见的shell命令之网络相关命令

    介质,通信端点之间的硬件物理接口,设备之间以比特流进行传输。该层主要与硬件相关,确定了与物理接口的一些特性,如电气特性、功能特性等。2)TCP/IP四层模型TCP/IP传输协议,即传输
    发表于 08-21 09:41

    网络传输协议有几种?

    网络传输协议是一种规定计算机在网络中进行通信的规则或标准。常见的网络传输
    的头像 发表于 04-02 16:04 1208次阅读

    深入理解Linux网络协议

    网络分层解决了网络复杂的问题,在网络传输数据中,我们对不同设备之间的传输数据的格式,需要定义一个数据标准,所以就有了
    发表于 04-01 14:20 290次阅读
    深入理解Linux<b class='flag-5'>网络</b><b class='flag-5'>协议</b>

    DTU的多种协议,解锁数据传输的无限可能

    DTU,即数据传输单元,是一种在物联网(IoT)网络中常用的设备,主要用于在传感器和智能设备之间进行数据传输。DTU使用多种协议来实现这一目标,这些
    的头像 发表于 03-01 11:00 685次阅读
    DTU的多种<b class='flag-5'>协议</b>,解锁数据<b class='flag-5'>传输</b>的无限可能

    通信网络协议栈之UDP协议技术解析

    在通常的网络协议栈中,TCP/IP协议栈是一个常见的示例,其中UDP和TCP都是传输协议传输
    发表于 02-01 11:00 835次阅读
    通信<b class='flag-5'>网络</b><b class='flag-5'>协议</b>栈之UDP<b class='flag-5'>协议</b>技术解析

    netconf协议是什么?netconf协议的优点

    网络设备的配置和状态信息。 NETCONF协议的架构包括四个层次,分别是: 1. 传输层:负责NETCONF协议传输。 2. 消息层:负责
    的头像 发表于 01-30 14:27 1711次阅读

    CC-LINKIE转EtherCAT协议具体应用

    CCLINKIE转EtherCAT协议应用是一种将CCLINKIE网络与EtherCAT网络进行连接和数据交换的方法。这种应用主要应用于工业自动化领域,可以实现高速、可靠的数据传输,并
    发表于 12-17 13:02

    如何选择传输协议?TCP和UDP的优缺点和适用场合

    如何选择传输协议?TCP和UDP的优缺点和适用场合  传输协议是计算机网络中的重要组成部分,它负责在主机之间
    的头像 发表于 12-11 11:42 895次阅读

    TCP传输控制协议知识科普拓展

    传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。
    的头像 发表于 11-27 17:46 898次阅读
    TCP<b class='flag-5'>传输</b>控制<b class='flag-5'>协议</b>知识科普拓展

    串口传输协议

    通信传输协议
    油泼辣子
    发布于 :2023年11月16日 17:18:55

    如何实现MQTT协议数据传输

    如何实现MQTT协议数据传输? 随着物联网技术的不断发展,越来越多的设备和应用需要实现互联互通。而MQTT作为一种轻量级的发布/订阅消息传输协议,在物联网领域应用广泛,成为了许多设备之
    的头像 发表于 11-15 17:23 1073次阅读

    FTP、SFTP、TFTP文件传输协议之间的主要区别

    FTP(File Transfer Protocol,文件传输协议)是用于在计算机网络传输文件的标准协议
    的头像 发表于 11-15 09:04 5926次阅读
    FTP、SFTP、TFTP文件<b class='flag-5'>传输</b><b class='flag-5'>协议</b>之间的主要区别

    基于Http和Tcp协议自主实现的WebServer

    项目介绍 该项目是一个基于Http和Tcp协议自主实现的WebServer,用于实现服务器对客户端发送过来的GET和POST请求的接收、解析、处理,并返回处理结果给到客户端。该项目主要背景知识涉及
    的头像 发表于 11-09 11:11 648次阅读
    基于Http和Tcp<b class='flag-5'>协议</b><b class='flag-5'>自主</b>实现的WebServer