About
Snowcap is a prototype implementation of the SIGCOMM'21 paper Snowcap: Synthesizing Network-Wide Configuration Updates by Tibor Schneider, Rüdiger Birkner, and Laurent Vanbever from the Networked Systems Group at ETH Zürich.
-
ABB Research Award 2021
Tibor Schneider has received the ABB Research Award 2021 from ETH Zürich for his master thesis on Snowcap.
Abstract
Large-scale reconfiguration campaigns tend to be nerve-racking for network operators as they can lead to significant network downtimes, decreased performance, and policy violations. Unfortunately, existing reconfiguration frameworks often fall short in practice as they either only support a small set of reconfiguration scenarios or simply do not scale.
We address these problems with Snowcap, the first network reconfiguration framework which can synthesize configuration updates that comply with arbitrary hard and soft specifications, and involve arbitrary routing protocols. Our key contribution is an efficient search procedure which leverages counter-examples to efficiently navigate the space of configuration updates. Given a reconfiguration ordering which violates the desired specifications, our algorithm automatically identifies the problematic commands so that it can avoid this particular order in the next iteration.
We fully implemented Snowcap and extensively evaluated its scalability and effectiveness on real-world topologies and typical, large-scale reconfiguration scenarios. Even for large topologies, Snowcap finds a valid reconfiguration ordering with minimal side-effects (i.e., traffic shifts) within a few seconds at most.
SIGCOMM'21 Talk
Short Version
Long Version
Setup and Usage
Snowcap is written in Rust, and can be used as an executable, or as a library. To install the rust toolchain, follow the instructions on installing rustup. Then, clone and build the project:
git clone git@github.com:nsg-ethz/snowcap.git
cd snowcap
cargo build --release
Then, you can run snowcap with:
cargo run --release -- --help
Citation
@inproceedings{schneider2021snowcap,
title={{Snowcap: Synthesizing Network-Wide Configuration Updates}},
author={Schneider, Tibor and Birkner, Rüdiger and Vanbever, Laurent},
booktitle={Proceedings of the 2021 ACM SIGCOMM 2021 Conference},
year={2021},
address={New York, NY, USA},
isbn={9781450383837},
publisher={Association for Computing Machinery},
doi={10.1145/3452296.3472915},
url={https://doi.org/10.1145/3452296.3472915},
pages={33–49},
numpages={17},
keywords={migration, network analysis, configuration},
location={Virtual Event, USA},
series={SIGCOMM '21}
}
ACM Artifact Badges
![]() |
![]() |
![]() |