PCE Working Group B. Yan, Ed. Internet-Draft Y. Zhao, Ed. Intended status: Standards Track W. Wang, Ed. Expires: July 7, 2018 X. Yu, Ed. J. Zhang, Ed. bupt January 3, 2018 PCEP Extension for Traffic Prediction draft-pce-traffic-prediction-01 Abstract The Path Computation Element Communication Protocol (PCEP) provides mechanisms for Path Computation Elements (PCEs) to perform path computations in response to Path Computation Clients (PCCs) requests. It is helpful for PCEs to calculate more reasonable path if PCCs can provide information of traffic prediction. This memo specifies extensions to PCEP that allow PCE to request prediction-related information. 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 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 July 7, 2018. Copyright Notice Copyright (c) 2018 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 Yan, et al. Expires July 7, 2018 [Page 1] Internet-Draft PCEP Extension for Traffic Prediction January 2018 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 2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 4. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . 3 5. Overview of Protocol Extensions . . . . . . . . . . . . . . . 4 5.1. Capability Advertisement . . . . . . . . . . . . . . . . 4 5.2. New Messages . . . . . . . . . . . . . . . . . . . . . . 4 5.3. Normal Communication Procedure . . . . . . . . . . . . . 5 5.3.1. Initialization Phase . . . . . . . . . . . . . . . . 5 5.3.2. Traffic Prediction Request Sent by a PCE to a PCC . . 6 5.3.3. Traffic Prediction Reply Sent by a PCC to a PCE . . . 6 5.4. Error Reporting . . . . . . . . . . . . . . . . . . . . . 7 6. PCEP Messages . . . . . . . . . . . . . . . . . . . . . . . . 7 6.1. The TPReq Message . . . . . . . . . . . . . . . . . . . . 8 6.2. The TPRep Message . . . . . . . . . . . . . . . . . . . . 8 6.3. The PAUpd Message . . . . . . . . . . . . . . . . . . . . 8 6.4. The PCErr Message . . . . . . . . . . . . . . . . . . . . 8 7. Object Formats . . . . . . . . . . . . . . . . . . . . . . . 8 7.1. OPEN Object . . . . . . . . . . . . . . . . . . . . . . . 8 7.1.1. Traffic Prediction Capability TLV . . . . . . . . . . 8 7.2. No Prediction Object . . . . . . . . . . . . . . . . . . 9 7.3. Prediction Tracker Object . . . . . . . . . . . . . . . . 9 7.3.1. Traffic Prediction Identifier TLV . . . . . . . . . . 9 7.3.2. Traffic Prediction State TLV . . . . . . . . . . . . 9 7.3.3. Prediction Attribute TLV . . . . . . . . . . . . . . 10 7.4. Prediction Requirement Object . . . . . . . . . . . . . . 10 7.4.1. Prediction Sequence TLV . . . . . . . . . . . . . . . 10 7.4.2. Prediction Expired Time TLV . . . . . . . . . . . . . 10 7.5. Prediction Information Object . . . . . . . . . . . . . . 10 7.5.1. Link Prediction TLV . . . . . . . . . . . . . . . . . 10 7.6. Prediction Area Object . . . . . . . . . . . . . . . . . 11 7.6.1. Link TLV . . . . . . . . . . . . . . . . . . . . . . 11 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 9. Security Considerations . . . . . . . . . . . . . . . . . . . 12 10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 12 11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 12 12. Normative References . . . . . . . . . . . . . . . . . . . . 12 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 Yan, et al. Expires July 7, 2018 [Page 2] Internet-Draft PCEP Extension for Traffic Prediction January 2018 1. Introduction [RFC5440] provides the Path Computation Element Communication Protocol (PCEP). PCEP defines the communication between a Path Computation Client (PCC) and a Path Control Element (PCE), or between PCE and PCE, enabling computation of Multiprotocol Label Switching (MPLS) for Traffic Engineering Label Switched Path (TE LSP) characteristics. For calculating proper path according to the tendency of traffic distribution in specific network area, this memo introduce a mechanism to make PCE able to get predicted information from PCC for specific path computation request. 2. 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]. 3. Terminology This memo uses the following terms defined in [RFC5440]: PCC, PCE, PCEP Speaker. 4. Motivation Along the network scale expansion and incremental diversity of network equipments, the network complexity increases exponentially, then the path computation in network becomes harder. Considering both traffic distribution at present and its trend in future in time dimension, PCE could make better decision to reduce network congestion, and optimize network performance. There are many effective methods which can complete traffic prediction accurately, however, the key point is where the past data set for prediction to be saved. In some scenarios, as a requester, PCC holds much more information than the responser PCE which can be used to do prediction, and not limited within single informations such as occupied bandwidth on specific network links. Another reason for this memo is the tradeoff between PCCs and PCEs on storage resource and computing resource. If vendor choose computational resource intensive methods to predict, such as machine learning, there should be much more computing resource request. Yan, et al. Expires July 7, 2018 [Page 3] Internet-Draft PCEP Extension for Traffic Prediction January 2018 5. Overview of Protocol Extensions 5.1. Capability Advertisement During PCEP Initialization Phase, PCEP Speakers (PCC or PCE) advertise their support of extensions for traffic prediction. A PCEP Speaker includes the "Traffic Prediction Capability" TLV, described in Section 7.1.1, in the OPEN Object to advertise its support for traffic prediction extensions. The Traffic Prediction Capability TLV includes the 'Prediction Capability' Flag that indicates whether the PCEP Speaker supports prediction operations, and other Flags indicates further capabilities. The PCEP extensions for traffic prediction MUST NOT be used if one or both PCEP Speakers have not included the Traffic Prediction Capability TLV in their respective OPEN message. If the PCEP Speaker on the PCC supports the extensions of this memo but does not set this flag as 1, then if the PCC receive TPReq message from the PCE, it MUST generate a PCErr with error-type ..., error-value... and it SHOULD terminate the PCEP session. this block should describe the error condition!!! 5.2. New Messages This memo define the following new PCEP messages: Traffic Prediction Request Message for Path Computation (TPReq): A PCEP message sent by a PCE to a PCC to request prediction for subset of whole network which contains specific network elements and network links. Each TPReq message MUST contain the predicted time sequence and expired time, MAY contain the sub-network description to be predicted and requirement for prediction accuracy, A PCE MAY send traffic prediction request message to a PCC at any time as long as it consideres this operation necessary. The details of TPReq message is described in Section 6.1. Traffic Prediction Reply Message for Path Computation (TPRep): A PCEP message sent by a PCC to a PCE to reply specific TPReq message, which contains prediction results for specific sub-network. Each TPRep message MUST contain predicted sub-network description, and related prediction information sequence. A PCC sends traffic prediction reply message if and only if it received related TPReq message. The details of TPRep message is described in Section 6.2. Precdiction Attribute Update Message for Path Computation (PAUpd): A PCEP message sent by a PCC to a PCE to indicate the scope changes of prediction attributes. Each PAUpd MAY contain sub-network Yan, et al. Expires July 7, 2018 [Page 4] Internet-Draft PCEP Extension for Traffic Prediction January 2018 description, prediction time scope, and prediction accuracy scope. A PCC MUST send prediction attribute update message to a PCE immediatly after OPEN message defined in [RFC5440], or some attributes has been changed. The details of PAUpd message is described in Section 6.3. 5.3. Normal Communication Procedure 5.3.1. Initialization Phase In initialization phase of a PCEP session, the Traffic Prediction Capability TLV in OPEN message sent by PCC indicates the capability about traffic prediction that PCC can do, while the TLV sent by PCE indicates the requests about traffic prediction that PCE MAY make. If any flag in Traffic Prediction Capability TLV was set to 1 by both sides, then they reached an agreement about the function advertised by this flag. However, if P flag was not set to 1 by both sides, then all other flags SHOULD NOT be parsed; and if not, PCC MUST send a PAUpd message to PCE to initialize the scope of variable prediction attributes with TPS-ID (see Section 7.3.2) set to 1. After received the first PAUpd message from PCC, PCE MUST send a TPReq message to confirm it with TPS-ID set to 1, too. The Initialization Phase is shown in Figure 1. +-+-+ +-+-+ |PCC| |PCE| +-+-+ +-+-+ | | | Open msg | |-------- | (Exchange Traffic| \ Open msg | Prediction | \ ---------| Capability) | \/ | | /\ | | / -------->| | / | |<------ | | | | PAUpd msg | (Initialize |-------------------->| Scop of | | Attributes) | TPReq msg | |<--------------------| | | Figure 1: Initialization Phase Yan, et al. Expires July 7, 2018 [Page 5] Internet-Draft PCEP Extension for Traffic Prediction January 2018 5.3.2. Traffic Prediction Request Sent by a PCE to a PCC Once a PCE has sucessfully established a PCEP session with one or more PCEs, if a traffic prediction event is triggered that requires the traffic prediction results of a subset of network, the PCE first selects one or more PCCs which have advertised they can predict traffic for the subset. Once the PCE has selected a PCC, it sends a TPReq message to the PCE. For example, "Predict the traffic in 5 minutes with link=link_id...". Each request is uniquely identified by a tp-id (See Section 7.3.1) number and PCC-PCE address pair. The process is shown in Figure 2. Details about the TPReq message can be found in Section 6.1. +-+-+ +-+-+ |PCC| |PCE| +-+-+ +-+-+ | | 1)Traffic Prediction Event | | 2)PCC Selection | | 3)Traffic Prediction Request |<--- TPReq message----| Sent to the Selected PCC | | | | Figure 2: Traffic Prediction Request 5.3.3. Traffic Prediction Reply Sent by a PCC to a PCE After receiving a traffic prediction request form a PCE, the PCC triggers a prediction computation, If the PCC manages to predict traffic in time that satisfies the set of required constraints, the PCC returns the result to the requesting PCE. The process is shown in Figure 3. Yan, et al. Expires July 7, 2018 [Page 6] Internet-Draft PCEP Extension for Traffic Prediction January 2018 +-+-+ +-+-+ |PCC| |PCE| +-+-+ +-+-+ | | | | | | |<--- TPReq message----| 1) Traffic Prediction | | Request Received | | 2) Predict Succefully | | 3) Predicted Result | | Sent to the PCE | | |---- TPRep message--->| Figure 3: Traffic Prediction Reply (Success) However, if the PCC can not predict traffic in time, it SHOULD provide the reason let to failure by sending a TPRep message with No- Prediction object (See Section 7.2). Upon receiving a reply like this, a PCE MAY decide to resend a modified request or take any other appropriate action. +-+-+ +-+-+ |PCC| |PCE| +-+-+ +-+-+ | | | | | | |<--- TPReq message----| 1) Traffic Prediction | | Request Received | | 2) Predict Unsuccefully| | 3) Cause of Failure | | Sent to the PCE | | |---- TPRep message--->| Figure 4: Traffic Prediction Reply (Failure) Details about the TPRep message can be found in Section 6.2. 5.4. Error Reporting 6. PCEP Messages Yan, et al. Expires July 7, 2018 [Page 7] Internet-Draft PCEP Extension for Traffic Prediction January 2018 6.1. The TPReq Message ::= Where: ::= [] 6.2. The TPRep Message ::= Where: ::= ([] | no-prediction) ::= [] 6.3. The PAUpd Message ::= 6.4. The PCErr Message 7. Object Formats 7.1. OPEN Object 7.1.1. Traffic Prediction Capability TLV 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type=[TBD] | Length=4 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Flags |A|S|P| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 5: The Traffic Prediction Capability TLV format Yan, et al. Expires July 7, 2018 [Page 8] Internet-Draft PCEP Extension for Traffic Prediction January 2018 The type (16 bits) of the TLV is to be assigned by IANA. The length field is 16 bit-long and has a fixed value of 4. The value comprises several field - Flags (32 bits) : A (PREDICTION-ACCURACY-CAPABILITY - 1 bit): if set to 1 by a PCC, the A Flag indicates that the PCC can measure the accuracy of prediction results; if set to 1 by a PCE, the A Flag indicates that the PCE is capable of requesting prediction results satisfying the lowest accuracy. S (PREDICTION-TIME-SEQUENCE-CAPABILITY - 1 bit): if set to 1 by a PCC, the S Flag indicates that the PCC can provide a sequence of prediction in time dimension; if set to 1 by a PCE, the S Flag indicates that the PCE is capable of requesting a sequence prediction results. P (PREDICTION-CAPABILITY - 1 bit): if set to 1 by a PCC, the P Flag indicates that the PCC can provide traffic prediction ability to PCE; if set to 1 by a PCE, the P Flag indicates that the PCE is capable of requesting traffic prediction. The PREDICTION-CAPABILITY Flag must be advertised by both a PCC and a PCE to allow TPReq, TPRep, and PAUpd messages on a PCEP session. If P Flag is set to 0, other Flags in this TLV don't make sense. 7.2. No Prediction Object 7.3. Prediction Tracker Object 7.3.1. Traffic Prediction Identifier TLV 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type=[TBD] | Length=4 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TP-ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 7.3.2. Traffic Prediction State TLV 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type=[TBD] | Length=4 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TPS-ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Yan, et al. Expires July 7, 2018 [Page 9] Internet-Draft PCEP Extension for Traffic Prediction January 2018 7.3.3. Prediction Attribute TLV 7.4. Prediction Requirement Object 7.4.1. Prediction Sequence TLV 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type=[TBD] | Length=8N | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Datetime | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Datetime | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | // ...... // +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Datetime | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 7.4.2. Prediction Expired Time TLV 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type=[TBD] | Length=4 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Datetime | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 7.5. Prediction Information Object 7.5.1. Link Prediction TLV Yan, et al. Expires July 7, 2018 [Page 10] Internet-Draft PCEP Extension for Traffic Prediction January 2018 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type=[TBD] | Length=16 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS-ID | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Datetime | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Predicted Speed (kb/s) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 7.6. Prediction Area Object 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) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Flag | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | // Link TLvs // | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 6: Prediction Area Object Format 7.6.1. Link TLV 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type=[TBD] | Length=4 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS-ID | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 7: Link TLV Format Yan, et al. Expires July 7, 2018 [Page 11] Internet-Draft PCEP Extension for Traffic Prediction January 2018 8. IANA Considerations 9. Security Considerations 10. Acknowledgments 11. Contributors 12. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation Element (PCE) Communication Protocol (PCEP)", RFC 5440, DOI 10.17487/RFC5440, March 2009, . Authors' Addresses Boyuan Yan (editor) Beijing University of Posts and Telecommunications Xitucheng Road Beijing, Haidian Dist 100876 China Phone: +86-18810528290 Email: yanboyuan@bupt.edu.cn Yongli Zhao (editor) Beijing University of Posts and Telecommunications Xitucheng Road Beijing, Haidian Dist 100876 China Phone: +86-13811761857 Email: yonglizhao@bupt.edu.cn Yan, et al. Expires July 7, 2018 [Page 12] Internet-Draft PCEP Extension for Traffic Prediction January 2018 Wei Wang (editor) Beijing University of Posts and Telecommunications Xitucheng Road Beijing, Haidian Dist 100876 China Phone: +86-15210830183 Email: weiw@bupt.edu.cn Xiaosong Yu (editor) Beijing University of Posts and Telecommunications Xitucheng Road Beijing, Haidian Dist 100876 China Phone: +86-13811731723 Email: xiaosongyu@bupt.edu.cn Jie Zhang (editor) Beijing University of Posts and Telecommunications Xitucheng Road Beijing, Haidian Dist 100876 China Phone: +86-13911060930 Email: lgr24@bupt.edu.cn Yan, et al. Expires July 7, 2018 [Page 13]