<?xml version="1.0" encoding="iso-8859-1"?>
<!-- 
     vim: set softtabstop=2 shiftwidth=2 expandtab
     RCAS: draft use case
     version=201301230827
-->
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<?rfc strict="no" ?>
<?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"?>

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC6805 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6805.xml">
<!ENTITY RFC4670 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4670.xml">
]>


<rfc category="info" docName="draft-lopez-pce-hpce-ted-01" ipr="trust200902" >
  <front>
    <title abbrev="TED-HPCE">Traffic Engineering Database dissemination for Hierarchical PCE scenarios</title>

    <author fullname="Victor Lopez" initials="V." surname="Lopez">
        <organization>Telefonica I+D</organization>
      <address>
        <postal>
          <street>Don Ramon de la Cruz 82-84</street>
          <city>Madrid</city>
          <region></region>
          <code>28045</code>
          <country>Spain</country>
        </postal>
        <phone>+34913128872</phone>
        <email>vlopez@tid.es</email>
      </address>
    </author>
    <author fullname="Oscar Gonzalez de Dios" initials="O." surname="Gonzalez de Dios">
        <organization>Telefonica I+D</organization>
      <address>
        <postal>
          <street>Don Ramon de la Cruz 82-84</street>
          <city>Madrid</city>
          <region></region>
          <code>28045</code>
          <country>Spain</country>
        </postal>
        <phone>+34913128832</phone>
        <email>ogondio@tid.es</email>
      </address>
    </author>

    <author fullname="Daniel King" initials="D." surname="King">
      <organization>Old Dog Consulting</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <region></region>
          <code></code>
          <country>UK</country>
        </postal>
        <phone></phone>
        <email>daniel@olddog.co.uk</email>
      </address>
    </author>

    <author fullname="Stefano Previdi" initials="S." surname="Previdi">
      <organization>Cisco Systems, Inc.</organization>
      <address>
        <postal>
          <street>Via Del Serafico 200</street>
          <city>Rome</city>
          <region></region>
          <code>00144</code>
          <country>IT</country>
        </postal>
        <phone></phone>
        <email>sprevidi@cisco.com</email>
      </address>
    </author>

    <date year="2014" />
    <area>Routing</area>
    <workgroup>Network Working Group</workgroup>

    <abstract>
      <t>The PCE architecture is well-defined and may be used to compute the optimal path for LSPS across domains in MPLS-TE and GMPLS networks. The Hierarchical Path Computation Element (H-PCE) [RFC6805] was developed to provide an optimal path when the sequence of domains is not known in advance. The procedure and mechanism for populating the Traffic Engineering Database (TED) with domain topology and link information used in H-PCE-based path computations is open to interpretation.

      This informational document describes how topology dissemination mechanisms may be used to provide TE information between Parent and Child PCEs (within the H-PCE context). In particular, it describes how BGP-LS might be used to provide inter-domain connectivity. This document is not intended to define new extensions, it demonstrates how existing procedures and mechanisms may be used.</t>
    </abstract>
  </front>


  <middle>
    <section title ="Introduction">
      <t>In scenarios with multiple domains in both MPLS-TE and GMPLS networks, the hierarchical Path Computation Element (H-PCE) Architecture, defined in <xref target="RFC6805"/>, allows to obtain the optimum end-to-end path. The architecture exploits a hierarchical relation  among domains.</t>
      <t><xref target="RFC6805"/> defines the architecture and requirements  for the end-to-end path computation across domains. The solution draft for the H-PCE <xref target="I-D.draft-zhang-pce-hierarchy-extensions-04"/> is focused on the PCEP protocol extensions to support such H-PCE procedures, including negotiation of capabilities and errors. However, neither the architecture nor the solution draft specify which mechanism must to be used to build and populate the parent PCE (pPCE) Traffic Engineering Database (TED).</t>
      <t>The H-PCE architecture documents define the minimum content needed in the traffic engineering database required to compute paths. The information required by parent TEDB are identified in <xref target="RFC6805"/> and further elaborated in <xref target="I-D.draft-ietf-pce-inter-area-as-applicability-03"/>. For instance,  <xref target="RFC6805"/> and <xref target="I-D.draft-ietf-pce-inter-area-as-applicability-03"/> suggest that BGP-LS could be used as a "northbound" TE advertisement. This means that a PCE does not need to listen IGP in its domain, but its TED is populated by messages received (for example) from a Route Reflector. <xref target="I-D.draft-ietf-idr-te-pm-bgp-00"/> extends BGP-LS to disseminate traffic engineering information. The parameters considered are: delay, packet loss and bandwidth.</t>
      <t>This document highlights the applicability of BGP-LS to the dissemination of domain topology within the H-PCE architecture. In particular, it describes how can BGP-LS be used to send the inter-domain connectivity. It also shows how can OSPF-TE and ISIS-TE updates be mapped into BGP-LS.</t>
      <t>Note that this document is not intended to define new protocol extensions, it is an informational document and where required it highlights where existing mechanisms and protocols may be applied.</t>

      <section title="Parent PCE Domain Topology">
        <t>The pPCE maintains a domain topology map of the child domains and their interconnectivity.  This map does not include any visibility into the child domains.  Where inter-domain connectivity is provided by TE links, the capabilities of those links may also be known to the pPCE. The pPCE maintains a TED for the parent domain, the nodes in the parent domain are abstractions of the cPCE domains (connected by real or virtual TE links), but the pPCE domain may also include real nodes and links.</t>

        <t>The procedure and protocol mechanism for disseminating and construction of the pPCE TED may be provided using a number of mechanisms, including manually configuring the necessary information or automated using a separate instance of a routing protocol to advertise the domain interconnectivity. Since inter-domain TE links can be advertised by the IGPs operating in the child domains, this information could then be exported to the parent PCE either by the child PCEs or using north-bound export mechanisms.</t>
      </section>

      <section title="Parent PCE TED requirements">
        <t>The information that would be exchanged includes:</t>
        <t><list style="symbols">
          <t>Identifier of advertising child PCE.</t>
          <t>Identifier of PCE's domain.</t>
          <t>Identifier of the link.</t>
          <t>TE properties of the link (metrics, bandwidth).</t>
          <t>Other properties of the link (technology-specific).</t>
          <t>Identifier of link endpoints.</t>
          <t>Identifier of adjacent domain.</t>
        </list></t>
      </section>

    </section>


    <section title="H-PCE Domain Topology Dissemination and Construction Methods">
      <t>A variety of methods exist to provide are different alternatives so the parent PCE can get the topological information from the child PCEs (cPCEs):
        <list style="symbols">
          <t>Statically configure all inter-domain link and topology information.</t>
          <t>Membership of an IGP instance. The necessary topological information could be disseminated by joining the IGP instance of each child PCE domain. However, by doing so, it would break the domain confidentiality principles and is subject to scalability issues.</t>
          <t>PCEP Notification Messages. Another solution is to send the interconnection information between domains using PCEP Notifications (see section 4.8.4 of  <xref target="RFC6805"/>). One approach, followed in research work, is embedding in PCEP Notifications the Inter-AS OSPF-TE Link State Advertisements (LSA) to send the Inter-Domain Link information from child PCEs to the parent PCE and to send reachability information (list of end-points in each domain). However, it is argued that the utilization of PCEP to disseminate topology is beyond scope of the protocol.</t>
          <t>Separate IGP instance. <xref target="RFC6805"/> points out that in models such as ASON it is possible to consider a separate instance of an IGP running within the parent domain where the participating protocol speakers are the nodes directly present in that domain and the PCEs (parent and child PCEs).</t> 
          <t>Use north-bound distribution of TE information. The North-Bound Distribution of Link-State and TE Information using BGP has been recently propose in the IEFT  <xref target="I-D.draft-ietf-idr-ls-distribution-04"/>. This approach is known as BGP-LS and defines a mechanism by which links state and traffic engineering information can be collected from networks and exported to external elements using the BGP routing protocol. By using BGP-LS as northbound distribution mechanism, there would be a BGP speaker in each domains that sends the necessary information to a BGP speaker in the parent domain. This architecture is further elaborated in this document.</t>
        </list>
      </t>
    </section>
    
    <section title="H-PCE architecture using BGP-LS">

      <t>As mentioned in <xref target="I-D.draft-dugeon-pce-ted-reqs-02"/> PCE has to retrieve Traffic Engineering (TE) information to carry out its path computation. This is required not only for intra-domain information, which can be got using IGP (like OSPF-TE or ISIS-TE), but also for inter-domain information in the Hierarchical PCE (H-PCE) architecture. </t>
      <t> <xref target="hpce_workflow1"/> shows an example of a H-PCE architecture. In this example, there is a parent PCE and three child PCEs, and they are organized in multiple domains. The parent PCE does not have information of the whole network, but is only aware of the connectivity among the domains and provides coordination to the child PCEs. <xref target="ppce_view"/> shows which is the visibility that parent PCE has from the network according to the definition in <xref target="RFC6805"/>.</t>
      <t> Thanks to this topological information, when there is a request to a child PCE with the destination in another domain, this path request is sent to the parent PCE, which selects a set of candidate domain paths and sends requests to the child PCEs responsible for these domains. Then, the parent PCE selects the best solution and it is transmitted to the source PCE.</t>


      <figure anchor="hpce_workflow1" title="Example of Hierarchical PCE architecture">
          <artwork>
            <![CDATA[
  -----------------------------------------------------------------
  |   Parent PCE Domain                                             |
  |                              -----                              |
  |                             |pPCE |                             |
  |                              -----                              |
  |                                                                 |
  |    ----------------     ----------------     ----------------   |
  |   | Domain 1       |   | Domain 2       |   | Domain 3       |  |
  |   |                |   |                |   |                |  |
  |   |       ------   |   |       ------   |   |       ------   |  |
  |   |      |cPCE 1|  |   |      |cPCE 2|  |   |      |cPCE 3|  |  |
  |   |       ------   |   |       ------   |   |       ------   |  |
  |   |                |   |                |   |                |  |
  |   |            ----|   |----        ----|   |----            |  |
  |   |           |BN11+---+BN21|      |BN23+---+BN31|           |  |
  |   |            ----|   |----        ----|   |----            |  |
  |   |                |   |                |   |                |  |
  |   |            ----|   |----        ----|   |----            |  |
  |   |           |BN12+---+BN22|      |BN24+---+BN32|           |  |
  |   |            ----|   |----        ----|   |----            |  |
  |   |                |   |                |   |                |  |
  |    ----------------     ----------------     ----------------   |
   -----------------------------------------------------------------
   
            ]]>
          </artwork>
        </figure>


        <figure anchor="ppce_view" title="Parent PCE topology information">
          <artwork>
            <![CDATA[
                       ----------------------------
                      | Parent PCE view            |
                      |            ----            |
                      |           |pPCE|           |
                      |            ----            |
                      |                            |
                      |   ----     ----     ----   |
                      |  |    |---|    |---|    |  |
                      |  | D1 |   | D2 |   | D3 |  |
                      |  |    |---|    |---|    |  |
                      |   ----     ----     ----   |
                       ----------------------------
            ]]>
          </artwork>
        </figure>
       <t>Thanks to the dissemination of inter-domain adjacency information from each cPCE to the pPCE, the pPCE can have a view of reachability between the domains. The H-PCE architecture with BGP-LS is shown in <xref target="hpce_bgpls"/>. Each domain has a cPCE that is able to compute paths in the domain. This child PCE has access to a domain TED, which is built using IGP information. In each domain, a BGP speaker has access to such domain TED and acts as BGP-LS Route Reflector to provide network topology to the pPCE. Next to the pPCE, there is a BGP speaker that maintains a BGP session with each of the BGP speakers in the domains to receive the topology and build the parent TED. A policy can be applied to the BGP-LS speakers to decide which information is sent to its peer speaker. The minimum amount of information that needs to be exchanged is the inter-domain connectivity, including the details of the Traffic Engineering Inter-domain Links <xref target="RFC6805"/>. With this information, the parent PCE is able to have access to a domain topology map and its connectivity. Additionally, the BGP-LS speaker can be configured to send some intra-domain information for virtual or candidate paths with some TE information. In this case, the parent PCE has access to an extended database, with visibility of both intra-domain and inter-domain information and can compute the sequence of domains with better accuracy.</t>
       <t>BGP-LS <xref target="I-D.draft-ietf-idr-ls-distribution-04"/> extends the BGP Update messages to advertise link-state topology thanks to new BGP Network Layer Reachability Information (NLRI). The Link State information is sent in two BGP attributes, the MP_REACH (defined in <xref target="RFC4670"/>) and a LINK_STATE attribute (defined in <xref target="I-D.draft-ietf-idr-ls-distribution-04"/>). To describe the inter domain links, in the MP_REACH attribute, a Link NLRI can be used with the local node descriptors the address of the source, and in the remote descriptors, the address of the destination of the link. The Link Descriptors field has a TLV (Link Local/Remote Identifiers), which carries the prefix of the Unnumbered or Numbered Interface. In case of the message informs about an intra-domain link, the standard traffic engineering information is included in the LINK_STATE attribute.</t>

        <figure anchor="hpce_bgpls" title="Example of Hierarchical PCE architecture with BGP-LS">
          <artwork>
              <![CDATA[          
----------------------------------------------------------------------
|  Parent PCE Domain                                                  |
|                            -------     -----    -----               |
|                    -------+BGP-LS +---+ TED +--+pPCE |              |
|                  /        |Speaker|    -----    -----               |
|                 /          --+---+                                  |
|                /             |    \_________________       
|               /              |                      \      
|  ------------/--------   ----+------------     ------+------------  |
| | Domain 1  /         | |    |  Domain 2 |   |       |   Domain 3 | |
| |          /          | |    |           |   |       |            | |
| |   ------+           | |   -+-----      |   |    ---+---         | |
| |  |BGP-LS |          | |  |BGP-LS |     |   |   |BGP-LS |        | |
| |  |Speaker|          | |  |Speaker|     |   |   |Speaker|        | |
| |   ---+---           | |   ---+---      |   |    ---+---         | |
| |      |              | |      |         |   |       |            | |
| |   ---+---    ------ | |  ---+-- ------ |   |   ---+---  ------  | |
| |  |  TED  +-+cPCE 1| | | | TED +-+cPCE| |   |  |  TED +-+cPCE 1| | |
| |   ---+---    ------ | |  ---+-- ------ |   |   ---+---  ------  | |
| |      |              | |     |          |   |      |             | |
| |   ---+---           | |  ---+---       |   |   ---+---          | |
| |  |  IGP  |          | | |  IGP  |      |   |  |  IGP  |         | |
| |  |  Peer |          | | |  Peer |      |   |  |  Peer |         | |
| |   -------           | |  -------       |   |   -------          | |
| |      |              | |     |          |   |      |             | |
|  ------+---------------  -----+-----------    ------+------------   |
|        |                      |                     |               |
|    -------------------    ----------------    -------------------   |
|   |     Domain 1      |   |   Domain 2   |   |     Domain 3     |   |
|    -------------------    ----------------    -------------------   |
----------------------------------------------------------------------
              ]]>
          </artwork>
        </figure>
    </section>




    <section title="Including Inter-domain connectivity in BGP-LS">
      <t>TBD</t>
      <section title="Mapping from OSPF-TE"><t>TBD</t>
      </section>
      <section title="Mapping from ISIS-TE"><t>TBD</t>
      </section>
    </section>

    <section title="BGP considerations">
      <t>TBD</t>
      <t><list style="symbols">
      <t>Supporting BGP-4</t>
      <t>BGP Speakers</t>
      <t>Graceful Restart</t>
      <t>SRLGs</t>
      <t>Multiprotocol extensions</t>
    </list></t>

    </section>

