Reproducing Network Conditions for Tests of Large-Scale Distributed Systems

Testing distributed systems is difficult, error-prone and time-consuming. Especially scalability tests are hard to perform because of the large number of connected devices. The heterogeneity of these devices (PCs, smart phones, tablets) and their various network access technologies (DSL, cable, WiFi, 3G/4G) even worsen the situation. We argue that the reproduction of network conditions is necessary to provide an adequate test bed for experiments with distributed systems. We therefore propose an architecture that allows performing automated tests of large scale distributed systems including the emulation of network and application behavior.