128
TRILL Tutorial Transparent Interconnection of Lots of Links Donald E. Eastlake 3 rd Co-Chair, TRILL Working Group Principal Engineer, Huawei [email protected] October 2013 1 RIPE TRILL Tutorial

TRILL Tutorial - RIPE 67 · TRILL Tutorial Transparent Interconnection of Lots of Links Donald E. Eastlake 3rd ... flooding multi-destination frames limiting bandwidth B1 B2 B3 B4

Embed Size (px)

Citation preview

TRILL Tutorial Transparent Interconnection of Lots of Links

Donald E. Eastlake 3rd

Co-Chair, TRILL Working Group Principal Engineer, Huawei

[email protected]

October 2013

1

RIP

E T

RIL

L T

utorial

Donald E. Eastlake, 3rd ¢  Principal Engineer at Huawei Technologies

�  Previously with Cisco Systems and before that with Motorola Laboratories.

¢  Co-Chair of the IETF TRILL Working Group �  Chair of the IETF PPPEXT Working Group �  Chair of the IEEE 802.11ak Task Group

¢  Author of 61 IETF RFCs.

October 2013

2

RIP

E T

RIL

L T

utorial

Note: This tutorial represents my personal views, not those of the TRILL WG or Huawei. It is a high level technical overview. It is not practical to include all the details in the specification documents in a presentation of this length.

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

3

WHAT IS TRILL? October 2013

4

RIP

E T

RIL

L T

utorial

¢ A Compatible Protocol �  Attached end nodes just think it is Ethernet.

¢ The more bridges you convert to TRILL switches, the better your network’s stability and bandwidth utilization.

¢ Terminates Spanning Tree Protocols

What is TRILL? October 2013

5

RIP

E T

RIL

L T

utorial

¢ Basically a simple idea: �  Encapsulate native frames in a transport header

providing a hop count �  Route the encapsulated frames using IS-IS �  Decapsulate native frames before delivery

¢ Provides �  Least cost paths with zero/minimal configuration �  Equal Cost Multi-Pathing of unicast �  Multi-paths of multi-destination

What is TRILL? ¢ TRansparent Interconnection of Lots of Links

�  TRILL WG Charter ¢  http://www.ietf.org/dyn/wg/charter/trill-charter.html

�  Standardized by IETF TRILL Working Group: ¢  Donald E. Eastlake 3rd (Huawei), Co-Chair ¢  Erik Nordmark (Cisco), Co-Chair ¢  Jon Hudson (Brocade), Secretary

¢ TRILL Switch / RBridge (Routing Bridge) �  Device that implements TRILL

¢ TRILL/RBridge Campus – �  A network of RBridges, links, and any intervening

bridges, that connects end stations and layer 3 routers.

October 2013

6

RIP

E T

RIL

L T

utorial

A TRILL CAMPUS

¢  End stations and Layer 3 routers are connected to TRILL switches by Ethernet.

¢  TRILL switches can be connected to each other with arbitrary technology.

¢  In both cases, the connection can be a bridged LAN.

October 2013

7

RIP

E T

RIL

L T

utorial

=  end  sta)on    =  Ethernet    

=  Any          technology  

RB1  

RB2  

L3  Router  

RB3  

L3  Router  

RB4  

RB5  

Bridge  2  

Bridge  3  

Bridge  1  

RB6  

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

8

UNICAST LEAST COST PATHS October 2013

9

=  end  sta)on  

 B2  B3  

B1  

A three bridge network

RIP

E T

RIL

L T

utorial

UNICAST LEAST COST PATHS October 2013

10

Spanning tree eliminates loops by disabling ports

=  end  sta)on  

 B2  B3  

B1  

RIP

E T

RIL

L T

utorial

UNICAST LEAST COST PATHS October 2013

11

RB2  

=  end  sta)on  

RB3  

RB1  

A three RBridge network: better performance using all facilities

RIP

E T

RIL

L T

utorial

UNICAST MULTI-PATHING October 2013

12

B2  

=  end  sta)on  

B4  

B3  

B1  

Bridges limit traffic to one path

RIP

E T

RIL

L T

utorial

B5  

UNICAST MULTI-PATHING October 2013

13

RB2  

=  end  sta)on  

RB4  

RB3  

RB1  

RBridges support multi-path for higher throughput

RIP

E T

RIL

L T

utorial

RB5  

Multi-Pathing (Unicast) October 2013

14

=  end  sta)on  

B3  

Bridges limit traffic to one path

RIP

E T

RIL

L T

utorial

B2   B4  B1  

B5   B6   B7  

Multi-Pathing (Unicast) October 2013

15 RBridges support multi-pathing for higher throughput

RIP

E T

RIL

L T

utorial

RB3  RB2   RB4  RB1  

RB5   RB6   RB7  

=  end  sta)on  

Multi-Pathing (Multi-destination) O

ctober 2013

16

Spanning tree yields a single bi-directional tree for flooding multi-destination frames limiting bandwidth

RIP

E T

RIL

L T

utorial

B3  B2   B4  B1  

B5   B6   B7  

=  end  sta)on  

Multi-Pathing (Multi-destination) O

ctober 2013

17

RBridges support multiple distribution trees. The encapsulating RBridge chooses which to use. RB2 can split multi-destination traffic over three trees.

RIP

E T

RIL

L T

utorial

RB3  RB2   RB4  RB1  

RB5   RB6   RB7  

=  end  sta)on  

Routing versus Bridging ¢ Routing only sends data out a port when it

receives control messages on that port indicating this is safe and routing has a TTL for safety. �  If control messages are not received or not processed,

it “fails safe” and does not forward data.

¢ Bridging (Spanning Tree Protocol) forwards data out all ports (except the one where the data was received) unless it receives control messages on that port indicate this is unsafe. There is no TTL. �  If control messages are not received or not processed,

it “fails unsafe”, forwards data, and can melt down due to data loops.

October 2013

18

RIP

E T

RIL

L T

utorial

TRILL Features October 2013

19

RIP

E T

RIL

L T

utorial

Bridges Routers TRILL Switch

¢ Transparency ¢ Plug & Play ¢ Virtual LANs

�  Multi-tenant support

¢ Frame Priorities ¢ Data Center Bridging ¢ Virtualization Support

¢ Multi-pathing ¢ Optimal Paths ¢ Rapid Fail Over ¢ The safety of a TTL

�  Implemented in data plane

¢ Extensions

MORE TRILL FEATURES ¢  Breaks up and minimizes spanning tree for greater

stability. ¢  Unicast forwarding tables at transit RBridges scale

with the number of RBridges, not the number of end stations.

¢  Transit RBridges do not learn end station addresses.

¢  Compatible with existing IP Routers. TRILL switches are as transparent to IP routers as bridges are.

