Engineering large-scale data center applications built from
thousands of commodity nodes requires both an underlying network that supports
a wide variety of traffic demands, and low latency at microsecond timescales.
Many ideas for adding innovative functionality to networks, especially active
queue management strategies, require either modifying packets or performing
alternative queuing to packets in-flight on the data plane. However,
configuring packet queuing, marking, and dropping is challenging, since
buffering in commercial switches and routers is not programmable. In this work,
we present NetBump, a platform for experimenting with, evaluating, and
deploying a wide variety of active queue management strategies to network data
planes with minimal intrusiveness and at low latency. NetBump leaves existing
switches and endhosts unmodified by acting as a ``bump on the wire,''
examining, marking, and forwarding packets at line rate in tens of microseconds
to implement a variety of virtual active queuing disciplines and congestion
control mechanisms. We describe the design of NetBump, and use it to implement
several network functions and congestion control protocols including DCTCP and
802.1Qau quantized congestion notification.
Pre-2018 CSE ID: CS2012-0976