Internet DRAFT - draft-tissa-trill-cmt

draft-tissa-trill-cmt



TRILL Working Group                                  Tissa Senevirathne
Internet Draft                                                    CISCO
Intended status: Standard Track                    Janardhanan Pathangi
Updates: 6325                                                      DELL
                                                             Jon Hudson
                                                                Brocade

                                                         April 13, 2012
Expires: October 2012



                Coordinated Multicast Trees (CMT)for TRILL
                       draft-tissa-trill-cmt-01.txt


Status of this Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six
   months and may be updated, replaced, or obsoleted by other documents
   at any time.  It is inappropriate to use Internet-Drafts as
   reference material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html

   This Internet-Draft will expire on October 13, 2012.

Copyright Notice

   Copyright (c) 2012 IETF Trust and the persons identified as the
   document authors. All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document. Please review these documents



Senevirathne           Expires October 13, 2012                [Page 1]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


   carefully, as they describe your rights and restrictions with
   respect to this document.

Abstract

   TRILL facilitates loop free connectivity to non TRILL legacy
   networks via choice of an Appointed Forwarder for set of VLANs.
   Appointed Forwarder provides VLAN level load sharing with active-
   standby model. Mission critical operations such as High Performance
   Data Centers require active-active load sharing model. Active-Active
   load sharing model can be accomplished by representing any given non
   TRILL legacy network with a single virtual RBridge. Virtual
   representation of the non-TRILL legacy network with a single RBridge
   poses serious challenges in multi-destination RPF calculations. This
   document presents the required enhancements to build Coordinated
   Multicast Trees (CMT) within the TRILL campus to solve related RPF
   issues. CMT provides flexibility to RBridges to select desired path
   of association to a given distribution tree.

Table of Contents


   1. Introduction...................................................3
      1.1. Scope and Applicability...................................4
      1.2. Contributors..............................................5
   2. Conventions used in this document..............................5
   3. AFFINITY TLV...................................................5
   4. Multicast Tree Construction and use of Affinity Sub-TLV........6
      4.1. Update to RFC 6325........................................7
      4.2. Announcing virtual RBridge nickname.......................8
      4.3. Affinity Sub-TLV capability...............................8
   5. Theory of operation............................................8
      5.1. Distribution Tree provisioning............................8
      5.2. Affinity Sub-TLV advertisement............................8
      5.3. Affinity sub-TLV conflict resolution......................9
      5.4. Ingress Multi-Destination Forwarding......................9
         5.4.1. Forwarding when n < k................................9
      5.5. Egress Multi-Destination Forwarding......................10
         5.5.1. Traffic Arriving on an assigned Tree to RBk-RBv.....10
         5.5.2. Traffic Arriving on other Trees.....................10
      5.6. Failure scenarios........................................10
         5.6.1. Edge RBridge RBk failure............................10
      5.7. Backward compatibility...................................11
   6. Security Considerations.......................................11
   7. IANA Considerations...........................................12
   8. References....................................................12
      8.1. Normative References.....................................12


Senevirathne           Expires October 13, 2012                [Page 2]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


      8.2. Informative References...................................12
   9. Acknowledgments...............................................12
   10. Authors' Addresses...........................................14

1. Introduction

   TRILL presented in [RFC6325] and other related documents, provide
   methods of utilizing all available paths for active forwarding, with
   minimum configuration. TRILL utilizes IS-IS as control plane and
   encapsulates native frames with a TRILL header.

   Legacy networks utilize IEEE 802.1D Spanning Tree Protocol as the
   control protocol and utilizes at any given time, a single path among
   all available paths for active forwarding. Legacy networks forward
   frames in ''native'' format.

   [RFC6325],[RFC6327] and [RFC6439] provide methods for
   interoperability between TRILL and Legacy networks. [RFC6439],
   provide active-standby solution, where only one of the RBridges is
   in active forwarding state for any given VLAN. The RBridge in active
   forwarding state for any given VLAN is referred to as the Appointed
   Forwarder (AF). All frames ingressing into a TRILL network via the
   Appointed Forwarder are encapsulated with the TRILL header with a
   nickname held by the ingress AF RBridge. Due to failures, re-
   configurations and other network dynamics, Appointed Forwarder for
   any set of VLANs may change. RBridges maintain forwarding table that
   contain destination MAC address to egress RBridge binding. In the
   event of AF change, forwarding tables of remote RBridges may
   continue to forward traffic to the previous AF and may get discarded
   at the egress, causing traffic disruption.

   Mission critical applications such as High Performance Data Centers
   require resiliency during failover. The active-active forwarding
   model minimizes impact during failures and maximizes the available
   network bandwidth. A typical deployment scenario, depicted in Figure
   1, which may have either End Stations and/or Legacy bridges attached
   to the RBridges.  These Legacy devices typically are multi-homed to
   several RBridges and treat all of the uplinks as a single Link
   Aggregation (LAG) bundle. The Appointed Forwarder designation
   presented in [RFC6439] requires each of the edge RBridges to
   exchange TRILL hello packets. By design, a LAG does not forward
   packets received on one of the member ports of the LAG to other
   member ports of the same LAG. As a result AF designation methods
   presented in [RFC6439] cannot be applied to deployment scenario
   depicted in Figure 1