¢  Support for VLANs, frame priorities, and 24-bit data labels (“16 million VLANs”).

October 2013

20

RIP

E T

RIL

L T

utorial

MORE TRILL FEATURES ¢  MTU feature and jumbo frame support including

jumbo routing frames. ¢  Has a poem.

�  The only other bridging or routing protocol with a poem is Spanning Tree (see Algorhyme).

October 2013

21

RIP

E T

RIL

L T

utorial

Algorhyme V2 (TRILL and RBridges)

¢  I hope that we shall one day see ¢  A graph more lovely than a tree. ¢  A graph to boost efficiency ¢  While still configuration-free. ¢  A network where RBridges can ¢  Route packets to their target LAN. ¢  The paths they find, to our elation, ¢  Are least cost paths to destination! ¢  With packet hop counts we now see, ¢  The network need not be loop-free! ¢  RBridges work transparently, ¢  Without a common spanning tree. ¢  - By Ray Perlner

(Radia Perlman’s son)

October 2013

22

RIP

E T

RIL

L T

utorial

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

23

Inspired by a Real Life Incident

¢  In November 2002, Beth Israel Deaconess Hospital in Boston, Massachusetts, had a total network meltdown: �  Their network took four days of heroic efforts to be

restored to an operational state! In the mean time the staff was reduced to using paper and pencil.

�  Beth Israel Deaconess had grown by acquiring various clinics and just plugged all those bridged networks together.

�  The article in Boston’s primary newspaper specifically mentioned “Spanning Tree Protocol” as the problem!

�  Radia Perlman, who invented spanning tree over 25 years ago, decided it was time to come up with a better way.

October 2013

24

RIP

E T

RIL

L T

utorial

TRILL HISTORY UP TO 2008 l  1964: Packet switching/routing invented by Paul Baran. l  1973: Ethernet invented by Robert Metcalfe l  1979: Link State Routing invented by John McQuillan. l  1985: Radia Perlman invents the Spanning Tree Protocol. l  1987: DECnet Phase V / IS-IS designed by Radia Perlman. l  2002: Beth Israel Deaconess Hospital network in Boston

melts down due to deficiencies in the Spanning Tree Protocol.

l  2004: TRILL presented by inventor Radia Perlman at Infocom. l  2005: TRILL presented to IEEE 802 by Radia Perlman, rejected. l  2005: TRILL presented to IETF which Charters the TRILL

Working Group. l  2008: MTU problem delays protocol while fix is incorporated.

October 2013

25

RIP

E T

RIL

L T

utorial

TRILL IN 2009/2011 l  2009: RFC 5556 “TRILL: Problem and Applicability

Statement” l  2009: TRILL Protocol passed up to IESG for Approval. l  2010: TRILL approved IETF Standard (2010-03-15)

l  Ethertypes, Multicast addresses & NLPID assigned

l  2010: Successful TRILL control plane interop at UNH IOL

l  2011: TRILL Protocol base document set: l  RFC 6325: “RBridges: TRILL Base Protocol Specification”

l  RFC 6326: “TRILL Use of IS-IS”

l  RFC 6327: “RBridges: Adjacency”

l  RFC 6361: “TRILL over PPP”

l  RFC 6439: “RBridges: Appointed Forwarders”

l  2011: TRILL Working Group Re-Chartered to do further development of the TRILL protocol

October 2013

26

RIP

E T

RIL

L T

utorial

TRILL IN 2012/2013 l  2012: Second Successful TRILL control plane interop at

UNH IOL l  2013: Additional TRILL documents published:

l  RFC 6447: FCoE (Fibre Channel over Ethernet) over TRILL

l  RFC 6850: RBridge MIB

l  RFC 6905: TRILL OAM Requirements

l  2013: Third TRILL interop for control and data plane at UNH IOL week of May 20th

l  2013: TRILL Working Group Re-Chartered to do further development of the TRILL protocol

October 2013

27

RIP

E T

RIL

L T

utorial

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

28

Two TRILL Examples 1.  “Acme Power Plant” Process Control

�  Large process control commonly uses Ethernet �  Some process control protocols interpret network

interruption >1 second as equipment failure �  Even Rapid Spanning Tree Protocol can take >3

second to recover from root bridge failure �  Core RBridges reduce/eliminate spanning tree

2.  “Acme Data Center” �  1:1 to N:1 Backup Improvement

October 2013

RIP

E T

RIL

L T

utorial

29

A

CB CB

A  =  Access  Bridge  GB  =  aGregga)on                        Bridge  CB  =  Core  Bridge  

GB GB GB GB

A A A A A A A A A

GB GB

A A A A A

Rapid Spanning Tree Protocol

Domain

1. Acme Power Plant

Bridged Process Control Network

October 2013

30

RIP

E T

RIL

L T

utorial

A

A A

A

CB CB

A  =  Access  Bridge  GB  =  aGregga)on                        Bridge  CB  =  Core  Bridge  

GB GB GB GB

A A A A A A A A A

GB GB

A A A A A

Rapid Spanning Tree Protocol

Domain

October 2013

31

RIP

E T

RIL

L T

utorial

A

A A

1. Acme Power Plant

Spanning Tree

Eliminates Loops by

Disabling Ports

A  =  Access  Bridge  GB  =  aGregga)on                        Bridge  CRB  =  Core  RBridge  

RSTP Domain

1. Acme Power Plant

Process Control Network

with RBridge Core breaking up spanning tree

RSTP Domain

RSTP Domain

October 2013

32

RIP

E T

RIL

L T

utorial

A

GB GB GB GB

A A A A A A A A A A A

CRB CRB

GB GB

A A A A A A

A  =  Access  Bridge  GRB  =  aGregga)on                        RBridge  

GRB GRB GRB GRB

GRB GRB

1. Acme Power Plant

Process Control Network

with RBridge Mesh eliminating spanning tree

October 2013

33

RIP

E T

RIL

L T

utorial

A A A A A A

A A A A A A A A A A A A

Dist. Bridge

B B B B B

2. Acme Data Center Network

with Bridges

B B B B B B B B B B

Wan Router

Dist. Bridge

Wan Router

B  =  Head  of  Rack                  Bridge  

1:1 Backup Distribution Bridges must be able to handle 100% of the load. Only 1 path available between any pair of “B”s.

October 2013

34

RIP

E T

RIL

L T

utorial

Dist. RBridge

H H H H H

2. Acme Data Center Network with RBridges

H H H H H H H H H H

Wan Router

Dist. RBridge

Wan Router

Dist. RBridge

Dist. RBridge

Dist. RBridge

H  =  Head  of  Rack                  RBridge  

N:1 Backup Distribution Bridges need to handle only 25% of the load. Multiple available paths between “H”s.

October 2013

35

RIP

E T

RIL

L T

utorial

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

36

TRILL Packet Headers ¢ TRILL Data packets between RBridges have a

