Improved Path Exploration in shim6-based Multihoming S ebastien - - PowerPoint PPT Presentation

improved path exploration in shim6 based multihoming
SMART_READER_LITE
LIVE PREVIEW

Improved Path Exploration in shim6-based Multihoming S ebastien - - PowerPoint PPT Presentation

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Improved Path Exploration in shim6-based Multihoming S ebastien Barr e , Olivier Bonaventure Universit e catholique de Louvain http://inl.info.ucl.ac.be


slide-1
SLIDE 1

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions

Improved Path Exploration in shim6-based Multihoming

S´ ebastien Barr´ e, Olivier Bonaventure

Universit´ e catholique de Louvain http://inl.info.ucl.ac.be

  • Aug. 31st, 2007

SIGCOMM 2007 Workshop “IPv6 and the Future of the Internet”

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-2
SLIDE 2

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions

1

Introduction to Shim6 and REAP Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

2

Analysis of exploration time Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

3

Conclusions

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-3
SLIDE 3

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

1

Introduction to Shim6 and REAP Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

2

Analysis of exploration time Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

3

Conclusions

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-4
SLIDE 4

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

Host-centric multihoming (the context)

Internet

’A’ ’B’, ISPX.B Source Destination ISP1.A ISP2.A

ISP1 ISP2

ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-5
SLIDE 5

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

Host-centric multihoming (the context)

Internet

’A’ ’B’, ISPX.B Source Destination src : ISP1.A dest : ISPX.B ISP1.A ISP2.A

ISP1 ISP2

DATA

ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-6
SLIDE 6

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

Host-centric multihoming (the context)

Internet

’A’ src : ISP2.A dest : ISPX.B ’B’, ISPX.B Source Destination ISP1.A ISP2.A

ISP1 ISP2

DATA

ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-7
SLIDE 7

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

Locators vs Identifiers (ULIDs)

Application Transport Network Physical Datalink

IP address = identifier (ULID) IP address = locator

ULPs IP : Endpoint functions SHIM IP : Routing functions

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-8
SLIDE 8

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

Locators vs Identifiers (ULIDs)

Application Transport Network Physical Datalink IP : Endpoint functions IP : Routing functions

IP address = locator IP address = identifier (ULID)

ULPs SHIM

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-9
SLIDE 9

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

Locators vs Identifiers (ULIDs)

Application Transport Network Physical Datalink IP : Endpoint functions IP : Routing functions ULPs SHIM

IP address = identifier IP address = locator (ULID)

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-10
SLIDE 10

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

Locators vs Identifiers (ULIDs)

ULID : Used as the identifier throughout a transport connection. locator : IPv6 address used for routing (locating the peer). Shim6 performs a mapping between ULIDs and locators, by use of context tags.

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-11
SLIDE 11

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

Shim6 operation

Internet

’A’ ’B’, ISPX.B Source ISP1.A ISP2.A

ISP1 ISP2

DATA

Destination

ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-12
SLIDE 12

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

Shim6 operation

negotiation Shim6

Internet

’A’ ’B’, ISPX.B Source ISP1.A ISP2.A

ISP1 ISP2

DATA

Destination

ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-13
SLIDE 13

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

Shim6 operation

Internet

’A’ ’B’, ISPX.B Source ISP1.A ISP2.A

ISP1 ISP2

DATA

Destination

  • Shim6 context

context tag: B_flow1 locators :

  • cur. ULIDs : ISPX.B

ISP1.A ISPX.B* ISP1.A* ISP2.A , ISP1.A* ISP2.A , Shim6 context locators :

  • cur. ULIDs :

ISPX.B* ISPX.B ISP1.A context tag: A_flow1

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-14
SLIDE 14

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

REAP operation

Internet

’A’ ’B’, ISPX.B ISP1.A ISP2.A

ISP1 ISP2

DATA DATA

  • REAP

Shim6 context locators :

  • cur. ULIDs :

ISPX.B* ISPX.B ISP1.A context tag: A_flow1

REAP

Shim6 context context tag: B_flow1 locators :

  • cur. ULIDs : ISPX.B

