![Page 1: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/1.jpg)
Scalable Network Path Emulation
Shilpi Agarwal, Joel Sommers, Paul BarfordUniversity of Wisconsin-Madison
http://wail.cs.wisc.edu
![Page 2: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/2.jpg)
simulationlaboratory emulation
in situ
strengths accessibilityexperimental
control; system realism
realism(“it is what it is”)
challenges realism (everything)
realism of traffic, topology, and
link/path conditions
experimental control
examples ns-2, Opnet, GloMoSim
WAIL, DETER, Emulab Planetlab, RON
Internet testbeds
2
![Page 3: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/3.jpg)
network emulation packet delays, bandwidths, loss characteristics,
assuming some topologyModelNet
packet-oriented latency, loss,
duplication, reordering
path emulationDummynet, NIST net
link emulation bit-oriented propagation delay and
errors
Adtech SX-14A spool of optical fiber (!)
A taxonomy of emulation systems
3
![Page 4: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/4.jpg)
Emulation challenges for today’s testbeds
• Scale to many physical routers, links, and end hosts
• Implies need for flexibility in configuration options
• Scale to Gigabit+ links
• Cost effectiveness (free software, commodity hardware)
• No existing software-based link or path emulator satisfies all these requirements
4
![Page 5: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/5.jpg)
WAIL: an example of a modern testbed
> 50 routers (hundreds of interfaces)> 200 workstations
5
![Page 6: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/6.jpg)
NetPath: a scalable network path emulator
• Foundations and design principles of NetPath
• Modify Click modular router — run on commodity hardware
• Eliminate unnecessary packet processing
• Push functionality as close to hardware as possible
• Exploit hardware capabilities where possible
• Support a variety of topological and network configurations
6
![Page 7: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/7.jpg)
NetPath with a single emulated path
poll device receive and timestamp packets
queue buffer packets in system memory
delay delay packets for specified time; perform reordering and errors
addressing decide how/where packet should be forwarded
to device transmit packet in egress interface
7
![Page 8: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/8.jpg)
NetPath with multiple emulated paths
8
queue
delay
addressing
poll device
todevice
classify
scheduler
queue
delay
addressing
. . .
. . .
Classifying and scheduling are only
additional overheads.
![Page 9: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/9.jpg)
Exploiting system memory for high performance
9
• Basic Click elements do not enable full use of memory resources
• Packets are dropped as a result
• NetPath provides new Click elements to take advantage of system resources
• Use available system RAM — BigQueue
• Use disks as backing store for long delays — DiskQueue
• Use a pair of disks to hide disk access latency — ODQM (opportunistic disk queue management)
![Page 10: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/10.jpg)
Options for topological configuration
• Direct interposition
• Layer 2 — virtual interposition
• Additional Click elements to optimize VLAN tag rewriting
• Layer 3 — interposition via IP routing
• Leverage existing Click configuration tools
10
![Page 11: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/11.jpg)
Results overview
• Accuracy & precision of NetPath over a range of operating conditions is close to a hardware-based platform
• NetPath significantly outperforms other emulation systems
• NetPath modifications to Click significantly improve performance over out-of-the-box Click elements
• NetPath can accurately & precisely support simultaneous emulation over several paths
11
![Page 12: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/12.jpg)
Comparison with a hardware-based reference
offered load (kpps)
NetPath Adtech SX-14
50 10.03 (0.01) 9.99 (0.00)
100 10.03 (0.01) 9.99 (0.00)
150 10.04 (0.01) 9.99 (0.00)
200 10.05 (0.01) 9.99 (0.00)
250 10.06 (0.01) 9.99 (0.00)
300 10.09 (0.03) 9.99 (0.00)12
![Page 13: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/13.jpg)
Using available system RAM for packet buffers
13
Using available system RAM enables longer delays at higher packet rates.
50 100 150 200 250 300
020
0040
0060
0080
00
offered packet rate (Kpps)
max
imum
pro
paga
tion
dela
y (m
illise
cond
s)
BigQueueQueue
![Page 14: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/14.jpg)
Accuracy of probabilistic delay emulation
14
NetPath can provide high accuracy, buthead-of-line blocking can be a problem.
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
10 20 30 40 50
0.0
0.2
0.4
0.6
0.8
1.0
delay (milliseconds)
cum
ulat
ive fr
actio
n
● generated delaymeasured delay (1 Kpps)measured delay (10 Kpps)
● ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●
10 20 30 40 500.
00.
20.
40.
60.
81.
0delay (milliseconds)
cum
ulat
ive fr
actio
n
● generated delaymeasured delay (1 Kpps)measured delay (10 Kpps)
![Page 15: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/15.jpg)
Comparison of emulation systems
offered load (Kpps)
NetPath NIST net Dummynet Modelnet
4010.04 (0.01)
10.14 (0.03)
10.00 (0.35)
10.06 (0.13)
8010.04 (0.01)
10.52 (0.40)
10.23 (0.46)
10.10 (0.20)
12010.04 (0.01)
12.75 (0.84)
29.08 (1.68)
10.56 (0.45)
16010.04 (0.01)
16.47 (1.96)
399.00 (3.50)
-failure-
15
![Page 16: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/16.jpg)
Packet drops are a problem with previous emulators
16
NetPath accurately emulates delay without introducing packet loss for much higher rates than other emulators.
● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●
0 50 100 150 200
020
4060
80
offered packet rate (Kpps)
pack
et lo
ss p
erce
ntag
e● NetPath
NIST netDummynetModelnet
![Page 17: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/17.jpg)
Scaling to multiple paths
0
87.5
175.0
262.5
350.0
1 2 3 4 5 6 7 8 9 10Max
imum
loss
-free
forw
ardi
ng r
ate
(Kpp
s)
Number of paths
17
NetPath enables more efficient use of resources. Slight performance degradation is due to scheduling overhead.
![Page 18: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University](https://reader034.vdocuments.us/reader034/viewer/2022051602/5af141717f8b9ac57a8fa759/html5/thumbnails/18.jpg)
Summary and conclusions
18
• NetPath provides accurate path emulation capabilities for modern laboratory testbeds
• Suitable for analysis of delay-sensitive protocols
• Scalability to multi-link scenarios means that laboratory resources can be more efficiently used
• A variety of supported configuration scenarios means that NetPath can be used in a wide variety of lab settings
• Software will be available at http://wail.cs.wisc.edu/