802.1aq Shortest Path May Recap

Don Fedyk Mick Seaman János Farkas

5/18/2009 May Interim Pittsburgh 1 Forward

• Shortest Path Bridging is a large Project • This summary contains some repeated material. • For those who would like the delta we have marked the sides with Updated

5/18/2009 May Interim Pittsburgh 2 Shortest Path Bridging Project Authorization Request • Scope :VLAN Bridges – Shortest Path within a region – Interwork with Spanning Tree Protocols, RSTP, MSTP bridges • This standard specifies shortest path bridging of unicast and multicast frames, including protocols to calculate multiple active topologies that can share learnt station location information, and support of a VLAN by multiple, per topology, VLAN identifiers (VIDs). – Compatibility • This amendment will not change the conformance of IEEE Std 802.1Q to Std 802. Overview and Architecture, or its relationship to that specification.

5/18/2009 May Interim Pittsburgh 3 802.1Q Data Planes Provider Backbone Bridges 802.1ah We have a long standing Data Plane

Combination of SPB and SPBB support all Payload Provider Bridges 802.1ad Ethertype VLAN C-VID SA = Source MAC address C-TAG Ethernet Payload DA = Destination MAC address S-VID S-TAG Payload VID = VLAN ID SA C-VID = Customer VID Ethertype DA Payload S-VID = Service VID C-VID I-SID I-SID = Service ID Ethertype C-TAG I-TAG C-VID S-VID B-VID B-VID = Backbone VID Ethertype Q-TAG S-TAG B-TAG B-DA = Backbone DA SA SA SA B-SA B-SA = Backbone SA DA DA DA B-DA 1998 2005 2008 Standard Approved Supports Data Plane OAM (CFM, MIP, MEPs) 5/18/2009 May Interim Pittsburgh 4 Applicability

IEEE 802.1aq

Shortest Path Bridging (SPB) Shortest Path Backbone Bridging (SPBB)

Small VLAN Large PBB Networks Networks 2-100 bridges 2-1000 backbone bridges

Plug and play Carrier Grade Efficient Fast convergence Low delay Efficient use of resources Backwards Compatible B-VLAN Partitioned Forwarding Compatible

E-Line, E-Tree, E-LAN Services Provider E-Line, E-Tree, E-LAN Services 5/18/2009 May Interim Pittsburgh 5 What is unique about SPB?

• Link state application to shortest path trees compatible with 802.1 architecture – Link state versus lots of messaging (BPDUs) – Computation replaces messaging • All pairs shortest path • SPBB provides fast and robust PBB B-MAC topology – Service Discovery via the I-SIDs – Efficient Multicast Trees – The most comprehensive control plane for PBB

5/18/2009 May Interim Pittsburgh 6 What SPB is not about

• Traffic engineering – PBB-TE is available – MSTP is available • Multi-Domain – Single Level ISIS-SPB – No inter domain protocols

5/18/2009 May Interim Pittsburgh 7 Motivation

• RSTP/MSTP forwarding C C – Detours appear A C B – Manual configuration is needed for disjoint trees C

C – Forwarding can be only C C D optimized by manual Spanning tree forwarding configuration

• Shortest path forwarding C C – Each bridge only sends A B frames on its own Shortest C Path Tree (SPT) C

– Automatic SPT management C C C D – Controlled by IS-IS SPB forwarding

5/18/2009 May Interim Pittsburgh 8 Interworking with RSTP and MSTP • Common Spanning Tree (CST) • Internal Spanning Tree (IST) • Common and Internal Spanning Tree

SPT Region

IST SPT Region

IST CST

MST Region MST Region RSTP bridges

5/18/2009 May Interim Pittsburgh 9 IEEE 802.1aq variants

• Shortest Path Backbone Bridging (SPBB) is aimed to be deployed in PBB networks where all addresses are managed • Shortest Path Bridging (SPB) is applicable in customer, enterprise or storage area networks ISIS-SPB

SPB SPBB

Enterprise Network Access Network Metro Core Network • Plug & Play • Reliability • Reliability • Easy to operate • Bandwidth efficiency • Auto-discovery • Unknown addresses • Unknown or managed • Load sharing addresses • Managed addresses

MAC learning MAC learning in data plane in control plane 5/18/2009 May Interim Pittsburgh 10 IS-IS controls IEEE 802.1aq

• Topology discovery – Each bridge is aware of the physical topology of the SPT Region • Service discovery – I-SID registrations are included into a new TLV • Shortest Path Tree computation • Maintenance of SPTs and CIST • SPTs can be set according to the discovered I-SID membership information – MRP is not needed • VID allocation to VLANs