ISP1.A ISPX.B* ISP1.A* ISP2.A ,

OK

ISP1.A* ISP2.A ,

OK

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-15
SLIDE 15

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

REAP operation

REAP probe

Internet

’A’ ’B’, ISPX.B ISP1.A ISP2.A

ISP1 ISP2

REAP probe DATA DATA

  • REAP

Shim6 context locators :

  • cur. ULIDs :

ISPX.B* ISPX.B ISP1.A context tag: A_flow1

REAP

Shim6 context context tag: B_flow1 locators :

  • cur. ULIDs : ISPX.B

ISP1.A ISPX.B*

Expl.

ISP1.A* ISP2.A ,

OK

ISP1.A* ISP2.A ,

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-16
SLIDE 16

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

REAP operation

DATA

’A’ ’B’, ISPX.B ISP1.A ISP2.A

ISP1 ISP2

REAP probe DATA

Internet

  • REAP

Shim6 context locators :

  • cur. ULIDs :

ISPX.B* ISPX.B ISP1.A context tag: A_flow1

REAP

Shim6 context context tag: B_flow1 locators :

  • cur. ULIDs : ISPX.B

ISP1.A ISPX.B*

OK Expl.

ISP1.A* ISP2.A , ISP1.A ,ISP2.A*

Inbd

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-17
SLIDE 17

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

REAP operation

REAP probe DATA

Internet

’A’ ’B’, ISPX.B ISP1.A ISP2.A

ISP1 ISP2

DATA

  • REAP

OK

Shim6 context locators :

  • cur. ULIDs :

ISPX.B* ISPX.B ISP1.A context tag: A_flow1 ISP1.A ,ISP2.A*

REAP

Shim6 context context tag: B_flow1 locators :

  • cur. ULIDs : ISPX.B

ISP1.A ISPX.B* ISP1.A , ISP2.A*

OK Inbd

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-18
SLIDE 18

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

REAP operation

Internet

’A’ ’B’, ISPX.B ISP1.A ISP2.A

ISP1 ISP2

DATA

  • REAP

OK

Shim6 context locators :

  • cur. ULIDs :

ISPX.B* ISPX.B ISP1.A context tag: A_flow1 ISP1.A ,ISP2.A*

REAP OK

Shim6 context context tag: B_flow1 locators :

  • cur. ULIDs : ISPX.B

ISP1.A ISPX.B* ISP1.A , ISP2.A*

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-19
SLIDE 19

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

TCP connection survival

recovery failure REAP

10 20 30 40 50 60 10 20 30 40 50 60

Throughput (Mbits/sec) time (seconds) Path 2 used Path 1 used Figure: Evolution of throughput for an iperf TCP session

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-20
SLIDE 20

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

1

Introduction to Shim6 and REAP Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

2

Analysis of exploration time Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

3

Conclusions

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-21
SLIDE 21

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

REAP : Failure recovery time

The detection time is defined as the interval between the

  • ccurence of a failure and its detection by REAP timeout.

The exploration time is the interval between leaving and coming back to the operational state.

Probes are sent to various paths by randomly selecting an address pair, thus a path. 4 probes are sent with a 500ms interval, then exponential backoff is performed.

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-22
SLIDE 22

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

Shim6 implementation and lab

LinShim6 v0.4.3, with Linux kernel 2.6.17.11

Available at http://inl.info.ucl.ac.be/LinShim6

Click modular router, to meet the following needs :

Simulate broken paths : we are able to stop or restart any path

  • f the testbed on a per-address pair basis.

Simulate path delays : We can configure a specific artificial delay for each address pair. Perform source-address based routing : The testbed is configured with one queue for each address pair.

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-23
SLIDE 23

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

Lab configuration

. . .

80ms

. . .

0ms 80ms 0ms

2002:1::if_id_B 2002:2::if_id_B 2002:3::if_id_B

Click modular router

2001:1::if_id_A 2001:2::if_id_A 2001:3::if_id_A

