Pathlet Routing P. Brighten Godfrey pbg@illinois.edu Igor - - PowerPoint PPT Presentation

pathlet routing
SMART_READER_LITE
LIVE PREVIEW

Pathlet Routing P. Brighten Godfrey pbg@illinois.edu Igor - - PowerPoint PPT Presentation

Pathlet Routing P. Brighten Godfrey pbg@illinois.edu Igor Ganichev, Scott Shenker, and Ion Stoica {igor,shenker,istoica}@cs.berkeley.edu SIGCOMM 2009 Internet routing challenges Multipath reliability path quality Scalability Policy


slide-1
SLIDE 1

Pathlet Routing

  • P. Brighten Godfrey

pbg@illinois.edu Igor Ganichev, Scott Shenker, and Ion Stoica {igor,shenker,istoica}@cs.berkeley.edu SIGCOMM 2009

slide-2
SLIDE 2

Internet routing challenges

Scalability Multipath reliability path quality Policy

slide-3
SLIDE 3

20 40 60 80 100 120 140 160 180 200

  • 600
  • 400
  • 200

200 400 600 Number of loss burst Starting time (seconds)

Failure injected

Internet routing challenges

[ F. Wang, Z. M. Mao, J. Wang, L. Gao, R. Bush ’06]

Scalability Multipath reliability path quality Policy

slide-4
SLIDE 4

Internet routing challenges

Lowest latency path Path the network picked for you Highest bandwidth path

Scalability Multipath reliability path quality Policy

slide-5
SLIDE 5

Internet routing challenges

Scalability

Internet forwarding table size [Huston ’09]

Multipath reliability path quality Policy

slide-6
SLIDE 6

Internet routing challenges

Scalability Multipath reliability path quality Policy

slide-7
SLIDE 7

Internet routing challenges

Scalability Multipath reliability path quality Policy

slide-8
SLIDE 8

Internet routing challenges

X

Scalability Multipath reliability path quality Policy

slide-9
SLIDE 9

Pathlet routing

vnode virtual node pathlet fragment of a path: a sequence of vnodes Source routing over pathlets.

slide-10
SLIDE 10

Pathlet routing

vnode virtual node pathlet fragment of a path: a sequence of vnodes Source routing over pathlets.

slide-11
SLIDE 11

Pathlet routing

vnode virtual node pathlet fragment of a path: a sequence of vnodes Source routing over pathlets.

slide-12
SLIDE 12

Pathlet routing

vnode virtual node pathlet fragment of a path: a sequence of vnodes Source routing over pathlets.

slide-13
SLIDE 13

Pathlet routing

vnode virtual node pathlet fragment of a path: a sequence of vnodes Source routing over pathlets.

virtual graph: flexible way to define policy constraints

slide-14
SLIDE 14

Pathlet routing

vnode virtual node pathlet fragment of a path: a sequence of vnodes Source routing over pathlets.

virtual graph: flexible way to define policy constraints provides many path choices for senders

slide-15
SLIDE 15

Flexibility

slide-16
SLIDE 16

Flexibility

  • can emulate BGP, source

routing, MIRO, LISP, NIRA

slide-17
SLIDE 17

Flexibility

  • can emulate BGP, source

routing, MIRO, LISP, NIRA

  • local transit policies

provide multipath and small forwarding tables

slide-18
SLIDE 18

Flexibility

  • can emulate BGP, source

routing, MIRO, LISP, NIRA

  • local transit policies

provide multipath and small forwarding tables

  • coexistence of different

styles of routing policy

slide-19
SLIDE 19

Flexibility

  • can emulate BGP, source

routing, MIRO, LISP, NIRA

  • local transit policies

provide multipath and small forwarding tables

  • coexistence of different

styles of routing policy

slide-20
SLIDE 20

Flexibility

  • can emulate BGP, source

routing, MIRO, LISP, NIRA

  • local transit policies

provide multipath and small forwarding tables

  • coexistence of different

styles of routing policy

slide-21
SLIDE 21

Design for variation

Design for variation in outcome, so that the outcome can be different in different places, and the tussle takes place within the design, not by distorting or violating it. Clark, Wroclawski, Sollins & Braden, 2002

“Tussle in Cyberspace”

“ ”

––

slide-22
SLIDE 22

Outline

  • The protocol
  • Uses
  • Experimental results
  • Comparing routing protocols
slide-23
SLIDE 23

Pathlet routing

vnode virtual node pathlet fragment of a path: a sequence of vnodes Source routing over pathlets.

slide-24
SLIDE 24

vnodes

vnode: virtual node within an AS

slide-25
SLIDE 25

vnodes

vnode: virtual node within an AS

slide-26
SLIDE 26

vnodes

vnode: virtual node within an AS

Walla Walla New York San Diego Roosterville Crumstown

slide-27
SLIDE 27

vnodes

vnode: virtual node within an AS

slide-28
SLIDE 28

vnodes

vnode: virtual node within an AS

slide-29
SLIDE 29

vnodes

vnode: virtual node within an AS

slide-30
SLIDE 30

vnodes

vnode: virtual node within an AS

slide-31
SLIDE 31

vnodes

vnode: virtual node within an AS designated ingress vnode for each neighbor

slide-32
SLIDE 32

vnodes

vnode: virtual node within an AS designated ingress vnode for each neighbor

slide-33
SLIDE 33

vnodes

vnode: virtual node within an AS designated ingress vnode for each neighbor

slide-34
SLIDE 34

vnodes

vnode: virtual node within an AS designated ingress vnode for each neighbor Internally: a forwarding table at one or more routers

router router router

slide-35
SLIDE 35

Pathlets

Forwarding table A B C D Packet route field

slide-36
SLIDE 36

Pathlets

Forwarding table A B C D Packet route field

