Internet DRAFT - draft-aravindbabu-idr-bgp-ls-flex-algo-ext

draft-aravindbabu-idr-bgp-ls-flex-algo-ext







Inter-Domain Routing                                       K. Talaulikar
Internet-Draft                                           A. MahendraBabu
Intended status: Standards Track                           Cisco Systems
Expires: 10 September 2023                                  9 March 2023


      Advertising Flexible Algorithm Extensions in BGP Link-State
             draft-aravindbabu-idr-bgp-ls-flex-algo-ext-00

Abstract

   Flexible Algorithm is a solution that allows some routing protocols
   (e.g., OSPF and IS-IS) to compute paths over a network based on user-
   defined (and hence, flexible) constraints and metrics.  The
   computation is performed by routers participating in the specific
   network in a distributed manner using a Flexible Algorithm
   Definition.  This Definition is provisioned on one or more routers
   and propagated through the network by OSPF and IS-IS flooding.

   BGP Link-State (BGP-LS) enables the collection of various topology
   information from the network.  RFC9351 introduced BGP-LS support for
   the advertisement of Flexible Algorithm Definition as a part of the
   topology information from the network.  This document specifies the
   advertisement of further Flexible Algorithm related extensions in
   BGP-LS.

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 10 September 2023.

Copyright Notice

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




Talaulikar & MahendraBabExpires 10 September 2023               [Page 1]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   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 Revised BSD License text as
   described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Revised BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Requirements Language . . . . . . . . . . . . . . . . . .   3
   2.  Advertising IP Algorithm Participation  . . . . . . . . . . .   3
   3.  Advertising IP Algorithm Reachability . . . . . . . . . . . .   4
   4.  Advertising Generic Metric for Links  . . . . . . . . . . . .   6
   5.  Advertising Flexible Algorithm Definition Extensions  . . . .   7
     5.1.  FAD Exclude Minimum Bandwidth Sub-TLV . . . . . . . . . .   7
     5.2.  FAD Exclude Maximum Link Delay Sub-TLV  . . . . . . . . .   8
     5.3.  FAD Reference Bandwidth Sub-TLV . . . . . . . . . . . . .   8
     5.4.  FAD Bandwidth Thresholds Sub-TLV  . . . . . . . . . . . .   9
     5.5.  Flexible Algorithm Exclude-Any Reverse Affinity
           Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . . .  11
     5.6.  Flexible Algorithm Include-Any Reverse Affinity
           Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . . .  12
     5.7.  Flexible Algorithm Include-All Reverse Affinity
           Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . . .  12
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  13
   7.  Manageability Considerations  . . . . . . . . . . . . . . . .  14
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  14
   9.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  14
   10. References  . . . . . . . . . . . . . . . . . . . . . . . . .  14
     10.1.  Normative References . . . . . . . . . . . . . . . . . .  14
     10.2.  Informative References . . . . . . . . . . . . . . . . .  15
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  16

1.  Introduction

   Flexible Algorithm is a solution that allows some routing protocols
   (e.g., OSPF and IS-IS) to compute paths over a network based on user-
   defined (and hence, flexible) constraints and metrics.  The
   computation is performed by routers participating in the specific
   network in a distributed manner using a Flexible Algorithm
   Definition.  This Definition is provisioned on one or more routers
   and propagated through the network by OSPF and IS-IS flooding.
   [RFC9350] defines the base Flexible Algorithm solution that allows
   IGPs themselves to compute constraint-based paths over the network.




Talaulikar & MahendraBabExpires 10 September 2023               [Page 2]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   The extensions to BGP-LS [RFC7752] for the advertisement of the
   Flexible Algorithm Definition (FAD) information to enable learning of
   the mapping of the flexible algorithm number to its Definition in
   each area/domain of the underlying IGPs are defined in [RFC9351].

   This document defines further extensions to BGP-LS for Flexible
   Algorithm as below:

   *  The extensions to the Flexible Algorithm so that it can be used
      with the regular IPv4 and IPv6 forwarding as defined for IGPs in
      [I-D.ietf-lsr-ip-flexalgo].

   *  The Flexible Algorithm Definition that is used to exclude based on
      bandwidth and metric constraints and to automatically calculate
      metrics for use in SPF calculation as defined for IGPs in
      [I-D.ietf-lsr-flex-algo-bw-con].

   *  The Flexible Algorithm Definition that is used to include/exclude
      links in the reverse direction of the traffic flow for SPF
      calculation as defined for IGPs in
      [I-D.ppsenak-lsr-igp-flex-algo-reverse-affinity].

