PCE Working Group | A. Wang |
Internet-Draft | China Telecom |
Intended status: Standards Track | B. Khasanov |
Expires: February 19, 2021 | S. Fang |
Huawei | |
C. Zhu | |
ZTE Corporation | |
August 18, 2020 |
PCEP Extension for Native IP Network
draft-ietf-pce-pcep-extension-native-ip-06
This document defines the Path Computation Element Communication Protocol (PCEP) extension for Central Control Dynamic Routing (CCDR) based application in Native IP network. The scenario and framework of CCDR in native IP is described in [RFC8735] and [I-D.ietf-teas-pce-native-ip]. This draft describes the key information that is transferred between Path Computation Element (PCE) and Path Computation Clients (PCC) to accomplish the End to End (E2E) traffic assurance in Native IP network under central control mode.
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 https://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 February 19, 2021.
Copyright (c) 2020 IETF Trust and the persons identified as the document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://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.
Traditionally, Multiprotocol Label Switching Traffic Engineering (MPLS-TE) traffic assurance requires the corresponding network devices support Multiprotocol Label Switching (MPLS) or the complex Resource ReSerVation Protocol (RSVP)/Label Distribution Protocol (LDP) /Segment Routing etc. technologies to assure the End-to-End (E2E) traffic performance. But in native IP network, there will be no such signaling protocol to synchronize the action among different network devices. It is necessary to use the central control mode that described in [RFC8283] to correlate the forwarding behavior among different network devices. Draft [I-D.ietf-teas-pce-native-ip] describes the architecture and solution philosophy for the E2E traffic assurance in Native IP network via Dual/Multi Border Gateway Protocol (BGP) solution. This draft describes the corresponding Path Computation Element Communication Protocol (PCEP) extensions to transfer the key information about peer address list, peer prefix association and the explicit peer route on on-path router.
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 RFC 2119 [RFC2119].
.This document uses the following terms defined in [RFC5440]: PCE, PCEP
The following terms are defined in this document:
Three new objects are defined in this draft:
Each extension object takes the similar format, that is to say, it began with the common object header defined in [RFC5440] as the following:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Object-Class | OT |Res|P|I| Object Length(bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | (Object body) | // // | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 1: PCEP Object Format
Different object-class, object type and the corresponding object body is defined separately in the following section .
The Peer Address List object is used in a PCE Initiate message [RFC8281] defined to specify the IP address of peer that the received network device should establish the BGP relationship with. This Object should only be included and sent to the head and end router of the E2E path in case there is no Route Reflection (RR) involved. If the RR is used between the head and end routers, then such information should be sent to head router, RR and end router respectively.
Peer Address List Object-Class is TBD
Peer Address List Object-Type is 1 for IPv4 and 2 for IPv6
The format of the Peer Address List object body for IPv4(Object-Type=1) is as follows:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Peer Num | Peer Id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Local AS Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Peer AS Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ETTL | Peer Cookie | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Local IP Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Peer IP Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Additional Peer Info. | // (From Peer ID to Peer IP Address) // +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 2: Peer Address List Object Body Format for IPv4
The format of the Peer Address List object body for IPv6(Object-Type=2) is as follows:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Peer Num | Peer ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Local AS Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Peer AS Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ETTL | Peer Cookie | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Local IP Address (16 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Peer IP Address (16 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Additional Peer Info. | // (From Peer ID to Peer IP Address) // +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 3: Peer Address List Object Body Format for IPv6
Peer Num : 2 Bytes, Peer Address Number on the advertised router.
Peer-ID: 2 Bytes, to distinguish the different peer pair, will be referenced in Peer Prefix Association, if the PCE use multi-BGP solution for different QoS assurance requirement.
Local AS Number: 4 Bytes, to indicate the AS number of the Local Peer.
Peer AS Number: 4 Bytes, to indicate the AS number of Remote Peer.
ETTL: 1 Bytes, to indicate the multi hop count for EBGP session. It should be 0 and ignored when Local AS and Peer AS is same.
Peer Cookie: Used for establishing the secure BGP session between two peers. The PCEP client should use the MD5 algorithm to generate the encrypted message.
Local IP Address(4/16 Bytes): IP address of the local router, used to peer with other end router. When Object-Type is 1, length is 4 bytes; when Object-Type is 2, length is 16 bytes.
Peer IP Address(4/16 Bytes): IP address of the peer router, used to peer with the local router. When Object-Type is 1, length is 4 bytes; when Object-Type is 2, length is 16 bytes;
The Peer Prefix Association object is defined to specify the IP prefixes that should be advertised by the corresponding Peer. This object should only be included and sent to the head/end router of the end2end path in case there is no RR involved. If the RR is used between the head and end routers, then such information should be sent to head router,RR and end router respectively.
Peer Prefix Association Object-Class is TBD
Peer Prefix Association Object-Type is 1 for IPv4 and 2 for IPv6
The format of the Peer Prefix Association object body is as follows:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Peer ID | Prefixes Num | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Prefix Length | Prefix Value | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Prefix Value | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 4: Peer Prefix Association Object Body Format
Peer-ID: 2 Bytes, to indicate which peer should be used to advertise the following IP Prefix TLV. This value is assigned in the Peer Address List object and is referred in this object.
Prefixes Num: 2 Bytes, number of prefixes that advertised by the corresponding Peer. It should be equal to number of the following IP prefix sub TLV.
Prefix Length: 2 Bytes, the prefix length. For example, for 10.0.0.0/8, this field will be equal to 8; for 2001:DB8::/32, this field will be equal to 32.
Prefix Value: Variable length, the value of the prefix. For example, for 10.0.0.0/8, this field will be 10.0.0.0; for 2001:DB8::/32, this field will be equal to 2001:DB8::.
The Explicit Peer Route object is defined to specify the explicit peer route to the corresponding peer address on each device that is on the E2E assurance path. This Object should be sent to all the devices that locates on the E2E assurance path that calculated by PCE.
Explicit Peer Route Object-Class is TBD.
Explicit Peer Route Object-Type is 1 for IPv4 and 2 for IPv6
The format of Explicit Peer Route object body for IPv4(Object-Type=1) is as follows:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Route Priority | Path Identifier | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Peer Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Next Hop Address to the Peer | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 6: Explicit Peer Route Object Body Format for IPv4
The format of Explicit Peer Route object body for IPv6(Object-Type=2) is as follows:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Route Priority | Path Identifier | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Peer Address (16 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Next Hop Address to the Peer(16 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 6: Explicit Peer Route Object Body Format for IPv4
Route Priority: 2 Bytes, The priority of this explicit route. The higher priority should be preferred by the device.
Path Identifier: To indicate the path to peer address, especially for the same peer.
Peer Address: To indicate the peer address.
Next Hop Address to the Peer: To indicate the next hop address to the corresponding peer.
The information transferred in this draft is mainly used for the light weight BGP session setup, the prefix distribution and the explicit route deployment. The planning, allocation and distribution of the peer addresses within IGP should be accomplished in advanced and they are out of the scope of this draft.
Service provider should consider the protection of PCE and their communication with the underlay devices, which is described in document [RFC5440] and [RFC8253]
IANA is requested to allocate new registry for the PCEP Object Type:
Object-Type Value Name Reference TBD Peer Address List This document Object-Type 1: IPv4 address 2: IPv6 address TBD Peer Prefix Association This document Object-Type 1: IPv4 address 2: IPv6 address TBD Explicit Peer Route This document Object-Type 1: IPv4 address 2: IPv6 address
Thanks Dhruv Dhody for his valuable suggestions and comments.