Network Emulation - School of Computer Science
Download
Report
Transcript Network Emulation - School of Computer Science
Network Emulation for the Study
and Validation of Traffic Models,
Congestion and Flow Control in
TCP/IP Networks
Cheryl Pope
Lecturer
Department of Computer Science
Faculty of Engineering, Computer
and Mathematical Sciences
The University of Adelaide
Validating Networks
• Motivations for evaluation environments
– adaptive applications (multimedia, streaming, mobile)
– validation of traffic models (traffic aggregation)
– protocol testing (TCP congestion/flow control)
– QoS support (flows, IntServe/DiffServe behaviours)
– distributed applications
• Current evaluation environments
– simulation (most common)
• Software based model of the underlying network.
– “live” testing (less common)
• Dedicated network resource or testing on the network to be used.
– emulation (even less common)
• Simulation which interacts with the network protocol stacks.
Faculty of Engineering, Computer and Mathematical Sciences,, University of Adelaide, 2000
2
Evaluation environments
• Simulation
– + high level of control
– + repeatable experiments
– - difficult to accurately capture all aspects of the network
• traffic models may be incorrect (Paxson-Floyd 95)
• interaction of protocols
• accuracy of protocol implementation
• Live Testing
– + very accurate model of the network
– + no conversion of simulated applications needed
– - low level of control (more difficult to create reproducible results)
– - difficult to introduce new protocol behaviour other than end-to-end
– - often just a “wire”
Faculty of Engineering, Computer and Mathematical Sciences,, University of Adelaide, 2000
3
Network Emulation
• Network emulation aims to combine the best properties of both
simulation and “live” testing
• Network functions are intercepted and delays, loss, etc. simulated
– kernel network stack
– socket API
Video
Web
Network
send/recv
Emulation hooks
TCP/IP
stack
(kernel)
To other “host”
• Provides a controlled environment, reproducible results, transparency to
applications
Faculty of Engineering, Computer and Mathematical Sciences,, University of Adelaide, 2000
4
Existing Work in TCP/IP Network Emulation
• Kernel based emulators
– NIST Net (www.antd.nist.gov/itg/nistnet/ )
• Linux based kernel module
• Supports input from applications or packet traces
– Dummynet (www.iet.unipi.it/~luigi/ip_dummynet/ )
• Free BSD based
– NS2 emulator (www.isi.edu/nsnam/ns/ns-emulation.html)
• No published work since Oct 98.
• BSD based
• No interpretation of packet headers. (“opaque mode” only)
– Entrapid (www.cs.cornell.edu/skeshav/papers/simphony.ps)
• Supports virtual kernels (currently Free BSD)
Faculty of Engineering, Computer and Mathematical Sciences,, University of Adelaide, 2000
5
Existing Work in TCP/IP Network Emulation
– Lancaster University emulator
(www.comps.lancs.ac.uk/computing/research/mpg/reports_1995.html)
• Aimed at emulation of mobile networks with high delay
• Central emulation process (<16 nodes)
• Unix (Sun)
• Non-kernel based
– Delay Line - University of Newcastle
(ajuna.ncl.ac.uk/group/papers/p040.ps)
• interception of socket calls
• must recompile applications to use emulator
Faculty of Engineering, Computer and Mathematical Sciences,, University of Adelaide, 2000
6
Goals of the Emulation Environment
• Both IPv6 and IPv4 support
– IPv6 flows for QoS behaviours
– RSVP
– backwards compatability for IPv4 applications and existing network traffic
traces
– multicasting support
• No expertise beyond that required by simulators
– No “kernel hacking” for users
– simple insertion of user defined behaviours without recompilation of main
OS kernel
– dynamic reconfiguration
– visualisation of emulation
• Scalability
– allow for interconnectivity between emulators to build larger emulations
Faculty of Engineering, Computer and Mathematical Sciences,, University of Adelaide, 2000
7