1.1.  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 BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

2.  Advertising IP Algorithm Participation

   The IP Algorithm TLV is a BGP-LS Attribute TLV associated with the
   Node NLRI that is used for the algorithms associated with a given
   node.  The format of this TLV is as follows:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   Algorithm 1 | Algorithm ... |  Algorithm n  |              //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

                         Figure 1: IP Algorithm TLV




Talaulikar & MahendraBabExpires 10 September 2023               [Page 3]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   *  Type: TBA

   *  Length: Variable

   *  Algorithm: Single octet algorithm value between 128 and 255
      inclusive.

   The IP Algorithm TLV is derived from the following IGP protocol-
   specific advertisements:

   *  In the case of IS-IS, from the IS-IS IP Algorithm sub-TLV defined
      in [I-D.ietf-lsr-ip-flexalgo].

   *  In the case of OSPFv2/OSPFv3, from the OSPF IP Algorithm sub-TLV
      defined in [I-D.ietf-lsr-ip-flexalgo].

   The IP Algorithm TLV is optional and it MUST NOT be advertised more
   than once in the BGP-LS Attribute.  If multiple instances are
   present, then the first one MUST be considered valid, and the rest
   MUST be ignored.

3.  Advertising IP Algorithm Reachability

   The normal or base (i.e., algorithm 0) prefix reachabilities are done
   using the BGP-LS IPv4/IPv6 Topology Prefix NLRIs defined in [RFC7752]
   along with its associated IGP metric carried within the IGP Metric
   TLV (TLV 1095) in the BGP-LS Attributed associated with the NLRI.
   The presence of IGP Metric TLV is what identifies the base/normal
   prefix reachability.

   The IP algorithm-specific reachability advertisements are also done
   using the BGP-LS IPv4/IPv6 Topology Prefix NLRIs.  However, these
   algorithm-specific advertisements MUST NOT carry an IGP Metric TLV
   along with them.  Instead, the metric associated with the IP
   algorithm-specific prefix reachability is carried within the TLVs
   introduced in the following subsections.

   A BGP-LS Consumer receiving an IPv4/IPv6 Topology Prefix NLRI
   advertisement that carries both an IGP Metric TLV along with any of
   the TLVs introduced in the following subsections, MUST consider it as
   a normal (i.e., algorithm 0) prefix reachability advertisement and
   MUST ignore all TLVs corresponding to algorithm-specific prefix
   reachability advertisements.

   The IP Algorithm Prefix Reachability TLV is a BGP-LS Attribute TLV
   associated with the IPv4/IPv6 Topology Prefix NLRI that is used for
   the advertisement of the algorithm-specific prefix reachability from
   a given node.  The format of this TLV is as follows:



Talaulikar & MahendraBabExpires 10 September 2023               [Page 4]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |      Flags    |  Algorithm    |            Reserved           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                           Metric                              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

               Figure 2: IP Algorithm Prefix Reachability TLV

   *  Type: TBA

   *  Length: 8

   *  Flags: 1 octet of flags.  The flags are copied from the IS-IS
      IPv4/IPv6 Algorithm Prefix Reachability TLV
      [I-D.ietf-lsr-ip-flexalgo] or the OSPFv2/OSPFv3 IP Algorithm
      Prefix Reachability sub-TLV [I-D.ietf-lsr-ip-flexalgo] in the case
      of IS-IS or OSPFv2/OSPFv3 respectively.

   *  Algorithm: 1 octet value providing the Associated Algorithm from
      128 to 255.

   *  Reserved: 2 octet value that MUST be set to 0 by the originator
      and ignored by the receiver.

   *  Metric: The algorithm-specific metric value.

   The IP Algorithm Prefix Reachability TLV is derived from the
   following IGP protocol-specific advertisements:

   *  In the case of IS-IS, from the IS-IS IPv4/IPv6 Algorithm Prefix
      Reachability TLV defined in [I-D.ietf-lsr-ip-flexalgo].  The sub-
      TLVs are encoded using the BGP-LS Attribute TLVs defined for the
      IPv4/IPv6 Topology Prefix NLRI.

   *  In the case of OSPF, from the OSPFv2/OSPFv3 IP Algorithm Prefix
      Reachability sub-TLV defined in [I-D.ietf-lsr-ip-flexalgo].