5/18/2009 May Interim Pittsburgh 11 Source tree identification (SPTID)

Updated VLAN ID MAC address • An SPT is identified by • B-SA and its SPSourceID incorporated into Group MAC DA the SPVID assigned to identifies an SPT the source bridge  Two VIDs only used for a whole set of Shortest Path Trees  Applicable to both (Base VID and another VID) 802.1Q and 802.1ah bridges  Bidirectionality of VID is preserved  Only applicable to 802.1ah bridges  Ingress check on VID  Ingress check on SA  Consumes VLAN space  All group MAC addresses take the local bit mapping  Unidirectional VIDs 5/18/2009 May Interim Pittsburgh 12 VLAN assignment Updated

identified by IEEE 802.1aq implements VLAN BaseVID VID

allocated to

MSTI CIST

supported by supported by SPT Set MSTI IST CST

ID ID ID ID

BaseB-VID VID SPVID Base VID Base VID Base VID B-SAB-SA GroupGroup B-DAB-DA

Non- Learning Non- Learning Non-Non- LearningLearning Learning Non-learning learning SPB learning learninglearning SPBB SPBB PBB-TE SPBBSPBB 5/18/2009 May Interim Pittsburgh 13 MAC learning

• MAC learning in the data plane (Learning)

IS-IS IS-IS IS-IS SPB FDB FDB FDB

A A Bridge d s Bridge d s Bridge d e d e r s r s e s e s s e s e s r s r e d e d s d s d Frames A Frames A

• MAC learning in the control plane (Non-learning)

Control Messages Control Messages IS-IS IS-IS IS-IS SPBB B-MACs Addresses Addresses Addresses FDB FDB FDB

Bridge Bridge Bridge 5/18/2009 May Interim Pittsburgh 14 SPB

• SPB (802.1Q compliant) – Uses VID for source identification, don’t own the C- MAC – Solution Attributes • VID Trees, one source per bridge, distributed in IS-IS • SVL learning of unicast forwarding supported – Solution Requirements • Must Interwork at edges with RSTP, MSTP • The region may default to a single instance MSTP (associated with the “Base VID”) if the VID allocation fails or detects errors • Must support loop prevention, may support ingress check

5/18/2009 May Interim Pittsburgh 15 SPB Concepts

SPT Region

Payload Payload

45 45 SPVID = 22 SA SA Base VID 22 DA DA SPVID = 45

Payload SPVID = 66 SPVID = 44 22 Payload SA CST DA IST SPVID = 71 22 SA Payload DA SPVID = 41 41 PayloadVID = 6 SA DA Payload Payload 22 SA 41 22 DA SA SA DA DA 5/18/2009 May Interim Pittsburgh 16 SPBB Updated

• SPBB (Shortest Path Backbone Bridging) – Solution Attributes • Single VID for an SPT Region (only) • Does not use learning of B-MACs – Provider addresses will all be known allows for more efficient flooding (no B-MAC broadcast storms), • Reduction in forwarding space Shared Forwarding, – Solution Requirements • Must use Multicast loop Prevention, • Must use ingress check for unicast

5/18/2009 May Interim Pittsburgh 17 SPBB Operation

Shortest path between any IS-IS IS-IS two points is both the same and symmetrical for unicast and multicast BEB Backbone Edge IS-IS Bridge BEB

IS-IS IS-IS IS-IS Backbone Core IS-IS Bridge BCB

BCB BCB BEB BEB “A” PBBN IS-IS IS-IS

BEB BEB

Shortest Path Tree from “A”

5/18/2009 May Interim Pittsburgh 18 SPBB Shortest Path Tree to/from “A”

Shortest path between any IS-IS IS-IS two points is both the same and symmetrical for unicast and multicast BEB Backbone Edge IS-IS Bridge BEB

IS-IS IS-IS IS-IS Backbone Core IS-IS Bridge BCB

BCB BCB BEB BEB “A” PBBN IS-IS IS-IS All pairs shortest path computation performed in parallel BEB BEB

Uses the full mesh network

5/18/2009 May Interim Pittsburgh 19 SPBB Multicast Groups

I-SID 5 I-SID 5 IS-IS IS-IS MMAC for 5

from A BEB Backbone Edge IS-IS Bridge BEB

IS-IS IS-IS IS-IS Backbone Core IS-IS Bridge BCB

BCB BCB BEB BEB “A” PBBN IS-IS I-SID 5 IS-IS

BEB BEB

I-SIDs define efficient subsets

