skip to main content
10.1145/2413176.2413206acmconferencesArticle/Chapter ViewAbstractPublication PagesconextConference Proceedingsconference-collections
research-article

Reproducible network experiments using container-based emulation

Published: 10 December 2012 Publication History

Abstract

In an ideal world, all research papers would be runnable: simply click to replicate all results, using the same setup as the authors. One approach to enable runnable network systems papers is Container-Based Emulation (CBE), where an environment of virtual hosts, switches, and links runs on a modern multicore server, using real application and kernel code with software-emulated network elements. CBE combines many of the best features of software simulators and hardware testbeds, but its performance fidelity is unproven.
In this paper, we put CBE to the test, using our prototype, Mininet-HiFi, to reproduce key results from published network experiments such as DCTCP, Hedera, and router buffer sizing. We report lessons learned from a graduate networking class at Stanford, where 37 students used our platform to replicate 18 published results of their own choosing. Our experiences suggest that CBE makes research results easier to reproduce and build upon.

References

[1]
D. E. Knuth. Literate Programming. The Computer Journal {Online}, 27:97--111, 1984.
[2]
J. Claerbout. Electronic documents give reproducible research a new meaning. Proc. 62nd Ann. Int. Meeting of the Soc. of Exploration Geophysics, pages 601--604, 1992.
[3]
J. B. Buckheit and D. L. Donoho. Wavelab and reproducible research. Time, 474:55--81, 1995.
[4]
P. Vandewalle, J. Kovacevic, and M. Vetterli. Reproducible research. Computing in Science Engineering, pages 5--7, 2008.
[5]
Amazon Elastic Compute Cloud. http://aws.amazon.com.
[6]
The network simulator - ns-2. http://nsnam.isi.edu/nsnam/.
[7]
The ns-3 network simulator. http://www.nsnam.org/.
[8]
OPNET modeler. http://www.opnet.com/solutions/network_rd/modeler.html.
[9]
Global Environment for Network Innovations. http://www.geni.net/.
[10]
B. Chun, D. Culler, T. Roscoe, A. Bavier, L. Peterson, M. Wawrzoniak, and M. Bowman. Planetlab: an overlay testbed for broad-coverage services. SIGCOMM Computer Communication Review, 33(3):3--12, 2003.
[11]
J. DeHart, F. Kuhns, J. Parwatikar, J. Turner, C. Wiseman, and K. Wong. The open network laboratory. In SIGCSE '06 Technical Symposium on Computer Science Education, pages 107--111. ACM, 2006.
[12]
Emulab - network emulation testbed. http://emulab.net/.
[13]
M. Al-Fares, S. Radhakrishnan, B. Raghavan, N. Huang, and A. Vahdat. Hedera: Dynamic flow scheduling for data center networks. In NSDI '10. USENIX, 2010.
[14]
M. Alizadeh, A. Greenberg, D. A. Maltz, J. Padhye, P. Patel, B. Prabhakar, S. Sengupta, and M. Sridharan. Data Center TCP (DCTCP). In SIGCOMM '10, pages 63--74. ACM, 2010.
[15]
N. Beheshti, Y. Ganjali, R. Rajaduray, D. Blumenthal, and N. McKeown. Buffer sizing in all-optical packet switches. In Optical Fiber Communication Conference. Optical Society of America, 2006.
[16]
D. Gupta, K. V. Vishwanath, and A. Vahdat. DieCast: Testing distributed systems with an accurate scale model. In NSDI '08, pages 407--421. USENIX, 2008.
[17]
Open vSwitch: An open virtual switch. http://openvswitch.org/.
[18]
M. Hibler, R. Ricci, L. Stoller, J. Duerig, S. Guruprasad, T. Stack, K. Webb, and J. Lepreau. Large-scale virtualization in the Emulab network testbed. In USENIX '08 Annual Technical Conference, pages 113--128, Berkeley, CA, USA, 2008. USENIX.
[19]
M. Pizzonia and M. Rimondini. Netkit: easy emulation of complex networks on inexpensive hardware. In International Conference on Testbeds and research infrastructures for the development of networks & communities, TridentCom '08, pages 7:1--7:10, Brussels, Belgium, 2008. ICST.
[20]
S. Bhatia, M. Motiwala, W. Muhlbauer, Y. Mundada, V. Valancius, A. Bavier, N. Feamster, L. Peterson, and J. Rexford. Trellis: a platform for building flexible, fast virtual networks on commodity hardware. In CoNEXT '08, pages 72:1--72:6. ACM, 2008.
[21]
J. Ahrenholz, C. Danilov, T. Henderson, and J. Kim. CORE: A real-time network emulator. In Military Communications Conference, MILCOM '08, pages 1 --7. IEEE, 2008.
[22]
B. Lantz, B. Heller, and N. McKeown. A network in a laptop: rapid prototyping for software-defined networks. In HotNets '10, pages 19:1--19:6. ACM, 2010.
[23]
S. Soltesz, H. Pötzl, M. Fiuczynski, A. Bavier, and L. Peterson. Container-based operating system virtualization: a scalable, high-performance alternative to hypervisors. ACM SIGOPS Operating Systems Review, 41(3):275--287, 2007.
[24]
M. Zec and M. Mikuc. Operating system support for integrated network emulation in IMUNES. In Workshop on Operating System and Architectural Support for the on demand IT InfraStructure (OASIS), 2004.
[25]
cgroups. http://www.kernel.org/doc/Documentation/cgroups/cgroups.txt.
[26]
P. Turner, B. B. Rao, and N. Rao. CPU bandwidth control for CFS. In Linux Symposium '10, pages 245--254, 2010.
[27]
Handigol, N., Heller, B., Jeyakumar, V., Lantz, B., and McKeown, N. CSTR 2012-02 Mininet performance fidelity benchmarks. http://hci.stanford.edu/cstr/reports/2012-02.pdf.
[28]
Linux Trace Toolkit - next generation. http://lttng.org/.
[29]
D. Gupta, K. Yocum, M. McNett, A. Snoeren, A. Vahdat, and G. Voelker. To infinity and beyond: time warped network emulation. In SOSP '05, pages 1--2. ACM, 2005.
[30]
lxc linux containers. http://lxc.sf.net.
[31]
K. Ramakrishnan and S. Floyd. A proposal to add explicit congestion notification (ECN) to IP. Technical report, RFC 2481, January 1999.
[32]
DCTCP patches. http://www.stanford.edu/"alizade/Site/DCTCP.html.
[33]
D. Thaler and C. Hopps. Multipath issues in unicast and multicast next-hop selection. Technical report, RFC 2991, November 2000.
[34]
Ripcord-Lite for POX: A simple network controller for OpenFlow-based data centers. https://github.com/brandonheller/riplpox.
[35]
G. Appenzeller, I. Keslassy, and N. McKeown. Sizing router buffers. In SIGCOMM '04, pages 281--292. ACM, 2004.
[36]
J. Lockwood, N. McKeown, G. Watson, G. Gibb, P. Hartke, J. Naous, R. Raghuraman, and J. Luo. NetFPGA -- an open platform for gigabit-rate network switching and routing. In Microelectronic Systems Education, MSE '07, pages 160--161. IEEE, 2007.
[37]
K. Nichols and V. Jacobson. Controlling queue delay. Communications of the ACM, 55(7):42--50, 2012.
[38]
M. Alizadeh, A. Kabbani, T. Edsall, B. Prabhakar, A. Vahdat, and M. Yasuda. Less is more: Trading a little bandwidth for ultra-low latency in the data center. In NSDI '12. USENIX, 2012.
[39]
C. Raiciu, C. Paasch, S. Barre, A. Ford, M. Honda, F. Duchene, O. Bonaventure, and M. Handley. How hard can it be? designing and implementing a deployable multipath TCP. In NSDI '12, pages 29--29. USENIX, 2012.
[40]
P. Prakash, A. Dixit, Y. Hu, and R. Kompella. The TCP outcast problem: Exposing unfairness in data center networks. In NSDI '12. USENIX, 2012.
[41]
A. Singla, C.-Y. Hong, L. Popa, and P. B. Godfrey. Jellyfish: Networking data centers randomly. In NSDI '12. USENIX, 2012.
[42]
N. Dukkipati, T. Refice, Y. Cheng, J. Chu, T. Herbert, A. Agarwal, A. Jain, and N. Sutin. An argument for increasing TCP's initial congestion window. SIGCOMM Computer Communication Review, 40(3):27--33, 2010.
[43]
V. Vasudevan, A. Phanishayee, H. Shah, E. Krevat, D. Andersen, G. Ganger, G. Gibson, and B. Mueller. Safe and effective fine-grained TCP retransmissions for datacenter communication. SIGCOMM Computer Communication Review, 39(4):303--314, 2009.
[44]
C. Guo, H. Wu, K. Tan, L. Shi, Y. Zhang, and S. Lu. DCell: a scalable and fault-tolerant network structure for data centers. In SIGCOMM '08. ACM, 2008.
[45]
N. Dukkipati and N. McKeown. Why flow-completion time is the right metric for congestion control. SIGCOMM Computer Communication Review, 36(1):59--62, 2006.
[46]
S. Savage, N. Cardwell, D. Wetherall, and T. Anderson. TCP congestion control with a misbehaving receiver. SIGCOMM Computer Communication Review, 29(5):71--78, 1999.
[47]
S. Floyd and V. Jacobson. Random Early Detection gateways for congestion avoidance. IEEE/ACM Transactions on Networking, 1(4):397--413, 1993.
[48]
C. Raiciu, S. Barre, C. Pluntke, A. Greenhalgh, D. Wischik, and M. Handley. Improving datacenter performance and robustness with multipath TCP. In SIGCOMM Computer Communication Review. ACM, 2011.
[49]
The OpenFlow switch. http://www.openflow.org.
[50]
M. Carson and D. Santay. NIST Net -- a Linux-based network emulation tool. SIGCOMM Computer Communication Review, 33(3):111--126, 2003.
[51]
M. Carbone and L. Rizzo. Dummynet revisited. SIGCOMM Computer Communication Review, 40(2):12--20, 2010.
[52]
Linux network emulation module. http://www.linuxfoundation.org/collaborate/workgroups/networking/netem.
[53]
P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield. Xen and the art of virtualization. In SOSP '03, pages 164--177. ACM, 2003.
[54]
A. Vahdat, K. Yocum, K. Walsh, P. Mahadevan, D. Kostić, J. Chase, and D. Becker. Scalability and accuracy in a large-scale network emulator. In OSDI '02, pages 271--284. USENIX, 2002.
[55]
OpenFlow Virtual Machine Simulation. http://www.openflow.org/wk/index.php/OpenFlowVMS.
[56]
E. Weingärtner, F. Schmidt, H. Vom Lehn, T. Heer, and K. Wehrle. Slicetime: A platform for scalable and accurate network emulation. In NSDI '11, volume 3. ACM, 2011.
[57]
Z. Tan, K. Asanovic, and D. Patterson. An FPGA-based simulator for datacenter networks. In Exascale Evaluation and Research Techniques Workshop (EXERT '10), at ASPLOS '10. ACM, 2010.
[58]
S. Tripathi, N. Droux, K. Belgaied, and S. Khare. Crossbow virtual wire: network in a box. In LISA '09, pages 4--4. USENIX, 2009.

Cited By

View all

Index Terms

  1. Reproducible network experiments using container-based emulation

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    CoNEXT '12: Proceedings of the 8th international conference on Emerging networking experiments and technologies
    December 2012
    384 pages
    ISBN:9781450317757
    DOI:10.1145/2413176
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 10 December 2012

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. container-based emulation
    2. reproducible research

    Qualifiers

    • Research-article

    Conference

    CoNEXT '12
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 198 of 789 submissions, 25%

    Upcoming Conference

    CoNEXT '24

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)105
    • Downloads (Last 6 weeks)12
    Reflects downloads up to 06 Nov 2024

    Other Metrics

    Citations

    Cited By

    View all

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media