Talaulikar & MahendraBabExpires 10 September 2023               [Page 5]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   The Multi-topology ID (MTID) associated with the underlying IGP
   advertisements is encoded using the Multi-Topology Identifier TLV
   (TLV 263) [RFC7752] as a Prefix Descriptor TLV when the advertisement
   is associated with a non-default topology.  The IP Prefix value
   itself is encoded using the IP Reachability Information TLV (TLV 265)
   [RFC7752] as a Prefix Descriptor TLV.

   The IP Algorithm Prefix Reachability TLV MUST NOT be advertised more
   than once in the BGP-LS Attribute.  If multiple instances are
   present, then the first one MUST be considered valid, and the rest
   MUST be ignored.

4.  Advertising Generic Metric for Links

   The Generic Metric TLV is a BGP-LS Attribute TLV associated with the
   Link NLRI that is used for the advertisement of the generic metric(s)
   associated with a link.  The format of this TLV is as follows:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  Metric Type  |                   Reserved                    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                            Metric                             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

                        Figure 3: Generic Metric TLV

   *  Type: TBA

   *  Length: 8.

   *  Metric Type: 1 octet that carries a metric type from the IGP
      Metric Type registry

   *  Reserved: 3 octet value that MUST be set to 0 by the originator
      and ignored by the receiver.

   *  Metric: 4-octet field carrying the metric value.  In the case of
      IS-IS, the value MUST be in the range of 0 - 16,777,215.

   The Generic Metric TLV is derived from the following IGP protocol-
   specific advertisements:




Talaulikar & MahendraBabExpires 10 September 2023               [Page 6]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   *  In the case of IS-IS, from the IS-IS Generic Metric sub-TLV
      defined in [I-D.ietf-lsr-flex-algo-bw-con].

   *  In the case of OSPF, from the OSPF Generic Metric sub-TLV defined
      in [I-D.ietf-lsr-flex-algo-bw-con].

   The Generic Metric TLV MAY be advertised more than once in the BGP-LS
   Attribute, one for each metric type.  If multiple instances are
   present for the same metric type, then the first one MUST be
   considered valid, and the rest MUST be ignored.

5.  Advertising Flexible Algorithm Definition Extensions

   [RFC9351] introduced the Flexible Algorithm Definition (FAD) TLV that
   is advertised in the BGP-LS Attribute along with the Node NLRI for
   the advertisement of the Flexible Algorithm definition advertised by
   a given node in IGPs.

   The following subsections define new sub-TLVs of the FAD TLV to cover
   further extensions of the IGP Flexible Algorithm solution.

5.1.  FAD Exclude Minimum Bandwidth Sub-TLV

   The FAD Exclude Minimum Bandwidth sub-TLV is an optional sub-TLV that
   is used to carry the minimum bandwidth associated with the FAD that
   are used in the computation of the specific algorithm as described in
   [I-D.ietf-lsr-flex-algo-bw-con].

   The sub-TLV has the following format:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                       Minimum Bandwidth                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

              Figure 4: FAD Exclude Minimum Bandwidth sub-TLV

   *  Type: TBA

   *  Length: 4 octets.

   *  Min Bandwidth: The minimum link bandwidth is encoded in 32 bits in
      IEEE floating point format.  The units are bytes per second.



Talaulikar & MahendraBabExpires 10 September 2023               [Page 7]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   The information in the FAD Exclude Minimum Bandwidth sub-TLV is
   derived from the IS-IS and OSPF protocol-specific FAD Exclude Minimum
   Bandwidth sub-TLVs as defined in [I-D.ietf-lsr-flex-algo-bw-con].

5.2.  FAD Exclude Maximum Link Delay Sub-TLV

   The FAD Exclude Maximum Link Delay sub-TLV is an optional sub-TLV
   that is used to carry the maximum link delay information associated
   with the FAD that is used in the computation of the specific
   algorithm as described in [I-D.ietf-lsr-flex-algo-bw-con].

   The sub-TLV has the following format:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                Maximum Link Delay             |    Reserved   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

              Figure 5: FAD Exclude Maximum Link Delay sub-TLV

   *  Type: TBA

   *  Length: 4 octets.

   *  Maximum Link Delay: The maximum link delay is encoded in
      microseconds.

   *  Reserved: 1 octet field that MUST be set to 0 by the originator
      and ignored by the receiver.

   The information in the FAD Exclude Maximum Link Delay sub-TLV is
   derived from the IS-IS and OSPF protocol-specific FAD Exclude Maximum
   Link Delay sub-TLVs as defined in [I-D.ietf-lsr-flex-algo-bw-con].

