Abstract
The design and development of a complex system requires an adequate methodology and efficient instrumental support in order to early detect and correct anomalies in the functional and non-functional properties of the tested protocols. Among the various tools used to provide experimental support for such developments, network emulation relies on real-time production of impairments on real traffic according to a communication model, either realistically or not. This paper aims at simply presenting to newcomers in network emulation (students, engineers, etc.) basic principles and practices illustrated with a few commonly used tools. The motivation behind is to fill a gap in terms of introductory and pragmatic papers in this domain. The study particularly considers centralized approaches, allowing cheap and easy implementation in the context of research labs or industrial developments. In addition, an architectural model for emulation systems is proposed, defining three complementary levels, namely hardware, impairment, and model levels. With the help of this architectural framework, various existing tools are situated and described. Various approaches for modeling the emulation actions are studied, such as impairment-based scenarios and virtual architectures, real-time discrete simulation, and trace-based systems. Those modeling approaches are described and compared in terms of services, and we study their ability to respond to various designer needs to assess when emulation is needed.
Similar content being viewed by others
References
CRAWDAD (2011) Community resource for archiving wireless data At Dartmouth. http://crawdad.cs.dartmouth.edu/
Dummynet (1997) http://info.iet.unipi.it/~luigi/dummynet/
Emulab (2001) http://www.emulab.net/
GNS3 (2008) Graphical network simulator. http://www.gns3.net
IMUNES (2003) http://imunes.tel.fer.hr/imunes/
IREEL (2006) http://ireel.npc.nicta.com.au/
KauNet (2006) http://www.kau.se/en/kaunet
Netem (2005) http://www.linuxfoundation.org/collaborate/workgroups/networking/netem”
Nistnet (2003) http://snad.ncsl.nist.gov/nistnet/
ns-2 user manual (2011) http://www.isi.edu/nsnam/ns/
One user manual (2001) http://irg.cs.ohiou.edu/one/manual.html
Orbit (2005) http://www.orbit-lab.org/
Planetlab (2003) http://www.planet-lab.org/
Opnet technologies (1991) http://www.opnet.com
Baumgartner F, Braun T, Kurt E, Weyland A (2003) Virtual routers: a tool for networking research and education. ACM SIGCOMM Comput Commun Rev 33(3):127–135
Carson M, Santay D (2003) NIST Net: a linux-based network emulation tool. ACM Comput Commun Rev 33(3):111–126
Conchon E, Pérennou T, Garcia J, Diaz M (2010) W-NINE: a two-stage emulation platform for mobile and wireless systems. EURASIP Journal on Wireless Communications and Networking 2010, Article 149075, 20 pp. See for details: http://www.hindawi.com/journals/wcn/2010/149075/cta/
Dairaine L, Jourjon G, Lochin E, Ardon S (2007) Ireel: remote experimentation with real protocols and applications over an emulated network. ACM SIGCSE Bull Inroads 39(2):92–96
Dawson S, Jahanian F (1995) Probing and fault injection of distributed protocols implementations. In: International conference on distributed computer systems
Ely D, Savage S, Wetherall D (2001) Alpine: a user-level infrastructure for network protocol development. In: USITS’01 Proceedings of the 3rd conference on USENIX symposium on internet technologies and systems
Kevin Fall (1999) Network emulation in the VINT/NS simulator. In: IEEE fourth symposium on computers and communications
Garcia J, Alfredsson S, Brunstrom A (2006) The impact of loss generation on emulation-based protocol evaluation. In: PDCN’06: proceedings of the 24th IASTED international conference on Parallel and distributed computing and networks. Anaheim, CA, USA
Garcia J, Conchon E, Pérennou T, Brunstrom A (2007) Kaunet: improving reproducibility for wireless and mobile research. In: MobiEval System evaluation for mobile platforms, workshop of mobisys 2007, San Juan, Puerto Rico, pp 21–26
Handley M, Floyd S, Pahdye J, Widmer J (2003) TCP-Friendly Rate Control (TFRC): protocol specification. Request For Comments 3448, IETF
Hemminger S (2005) Network emulation with netem. In: Australia’s national linux conference (LCA) Canberra, Australia
Herrscher D, Rothermel K (2002) A dynamic network scenario emulation tool. In: 11th International conference on computer communications and networks
Huang XW, Sharma R, Keshav S (1999) The ENTRAPID protocol development environment In: IEEE Infocom
Keller E, Yu M, Caesar M, Rexford J (2009) Virtually eliminating router bugs. In: ACM CoNext
Siracusa R, Ott M, Seskar I, Singh M (2005) Orbit testbed software architecture: supporting experiments as a service. In: IEEE Tridentcom 2005, Trento, Italy
Mills D (1992) Network time protocol (version 3) specification, implementation. Request For Comments 1305, IETF
Noble BD, Satyanarayanan M, Nguyen GT, Katz RH (1997) Trace-based mobile network emulation. In: ACM SIGCOMM Cannes, France
Peterson L, Culler D, Anderson T, Roscoe T (2002) A blueprint for introducing disruptive technology into the internet. In: 1st Workshop on hot topics in networks (HotNets-I) Princeton, New Jersey, USA
Ramachandran K, Kaul S, Mathur S, Gruteser M, Seskar I (2005) Towards large-scale mobile network emulation through spatial switching on a wireless grid. In: Workshop on experimental approaches to wireless network design and analysis, (E-Wind), ACM Sigcomm
Rizzo L (1997) Dummynet: a simple approach to the evaluation of network protocols. ACM Comput Commun Rev 27(1):31–41
Scott J, Hui P, Crowcroft J, Diot C (2006) Haggle: A networking architecture designed around mobile users. In: The third annual IFIP conference on wireless on-demand network systems and services (WONS 2006), Les Menuires, France
White B, Lepreau J, Stoller L, Ricci R, Guruprasad S, Newbold M, Hibler M, Barb C, Joglekar A (2002) An integrated experimental environment for distributed systems and networks. In: Fifth symposium on operating systems design and implementation, pp 255–270
Widmer J (2000) TFRC userspace prototype. http://aciri.org/tfrc/code/
Yu M, Yi Y, Rexford J, Chiang M (2008) Rethinking virtual network embedding: substrate support for path splitting and migration. ACM SIGCOMM Comput Commun Rev 38(2):17–29
Zec M, Mikuc M (2004) Operating system support for integrated network emulation in IMUNES. In: First workshop on operatings System and architectural support for the on demand IT infraStructure, Boston, USA
Zec M, Mikuc M (2004) Operating system support for integrated network emulation in imunes. In: 1st Workshop on operating system and architectural support for the on demand IT infraStructure/ASPLOS-XI, Boston, USA
Zheng P, Ni LM (2003) EMPOWER: a network emulator for wireline and wireless networks. In: IEEE Infocom San Francisco
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Lochin, E., Pérennou, T. & Dairaine, L. When should I use network emulation?. Ann. Telecommun. 67, 247–255 (2012). https://doi.org/10.1007/s12243-011-0268-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12243-011-0268-5