Senevirathne           Expires October 13, 2012                [Page 3]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


   An active-active load sharing model can be implemented by
   representing the edge of the network connected to a specific group
   of RBridges by a single virtual RBridge. In addition to an active-
   active forwarding model, there may be other applications that may
   requires similar representations.

   Sections 4.5.1 and 4.5.2 of [RFC6325] specify distribution tree
   calculation and Reverse Path Forwarding Check calculation algorithms
   for multi-destination forwarding. The algorithms specified in
   [RFC6325], strictly depends on link cost and parent RBridge
   priority. As a result, based on the network topology, it may be
   possible that a given edge RBridge, if it is forwarding on behalf of
   the virtual RBridge, may not have a candidate multicast tree that
   the edge RBridge can forward traffic on because there is no tree for
   which the virtual RBridge is a leaf node from the edge RBridge.

   In this document we present a method that allows RBridges to specify
   the path of association to distribution trees. Remote RBridges
   calculate the SPF and derive the RPF for distribution trees based on
   the distribution tree association advertisements. In the absence of
   distribution tree association advertisements, remote RBridges derive
   the SPF based on the algorithm specified in section 4.5.1 of [RFC
   6325].

   Other applications, beside the above mentioned active-active
   forwarding model, may utilize the distribution tree association
   framework presented in this document to associate to distribution
   trees through a preferred path.

   This proposal requires presence of multiple multi-destination trees
   within the TRILL campus and updating all the RBridges in the network
   to support the new Affinity sub-TLV. It is expected that both of
   these requirements will be met as they are control plane changes,
   and will be common deployment scenario. In case any of the above two
   conditions are not met RBridges MUST support a fallback option for
   interoperability. Since the fallback is expected to be a temporary
   phenomenon till all RBridges are upgraded, this proposal gives
   guidelines for such fallbacks, and does not mandate or specify any
   specific set of fallback options.

1.1. Scope and Applicability

   This document provides a concept of Affinity sub-TLV to solve
   associated RPF issues at the active-active edge. Specific methods in
   this document for making use of the Affinity sub-TLV are applicable
   where multiple RBridges are connected to edge device through link



Senevirathne           Expires October 13, 2012                [Page 4]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


   aggregation or to a multiport server or some similar arrangement
   where the RBridges cannot see each other's Hellos.

   This document DOES NOT provide other required operational elements
   to implement active-active edge solution, such as methods of link
   aggregation. Solution specific operational elements are outside the
   scope of this document and will be covered in solution specific
   documents.

   Examples provided in this document are for illustration purposes
   only.

1.2. Contributors

   The work in this document is a result of much passionate discussions
   and contributions from following individuals. Their names are listed
   in alphabetical order:

   Ayan Banerjee, Dinesh Dutt, Donald Eastlake, Mingui Zhang, Radia
   Perlman, Sam Aldrin, Shivakumar Sundaram, Zhai Hongjun.

2. Conventions used in this document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

   In this document, these words will appear with that interpretation
   only when in ALL CAPS. Lower case uses of these words are not to be
   interpreted as carrying [RFC2119] significance.



3. AFFINITY TLV

   Association of a RBridge to a multicast tree through a specific path
   is accomplished by using a new IS-IS sub-TLV, Affinity TLV.

   AFFINITY TLV is a sub-TLV under the Router capability TLV (242) [RFC
   4971]. Section 2.3.10 of [RFC6326bis] formally specifies the code
   point and data structure for the Affinity sub-TLV.








