47
In VINI Veritas Realistic and Controlled Network Experimentation Andy Bavier Nick Feamster* Mark Huang Larry Peterson Jennifer Rexford Princeton University *Georgia Tech Modified and presented by Arjumand Younus and Moonyoung

In VINI Veritas Realistic and Controlled Network Experimentation

  • Upload
    airlia

  • View
    20

  • Download
    0

Embed Size (px)

DESCRIPTION

In VINI Veritas Realistic and Controlled Network Experimentation. Andy Bavier Nick Feamster* Mark Huang Larry Peterson Jennifer Rexford. Princeton University *Georgia Tech. Modified and presented by Arjumand Younus and Moonyoung Chung. Outline. Motivation - PowerPoint PPT Presentation

Citation preview

Page 1: In VINI Veritas Realistic and Controlled Network Experimentation

In VINI VeritasRealistic and Controlled Network Experimentation

Andy Bavier Nick Feamster* Mark Huang

Larry Peterson Jennifer Rexford

Princeton University *Georgia Tech

Modified and presented by Arjumand Younus and Moonyoung Chung

Page 2: In VINI Veritas Realistic and Controlled Network Experimentation

Outline

Motivation Scientific Value and

Importance of VINI Fundamental

Philosophy of VINI Design Requirements

Strategy for building VINI

PL-VINI: prototype on PlanetLab

Experimental results Conclusion

2

Page 3: In VINI Veritas Realistic and Controlled Network Experimentation

Motivation - How to Validate an Idea?

Fixed, shared among many experiments Runs real routing software Exposes realistic network conditions Gives control over network events Carries traffic on behalf of real users

Simulation

Emulation

Small-scaleexperiment

Livedeployment

VINI

3

Page 4: In VINI Veritas Realistic and Controlled Network Experimentation

Realism has Scientific Value

The most exciting phrase to hear in science, the one that heralds new discoveries, is not ‘Eureka!’ (I found it!) but ‘That’s funny …’ -- Isaac Asimov

Discover unanticipated interactionsCan only simulate / emulate known propertiesBuild richer models

Test robustness and scalability of ideas

4

Page 5: In VINI Veritas Realistic and Controlled Network Experimentation

Fundamental Philosophy “Controlled Realism”

Control: Reproduce results Methodically change or

relax constraints

Realism: Long-running services

attract real “customers” Forward high traffic

volumes (Gb/s) Robustly handle

unexpected events

Topology

Actual network

Arbitrary, emulated

Traffic

Real clients, servers

Synthetic or traces

Network Events

Observed in operational network

Inject faults, anomalies

5

Page 6: In VINI Veritas Realistic and Controlled Network Experimentation

Overview

VINI requirementsFixed, shared infrastructureFlexible network topologyExpose/inject network eventsExternal connectivity and routing adjacencies

PL-VINI: prototype on PlanetLab Experimental results Conclusion

6

Page 7: In VINI Veritas Realistic and Controlled Network Experimentation

Fixed Infrastructure

VINI nodes embedded in Abilene7

Page 8: In VINI Veritas Realistic and Controlled Network Experimentation

Shared Infrastructure

Experiments given illusion of dedicated hardware8

Page 9: In VINI Veritas Realistic and Controlled Network Experimentation

Shared Infrastructure

Experiments given illusion of dedicated hardware9

Page 10: In VINI Veritas Realistic and Controlled Network Experimentation

Flexible Topology

VINI supports arbitrary virtual topologies10

Page 11: In VINI Veritas Realistic and Controlled Network Experimentation

Flexible Topology

VINI supports arbitrary virtual topologies11

Page 12: In VINI Veritas Realistic and Controlled Network Experimentation

Network Events

VINI can inject network failures12

Page 13: In VINI Veritas Realistic and Controlled Network Experimentation

Network Events

VINI can expose network failures (coming soon)

real link fails

virtual link fails

13

Page 14: In VINI Veritas Realistic and Controlled Network Experimentation

External Connectivity

s

c

Experiments can carry traffic for real end-users14

Page 15: In VINI Veritas Realistic and Controlled Network Experimentation

External Routing Adjacencies

s

c

BGP

BGP

BGP

BGP

Experiments can participate in Internet routing15

Page 16: In VINI Veritas Realistic and Controlled Network Experimentation

PlanetLab VINI

Build VINI from PlanetLab, a global testbed for distributed servicesBegun in 2002700 nodes at 336 sites in 35 countries 600 projects and 2500 researchersServes 3-4 TB/day to ~1M clients

MyPLC: PlanetLab software distributionAnyone can run their own private PlanetLab

