PCE Working Group D. Dhody Internet-Draft U. Palle Intended status: Standards Track Huawei Technologies India Pvt Expires: August 12, 2012 Ltd R. Casellas CTTC - Centre Tecnologic de Telecomunicacions de Catalunya February 9, 2012 Standard Representation Of Domain Sequence draft-dhody-pce-pcep-domain-sequence-02 Abstract The ability to compute shortest constrained Traffic Engineering Label Switched Paths (TE LSPs) in Multiprotocol Label Switching (MPLS) and Generalized MPLS (GMPLS) networks across multiple domains has been identified as a key requirement for P2P and P2MP scenarios. In this context, a domain is a collection of network elements within a common sphere of address management or path computational responsibility such as an IGP area or an Autonomous Systems. This document specifies a standard representation and encoding of a domain sequence, which is defined as an ordered sequence of domains traversed to reach the destination domain. This document also defines new sub-objects to be used to encode domain identifiers. 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 http://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 August 12, 2012. Copyright Notice Copyright (c) 2012 IETF Trust and the persons identified as the document authors. All rights reserved. Dhody, et al. Expires August 12, 2012 [Page 1] Internet-Draft DOMAIN SEQ February 2012 This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://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 Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Detail Description . . . . . . . . . . . . . . . . . . . . . . 5 3.1. Domains . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.2. Domain-Sequence . . . . . . . . . . . . . . . . . . . . . 5 3.3. Standard Representation . . . . . . . . . . . . . . . . . 6 3.4. Mode of Operation . . . . . . . . . . . . . . . . . . . . 8 3.5. Examples . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.5.1. Inter-Area Path Computation . . . . . . . . . . . . . 9 3.5.2. Inter-AS Path Computation . . . . . . . . . . . . . . 11 3.5.2.1. Example 1 . . . . . . . . . . . . . . . . . . . . 11 3.5.2.2. Example 2 . . . . . . . . . . . . . . . . . . . . 13 3.5.3. Boundary Node and Inter-AS-Link . . . . . . . . . . . 15 3.5.4. PCE serving multiple domains . . . . . . . . . . . . . 16 3.5.5. P2MP . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.5.6. HPCE . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.5.7. Relationship to PCE Sequence . . . . . . . . . . . . . 18 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 4.1. New IRO Object Type . . . . . . . . . . . . . . . . . . . 19 4.2. Sub-Objects . . . . . . . . . . . . . . . . . . . . . . . 19 5. Security Considerations . . . . . . . . . . . . . . . . . . . 19 6. Manageability Considerations . . . . . . . . . . . . . . . . . 19 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 19 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 19 8.1. Normative References . . . . . . . . . . . . . . . . . . . 19 8.2. Informative References . . . . . . . . . . . . . . . . . . 20 Dhody, et al. Expires August 12, 2012 [Page 2] Internet-Draft DOMAIN SEQ February 2012 1. Introduction A PCE may be used to compute end-to-end paths across multi-domain environments using a per-domain path computation technique [RFC5152]. The so called backward recursive path computation (BRPC) mechanism [RFC5441] defines a PCE-based path computation procedure to compute inter-domain constrained (G)MPLS TE LSPs. However, both per-domain and BRPC techniques assume that the sequence of domains to be crossed from source to destination is known, either fixed by the network operator or obtained by other means. For inter-domain point-to- multi-point (P2MP) tree, [PCE-P2MP-PROCEDURES] assumes the domain- tree is known. The list of domains in a point-to-point (P2P) path or a point-to- multi-point (P2MP) tree is usually a constraint in the path computation request. The PCE decouples the domain to determine the next PCE to forward the request. According to BRPC mechanism the PCC MAY indicate the sequence of domains to be traversed using the Include Route Object (IRO) defined in [RFC5440]. This document proposes a standard way to represent and encode a domain sequence using IRO in various deployment scenarios including P2P, P2MP and Hierarchical PCE (HPCE) [PCE-HIERARCHY-FWK]. The domain sequence (the set of domains traversed to reach the destination domain) is either administratively predetermined or discovered by some means (H-PCE) that is outside of the scope of this document. Here the focus is only on a standard representation of the domain sequence in all possible scenarios. 1.1. Requirements Language 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 [RFC2119]. 2. Terminology The following terminology is used in this document. ABR: OSPF Area Border Router. Routers used to connect two IGP areas. Dhody, et al. Expires August 12, 2012 [Page 3] Internet-Draft DOMAIN SEQ February 2012 AS: Autonomous System. ASBR: Autonomous System Boundary Router. BN: Boundary Node, Can be an ABR or ASBR. BRPC: Backward Recursive Path Computation Domain: Any collection of network elements within a common sphere of address management or path computational responsibility. Examples of domains include Interior Gateway Protocol (IGP) areas and Autonomous Systems (ASs). Domain-Seq: An ordered sequence of domains traversed to reach the destination domain. ERO: Explicit Route Object H-PCE: Hierarchical PCE IGP: Interior Gateway Protocol. Either of the two routing protocols, Open Shortest Path First (OSPF) or Intermediate System to Intermediate System (IS-IS). IRO: Include Route Object IS-IS: Intermediate System to Intermediate System. OSPF: Open Shortest Path First. PCC: Path Computation Client: any client application requesting a path computation to be performed by a Path Computation Element. PCE: Path Computation Element. An entity (component, application, or network node) that is capable of computing a network path or route based on a network graph and applying computational constraints. P2MP: Point-to-Multipoint P2P: Point-to-Point TE LSP: Traffic Engineering Label Switched Path. Dhody, et al. Expires August 12, 2012 [Page 4] Internet-Draft DOMAIN SEQ February 2012 3. Detail Description 3.1. Domains A domain can be defined as a separate administrative or geographic environment within the network. A domain may be further defined as a zone of routing or computational ability. Under these definitions a domain might be categorized as an Antonymous System (AS) or an Interior Gateway Protocol (IGP) area ( as per [RFC4726] and [RFC4655]). To uniquely identify a domain in the domain sequence both AS and Area-id is important. 3.2. Domain-Sequence A domain-sequence is an ordered sequence of domains traversed to reach the destination domain. In this context a Domain could be an Autonomous System (AS) or an IGP Area. Note that an AS can be further made of multiple Area. Domain Sequence can be applied as a constraint and carried in path computation request to PCE(s). In case of HPCE [PCE-HIERARCHY-FWK] Parent PCE MAY send the domain sequence as a result in path computation reply. In this context, ordered sequence is important, in a P2P path, the domains listed appear in the order that they are crossed. In a P2MP path, the domain tree is represented as list of domain sequences. One main goal of the Domain-Sequence is to enable a PCE to select the next PCE to forward the path computation request based on the domain information. A PCC or PCE MAY add an additional constraints covering which Boundary Nodes (ABR or ASBR) or Border links (Inter-AS-link) MUST be traversed while defining a domain sequence. Thus a Domain-Sequence MAY be made up of one or more of - o AS Number o Area ID o Boundary Node ID o Inter-AS-Link Address Dhody, et al. Expires August 12, 2012 [Page 5] Internet-Draft DOMAIN SEQ February 2012 3.3. Standard Representation The IRO (Include Route Object) [RFC5440] is an optional object used to specify a set of specified network elements that the computed path MUST traverse. [RFC5440] in its description of IRO does not constrain the sub-objects to be in a given particular order. When considering a domain sequence, the domain relative ordering is a basic criterion and, as such, this document specifies a new IRO object type. We define a new type of IRO Object to define Domain Sequence. IRO Object-Class is 10. IRO Object-Type is TBD. (2 suggested value to IANA) 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | // (Subobjects) // | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Sub-objects: The IRO is made of sub-objects identical to the ones defined in [RFC3209], [RFC3473], and [RFC3477], where the IRO sub- object type is identical to the sub-object type defined in the related documents. Some new sub-objects related to Domain-Sequence are also added in this document. The following sub-object types are used. Type Sub-object 1 IPv4 prefix 2 IPv6 prefix 4 Unnumbered Interface ID 32 Autonomous system number (2 Byte) TBD Autonomous system number (4 Byte) TBD OSPF Area id TBD ISIS Area id [RFC3209] defines sub-objects for IPv4, IPv6 and unnumbered Interface ID, which in the context of domain-sequence is used to specify Boundary Node (ABR/ASBR) and Inter-AS-Links. [RFC3209] also defines 2 octet AS number. To support 4 octet AS number [RFC4893] following subobject is Dhody, et al. Expires August 12, 2012 [Page 6] Internet-Draft DOMAIN SEQ February 2012 defined: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |L| Type | Length | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AS Id (4 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Since the length of Area-id is different for OSPF and ISIS, we propose different sub-objects. For OSPF, the area-id is a 32 bit number. The Subobject looks 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |L| Type | Length | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Area Id (4 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The length if fixed. For ISIS, the area-id is of variable length and thus the length of the Subobject is variable. The Area-id is as described in ISIS by ISO standard [ISO 10589]. The Length MUST be at least 4, and MUST be a multiple of 4. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |L| Type | Length | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | // ISIS Area ID // | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The above sub-objects in various combinations can be used to encode the domain-sequence. When the domain-sequence is used as a constraint in path computation request it is carried in IRO Domain Sequence Object Type. The same sub-objects and their encoding can be used in ERO and path reply message when the domain sequence is computed from Parent PCE. All other rules of PCEP objects and message processing is as per Dhody, et al. Expires August 12, 2012 [Page 7] Internet-Draft DOMAIN SEQ February 2012 [RFC5440]. 3.4. Mode of Operation A domain sequence IRO object constraints or defines the domains involved in a muti-domain path computation, typically involving two or more collaborative PCEs. Consequently, a Domain-Sequence can be used: 1. by a PCE in order to discover or select the next PCE in a collaborative path computation, such as in BRPC [RFC5441]; 2. by the Parent PCE to return the domain sequence when unknown, this can further be an input to BRPC procedure; 3. By a PCC (or PCE) to constraint the domains used in a H-PCE path computation, explicitly specifying which domains to be expanded; A domain sequence can have varying degrees on granularity; it is possible to have a domain sequence composed of, uniquely, AS identifiers. It is also possible to list the involved areas for a given AS. In any case, the mapping between domains and responsible PCEs is not defined in this document. It is assumed that a PCE that needs to obtain a "next PCE" from a domain sequence is able to do so (e.g. via administrative configuration, or discovery). The following algorithm can be applied to select the next domain and, if need be, the PCE responsible for that domain. Note the PCC select the PCE(1) based on its own domain information. Dhody, et al. Expires August 12, 2012 [Page 8] Internet-Draft DOMAIN SEQ February 2012 START Get the first Sub-Object S1 from the Domain-Sequence IF S1's Type is Area (OSPF or ISIS) IF S1's Domain is same as current PCE's Area Remove S1 from Domain-Sequence and Goto START ELSE Find the next PCE based on S1's Area within the AS ENDIF ELSEIF S1's Type is AS (2 or 4 Byte) IF S1's Domain is same as current PCE's AS Remove S1 from Domain-Sequence and Goto START ELSE Get the next Sub-Object S2 from the Domain-Sequence IF the S2 is NULL or S2's type is AS Find the next PCE based on S1's Domain (AS) only ELSEIF S1's Type is Area Find the next PCE based on S1's Domain (AS) and S2's Domain (Area) ELSE ENDIF ENDIF ENDIF IF Domain-Sequence is empty or next PCE is not found Send PCRep with NO-Path ENDIF If the Sub-Object is of other type representing Boundary Node or Inter-As-Link, it is not used to select the next PCE, but used only while applying BRPC or any other inter-domain procedure. 3.5. Examples 3.5.1. Inter-Area Path Computation In an inter-area path computation where ingress and egress belong to different IGP area, the domain sequence MAYBE represented using a ordered list of AREA sub-objects. AS number MAYBE skipped, as area information is enough to select the next PCE. Dhody, et al. Expires August 12, 2012 [Page 9] Internet-Draft DOMAIN SEQ February 2012 +-------------------+ +-------------------+ | | | | | +--+ | | +--+ | | +--+ | | | | | | | | | | +--+ | | +--+ +--+ | | +--* + + | | | | | | +--+ | | *--+ + + | | | | | | +--+ | | +--+ | | | | | | |+--------------------------+| +--+ | | ++++ +-++ | | |||| +--+ | || | | Area 2 ++++ | | +-++ Area 4 | +-------------------+| +--+ |+-------------------+ | | | +--+ | | +--+ | | | | | | +--+ | | +--+ | | | | | | | | | | +--+ | | | | | | +--+ | +------------------+| |+--------------------+ | ++-+ +-++ | | || | | || | | ++-+ Area 0 +-++ | | |+--------------------------+| +--+ | | +--+ | | | | | | | | | | +--+ | | +--+ +--+ | | | | | | + + +--+ | | +--+ | | | | | | + + +--+ | | +--+ | | | | | | | | +--+ | | +--+ | | | | | | | | +--+ | | | | | | Area 1 | | Area 5 | +------------------+ +--------------------+ AS Number is 100. Dhody, et al. Expires August 12, 2012 [Page 10] Internet-Draft DOMAIN SEQ February 2012 Figure 1: Inter-Area Path Computation This could be represented as as: +---------+ +---------+ +---------+ +---------+ |IRO | |Sub | |Sub | |Sub | |Object | |Object | |Object | |Object | |Header | |Area 2 | |Area 0 | |Area 4 | | | | | | | | | | | | | | | | | +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ |IRO | |Sub | |Sub | |Sub | |Sub | |Object | |Object As| |Object | |Object | |Object | |Header | |100 | |Area 2 | |Area 0 | |Area 4 | | | | | | | | | | | | | | | | | | | | | +---------+ +---------+ +---------+ +---------+ +---------+ AS is optional and it MAY be skipped. PCE should be able to understand both notations. 3.5.2. Inter-AS Path Computation In inter-AS path computation, where ingress and egress belong to different AS, the domain sequence is represented using an ordered list of AS sub-objects. The domain sequence MAY further include decomposed area information in AREA sub-objects. 3.5.2.1. Example 1 As shown in Figure 2, where AS to be made of a single area, the area subobject MAY be skipped in the domain sequence as AS is enough to uniquely identify the next domain and PCE. Dhody, et al. Expires August 12, 2012 [Page 11] Internet-Draft DOMAIN SEQ February 2012 +---------------------------------+ |AS 200 | | +------+ | | | | | +------------------------+ | | | +------+ | | AS 100 | | +------+ | | | | +------+ | | +------+ | | | | | +-+-----+-+ | +------+ | | | | | | | | | | +------+ | | +------+ | | +------+ | | +------+ | | | | | | | | | | | | | | | | | | +------+ | | +------+ | | | | | | +------+ | | +------+ | | | +-+-----+-+ | +------+ | | | | | | | | | | | | +------+ | | +------+ | | | | | | +------+ | | | | | | | | | | +------+ | | +------+ | | | | | | | | | | |PCE | | | |PCE | | | +------+ | | +------+ | | | | | +------------------------+ | | +---------------------------------+ Both AS are made of Area 0. Figure 2: Inter-AS Path Computation Dhody, et al. Expires August 12, 2012 [Page 12] Internet-Draft DOMAIN SEQ February 2012 This could be represented as as: +---------+ +---------+ +---------+ |IRO | |Sub | |Sub | |Object | |Object As| |Object As| |Header | |100 | |200 | | | | | | | | | | | | | +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ |IRO | |Sub | |Sub | |Sub | |Sub | |Object | |Object As| |Object | |Object As| |Object | |Header | |100 | |Area 0 | |200 | |Area 0 | | | | | | | | | | | | | | | | | | | | | +---------+ +---------+ +---------+ +---------+ +---------+ Area is optional and it MAY be skipped. PCE should be able to understand both notations. 3.5.2.2. Example 2 As shown in Figure 3, where AS 200 is made up of multiple areas and multiple domain-sequence exist, PCE MAY include both AS and AREA subobject to uniquely identify the next domain and PCE. Dhody, et al. Expires August 12, 2012 [Page 13] Internet-Draft DOMAIN SEQ February 2012 | | +-------------+ +----------------+ | |Area 2 | |Area 4 | | | +--+| | +--+ | | | | || | | | | | | +--+ +--+| | +--+ +--+ | | | | | | | | | | | | *--+ | | +--+ | | | / +--+ | | +--+ | | |/ | | | | | | | | / +--+ | | +--+ +--+ | | /| +--+ |+--------------+| | | | |/ | | | ++-+ +-++ +--+ | +-------------+/ | +--+ || | | || | | /| | ++-+ +-++ | | +--*|| +-------------+| |+----------------+ | | ||| | +--+ | | +--+|| | | | | | +--+ || | +--+ | | | | || | | | +--+ || | | | || | +--+ | |+--+ || | | | | || | || | +--+ | |+--+ || | | | || | +--+ | | +--+ || +------------+ | | | |+----------------+ | | | || |Area 3 +-++ +--+ +-++ Area 5 | | +--+ || | | || | || | | || | +-++ +-++ | | +--+|| | +--+ | | Area 0 || +--+ | | | ||| | | | | +--------------+| | | | | +--*|| | +--+ | | +--+ | | \| | | | +--+ | |Area 1 |\ | +--+ | | +--+ | | | +-------------+|\ | | | | | | | +--+ | | \| +--+ +--+ | +--+ | | \ | | | | | |\ +--+ | +--+ | | | \ +--+ | | | | | | | \| | | | +--+ | | | *--+ | | | | | | | | | +------------+ +----------------+ | | As 100 | AS 200 | Dhody, et al. Expires August 12, 2012 [Page 14] Internet-Draft DOMAIN SEQ February 2012 Figure 3: Inter-AS Path Computation The domain sequence can be carried in IRO as shown below: +-------+ +-------+ +-------+ +-------+ +-------+ +-------+ +-------+ |IRO | |Sub | |Sub | |Sub | |Sub | |Sub | |Sub | |Object | |Object | |Object | |Object | |Object | |Object | |Object | |Header | |As 100 | |Area 1 | |AS 200 | |Area 3 | |Area 0 | |Area 4 | | | | | | | | | | | | | | | +-------+ +-------+ +-------+ +-------+ +-------+ +-------+ +-------+ Combination of both AS and Area uniquely identify a domain in the domain sequence. Note that an Area domain identifier always belongs to the previous AS that appear before it or, if no AS sub-objects are present, it is assumed to be the current AS. If the area information cannot be provided, PCE MAY forward the path computation request to the next PCE based on AS only. If multiple PCEs of different area domain exist, PCE MAY apply local policy to select the next PCE. Furthermore the domain sequence (list of areas within AS) in the next PCE MAYBE pre-administered or MAYBE discovered via some mechanism (ex. HPCE). 3.5.3. Boundary Node and Inter-AS-Link A PCC or PCE MAY add additional constraints covering which Boundary Nodes (ABR or ASBR) or Border links (Inter-AS-link) MUST be traversed while defining a domain sequence. In which case the Boundary Node or Link MAY be encoded as a part of the domain-sequence using the existing sub-objects. Boundary Node (ABR / ASBR) can be encoded using the IPv4 or IPv6 prefix sub-objects. The Inter-AS link can be encoded using the IPv4 or IPv6 prefix or unnumbered interface sub-objects. For Figure 1, an ABR to be traversed can be specified as: +---------+ +---------+ +---------++---------+ +---------+ |IRO | |Sub | |Sub ||Sub | |Sub | |Object | |Object | |Object ||Object | |Object | |Header | |Area 2 | |IPv4 ||Area 0 | |Area 4 | | | | | |x.x.x.x || | | | | | | | | || | | | +---------+ +---------+ +---------++---------+ +---------+ Dhody, et al. Expires August 12, 2012 [Page 15] Internet-Draft DOMAIN SEQ February 2012 For Figure 2, an inter-AS-link to be traversed can be specified as: +---------+ +---------+ +---------+ +---------+ +---------+ |IRO | |Sub | |Sub | |Sub | |Sub | |Object | |Object As| |Object | |Object | |Object As| |Header | |100 | |IPv4 | |IPv4 | |200 | | | | | |x.x.x.x | |x.x.x.x | | | | | | | | | | | | | +---------+ +---------+ +---------+ +---------+ +---------+ 3.5.4. PCE serving multiple domains A single PCE MAYBE responsible for multiple domains; for example PCE function deployed on an ABR. Domain sequence should have no impact on this. PCE which can support 2 adjacent domains can internally handle this situation without any impact on the neighboring domains. 3.5.5. P2MP In case of P2MP the path domain tree is nothing but a series of Domain Sequences, as shown in the below figure: D1-D3-D6, D1-D3-D5 and D1-D2-D4. D1 / \ D2 D3 / / \ D4 D5 D6 3.5.6. HPCE As per [PCE-HIERARCHY-FWK], consider a case as shown in Figure 4 consisting of multiple child PCEs and a parent PCE. Dhody, et al. Expires August 12, 2012 [Page 16] Internet-Draft DOMAIN SEQ February 2012 +--------+ | Parent | | PCE | +--------+ +-------------------+ +-------------------+ | +--+ | | +--+ | | +--+ | | | | | | | | | | +--+ | | +--+ +--+ | | +--* + + | | | | | | +--+ | | *--+ + + | | | | | | +--+ | | +--+ | | | | | | |+--------------------------+| +--+ | | ++++ +-++ | | |||| +--+ | || | | Area 2 ++++ | | +-++ Area 4 | +-------------------+| +--+ |+-------------------+ | +--+ | | +--+ | | | | | | +--+ | | +--+ | | | | +--+ | | | | | | +--+ | +------------------+| |+--------------------+ | ++-+ +-++ | | || | | || | | ++-+ Area 0 +-++ | | |+--------------------------+| +--+ | | +--+ | | | | | | | | | | +--+ | | +--+ +--+ | | | | | | + + +--+ | | +--+ | | | | | | + + +--+ | | +--+ | | | | | | | | +--+ | | +--+ | | | | | | | | +--+ | | Area 1 | | Area 5 | +------------------+ +--------------------+ Figure 4: Hierarchical PCE In HPCE implementation the initiator PCE - PCE(1) can request the Dhody, et al. Expires August 12, 2012 [Page 17] Internet-Draft DOMAIN SEQ February 2012 parent PCE to determine the domain sequence and return in the path computation reply message (PCRep), using the ERO Object. The ERO can contain an ordered sequence of sub-object such as AS and Area (OSPF/ ISIS). In this case, the PCRep would carry the domain sequence result as: +---------+ +---------+ +---------+ +---------+ |ERO | |Sub | |Sub | |Sub | |Object | |Object | |Object | |Object | |Header | |Area 2 | |Area 0 | |Area 4 | | | | | | | | | | | | | | | | | +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ |ERO | |Sub | |Sub | |Sub | |Sub | |Object | |Object As| |Object | |Object | |Object | |Header | |100 | |Area 2 | |Area 0 | |Area 4 | | | | | | | | | | | | | | | | | | | | | +---------+ +---------+ +---------+ +---------+ +---------+ Note that, in the case of ERO objects, no new PCEP object type is required since the ordering constraint is assumed. 3.5.7. Relationship to PCE Sequence [RFC5886] and [PCE-P2MP-PROCEDURES] along with Domain Sequence introduces the concept of PCE-Sequence, where a sequence of PCEs, based on the domain sequence, should be decided and attached in the PCReq at the very beginning of path computation. An alternative would be to use domain sequences, which simplifies as explained below: Advantages o All PCE must be aware of all other PCEs in all domain for PCE- Sequence. There is no clear method for this. In domain-sequence PCE should be aware of the domains and not all the PCEs serving the domain. PCE needs to be aware of the neighboring PCEs as done by discovery protocols. o There maybe multiple PCE in a domain, the selection of PCE should not be made at the PCC/PCE(1). This decision is made only at the neighboring PCE which is aware of state of PCEs via notification Dhody, et al. Expires August 12, 2012 [Page 18] Internet-Draft DOMAIN SEQ February 2012 messages. o Domain sequence would be compatible to P2P inter-domain BRPC method as described in [RFC5441]. 4. IANA Considerations 4.1. New IRO Object Type IANA has defined a registry for Domain-Sequence. IRO Object-Class 10 IRO Object-Type 2 4.2. Sub-Objects IANA has defined a registry for following sub-objects. Type Sub-object TBD AS Number (4 Byte) TBD OSPF Area id TBD ISIS Area id 5. Security Considerations This document specifies a standard representation of domain sequence, which is used in all inter-domain PCE scenarios as explained in other RFC and drafts. It does not introduce any new security considerations. 6. Manageability Considerations TBD 7. Acknowledgments We would like to thank Pradeep Shastry, Suresh babu, Quintin Zhao, Fatai Zhang, Daniel King, Oscar Gonzalez and Chen Huaimo for their useful comments and suggestions. 8. References 8.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. Dhody, et al. Expires August 12, 2012 [Page 19] Internet-Draft DOMAIN SEQ February 2012 [ISO 10589] ISO, "Intermediate system to Intermediate system routeing information exchange protocol for use in conjunction with the Protocol for providing the Connectionless-mode Network Service (ISO 8473)", ISO/IEC 10589:2002. 8.2. Informative References [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP Tunnels", RFC 3209, December 2001. [RFC3473] Berger, L., "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions", RFC 3473, January 2003. [RFC3477] Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links in Resource ReSerVation Protocol - Traffic Engineering (RSVP-TE)", RFC 3477, January 2003. [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation Element (PCE)-Based Architecture", RFC 4655, August 2006. [RFC4726] Farrel, A., Vasseur, J., and A. Ayyangar, "A Framework for Inter-Domain Multiprotocol Label Switching Traffic Engineering", RFC 4726, November 2006. [RFC4893] Vohra, Q. and E. Chen, "BGP Support for Four- octet AS Number Space", RFC 4893, May 2007. [RFC5152] Vasseur, JP., Ayyangar, A., and R. Zhang, "A Per-Domain Path Computation Method for Establishing Inter-Domain Traffic Engineering (TE) Label Switched Paths (LSPs)", RFC 5152, February 2008. [RFC5440] Vasseur, JP. and JL. Le Roux, "Path Computation Element (PCE) Communication Protocol (PCEP)", RFC 5440, March 2009. [RFC5441] Vasseur, JP., Zhang, R., Bitar, N., and JL. Le Roux, "A Backward-Recursive PCE-Based Computation (BRPC) Procedure to Compute Dhody, et al. Expires August 12, 2012 [Page 20] Internet-Draft DOMAIN SEQ February 2012 Shortest Constrained Inter-Domain Traffic Engineering Label Switched Paths", RFC 5441, April 2009. [RFC5886] Vasseur, JP., Le Roux, JL., and Y. Ikejiri, "A Set of Monitoring Tools for Path Computation Element (PCE)-Based Architecture", RFC 5886, June 2010. [PCE-P2MP-PROCEDURES] Zhao, Q., Dhody, D., Ali, Z., Saad,, T., Sivabalan,, S., and R. Casellas, "PCE-based Computation Procedure To Compute Shortest Constrained P2MP Inter-domain Traffic Engineering Label Switched Paths (draft-ietf- pce-pcep-inter-domain-p2mp-procedures-02)", February 2012. [PCE-HIERARCHY-FWK] King, D. and A. Farrel, "The Application of the Path Computation Element Architecture to the Determination of a Sequence of Domains in MPLS and GMPLS. (draft-ietf-pce-hierarchy-fwk-00)", October 2011. Authors' Addresses Dhruv Dhody Huawei Technologies India Pvt Ltd Leela Palace Bangalore, Karnataka 560008 INDIA EMail: dhruv.dhody@huawei.com Udayasree Palle Huawei Technologies India Pvt Ltd Leela Palace Bangalore, Karnataka 560008 INDIA EMail: udayasree.palle@huawei.com Dhody, et al. Expires August 12, 2012 [Page 21] Internet-Draft DOMAIN SEQ February 2012 Ramon Casellas CTTC - Centre Tecnologic de Telecomunicacions de Catalunya Av. Carl Friedrich Gauss n7 Castelldefels, Barcelona 08860 SPAIN EMail: ramon.casellas@cttc.es Dhody, et al. Expires August 12, 2012 [Page 22]