APP下载

智能网卡研究新进展

2022-02-18张登科王兴伟

小型微型计算机系统 2022年2期
关键词:堆栈网卡数据包

张登科,王兴伟,贾 杰,李 婕

(东北大学 计算机科学与工程学院,沈阳 110004)

1 引 言

超大规模数据中心(Hyperscale Data Centers,HDCs)通过托管数十万乃至百万台服务器为云计算、物联网、大数据和人工智能等促进流量增长的应用提供动力,已经是人类数字化社会的基石(1)https://www.huawei.com/minisite/gci/en.应用的激增使得当代数据中心中的网络流量以每年25%的速度急剧增长[1].为了适应这种巨大的流量增长,数据中心网络向高带宽和新型传输体系发展,需要以高达100Gbps的传输速度,同时运行复杂的网络堆栈,以提供严格的性能、安全和可靠性保证,并且需要灵活地适应在线服务快速演变的需求.链路速度在过去几年中迅速增长,从10Gbps增长到了100Gbps.最近IEEE发布了200Gbps和400Gbps以太网产品标准(2)http://grouper.ieee.org/groups/802/3/bs,未来几年市场产品将以这种速度运行.文献[2]指出链路速度增长到40Gbps及以上时,运行在通用CPU上的软件网络堆栈将难以实现全线路速率数据分组处理.

后摩尔定律时代的到来和Dennard缩放规律的终结[3,4]使得CPU计算能力增速低于网络传输速率的增速,并且这一差距预期会继续增大.在软件网络堆栈中处理数据分组所需要的CPU开销正变得令人望而却步,从而影响到了超大规模数据中心的运营开销.依据数据中心运营商的现行计费策略(3)https://www.alibabacloud.com/pricing,https://aws.amazon.com/pricing,每个CPU时钟周期的使用都和其收入直接关联.因此,为了提供网络功能所需的高速数据分组处理,将网络功能卸载到可编程硬件的需求越来越急迫[5].数据传输所用的复杂算法协议,诸如可靠传输等,被迫卸载到网卡中[6,7]中运行,并且是通过硬件而不是软件来实现.网络堆栈正在向硬件转移,如图1所示.智能网卡(SmartNICs)应运而生.

图1 网络堆栈向硬件转移Fig.1 Network stack moves to hardware

智能网卡是软件定义的基于卡上计算单元的网卡,可减轻主机端CPU的网络堆栈计算负载,包括虚拟交换(OVS)、存储、数据和网络加密(IPSEC/SSL)等.智能网卡是一种新型智能硬件,和历史上的网络智能化存在很大不同.为了使本领域研究者能够系统的了解与区分智能网卡与网络智能化技术的联系与区别,本文系统分析了智能网卡研究领域的最新成果,并对其核心关键技术与研究趋势进行分析与总结.

本文章节安排如下:第2节将依据应用背景的发展总结网卡智能化的演进,第3节详细阐述HDCs时代智能网卡的3大研究挑战、两种类别以及在网络加速、数据传输、新型调度器和性能隔离方面的最新研究进展,第4节简述工业智能网卡产品的现状,第5节给出智能网卡4个未来研究方向,最后一节是全文总结.

2 网卡智能化演进

传统网卡(NIC)支持较低链路速度,网络堆栈算法和协议在主机端CPU上运行.在将数据包传输到网络之前,主机端网卡仅执行链路层和物理层中的无状态算法和协议.传统网卡显著依赖CPU算力,且需要使用主机存储器来维持数据包之间的状态.也就是说,传统NIC用于执行无状态数据包处理,而有状态数据包处理则在主机端CPU上实现.

使用专用集成电路的传统网卡在多核CPU出现后开始面对可编程性的挑战.第1代网卡智能的出现是为了解决网卡如何更好利用多核CPU并行处理能力的问题.典型工作是接收端扩展技术(Receive Side Scaling,RSS)(4)https://docs.microsoft.com/en-us/windows-hardware/drivers/network/introduction-to-receive-side-scaling,本文称之为多核CPU时代的网络智能.第2代网卡智能的诞生背景是虚拟化技术的出现,网卡智能化表现在利用用户空间卸载本应属于虚拟机的功能,使得网卡具备了高速编程体系,这一时期的典型工作是数据平面开发套件(Data Plane Development Kit,DPDK)技术(5)https://www.dpdk.org/.

2.1 多核CPU时代的网卡智能化

