一文看懂两篇SIGCOMM论文!被顶会点赞的“可预期高性能网络”是什么?

简介: 一文看懂两篇SIGCOMM论文!被顶会点赞的“可预期高性能网络”是什么?


日前,在国际权威网络顶会SIGCOMM 2022上,阿里云共计6篇高质量论文被主会收录,占收录总数的10%以上,创下了国内历届参会企业的最好成绩。


在基础网络领域,阿里已布局多年,基于可编程芯片技术的数据中心网络和超融合网关设备,构建了端到端的网络性能可预期能力,建成全球超大规模数据中心内的“高速网”,可支持超过10万台服务器的集群弹性扩展能力。


今年年初,阿里巴巴还入选了AI2000评选的全球十大计算机网络研究机构



这次入选SIGCOMM的论文包括阿里云自研的下一代高性能RDMA网络协议Solar、端网融合可预期数据中心网络架构、可编程网络稳定性保障系统等,这些关键技术构建了阿里云下一代数据中心网络架构——可预期高性能网络,为上层应用提供稳定的可用性、带宽和低延迟保证的网络。


作为可预期高性能网络的关键技术成果之一,本文将对“µFAB”“Solar”这两篇发表在SIGCOMM2022主论坛的论文进行深度解读。


论文全称:

  • 《µFAB:Predictable vFabric on Informative Data Plane》(µFAB:基于信息化数据面的可预期网络)


  • 《From Luna to Solar:The Evolutions of the Compute-to-Storage Networks in Alibaba Cloud》(从luna到solar:阿里巴巴的存储网络演进)



01 数据中心为何需要“可预期网络”


当前的数据中心发展面临重大挑战,无论从硬件更迭,应用规模和架构演进都对网络提出了更高的要求。


首先,随着CPU、GPU、TPU、DPU等新型算力硬件的不断推陈出新,大量的数据需要网络进行交互。存储介质的的不断推陈出新,使得磁盘处理的时延从毫秒级降低到了微秒级别,数据读取的吞吐也得到了极大的提升,从而使得网络逐渐成为端到端性能的短板。


其次,ML/HPC、存储、数据库等大型新型分布式系统和应用,对于性能越来越敏感,作为端到端性能的重要一环,势必要求网络提供极致的网络传输服务。例如,ESSD存储要求百万IOPS和100微秒的访问时延,这种情况下任何网络的抖动都会造成应用性能的下降。


另外,分布式机器学习在单集群部署规模已达到10K-100K加速卡的情况下,需要频繁的数据聚合和再分配,依赖网络带宽的保障和微秒级别的网络时延,系统的瓶颈已经逐渐从计算转移到了网络传输。


此外,数据中心的资源池化(包括硬盘、GPU,甚至内存等)已成为主流。资源池化能够带来应用部署的便利,并且不同资源可以独立进行演进升级,更能节省资源降低使用成本。


但资源池化对于网络有非常苛刻的要求,各种资源至少需要100G以上的接入网络带宽和10us以内甚至2us以内的时延。随着内存池化的研发,对于网络的依赖会更加迫切。



02 µFAB:基于信息化数据面的可预期网络


随着云计算不断发展的今天,高性能存储、分布式机器学习、资源池化等应用和架构的变革,对于网络传输的要求越来越高,即使微秒级别的网络异常也会使得应用受影响。而传统的“尽力而为”的网络服务模型已越来越不适应未来应用的需求。



可预期DCN服务模型

µFAB的目标,是在云数据中心为租户提供带宽保障、低延迟保障、以及最大化利用网络带宽资源。


但是,在目前的网络架构中,要同时实现这三点是非常困难,主要原因是:之前的工作通常把网络当做一个黑盒,利用时延、探测等一系列的启发式算法来做速率控制和路径选择,这样便造成了需要毫秒级别的收敛时间,难以满足应用日渐增加的对于性能的需求。



µFAB的设计理念则恰好相反,核心的思想就是网络的透明化和信息化,即是利用可编程网络数据平面提供的链路状态和租户信息,并将这些信息反馈到主机侧用于智能的速率控制和路径选择。


上图所示µFAB的服务模型,每个租户会被分配一个虚拟的网络(Virtual Fabric),该虚拟网络为租户提供最小带宽保障,最大化利用资源,低长尾延迟等三个SLA保障。


