/
Overview of TRILL Active-Active Goals, Challenges, and Prop Overview of TRILL Active-Active Goals, Challenges, and Prop

Overview of TRILL Active-Active Goals, Challenges, and Prop - PowerPoint Presentation

briana-ranney
briana-ranney . @briana-ranney
Follow
472 views
Uploaded On 2016-08-06

Overview of TRILL Active-Active Goals, Challenges, and Prop - PPT Presentation

Radia Perlman radiaperlmangmailcom 1 November 2013 Dont we have appointed forwarders November 2013 2 R1 R2 R3 R1 R2 and R3 can all forward DRB assigns work based on VLANs But requires R1 R2 R3 all carefully coordinated all see all packets ID: 436003

2013 november

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Overview of TRILL Active-Active Goals, C..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Overview of TRILL Active-Active Goals, Challenges, and Proposed Solutions

Radia Perlmanradiaperlman@gmail.com

1

November 2013Slide2

Don’t we have “appointed forwarders”?

November 20132

R1

R2

R3

R1, R2, and R3 can all forward. DRB assigns work, based on VLANs

But requires R1, R2, R3 all carefully coordinated, all see all packets

endnodesSlide3

The active-active stuff being discussed in different

November 20133Slide4

The “active-active” stuff

Multiple RBridges, {R1, R2, R3} attached to a bunch of endnodesBut when a packet is forwarded from the bunch of endnodes, only one of {R1, R2, R3} sees that packetAnd {R1, R2, R3} cannot easily talk to each other (they are not on a common link)

4

November 2013Slide5

Two pictures

November 20135

hypervisor

VM

VM

VM

VM

VM

R1

R2

R3

Rest of campus

R1

R2

R3

Rest of campus

bridge

R4

D

R4

D

S

SSlide6

(Presumed) Rules for forwarding upwards

Same “flow” go to the same next hopOtherwise, basically randomMultidestination might go to any of the next hopsAnd nothing is forwarded (by hypervisor or bridge) between the up-linksNovember 2013

6Slide7

Goals (“would be nice”)

Probably we won’t find any solutions that meet all the goalsNovember 2013

7Slide8

Goals (“would be nice”)

All up-links activeIf S sends to distant node D, D  S traffic should enter S via link closest to D, regardless of which up-link was used for path S  DHave D  S traffic take same path as S  D traffic (note: directly conflicts with above goal)

R4 (or D) shouldn’t keep changing its mind about which RB S is connected to

Packets for a flow should stay in

order

November 2013

8Slide9

Goals (“would be nice”)

