NetComplete: Practical Network-Wide Configuration Synthesis with Autocompletion

NetComplete automatically autocompletes configurations for routers running multiple interacting protocols, including policy-based protocols (BGP) and shortest-path protocols (OSPF), and it also supports static routes. NetComplete takes as input configurations with "holes" that identify the parameters to be completed and "autocompletes" these with concrete values. NetComplete allows the operators to precisely control how configurations should be changed while scaling to support large networks.

NetComplete code is released at https://github.com/nsg-ethz/synet-plus.

Why Autocompletion?

Autocompletion allows the operators to precisely control how configurations should be changed thus synthesizing human-like configurations. In addition, and it allows the synthesizer to leverage the existing configurations to gain performance by using the configuration sketch to reduce the search space.

Which Protocols does NetComplete Support?

NetComplete currently supports BGP, OSPF, and static routes. Many of the techniques used in NetComplete are applicable for other routing protocols. For instance, the counter-example guided synthesis (CEGIS) algorithm used in NetComplete is also applicable to IS-IS routing protocol.

NetComplete: Practical Network-Wide Configuration Synthesis with Autocompletion, NSDI 2018. Rento, WA, USA. April, 2018.

by Ahmed El-Hassany, Petar Tsankov, Laurent Vanbever, Martin Vechev


NetComplete: Practical Network-Wide Configuration Synthesis with Autocompletion, NSDI 2018. Rento, WA, USA. April, 2018.

by Laurent Vanbever