802.1aq Shortest Path Bridging Recap Don Fedyk dwfedyk@nortel.com János Farkas Janos.Farkas@ERICSSON.COM 1/13/2009 January Interim New Orleans 1 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. 1/13/2009 January Interim New Orleans 2 802.1Q Data Planes Provider Backbone Bridges 802.1ah We have a long standing Data Plane Payload Ethernet VLAN SA = Source MAC address DA = Destination MAC address VID = VLAN ID C-VID = Customer VID S-VID = Service VID I-SID = Service ID B-VID = Backbone VID B-DA = Backbone DA B-SA = Backbone SA Ethernet Provider Bridges 802.1ad Payload Payload Payload Ethertype SA DA Ethertype C-VID Q-TAG SA DA 1998 Ethertype C-VID C-TAG S-VID S-TAG SA DA Ethertype C-VID C-TAG S-VID S-TAG SA DA I-SID I-TAG B-VID B-TAG B-SA B-DA 2005 2008 Standard Approved Supports Data Plane OAM (CFM, MIP, MEPs) 1/13/2009 January Interim New Orleans 3 Applicability IEEE 802.1aq Shortest Path Bridging (SPB) Small VLAN Networks 2-100 bridges Shortest Path Backbone Bridging (SPBB) Large PBB Networks 2-1000 backbone bridges Plug and play Efficient Low delay Backwards Compatible Carrier Grade Fast convergence Efficient use of resources B-VLAN Partitioned Forwarding Compatible E-Line, E-Tree, E-LAN Services Provider E-Line, E-Tree, E-LAN Services 1/13/2009 January Interim New Orleans 4 Motivation • RSTP/MSTP forwarding – Detours appear – Manual configuration is needed for disjoint trees – Forwarding can be only optimized by manual configuration A B C D Spanning tree forwarding • Shortest path forwarding – Each bridge only sends frames on its own Shortest Path Tree (SPT) – Automatic SPT management – Controlled by IS-IS 1/13/2009 January Interim New Orleans A B C D SPB forwarding 5 Interworking with RSTP and MSTP • Common Spanning Tree (CST) • Internal Spanning Tree (IST) • Common and Internal Spanning Tree SPT Region IST SPT Region CST IST MST Region RSTP bridges MST Region 1/13/2009 January Interim New Orleans 6 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 IEEE 802.1aq SPBB SPB Enterprise Network • Reliability • Bandwidth efficiency • Unknown or managed addresses • Plug & Play • Easy to operate • Unknown addresses 1/13/2009 Metro Core Network Access Network MAC learning in data plane MAC learning in control plane January Interim New Orleans • Reliability • Auto-discovery • Load sharing • Managed addresses 7 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 1/13/2009 January Interim New Orleans 8 Source tree identification VLAN ID • An SPT is identified by the SPVID assigned to the source bridge Applicable to both 802.1Q and 802.1ah bridges Ingress check on VID Consumes VLAN space Unidirectional VIDs 1/13/2009 MAC address • B-SA and its Nickname incorporated into Group MAC DA identifies an SPT Two VIDs only used for a whole set of Shortest Path Trees (Base VID and another VID) Each ECMT uses one more VID Bidirectionality of VID is preserved Only applicable to 802.1ah bridges Ingress check on SA All multicast addresses take the local bit mapping January Interim New Orleans 9 VLAN assignment VLAN IEEE 802.1aq implements identified by VID VID Base allocated to MSTI CIST supported by supported by SPT Set MSTI ID Base VID VID* B-SA Group B-DA Non-learning SPBB 1/13/2009 ID SPVID Nonlearning Learning SPBB Base VID Learning Nonlearning PBB-TE Learning January Interim New Orleans IST CST ID ID Base VID Nonlearning SPBB Learning Base VID Learning 10 Tree implementation • By Port Roles • By Filtering Entries Root Bridge Source Bridge Designated, Forwarding Root, Forwarding Alternate, Blocking • SPT is formed from the Root Bridge 1/13/2009 • Source rooted SPTs applied in 802.1aq January Interim New Orleans 11 MAC learning • MAC learning in the data plane (Learning) IS-IS IS-IS IS-IS FDB FDB FDB Bridge Bridge Bridge Frames Frames • MAC learning in the control plane (Non-learning) Control Messages IS-IS Addresses Addresses Bridge IS-IS Addresses FDB 1/13/2009 FDB FDB Bridge Control Messages IS-IS Bridge January Interim New Orleans 12 SPB • SPB (802.1Q compliant) – Uses VID for source identification, don’t own the CMAC – 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 1/13/2009 January Interim New Orleans 13 SPB Concepts SPB Region Identifier!= Base VID SPT Region Payload Payload 45 SA DA 45 SA DA Base VID 22 SPVID = 22 SPVID = 45 Payload 22 SA DA SPVID = 66 Payload CST IST SPVID = 71 Payload Payload VID 22 SA DA 1/13/2009 =6 41 SA DA SPVID = 44 22 SA DA SPVID = 41 Payload Payload 41 SA DA 22 SA DA January Interim New Orleans 14 SPBB • SPBB (Shortest Path Backbone Bridging) – Solution Attributes • Single VID for an SPT Region (may use VID Trees) • 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 1/13/2009 January Interim New Orleans 15 SPBB Operation IS-IS IS-IS BEB Backbone Edge Bridge BEB IS-IS IS-IS IS-IS Shortest path between any two points is both the same and symmetrical for unicast and multicast Backbone Core Bridge BCB BCB IS-IS IS-IS BCB BEB “A” BEB PBBN IS-IS IS-IS BEB BEB Shortest Path Tree from “A” 1/13/2009 January Interim New Orleans 16 SPBB Shortest Path Tree to/from “A” IS-IS IS-IS BEB Backbone Edge Bridge BEB IS-IS IS-IS IS-IS Shortest path between any two points is both the same and symmetrical for unicast and multicast Backbone Core Bridge BCB BCB IS-IS IS-IS BCB BEB “A” BEB PBBN IS-IS IS-IS BEB BEB All pairs shortest path computation performed in parallel Uses the full mesh network 1/13/2009 January Interim New Orleans 17 SPBB Multicast Groups I-SID 5 I-SID 5 IS-IS IS-IS MMAC for 5 from A BEB Backbone Edge Bridge BEB IS-IS IS-IS IS-IS Backbone Core Bridge BCB BCB BCB BEB “A” I-SID 5 IS-IS IS-IS BEB PBBN IS-IS IS-IS BEB BEB I-SIDs define efficient subsets 1/13/2009 January Interim New Orleans 18 Forward and Reverse path Congruency 1 1 Bridge2 Bridge3 1 1 1 Bridge4 Bridge1 2 Bridge5 1 Bridge6 • Necessary if MAC learning is in the data plane • Not necessary if MAC learning is in the control plane • 1/13/2009 Going to be assuredJanuary by both SPB and SPBB Interim New Orleans 19 Unicast and Multicast Congruency unicast 1 1 Bridge2 Bridge3 1 multicast 1 1 Bridge4 Bridge1 2 Bridge5 1 Bridge6 • Necessary for MAC learning in data plane • Necessary for the proper operation of OAM • 1/13/2009 Going to be assuredJanuary by both SPB and SPBB Interim New Orleans 20 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 1 Bridge2 Bridge3 1 1 1 Bridge4 Bridge1 2 Bridge5 1 Bridge6 Januaryboth Interim for New Orleans • 1/13/2009 Same algorithm is used unicast and multicast 21 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 1 Bridge2 Bridge3 1 1 1 Bridge4 Bridge1 2 Bridge5 1 Bridge6 1/13/2009 January Interim New Orleans 22 Loop Prevention and Mitigation • Inconsistent view on network topology at different nodes may cause transient loops in case of a link-state control protocol • Loop prevention – Tree Agreement Protocol (TAP) – 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 – Ingress filtering has to be modified 1/13/2009 January Interim New Orleans 23 Neighbor handshake mechanism • Let’s make it sure that 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 1/13/2009 January Interim New Orleans 24 Agreement – Digest of LSP database – Info on the CIST Agreement • Tree Agreement Protocol (TAP) • Two-way Agreement = three-way handshake • No per tree handshake • BPDUs contain Proposal Handshake: MSTP extension • Proposal-Agreement – Explicit on the CIST – Computed for SPTs 1/13/2009 January Interim New Orleans 25 Handshake: Filtering entry manipulations Wait for LSP update • SPBB networks • STPs are implemented by Filtering Entries • Do not implement the TAP extension to MSTP • Implement link-state database synchronization (TAP logic) • Loops for unicast flows are mitigated by Ingress Checking (RPFC) • Remove ‘unsafe’ entries if neighbors are unsynchronized Unicast computation Install Unicast and remove ‘unsafe’ Multicast FDB entries Update Digest and send it to neighbors Multicast computation Install ‘safe’ Multicast FDB entries Wait for Digest synch Install ‘unsafe’ Multicast FDB entries 1/13/2009 January Interim New Orleans 26 Two Options • BPDUs • Link State 1/13/2009 January Interim New Orleans 27 SPB IS-IS TLVS IS-IS Reachability TLV 8 c) SPB Link Metric Sub TLV a)Hello PDU BASE-VID TLV Res M-T ID S 16 12 4 Reserved Number of-VIDs For the CIST B SPT SET Base VID Res M-T ID 16 16 Bridge Identifier 64 SPT Set 4 SP-VID 12 VID Nickname Nickname Priority 12 Reserved 16 16 SPB-Link Metric 24 Port Identifier 16 For the SPT For the ST 12 4 Res 4 SPT Set S 4 8 0 M-T ID Res Reserved 8 8 Algorithm Reserved O S 8 Algorithm Reserved b)SPB Instance TLV 20 32 Per Adjacency Nickname Flags Per Bridge Per Bridge d) SPB Multicast Group TLV Res M-T ID S Reserved Number of VIDs SPT Set VID Number of records Source MAC Destination MMAC 16 8 8 4 12 8 48 48 Per Bridge 1/13/2009 January Interim New Orleans 28 SPBB IS-IS TLVS IS-IS Reachability TLV 8 c) SPB Link Metric Sub TLV a)Hello PDU BASE-VID TLV Res M-T ID S 16 12 4 Reserved Number of-VIDs For the CIST B SPT SET Base VID Res M-T ID 16 16 Bridge Identifier 64 SPT Set 4 SP-VID 12 VID Nickname Nickname Priority 12 Reserved 16 16 SPB-Link Metric 24 Port Identifier 16 12 4 Res 4 SPT Set S 4 8 0 M-T ID Res Reserved 8 8 Algorithm Reserved O S 8 Algorithm Reserved b)SPB Instance TLV 20 32 Per Adjacency Nickname Flags Per Bridge Per Bridge e) SPBB I-SID & Unicast MAC TLV Res S M-T ID Reserved Number of VIDs SPT Set VID 8 4 12 MAC Address TYP Res Number of I-SIDs T R 16 8 Res I-SID 48 8 8 8 24 Per Bridge 1/13/2009 January Interim New Orleans 29 SPVID Allocation • How to control the allocation? • Master Bridge – Need a communication path before the allocation • SPVID neighbor is a proxy – Need an allocation protocol – Need to deal with Master Bridge changing • Deterministic Distributed algorithm – Neighbor performs the computation locally based on the Link state database – Need a collision mechanism – Need an aging mechanism that is much slower than other aging mechanism – SPVIDs are commited to some NVRAM 1/13/2009 January Interim New Orleans 30 SPVID Allocation VID space 0 4096 SPVID Set 1 SPVID Set 2 Configure Sets an let the allocation be from the set 1/13/2009 January Interim New Orleans 31 SPVID Allocation VID space 4096 0 SPVID Pool SPVID Region VIDs VIDs Configure an SPVID pool and sets come from the pool 1/13/2009 January Interim New Orleans 32 IEEE 802.1aq Project Where are we now? • Topology Distribution – • Loop Prevention – • Optional Forwarding change Ingress Check Leverage link State Multicast Source Tree identification • • Convergence time/algorithms MSTP/RSTP/STP backwards/forwards interoperability & coexistence Provisioning – – – • SPVID or B-VID&Source DA MRP and Link State Path Computation – • • Documenting options Proposals in works SPBB – • Documenting compliance SPVID allocation – • TAP or SPBB Multicast Loop Prevention Loop Mitigation – • Only IS-IS need TLVs IS-IS Tree types (Shared Trees or Tree per source, etc) MIBs Mis-provisioning Proposal in works Documented Clause 13 TBD Seems complete CFM – – Document Both TBD SPB CFM SPBB CFM 1/13/2009 January Interim New Orleans 33 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 • Per Bridge – Bridge Identifier – Per Base VID » Define SPVID » Bridge Priority » Supported Multicast Groups/I-SIDs » Supported Unicast • Per Port – Per Base VID » Link Metric, Port Priority 1/13/2009 January Interim New Orleans 34 Other information and Pointers • http://www.ieee802.org/1/ • http://www.ieee802.org/1/files/public/ • SPB-ISIS mailing list for SPB IS-IS related discussions – If you want to subscribe to the spb-isis list you can subscribe by sending to: spb-isis-request@ietf.org With subscribe in the body. 1/13/2009 January Interim New Orleans 35 Glossary B-MAC Backbone MAC BEB Backbone Edge Bridge BCB Backbone Core Bridge C-VID Customer VID CFM Connectivity Fault Management CST Common Spanning Tree ELINE Ethernet Point to Point Service ELAN Ethernet LAN Service ETREE Ethernet Hub and Spoke Service FDB Filtering Data Base I-SID (802.1ah) Service Identifier IGP Interior Gateway Protocol (Typically link state) IS-IS Intermediate System to Intermediate System (IGP) IST Internal Spanning Tree LAN Local Area Network MAC Media Access Control MACinMAC see PBB MEP Maintenance End point 1/13/2009 MIP Maintenance Intermediate point MMAC Multicast MAC MSTP Multiple Spanning tree protocol MMRP Multiple MAC Registration Protocol OAM Operations, Administration and Maintenance PB Provider Bridges IEEE 802.1ad PBB Provider Backbone Bridging IEEE 802.1ah PBB-TE PBB Traffic Engineering IEEE 802.1Qay QinQ see PB S-VID Service VID SPB Shortest Path Bridging IEEE 802.1aq SPBB Shortest Path Backbone Bridging SPT Shortest Path Tree STP Spanning tree protocol RSTP Rapid Spanning tree protocol TTL Time To Live VID VLAN Identifier VLAN Virtual LAN January Interim New Orleans 36