Enabling Fast, Dynamic Network Processing with ClickOS
📜 Abstract
Middleboxes are both crucial to today’s networks and ubiquitous, but embed knowledge of today’s protocols and applications to the detriment of those of tomorrow, making the network harder to evolve. SDNs seek to make it easier to extend the network with new functionality, but most of the research effort has focused on the network’s control plane, that is, how packets are switched are routed through a SDN. Given the pervasiveness and importance of middleboxes, we believe that a fully programmable network should also be able to dynamically instantiate and quickly move middlebox functionality. In this paper we shift focus towards making the data plane more programmable by introducing ClickOS, a tiny, Xen-based virtual machine that can run a wide range of middleboxes. ClickOS is small (5MB when running), can be instantiated in very small times (roughly 30 milliseconds) and can fill up a 10Gb pipe while concurrently running 128 vms on a low-cost commodity server.
✨ Summary
Summary
The paper introduced ClickOS, a lightweight Xen-based virtual machine that combines MiniOS with the Click modular router to provide isolated, programmable middlebox processing. Its principal contributions were a small runtime footprint, approximately 30-millisecond instantiation, and high-throughput networking achieved through polling, batching, memory-grant reuse, netmap-based I/O, and a VALE software switch. The evaluation demonstrated support for hundreds of virtual machines in a server and aggregate 10-Gb/s-class throughput with up to 128 active instances. (conferences.sigcomm.org)
Evidence of subsequent research impact includes a substantially expanded follow-on paper, ClickOS and the Art of Network Function Virtualization, which further evaluated the platform and implemented middleboxes such as firewalls, carrier-grade NAT, and load balancers. (usenix.org) Later work used ClickOS as an NFV platform for studying management requirements and as a reference dataplane in comparative performance benchmarking against SoftNIC. Those studies identified practical issues involving management operations, small-packet processing, NUMA placement, and the platform’s lack of SMP support. (dl.ifip.org) NFV surveys also listed ClickOS among early NFV implementations and research projects. (arxiv.org)