local link header and TRILL Header. �  The local link header on Ethernet is addressed from

the local source RBridge to the next hop RBridge for known unicast frames or to the All-RBridges multicast address for multi-destination frames.

�  The TRILL Header specifies the first/ingress RBridge and either the last/egress RBridge for known unicast frames or the distribution tree for multi-destination frames.

October 2013

37

RIP

E T

RIL

L T

utorial

TRILL Packet Headers ¢ Reasons for TRILL Header:

�  Provides a hop count to reduce loop issues �  To hide the original source address to avoid confusing

any bridges present as might happen if multi-pathing were in use

�  To direct unicast frames toward the egress RBridge so that forwarding tables in transit RBridges need only be sized with the number of RBridges in the campus, not the number of end stations

�  To provide a separate outer VLAN tag, when necessary, for forwarding traffic between RBridges, independent of the original VLAN of the frame

October 2013

38

RIP

E T

RIL

L T

utorial

TRILL Packet Headers ¢ TRILL Header

�  Nicknames – auto-configured 16-bit campus local names for RBridges

�  V = Version (2 bits) �  R = Reserved (2 bits) �  M = Multi-Destination (1 bit) �  ExtLng = Length of TRILL Header Extensions �  Hop = Hop Limit (6 bits)

October 2013

39

TRILL Ethertype

Egress RBridge Nickname

Hop ExtLng V M R

Ingress RBridge Nickname

RIP

E T

RIL

L T

utorial

TRILL Over Ethernet October 2013

40

RIP

E T

RIL

L T

utorial

RBridge One

RBridge Two

Ethernet Cloud

DA FCS Payload Frame (DA, SA, VLAN/Tenant, Data) SA TRILL

Header VLAN*

Ethernet Link Transport Header

Original Frame with VLAN/Tenant Label

* Link Transport VLAN only needed for VLAN sensitive link.

TRILL Ethertype

0x22F3

RBridge Three

DA FCS IS-IS PDU SA VLAN* L2-IS-IS Ethertype

0x22F4

Data:

IS-IS:

TRILL Over PPP October 2013

41

RIP

E T

RIL

L T

utorial

PPP FCS

Payload Frame (DA, SA, VLAN/Tenant, Data)

Original Frame with VLAN/Tenant Label PPP Link

Transport Header

PPP TRILL Data Protocol

0x005D

RBridge One

RBridge Two

PPP

TRILL Header

PPP FCS IS-IS PDU

PPP TRILL IS-IS Protocol

0x405D

Data:

IS-IS:

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

42

ETHERNET UNICAST PROCESSING EXAMPLE

¢ Step-by-Step on Following Slides:

�  Input Port Processing �  TRILL Unicast Ingress �  TRILL Unicast Transit �  TRILL Unicast Egress �  Output Port Processing

October 2013

RIP

E T

RIL

L T

utorial

43

INPUT PORT PROCESSING October 2013

44

RIP

E T

RIL

L T

utorial

Dest MAC FCS Data Src MAC

VLAN

Input  Na)ve  Frame  on  link:  

Dest MAC FCS Data Src MAC VLAN

¢ Detailed example of unicast frame TRILL routing on an Ethernet link

�  Input port adds VLAN-ID and priority if frame untagged

Input  Na)ve  Frame  aCer  input  port:  

TRILL UNICAST INGRESS October 2013

45

RIP

E T

RIL

L T

utorial

Dest MAC FCS Data Src MAC VLAN

Input  Na)ve  Frame:  

1 Outer VLAN tag is a transport artifact and only needed if RBridges are connected by a bridged LAN or carrier Ethernet requiring a VLAN tag or the like.

Payload Frame

Original  Frame  with  VLAN  or  Tenant  ID  

TRILL Header Egress Ingress

Ingressing  RBridge  

Look Up Egress, Next Hop DA & Output Port

TTL=n DA

New FCS SA VLAN1

Link  Transport  Header  

Output  TRILL  Data  Frame:  

TRILL UNICAST TRANSIT October 2013

46

RIP

E T

RIL

L T

utorial

1 Input and output Outer VLANs can differ. The true VLAN or Tenant ID of the data is inside the payload frame. Outer VLAN is only needed if link is VLAN sensitive.

Payload Frame TRILL Hdr Egress Ingress

TTL=n-1

DA FCS Payload Frame SA TRILL Hdr VLAN1

Incoming  Link  Transport  Header  

Egress Ingress

Input  TRILL  Data  Frame:  TTL=n

Transit  RBridge  

DA New FCS SA VLAN1

Outgoing  Link  Transport  Header  

Output  TRILL  Data  Frame:  

Look Up Next DA & Output Port

TRILL UNICAST EGRESS October 2013

47

RIP

E T

RIL

L T

utorial

DA FCS Payload Frame SA TRILL Hdr VLAN1

Link  Transport  Header  

Egress Ingress

Input  TRILL  Data  Frame:  

Egressing  RBridge  

Dest MAC Data Src MAC VLAN2

1 Outer VLAN only needed if RBridges are connected by a bridged LAN or carrier Ethernet requiring a VLAN tag or the like. 2 Final native frame VLAN tag may be omitted depending on RBridge output port configuration.

Output  Na)ve  Frame:  

New FCS

Look  Up  Output  Port  

OUTPUT PORT PROCESSING October 2013

48

RIP

E T

RIL

L T

utorial

Dest MAC Data Src MAC VLAN

Output  Na)ve  Frame  before  output  port:  

New FCS

¢ Output port may be configured to output untagged and will do so by default for the port VLAN ID

Dest MAC Data Src MAC New FCS

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

49

FINE GRAINED LABELING ¢ Fine Grained Labeling (FGL) provides extended

24-bit label (or tenant ID) as the inner data label. ¢  Ingress/egress TRILL switches that support FGL:

�  Map native frame VLAN and input port into a fine grained label on ingress and ¢ do the reverse mapping on egress.

�  Remember the priority and DEI of native frames on ingress and restores them on egress.

¢ Fine Grained Label TRILL switches are a superset of a base protocol TRILL switches. They support VLANs as in the base standard on a port if not configured to do Fine Grained Labeling.

October 2013

RIP

E T

RIL

L T

utorial

50

FINE GRAINED LABELING October 2013

RIP

E T

RIL

L T

utorial

51

Link Trailer

Payload Frame Data

Link Header

TRILL Header

Base  protocol  VLAN  Labeling:  

¢ See: �  https://datatracker.ietf.org/doc/draft-ietf-trill-fine-labeling/

DA SA 8100

Data Label

Pri, DEI VID

TRILL Header

DA SA

Link Trailer

Payload Frame Data

Link Header

Fine  Grained  Labeling:  

893B Pri, DEI Upper 893B

Pri, DEI Lower