而租户的最小带宽分配遵循云的弹性部署规范,租户总带宽之和不会超过网络物理总带宽。µFAB利用可编程网络提供的精确信息,再通过端网协同的机制达到上述目标。


端网协同的具体工作方式为:


  • 一方面,主机侧的µFAB-E模块发送探测包,用以获取网络的信息,从而指导其做“速率控制”和“路径选择”。
  • 另一方面,网络交换机上的µFAB-C模块收集链路状态和租户的信息,并将这些信息做聚合,插入到发过来的探测包中,反馈给µFAB-E。


带宽延迟保障算法

有了网络透明化和端网协同,如何才能做到带宽和时延的保障呢?


µFAB使用的是按权重分配的做法,这样做的好处是可以很快就能判断出带宽是否得到了满足。即发送窗口的计算方法为:



其中,是按租户的权重进行的按权分配,∑𝘸而是交换机维护的所有租户的发送窗口之和,则是根据链路的负载进行的调整,用于最大化链路利用,同时做拥塞避免。


𝜙,𝘸由探测包携带到网络交换机中,∑∅,∑𝘸由交换机维护的租户信息的聚合,而tx,qlen是交换机维护的网络链路信息。


那么,当多个租户同时有流量请求的时候,是不是大家一起发流量就会造成网络拥塞,从而导致长尾时延呢?


µFAB在解决这个问题同时保障长尾低时延的做法是:允许租户无论何时都可以按照最小带宽保障发送,但只有在网络有剩余带宽的情况下,才逐渐地增大发送速率。


这么做的原理是,最小带宽是租户的SLA保障必须满足,而尽可能的提高发送速率则是额外的奖励,时效性要求相对较低。这样既满足了租户对于随时获取最小带宽的承诺,又使得在有多租户突发流量的冲突的时候,依然能够保障网络的长尾时延。


另一个重要的点是,µFAB能够充分利用整个网络的带宽资源,当一个路径上的带宽资源已经被分配完时,能够快速的进行路径切换,从而使用多个路径的网络带宽资源。


在路径切换时,需要考虑两种场景:


  • 一是当前路径的带宽已经不满足租户SLA,这种情况需要立刻进行路径切换,但也要注意不要过于频繁地连续切换。
  • 二是发现有路径的更多带宽资源的时候,这种情况的路径切换是一种最大化利用网络资源的行为,但相对来说没有紧迫的时间需求,因此不用做得过于频繁。

理论分析和硬件实验



µFAB的理论分析表明,µFAB具备快速收敛,带宽和时延保障等特性,在路径切换中也能做到快速收敛不会造成网络震荡。


我们分别在FPGA和SOC的硬件网卡和Tofino交换机上做了相应的算法实现,并在三层fat-tree的网络拓扑上做了网络层验证和应用层验证。


实验表明,µFAB能提供给租户最小带宽保障和长尾低延迟,同时提供最大化的网络带宽利用,即使面对网络故障的场景下,依然能够快速收敛。



为了验证µFAB对于应用的实际增益,我们将一个租户运行时延敏感型的Memcached,另一个租户运行大带宽的MongoDB应用进行对比实验。


实验表明,µFAB能实现接近于理想状态下的QPS(Query Per Second)和QCT(Query Completion Time)这是因为µFAB总是能正确的选择流量路径,从而实现性能的隔离,以及快速的响应网络拥塞。上图可以看出µFAB能为应用等提供2.5倍的QPS提升,21倍的长尾延迟下降。



03 从luna到solar:阿里巴巴的存储网络演进


与传统的“尽力而为(best effort)”的网络设计理念不同,可预期高性能网络利用软硬结合,跨层设计和端网协同的理念,提供微秒级别的带宽、延迟保障。


计算存储分离架构


在计算存储分离架构下,所有的存储I/O都需要网络传递,因此网络成为存储应用的重要的瓶颈。而存储流量本身占了整个DCN的60%左右,大量的流量都是很多的小流组成的,例如40%的流量都不超过4KB。因此,存储的流量对于带宽和时延都有极高的要求。


Luna用户态TCP协议

在应对SSD介质带来的低时延同时,传统内核态的tcp协议已然成为端到端性能的瓶颈。与存储内部网络使用RDMA来提高性能所不同,计算到存储网络由于他的特殊要求,例如,需要支持十万个连接这个规模,同时需要很高的互通性,而选择了截然不同的协议。


