NetLock: Fast, Centralized Lock Management Using Programmable Switches

NetLock: Fast, Centralized Lock Management Using Programmable Switches
复制标题

DOI:
10.1145/3387514.3405857
复制
发表时间:
2020-07
期刊:
Proceedings of the Annual conference of the ACM Special Interest Group on Data Communication on the applications, technologies, architectures, and protocols for computer communication
影响因子:
--
通讯作者:
Zhuolong Yu;Yiwen Zhang;V. Braverman;Mosharaf Chowdhury;Xin Jin
Zhuolong Yu;Yiwen Zhang;V. Braverman;Mosharaf Chowdhury;Xin Jin
中科院分区:
其他
文献类型:
--
作者:
Zhuolong Yu;Yiwen Zhang;V. Braverman;Mosharaf Chowdhury;Xin Jin

文献摘要

被引文献

相似文献

锁管理器在分布式系统中被广泛使用。传统的集中式锁管理器可以使用全局知识轻松地支持多个用户之间的策略,但性能较差。相比之下,正在出现的分散办法速度更快,但不能提供灵活的政策支持。此外,这两种情况下的性能都受到服务器能力的限制。我们提出了NetLock,一种新的集中式锁管理器,它共同设计服务器和网络交换机,在不牺牲策略支持灵活性的情况下实现高性能。NetLock的关键思想是利用新兴的可编程交换机的能力,直接处理交换机数据平面上的锁请求。由于交换机内存有限,我们设计了一种内存管理机制来无缝集成交换机和服务器内存。为了实现交换机中的锁定功能,我们设计了一个定制的数据平面模块,该模块有效地将多个寄存器阵列集中在一起,以最大限度地提高内存利用率。我们已经实现了一个NetLock原型,其中包括一个赤脚Tofino交换机和一组商品服务器。评估结果表明,与基于rdma的单反解决方案相比,NetLock的吞吐量提高了14.0-18.4倍,平均延迟和99%延迟分别降低了4.7-20.3倍和10.4-18.7倍,同时提供了灵活的策略支持。
Lock managers are widely used by distributed systems. Traditional centralized lock managers can easily support policies between multiple users using global knowledge, but they suffer from low performance. In contrast, emerging decentralized approaches are faster but cannot provide flexible policy support. Furthermore, performance in both cases is limited by the server capability. We present NetLock, a new centralized lock manager that co-designs servers and network switches to achieve high performance without sacrificing flexibility in policy support. The key idea of NetLock is to exploit the capability of emerging programmable switches to directly process lock requests in the switch data plane. Due to the limited switch memory, we design a memory management mechanism to seamlessly integrate the switch and server memory. To realize the locking functionality in the switch, we design a custom data plane module that efficiently pools multiple register arrays together to maximize memory utilization We have implemented a NetLock prototype with a Barefoot Tofino switch and a cluster of commodity servers. Evaluation results show that NetLock improves the throughput by 14.0-18.4x, and reduces the average and 99% latency by 4.7-20.3x and 10.4-18.7x over DSLR, a state-of-the-art RDMA-based solution, while providing flexible policy support.