<!-- ===================================================================
         Manageability CONSIDERATIONS
     =================================================================== -->
  <section title="Manageability Considerations">
    <t>TBD</t>
  </section>

<!-- ===================================================================
         SECURITY CONSIDERATIONS
     =================================================================== -->
  <section title="Security Considerations">
    <t>TBD</t>
  </section>

  </middle>
  <back>
    <references title="Normative References">
      &RFC2119;
      &RFC6805;
      &RFC4670;
    </references> 
    <references title="Informative References">
      
      <reference anchor="I-D.draft-ietf-pce-inter-area-as-applicability-03">
        <front>
          <title>Applicability of the Path Computation Element to Inter-Area and Inter-AS MPLS and GMPLS Traffic Engineering</title>
          <author initials="D." surname="King" fullname="O. Dugeon"/>
          <author initials="J." surname="Meuric" fullname="J. Meuric"/>
          <author initials="O." surname="Dugeon" fullname="O. Dugeon"/>
          <author initials="Q." surname="Zhao" fullname="Q. Zhao"/>
          <author initials="O." surname="Gonzalez de Dios" fullname="O. Gonzalez de Dios"/>
          <date month="February" year="2013"/>
        </front>
      </reference>
      <reference anchor="I-D.draft-dugeon-pce-ted-reqs-02">
        <front>
          <title>Path Computation Element (PCE) Traffic Engineering Database (TED) Requirements</title>
          <author initials="O." surname="Dugeon" fullname="O. Dugeon"/>
          <author initials="J." surname="Meuric" fullname="J. Meuric"/>
          <author initials="R." surname="Douville" fullname="R. Douville"/>
          <author initials="R." surname="Casellas" fullname="R. Casellas"/>
          <author initials="O." surname="Gonzalez de Dios" fullname="O. Gonzalez de Dios"/>
          <date month="July" year="2013"/>
        </front>
      </reference>
      <reference anchor="I-D.draft-ietf-idr-ls-distribution-04">
        <front>
          <title>North-Bound Distribution of Link-State and TE Information using BGP</title>
          <author initials="H." surname="Gredler" fullname="H. Gredler"/>
          <author initials="J." surname="Medved" fullname="J. Medved"/>
          <author initials="S." surname="Previdi" fullname="S. Previdi"/>
          <author initials="A." surname="Farrel" fullname="A. Farrel"/>
          <author initials="S." surname="Ray" fullname="S. Ray"/>
          <date month="November" year="2013"/>
        </front>
      </reference>
      <reference anchor="I-D.draft-zhang-pce-hierarchy-extensions-04">
        <front>
          <title>Extensions to Path Computation Element Communication Protocol (PCEP) for Hierarchical Path Computation Elements (PCE)</title>
          <author initials="F." surname="Zhang" fullname="F. Zhang"/>
          <author initials="Q." surname="Zhao" fullname="Q. Zhao"/>
          <author initials="O." surname="Gonzalez de Dios" fullname="O. Gonzalez de Dios"/>
          <author initials="R." surname="Casellas" fullname="R. Casellas"/>
          <author initials="D." surname="King" fullname="D. King"/>
          <date month="July" year="2013"/>
        </front>
      </reference>
      <reference anchor="I-D.draft-ietf-idr-te-pm-bgp-00">
        <front>
          <title>BGP attribute for North-Bound Distribution of Traffic Engineering (TE) performance Metrics</title>
          <author initials="Q." surname="Wu" fullname="Q. Wu"/>
          <author initials="D." surname="Wang" fullname="D. Wang"/>
          <author initials="S." surname="Previdi" fullname="S. Previdi"/>
          <author initials="H." surname="Gredler" fullname="H. Gredler"/>
          <author initials="S." surname="Ray" fullname="S. Ray"/>
          <date month="January" year="2014"/>
        </front>
      </reference>
    </references>
  </back>
</rfc>
