<?xml version="1.0" encoding="US-ASCII"?>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.2.6 -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc comments="yes"?>
<rfc category="info" docName="draft-xie-idr-bgpls-sr-vtn-mt-04"
     ipr="trust200902">
  <front>
    <title abbrev="BGP-LS MT for SR VTN">BGP-LS with Multi-topology for
    Segment Routing based Virtual Transport Networks</title>

    <author fullname="Chongfeng Xie" initials="C." surname="Xie">
      <organization>China Telecom</organization>

      <address>
        <postal>
          <street>China Telecom Beijing Information Science &amp; Technology,
          Beiqijia</street>

          <city>Beijing</city>

          <code>102209</code>

          <country>China</country>
        </postal>

        <email>xiechf@chinatelecom.cn</email>
      </address>
    </author>

    <author fullname="Cong Li" initials="C." surname="Li">
      <organization>China Telecom</organization>

      <address>
        <postal>
          <street>China Telecom Beijing Information Science &amp; Technology,
          Beiqijia</street>

          <city>Beijing</city>

          <code>102209</code>

          <country>China</country>
        </postal>

        <email>licong@chinatelecom.cn</email>
      </address>
    </author>

    <author fullname="Jie Dong" initials="J." surname="Dong">
      <organization>Huawei Technologies</organization>

      <address>
        <postal>
          <street>Huawei Campus, No. 156 Beiqing Road</street>

          <city>Beijing</city>

          <code>100095</code>

          <country>China</country>
        </postal>

        <email>jie.dong@huawei.com</email>
      </address>
    </author>

    <author fullname="Zhenbin Li" initials="Z." surname="Li">
      <organization>Huawei Technologies</organization>

      <address>
        <postal>
          <street>Huawei Campus, No. 156 Beiqing Road</street>

          <city>Beijing</city>

          <code>100095</code>

          <country>China</country>
        </postal>

        <email>lizhenbin@huawei.com</email>
      </address>
    </author>

    <date day="9" month="January" year="2022"/>

    <area>Routing Area</area>

    <workgroup>IDR Working Group</workgroup>

    <abstract>
      <t>Enhanced VPN (VPN+) aims to provide enhanced VPN service to support
      some applications' needs of enhanced isolation and stringent performance
      requirements. VPN+ requires integration between the overlay VPN and the
      underlay network. A Virtual Transport Network (VTN) is a virtual
      underlay network which consists of a subset of the network topology and
      network resources allocated from the physical network. A VTN could be
      used as the underlay for one or a group of VPN+ services.</t>

      <t>When Segment Routing is used as the data plane of VTNs, each VTN can
      be allocated with a group of Segment Identifiers (SIDs) to identify the
      topology and resource attributes of network segments in the VTN. The
      association between the network topology, the network resource
      attributes and the SR SIDs may need to be distributed to a centralized
      network controller. For network scenarios where each VTN can be
      associated with a unique logical network topology, this document
      describes a mechanism to distribute the information of SR based VTNs
      using BGP-LS with Multi-Topology.</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 anchor="introduction" title="Introduction">
      <t>Enhanced VPN (VPN+) is an enhancement to VPN services to support the
      needs of new applications, particularly including the applications that
      are associated with 5G services. These applications require enhanced
      isolation and have more stringent performance requirements than that can
      be provided with traditional overlay VPNs. Thus these properties require
      integration between the overlay connectivity and the characteristics
      provided by the underlay networks. <xref
      target="I-D.ietf-teas-enhanced-vpn"/> specifies the framework of
      enhanced VPN and describes the candidate component technologies in
      different network planes and layers. An enhanced VPN can be used for 5G
      network slicing, and will also be of use in more generic scenarios.</t>

      <t>To meet the requirement of enhanced VPN services, a number of Virtual
      Transport Networks (VTNs) need to be created, each consists of a subset
      of the underlay network topology and a subset of network resources
      allocated from the underlay network to meet the requirement of one or a
      group of VPN+ services.</t>

      <t><xref target="I-D.ietf-spring-resource-aware-segments"/> introduces
      resource awareness to Segment Routing (SR) <xref target="RFC8402"/>. The
      resource-aware SIDs have additional semantics to identify the set of
      network resources available for the packet processing action associated
      with the SIDs. As described in <xref
      target="I-D.ietf-spring-sr-for-enhanced-vpn"/>, the resource-aware
      segments can be used to build SR based VTNs with the required network
      topology and network resource attributes to support enhanced VPN
      services.</t>

      <t>To allow the network controller and network nodes to perform
      VTN-specific explicit path computation and/or shortest path computation,
      the group of resource-aware SIDs allocated by network nodes to each VTN
      and the associated topology and resource attributes need to be
      distributed in the control plane. When a centralized network controller
      is used for VTN-specific path computation, especially when a VTN spans
      multiple IGP areas or multiple Autonomous Systems (ASes), BGP-LS is
      needed to advertise the VTN information in each IGP area or AS to the
      network controller, so that the controller could use the collected
      information to build the view of inter-area or inter-AS SR VTNs.</t>

      <t>In some network scenarios, each VTN can be associated with a unique
      logical network topology, <xref target="I-D.ietf-lsr-isis-sr-vtn-mt"/>
      describes an IGP mechanism to advertise the association between the
      topology, resource attributes and the SR SIDs for each VTN. This
      document describes a mechanism to distribute the information of SR based
      VTNs to the network controller using BGP-LS with Multi-Topology.</t>
    </section>

    <section title="Advertisement of SR VTN Topology Attribute">
      <t><xref target="I-D.ietf-lsr-isis-sr-vtn-mt"/> describes the IS-IS
      Multi-topology based mechanisms to distribute the topology attributes of
      SR based VTNs. This section describes the corresponding BGP-LS mechanism
      to distribute both the intra-domain and inter-domain topology attributes
      of SR based VTNs.</t>

      <section title="Intra-domain Topology Advertisement">
        <t>In section 4.2.2.1 of <xref target="I-D.ietf-idr-rfc7752bis"/>,
        Multi-Topology Identifier (MT-ID) TLV is defined, which can contain
        one or more IS-IS or OSPF Multi-Topology IDs. The MT-ID TLV MAY be
        present in a Link Descriptor, a Prefix Descriptor, or the BGP-LS
        Attribute of a Node NLRI.</t>

        <t><xref target="I-D.ietf-idr-bgp-ls-segment-routing-ext"/> defines
        the BGP-LS extensions to carry the segment routing information using
        TLVs of BGP-LS Attribute. When Multi-Topology is used with SR-MPLS
        data plane, topology-specific prefix-SIDs and topology-specific
        Adj-SIDs can be carried in the BGP-LS Attribute associated with the
        prefix NLRI and link NLRI respectively, the MT-ID TLV is carried in
        the prefix descriptor or link descriptor to identify the corresponding
        topology of the SIDs.</t>

        <t><xref target="I-D.ietf-idr-bgpls-srv6-ext"/> defines the BGP-LS
        extensions to advertise SRv6 segments along with their functions and
        attributes. When Multi-Topology is used with SRv6 data plane, the SRv6
        Locator TLV is carried in the BGP-LS Attribute associated with the
        prefix-NLRI, the MT-ID TLV can be carried in the prefix descriptor to
        identify the corresponding topology of the SRv6 Locator. The SRv6
        End.X SIDs are carried in the BGP-LS Attribute associated with the
        link NLRI, the MT-ID TLV can be carried in the link descriptor to
        identify the corresponding topology of the End.X SIDs. The SRv6 SID
        NLRI is defined to advertise other types of SRv6 SIDs, in which the
        SRv6 SID Descriptors can include the MT-ID TLV so as to advertise
        topology-specific SRv6 SIDs.</t>

        <t><xref target="I-D.ietf-idr-rfc7752bis"/> also defines the rules of
        the usage of MT-ID TLV:</t>

        <t>"In a Link or Prefix Descriptor, only a single MT-ID TLV containing
        the MT-ID of the topology where the link or the prefix is reachable is
        allowed. In case one wants to advertise multiple topologies for a
        given Link Descriptor or Prefix Descriptor, multiple NLRIs MUST be
        generated where each NLRI contains a single unique MT-ID."</t>

        <t>Editor's note: the above rules indicates that only one MT-ID is
        allowed to be carried the Link or Prefix descriptors. When a link or
        prefix needs to be advertised in multiple topologies, multiple NLRIs
        needs to be generated to report all the topologies the link or prefix
        participates in, together with the topology-specific segment routing
        information and link attributes. This may increase the number of BGP
        Updates needed for advertising MT-specific topology attributes, and
        may introduce additional processing burden to both the sending BGP
        speaker and the receiving network controller. When the number of
        topologies in a network is not a small number, some optimization may
        be needed for the reporting of multi-topology information and the
        associated segment routing information in BGP-LS. Based on the WG's
        opinion, this may be elaborated in a future version.</t>
      </section>

      <section title="Inter-Domain Topology Advertisement">
        <t><xref target="I-D.ietf-idr-bgpls-segment-routing-epe"/> and <xref
        target="I-D.ietf-idr-bgpls-srv6-ext"/> defines the BGP-LS extensions
        for advertisement of BGP inter-domain topology information and the BGP
        Egress Peering Segment Identifiers. Such information could be used by
        a network controller for the computation and instantiation of inter-AS
        traffic engineering SR paths.</t>

        <t>In some network scenarios, there are needs to create VTNs which
        span multiple ASes. The inter-domain VTNs could have different
        inter-domain connectivity, and may be associated with different set of
        network resources in each domain and also on the inter-domain links.
        In order to build the multi-domain SR based VTNs, it is necessary to
        advertise the topology and resource attribute of each VTN and the
        associated BGP Peering SIDs on the inter-domain links.</t>

        <t>Depending on the requirement of inter-domain VTNs, different
        mechanism can be used on the inter-domain connection:</t>

        <t><list style="symbols">
            <t>One EBGP session between two ASes can be established over
            multiple underlying links. In this case, different underlying
            links can be used for different inter-domain VTNs which requires
            link isolation between each other. In another similar case, the
            EBGP session is established over a single link, while the network
            resource (e.g. bandwidth) on this link can be partitioned into
            several pieces, each of which can be considered as a virtual
            member link. A VTN is associated with one of the physical or
            virtual member links. In both cases, different BGP Peer-Adj-SIDs
            or SRv6 End.X SID SHOULD be allocated to each underlying physical
            or virtual member link, the association between the BGP Peer
            Adj-SID/End.X SID and the identifier of the VTN SHOULD be
            advertised by the ASBR.</t>

            <t>For inter-domain connection between two ASes, multiple EBGP
            sessions can be established between different set of peering
            ASBRs. It is possible that some of these BGP sessions are used for
            one multi-domain VTN, while some other BGP sessions are used for
            another multi-domain VTN. In this case, different BGP Peer Node
            SIDs are allocated to each BGP session and are advertised using
            the mechanism in <xref
            target="I-D.ietf-idr-bgpls-segment-routing-epe"/> and <xref
            target="I-D.ietf-idr-bgpls-srv6-ext"/>, the association between
            the BGP Peer Node SIDs and the identifier of the VTN SHOULD be
            advertised by the ASBR.</t>

            <t>At the AS-level topology, different multi-domain VTNs may have
            different inter-domain connectivity. Different BGP Peer Set SIDs
            MAY be allocated to represent the groups of BGP peers which can be
            used for load-balancing in each multi-domain VTN.</t>
          </list></t>

        <t>When MT-ID is used consistently in multiple ASes covered by a VTN,
        the topology-specific BGP peering SIDs can be advertised with the
        MT-ID carried in the corresponding Link NLRI. This can be achieved
        with the existing mechanisms as defined in <xref
        target="RFC7752"/><xref
        target="I-D.ietf-idr-bgpls-segment-routing-epe"/> and <xref
        target="I-D.ietf-idr-bgpls-srv6-ext"/>.</t>

        <t>In network scenarios where consistent usage of MT-ID among multiple
        domains can not be expected, a global-significant VTN-ID needs to be
        introduced to define the inter-domain topologies. Within each domain,
        the MT based mechanism could be reused for intra-domain topology
        advertisement. The detailed mechanism is specified in <xref
        target="I-D.dong-idr-bgpls-sr-enhanced-vpn"/>.</t>
      </section>
    </section>

    <section title="Advertisement of SR VTN Resource Attribute">
      <t><xref target="I-D.ietf-lsr-isis-sr-vtn-mt"/> specifies the mechanism
      to advertise the resource information associated with each VTN. This
      section describes the corresponding BGP-LS mechanisms.</t>

      <t>The information of the network resources associated with a VTN can be
      specified by carrying the TE Link attribute TLVs in BGP-LS Attribute
      <xref target="RFC7752"/>, with the associated MT-ID carried in the
      corresponding Link NLRI.</t>

      <t>When Maximum Link Bandwidth sub-TLV is carried in the BGP-LS
      attribute associated with the Link NLRI of a VTN, it indicates the
      amount of link bandwidth resource allocated to the corresponding VTN on
      the link. The bandwidth allocated to a VTN can be exclusive for traffic
      in the corresponding VTN. The advertisement of other TE attributes in
      BGP-LS for each VTN is for further study.</t>
    </section>

    <section title="Scalability Considerations">
      <t>The mechanism described in this document requires that each VTN
      mapped to an independent topology, and for the inter-domain VTNs, the
      MT-IDs used in each involved domain need to be consistent. Reusing
      MT-IDs as the identifier of VTN can avoid introducing new identifiers in
      the control plane, while it also has some limitations. For example, when
      multiple VTNs shares the same topology, each VTN still need to be
      identified using different MT-IDs in the control plane, thus independent
      path computation needs be executed for each VTN. The number of VTNs
      supported in a network may be dependent on the number of topologies
      supported, which is related to the control plane overhead. The mechanism
      described in this document is applicable to network scenarios where the
      number of required VTN is relatively small. A detailed analysis about
      the VTN scalability and the possible optimizations for supporting a
      large number of VTNs is described in <xref
      target="I-D.dong-teas-enhanced-vpn-vtn-scalability"/>.</t>
    </section>

    <section anchor="security-considerations" title="Security Considerations">
      <t>This document introduces no additional security vulnerabilities to
      BGP-LS.</t>

      <t>The mechanism proposed in this document is subject to the same
      vulnerabilities as any other protocol that relies on BGP-LS.</t>
    </section>

    <section anchor="iana-considerations" title="IANA Considerations">
      <t>This document does not request any IANA actions.</t>
    </section>

    <section anchor="acknowledgments" title="Acknowledgments">
      <t>The authors would like to thank Shunwan Zhuang for the review and
      discussion of this document.</t>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <reference anchor="RFC2119"
                 target="https://www.rfc-editor.org/info/rfc2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement
          Levels</title>

          <author fullname="S. Bradner" initials="S." surname="Bradner">
            <organization/>
          </author>

          <date month="March" year="1997"/>

          <abstract>
            <t>In many standards track documents several words are used to
            signify the requirements in the specification. These words are
            often capitalized. This document defines these words as they
            should be interpreted in IETF documents. This document specifies
            an Internet Best Current Practices for the Internet Community, and
            requests discussion and suggestions for improvements.</t>
          </abstract>
        </front>

        <seriesInfo name="BCP" value="14"/>

        <seriesInfo name="RFC" value="2119"/>

        <seriesInfo name="DOI" value="10.17487/RFC2119"/>
      </reference>

      <?rfc include='reference.RFC.7752'?>

      <?rfc include='reference.RFC.5029'?>

      <?rfc include='reference.RFC.8402'?>

      <?rfc include='reference.I-D.ietf-idr-rfc7752bis'?>

      <?rfc include='reference.I-D.ietf-spring-resource-aware-segments'?>

      <?rfc include='reference.I-D.ietf-spring-sr-for-enhanced-vpn'?>

      <?rfc include='reference.I-D.ietf-idr-bgp-ls-segment-routing-ext'?>

      <?rfc include='reference.I-D.ietf-idr-bgpls-srv6-ext'?>

      <?rfc include='reference.I-D.ietf-idr-bgpls-segment-routing-epe'?>
    </references>

    <references title="Informative References">
      <?rfc include='reference.RFC.8667'?>

      <?rfc include='reference.RFC.5120'?>

      <?rfc include='reference.I-D.ietf-teas-enhanced-vpn'?>

      <?rfc include='reference.I-D.ietf-lsr-isis-srv6-extensions'?>

      <?rfc include='reference.I-D.dong-lsr-sr-enhanced-vpn'?>

      <?rfc include='reference.I-D.dong-idr-bgpls-sr-enhanced-vpn'?>

      <?rfc include='reference.I-D.ietf-lsr-isis-sr-vtn-mt'?>

      <?rfc include='reference.I-D.dong-teas-enhanced-vpn-vtn-scalability'?>

      <?rfc ?>
    </references>
  </back>

  <!---->
</rfc>