多核CPU时代,部分TCP功能开始卸载到网卡上执行,如TCP/IP校验和计算,TCP分段卸载(TCP Segment Offload,TSO)和大型接收卸载(Large Receiver Offload,LRO).功能卸载节省了CPU处理大消息的周期,因为不再进行数据包有效负载计算,同时这也提高了系统DMA吞吐量,减少了CPU的中断数量.然而,这类网卡优化主要局限于大消息的传递.多核CPU出现后,网卡面临通过并行化提升效率的挑战,逐步转移到网卡上的卸载功能同样需要并行化提速.为了利用多核CPU的并行能力,Intel公司研发了RSS.RSS使用了多个接收通道,利用特殊以太网报头标签,将待处理数据包分配到不同的CPU核上进行并行处理,从而实现负载分散.

2.2 虚拟化时代的网卡智能化

虚拟化技术可以实现软件网络堆栈功能,提供了极大的灵活性,数据包处理得以绕过硬件卸载.同时,快速开发和测试新功能成为可能.但网络堆栈软件化需要权衡CPU资源消耗和传输效率.消耗更多主机CPU周期才可以支持全线路速率运行.此外,由于软件固有的随机中断驱动特性,软件网络堆栈不支持精确传输控制,使该类网络应用程序开发面临困境[8].这一时期,许多研究项目[9-11]通过修改网络堆栈或使用内核旁路框架的方式在软件中实现网络智能化,其中代表性工作是Intel公司牵头研发的数据平面开发套件(DPDK).DPDK支持在用户空间处理所有数据包,从而绕过主机内核.DPDK一般用作加速手段,其处理过程依赖于未针对数据传输进行优化的服务器,这是一个瓶颈.由于单台服务器吞吐量性能低下,这一时期部署使用DPDK往往需要多台服务器,这导致了服务器购置成本的增加.

虚拟化平台中提高吞吐量的经典技术是基于PCIe的单根IO虚拟化(Single Root I/O Virtualization,SR-IOV)技术,SR-IOV允许网卡将物理端口映射为多个虚拟端口或虚拟功能(Virtual Functions,VFs),这使得每个虚拟端口都可以绑定到不同的VM,吞吐量性能和CPU使用效率得到改善,但灵活性降低,复杂性增加.大多数网卡最多有效支持8-64个虚拟端口(1GE物理端口一般承载8-16个虚拟端口,10GE物理端口承载40-64个虚拟端口).为了能够将网络堆栈中各种协议和算法(甚至分布式应用)卸载到网卡,在虚拟化时代已经有网卡可编程的若干早期探索工作[12].

3 HDCs时代的智能网卡

前述多核CPU时代和虚拟化时代的网卡智能主要用于加速低优先级分组处理应用,例如网络功能和虚拟网络交换机.HDCs的到来促使网卡智能进一步发展,为硬件加速和提供高速网络性能创造了新机会.智能网卡研发逐渐成为学术界和工业界关注的热点.

现今数据中心中东西向网络流量成为主导,新型I/O加速器不断出现,服务器越来越需要智能网卡,以减轻网络数据包处理负担,减少过多计算,降低网络虚拟化开销,消除低效服务器架构带来的尾部延迟.另一方面,HDCs运营商对CPU周期有经济考虑,希望能够把尽可能多的CPU周期花费到执行用户应用程序级,而不是闲置或浪费时间处理用户不能明确付费的数据包或存储操作.研究利用专有架构智能网卡的主要目标演变成了维持高吞吐量、降低HDCs的CPU负载和每瓦成本.HDCs高速网络传输给智能网卡带来时间限制,摩尔定律的放缓致使单CPU计算能力难以提高,同时也导致网卡内存容量受限,其本身容积较小.HDCs时代的智能网卡研发面临独特的挑战.

3.1 HDCs智能网卡研究挑战

3.1.1 时间限制

数据中心传输的数据包大小中值小于200字节[13,14].为了使这些小数据包达到100Gbps,NIC必须每隔大约10纳秒发送一个数据包.智能网卡的传输逻辑要在大约10纳秒的间隔内输出每个流的下一个数据段地址和传输时点决策.

3.1.2 内存限制

典型数据中心服务器进行数据传输时的并发流数量往往超过1000,每个流传输数据的量可能有数千字节[13-15].而网卡上只有几兆字节的高速内存[16,17],每个数据流传输逻辑的状态存储空间非常有限.HDCs时代的智能网卡需要研发低内存占用的高速硬件传输协议.

3.1.3 传输状态维持

