Nimble: Scalable TCP-Friendly Programmable In-Network Rate-Limiting

Nimble: Scalable TCP-Friendly Programmable In-Network Rate-Limiting
复制标题

DOI:
10.1145/3482898.3483361
复制
发表时间:
2021-10
期刊:
Proceedings of the ACM SIGCOMM Symposium on SDN Research (SOSR)
影响因子:
--
通讯作者:
Vineeth Sagar Thapeta;Komal Shinde;Mojtaba MalekpourShahraki;Darius Grassi;Balajee Vamanan;Brent E. Stephens
Vineeth Sagar Thapeta;Komal Shinde;Mojtaba MalekpourShahraki;Darius Grassi;Balajee Vamanan;Brent E. Stephens
中科院分区:
其他
文献类型:
--
作者:
Vineeth Sagar Thapeta;Komal Shinde;Mojtaba MalekpourShahraki;Darius Grassi;Balajee Vamanan;Brent E. Stephens

文献摘要

相似文献

由于速率限制器可用于提供性能隔离,因此对可扩展的高性能网内速率限制的需求正在出现。然而,现有的网络内速率限制方法是不可扩展的或TCP友好的。本文介绍了Nimble的设计,这是一种新的网络速率限制方法,具有可扩展性,高性能和TCP友好性。Nimble使用仪表来可扩展地提供硬件速率限制,而无需任何专用的队列或缓冲资源,Nimble使用ECN整形来执行TCP友好的速率限制。Nimble还引入了第一个用于配置网络内速率限制器以实施网络范围隔离策略的算法。通过P4实现和100 Gbps赤脚Tofino交换机的实验,我们发现,敏捷是立即可用的,甚至可以在高带宽速率限制下运行,而不需要再循环数据包或依赖于硬件数据包生成器来生成令牌重填充数据包。这克服了现有方法的可扩展性限制。Apache和Redis的实验表明,与不使用网络内速率限制相比,Nimble可以将应用程序级延迟降低一个数量级,ns-3模拟表明Nimble在较大的集群中表现良好。我们发现,当在Barefoot Tofino交换机上实现时,Nimble可以扩展到100 K速率限制器,并且我们的新速率分配算法将速率限制器更新减少了10倍-24倍,并将网络利用率提高了24%。
There is an emerging need for scalable high-performance in-networkrate-limiting because rate-limiters can be used to provide performance isolation. However, existing approaches to in-network rate-limiting are not scalable or TCP-friendly. This paper presents the design of Nimble, a new approach to in-network rate-limiting that is scalable, high performance, and TCP-friendly. Nimble uses meters to scalably provide hardware rate-limiting without any dedicated queuing or buffering resources, and Nimble uses ECN-Shaping for TCP-friendly rate-limit enforcement. Nimble also introduces the first algorithm for configuring in-network rate-limiters to enforce network-wide isolation policies. Through a P4 implementation and experiments with a 100Gbps Barefoot Tofino switch, we find that Nimble is immediately usable and can operate even with high bandwidth rate-limits without needing to recirculate packets or rely on hardware packet generators to generate token refill packets. This overcomes the scalability limitations of prior approaches. Experiments with Apache and Redis show that Nimble can reduce application-level latency by an order of magnitude when compared to not using in-network rate-limiting, and ns-3 simulations demonstrate that Nimble behaves well in larger clusters. We find that Nimble can scale to 100K rate-limiters perswitch when implemented on a Barefoot Tofino switch, and our new rate allocation algorithm reduces rate-limiter updates by a factor of 10x-24x and improves network utilization by 24%.