<?xml version="1.0"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY RFC2119 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC7752 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.7752.xml">
<!ENTITY RFC8402 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.8402.xml">
]>
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc category="std" docName="draft-hegde-idr-bgp-ls-epe-inter-as-00" ipr="trust200902">
<front>
  <title abbrev=" BGP-LS extensions for Inter-AS TE using EPE ">BGP-LS Extensions for Inter-As TE using EPE based mechanisms</title>

 
 

 <author initials="S." surname="Hegde" fullname="Shraddha Hegde">
    <organization>Juniper Networks Inc.</organization>
    <address>
      <postal>
        <street>Exora Business Park</street>
        <city>Bangalore</city>
        <region>KA</region>
        <code>560103</code>
        <country>India</country>
      </postal>
      <email>shraddha@juniper.net</email>
    </address>
  </author>
 
   <author initials="S." surname="Sangli" fullname="Srihari Sangli">
    <organization>Juniper Networks Inc.</organization>
    <address>
      <postal>
        <street>Exora Business Park</street>
        <city>Bangalore</city>
        <region>KA</region>
        <code>560103</code>
        <country>India</country>
      </postal>
      <email>ssangli@juniper.net</email>
    </address>
  </author>
  
  <date year="2019"/>
  <area>Routing</area>
  <workgroup>SPRING</workgroup>
  <keyword>EPE</keyword>
  <keyword>BGP-LS</keyword>
  <keyword>AS</keyword>
  <keyword>IGP</keyword>
  <keyword>SPRING</keyword>
  <abstract>
 <t>In certain network deployments, a single operator has multiple 
  Autonomous Systems(AS) to facilitate ease of management. A multiple AS network design 
 could also be a result of network mergers and acquisitions. 
  In such scenarios, a centralized 
  Inter-domain TE approach could provide most optimal allocation of resources and the most
  controlled path placement.
   BGP-LS-EPE <xref target ='I-D.ietf-idr-bgpls-segment-routing-epe'/>describes an
   extension to BGP Link State (BGP-LS) for the
   advertisement of BGP Peering Segments along with their BGP peering
   node and inter-AS link information so that efficient BGP Egress Peer Engineering (EPE)
   policies and strategies can be computed based on Segment Routing.
   This document describes extensions to the BGP-LS EPE to enable it to be used
   for inter-AS Traffic-Engineering (TE) purposes.
</t> 

  </abstract>

  <note title="Requirements Language">
    <t>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 <xref
    target="RFC2119">RFC 2119</xref>.</t>
  </note>

</front>

<middle>
<section title="Introduction" anchor='intro'>
<t>   Segment Routing (SR) leverages source routing.  A node steers a
   packet through a controlled set of instructions, called segments, by
   prepending the packet with an SR header with segment identifiers
   (SID).  A SID can represent any instruction, topological or service-
   based.  SR segments allows to enforce a flow through any topological
   path or service function while maintaining per-flow state only at the
   ingress node of the SR domain.</t>
   <t>
     As there is no per-path state in the network, the bandwidth management for the paths is
     expected to be handled by a controller which has a complete view of:
	 <list>
	<t> 1. Up-to-date topology of the network</t>
     <t>2. Resources, States and Attributes of links and nodes of the network</t>
     <t>3. Run-time utilization/availability of resources</t>
     </list>
	 In the case of 
     multi-AS networks, the controller learns the topology from all the involved 
	 ASes by participating in their IGPs or by BGP-LS <xref target="RFC7752"/>
	 and the inter-AS link
     information via BGP-LS EPE<xref target ='I-D.ietf-idr-bgpls-segment-routing-epe'/> 
	 along with extensions defined in this document.Then the controller merges above
   information sets to consolidated Traffic Engineering Database and computes end-
   to-end TE paths.</t>
</section>
<section title="Reference Topology" anchor='topo'>
	<t> The controller learns TE attributes of all the links, including
     the inter-AS links and uses the attributes to compute constrained paths.
	 The controller should be able to correlate the
     inter-AS links for bidirectional connectivity from both ASes.
     

<figure anchor="reference_diagram" title="Reference Diagram">
      <artwork>
        
        +----------+
        |Controller|
        +----------+
             |       
         |----------|
   +---------+      +------+
   |         |      |      |
   |    H    B------D      G
   |         | +---/| AS 2 |\  +------+
   |         |/     +------+ \ |      |---L/8
   A   AS1   C---+            \|      |
   |         |\\  \  +------+ /| AS 4 |---M/8
   |         | \\  +-E      |/ +------+
   |    X    |  \\   |      K
   |         |   +===F AS 3 |
   +---------+       +------+
   
    </artwork>
    </figure>
    
	
    The reference diagram from 
   <xref target ='I-D.ietf-spring-segment-routing-central-epe'/> represents multiple
    Autonomous Systems connected to each other. When the Multiple ASes belong to same operator
	and are organised into separate domains
    for operational purposes, it is advantageous to support Traffic-Engineering across 
	the ASes including the inter-AS links.
    The controller has visibility of all of the ASes by means of IGP topology exported via BGP-LS
	<xref target="RFC7752"/>,
	or other means. In addition, the inter-AS links and the labels 
    associated with the inter-AS links are exported via <xref target ='I-D.ietf-idr-bgpls-segment-routing-epe'/>.
    The controller needs to correlate the information acquired from all of the ASes, including
	the inter-AS links in order to get a view of the unified
    topology so that it can build end-to-end Traffic-Engineered paths. 
    
    </t>
   