智能网卡执行传输逻辑需要有状态处理,也就是需要维护每个流的状态,并在段生成和确认接收时更新状态.传输事件的流水线处理,可以为执行复杂操作“争取”更多时间.为此,智能网卡一般为相同流生成紧密关联段.紧密关联段必须在传输事件之后快速更新流状态.类似传输事件的响应涉及复杂的操作,依赖专门的数据传输和拥塞控制算法.因此,很难在传输管道上为时间如此接近的事件提供状态一致性.长管道不能解决时序约束,新型智能网卡需要研发传输状态维持的新方法.

3.2 卡上计算单元

智能网卡采用的计算单元主要有3种,分别是ASIC芯片、现场可编程门阵列(Field-Programmable Gate Array,FPGAs)、片上系统(System-on-Chip,SoC)[18,19].三者的技术权衡对比如表1所示.

表1 智能网卡计算单元技术对比Table 1 Comparison of SmartNICs′ core unit technology

基于ASIC的智能网卡.这类智能网卡使用数百个非高速缓存相关的多线程RISC核(例如NPU,ARM或RISC-V),支持100Gbps的流量速率,以及专用硬件功能:查找,负载平衡,排队等.并且能够以低延迟运行并行工作负载.这些智能网卡(NetronomeAgilio(6)https://www.netronome.com/products/agilio-cx(7)https://cavium.com/pdfFiles/LiquidIO_II_CN78XX_Product_Brief-Rev1.pdf和Marvell LiquidIO)设计方面的最新进展,使得用户更容易使用例如P4[20]和Micro-C[21]程序来定制网卡的数据平面逻辑,支持数据解析、匹配和操作,从而为编程人员提供熟悉的数据流和类C语言抽象,而不需要主机操作系统.

基于FPGA的智能网卡.从概念上讲,FPGA是一个可编程逻辑块和存储器阵列,可以基于用户定义程序实现定制逻辑,通常采用Verilog和VHDL等硬件描述语言.因此,基于FPGA的网卡具有高度可编程性,可以支持有状态数据包处理.此外,FPGA只使用实现用户定义程序所必需的逻辑和存储器块.因此,它们可以根据特定应用进行高度定制,并实现100Gbps的传输速率.这使得基于FPGA的网卡能够在主机端卸载高速数据流.

基于FPGA的网卡结合了基于ASIC的网卡和软件网卡的特点:它们能够以全线路速率运行,提供低延迟和精确定时,同时具有相对较短的新功能开发周期.专门定制的高性能FPGA智能网卡也已经开发出来.例如,阿里巴巴开发了一个完全定制的基于FPGA的智能网卡,他们用它来运行精密拥塞控制协议(HPCC)的硬件实现[22],智能网卡的时延比基于软件的DPDK方案降低了50%,而同时数据处理能力提升近4.5倍.基于FPGA的智能网卡已经在大规模数据中心实现了部署[23].这些数据中心使用机架规模的FPGA到FPGA直连通信,其加速服务的支持范围还仅限于单机架.此外,由于FGPA智能网卡节点故障对其他相邻节点会产生影响,这类FPGA直连网络拓扑面临弹性挑战.

FPGA存在昂贵且耗电高的缺点,并且对其进行编程需要具备硬件专家知识,相对困难.研发人员还不能不面对Verilog这类低层语言.

基于SoC的智能网卡.片上系统(SoC)是一类具有片上存储器的嵌入式CPU内核,这些内核通常使用特定编程语言进行编程.因此,基于SoC的网卡也是高度可编程的,并且可以用于通用有状态数据包处理.与NPU类似,SoC通用编程模型使得它们很难以经济高效的方式扩展到每秒几十吉比特之上[24].SoC将传统ASIC与数量适中的高速缓存相关的通用内核相结合,以便更容易地编程,并将固定功能协处理器用于自定义工作负载加速.因此,SoC智能网卡适合程序开发.

SoC智能芯片有“on-path”和“off-path”两种设计方法,其主要区别是网络端口和主机内存之间移动数据包的方式不同[24].“on-path”设计方法中,所有数据包在通往或离开网络的路径上必经NIC的处理内核(或者其子集)(8)https://aws.amazon.com/datapipeline.相反,“off-path”设计方法中使用交换机路由NIC和主机之间的流量(9)https://cloud.google.com/appengine.设计的不同对分组吞吐量影响不同,前者需要更多的核以扩展到更高的线路速率,而后者在到达计算资源之前可能会引起额外的等待时间.最近,研究人员提出了这两种设计方法的混用机制[25].

3.3 研究前沿进展

智能网卡除了具有传统网卡的数据包转发以及远程直接存储器访问(Remote Direct Memory Access,RDMA)功能,还在逐渐完善网络堆栈.最新发表的研究主要针对网络加速、数据传输、新型调度器和性能隔离机制等方面的功能卸载,如图2所示.

图2 智能网卡研究前沿进展Fig.2 Research advances on SmartNICs

3.3.1 网络加速

数据中心正越来越多地采用SmartNICs来加速数据包处理,进而支持数据包处理管道和自定义网络功能(Networkfunctions,NFs).网络加速的典型应用包括压缩/解压缩[26]、K-means聚类[27]和Web搜索[28]等.

文献[29]从可重构角度进一步研究表明,SmartNICs确实可以实现数据中心的大规模业务进行健壮加速.作者认为SmartNICs适合用作细粒度加速器,其带来的可重构性是支撑数据中心服务快速变化的关键手段.

文献[30]提出了一个加速服务器的微服务执行平台E3.E3遵循标准微服务平台的设计理念,将关键系统组件(编程模型,执行引擎和调度等)扩展到SmartNICs上.其研究结果表明,E3可以将集群能效提高3倍,成本效率提高1.9倍.

3.3.2 数据传输

主机端上的传输层是卸载到硬件的网络堆栈中最复杂,不断发展和有状态的组件.它决定下一步应该传输什么数据包以及何时应该将它们释放到网络中.因此,传输层算法和协议是实现网络高性能的核心.现有的传输层卸载都被实现为特定功能智能网卡的固定功能组件,这不利于传输层的改良.在100Gbps及以上的速率下,由于网卡上的内存有限,传输协议必须每隔几纳秒就生成一个数据段,仅有数千位的每流状态存储空间.每流状态可能每隔几纳秒就会被多个并发传输事件更新.智能网卡的网络堆栈需要在保持状态一致性的同时,以线路速率处理数据包.在智能网卡上实现有状态数据传输存在巨大挑战.

使用传统软件实现的网络堆栈进行状态维持,需要消耗30-40%的CPU周期,才能够匹配当今数据中心高带宽应用的需求[31-33].提高网络堆栈处理性能效率的最新研究还包括文献[31,32](10)http://www.f-stack.org,https://www.openonload.org.随着数据中心向100Gbps以太网速率移动,软件网络堆栈带来的CPU利用率变得令人望而却步.这迫使学术界和工业界研发完全在网卡上运行的硬件网络堆栈[11].但是,商用网卡只支持两种主要传输协议:TCP变体和RoCE,并且都与硬件相关,只能由供应商修改.RoC(11)http://www.mellanox.com/page/products_dyn?product_family=79&mtag=roce是一种用于通过RDMA进行通信的传输协议.它使用DCQCN[34]进行拥塞控制,并使用简单的N回退(go-back-N)算法进行可靠的数据传送:一旦接收方通知收到乱序(out-of-order)数据包,发送方就开始重新发送来自最后一个累积确认数据包的所有数据包.

最近的研究表明,低延迟数据中心网络可以从上述两种传输协议中收益[35-37].然而,在许多情况下,上述两种协议不是开箱即用的.例如,微软在其数据中心部署RoCE网卡的尝试中发现运营商需要自行定制数据传送算法,以避免网络中的活锁,但这些更改必须依赖网卡供应商.学术界和工业界已经提出了其他算法来改进RoCE的简单可靠递送算法[38,39].

3.3.3 新型调度器

传统异构调度研究主要针对高速缓存一致性体系结构,而不是微秒级基于请求工作负载的智能网卡计算节点架构,传统网卡节点不共享内存,因此不适用于智能网卡的调度.文献[40-43]的研究进一步指出智能网卡性能推理是困难的,并提出了基于运行时性能的任务在主机和网卡之间的自动调度和迁移.文献[44]指出,重复利用PCIe接口可能产生交叉,需要支持网络功能放置的新型调度方法.

3.3.4 性能隔离

智能网卡可以实现网络虚拟化功能,支持微服务部署,并可以共享其自身资源.性能隔离的研究旨在解决与智能网卡固件争夺资源而导致的行头阻塞问题.长时间行头阻塞会引发对无关微服务的拒绝服务,这比网络拥塞等短暂干扰更为严重.因此,需要将智能网卡卸载的微服务与固件充分隔离,以保证服务质量.文献[45]实现了一种在多租户云环境中低成本性能隔离机制,通过确定性能竞争的关键点,如数据包入口和出口,内核分配,内存访问和协处理器使用等.研究结果表明,所提出的机制实现了资源的有效隔离.

4 工业智能网卡进展

市场研究机构数据显示(12)https://www.delloro.com/smart-nic-growth-opportunities-and-considerations-in-2020-and-beyond/,智能网卡市场规模在未来3年将超过6亿美元,占全球网卡市场的23%,其中25Gbps和100Gbps的智能网卡将是主要增长驱动力.智能网卡已经出现在市场上(13)http://www.mellanox.com/related-docs/prod_adapter_cards/PB_BlueField_ Smart_NIC.pdf,https://www.broadcom.com/products/ethernet-connectivity/smartnic/ps225,并在运营数据中心得到部署[23].工业智能网卡包括计算单元、缓存、流量调度器、PCIe接口、以太网发送/接收端口以及用于数据包处理的硬件加速器,如密码学和模式匹配引擎,实现加速器与网卡的集成,降低在线数据的传输请求延迟.典型的工业智能网卡布局如图3所示.

图3 典型智能网卡布局Fig.3 Layout of typical SmartNICs

工业智能网卡一般具有数十个流处理核心,也称为微引擎(MEs),用于实现复杂网络数据平面功能.MEs主要用于数据包处理、流水线和INT报头处理.其余少量MEs运行专用异步执行的独立功能,支持智能网卡内的有状态分组处理(例如有状态事件处理,微突发检测等).全局负载均衡器在MEs之间分配输入数据分组,为高吞吐量分组处理提供并行性.工业智能网卡具有分层存储器子系统,提供外部存储器接口.3个公认主流厂商的产品主要参数如表2所示.

表2 工业智能网卡典型指标Table 2 Typical parameters of SmartNICs

4.1 分类

通用型工业智能网卡.这类工业智能网卡运行完整操作系统,附带轻量级运行时系统,可提供对网卡IO引擎的内核旁路访问,并允许透明卸载.这类产品包括Mellanox BlueField,有16个ARMv8 A72核,端口为2×50GE;MarvellLiquidIOII有16个cnMIPS核,端口为2×25GE.

专用型工业智能网卡.这类智能网卡一般基于FPGA和ASIC,面向高度专业化的应用,包括用于网络数据平面的匹配与动作处理,用于深度神经网络推理加速的NPU[46]和TPU[47].专业型智能网卡可以与通用智能网卡结合使用,XILINX研发的一体化智能网卡平台,主要用于数据中心网络加速,可在单颗器件上同时实现网络、存储和计算加速功能.Mellanox研发的智能网卡集成安全加速引擎和平台安全功能,支持构建大规模和高度安全可靠数据中心基础架构.Intel研发的专用FGPA智能网卡已经被主流数据中心服务器提供商实际应用[12].

4.2 通信子系统

智能网卡-主机通信.同一台服务器上的智能网卡和主机内核通过PCIe进行通信.工业界已经设了通过PCIe的通信信道.PCIe互连的高吞吐量消息传递需要并行利用多个DMA引擎.

智能网卡间通信.同1台主机中的智能网卡间采用3种方法进行通信.第1种是使用主机中继请求,通过PCIe进行两次数据传输和主机上的指针操作,这种方式会增加延迟.第2个是通过PCIe接口点对点通信.大多数工业智能网卡支持这种方式.PCIe点对点通信的缺点是其带宽在NUMA系统中受限.第3种是通过柜顶(Top Of Rack,TOR)交换机通信.数据中心场景中使用TOR实现网卡间通信.微软研发的基于FPGA的智能网卡已经在其商用数据中心规模化应用,实现同一机架服务器通过TOR通信,端到端往返延迟为2.88微秒.

远程通信.跨不同服务器的主机核心之间的通信,文献[48]设计了用户级网络堆栈,以实现远程通信.

4.3 编程工具

工业界目前使用的编程工具https://www.xilinx.com/products/design-tools/vivado/integration/esl-design.html,https://www.xilinx.com/products/design-tools/vivado/integration/esl-design.html,将高级语言(例如C语言)程序编译成硬件描述语言(例如Verilog),以减少硬件设计的开发工作量,降低编程的技术门槛,提升研发效率.但商业智能网卡体系结构的详细描述不公开,因此无法适配定制用户功能需求,编程工具灵活性仍有很大局限性.

5 智能网卡研究趋势

伴随5G/物联网/边缘计算的部署应用和超大规模数据中心东西向流量激增,作者通过归纳梳理提出如下4个智能网卡未来研究的主要领域,包括可编程性提升、人工智能增强、光学智能网卡和开源硬件等.

5.1 可编程性提升

数据中心中可编程智能网卡的兴起,为卸载有状态应用层数据处理到网卡上开辟了新的机会.使用可编程智能网卡,应用程序可以在收到来自其他应用程序的数据包后的几纳秒内处理并响应这些数据包,而无需经过任何软件(内核或用户空间)或消耗任何CPU周期.虽然将所有应用程序的所有处理都卸载到NIC可能是不可行的,但即使卸载数据处理的公共或较简单部分也可以为延迟和/或吞吐量敏感的应用程序提供显著的好处.已经有学者研究将特定应用程序的全部或部分处理卸载到数据中心的网卡上,比如针对微服务的卸载.

智能网卡对微服务应用架构和无服务器计算的支持还很薄弱,缺少统一可编程平台来支持将全部或部分应用层卸载到智能网卡.智能网卡的可编程性和性能之间的权衡依然值得探索和研究.工业智能网卡的生产性编程平台还未成熟,仍需进一步研发.

5.2 人工智能增强

从长远来看,智能网卡具备的强化硬件逻辑在人工智能领域,尤其是分布式机器学习领域,存在巨大的应用潜力.专有领域芯片被认为将引领计算机系统结构的下一个黄金10年,深度学习加速器的DianNao家族[49]已经取得了显著的研发成效.展望未来,近数据处理智能网卡[50]将能够为分布式机器学习研究提供新视角和新方向.最近发表在Sigcomm2019的研究工作iPipe[51]已经开始尝试探索在多核SoC智能网卡上卸载分布式应用,其原型实验评估表明,可以节省主机端CPU时钟周期,降低延迟.

5.3 光学智能网卡

在数据中心内,光互联已经表现出相比电气互联的优势,片上光学集成的研究已经取得进展[52].若能研发出集成光学的智能网卡,其传输能力和低延迟将进一步激励网卡行业的进步.

5.4 开源硬件

开源生态.NetFPGA[53]和PISA[20]是已有的两个智能网卡有关的开源硬件体系,前者实现了网络应用卸载,后者实现了可重构的匹配操作引擎.前者还提供了一个通用的基于FPGA的包处理工具箱,初步构成了一个FPGA的数据包处理解决方案,为智能网卡开源生态的形成提供了基础.

原型平台.文献[54]中研发了一种名为Corundum的100Gbps基于FPGA的智能网卡开源方案,提供线路速率,灵活支持新型网络应用,优化设计后可以提高对小包处理的性能,以及根据精确的数据包传输定制新型网络协议.Corundum开源网卡结合前述3.3.3小节里的新型调度器、新型传输协议(Tonic[55])、拥塞控制技术(HPCC)和新型并行网络体系结构(RotorNet[56])已经能够构成较为完整的智能网卡开源硬件研发平台.

6 结 论

当今和未来数据中心网络中,为应对100Gbps及以上低延迟和低CPU占用率的高速数据速率,主机端网络堆栈正在向硬件转移,学术界和工业界开始加速智能网卡的研发.随着可编程网络时代的到来,可编程交换机、智能网卡和数据包处理软件3者的功能边界依然是值得探索的重要研究领域.来自斯坦福大学Platform Lab的学者近期提出自编程网络(Self-ProgrammingNetwork,SPN(14)https://prabhakargroup.stanford.edu/research/self-programming-networks-spns),SPN探索以智能网卡为中心的感知推理型数据中心架构,该架构支持纳秒级超低延迟传输,已经在证券高频交易场景验证部署,这为智能网卡未来的发展提供了新思路.

从硬件角度看,我国硬件研发相对薄弱,有待加强,基于专用芯片的智能网卡是一个新赛道,开源硬件能够提供较低进入门槛,基于领域专用智能网卡创新业态亟需形成.智能网卡是能够支撑超大规模数据中心的利基应用产品,是未来数据中心基础设施的有竞争力组成部分,加大智能网卡领域的研发将促进我国数字基础设施自主权的形成.

猜你喜欢

堆栈网卡数据包
二维隐蔽时间信道构建的研究*
联网全靠它 认识笔记本的无线网卡
基于生成语法的句子理解机制
C#串口高效可靠的接收方案设计
Windows栈缓冲区溢出攻击原理及其防范
缓冲区溢出安全编程教与学
网络数据包的抓取与识别
挑战Killer网卡Realtek网游专用Dragon网卡
USB故障又一原因
如何屏蔽集成声卡显卡和网卡