NetVRM: Virtual Register Memory for Programmable Networks
NetVRM: Virtual Register Memory for Programmable Networks
复制标题
DOI:
--
复制
发表时间:
2022
期刊:
影响因子:
--
通讯作者:
Hang Zhu;Tao Wang;Yi Hong;Dan R. K. Ports;Anirudh Sivaraman;Xin Jin
中科院分区:
文献类型:
--
作者:
Hang Zhu;Tao Wang;Yi Hong;Dan R. K. Ports;Anirudh Sivaraman;Xin Jin
Programmable networks are enabling a new class of applications that leverage the line-rate processing capability and on-chip register memory of the switch data plane. Yet the status quo is focused on developing approaches that share the register memory statically. We present NetVRM, a network management system that supports dynamic register memory sharing between multiple concurrent applications on a programmable network and is readily deployable on commodity programmable switches. NetVRM provides a virtual register memory abstraction that enables applications to share the register memory in the data plane, and abstracts away the underlying details. In principle, NetVRM supports any memory allocation algorithm given the virtual register memory abstraction. It also provides a default memory allocation algorithm that exploits the observation that applications have diminishing returns on additional memory. NetVRM provides an extension of P4, P4VRM, for developing applications with virtual register memory, and a compiler to generate data plane programs and control plane APIs. Testbed experiments show that NetVRM generalizes to a diverse variety of applications, and that its utility-based dynamic allocation policy outperforms static resource allocation. Specifically, it improves the mean satisfaction ratio (i.e., the fraction of a network application’s lifetime that it meets its utility target) by 1.6–2.2× under a range of workloads.