Ingress/Egress Priority

Transit Priority

24-Bit Tenant ID

Payload

FINE GRAINED LABELING MIGRATION ¢  An initial deployment of VLAN labeling TRILL switches

can be smoothly extended to Fine Grained Labeling

October 2013

RIP

E T

RIL

L T

utorial

52

Fine Grained Labeling TRILL Switches FGL TR

4

FGL TR 5

FGL TR 6

FGL Labeled Path

VLAN Labeling TRILL Switches

VL TR 1 VL TR 2

VL TR 3

VLAN Labeled Path

FINE GRAINED LABELING MIGRATION ¢  Some VL TRILL switches are convertible to FGL-safe

RBridges (FGL transit only) with a software upgrade.

October 2013

RIP

E T

RIL

L T

utorial

53

Fine Grained Labeling TRILL Switches

FGL TR 4

FGL TR 5

FGL TR 6

FGL Labeled Path

FGL TR 1 FGL TR

2

FGL TR 3

VLAN Labeled Path

FINE GRAINED LABELING MIGRATION ¢  Some VL TRILL switches are convertible to FGL-safe

RBridges (FGL transit only) with a software upgrade. ¢  Even if not upgradable, they can generally be connected.

October 2013

RIP

E T

RIL

L T

utorial

54

Fine Grained Labeling TRILL Switches FGL TR

4

FGL TR 5

FGL TR 6

FGL Labeled Path

VL TR 1 VL TR 2

VL TR 3

VLAN Labeled Path

VLAN Labeling TRILL Switches

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Encapsulation

and Header ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

55

How TRILL Works ¢ RBridges find each other by exchanging TRILL

IS-IS Hello frames. �  Like all TRILL IS-IS frames, TRILL Hellos are sent

on Ethernet to the multicast address All-IS-IS-RBridges. They are transparently forwarded by bridges, dropped by end stations including routers, and are processed (but not forwarded) by RBridges.

�  TRILL Hellos are different from Layer 3 IS-IS LAN Hellos because they are small, unpadded, and support fragmentation of some information. ¢  Separate MTU-probe and MTU-ack IS-IS messages are

available for MTU testing and determination. �  Using the information exchanged in the Hellos, the

RBridges on each link elect the Designated RBridge for that link (the link could be a bridged LAN).

October 2013

56

RIP

E T

RIL

L T

utorial

How TRILL Works ¢ TRILL Hellos are unpadded and a maximum of

1470 bytes long to be sure RBridges can see each other so you don’t get two Designated RBridges on the same link.

October 2013

57

RIP

E T

RIL

L T

utorial

RBridge One

RBridge Two

Low MTU Dev

TRILL Cloud

How TRILL Works ¢ RBridges use the IS-IS reliable flooding protocol

so that each RBridge has a copy of the global “link state” database. �  The RBridge link state includes the campus topology

and link cost but also other information. Information such as VLAN/FGL connectivity, multicast listeners and multicast router attachment, claimed nickname(s), ingress-to-egress options supported, and the like.

�  The link state database is sufficient for each RBridge to independently and without further messages calculate optimal point-to-point paths for known unicast frames and the same distribution trees for multi-destination frames.

October 2013

58

RIP

E T

RIL

L T

utorial

How TRILL Works ¢ The Designated RBridge specifies the Appointed

Forwarder for each VLAN on the link (which may be itself) and the Designated VLAN for inter-RBridge communication.

¢ The Appointed Forwarder for VLAN-x on a link handles all native frames to/from that link in that VLAN. It is only significant if there are end station on the link. �  It encapsulates frames from the link into a TRILL

Data frame. This is the ingress RBridge function. �  It decapsulates native frames destined for the link

from TRILL Data frames. This is the egress RBridge function.

October 2013

59

RIP

E T

RIL

L T

utorial

Why Designated VLAN? ¢ Ethernet links between RBridges have a

Designated VLAN for inter-RBridge traffic. It is dictated by the Designated RBridge on the Link.

¢ For Point-to-Point links, usually no outer VLAN tag is needed on TRILL Data frames. For links configured as P2P, there is no Designated VLAN.

¢ However, there are cases where an outer VLAN tag with the designated VLAN ID is essential: �  Carrier Ethernet facilities on the link restrict VLAN. �  The link is actually a bridged LAN with VLAN

restrictions. �  The RBridge ports are configured to restrict VLANs.

October 2013

60

RIP

E T

RIL

L T

utorial

How TRILL Works ¢ TRILL Data packets that have known unicast

ultimate destinations are forwarded RBridge hop by RBridge hop toward the egress RBridge.

¢ TRILL Data packets that are multi-destination frames (broadcast, multicast, and unknown destination unicast) are forwarded on a distribution tree.

October 2013

61

RIP

E T

RIL

L T

utorial

MULTI-DESTINATION TRAFFIC ¢ Multi-destination data is sent on a bi-directional

distribution tree: �  The root of a tree is a TRILL switch or a link (pseudo-

node) determined by a separate election and represented by nickname.

�  The ingress RBridge picks the tree, puts the tree root nickname in the “egress nickname” slot, and sets the M bit in the TRILL Header.

¢ All the TRILL switches in a campus calculate the same trees.

¢ All trees reach every TRILL switch in the campus.

October 2013

RIP

E T

RIL

L T

utorial

62

MULTI-DESTINATION TRAFFIC ¢ Multi-destination TRILL Data frames are more

dangerous than unicast because they can multiply at fork points in the distribution tree. �  So, in addition to the Hop Count, a Reverse Path

Forwarding Check is performed. This discards the frame if, for the ingress and tree, it seems to be arriving on the wrong port.

�  To reduce the RPFC state, ingress RBridges can announce which tree or trees they will use.

October 2013

RIP

E T

RIL

L T

utorial

63

MULTI-DESTINATION TRAFFIC ¢ As a TRILL Data frame is propagated on a

distribution tree, its distribution can be pruned by VLAN and by multicast group since it is not useful to send a frame down a tree branch if �  There are no end stations downstream in the VLAN

of the frame, or �  The frame is multicast and there is no multicast

listener or multicast router downstream.

October 2013

RIP

E T

RIL

L T

utorial

64

TRILL NICKNAMES ¢ TRILL switches are identified by 6-byte IS-IS

System ID and by 2-bytes nicknames. ¢ Nicknames can be configured but by default are

auto-allocated. In case of collisions, the lower priority RBridge must select a new nickname.

¢ Nicknames: �  Saves space in headers. �  An RBridge can hold more than one nickname so that

¢  It can be the root of more than one different distribution tree.

¢  May be used to distinguish frames following traffic engineered routes versus least cost routes.

October 2013

65

RIP

E T

RIL

L T

utorial