Host A Host B

  • Figure: Testbed for REAP measurements

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-24
SLIDE 24

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX1 : Relation with the number of broken paths

n : number of broken queues The current queues for both directions are always broken (bidirectional failure) example for n = 3 :

2002:1::if_id_B 2002:2::if_id_B 2002:3::if_id_B

. . . . . .

2001:1::if_id_A 2001:2::if_id_A 2001:3::if_id_A

Host A Host B

Click modular router

ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-25
SLIDE 25

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX1 : Relation with the number of broken paths

10 20 30 40 50 60 70 80 90 100 0.5 1 1.5 2 CDF (%) exploration time (seconds) n=1

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-26
SLIDE 26

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX1 : Relation with the number of broken paths

10 20 30 40 50 60 70 80 90 100 0.5 1 1.5 2 CDF (%) exploration time (seconds) n=1 n=2

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-27
SLIDE 27

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX1 : Relation with the number of broken paths

10 20 30 40 50 60 70 80 90 100 0.5 1 1.5 2 CDF (%) exploration time (seconds) n=1 n=2 n=3

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-28
SLIDE 28

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX1 : Relation with the number of broken paths

10 20 30 40 50 60 70 80 90 100 0.5 1 1.5 2 CDF (%) exploration time (seconds) n=1 n=2 n=3 n=4

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-29
SLIDE 29

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX1 : Relation with the number of broken paths

10 20 30 40 50 60 70 80 90 100 0.5 1 1.5 2 CDF (%) exploration time (seconds) n=1 n=2 n=3 n=4 n=5

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-30
SLIDE 30

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX1 : Relation with the number of broken paths

10 20 30 40 50 60 70 80 90 100 0.5 1 1.5 2 CDF (%) exploration time (seconds) n=1 n=2 n=3 n=4 n=5 n=6

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-31
SLIDE 31

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX2 : Paths with different delays

We have selected a path, is it the best one ? Let’s compare in terms of delay.

. . .

80ms

. . .

0ms 80ms 0ms

2002:1::if_id_B 2002:2::if_id_B 2002:3::if_id_B

Click modular router

2001:1::if_id_A 2001:2::if_id_A 2001:3::if_id_A

Host A Host B

ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-32
SLIDE 32

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX2 : Paths with different delays

We break one path for each direction. What are the alternative paths chosen by the protocol ?

2002:1::if_id_B 2002:2::if_id_B 2002:3::if_id_B

0ms 0ms 80ms

. . . . . .

Click modular router

2001:1::if_id_A 2001:2::if_id_A 2001:3::if_id_A

Host A Host B

80ms

ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-33
SLIDE 33

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX2 : Paths with different delays

10 20 30 10 20 30 40 50 60 70 80 % One-way delay (ms) Default REAP

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-34
SLIDE 34

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

EX2 : Paths with different delays

10 20 30 10 20 30 40 50 60 70 80 % One-way delay (ms) Default REAP 4 probes sent in burst

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-35
SLIDE 35

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions

1

Introduction to Shim6 and REAP Introduction to Shim6 Shim6 : a new layer The REAP exploration protocol

2

Analysis of exploration time Shim6 implementation and lab EX1 : Measuring exploration times EX2 : Finding better paths

3

Conclusions

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-36
SLIDE 36

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions

Conclusions

Our implementation for the Linux kernel shows that multihoming with Shim6 is possible. REAP provides an additional capability, that is, failure detection and recovery by timeouts and probe sending. In most cases the path exploration may be done reasonably fast. We argue that REAP could also be used for finding paths with better/best delays, although we should care not to overload the network with signalling load.

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-37
SLIDE 37

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions

Future work

Evaluation and optimization of the detection time Use heuristics to find better paths according to some criteria (delay, bandwidth,. . . ) Find an ordering of address pairs for path exploration that would perform better than the current random selection.

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming

slide-38
SLIDE 38

Outline Introduction to Shim6 and REAP Analysis of exploration time Conclusions

Thanks ! Questions ?

S´ ebastien Barr´ e, Olivier Bonaventure Improved Path Exploration in shim6-based Multihoming