Tiny packet programs for low-latency network control and monitoring

  • Authors:
  • Vimalkumar Jeyakumar;Mohammad Alizadeh;Changhoon Kim;David Mazières

  • Affiliations:
  • Stanford University, Stanford, CA;Insieme Networks, San Jose, CA;Windows Azure, Redmond, WA;Stanford University, Stanford, CA

  • Venue:
  • Proceedings of the Twelfth ACM Workshop on Hot Topics in Networks
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Networking researchers and practitioners strive for a greater degree of control and programmability to rapidly innovate in production networks. While this desire enjoys commercial success in the control plane through efforts such as OpenFlow, the dataplane has eluded such programmability. In this paper, we show how end-hosts can coordinate with the network to implement a wide-range of network tasks, by embedding tiny programs into packets that execute directly in the dataplane. Our key contribution is a programmatic interface between end-hosts and the switch ASICs that does not sacrifice raw performance. This interface allows network tasks to be refactored into two components: (a) a simple program that executes on the ASIC, and (b) an expressive task distributed across end-hosts. We demonstrate the promise of this approach by implementing three tasks using read/write programs: (i) detecting short-lived congestion events in high speed networks, (ii) a rate-based congestion control algorithm, and (iii) a forwarding plane network debugger.