5.3.  FAD Reference Bandwidth Sub-TLV

   The FAD Reference Bandwidth sub-TLV is an optional sub-TLV that is
   used to carry the information needed for the reference bandwidth
   method of metric calculation associated with the FAD that is used in
   the computation of the specific algorithm as described in
   [I-D.ietf-lsr-flex-algo-bw-con].

   The sub-TLV has the following format:



Talaulikar & MahendraBabExpires 10 September 2023               [Page 8]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     Flags     |    Reserved                                   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   Reference Bandwidth                         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                  Granularity Bandwidth                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

                 Figure 6: FAD Reference Bandwidth sub-TLV

   *  Type: TBA

   *  Length: 12 octets.

   *  Flags: 1 octet of flags.  The flags are copied from the IS-IS FAD
      Reference Bandwidth sub-TLV [I-D.ietf-lsr-flex-algo-bw-con] or the
      OSPF FAD Reference Bandwidth sub-TLV
      [I-D.ietf-lsr-flex-algo-bw-con] in the case of IS-IS or OSPF
      respectively.

   *  Reserved: 3 octet field that MUST be set to 0 by the originator
      and ignored by the receiver.

   *  Reference Bandwidth: The reference bandwidth is encoded in 32 bits
      in IEEE floating point format.  The units are bytes per second.

   *  Granularity Bandwidth: The granularity bandwidth is encoded in 32
      bits in IEEE floating point format.  The units are bytes per
      second.

   The information in the FAD Reference Bandwidth sub-TLV is derived
   from the IS-IS and OSPF protocol-specific FAD Reference Bandwidth
   sub-TLV as defined in [I-D.ietf-lsr-flex-algo-bw-con].

5.4.  FAD Bandwidth Thresholds Sub-TLV

   The FAD Bandwidth Thresholds sub-TLV is an optional sub-TLV that is
   used to carry the information needed for bandwidth threshold method
   of metric calculation associated with the FAD that are used in the
   computation of the specific algorithm as described in
   [I-D.ietf-lsr-flex-algo-bw-con].




Talaulikar & MahendraBabExpires 10 September 2023               [Page 9]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   The sub-TLV has the following format:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     Flags     |    Reserved                                   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   Bandwidth Threshold 1                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Threshold Metric 1                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   Bandwidth Threshold 2                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Threshold Metric 2                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                         ...................
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   Bandwidth Threshold n                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Threshold Metric n                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

                 Figure 7: FAD Bandwidth Thresholds sub-TLV

   *  Type: TBA

   *  Length: 4 + (n * 8) octets.  Here n is equal to the number of
      Threshold Metrics specified. n MUST be greater than or equal to 1.

   *  Flags: 1 octet of flags.  The flags are copied from the IS-IS FAD
      Bandwidth Thresholds sub-TLV [I-D.ietf-lsr-flex-algo-bw-con] or
      the OSPF FAD Bandwidth Thresholds sub-TLV
      [I-D.ietf-lsr-flex-algo-bw-con] in the case of IS-IS or OSPF
      respectively.

   *  Reserved: 3 octet field that MUST be set to 0 by the originator
      and ignored by the receiver.

   *  Bandwidth Threshold (1 ... n): The bandwidth threshold is encoded
      in 32 bits in IEEE floating point format.  The units are bytes per
      second.






Talaulikar & MahendraBabExpires 10 September 2023              [Page 10]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   *  Threshold Metric (1 ... n): 4 octet field carrying the threshold
      metric value.  In the case of IS-IS, the value MUST be in the
      range of 0 - 16,777,215.

   The information in the FAD Bandwidth Thresholds sub-TLV is derived
   from the IS-IS and OSPF protocol-specific FAD Bandwidth Thresholds
   sub-TLV as defined in [I-D.ietf-lsr-flex-algo-bw-con].

