<?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-ietf-idr-bgpls-sr-vtn-mt-02"
     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="13" month="March" year="2023"/>

    <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. In 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>
  </front>

  <middle>
    <section anchor="introduction" title="Introduction">
      <t>Enhanced VPN (VPN+) provides 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 stringent performance requirements. VPN+ requires
      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 VPN+
      and describes the candidate component technologies in different network
      planes and layers. VPN+ can be used to underpin network slicing, and
      will also be of use in more generic scenarios.</t>

      <t>To meet the requirement of VPN+ services, a number of Virtual
      Transport Networks (VTNs) need to be created, each of which consists of
      a subset of network resources allocated from the underlay network, and
      is associated with a customized logical topology. A VTN can be used to
      support 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 VPN+ services.</t>

      <t>To allow the VTN-specific constraint-based path computation and/or
      VTN-specific shortest path computation to be performed by network
      controller and network nodes, the group of resource-aware SIDs allocated
      by the network nodes for the VTN, together with the associated topology
      and resource attributes of the VTN need to be distributed in the control
      plane. When a centralized network controller is used for VTN-specific
      constraint-based 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, it is assumed that each VTN is associated
      with an independent topology and has a set of dedicated or shared
      network resources. <xref target="I-D.ietf-lsr-isis-sr-vtn-mt"/>
      describes the IGP Multi-Topology (MT) <xref target="RFC5120"/> based
      mechanism to advertise the topology and the associated SR SIDs, together
      with the resource and TE attributes for each SR based VTN. This document
      describes a mechanism to distribute the information of SR based VTNs to
      the network controller using BGP-LS <xref
      target="I-D.ietf-idr-rfc7752bis"/> 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 and the
      associated SR SIDs 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="RFC9085"/> 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="RFC9086"/> 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
        SR TE 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 the associated BGP Peering SIDs of each VTN
        for inter-domain links.</t>

        <t>When MT-ID is used consistently in multiple domains 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="I-D.ietf-idr-rfc7752bis"/><xref target="RFC9086"/> and <xref
        target="I-D.ietf-idr-bgpls-srv6-ext"/>.</t>

        <t>Depending on the requirement of inter-domain VTNs, different
        mechanisms 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 can be associated with one of the underlying
            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 MT-ID 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 inter-domain VTN, while some other BGP sessions are used for
            another inter-domain VTN. In this case, different BGP Peer Node
            SIDs SHOULD be allocated to each BGP session and are advertised
            using the mechanism in <xref target="RFC9086"/> and <xref
            target="I-D.ietf-idr-bgpls-srv6-ext"/>, the association between
            the BGP Peer Node SIDs and the MT-ID of the VTN SHOULD be
            advertised by the ASBR.</t>

            <t>At the AS-level topology, different inter-domain VTNs may have
            different inter-AS connectivity. Then different BGP Peer Set SIDs
            MAY be allocated to represent the groups of BGP peers which can be
            used for load-balancing in each inter-domain VTN. The association
            between the BGP Peer Node SIDs and the MT-ID of the VTN SHOULD be
            advertised by the ASBR.</t>
          </list></t>

        <t>In network scenarios where consistent usage of MT-ID among multiple
        domains can not be achieved, a global-significant identifier MAY be
        introduced to identify the inter-domain topology of a VTN. 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 and TE attributes associated with each VTN.
      This section describes the corresponding BGP-LS mechanisms for reporting
      VTN resource and TE attributes to network controllers.</t>

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

      <t>When the 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 VTN is for further study.</t>
    </section>

    <section title="Scalability Considerations">
      <t>The mechanism described in this document requires that each VTN is
      associated with an independent topology, and for the inter-domain VTNs,
      the MT-IDs used in all the involved domains need to be consistent.
      Reusing MT-ID as the identifier of VTN can avoid introducing new
      mechanism with similar functionality in the control plane, while it also
      has some limitations. For example, when multiple VTNs have the same
      topology, each VTN still need to be identified using a unique MT-ID in
      the control plane, thus independent path computation needs be executed
      for each VTN, although the result of computation for these VTNs would be
      the same. 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.ietf-teas-nrp-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">
      <?rfc include='reference.RFC.8402'?>

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

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

      <?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-bgpls-srv6-ext'?>
    </references>

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

      <?rfc include='reference.I-D.ietf-teas-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.ietf-teas-nrp-scalability'?>

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

  <!---->
</rfc>
