Top Banner
Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University
19

Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

Mar 27, 2015

Download

Documents

Dominic Dwyer
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

Using Network Virtualization Techniques for Scalable Routing

Nick Feamster, Georgia TechLixin Gao, UMass Amherst

Jennifer Rexford, Princeton University

Page 2: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

2

Virtualization for Routing• Path Splicing (Georgia Tech)

– Run multiple instances of routing protocol– End system signals which instance to use at each hop– Exponential diversity gain, modest complexity

• Underlay Fused with Overlays (Princeton/GT)

– Support overlay functions in routers– Efficient forwarding and scalable monitoring

• HORN: Hybrid Routing for Overlay Networks (UMass Amherst)– Different nodes see different detailed subgraph– Availability of link state with good scalability

Page 3: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

3

Multipath: Promise and Problems

• Bad: If any link fails on both paths, s is disconnected from t

• Want: End systems remain connected unless the underlying graph is disconnected

ts

Page 4: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

4

Path Splicing: Main Idea

• Step 1: Run multiple instances of the routing protocol, each with slightly perturbed versions of the configuration

• Step 2: Allow traffic to switch between instances at any node in the protocol

ts

Compute multiple forwarding trees per destination.Allow packets to switch slices midstream.

Feamster, Motiwala, and Vempala, Path Splicing with Network Slicing

Page 5: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

5

Perturbations

• Goal: Each instance provides different paths• Mechanism: Each edge is given a weight that is

a slightly perturbed version of the original weight– Two schemes: Uniform and degree-based

ts

3

3

3

“Base” Graph

ts

3.5

4

5 1.5

1.5

1.25

Perturbed Graph

Page 6: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

6

Network Slicing

• Goal: Allow multiple instances to co-exist• Mechanism: Virtual forwarding tables

a

t

c

s b

t a

t c

Slice 1

Slice 2

dst next-hop

Page 7: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

7

Path Splicing in Practice

• Packet has shim header with routing bits

• Routers use lg(k) bits to index forwarding tables– Shift bits after inspection– Incremental deployment is trivial– Persistent loops cannot occur

• To access different (or multiple) paths, end systems simply change the forwarding bits

Page 8: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

9

Open Questions and Deployment

• Can end hosts react quickly enough to recover?– How does the end system find the alternate path?

• How does splicing perform for other topologies?

• Deployment Paths– VINI– Overlay– Wireless– Software Router (e.g., Quagga)

Page 9: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

10

Splicing: Possible Applications

• Fast recovery from poorly performing paths• Convergence-free routing• Data transfer• Security: Consistency checking• Spatial diversity in wireless networks

Page 10: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

11

Path Splicing: High Points

• Simple: Opaque routing bits provide access to different paths through the network

• Scalable: Exponential increase in available paths, linear increase in state

• Stable: Fast recovery does not require fast routing protocols

• No modifications to existing routing protocols

Page 11: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

12

Underlay Fused with Overlays• Main idea: Layered routing architecture

– Supporting overlay functions on routers– Blur boundary between overlays and underlays

• Efficient forwarding– Overlay forwarding on line cards– Hosting the overlay control plane

• Scalable monitoring– Registration of overlay links– Notification of network events

Zhu, Rexford, Feamster, Bavier, UFO: A Resilient Layered Routing Architecture

Page 12: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

13

Efficient Forwarding

• Problem: traffic must traverse bottleneck link both inbound and outbound

• Solution: reflection points in routers

Upstream ISP

Page 13: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

14

Forwarding on Router Line Cards

Page 14: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

15

Scalable Monitoring

• Notification preserves overlay link abstractions– Message: (overlay source, overlay destination, event)– Routers store state by explicit overlay registration

• Notification: events that affect performance of overlay applications– Physical failures of routers or links– Reachability failures: withdrawal, session failure– Network congestion

Page 15: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

16

Notification of Network Events

1A 2 3

4

B

C

(A,B)(A,C)

(A,B)(A,C)

(A,B) (A,B)

(A,C)

(A,C)

• Register for unidirectional overlay links– A->B– B->C

Page 16: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

17

• Link state routing– Not scalable – A virtual network could be as large as the Internet

• Distance vector routing– Convergence delay – Scales better

• Idea: A tunable routing protocol?– Trade scalability for better availability– Each slice runs a fixed protocol with tunable parameter

HORN: Scalability vs. Convergence

Page 17: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

18

A knows a partial topology (adjacent sub-graph) via link state protocol, and learns routes from the border nodes of the sub-graph.

C-H

E-G-H

D-G-H

A-BA-B-CA-DA-D-E

A-B-C C-H+A-B-C-H

HORN:Hybrid rOuting for oveRlay Networks

Page 18: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

19

Benefits and Challenges

• Benefits: Availability– Tailor to specific topology– Accommodate underlying network constraints – limiting scope of failure notification, geographical

proximity

• Challenges– Potential stretch on path– Expose mapping between overlay and underlay

Page 19: Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.

20

Summary and Question• Network virtualization to “cheat” on scalability

tradeoffs– Path diversity vs. scalability

– Efficiency vs. scalability

– Convergence vs. scalability

• What are the common abstractions, functions, etc. that the substrate should provide?– Slicing

– Nesting

– “Knobs” for granularity control

– …?