scalable network path emulation - colgate...

19
Scalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University of Wisconsin-Madison http://wail.cs.wisc.edu

Upload: hacong

Post on 08-May-2018

224 views

Category:

Documents


4 download

TRANSCRIPT

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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/

Page 19: Scalable Network Path Emulation - Colgate Universitycs.colgate.edu/~jsommers/pubs/netpath_slides.pdfScalable Network Path Emulation Shilpi Agarwal, Joel Sommers, Paul Barford University

the end

http://wail.cs.wisc.edu

19