5/18/2009 May Interim Pittsburgh 20 Forward and Reverse path Congruency

1 Bridge3 1 1 Bridge2 1 1

Bridge1 Bridge4 Bridge5 2 1

Bridge6

• Necessary if MAC learning is in the data plane • Not necessary if MAC learning is in the control plane • Going to be assured by both SPB and SPBB 5/18/2009 May Interim Pittsburgh 21 Unicast and Multicast Congruency

unicast 1 Bridge3 1 multicast 1 Bridge2 1 1

Bridge1 Bridge4 Bridge5 2 1

Bridge6

• Necessary for MAC learning in data plane • Necessary for the proper operation of OAM • Going to be assured by both SPB and SPBB 5/18/2009 May Interim Pittsburgh 22 Implementation of Congruency • Tie-breaking extension to Dijkstra for the case of equal cost multiple paths – List of node IDs comprising a path are unique – {1,6,5} < {1,2,3,5} < {1,2,4,5}

1 Bridge3 1 1 Bridge2 1 1

Bridge1 Bridge4 Bridge5 2 1

Bridge6

• 5/18/2009Same algorithm is usedMay both Interim Pittsburghfor unicast and multicast 23 Load sharing

• Two trees are calculated taking advantage of equal cost multiple paths: {1,6,5} < {1,2,3,5} < {1,2,4,5} • SPT Primary Set  Primary Base VID • SPT Alternate Set  Secondary Base VID

1 Bridge3 1 1 Bridge2 1 1

Bridge1 Bridge4 Bridge5 2 1

Bridge6 5/18/2009 May Interim Pittsburgh 24 Loop Prevention and Mitigation

• Inconsistent view on at different nodes may cause transient loops in case of a link-state control protocol • Loop prevention – Agreement Protocol – Handshake mechanism between neighbors – Extension to MSTP’s handshake • Loop mitigation – Ingress Checking (e.g. RPFC) – Frames not arriving on the shortest path from the Source Bridge are discarded – Makes the tree directed – Good for loop prevention in most cases – Transient loops may appear • Severe problem for multicast traffic • A chance of network melt-down remains if one does not care Updated – Ingress filtering has to be modified

5/18/2009 May Interim Pittsburgh 25 Neighbor handshake mechanism • Make sure bridges having different view on network topology do not exchange frames • The link between adjacent neighbors has to be blocked after a topology change until they agree that both of them have the same topology database • The agreement between neighbors is implemented by a handshake mechanism • A digest of the topology database is exchanged – CRC – Cryptographic hash function (e.g. SHA-256) • Agreements at different part of the network are independent of each other 5/18/2009 May Interim Pittsburgh 26 Handshake: MSTP extension Updated

• Agreement Protocol • Two-way Agreement = three-way handshake • No per tree handshake (SPB) Agreement • BPDUs contain

– Digest of LSP database Proposal – Info on the CIST Agreement • Proposal-Agreement – Explicit on the CIST – Computed for SPTs

5/18/2009 May Interim Pittsburgh 27 Agreement Protocol Updated

• Exchanged in BDPUs • Based on Port Roles and neighbor agreements • Supports rapid transition to forwarding for safe transitions when neighbors agree – Agreement is per tree for RSTP, MSTP – Agreement is LSP Digest for SPB, SPBB

5/18/2009 May Interim Pittsburgh 28 Handshake: Filtering entry manipulations Wait for LSP update • SPBB networks • STPs are implemented by Unicast computation Filtering Entries Install Unicast and • Do not implement the remove ‘unsafe’ Agreement extensions to Multicast FDB entries MSTP Update Digest and • Implement link-state database send it to neighbors synchronization (Agreement Multicast computation logic) • Loops for unicast flows are Install ‘safe’ mitigated by Ingress Checking Multicast FDB entries (RPFC) • Remove ‘unsafe’ entries if Wait for Digest synch neighbors are unsynchronized Install ‘unsafe’ Multicast FDB entries

5/18/2009 May Interim Pittsburgh 29 IEEE 802.1aq Project Updated Where are we now? • Topology Distribution – IS-IS Only IS-IS need TLVs • Loop Prevention – Agreement Protocol or SPBB Multicast Loop Prevention Documented • Loop Mitigation – Optional Forwarding change Ingress Check Documented • SPVID allocation – Leverage link State Documented • SPBB – Multicast Source Tree identification • B-VID&Source DA Document • MRP and Link State Proposal • Path Computation – Convergence time/algorithms Proposal • MSTP/RSTP/STP backwards/forwards interoperability & coexistence Documented Clause 13 • Provisioning Documenting – Tree types (Shared Trees or Tree per source, etc) – MIBs – Mis-provisioning • CFM No change – SPB CFM – SPBB CFM