No need to change entire campus at once (perhaps only need to change {R1, R2, R3}, maybe R4.Works with all existing siliconRPF check on multi-destination works (doesn’t falsely drop packets)November 2013

9Slide10

What’s wrong with naïve approach?

November 201310

hypervisor

VM

VM

VM

VM

VM

R1

R2

R3

Rest of campus

R4

D

S

When S sends via R1, “first RB” field=R1, etc.

Problem: R4 will return via same up-link (possibly not optimal one), and R4 will keep switching its endnode table for S if traffic from S comes via R2, R3,…Slide11

With pseudonode

November 201311

hypervisor

VM

VM

VM

VM

VM

R1

R2

R3

Rest of campus

R4

D

S

R1, R2, R3 agree (somehow) on a pseudonode nickname for the set of MACs reachable from {R1, R2, R3}, let’s say “79”

Always encapsulate with 1

st

RB=79Slide12

PseudonodeR1, R2, R3 claim they are attached to “79”

Use “79” as ingress when receive from their uplinkAll endnodes attached to R1, R2, R3 look like they are reachable via 79November 2013

12Slide13

Problem: What if E1’s link to R1 dies?

November 201313

R1

R2

R3

Rest of campus

R4

D

E1

E2

E3

E4

E5

E6Slide14

Problem: What if E1’s link to R1 dies?

November 201314

R1

R2

R3

Rest of campus

R4

D

E1

E2

E3

E4

E5

E6

If R3 uses pseudonode “79” when sending to D, return traffic to E1 might go via R1, and failSlide15

Problem: What if E1’s link to R1 dies?

November 201315

R1

R2

R3

Rest of campus

R4

D

E1

E2

E3

E4

E5

E6

How could R3 detect this, even if there was something sensible for it to do?Slide16

Solutions?Ignore the problem: “hardly ever happens”

Have R1 notice somehow and tunnel traffic for E1 to R2 or R3 (even though R1 is still connected to “79” for other endnodes)Don’t use pseudonode, and have distant RBs learn multiple addresses for each E, as inE1 reachable via R2 (timestamp), and R3 (timestamp)E2 reachable via R1 (timestamp), R2 (timestamp), and R3 (timestamp)??? Any other possibilities?

November 2013

16Slide17

Picture for “learn multiple attachments for S”

November 201317

hypervisor

VM

VM

VM

VM

VM

R1

R2

R3

Rest of campus

R4

D

S

R4 keeps, for S

S located at

R1/ last seen T1

R2/ last seen T2

R3/last seen T3

And R1, R2, R3 don’t use “79”, they use their own nicknamesSlide18

Another problem with pseudonode: RPF check on multicast

November 201318Slide19

Multidestination frames, pseudonode nickname, and the RPF check

pseudonode

R1

R2

R3

R8

17

136

38

79

For each tree, “79” will only be

attached to one of {R1, R2, R3}

If R2 injects on that tree,

R8 will drop because of

RPF check

S1

S2

S3

19

November 2013Slide20

Potential solutions (assuming R3 not attached to any tree, but R1 and R2 are)

R3 refuses to use link(s) to “79” at all (disables its port)R3 continues to work, but only for unicast; if a packet must be multidestination from “79”, R3 tunnels to R1 or R2On multicast, R3 sends, but uses “R3” for ingress instead of “79”Use a bit in the TRILL header to mean “I’m in multiple places” (turn off MAC flip-flop panic, or keep multiple RB attachments)

Let’s look at pros and cons of each approach

November 2013

20Slide21

R3 disables the port completely

Pro: simpleCon: very sadNovember 201321Slide22

R3 tunnels multidestination to R1 or R2

Pro:SimpleDoesn’t change anyone except {R1, R2, R3}Cons: Maybe some silicon doesn’t support this?Extra hops

November 2013

22Slide23

R3 uses its own nickname for multidestination ingress

ProsSimpleDoesn’t change anyone except {R1, R2, R3}Cons(distant) R8 sometimes learns (S,79) (on unicast), sometimes (S,R3) (multidestination through R3)

November 2013

23Slide24

No pseudonode; learn multiple attachments

Change (all) edge RBs to cope with E being attached to multiple places (R1, R2, and R3)Keeps separate timestamp for each learned attachmentWhen sending to S, choose any (say nearest, or load split based on flows) of R1, R2, R3November 2013

24Slide25

Picture for “learn multiple attachments for S”

November 201325

hypervisor

VM

VM

VM

VM

VM

R1

R2

R3

Rest of campus

R4

D

S

R4 keeps, for S

S located at

R1/ last seen T1

R2/ last seen T2

R3/last seen T3

And R1, R2, R3 don’t use “79”, they use their own nicknamesSlide26

Learn Multiple attachments

ProsLess, or no, configuration requiredAllows {R1, R2, R3} to use any multicast treeNo problem if E1’s uplink to R1 failsConsRequires edge RBs to keep track of multiple attachment points for endnodes; and separately time them out; disable flip-flop panic

November 2013

26Slide27

What’s the “affinity” thing?

It’s a new TLV in IS-IS that says “for these trees, put this nickname as a child of me”November 201327Slide28

What does it do and what doesn’t it do?

pseudonode

R1

R2

R3

R8

79

S1

S2

S3

28

November 2013

Make 79 my child

in tree #3

Make 79 my child

in tree #2Slide29

What does it do?If you have at least as many trees as up-links…

And you configure everything properly…And all RBs in the campus implement this new thing…You will be assured that each of the uplinks has at least one tree to send onNovember 2013

29Slide30

What does it not do?

Still have the problems mentioned earlier in the presentation if fewer trees than uplinksif misconfigurationIf one of the uplinks from some set of endnodes failsRequires as many trees as active uplinks. Each tree requires significant state and computationAnd note: It requires all RBs in the campus to understand this new TLV and compute trees accordingly

November 2013

30Slide31

Questions from meHow many trees do people want?

How many uplinks do people want?Do we care if an RB can’t use all the campus trees?Do we care about misconfiguration?Are we worried about the problem of some uplinks failing?November 2013

31Slide32

ConclusionsLots of different aspects, and nothing addresses all of them at the

same time…we can do mix and matchNo perfect solutionNovember 2013

32