Why IS-IS For TRILL? ¢ The IS-IS (Intermediate System to Intermediate

System) link state routing protocol was chosen for TRILL over OSPF (Open Shortest Path First), the only other plausible candidate, for the following reasons: �  IS-IS runs directly at Layer 2. Thus no IP addresses

are needed, as they are for OSPF, and IS-IS can run with zero configuration.

�  IS-IS uses a TLV (type, length, value) encoding which makes it easy to define and carry new types of data.

October 2013

66

RIP

E T

RIL

L T

utorial

RBRIDGES & ACCESS LINKS ¢ You can have multiple TRILL switches on a link

with one or more end stations. ¢ The elected Designated RBridge is in charge of

the link and by default handles end station traffic. But to load split, it can assign end station VLANs to other RBridges on the link.

October 2013

67

RIP

E T

RIL

L T

utorial

RB1   RB2   RB3  

B1   B2   B3  

TRILL  Cloud  

MAC ADDRESS LEARNING ¢ By IS-IS all TRILL switches in the campus learn

about and can reach each other but what about reaching end station MAC addresses? �  By default, TRILL switches at the edge (directly

connected to end stations) learn attached VLAN/MAC addresses from data as bridges do.

�  Optionally, MAC addresses can be passed through the control plane.

�  MAC addresses can be statically configured or learned from Layer 2 registration protocols such as Wi-Fi association or 802.1X.

�  Transit TRILL switches do not learn end station addresses.

October 2013

RIP

E T

RIL

L T

utorial

68

MAC ADDRESS LEARNING ¢ Data Plane Learning

�  From Locally Received Native Frames ¢  { VLAN, Source Address, Port }

�  From Encapsulated Native Frames ¢  { Inner VLAN, Inner Source Address,

Ingress RBridge } ¢  The Ingress RBridge learned is used as egress on sending

¢ Via 1.  Optional End Station Address Distribution

Information (ESADI) control plane protocol 2.  Via Layer-2 Registration protocol(s) 3.  By manual configuration

¢  { VLAN, Address, RBridge nickname }

October 2013

69

RIP

E T

RIL

L T

utorial

ESADI ¢ The optional End Station Address Distribution

Information (ESADI) protocol: �  Provides a VLAN/tenant scoped way for an RBridge

to distribute control plane information about attached End Stations to other RBridges.

�  Highly efficient transmission because information is tunneled through transit RBridges encapsulated as if it was normal data.

�  Intended for use for attachment data that is either secure or that changes rapidly. ¢  The source RBridge selects which addresses it wants to

distribute through ESADI. ¢  There is no particular advantage in using ESADI for large

amounts of information learned from the data plane.

October 2013

RIP

E T

RIL

L T

utorial

70

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

71

Peering: Are TRILL Switches Bridges or Routers? ¢ Really, they are a new species, between bridges

and routers:

October 2013

72

Routers (plus servers and other end stations)

TRILL Switches

Bridges

Hubs/Repeaters

RIP

E T

RIL

L T

utorial

Peering ¢ Direct Connection

October 2013

RIP

E T

RIL

L T

utorial

73

Device Device

Peers

Connection

Peering ¢ Former Situation

October 2013

RIP

E T

RIL

L T

utorial

74

Router /End

Station

Router /End

Station

Bridge Bridge(s)

Peers

Non-Peers

Peering ¢ Former Situation

�  Or perhaps

October 2013

RIP

E T

RIL

L T

utorial

75

Router /End

Station

Customer Bridge

Customer Bridge

Provider Bridge(s)

Peers

Peers

Non-Peers

Customer Bridge

Provider Bridge(s)

Router /End

Station

Peers

Peers Peers

Peering ¢ With RBridges

October 2013

RIP

E T

RIL

L T

utorial

76

Router /End

Station

Router /End

Station

TRILL Switch

TRILL Switch

Bridge(s)

TRILL Switch

Bridge(s)

Non-Peers

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

77

TRILL Support of DCB ¢ The goal is “loss-less” Ethernet. That is,

no loss due to queue overflow

¢ Basic Ethernet PAUSE “works”, but is a very blunt instrument �  Interference with loss dependent flow control

such as TCP �  Blocking of high priority control frames �  Congestion spreading

October 2013

RIP

E T

RIL

L T

utorial

78

TRILL Support of DCB ¢ “Data Center Ethernet”

1.  Priority Based Flow Control ¢  Per Priority PAUSE

2.  Enhanced Transmission Selection

3.  Congestion Notification

4.  TRILL

October 2013

RIP

E T

RIL

L T

utorial

79

Data Center Bridging

TRILL Support of DCB ¢ Answer 1:

�  Consider different frame priorities as different pipes ¢ 802.1Qbb: Separate PAUSE per priority ¢ 802.1Qaz: Ability to allocate bandwidth between

these pipes

¢ Answer 2: �  Provide back pressure on the origin of congesting

flows ¢ 802.1Qau: Congestion Notification (CN)

¢  802.1Qbb is more commonly implemented and you would need it for surges in any case.

October 2013

RIP

E T

RIL

L T

utorial

80

TRILL Support of DCB ¢ Answer 1: Consider different frame priorities as

different pipes �  802.1Qbb: Separate PAUSE per priority

¢  Don’t enable for priorities where urgent control frames are sent or where loss dependent flow control is in use

¢  Enable for priorities where loss-less flow is more important.

�  802.1az: Ability to allocate bandwidth between these pipes ¢  Highest priority frames not restricted ¢  Remainder of bandwidth can be carved up and frames can

be selected in preference to “higher priority” frames if they have not used the allocation for their pipe.

�  The above are implemented in port queuing. Can be applied to bridges, RBridges, routers, end stations.

October 2013

RIP

E T

RIL

L T

utorial

81

TRILL Support of DCB ¢ For purposes of Data Center Bridging, all nodes

with queues are considered peers:

October 2013

RIP

E T

RIL

L T

utorial

82

Router /End

Station

RBridge

Bridge

RBridge

Bridge

Peers Peers

Peers

Router /End

Station

TRILL Support of DCB ¢ Answer 2: Congestion Notification (CN): Provide

back pressure on the origin of congesting flows �  When queue depth exceeds a bound, send a

Congestion Notification Message CNM back to source MAC address in the congesting frame’s VLAN

�  Enabled per priority. (CNM itself usually priority 6.) �  Frames can be labeled with a CN tag for more fine

grained flows �  Mostly implemented in port logic

¢  In TRILL a CN tag, if present, goes inside the encapsulated frame and a CNM is just a native frame, except for one corner case.

October 2013

RIP

E T

RIL

L T

utorial

83

TRILL Support of DCB

¢ However, RBridges have to handle CNMs generated by TRILL ignorant bridges between RBridges. Such a CNM will be initially addressed to the previous hop RBridge, not the original end station.

October 2013

RIP

E T

RIL

L T

utorial