16

Page 17: In VINI Veritas Realistic and Controlled Network Experimentation

PL-VINI: Prototype on PlanetLab

PlanetLab: testbed for planetary-scale services Simultaneous experiments in separate VMs

Each has “root” in its own VM, can customize

Can reserve CPU, network capacity per VM

Virtual Machine Monitor (VMM)(Linux++)

NodeMgr

LocalAdmin

VM1 VM2 VMn…PlanetLab node

17

Page 18: In VINI Veritas Realistic and Controlled Network Experimentation

Resource Isolation

Issue: Forwarding packets in user space PlanetLab sees heavy use CPU load affects virtual network performance

Property Depends On Solution

Throughput CPU% received PlanetLab provides CPU reservations

Latency CPU scheduling delay

PL-VINI: boost priority of packet forward process

18

Page 19: In VINI Veritas Realistic and Controlled Network Experimentation

PL-VINI: Prototype on PlanetLab

Enable experiment: Internet In A Slice XORP open-source routing protocol suite (NSDI ’05) Click modular router (TOCS ’00, SOSP ’99)

Clarify issues that a VINI must address Unmodified routing software on a virtual topology Forwarding packets at line speed Illusion of dedicated hardware Injection of faults and other events

19

Page 20: In VINI Veritas Realistic and Controlled Network Experimentation

Synthesis of Software Components to enable PL-VINI XORP – Open Source Routing Protocol Suite especially

developed for network research community. [9, NSDI ’05]

Click – Software Architecture for Building Flexible and Configurable routers [10]

UML – Linux-Kernel running as regular Linux-User-Process without Root-Privileges.

OpenVPN – Open source SSL VPN solution.

20

Page 21: In VINI Veritas Realistic and Controlled Network Experimentation

XORP: Control Plane

BGP, OSPF, RIP, PIM-SM, IGMP/MLD

Goal: run real routing protocols on virtual network topologies

XORP(routing protocols)

21

Page 22: In VINI Veritas Realistic and Controlled Network Experimentation

User-Mode Linux: Environment

Interface ≈ network PlanetLab limitation:

Slice cannot create new interfaces

Run routing software in UML environment

Create virtual network interfaces in UML

XORP(routing protocols)

UML

eth1 eth3eth2eth0

22

Page 23: In VINI Veritas Realistic and Controlled Network Experimentation

Click: Data Plane

Performance Avoid UML overhead Move to kernel, FPGA

XORP(routing protocols)

UML

eth1 eth3eth2eth0

Click

PacketForwardEngine

Control

Data

23

Page 24: In VINI Veritas Realistic and Controlled Network Experimentation

Click: Data Plane

Performance Avoid UML overhead Move to kernel, FPGA

XORP(routing protocols)

UML

eth1 eth3eth2eth0

Click

PacketForwardEngine

Control

DataUmlSwitch

element

24

Page 25: In VINI Veritas Realistic and Controlled Network Experimentation

Click: Data Plane

Performance Avoid UML overhead Move to kernel, FPGA

Interfaces tunnels Click UDP tunnels

correspond to UML network interfaces

XORP(routing protocols)

UML

eth1 eth3eth2eth0

Click

PacketForwardEngine

Control

DataUmlSwitch

element

Tunnel table

25

Page 26: In VINI Veritas Realistic and Controlled Network Experimentation

Injecting Link Failures

XORP(routing protocols)

UML

eth1 eth3eth2eth0

Click

PacketForwardEngine

Control

DataUmlSwitch

element

Tunnel table

Filters

Performance Avoid UML overhead Move to kernel, FPGA

Interfaces tunnels Click UDP tunnels

correspond to UML network interfaces

Filters “Fail a link” by blocking

packets at tunnel26

Page 27: In VINI Veritas Realistic and Controlled Network Experimentation

Life of a packet in IIAS

27

Page 28: In VINI Veritas Realistic and Controlled Network Experimentation

Experiments

MicrobenchmarksCapacityBehavior

Intra domain Route changesFailure and recovery

28

Page 29: In VINI Veritas Realistic and Controlled Network Experimentation

Overlay Efficiency IIAS’s user-space Click forwader vs. in-

kernel forwarding

29

Page 30: In VINI Veritas Realistic and Controlled Network Experimentation

Performance is bad

User-space Click: ~200Mb/s forwarding Can do a lot with 200Mb/s

20 experiments can have dedicated 10Mb/s nationwide networks

Improving performance is ongoing workAllow experiments to load custom Click

modules into the VINI kernel30

