An Open Source Link Emulation Bridge
for Reproducible Networking Research
When recreating an outdoor deployment in the laboratory or re-evaluating other researchers' work, the same setup should lead to the same results. Unfortunately, it is not that easy to reproduce link conditions as most available emulators lack crucial features for reproducibility. Therefore, we developed Link 'em, an open source link emulation bridge.
Link 'em uses a Raspberry Pi 3 as its underlying hardware platform (get the image), to which an additional Realtek 8153 USB Ethernet dongle is connected (get the case). Both Ethernet interfaces are configured using brctl to form a layer-2 bridge. The desired link characteristics are then emulated on the new bridge interface using our extended netem version.
Link 'em caters to different needs when emulating real-world links. The NetEm trace extension uses a pcap trace in order to reproduce the link loss and delay packet-by-packet, while the seed extension allows the usage of NetEm's existing loss models with a fixed seed for the underlying Random Number Generator. A parameterization of those models that fits the observed characteristics of the pacp traces can be generated with the aid of the included model parameteriser. Additionally, more complex loss models can be implemented using our SAGE-based loss module API.
Further information may be found in our paper.
Link 'em is available as open source software under GPLv2 license. For download links, see below.
Bertram Schütz, Stefanie Thieme, Nils Aschenbruck, Leonhard Brüggemann, Alexander Ditt, Dominic Laniewski, Dennis Rieke
"Link 'em: An Open Source Link Emulation Bridge for Reproducible Networking Research"
Proc. of the International Conference on Networked Systems
NetSys, Munich, Germany, Mar. 18-21, 2019, [pdf coming soon, Poster]
- Raspberry Pi image
- (The source code and further information on how to use the image will be downloadable soon)