  Network experiments are essential to network-related scientific research
(e.g., congestion control, QoS, network topology design, and traffic
engineering). However, (re)configuring various topologies on a real testbed is
expensive, time-consuming, and error-prone. In this paper, we propose
\emph{Software Defined Topology Testbed (SDT)}, a method for constructing a
user-defined network topology using a few commodity switches. SDT is low-cost,
deployment-friendly, and reconfigurable, which can run multiple sets of
experiments under different topologies by simply using different topology
configuration files at the controller we designed. We implement a prototype of
SDT and conduct numerous experiments. Evaluations show that SDT only introduces
at most 2\% extra overhead than full testbeds on multi-hop latency and is far
more efficient than software simulators (reducing the evaluation time by up to
2899x). SDT is more cost-effective and scalable than existing Topology
Projection (TP) solutions. Further experiments show that SDT can support
various network research experiments at a low cost on topics including but not
limited to topology design, congestion control, and traffic engineering.