5/18/2009 May Interim Pittsburgh 30 Next Steps

• Update draft with recent material • One More task group Ballot and move to WG Ballots • Draft is being finalized for ballot call this week.

5/18/2009 May Interim Pittsburgh 31 What do we need from IS-IS?

• Some TLVs and Sub TLVS – Per SPT Region – BASE VID (IST) – Shortest path tree algorithm – Define Single VIDs – Digest – SPT Region • Per Bridge – Bridge Identifier – Per Base VID (active Topology) » Define SPVID » Bridge Priority » Supported Multicast Groups/I-SIDs » Supported Unicast • Per Port – Per Base VID (active Topology) » Link Metric, Port Priority

5/18/2009 May Interim Pittsburgh 32 Current View of TLVs Updated

a)Hello PDU BASE-VID TLV b ) SPB Instance TLV d ) SPB Multicast Group TLV Res M-T ID 16 O Res M - T ID 16 S M B Reserved 12 S Reserved 8 Res M -T ID 16 Number of-VIDs 8 Number of VIDs 8 S Reserved 8 A R R 3 A R R 3 Algorithm = n Reserved 12 Algorithm= 0 5 5 VID VID 12 VID 12 12 Base VID Number of records 8 Base VID 12 12 8 A R R 3 Source MAC 5 A R R 3 Algorithm = n 24 VID 12 Destination MMAC Algorithm= n 5 48 Base VID VID 12 12 48 Base VID 12 Bridge Identifier 64 Per Bridge Res 4 Per Bridge SPSouceID Flags AN 8 SPSourceID 8 e) SPBB I-SID and Unicast CIST Root Identifier 64 Address TLV CIST External Root Path Cost 32 IS-IS Reachability TLV Res M-T ID 16 S Reserved 8 c) SPB Link Metric Sub TLV Per Bridge Number of I-SIDs 8 Reserved B-MAC Address 48 SPB-Link Metric 16 Port Identifier 16 Reserved 4 Reserved 16 VID 12 T R Res 8

I-SID 24 Per Adjacency

5/18/2009 May Interim Pittsburgh Per Bridge 33 Forming an SPB region Updated

Bridge1 Bridge2 Bridge1 Bridge2

SPB BPDU BPDUs SPB BPDU SPB BPDU BPDUs RSTP BPDU

IS-IS Hello RSTP BPDU BPDUs RSTP BPDU

IS-IS LSPs IS-IS Hello BPDUs

Do we make IS-IS hellos optional in this case? IS-IS Hello

IS-IS LSPs 5/18/2009 May Interim Pittsburgh 34 Base VID and B-VIDs Updated

SPB

Parameters needing to be Co-coordinated for a Region?

Bridge1 Bridge2

MSTIDConf Digest = MSTID ConfDigest

IS-IS topology instance = IS-IS topology instance

Base VID = Base VID

[ My SPVID != My SPVID]

[Single B-VID(s) = Single B-VID(s)]

5/18/2009 May Interim Pittsburgh 35 Glossary

B-MAC Backbone MAC MIP Maintenance Intermediate point BEB Backbone Edge Bridge MMAC Multicast MAC BCB Backbone Core Bridge MSTP Multiple C-VID Customer VID MMRP Multiple MAC Registration Protocol CFM Connectivity Fault Management OAM Operations, Administration and CST Common Spanning Tree Maintenance ELINE Ethernet Point to Point Service PB Provider Bridges IEEE 802.1ad ELAN Ethernet LAN Service PBB Provider Backbone Bridging IEEE 802.1ah ETREE Ethernet Hub and Spoke Service PBB-TE PBB Traffic Engineering IEEE FDB Filtering Data Base 802.1Qay I-SID (802.1ah) Service Identifier QinQ see PB IGP Interior Gateway Protocol (Typically link state) S-VID Service VID IS-IS Intermediate System to Intermediate System SPB Shortest Path Bridging IEEE 802.1aq (IGP) SPBB Shortest Path Backbone Bridging IST Internal Spanning Tree SPT Shortest Path Tree LAN STP Spanning tree protocol MAC Media Access Control SPSourceID SPBB OUI Field MACinMAC see PBB RSTP Rapid Spanning tree protocol MEP Maintenance End point TTL Time To Live VID VLAN Identifier VLAN Virtual LAN

5/18/2009 May Interim Pittsburgh 36