slide-37
SLIDE 37

Pathlets

7 2

Forwarding table A B C D Packet route field

slide-38
SLIDE 38

Pathlets

7 2

Forwarding table A B C D

... ... 2 fwd to D ... ... 7 fwd to C

Packet route field

slide-39
SLIDE 39

Pathlets

7 2

Forwarding table

7,2

A B C D

... ... 2 fwd to D ... ... 7 fwd to C

Packet route field

slide-40
SLIDE 40

Pathlets

7 2

Forwarding table

7,2 2

A B C D

... ... 2 fwd to D ... ... 7 fwd to C

Packet route field

slide-41
SLIDE 41

Pathlets

7 2

Forwarding table

7,2 2

A B C D

... ... 2 fwd to D ... ... 7 fwd to C

Packet route field

slide-42
SLIDE 42

Pathlets

7 2

delivered! Forwarding table

7,2 2

A B C D

... ... 2 fwd to D ... ... 7 fwd to C

Packet route field

slide-43
SLIDE 43

Pathlets

7 2 3 ... ... 3 push 7,2; fwd to B

delivered! Forwarding table

7,2 2

A B C D

... ... 2 fwd to D ... ... 7 fwd to C

Packet route field

slide-44
SLIDE 44

Pathlets

7 2 3 ... ... 3 push 7,2; fwd to B

delivered! Forwarding table

7,2 2

A B C D

... ... 2 fwd to D ... ... 7 fwd to C 3

Packet route field

slide-45
SLIDE 45

Dissemination

  • Global gossip fine, except for scalability
  • So, let routers choose not to disseminate

some pathlets

  • Leads to (ironic) use of path vector –– only

for pathlet dissemination, not route selection

slide-46
SLIDE 46

Outline

  • The protocol
  • Uses
  • Experimental results
  • Comparing routing protocols
slide-47
SLIDE 47

Local transit policies

Each ingress egress pair is either allowed or disallowed. Subject to this, any path allowed! Represented with few pathlets: small FIB

slide-48
SLIDE 48

“All valley-free” is local

“customers can route to anyone; anyone can route to customers”

provider provider customer customer

slide-49
SLIDE 49

ingress from a provider ingress from a customer

“All valley-free” is local

“customers can route to anyone; anyone can route to customers”

provider provider customer customer

slide-50
SLIDE 50

ingress from a provider ingress from a customer

“All valley-free” is local

“customers can route to anyone; anyone can route to customers”

provider provider customer customer

slide-51
SLIDE 51

ingress from a provider ingress from a customer

“All valley-free” is local

“customers can route to anyone; anyone can route to customers”

provider provider customer customer egress to a customer egress to a provider

slide-52
SLIDE 52

ingress from a provider ingress from a customer

“All valley-free” is local

“customers can route to anyone; anyone can route to customers”

provider provider customer customer egress to a customer egress to a provider

slide-53
SLIDE 53

ingress from a provider ingress from a customer

“All valley-free” is local

“customers can route to anyone; anyone can route to customers”

provider provider customer customer egress to a customer egress to a provider

slide-54
SLIDE 54

ingress from a provider ingress from a customer

“All valley-free” is local

“customers can route to anyone; anyone can route to customers”

provider provider customer customer egress to a customer egress to a provider

slide-55
SLIDE 55

ingress from a provider ingress from a customer

“All valley-free” is local

“customers can route to anyone; anyone can route to customers”

provider provider customer customer egress to a customer egress to a provider

slide-56
SLIDE 56

ingress from a provider ingress from a customer

“All valley-free” is local

“customers can route to anyone; anyone can route to customers”

provider provider customer customer egress to a customer egress to a provider

Forwarding table size: 3 + #neighbors

slide-57
SLIDE 57

Emulating BGP

128.2.0.0/16

slide-58
SLIDE 58

Emulating BGP

128.2.0.0/16

slide-59
SLIDE 59

Emulating BGP

128.2.0.0/16

slide-60
SLIDE 60

Emulating BGP

128.2.0.0/16

slide-61
SLIDE 61

Emulating BGP

128.2.0.0/16

slide-62
SLIDE 62

Mixed policies

local BGP-like local local local

slide-63
SLIDE 63

Outline

  • The protocol
  • Uses
  • Experimental results
  • Comparing routing protocols
slide-64
SLIDE 64

Improved connectivity

BGP-style LT policies Mixed

slide-65
SLIDE 65

Tiny forwarding tables

Forwarding table size CDF

slide-66
SLIDE 66

Tiny forwarding tables

Forwarding table size CDF

BGP pathlet routing, valley-free LT policies current Internet (CAIDA/APNIC): 132,158+ entries:

  • ne per IP prefix

2,264 entries, max 8.48 entries, mean

slide-67
SLIDE 67

Control overhead

2.23x more messages, 1.61x more memory in LT than PV This can likely be improved.

slide-68
SLIDE 68

Outline

  • The protocol
  • Uses
  • Experimental results
  • Comparing routing protocols
slide-69
SLIDE 69

Comparing protocols

slide-70
SLIDE 70

Comparing protocols

Feedback-based routing Strict source routing Pathlet routing NIRA Routing deflections, path splicing LISP BGP MIRO Loose source routing

slide-71
SLIDE 71

Comparing protocols

Feedback-based routing Strict source routing Pathlet routing NIRA Routing deflections, path splicing LISP BGP MIRO Loose source routing

slide-72
SLIDE 72

Conclusion

  • Pathlet routing: source routing over a

virtual topology formed by pathlets and vnodes

  • Highly flexible; supports both “local”

policies with small forwarding tables and many paths, and complex BGP policies

  • Challenges for source routing: Incentives to

provide multiple paths; selecting paths; security; ...

slide-73
SLIDE 73