84

FCS Original Payload

TRILL Header

Link Header

Payload

Orig. DA

Orig. SA

VLAN /FGL

CN Tag

TRILL Support of DCB

¢ Previous hop RBridge has to adjust the CNM so that it goes back to the origin end station.

¢ Note: All of the Data Center Bridging facilities depend on appropriate engineering, limited delay bandwidth product, etc., to actually provide “loss-less” service.

October 2013

RIP

E T

RIL

L T

utorial

85

RBridge RBridge Origin Bridge(s)

CNM Adjusted CNM

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

86

TRILL OAM ¢  SNMP

�  Used primarily to read the status and configuration of the TRILL switches but can be used to set configuration parameters.

¢  BFD over TRILL �  Bound to TRILL port at the transmitting TRILL router.

Primarily used for rapid one-hop failure detection but multi-hop supported.

¢  TRILL OAM �  Operates between TRILL switches and is focused on

testing TRILL Data paths (both fault and performance management).

March

2013 T

RIL

L - M

EN

OG

12

87

OAM DOCUMENTS STATUS ¢ SNMP

�  RFC 6850, “Definitions of Managed Objects for RBridges” (MIB)

¢ BFD over TRILL (data center) �  In RFC Editor’s queue:

¢ draft-ietf-trill-rbridge-bfd-07.txt ¢ draft-ietf-trill-rbridge-channel-08.txt

¢ TRILL OAM (carrier grade) �  RFC 6905: TRILL OAM Requirements �  draft-ietf-trill-oam-framework-07.txt (Framework) �  draft-ietf-trill-oam-fm-00.txt (Fault Management) �  draft-ietf-trill-loss-delay-00.txt (Performance)

October 2013

RIP

E T

RIL

L T

utorial

88

TRILL BFD PACKET FORMAT ¢ The BFD standard does not specify an envelope.

One must be specified for each technology using BFD.

¢ The TRILL BFD envelope uses the RBridge Channel facility, a general method for sending typed messages between TRILL routers.

March

2013 T

RIL

L - M

EN

OG

12

89

Link Header

TRILL Header

TRILL Channel Header

BFD Payload

Link Trailer

Specifies BFD

Link Technology Dependent

TRILL OAM PACKET FORMAT ¢ Because TRILL OAM packets must be able to

follow the same paths and get the same processing as TRILL Data packets, their format is very similar.

March

2013

90

TR

ILL

- ME

NO

G 12

Link Header

TRILL Header

Truncated User Data

OAM Ethertype

OAM Channel

Link Trailer

Fixed Size Fixed format prefix + TLVs

Link Technology Dependent

Has OAM Flag On OAM Specific

Same as user TRILL Data except for OAM Flag

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

91

TRILL PRODUCTS ¢ Announced TRILL Standard based

switches: �  Broadcom – StrataXGS Trident (BMC5680) �  Cisco – Nexus �  HP/H3C – S5830V2, S5820V2 �  Huawei – Cloud Engine 5800, 6800, 12800 �  Mellanox – SwitchX �  Ruijie Networks – RG-S12000 �  ZTE – Big Matrix 9900 Series

October 2013

92

RIP

E T

RIL

L T

utorial

PRE-STANDARD PRODUCTS ¢ “Pre-standard” products deployed

�  Cisco FabricPath ¢  Uses TRILL control plane but different data plane ¢  2,000+ installations

�  Brocade VCS ¢  Uses TRILL data plane but FSPF (Fiber Shortest Path

First) control plane ¢  1,500+ installations

October 2013

93

RIP

E T

RIL

L T

utorial

TRILL PLUGFESTS ¢ UNH IOL TRILL interoperability event

participants:

�  Broadcom �  Extreme Networks �  HP/H3C Networking �  Huawei Technologies �  Ixia �  JDSU �  Oracle �  Spirent

October 2013

94

RIP

E T

RIL

L T

utorial

TRILL SILICON •  Here are six publicly known independent silicon

implementations of the TRILL Fast Path. In some cases

the vendor has multiple different chips supporting TRILL.

•  Broadcom – merchant silicon

•  Brocade – products

•  Cisco – products

•  Fulcrum – merchant silicon

•  Marvell – merchant silicon

•  Mellanox – merchant silicon

October 2013

95

RIP

E T

RIL

L T

utorial

TRILL OPEN SOURCE October 2013

96

RIP

E T

RIL

L T

utorial

Three Open Source Implementations 1.  Oracle: TRILL for Solaris

�  TRILL ships as part of Solaris 11

2.  VirtuOR: www.virtuor.fr �  http://sourceforge.net/p/opentrill/wiki/Home/

3.  TRILL Port to Linux: National University of Sciences and Technology (NUST), Islamabad, Pakistan

�  Muhammad Mohsin Sardar [email protected]

�  http://wisnet.seecs.nust.edu.pk/projects/trill/index.html

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

97

Comparison with MPLS ¢ TRILL versus MPLS

�  MPLS is an older, more mature technology with better Quality of Service features, etc.

�  MPLS is more configuration intensive. TRILL can be auto-configuring.

�  TRILL provides easier support of multicast �  TRILL can scale better because

¢ MPLS requires a label entry at each LSR (Label Switched Router) for each MPLS path through that LSR

¢ TRILL requires a nickname entry at each RBridge for each TRILL switch in the campus

October 2013

RIP

E T

RIL

L T

utorial

98

Comparison with IP ¢ TRILL versus IP

�  IP is an older, more mature technology �  TRILL supports VM mobility. Changing

subnets changes IP Address, breaking TCP connections

�  TRILL is better at multicast because ¢ IP requires a complex protocols like PIM to do

multicast ¢ TRILL has simple multicast distribution, with

pruning for optimization, designed in from the start

October 2013

RIP

E T

RIL

L T

utorial

99

Comparison with 802.1aq ¢ SPB is IEEE 802.1aq, “Shortest Path Bridging”,

a project of the IEEE 802.1 Working Group, which was approved as an IEEE standard near the end of March 2012.

October 2013

RIP

E T

RIL

L T

utorial

100

Comparison with 801.1aq ¢ Similarities:

�  Both provide shortest path forwarding. �  Both use IS-IS

¢ TRILL has always used true IS-IS routing. ¢ SPB started using many spanning trees and then

switched to using IS-IS to configure bridge forwarding.

�  Both require end station address learning only at the edge. Transit switches do not learn end station addresses.

October 2013

RIP

E T

RIL

L T

utorial

101

Frame Overhead Details ¢ For point-to-point links with multi-pathing:

�  TRILL: ¢  20 bytes for Ethernet (+ 8 TRILL Header (including

Ethertype) + 12 outer MAC addresses) ¢  8 bytes for PPP

