Top Banner
Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs [email protected] www.yallcast.com
22

Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs [email protected] .

Dec 14, 2015

Download

Documents

Lexie Price
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: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Overview of Yallcast Dynamic Topology Configuration

Paul Francis

NTT PF Labs

[email protected]

www.yallcast.com

Page 2: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Dealing withdynamictopologies

Gettingthrough NATboxes

Sufficientgenerality

UDP TCP

Yallcast ID Protocol (YIDP)

yTCP yRTP yRMTP Etc...

Yallcast Tree Protocol (YTP)(framing, forwarding, sequencing)

Application

API

Yallcast-specific Content Protocol Stack Challenges

IPMulticast

IPUnicast

Page 3: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Tree Terminology

L

B

C

R

P

F4F3F2F1

H

A

D

RootTransit

Leaf

ClusterFeet

ClusterHead

Parentof C

Childof P

Page 4: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Multicast (Over Tree)

Page 5: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Broadcast (Over Everything)

Page 6: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Multicast with Mesh Repair*

*Dramatization

X

Page 7: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Unicast, and Anycast (Over Tree and Mesh)

Page 8: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Tree Building Approaches

Mesh First• Build proximal

mesh• Run classical

routing algorithm over mesh

• Tree “falls out”• AMRoute, CMU

Tree First• Screen known members

for tree neighbor validity• Explicitly select

proximal tree neighbor• Run algorithm to detect

loops• Yallcast

Page 9: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Member Discovery

• Learn of other members to build topologies– Contact Rendezvous (initial)– Parent-side tree anycast or mesh anycast

discovery messages (background activity)– Navigate tree (as-needed foreground activity)– If root, broadcast “I am root” message, inform

rendezvous

Page 10: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Tree Loop Detection/Prevention

• Yallcast tree may have transient loops

• Pre- and post-topology change loop detection

• Three basic mechanisms:– Root Path– Topology trace– Incompatible changes trace

Page 11: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Root Path

• Analogous to BGP AS-path

• Transmitted parent to child– Each member appends itself to received root

path

• Discovers loops after tree change

Page 12: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Root Path

L

B

C

RP

F4F3F2F1

H

A

D

RR:P

R:P:CR:A:D

R:A

R:A:LR:P:H

R:P:H:B

Root Path Flow of Root Path

Page 13: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Root Path Loop Detection

L

B

C

RP

F4F3F2F1

H

A

D

RP

R:P:CR:A:D

R:A

R:A:LP:H

P:H:B

P:H:B:P!!!

Page 14: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Valid Parents

L

B

C

RP

F4F3F2F1

H

A

D

RR:P

R:P:CR:A:D

R:A

R:A:LR:P:H

R:P:H:B

P’s parent-sidemembers

P’s child-side members

Page 15: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

How Loops Form

L

B

C

RP

H

A

D

RR:P

R:P:CR:A:D

R:A

R:A:LR:P:H

R:P:H:B

“Simultaneous” changes by multiple members (e.g. P and L)

Page 16: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Loop Avoidance Algorithms

• Coordinated Loop Avoidance– Have parent, want to improve

• Emergency Loop Avoidance– No parent, must find one quickly

• Coordinated has stronger loop detection

• Coordinated scales better

Page 17: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

• Send “Root Path Trace” along new Root Path

• Root Path Trace follows path of “prospective parents”

• Last member in path, or first to discover loop, replies to initiator

Emergency Loop Avoidance

Page 18: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Emergency Loop Avoidance:Only P Changing Parent

L

B

C

RP

H

A

D

RR:P

R:P:CR:A:D

R:A

R:A:LR:P:H

R:P:H:B

X

tracetracereply

Prospective Parent

Page 19: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Emergency Loop Avoidance:P and L Changing Parent

L

B

C

RP

H

A

D

RR:P

R:P:CR:A:D

R:A

R:A:LR:P:H

R:P:H:B

X

trace

trace

reply

Loop Detected!!!

trace

trace

Page 20: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Coordinated Loop Avoidance

• Send “Intent to Join” along tree from joining member to new parent

• Members along the path record intended change

• Members along the path check for and block incompatible changes

Page 21: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Coordinated Loop Avoidance:Only P Changing Parent

L

B

C

RP

H

A

D

R

R:PR:P:C

R:A:D

R:A

R:A:LR:P:H

R:P:H:B

itj

itjaccept

itj

Page 22: Overview of Yallcast Dynamic Topology Configuration Paul Francis NTT PF Labs francis@slab.ntt.co.jp .

Coordinated Loop Avoidance:P and L Changing Parent

L

B

C

RP

H

A

D

R

R:PR:P:C

R:A:D

R:A

R:A:LR:P:H

R:P:H:B

itj

accept

itj

itjreject