hide
Free keywords:
-
Abstract:
Planetary-scale network testbeds like PlanetLab and RON have become
indispensable for evaluating prototypes of distributed systems under realistic
Internet conditions. However, current testbeds lack the heterogeneity that
characterizes the commercial Internet. For example, most testbed nodes are
connected to well-provisioned research networks, whereas most Internet nodes
are in edge networks.
In this paper, we present the design, implementation, and evaluation of
SatelliteLab, a testbed that includes nodes from a diverse set of Internet edge
networks. SatelliteLab has a two-tier architecture, in which well-provisioned
nodes called {\it planets} form the core, and lightweight nodes called {\it
satellites} connect to the planets from the periphery. The application code of
an experiment runs on the planets, whereas
the satellites only forward network traffic. Thus, the traffic is subjected to
the network conditions of the satellites, which greatly improves the testbed's
network heterogeneity. The separation of code execution and traffic forwarding
enables satellites to remain lightweight, which lowers the barrier to entry for
Internet edge nodes.
Our prototype of SatelliteLab uses PlanetLab nodes as planets and a set of 32
volunteered satellites with diverse network characteristics. These satellites
consist of desktops, laptops, and handhelds connected to the Internet via
cable, DSL, ISDN, Wi-Fi, Bluetooth, and cellular links. We evaluate
SatelliteLab's design, and we demonstrate the benefits of evaluating
applications on SatelliteLab.