Page 31: In VINI Veritas Realistic and Controlled Network Experimentation

Overlay on PlanetLab on dedicated hardware (DETER) vs.

shared platform (PlanetLab) and PL-VINI

31

Page 32: In VINI Veritas Realistic and Controlled Network Experimentation

PL-VINI and IIAS together provide a close approximation of the underlying network’s behaviors.

Overlay on PlanetLab

32

Page 33: In VINI Veritas Realistic and Controlled Network Experimentation

Intra-domain Route Changess

c

1176

587 846

260

700

6391295

2095

902

548

233

1893

366

Watch OSPF route convergence on Abilene

856

33

Page 34: In VINI Veritas Realistic and Controlled Network Experimentation

Intra-domain Route Changess

c

1176

587 846

260

700

6391295

2095

902

548

233

1893

366

Watch OSPF route convergence on Abilene

856

34

Page 35: In VINI Veritas Realistic and Controlled Network Experimentation

Intra-domain Route Changess

c

1176

587 846

260

700

6391295

2095

902

548

233

1893

366

Watch OSPF route convergence on Abilene

856

35

Page 36: In VINI Veritas Realistic and Controlled Network Experimentation

Intra-domain Route Changess

c

1176

587 846

260

700

1295

2095

902

548

233

1893

366

Watch OSPF route convergence on Abilene

856

36

Page 37: In VINI Veritas Realistic and Controlled Network Experimentation

Intra-domain Route Changess

c

1176

587 846

260

700

6391295

2095

902

548

233

1893

366

Watch OSPF route convergence on Abilene

856

37

Page 38: In VINI Veritas Realistic and Controlled Network Experimentation

Ping During Link Failure

70

80

90

100

110

120

0 10 20 30 40 50

Pin

g R

TT

(m

s)

Seconds

Link down

38

Page 39: In VINI Veritas Realistic and Controlled Network Experimentation

Ping During Link Failure

70

80

90

100

110

120

0 10 20 30 40 50

Pin

g R

TT

(m

s)

Seconds

Link down

Link up

39

Page 40: In VINI Veritas Realistic and Controlled Network Experimentation

Ping During Link Failure

70

80

90

100

110

120

0 10 20 30 40 50

Pin

g R

TT

(m

s)

Seconds

Link down

Link up

Routes converging

40

Page 41: In VINI Veritas Realistic and Controlled Network Experimentation

TCP Throughput

0

2

4

6

8

10

12

0 10 20 30 40 50

Meg

abyt

es t

rans

ferr

ed

Seconds

Packet receiv ed

Link down

41

Page 42: In VINI Veritas Realistic and Controlled Network Experimentation

TCP Throughput

0

2

4

6

8

10

12

0 10 20 30 40 50

Meg

abyt

es t

rans

ferr

ed

Seconds

Packet receiv ed

Link down

Link up

42

Page 43: In VINI Veritas Realistic and Controlled Network Experimentation

TCP Throughput

0

2

4

6

8

10

12

0 10 20 30 40 50

Meg

abyt

es t

rans

ferr

ed

Seconds

Packet receiv ed

Link down

Link up

Zoom in

43

Page 44: In VINI Veritas Realistic and Controlled Network Experimentation

Arriving TCP Packets

2.1

2.15

2.2

2.25

2.3

2.35

2.4

2.45

17.5 18 18.5 19 19.5 20

Meg

abyt

es in

str

eam

Seconds

Packet receiv ed

Slow start

44

Page 45: In VINI Veritas Realistic and Controlled Network Experimentation

Arriving TCP Packets

Slow start

Retransmitlost packet

2.1

2.15

2.2

2.25

2.3

2.35

2.4

2.45

17.5 18 18.5 19 19.5 20

Meg

abyt

es in

str

eam

Seconds

Packet received

45

Page 46: In VINI Veritas Realistic and Controlled Network Experimentation

Arriving TCP Packets

2.1

2.15

2.2

2.25

2.3

2.35

2.4

2.45

17.5 18 18.5 19 19.5 20

Meg

abyt

es in

str

eam

Seconds

Packet receiv ed

Slow start

Retransmitlost packet

PL-VINI enables a user-space virtual networkto behave like a real network on PlanetLab

46

Page 47: In VINI Veritas Realistic and Controlled Network Experimentation

Conclusion

VINI: Virtual Network Infrastructure Controlled and realistic experimentation New routing, forwarding, and addressing

Initial experiment Intradomain routing convergence in XORP Later, perhaps run commercial router code?

Long term goal Shared platform for networking experiments Real user traffic and upstream ISP connections

47