2018年,阿里云从计算到存储部署了用户态tcp协议luna,实现了网络到存储的零拷贝和无锁、零共享等机制,长尾延迟降低了80%。支持了新发布了ESSD产品,实现百万IOPS和100微秒的I/O时延。



裸金属下的存储挑战


裸金属云为租户提供整个物理主机,这样租户不仅可以灵活地定制机型和虚拟化平台,快速上云,也提供了安全和性能的保障。


例如,租户在使用裸金属服务器时,可以运行自定义的虚拟化平台(如VMware cloud)或是完成多云部署,甚至可以调用硬件底层API功能(如Intel RDT)。


但是,裸金属云在提供给租户更多可能的同时,也面临自身性能和成本的挑战。因为,为了使得将整个物理服务器交付给租户,裸金属不得不将云基础设施软件运行在“非侵入式”的硬件中,通常是网络设备如智能网卡、DPU、IPU、交换机等等。


但这样的部署面临两大挑战:


  1. 资源受限:相对于物理服务器,这些网络设备通常面临更少的资源和更低的功耗限制。在这种条件下,要实现相同甚至更好的云服务性能变得极具挑战;

  2. 带宽受限:与传统的虚拟化部署中,hypervisor和租户使用内存拷贝交互数据不同,裸金属场景下的虚拟化和数据交互需要经过智能网卡的缓存、处理和转发,在单个方向上数据会两次通过智能网卡内的PCIe拷贝,数据在网卡中的双向拷贝造成带宽减半。



带宽减半原因由上图所示。当租户发送数据  数据通过主机PCIe到达智能网卡  通过智能网卡内部PCIe到达网卡CPU(一次拷贝) 网卡CPU处理  再通过智能网卡内部PCIe发到网口(二次拷贝),再从网口中发出。


同理,租户从网络中接收数据也要经历2次拷贝,例如,当网口提供双向100Gb/s吞吐时候,租户实际能获得的带宽只有双向50Gb/s。


理想情况下,我们希望数据平面能够直达主机PCIe,不用经历智能网卡内部PCIe的中转。


存储与网络融合的Solar协议

Solar的设计目标是:能够极大地卸载存储和网络处理到硬件网卡中,从而降低CPU开销,提供网络性能,同时能规避网络故障。


但是,面临的现实问题是存储和网络的协议处理都非常复杂,且存在大量的状态。而尤其在资源受限的智能网卡中,能留给存储使用的资源非常有限。做硬件卸载是非常困难的。



因此,solar的设计理念尽可能地减少协议的复杂度,使得可以非常容易地实现硬件卸载。由上图所示,具体做法是网络和存储进行跨层融合,利用网络的jumbo frame使得一个网络的数据包就直接等效成一个存储的block。


这样协议上就不需要维护数据包到block的映射,也不会有在丢包后出线的队首阻塞问题。更少的状态处理也意味着,solar能够节省CPU开销,以及支持多路径等能力。



从线上观测看到,在采用solar之后,计算侧的Storage agent(SA)的长尾时延下降了40%,这是因为solar采用了存储流量的数据平面卸载,这样减少了cpu上的协议处理时延和时延的抖动。同时,由于流量不用经过两次DPU上的PCIe bus,所以网络吞吐能够翻倍。



从多年的线上实际测试数据表明,随着luna和solar的规模化部署,ebs存储的时延在近几年降低了72%,而IOPS提高了3倍。



04 结语


可预期高性能网络,是阿里云基础设施为ML/HPC,高性能存储等新型应用打造的新一代网络架构,核心的目标是“为应用提供微秒级别的时延和带宽保障”,µFAB和Solar分别阐述了实现上述目标的两种重要技术手段:


µFAB揭示了端网协同的融合设计,利用可编程网络提供的精细的网络信息,在端上智能网卡用于速率控制和路径选择;


solar阐述了应用和网络的融合设计理念,利用数据包和数据块的一一映射,从而极大简化状态处理,提高了处理吞吐和降低了时延。这些设计的部署,极大地提升了网络传输的服务质量。


