SplayNet: Distributed User-Space Topology Emulation

  • Valerio Schiavoni
  • Etienne Rivière
  • Pascal Felber
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8275)


Network emulation allows researchers to test distributed applications on diverse topologies with fine control over key properties such as delays, bandwidth, congestion, or packet loss. Current approaches to network emulation require using dedicated machines and low-level operating system support. They are generally limited to one user deploying a single topology on a given set of nodes, and they require complex management. These constraints restrict the scope and impair the uptake of network emulation by designers of distributed applications. We propose a set of novel techniques for network emulation that operate only in user-space without specific operating system support. Multiple users can simultaneously deploy several topologies on shared physical nodes with minimal setup complexity. A modular network model allows emulating complex topologies, including congestion at inner routers and links, without any centralized orchestration nor dedicated machine. We implement our user-space network emulation mechanisms in SplayNet, as an extension of an open-source distributed testbed. Our evaluation with a representative set of applications and topologies shows that SplayNet provides accuracy comparable to that of low-level systems based on dedicated machines, while offering better scalability and ease of use.


Topology emulation large-scale networks testbeds 


  1. 1.
    Avvenuti, M., Vecchio, A.: Application-level network emulation: the EmuSocket toolkit. Journal of Network and Computer Applications 29(4) (2006)Google Scholar
  2. 2.
    Barabasi, A.-L., Albert, R.: Emergence of scaling in random networks. Science 286 (1999)Google Scholar
  3. 3.
    Barham, P., Dragovic, B., Fraser, K., Hand, S., Harris, T., Ho, A., Neugebauer, R., Pratt, I., Warfield, A.: Xen and the art of virtualization. In: SOSP (2003)Google Scholar
  4. 4.
    Bertsekas, D., Gallager, R.: Data Networks. Prentice-Hall (1992)Google Scholar
  5. 5.
    Biersack, E.W., Rodriguez, P., Felber, P.: Performance analysis of peer-to-peer networks for file distribution. In: Solé-Pareta, J., Smirnov, M., Van Mieghem, P., Domingo-Pascual, J., Monteiro, E., Reichl, P., Stiller, B., Gibbens, R.J. (eds.) QofIS 2004. LNCS, vol. 3266, pp. 1–10. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  6. 6.
    Carbone, M., Rizzo, L.: Dummynet revisited. SIGCOMM Comput. Commun. Rev. 40(2), 12–20 (2010)CrossRefGoogle Scholar
  7. 7.
    Carson, M., Santay, D.: NIST Net-a linux-based network emulation tool. SIGCOMM Comput. Commun. Rev. 33(3), 111–126 (2003)CrossRefGoogle Scholar
  8. 8.
    Castro, M., Druschel, P., Kermarrec, A.-M., Nandi, A., Rowstron, A., Singh, A.: Splitstream: high-bandwidth multicast in cooperative environments. In: SOSP (2003)Google Scholar
  9. 9.
    Chiu, D.M.: Some observations on fairness of bandwidth sharing. In: ISCC (2000)Google Scholar
  10. 10.
    Coffman Jr, E., Garey, M., Johnson, D.: Approximation algorithms for bin packing: A survey. In: Approximation algorithms for NP-hard problems, pp. 46–93. PWS Publishing Co. (1996)Google Scholar
  11. 11.
    Costa, P., Donnelly, A., Rowstron, A., O’Shea, G.: Camdoop: exploiting in-network aggregation for big data applications. In: NSDI (2012)Google Scholar
  12. 12.
    Eriksen, M. Trickle: A userland bandwidth shaper for unix-like systems. USENIX ATC (2005)Google Scholar
  13. 13.
    Etsion, Y., Tsafrir, D., Feitelson, D.: Effects of clock resolution on the scheduling of interactive and soft real-time processes. In: SIGMETRICS (2003)Google Scholar
  14. 14.
    Fall, K.: Network emulation in the Vint/NS simulator. In: ISCC (1999)Google Scholar
  15. 15.
    Gkantsidis, C., Rodriguez, P.: Network coding for large scale content distribution. In: INFOCOM (2005)Google Scholar
  16. 16.
    Hemminger, S.: Network emulation with NetEm. In: Linux Conference (2005)Google Scholar
  17. 17.
    Heusse, M., Merritt, S.A., Brown, T.X., Duda, A.: Two-way tcp connections: old problem, new insight. SIGCOMM Comput. Commun. Rev. 41(2), 5–15 (2011)CrossRefGoogle Scholar
  18. 18.
    Hibler, M., Ricci, R., Stoller, L., Duerig, J., Guruprasad, S., Stack, T., Webb, K., Lepreau, J.: Large-scale virtualization in the emulab network testbed. USENIX ATC (2008)Google Scholar
  19. 19.
    Ingham, D.B., Parrington, G.D.: Delayline: a wide-area network emulation tool. Comput. Syst. 7(3), 313–332 (1994)Google Scholar
  20. 20.
    Kelly, F.P.: Charging and rate control for elastic traffic. European Trans. on Telecommunications 8, 33–37 (1997)CrossRefGoogle Scholar
  21. 21.
    Kodama, Y., Kudoh, T., Takano, R., Sato, H., Tatebe, O., Sekiguchi, S.: GNET-1: Gigabit ethernet network testbed. In: CLUSTER (2004)Google Scholar
  22. 22.
    Kojo, M., Gurtov, A., Manner, J., Sarolahti, P., Alanko, T., Raatikainen, K.: Seawind: a wireless network emulator. In: MMB (2001)Google Scholar
  23. 23.
    Kristiansen, S., Plagemann, T., Goebel, V.: Towards scalable and realistic node models for network simulators. In: SIGCOMM (2011)Google Scholar
  24. 24.
    Lantz, B., Heller, B., McKeown, N.: A network in a laptop: rapid prototyping for software-defined networks. In: HotNets (2010)Google Scholar
  25. 25.
    Leonini, L., Rivière, E., Felber, P.: SPLAY: Distributed systems evaluation made simple. In: NSDI (2009)Google Scholar
  26. 26.
    Lin, S., Pan, A., Zhang, Z., Guo, R., Guo, Z.: WiDS: an integrated toolkit for distributed system development. In: HotOS (2005)Google Scholar
  27. 27.
    Massoulié, L., Roberts, J.: Bandwidth sharing: objectives and algorithms. IEEE/ACM Trans. Netw. 10(3), 320–328 (2002)CrossRefGoogle Scholar
  28. 28.
    Nussbaum, L., Richard, O.: Lightweight emulation to study peer-to-peer systems. Concur. and Comput.: Practice and Experience 20(6), 735–749 (2008)CrossRefGoogle Scholar
  29. 29.
    Pizzonia, M., Rimondini, M.: Netkit: easy emulation of complex networks on inexpensive hardware. In: TridentCom (2008)Google Scholar
  30. 30.
    Puljiz, Z., Penco, R., Mikuc, M.: Performance analysis of a decentralized network simulator based on IMUNES. In: SPECTS (2008)Google Scholar
  31. 31.
    Raghavan, B., Vishwanath, K., Ramabhadran, S., Yocum, K., Snoeren, A.: Cloud control with distributed rate limiting. SIGCOMM Comput. Commun. Rev. 37, 337–348 (2007)CrossRefGoogle Scholar
  32. 32.
    Ricci, R., Alfeld, C., Lepreau, J.: A solver for the network testbed mapping problem. SIGCOMM Comput. Commun. Rev. 33(2), 65–81 (2003)CrossRefGoogle Scholar
  33. 33.
    Ricci, R., Duerig, J., Sanaga, P., Gebhardt, D., Hibler, M., Atkinson, K., Zhang, J., Kasera, S., Lepreau, J.: The Flexlab approach to realistic evaluation of networked systems. In: NSDI (2007)Google Scholar
  34. 34.
    Roverso, R., Al-Aggan, M., Naiem, A., Dahlstrom, A., El-Ansary, S., El-Beltagy, M., Haridi, S.: MyP2PWorld: Highly reproducible application-level emulation of P2P systems. In: SASOW (2008)Google Scholar
  35. 35.
    Stoica, I., Morris, R., Liben-Nowell, D., Karger, D.R., Kaashoek, M.F., Dabek, F., Balakrishnan, H.: A scalable peer-to-peer lookup protocol for internet applications. IEEE/ACM Trans. Netw. 11(1), 17–32 (2003)CrossRefGoogle Scholar
  36. 36.
    Tang, P., Tai, T.: Network traffic characterization using token bucket model. In: INFOCOM (2009)Google Scholar
  37. 37.
    Tazaki, H., Asaeda, H.: DNEmu: Design and implementation of distributed network emulation for smooth experimentation control. In: Korakis, T., Zink, M., Ott, M. (eds.) TridentCom 2012. LNICST, vol. 44, pp. 162–177. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  38. 38.
    Vahdat, A., Yocum, K., Walsh, K., Mahadevan, P., Kostic, D., Chase, J., Becker, D.: Scalability and accuracy in a large-scale network emulator. In: OSDI (2002)Google Scholar
  39. 39.
    Weingärtner, E., Schmidt, F., Lehn, H., Heer, T., Wehrle, K.: SliceTime: a platform for scalable and accurate network emulation. In: NSDI (2011)Google Scholar
  40. 40.
    White, B., Lepreau, J., Stoller, L., Ricci, R., Guruprasad, S., Newbold, M., Hibler, M., Barb, C., Joglekar, A.: An integrated experimental environment for distributed systems and networks. In: OSDI (2002)Google Scholar
  41. 41.
    Yin, Q., Roscoe, T.: VF2x: Fast, efficient virtual network mapping for real testbed workloads. In: Korakis, T., Zink, M., Ott, M. (eds.) TridentCom 2012. LNICST, vol. 44, pp. 271–286. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  42. 42.
    Zegura, E., Calvert, K., Bhattacharjee, S.: How to model an internetwork. In: INFOCOM (1996)Google Scholar
  43. 43.
    Zheng, P., Ni, L.: Empower: A network emulator for wireline and wireless networks. In: INFOCOM (2003)Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2013

Authors and Affiliations

  • Valerio Schiavoni
    • 1
  • Etienne Rivière
    • 1
  • Pascal Felber
    • 1
  1. 1.University of NeuchâtelSwitzerland

Personalised recommendations