5.5.  Flexible Algorithm Exclude-Any Reverse Affinity Sub-TLV

   The Flexible Algorithm Exclude-Any Reverse Affinity sub-TLV is an
   optional sub-TLV that is used to carry the reverse affinity
   constraints associated with the FAD and enable the exclusion of links
   carrying any of the specified affinities from the computation of the
   specific algorithm as described in
   [I-D.ppsenak-lsr-igp-flex-algo-reverse-affinity].  The affinity is
   expressed in terms of Extended Admin Group (EAG) as defined in
   [RFC7308].

   The sub-TLV has the following format:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |           Exclude-Any Reverse EAG (variable)                 //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

     Figure 8: Flexible Algorithm Exclude-Any Reverse Affinity sub-TLV

   *  Type: TBA

   *  Length: The total length of the value field in octets dependent on
      the size of the EAG.  It MUST be a non-zero value and a multiple
      of 4.

   *  Exclude-Any Reverse EAG: the EAG value.

   The information in the Flexible Algorithm Exclude Any Reverse
   Affinity sub-TLV is derived from the IS-IS and OSPF protocol-specific
   Flexible Algorithm Exclude Admin Group sub-TLV as defined in
   [I-D.ppsenak-lsr-igp-flex-algo-reverse-affinity].






Talaulikar & MahendraBabExpires 10 September 2023              [Page 11]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


5.6.  Flexible Algorithm Include-Any Reverse Affinity Sub-TLV

   The Flexible Algorithm Include-Any Reverse Affinity sub-TLV is an
   optional sub-TLV that is used to carry the affinity constraints
   associated with the FAD and enable the inclusion of links carrying
   any of the specified affinities in the computation of the specific
   algorithm as described in
   [I-D.ppsenak-lsr-igp-flex-algo-reverse-affinity].  The affinity is
   expressed in terms of Extended Admin Group (EAG) as defined in
   [RFC7308].

   The sub-TLV has the following format:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Include-Any Reverse EAG (variable)                   //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

     Figure 9: Flexible Algorithm Include-Any Reverse Affinity sub-TLV

   *  Type: TBA

   *  Length: The total length of the value field in octets dependent on
      the size of the EAG.  It MUST be a non-zero value and a multiple
      of 4.

   *  Include-Any EAG: the EAG value.

   The information in the Flexible Algorithm Include-Any Reverse
   Affinity sub-TLV is derived from the IS-IS and OSPF protocol-specific
   Flexible Algorithm Include-Any Reverse Admin Group sub-TLV as defined
   in [I-D.ppsenak-lsr-igp-flex-algo-reverse-affinity].

5.7.  Flexible Algorithm Include-All Reverse Affinity Sub-TLV

   The Flexible Algorithm Include-All Reverse Affinity sub-TLV is an
   optional sub-TLV that is used to carry the affinity constraints
   associated with the FAD and enable the inclusion of links carrying
   all of the specified affinities in the computation of the specific
   algorithm as described in
   [I-D.ppsenak-lsr-igp-flex-algo-reverse-affinity].  The affinity is
   expressed in terms of Extended Admin Group (EAG) as defined in
   [RFC7308].



Talaulikar & MahendraBabExpires 10 September 2023              [Page 12]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   The sub-TLV has the following format:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |              Length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Include-All Reverse EAG (variable)                   //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   where:

     Figure 10: Flexible Algorithm Include-All Reverse Affinity sub-TLV

   *  Type: TBA

   *  Length: The total length of the value field in octets dependent on
      the size of the EAG.  It MUST be a non-zero value and a multiple
      of 4.

   *  Include-All EAG: the EAG value.

   The information in the Flexible Algorithm Include-All Reverse
   Affinity sub-TLV is derived from the IS-IS and OSPF protocol-specific
   Flexible Algorithm Include-All Reverse Admin Group sub-TLV as defined
   in [I-D.ppsenak-lsr-igp-flex-algo-reverse-affinity].

6.  IANA Considerations

   This document requests IANA to allocate code points from the "BGP-LS
   NLRI and Attribute TLVs" sub-registry of the "Border Gateway Protocol
   - Link-State (BGP-LS) Parameters" registry group.



