�  SPBM: ¢  22 bytes for Ethernet (+ 18 802.1ah tag – 12 for MAC

addresses inside 802.1ah + 4 B-VLAN + 12 outer MAC addresses)

¢  24 bytes for Ethernet over PPP, native PPP not supported

¢ For complex multi-access links with multi-pathing: �  TRILL: 24 bytes (20 + 4 for outer VLAN tag) �  SPBM: multi-access links not supported

October 2013

102

RIP

E T

RIL

L T

utorial

Routing Computation ¢ N = number of switches

k = number of multi-paths ¢  IETF TRILL Standard

�  For unicast frames, N×log(N). ¢  Arbitrary multi-pathing available by just keeping track of

equal cost paths.

�  For multi-destination frames, k×N×log(N) to have k distribution trees available.

¢  IEEE Std 802.1aq �  Unicast and multi-destination unified:

k×N2×log(N) for k-way multi-pathing. �  Planned to be improved by 802.1Qbp project.

October 2013

103

RIP

E T

RIL

L T

utorial

Comparison with 801.1aq ¢ OAM

�  SPB: Currently supports IEEE 802.1ag (Continuity Fault Management, CFM).

�  TRILL: Supports IETF BFD (Bidirectional Forwarding Detection) protocol and carrier-grade OAM similar to CFM being developed

¢ Data Label Granularity �  SPB: Supports 4K VLANs or 2**24 Service

Identifiers. �  TRILL: Supports 4K VLANs and 2**24 Fine Grained

Labels.

October 2013

RIP

E T

RIL

L T

utorial

104

Comparison with 801.1aq ¢ Peering:

�  RBridges peer through intervening bridges. �  SPB bridges must be directly connected and only peer

within a contiguous SPB region.

¢ Spanning Tree: �  TRILL RBridges block spanning tree and provide a

new level above bridging but below Layer 3 routing. �  SPB bridges run at the bridging level. They continue

to maintain a spanning tree (or multiple spanning trees) hooking together any attached bridging to produce one huge spanning tree. Frames are forwarded by spanning tree or by shortest path depending on VLAN.

October 2013

RIP

E T

RIL

L T

utorial

105

COMPARISON WITH 801.1AQ October 2013

RIP

E T

RIL

L T

utorial

106

B

B

B

B

B

B

B

B

B

B

B

B

EB EB

EB

EB EB

EB EB

EB

EB EB

EB EB

EB EB

EB

EB

B = core Bridge EB = edge Bridge – where many end stations are connected Yellow = Ordinary Bridging

COMPARISON WITH 801.1AQ October 2013

RIP

E T

RIL

L T

utorial

107

B

B

B

B

B

B

B

B

B

B

B

B

EB EB

EB

EB EB

EB EB

EB

EB EB

EB EB

EB EB

EB

EB

One spanning tree (there could be multiple)

COMPARISON WITH 801.1AQ October 2013

RIP

E T

RIL

L T

utorial

108

S

B

S

B

S

S

S

S

S

B

B

B

EB EB

EB

EB EB

EB EB

EB

EB EB

EB EB

EB EB

EB

EB

S = Shortest Path Bridge Orange = SPB Region Spanning Tree Penetrates SPB Regions

COMPARISON WITH 801.1AQ October 2013

RIP

E T

RIL

L T

utorial

109

R

B

R

B

R

R

R

R

R

B

B

B

EB EB

EB

EB EB

EB EB

EB

EB EB

EB EB

EB EB

EB

EB

R = RBridge (TRILL switch) Spanning Tree terminated by RBridges

CONTENTS ¢ What is TRILL? ¢ TRILL Features ¢ TRILL History ¢ Two TRILL Examples ¢ TRILL Packet

Headers ¢ Step-by-Step

Processing Example ¢ Fine Grained Labeling

¢ How TRILL Works ¢ Peering and Layers ¢ TRILL Support of

DCB ¢ TRILL OAM ¢ TRILL Products ¢ Comparisons ¢ Standardization and

References

October 2013

RIP

E T

RIL

L T

utorial

110

STANDARDIZATION STATUS ¢ The TRILL protocol RFCs (bold = stds track)

�  RFC 5556, “TRILL Problem and Applicability”

�  RFC 6325, “RBridges: TRILL Base Protocol Specification”

�  RFC 6326, “TRILL Use of IS-IS” �  RFC 6327, “RBridges: Adjacency” �  RFC 6361, “TRILL over PPP” �  RFC 6439, “RBridges: Appointed Forwarders” �  RFC 6847, “FCoE over TRILL” �  RFC 6850, “Definitions of Managed Objects for

RBridges” (MIB) �  RFC 6905, “TRILL OAM Requirements”

October 2013

111

RIP

E T

RIL

L T

utorial

STANDARDIZATION STATUS l  Document that are fully approved and in the RFC Editor’s

Queue. These are expected to issue as standards track RFCs soon: l  “TRILL: Fine Grained Labeling:

l  https://datatracker.ietf.org/doc/draft-ietf-trill-fine-labeling/

l  “TRILL: BFD Support” l  https://datatracker.ietf.org/doc/draft-ietf-trill-rbridge-bfd/

l  “TRILL: RBridge Channel Support” l  https://datatracker.ietf.org/doc/draft-ietf-trill-rbridge-channel/

l  “TRILL: Edge Directory Assistance Framework” l  https://datatracker.ietf.org/doc/draft-ietf-trill-directory-framework/

l  “TRILL: Clarifications, Corrections, and Updates” l  https://datatracker.ietf.org/doc/draft-ietf-trill-clear-correct/

l  “TRILL: Header Extension” l  https://datatracker.ietf.org/doc/draft-ietf-trill-rbridge-extension/

October 2013

112

RIP

E T

RIL

L T

utorial

Standardization Status ¢ Non-IETF Assignments:

�  Ethertypes assigned by IEEE: ¢ TRILL Data: 0x22F3 ¢ TRILL IS-IS: 0x22F4 ¢ TRILL Fine Grained Labeling: 0x893B ¢ RBridge Channel: 0x8946

�  Block of multicast addresses assigned to TRILL by IEEE: ¢ 01-80-C2-00-00-40 to 01-80-C2-00-00-4F

�  TRILL NLPID (Network Layer Protocol ID) assigned from ISO/IEC: 0xC0

October 2013

RIP

E T

RIL

L T

utorial

113

MORE TRILL REFERENCES

¢ TRILL Introductory Internet Protocol Journal Article: �  http://www.cisco.com/web/about/ac123/ac147/

archived_issues/ipj_14-3/143_trill.html

¢  The first paper: Perlman, Radia. “Rbridges:

Transparent Routing”, Proceeding Infocom 2004, March 2004. �  http://www.ieee-infocom.org/2004/Papers/26_1.PDF

October 2013

114

RIP

E T

RIL

L T

utorial