Senevirathne           Expires October 13, 2012                [Page 5]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


4.    Multicast Tree Construction and use of Affinity Sub-TLV
    Figure 1 and Figure 2 below show the reference topology and a logical topology
using CMT to provide active-active service.
            ------------------
           /                    \
          |                      |
          | TRILL Campus         |
          |                      |
           \                     /
            ---------------------
               |       |    |
   |           |       |     ----------
            DRB|       |              |
           +------+ +------+      +------+
           |      | |      |      |      |
           |(RB1) | |(RB2) |      | (RBk)|
           +------+ +------+      +------+
               |       |               |
               |       |    -----------    ----
               |       |   |    -------------  |
                -----  |   |    -----------  | |
            LAG---->(| |   | )            (| | |) LAG
                    +-------+    . .  .  +-------+
                    | CE1   |            | CEn   |
                    |       |            |       |
                    +-------+            +-------+

                        Figure 1 Reference Topology




















Senevirathne           Expires October 13, 2012                [Page 6]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


            ------------------              Sample Multicast Tree (T1)
           /                    \
          |                      |                  |
          | TRILL Campus         |                  o RBn
          |                      |                / | \
           \                     /               /  |  ---\
            ---------------------             RB1o  o      o
               |       |    |                    |   RB2    RBk
   |           |       |     ----------          |
            DRB|       |              |          oRBv
           +------+ +------+      +------+
           |      | |      |      |   |
           |(RB1) | |(RB2) |      | (RBk)|
           +------+ +------+      +------+
            ooo|ooooooo|oooooooooooooo|oo
           o                             o
           o  virtual RBridge RBv        o
            ooo|ooooooo|ooo|ooooooooooooo  ----
               |       |   |       ----------  |
                -----  |   |     ----------  | |
            LAG---->(| |   | )            (| | | )  LAG
                    +-------+    . .  .  +-------+
                    | CE1   |            | CEn   |
                    |       |            |       |
                    +-------+            +-------+

                     Figure 2 Example Logical Topology



4.1. Update to RFC 6325

   Section 4.5.1 of [RFC6325], is updated as below:

   Each RBridge that desires to be a parent RBridge for a specific
   multi-destination distribution tree x for child RBridge RBy
   announces the desired association through Affinity sub-TLV. The
   child RBridge RBy is specified by its nickname (or one of its
   nicknames if it hold more than one).

   When such an Affinity sub-TLV is present, the association specified
   by the affinity sub-TLV MUST be used when constructing the SPF tree.
   In the absence of such Affinity sub-TLV, or if there are RBRidges in
   the network that are do not support Affinity sub-TLV, SPF tree is
   calculated as specified in the section 4.5.1 of [RFC6325]. Section
   4.3. below explains methods of identifying RBridges that support
   Affinity sub-TLV capability.


Senevirathne           Expires October 13, 2012                [Page 7]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


4.2. Announcing virtual RBridge nickname

   Each edge RBridge RB1 to RBk advertises virtual RBridge nickname RBv
   using the nickname sub-TLV (6), [RFC6326bis], along with their
   regular nickname or nicknames.

4.3. Affinity Sub-TLV capability.

   RBridges that announce the TRILL version sub-TLV [RFC6326bis] and
   set the Affinity capability bit (section 7. ) support the Affinity
   sub-TLV and calculation of multi-destination distribution trees as
   specified herein.

5. Theory of operation

5.1. Distribution Tree provisioning

   Let's assume there are n distribution trees and k edge RBridges in
   the edge group of interest.

   If n >= k

     Let's assume edge RBridges are sorted in numerically ascending
     order by SystemID such that RB1 < RB2 < RBk. Each Rbridge in the
     numerically sorted list is assigned a monotonically increasing
     number j such that; RB1=0, RB2=1, RBi=j and RBi+1=j+1.



     Assign each tree to RBi such that tree number { (tree_number) %
     k}+1 is assigned to RBridge i for tree_number from 1 to n. where n
     is the number of trees and k is the number of RBridges considered
     for tree allocation.

   If n < k

     Distribution trees are assigned to RBridges RB1 to RBn, using the
     same algorithm as n >= k case. RBridges RBn+1 to RBk do not
     participate in active-active forwarding process on behalf of RBv.

5.2. Affinity Sub-TLV advertisement

   Each RBridge in the RB1..RBk domain advertises an Affinity TLV on
   behalf of RBv.

   As an example, let's assume that RB1 has chosen Trees t1 and tk+1 on
   behalf of RBv.


