Abstract
A wide variety of in-network services have been developed for RMT-based switching hardware, almost exclusively through the P4 language and ecosystem. Many of these applications maintain state in switch memory, a scarce shared resource. As with any other network resource, varying traffic demands necessitate reallocations, yet the P4 ecosystem is not well suited for dynamic resource management: Modifying the set of services deployed on a switch using P4 requires the network operator to prepare a new binary image and re-provision the switch, disrupting all existing traffic. We present an alternate approach - -using techniques from capsule-based active networking - -to programming RMT devices that enables non-disruptive (re)allocation of switch memory at time scales that are much faster than P4 compilation without operator intervention. We use P4 to implement a single, shared runtime on commodity RMT hardware that interprets instructions received via the switch data plane to deliver a variety of exemplar services including caching, load balancing, and network telemetry. Our prototype implementation is able to dynamically provision dozens-to-hundreds of instances of simultaneous stateful services at the timescale of seconds.
Author supplied keywords
Cite
CITATION STYLE
Das, R., & Snoeren, A. C. (2023). Memory Management in ActiveRMT: Towards Runtime-programmable Switches. In SIGCOMM 2023 - Proceedings of the ACM SIGCOMM 2023 Conference (pp. 1043–1059). Association for Computing Machinery, Inc. https://doi.org/10.1145/3603269.3604864
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.