Contra: A programmable system for performance-aware routing

Kuo Feng Hsu, Ryan Beckett, Ang Chen, Jennifer Rexford, Praveen Tammana, David Walker

Research output: Chapter in Book/Report/Conference proceedingConference contribution

71 Scopus citations

Abstract

We present Contra, a system for performance-aware routing that can adapt to traffic changes at hardware speeds. While point solutions exist for a fixed topology (e.g., a Fattree) with a fixed routing policy (e.g., use least utilized paths), Contra can operate seamlessly over any network topology and a wide variety of sophisticated routing policies. Users of Contra write network-wide policies that rank network paths given their current performance. A compiler then analyzes such policies in conjunction with the network topology and decomposes them into switch-local P4 programs, which collectively implement a new, specialized distance-vector protocol. This protocol generates compact probes that traverse the network, gathering path metrics to optimize for the user policy dynamically. Switches respond to changing network conditions by routing flowlets along the best policy-compliant paths. Our experiments show that Contra scales to large networks, and that in terms of flow completion times, it is competitive with hand-crafted systems that have been customized for specific topologies and policies.

Original languageEnglish (US)
Title of host publicationProceedings of the 17th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2020
PublisherUSENIX Association
Pages701-721
Number of pages21
ISBN (Electronic)9781939133137
StatePublished - 2020
Event17th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2020 - Santa Clara, United States
Duration: Feb 25 2020Feb 27 2020

Publication series

NameProceedings of the 17th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2020

Conference

Conference17th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2020
Country/TerritoryUnited States
CitySanta Clara
Period2/25/202/27/20

All Science Journal Classification (ASJC) codes

  • Computer Networks and Communications
  • Control and Systems Engineering

Fingerprint

Dive into the research topics of 'Contra: A programmable system for performance-aware routing'. Together they form a unique fingerprint.

Cite this