Senevirathne           Expires October 13, 2012                [Page 8]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


   RB1 advertises affinity TLV; {RBv, Num of Trees=2, t1, tk+1.

   Other RBridges in the RB1..RBk edge group follow the same procedure.

5.3. Affinity sub-TLV conflict resolution

   If different RBridges advertise Affinity sub-TLVs that try to
   associate the same virtual RBridge as their child in the same tree
   or trees, those Affinity sub-TLVs are in conflict for those trees.
   The nicknames of the conflicting RBridges are compared to identify
   which RBridge holds the nickname that is the highest priority to be
   a tree root, with the System ID as the tie breaker

   The RBridge with the highest priority to be a tree root will retain
   the Affinity association. Other RBridges with lower priority to be a
   tree root MUST stop advertising their conflicting Affinity sub-TLV,
   re-calculate the multicast tree affinity allocation, and, if
   appropriate, advertise a new non-conflict Affinity sub-TLV.

   Similarly, remote RBridges MUST honor the Affinity sub-TLV from the
   RBridge with the highest priority to be a tree root and ignore the
   conflicting Affinity sub-TLV entries advertised by the RBridges with
   lower priorities to be tree roots.

5.4. Ingress Multi-Destination Forwarding

   If there is at least one tree on which RBv has affinity via RBk,
   then RBk performs the following operations, for multi-destination
   frames received from a CE node:

   1. Flood to locally attached CE nodes subjected to VLAN and multicast
     pruning.
   2. Encapsulate in TRILL header and assign ingress RBridge nickname as
     RBv. (nickname of the virtual RBridge).
   3. Forward to one of the distribution trees, tree x in which RBv is
     associated with RBk


5.4.1. Forwarding when n < k

     If there is no tree on which RBv can claim affinity via RBk
     (Probably because the number of trees n built is less than number
     of RBridges k announcing the affinity sub-TLV), then RBk MUST fall
     back to one of the following

     1. This RBridge should stop forwarding frames from the CE nodes,
        and should mark its link as passive. This will prevent CE nodes


Senevirathne           Expires October 13, 2012                [Page 9]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


        from forwarding data on to this RBridge, and only use those
        RBridges which have been assigned a tree -                                                      -OR-
     2. This RBridge tunnels multi-destination frames received from
        attached native devices to an RBridge RBy that has an assigned
        tree. The tunnel destination should forward it to the TRILL
        network, and also to its local access links .  (The mechanism
        of tunneling and handshake between the tunnel source and
        destination are out of scope of this specification and may be
        addressed in future documents).

   Above fallback options may be very specific to active-active
   forwarding scenario. However, as stated above, Affinity sub-TLV may
   be used in other applications. In such event the application SHOULD
   specify applicable fallback options.

5.5. Egress Multi-Destination Forwarding

5.5.1. Traffic Arriving on an assigned Tree to RBk-RBv

   Multi-destination frames arriving at RBk on a Tree x, where RBk has
   announced the affinity of RBv via x, MUST be forwarded to CE members
   of RBv. Forwarding to other end-nodes and RBridges that are not part
   of the network represented by the RBv virtual RBridge MUST follow
   the forwarding rules specified in [RFC6325].

5.5.2. Traffic Arriving on other Trees

   Multi-destination frames arriving at RBk on a Tree y, where RBk has
   not announced the affinity of RBv via y, MUST NOT be forwarded to CE
   members of RBv. Forwarding to other end-nodes and RBridges that are
   not part of the network represented by the RBv virtual RBridge  MUST
   follow the forwarding rules specified in RFC6325.

5.6. Failure scenarios

5.6.1. Edge RBridge RBk failure

   The below failure recovery algorithm is presented only as a
   guideline. Implementations MAY include other failure recover
   algorithms. Details of such algorithms are outside the scope of this
   document.

   Each of the member RBridges of given virtual RBridge edge group is
   aware of its member RBridges through configuration or some other
   method.




Senevirathne           Expires October 13, 2012               [Page 10]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


   Member RBridges detect nodal failure of a member RBridge through IS-
   IS LSP advertisements or lack thereof.

   Upon detecting a member failure, each of the member RBridges of the
   RBv edge group start recovery timer T_rec for failed RBrdige RBi. If
   the previously failed RBridge RBi has not recovered after the expiry
   of timer T_rec, members RBridges perform distribution tree
   assignment algorithm specified in section 5.1. Each of the member
   RBridges re-advertises the Affinity sub-TLV with new tree
   assignment. This action causes the campus to update the tree
   calculation with the new assignment.

   RBi upon start-up, starts advertising its presence through IS-IS
   LSPs and starts a timer T_i. Member RBridges detecting the presence
   of RB start a timer T_j. Timer T_j SHOULD be at least < T_i/2.
   (Please see note below)

   Upon expiry of timer T_j, member RBridges recalculate the multi-
   destination tree assignment and advertised the related trees using
   Affinity sub-TLV.

   Upon expiry of timer T_i, RBi recalculate the multi-destination tree
   assignment and advertises the related trees using Affinity TLV.

   Note: Timers T_i and T_j are designed so as to minimize traffic down
   time and avoid multi-destination packet duplication.

5.7. Backward compatibility

   Implementations MUST support backward compatibility mode to
   interoperate with pre Affinity sub-TLV RBRidges in the network. Such
   backward compatibility operation MAY include, however is not limited
   to, tunneling and/or active-standby modes of operations.

   Example:

   Step 1.  Stop using virtual RBridge nickname for traffic ingressing
     from CE nodes
   Step 2.  Stop performing active-active forwarding. And fall back to
     active standby forwarding, based on locally defined policies.
     Definition such policies are outside the scope of this document
     and may be addressed in future documents.

6. Security Considerations

   Security considerations are similar to RFC 6325,RFC 6326 and RFC
   6327. Additional security considerations are being discussed.


Senevirathne           Expires October 13, 2012               [Page 11]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


7. IANA Considerations

   IANA is requested to allocate a capability bit for ''Affinity
   Supported'' in the TRILL-VER sub-TLV. ''Affinity Supported'' capability
   bit and Affinity sub-TLV are specified and allocated in
   [RFC6326bis].


8. References

8.1. Normative References

   [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
             Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC6325] Perlman, R., et.al. ''RBridge: Base Protocol
             Specification'', RFC 6325, July 2011.

   [RFC6327] Eastlake, D. et.al., ''RBridge: Adjacency'', RFC 6327, July
             2011.

   [RFC6349] Eastlake, D. et.al., ''RBridge: Appointed Forwarder'', RFC
             6349, November 2011.

   [RFC6326bis] Eastlake, D. et.al., ''Transparent Interconnection of
             Lots of Links (TRILL) Use of IS-IS'', draft-eastlake-isis-
             rfc6326bis-02.txt, Work in Progress, December 2011.

8.2. Informative References

   [RFC6165] Banerjee, A. and Ward, D. ''Extensions to IS-IS for Layer-2
             Systems'', RFC 6165, April 2011.

   [RFC4971] Vasseur, JP. et.al ''Intermediate System to Intermediate
             System (IS-IS) Extensions for Advertising Router
             Information'', RFC 4971, July 2007.

   [TRILLPN] Zhai,H., et.al ''RBridge: Psuedonode Nickname'', draft-hu-
             trill-psuedonode-nickname-01, Work in progress, November
             2011.

9. Acknowledgments

   Authors wish to extend their appreciations towards individuals who
   volunteered to review and comment on the work presented in this
   document and provided constructive and critical feedback. Specific



Senevirathne           Expires October 13, 2012               [Page 12]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


   acknowledgements are due for Anoop Ghanwani,  Ronak Desai, and Varun
   Shah.

   This document was prepared using 2-Word-v2.0.template.dot.













































Senevirathne           Expires October 13, 2012               [Page 13]

Internet-Draft  Coordinated Multicast Trees for TRILL        April 2012


10. Authors' Addresses

   Tissa Senevirathne
   Cisco Systems
   375 East Tasman Drive,
   San Jose, CA 95134

   Phone: +1-408-853-2291
   Email: tsenevir@cisco.com


   Janardhanan Pathangi
   Dell/Force10 Networks
   Olympia Technology Park,
   Guindy Chennai 600 032

   Phone: +91 44 4220 8400
   Email: Pathangi_Janardhanan@Dell.com


   Jon Hudson
   Brocade
   130 Holger Way
   San Jose, CA 95134 USA

   Email: jon.hudson@gmail.com























Senevirathne           Expires October 13, 2012               [Page 14]