Flex Algorithm for BIER
draft-nainar-bier-flex-algo-00

Document Type Active Internet-Draft (individual)
Last updated 2019-11-04
Stream (None)
Intended RFC status (None)
Formats plain text pdf htmlized bibtex
Stream Stream state (No stream defined)
Consensus Boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date
Responsible AD (None)
Send notices to (None)
Internet Engineering Task Force                                 N. Kumar
Internet-Draft                                              IJ. Wijnands
Intended status: Informational                                 M. Mishra
Expires: May 7, 2020                                               Cisco
                                                        November 4, 2019

                        Flex Algorithm for BIER
                     draft-nainar-bier-flex-algo-00

Abstract

   Bit Index Explicit Replication (BIER) is an architecture that
   provides optimal multicast forwarding through a "BIER domain" without
   requiring intermediate routers to run explicit tree-building protocol
   or to maintain multicast-related, per-flow state.  IGP protocols are
   extended to carry BFR-Id and other encapsulation informations that
   are used by traditional path computing algorithm using link metric
   for a loop-free best path selection.

   This document defines a constrained based path selection using IGP
   flexible Algorithm for BIER.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in RFC
   2119 [RFC2119] RFC 8174 [RFC8174] when and only when, they appear in
   all capitals, as shown here.

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).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   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."

   This Internet-Draft will expire on May 7, 2020.

Kumar, et al.              Expires May 7, 2020                  [Page 1]
Internet-Draft             BIER Flex Algorithm             November 2019