</section>

  <section anchor='FRR_Label' title='Fast Reroute Label'>

<t> <xref target ='I-D.ietf-spring-segment-routing-central-epe'/> section 3.6 describes mechanisms to provide 
Fast Reroute (FRR) protection for the EPE Labels. The controller needs to know 
which links are used for protection
so that admission control and failure simulation can be done effectively and appropriate inter-AS links
used for path construction.</t>

<t>This document defines a new flag 'F" in the Peering SIDs TLV to
 indicate a SID as an FRR SID.
 The protection for any peering SID can be specified
using another PeerAdjSID, PeerNodeSID or PeerSetSID to the controller.
If the protection is achieved by fallback to local IP lookup, FRR SID SHOULD not be advertised .

The link(s) represented by
the FRR SID will carry the traffic when there is a failure.
These SIDs are included as an FRR SIDs in the peerAdjSID, PeerNodeSID and PeerSetSID 
advertisements.
</t> 
  
    <figure anchor="flags" title="Peering SID TLV Flags Format">
      <artwork>

      0 1 2 3 4 5 6 7
   +-+-+-+-+-+-+-+-+
   |V|L|B|P|F|Rsvd |
   +-+-+-+-+-+-+-+-+

      </artwork>
    </figure>



<t>
*  F-Flag: FRR Label Flag: If set, the peer SID where the FRR Label appears is using backup links represented by FRR Label.

</t>

</section>

<section title='TE Link attributes of PeerNode SID'>


<t> A Peer Node Segment is a segment describing a peer, including the SID
   (PeerNode SID) allocated to it. The link descriptors for the  Peer Node SID include the addresses used by the BGP session
      encoded using TLVs as defined in <xref target="RFC7752"/>. In general case, 
	  eBGP session could be of multi-hop type, and use multiple underlaying IP interfaces.
	  The  IP addesess used by BGP session as local/neigbour are not sufficient to
	  identify this underlaying interfaces. At the same time, the controller needs to
	  know the links associated with the Peer Node SID,
      to be able derive TE link attributes. This can be achieved by including 
	  the interface local and remote addresses in the Link attributes
      in Peer Node SID NLRI. </t>
	  <t>PeerAdjSID MUST be advertised for each inter-AS link for the purposes of inter-AS TE.
	  The PeerAdjSID should contain link TE attributes such as bandwidth, admin-group etc.
	  The PeerAdjSID should also contain the local and remote interface ipv4/ipv6 addresses which is
	  used for correlating the links. PeerNodeSID SHOULD contain the additional attribute 
	  of link local address which is used by the controller to find 
	  corresponding PeerAdjSID and hence the corresponding link TE attributes.
	   PeerAdjSID advertisements MUST contain local and remote interface addresses for 
	   the purpose of inter-As TE to be help controller correlate the links.
	   Unnumbered interface is not in the scope of this document.</t>
      
      <figure anchor="Link_Attributes" title="Link Addresses carried as attributes">
      <artwork>
   +-----------+---------------------+--------------+------------------+
   |  TLV Code | Description         |  IS-IS TLV   | Reference        |
   |   Point   |                     |   /Sub-TLV   | (RFC/Section)    |
   +-----------+---------------------+--------------+------------------+
   |    TBD    | IPv4 Local interface|    22/6      | [RFC5305]/3.2    |
   |           | Address             |              |                  |
   |    TBD    | IPv6 Local interface|   22/12      | [RFC6119]/4.2    |
   |           | Address             |              |                  |
   +-------------------------------------------------------------------+
   
                   
      </artwork>
    </figure>
	<t>For Example </t>
 </section>




  <section anchor='backward_compatibility' title='Backward Compatibility'>
         <t>The extension proposed in this document is backward compatible with procedures described in 
         <xref target ='I-D.ietf-idr-bgpls-segment-routing-epe'/> and 
         <xref target ='I-D.ietf-spring-segment-routing-central-epe'/></t>
         
</section>
  <section title='Security Considerations' anchor='sec-con'>
    <t>TBD</t>
  </section>
  <section anchor="IANA" title="IANA Considerations">
 <figure anchor="Link_Attribute_TLVs" title="Link Attribute TLVs">
      <artwork>
   +-----------+---------------------+--------------+------------------+
   |  TLV Code | Description         |  IS-IS TLV   | Reference        |
   |   Point   |                     |   /Sub-TLV   | (RFC/Section)    |
   +-----------+---------------------+--------------+------------------+
   |    TBD    | IPv4 Local interface|    22/6      | [RFC5305]/3.2    |
   |           | Address             |              |                  |
   |    TBD    | IPv6 Local interface|   22/12      | [RFC6119]/4.2    |
   |           | Address             |              |                  |
   +-------------------------------------------------------------------+
   
                   
      </artwork>
    </figure>
  </section>
   <section title='Acknowledgements' anchor='ack'>
    <t>Thanks to Julian Lucek and Rafal Jan Szarecki for careful review and suggestions.</t>
  </section>
</middle>

<back>
  <references title='Normative References'>
    &RFC7752;
    
    &RFC2119;
     <?rfc include="reference.I-D.ietf-spring-segment-routing-central-epe"?>  
     <?rfc include="reference.I-D.ietf-idr-bgpls-segment-routing-epe"?>
  </references>
   <references title='Informative References'>  

    &RFC8402;
  </references>
 </back>
</rfc>