SOME TRILL FUTURES l  Carrier grade OAM l  Directory Assisted Edge:

l  In data centers, the location of all MAC and IP address and virtual machines is typically known through orchestration. This information can be provided to edge TRILL switches by a directory.

l  Directory information can be Pushed or Pulled and can reduce or eliminate ARP (IPv4), ND (IPv6), and unknown unicast MAC flooding.

l  Active-active at the edge l  Multi-level and Multi-topology support

October 2013

115

RIP

E T

RIL

L T

utorial

END

October 2013

116

RIP

E T

RIL

L T

utorial

Donald E. Eastlake 3rd

Co-Chair, TRILL Working Group Principal Engineer, Huawei

[email protected]

Backup Slides

October 2013

117

RIP

E T

RIL

L T

utorial

Donald E. Eastlake 3rd

Co-Chair, TRILL Working Group Principal Engineer, Huawei

[email protected]

Algorhyme (Spanning Tree) ¢  I think that I shall never see ¢  A graph more lovely than a tree. ¢  A tree whose crucial property ¢  Is loop-free connectivity. ¢  A tree that must be sure to span ¢  So packets can reach every LAN. ¢  First, the root must be selected. ¢  By ID, it is elected. ¢  Least-cost paths from root are traced. ¢  In the tree, these paths are placed. ¢  A mesh is made by folks like me, ¢  Then bridges find a spanning tree. ¢  - By Radia Perlman

October 2013

118

RIP

E T

RIL

L T

utorial

Structure of an RBridge October 2013

119

Central Processing IS-IS, Mgmt., Etc.

Switching fabric

Po

rt L

og

ic

Po

rt L

og

ic

Po

rt L

og

ic

Po

rt L

og

ic

Links to other devices. Could be 802.3 (Ethernet), 802.11 (Wi-Fi), PPP, …

RIP

E T

RIL

L T

utorial

Structure of an RBridge Port O

ctober 2013

120

Assumes an Ethernet (802.3) link. Information Frame & Info

802.3 Physical Interface 802.3 Link

802.1/802.3 Low Level Control Frame Processing, Port/Link Control Logic

802.1Q Port VLAN

Processing

RBridge: High Level Control Frame

Processing (BPDU, VRP)

ISS

RBridge: Higher Level Processing (see next slide) R

IPE

TR

ILL

Tu

torial

Structure of an RBridge Port O

ctober 2013

121

Information Frame & Info

Lower Level Processing (see previous slide)

RBridge: Inter-port Forwarding, IS-IS, Management, Etc.

Appointed Forwarder and

Inhibition Logic

Native frames

Encapsulation / Decapsulation

Processing

TRILL IS-IS Hellos

TRILL IS-IS Hello

Processing

TRILL Data Other TRILL IS-IS

RIP

E T

RIL

L T

utorial

TRILL Data

Loop Avoidance ¢ All possible forms of looping behavior within a

TRILL campus can be grouped into one of three classes: �  TRILL Data Packet Loops, in which the packet would

remain TRILL encapsulated. �  Hybrid TRILL Data / Native Frame Loops, in which

the frame is repeatedly encapsulated and decapsulated.

�  Native Frame Loops, in which the frame is never encapsulated. ¢  Since TRILL always encapsulates data, if you have this

problem, no RBridges are involved so it is not TRILL’s fault.

October 2013

122

TR

ILL

- RIP

E

Loop Avoidance ¢ TRILL Data Packet Loops:

�  Known unicast TRILL Data packets have a hop count and are always unicast to the next hop RBridge towards their destination.

�  Multi-destination TRILL Data packets must be received on a port which is part of their distribution tree, the ingress RBridge nickname and input port must pass a Reverse Path Forwarding Check, and they have a hop count.

October 2013

123

TR

ILL

- RIP

E

Loop Avoidance ¢ Hybrid TRILL Data / Native Frame Loops:

�  Such a loop would require, at some point around the loop, that a TRILL Data packet be decapsulated onto a link by one RBridge and then picked up and re-encapsulated by another RBridge.

�  TRILL takes great care to minimize the probability of there being two uninhibited appointed forwarders on the same link for the same VLAN. ¢  Under certain conditions, an RBridge appointed forwarder

is inhibited from accepting or sending native frames. This only affects native frames. An RBridge port is never inhibited or blocked from sending or receiving TRILL Data or TRILL IS-IS frames except by very low level link flow control mechanisms such as PAUSE or if the port has been manually configured as disabled.

October 2013

124

TR

ILL

- RIP

E

What About Re-Ordering? ¢ RBridges are required to maintain frame

ordering internally, modulo flow categorization. ¢ When multi-pathing is used, all frames for an

order-dependent flow must be sent on the same path if unicast or the same distribution tree if multi-destination.

¢ Unicast re-ordering can occur briefly when a destination address transitions between being known and unknown, or a topology change occurs. �  This can be minimized with keep-alives, ESADI,

distribution tree per RBridge, or configured addresses.

October 2013

125

RIP

E T

RIL

L T

utorial

PDU Types ¢ PDU Type Names Used in TRILL

�  TRILL Packets ¢ TRILL IS-IS Packets– Used for routing control

between RBridges. ¢ TRILL Data Packets– Used for encapsulated

native frames. �  Layer 2 Control Frames – Bridging control, LLDP,

LACP, etc. Never forwarded by RBridges. �  Native Frames – All frames that are not TRILL or

Layer 2 Control Frames.

October 2013

126

RIP

E T

RIL

L T

utorial

PDU Types, More Detail ¢ TRILL Packets– Ethernet local link encoding

�  TRILL Data packets – Have the TRILL Ethertype and are sent to a unicast address or, if multi-destination, to the All-RBridges multicast address.

�  TRILL IS-IS Packets – Have the L2-IS-IS Ethertype and are sent to the All-IS-IS-RBridges multicast address.

�  (TRILL Other packets– sent to a TRILL multicast address but not a TRILL Data or TRILL IS-IS frame. Not currently used.)

October 2013

127

RIP

E T

RIL

L T

utorial

PDU Types, More Detail ¢ Layer 2 Control Frames – Destination Address is

01-80-C2-00-00-00 to 01-80-C2-00-00-0F or 01-80-C2-00-00-21 �  High Level – BPDU (01-80-C2-00-00-00) & VLAN

Registration (01-80-C2-00-00-21) ¢  RBridges handle these differently from bridges. The

spanning tree protocol never runs through an RBridge but an RBridge port is not prohibited from participating in spanning tree as a leaf node.

�  Low Level – all other control frames ¢  An RBridge port may implement other Layer 2 protocols

such as LLDP (Link Layer Discovery Protocol), 802.1AX (Link Aggregation), 802.1X (Port Based Access Control), 802.1AE (MAC Security), and the like.

October 2013

128

RIP

E T

RIL

L T

utorial