关于 SIGCOMM
ACM SIGCOMM(Special Interest Group on Data Communication)是计算机网络领域最高水平学术会议之一。SIGCOMM’24会议将于2024年8月4日至8日在悉尼召开。本次会议中,香港科技大学智能网络与系统实验室iSING Lab的一篇论文被录用,题目为:Fast, Scalable, and Accurate Rate Limiter for RDMA NICs,作者:Zilong Wang, Xinchen Wan, Luyang Li, Yijun Sun, Peng Xie, Xin Wei, Qingsong Ning, Junxue Zhang, Kai Chen。
论文简介
流量限速器(rate limiter)是RDMA网卡的重要组件,需要做到高精度、高可拓展性、以及高处理速度。一方面,流量限速器需要高精度和高可拓展性来正确地执行网卡上的拥塞控制和流量隔离等策略。每条流被分配了发送速度,流量限速器需要严格参照数万条流的发送速度来传输报文。这有助于缓解数据中心内部链路拥塞,以及保障上层应用的性能稳定和用户体验。除此之外,RDMA网卡的流量限速器处理速度必须足够快。流量限速器位于网卡的数据通路,当处理速度较低时会影响RDMA网卡的发包速度,降低网卡性能。
现有工作SENIC和PIEO实现了准确且可拓展的限速器,但处理速度不够快,只满足RDMA网卡31.4%的性能需求。SENIC和PIEO的性能瓶颈源于它们强耦合的设计,“一次排序只传输一个报文”。具体来说,为保证精度,它们依据上万条流的发送时间做排序,发送传输时间最近的流的首个报文,随后根据这条流的限速计算下一个传输时间,并重新排序。这种方式每次排序只发送一个报文,而上万条流的排序速度较慢,因此整体处理速度较低,难以满足RDMA网卡的性能需求。比如16K条流的排序只能达到34.5Mpps,而RDMA网卡能达到110Mpps。
本文提出了Tassel,一种分层的RDMA网卡流量调度器。Tassel在保证高精度和高可拓展性的前提下,通过重新设计限速器的工作流程,实现“一次排序传输多个报文”,提高了处理速度。Tassel采用分层的限速方式:首先对数量大的流做第一层限速,满足可拓展性需求,再对数量小的即将发送的包做第二层限速,满足精度需求,同时通过批次和过滤机制来提升这两步的处理速度,满足性能需求。
Tassel可以通过替换原网卡调度器(scheduler)的方式集成进RDMA网卡。我们的FPGA原型显示Tassel可以实现125Mpps的高处理速度,相比SENIC和PIEO提高3.6倍。同时,Tassel可以支持16K条流,相比SENIC和PIEO仅使用7.5%-25.6%的硬件资源。此外,Tassel可以精准地实现100Kbps到100Gbps的限速。
近年来,港科大iSING Lab一直关注如何提升数据中心RDMA网络的传输性能。Tassel是iSING Lab继SRNIC(USENIC NSDI 2023)之后,在RDMA网络方向发表的又一篇主要论文。实验室将继续探索如何更好地构建低延时和高吞吐率的网络传输系统。