目录
相关文章
|
18天前
|
大数据 云计算
中国网络大会专题论坛 | 下一代超大规模高性能公共云网络
中国计算机学会ChinaNet上,阿里云洛神云网络将与知名学术届代表一起共话下一代超大规模高性能公共云网络的关键技术。
|
24天前
|
机器学习/深度学习 人工智能
类人神经网络再进一步!DeepMind最新50页论文提出AligNet框架:用层次化视觉概念对齐人类
【10月更文挑战第18天】这篇论文提出了一种名为AligNet的框架,旨在通过将人类知识注入神经网络来解决其与人类认知的不匹配问题。AligNet通过训练教师模型模仿人类判断,并将人类化的结构和知识转移至预训练的视觉模型中,从而提高模型在多种任务上的泛化能力和稳健性。实验结果表明,人类对齐的模型在相似性任务和出分布情况下表现更佳。
55 3
|
6天前
|
消息中间件 编解码 网络协议
Netty从入门到精通:高性能网络编程的进阶之路
【11月更文挑战第17天】Netty是一个基于Java NIO(Non-blocking I/O)的高性能、异步事件驱动的网络应用框架。使用Netty,开发者可以快速、高效地开发可扩展的网络服务器和客户端程序。本文将带您从Netty的背景、业务场景、功能点、解决问题的关键、底层原理实现,到编写一个详细的Java示例,全面了解Netty,帮助您从入门到精通。
25 0
|
1月前
|
机器学习/深度学习 Web App开发 人工智能
轻量级网络论文精度笔(一):《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》
《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》这篇论文提出了一种基于YOLOv3-Tiny的轻量级目标检测模型Micro-YOLO,通过渐进式通道剪枝和轻量级卷积层,显著减少了参数数量和计算成本,同时保持了较高的检测性能。
33 2
轻量级网络论文精度笔(一):《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》
|
1月前
|
机器学习/深度学习 编解码 算法
轻量级网络论文精度笔记(三):《Searching for MobileNetV3》
MobileNetV3是谷歌为移动设备优化的神经网络模型,通过神经架构搜索和新设计计算块提升效率和精度。它引入了h-swish激活函数和高效的分割解码器LR-ASPP,实现了移动端分类、检测和分割的最新SOTA成果。大模型在ImageNet分类上比MobileNetV2更准确,延迟降低20%;小模型准确度提升,延迟相当。
56 1
轻量级网络论文精度笔记(三):《Searching for MobileNetV3》
|
8天前
|
大数据 云计算
2024 CCF中国网络大会专题论坛丨下一代超大规模高性能公共云网络 精彩回顾
中国计算机学会ChinaNet上,阿里云洛神云网络将与知名学术届代表一起共话下一代超大规模高性能公共云网络的关键技术。
|
1月前
|
编解码 人工智能 文件存储
轻量级网络论文精度笔记(二):《YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object ..》
YOLOv7是一种新的实时目标检测器,通过引入可训练的免费技术包和优化的网络架构,显著提高了检测精度,同时减少了参数和计算量。该研究还提出了新的模型重参数化和标签分配策略,有效提升了模型性能。实验结果显示,YOLOv7在速度和准确性上超越了其他目标检测器。
47 0
轻量级网络论文精度笔记(二):《YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object ..》
|
5天前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第39天】在数字化时代,网络安全和信息安全成为了我们生活中不可或缺的一部分。本文将介绍网络安全漏洞、加密技术和安全意识等方面的内容,帮助读者更好地了解网络安全的重要性,并提供一些实用的技巧和方法来保护自己的信息安全。
15 2
|
6天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第38天】本文将探讨网络安全与信息安全的重要性,包括网络安全漏洞、加密技术和安全意识等方面。我们将通过代码示例和实际操作来展示如何保护网络和信息安全。无论你是个人用户还是企业,都需要了解这些知识以保护自己的网络安全和信息安全。
|
5天前
|
存储 安全 网络安全
云计算与网络安全:探索云服务中的信息安全策略
【10月更文挑战第39天】随着云计算的飞速发展,越来越多的企业和个人将数据和服务迁移到云端。然而,随之而来的网络安全问题也日益突出。本文将从云计算的基本概念出发,深入探讨在云服务中如何实施有效的网络安全和信息安全措施。我们将分析云服务模型(IaaS, PaaS, SaaS)的安全特性,并讨论如何在这些平台上部署安全策略。文章还将涉及最新的网络安全技术和实践,旨在为读者提供一套全面的云计算安全解决方案。