Copyright Notice

   Copyright (c) 2019 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
   (https://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Acronyms and Terminology  . . . . . . . . . . . . . . . .   3
       1.1.1.  Acronyms  . . . . . . . . . . . . . . . . . . . . . .   3
       1.1.2.  Terminology . . . . . . . . . . . . . . . . . . . . .   3
   2.  Flexible Algorithm  . . . . . . . . . . . . . . . . . . . . .   3
   3.  Constraint Forwarding Identifier  . . . . . . . . . . . . . .   4
     3.1.  BFR ID Mapping for Flexible Algorithm . . . . . . . . . .   4
     3.2.  BIER-MPLS Label Mapping for Flexiblem Algorithm . . . . .   5
   4.  IGP Extensions Flexible Algorithm . . . . . . . . . . . . . .   6
     4.1.  ISIS  . . . . . . . . . . . . . . . . . . . . . . . . . .   6
     4.2.  OSPF  . . . . . . . . . . . . . . . . . . . . . . . . . .   6
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   6
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
   7.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   6
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .   6
     8.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   7

1.  Introduction

   [RFC8279] defines Bit Index Explicit Replication (BIER), an
   architecture that provides optimal multicast forwarding through a
   "BIER domain" without requiring intermediate routers to run explicit
   tree-building protocol or to maintain multicast-related, per-flow
   state.  [RFC8401] and [RFC8444] defines the IGP protocols extensions
   to carry BFR-Id and other encapsulation informations that are used by
   traditional path computing algorithm using link metric for a loop-
   free best path selection.

Kumar, et al.              Expires May 7, 2020                  [Page 2]
Internet-Draft             BIER Flex Algorithm             November 2019

   The ability to compute constrained path using attributes beyond the
   basic link metric and steering the multicast traffic over such
   constrained path brings a lot of benefits such as efficient load
   distribution, path dis-jointness and resiliency.  Bandwidth-aware,
   delay-sensitive or multi-planar are some of the examples for such
   constrained path selection.  The path computation and traffic
   steering over flexible algorithm based constrained path requires
   advertising a set of Path constraints associated to each link and a
   unique dataplane based identifier to differentiate the data packets
   that needs to be steered over such computed constrained paths.

   This document specifies the IGP protocol extensions and the mechanism
   to implement IGP Flexible Algorithm for BIER network.

1.1.  Acronyms and Terminology

1.1.1.  Acronyms

   TBD

1.1.2.  Terminology

   This document uses the terminologies defined in [RFC8279], [RFC8296],
   and so the readers are expected to be familiar with the same.

2.  Flexible Algorithm

   Different types of contraints may be used to compute a path over the
   BIER network.  Link performance and multi-plane are some of the
   common examples for such constraints.  An example multiplane BIER
   network is shown in below figure 1.

Kumar, et al.              Expires May 7, 2020                  [Page 3]
Internet-Draft             BIER Flex Algorithm             November 2019

         +---(gBFR1)--------------(gBFR2)
        /       +                     +
       /        | \                   | \
      /         |  \                  |  \
   (BFIR)       |  (gBFR3)------------~(gBFR4)------+
      \         |     +               |    +         \
       \        |     |               |    |          \
        \       +     |               |    |           \
         +----(rBFR1)--------------(rBFR2) |         (BFER)
                 +    |               +    |           /
                   \  |                 \  |          /
                    \ |                  \ |         /
                     +                    +         /
                   (rBFR3)---------------(rBFR4)---+

                   Figure 1. MultiPlane BIER Network

   The above BIER network is enabled with "green" and "red" planes by
   assigning a contiguous set of BFRs to each plane.  For example,
   gBFR1, gBFR2, gBFR3 and gBFR4 belongs to "green" plane while rBFR1,
   rBFR2, rBFR3 and rBFR$ belong sto "red" plane.  BFIR and BFER are
   enabled with both the planes.

   Any BFR must have a mechanism to identify the set of constraints
   associated to each algorithm so that a loop free path can be
   computed.  Any BFR must have a mechanism to map the data packet to
   the associated constrained path for loop free constrained forwarding.

3.  Constraint Forwarding Identifier

   This section explains different mechanism for identifying the
   constraints forwarding in the BIER encapsulated data packet.

3.1.  BFR ID Mapping for Flexible Algorithm

   For each Flexible Algorithm, a domain wide unique BFR-ID will be
   assigned with BFR-Prefix for each participating BFER within the BIER
   domain.

Kumar, et al.              Expires May 7, 2020                  [Page 4]
Internet-Draft             BIER Flex Algorithm             November 2019

       +---(gBFR1)--------------(gBFR2)
      /       +                     +
     /        | \                   | \
    /         |  \                  |  \
 (BFIR)       |  (gBFR3)------------~(gBFR4)------+
    \         |     +               |    +         \
     \        |     |               |    |          \
      \       +     |               |    |           \
       +----(rBFR1)--------------(rBFR2) |         (BFER) (0001 = red)
               +    |               +    |           /    (0010 = green)
                 \  |                 \  |          /
                  \ |                  \ |         /
                   +                    +         /
                 (rBFR3)---------------(rBFR4)---+
                 Figure 2. BFR-ID Mapping

   Each BFER is assigned with domain wide unique BFR-ID for each
   Flexible Algorithm.  In Figure 2, BFER assigns 0001 for "red" plane
   while using 0010 for "green" plane.  Any BFR participating in one
   plane may not have the BFR-ID associated with other planes.

   BFIR pushes the relevant BFR-ID to enforce the forwarding over any
   specific contraint path which can be influenced by a local policy.

3.2.  BIER-MPLS Label Mapping for Flexiblem Algorithm

   For each Flexible Algorithm, a locally unique BIER-MPLS label is
   assigned by each participating BFR within the BIER domain.  In this
   option, each BFER is assigned with just one BFR-ID as mentioned in
   [RFC8279].

      +---(gBFR1)--------------(gBFR2)
     /       +                     +
    /        | \                   | \
   /         |  \                  |  \
(BFIR)       |  (gBFR3)------------~(gBFR4)------+
   \         |     +               |    +         \
    \        |     |               |    |          \
     \       +     |               |    |           \    (BFR-ID = 0001)
      +----(rBFR1)--------------(rBFR2) |         (BFER) (L1 = red)
              +    |               +    |           /    (L2 = green)
                \  |                 \  |          /
                 \ |                  \ |         /
                  +                    +         /
                (rBFR3)---------------(rBFR4)---+

                    Figure 3. BIER-MPLS Label Mapping

Kumar, et al.              Expires May 7, 2020                  [Page 5]
Internet-Draft             BIER Flex Algorithm             November 2019

   Each BFR is assigned with locally unique BIER-MPLS for each Flexible
   Algorithm.  The BIER-MPLS label along with the relevant constraints
   are advertised to other BFR using extensions defined in section x.
   In Figure 3, BFER is assigned with BFR-ID of 1 and advertise BIER-
   MPLS label L1 for "red" plane and L2 for "green" plane.

   BFIR pushes the relevant BIER-MPLS advertised by the nexthop.  Any
   BFR participating in both the plane will have the forwarding
   instruction for both the planes populated in different BIFT.  The
   incoming BIER-MPLS label is used to identify the plane and the BIFT
   to perform the lookup and forwarding.

   Additional details about non-MPLS BIER encapsulation will be included
   in later revisions.

4.  IGP Extensions Flexible Algorithm

   This section defines the IGP protocol extensions for BIER Flexible
   Algorithm.

4.1.  ISIS

4.2.  OSPF

5.  Security Considerations

   To be Updated.

6.  IANA Considerations

   TBD.

7.  Acknowledgements

   To be Updated.

8.  References

8.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

Kumar, et al.              Expires May 7, 2020                  [Page 6]
Internet-Draft             BIER Flex Algorithm             November 2019

   [RFC8279]  Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A.,
              Przygienda, T., and S. Aldrin, "Multicast Using Bit Index
              Explicit Replication (BIER)", RFC 8279,
              DOI 10.17487/RFC8279, November 2017,
              <https://www.rfc-editor.org/info/rfc8279>.

   [RFC8296]  Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A.,
              Tantsura, J., Aldrin, S., and I. Meilik, "Encapsulation
              for Bit Index Explicit Replication (BIER) in MPLS and Non-
              MPLS Networks", RFC 8296, DOI 10.17487/RFC8296, January
              2018, <https://www.rfc-editor.org/info/rfc8296>.

   [RFC8401]  Ginsberg, L., Ed., Przygienda, T., Aldrin, S., and Z.
              Zhang, "Bit Index Explicit Replication (BIER) Support via
              IS-IS", RFC 8401, DOI 10.17487/RFC8401, June 2018,
              <https://www.rfc-editor.org/info/rfc8401>.

   [RFC8444]  Psenak, P., Ed., Kumar, N., Wijnands, IJ., Dolganow, A.,
              Przygienda, T., Zhang, J., and S. Aldrin, "OSPFv2
              Extensions for Bit Index Explicit Replication (BIER)",
              RFC 8444, DOI 10.17487/RFC8444, November 2018,
              <https://www.rfc-editor.org/info/rfc8444>.

   [RFC8459]  Dolson, D., Homma, S., Lopez, D., and M. Boucadair,
              "Hierarchical Service Function Chaining (hSFC)", RFC 8459,
              DOI 10.17487/RFC8459, September 2018,
              <https://www.rfc-editor.org/info/rfc8459>.

8.2.  Informative References

   [I-D.ietf-lsr-flex-algo]
              Psenak, P., Hegde, S., Filsfils, C., Talaulikar, K., and
              A. Gulko, "IGP Flexible Algorithm", draft-ietf-lsr-flex-
              algo-04 (work in progress), September 2019.

Authors' Addresses

   Nagendra Kumar
   Cisco Systems, Inc.

   Email: naikumar@cisco.com

   Ijsbrand Wijnands
   Cisco Systems, Inc.

   Email: iwijnand@cisco.com

Kumar, et al.              Expires May 7, 2020                  [Page 7]
Internet-Draft             BIER Flex Algorithm             November 2019

   Mankamana Mishra
   Cisco Systems, Inc.

   Email: mankamis@cisco.com

Kumar, et al.              Expires May 7, 2020                  [Page 8]