Talaulikar & MahendraBabExpires 10 September 2023              [Page 13]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   +-------+------------------------------------------+---------------+
   | Code  |                                          |               |
   | Point |         Description                      |   Reference   |
   +-------+------------------------------------------+---------------+
   |  TBA  | IP Algorithm                             | this document |
   |  TBA  | IP Algorithm Prefix Reachability         | this document |
   |  TBA  | Generic Metric                           | this document |
   |  TBA  | Flexible Algorithm Exclude               | this document |
   |       | Minimum Bandwidth                        |               |
   |  TBA  | Flexible Algorithm Exclude               | this document |
   |       | Maximum Link Delay                       |               |
   |  TBA  | Flexible Algorithm Reference Bandwidth   | this document |
   |  TBA  | Flexible Algorithm Bandwidth Thresholds  | this document |
   |  TBA  | Flexible Algorithm Exclude Any Reverse   | this document |
   |       | Affinity                                 |               |
   |  TBA  | Flexible Algorithm Include Any Reverse   | this document |
   |       | Affinity                                 |               |
   |  TBA  | Flexible Algorithm Include All Reverse   | this document |
   |       | Affinity                                 |               |
   +-------+------------------------------------------+---------------+

        Figure 11: BGP-LS Flexible Algorithm Extensions Code Points

7.  Manageability Considerations

   This document does not introduce any new manageability considerations
   beyond those covered by [RFC9351].

8.  Security Considerations

   This document does not introduce any new security considerations
   beyond those covered by [RFC9351].

9.  Acknowledgements


10.  References

10.1.  Normative References

   [I-D.ietf-lsr-flex-algo-bw-con]
              Hegde, S., Britto, W., Shetty, R., Decraene, B., Psenak,
              P., and T. Li, "Flexible Algorithms: Bandwidth, Delay,
              Metrics and Constraints", Work in Progress, Internet-
              Draft, draft-ietf-lsr-flex-algo-bw-con-05, 16 January
              2023, <https://datatracker.ietf.org/doc/html/draft-ietf-
              lsr-flex-algo-bw-con-05>.




Talaulikar & MahendraBabExpires 10 September 2023              [Page 14]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


   [I-D.ietf-lsr-ip-flexalgo]
              Britto, W., Hegde, S., Kaneriya, P., Shetty, R., Bonica,
              R., and P. Psenak, "IGP Flexible Algorithms (Flex-
              Algorithm) In IP Networks", Work in Progress, Internet-
              Draft, draft-ietf-lsr-ip-flexalgo-08, 19 December 2022,
              <https://datatracker.ietf.org/doc/html/draft-ietf-lsr-ip-
              flexalgo-08>.

   [I-D.ppsenak-lsr-igp-flex-algo-reverse-affinity]
              Psenak, P., Horn, J., and A. Dhamija, "IGP Flexible
              Algorithms Reverse Affinity Constraint", Work in Progress,
              Internet-Draft, draft-ppsenak-lsr-igp-flex-algo-reverse-
              affinity-01, 4 January 2023,
              <https://datatracker.ietf.org/doc/html/draft-ppsenak-lsr-
              igp-flex-algo-reverse-affinity-01>.

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

   [RFC7752]  Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and
              S. Ray, "North-Bound Distribution of Link-State and
              Traffic Engineering (TE) Information Using BGP", RFC 7752,
              DOI 10.17487/RFC7752, March 2016,
              <https://www.rfc-editor.org/info/rfc7752>.

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

   [RFC9350]  Psenak, P., Ed., Hegde, S., Filsfils, C., Talaulikar, K.,
              and A. Gulko, "IGP Flexible Algorithm", RFC 9350,
              DOI 10.17487/RFC9350, February 2023,
              <https://www.rfc-editor.org/info/rfc9350>.

   [RFC9351]  Talaulikar, K., Ed., Psenak, P., Zandi, S., and G. Dawra,
              "Border Gateway Protocol - Link State (BGP-LS) Extensions
              for Flexible Algorithm Advertisement", RFC 9351,
              DOI 10.17487/RFC9351, February 2023,
              <https://www.rfc-editor.org/info/rfc9351>.

10.2.  Informative References

   [RFC7308]  Osborne, E., "Extended Administrative Groups in MPLS
              Traffic Engineering (MPLS-TE)", RFC 7308,
              DOI 10.17487/RFC7308, July 2014,
              <https://www.rfc-editor.org/info/rfc7308>.



Talaulikar & MahendraBabExpires 10 September 2023              [Page 15]

Internet-Draft      Flexible Algorithm Extn in BGP-LS         March 2023


Authors' Addresses

   Ketan Talaulikar
   Cisco Systems
   India
   Email: ketant.ietf@gmail.com


   Aravind Babu MahendraBabu
   Cisco Systems
   India
   Email: aravindbabu.mahendrababu@gmail.com







































Talaulikar & MahendraBabExpires 10 September 2023              [Page 16]