| < draft-ietf-pce-pcep-yang-13.txt | draft-ietf-pce-pcep-yang-14.txt > | |||
|---|---|---|---|---|
| PCE Working Group D. Dhody, Ed. | PCE Working Group D. Dhody, Ed. | |||
| Internet-Draft Huawei Technologies | Internet-Draft Huawei Technologies | |||
| Intended status: Standards Track J. Hardwick | Intended status: Standards Track J. Hardwick | |||
| Expires: May 3, 2020 Metaswitch | Expires: January 9, 2021 Metaswitch | |||
| V. Beeram | V. Beeram | |||
| Juniper Networks | Juniper Networks | |||
| J. Tantsura | J. Tantsura | |||
| October 31, 2019 | Apstra, Inc. | |||
| July 8, 2020 | ||||
| A YANG Data Model for Path Computation Element Communications Protocol | A YANG Data Model for Path Computation Element Communications Protocol | |||
| (PCEP) | (PCEP) | |||
| draft-ietf-pce-pcep-yang-13 | draft-ietf-pce-pcep-yang-14 | |||
| Abstract | Abstract | |||
| This document defines a YANG data model for the management of Path | This document defines a YANG data model for the management of Path | |||
| Computation Element communications Protocol (PCEP) for communications | Computation Element communications Protocol (PCEP) for communications | |||
| between a Path Computation Client (PCC) and a Path Computation | between a Path Computation Client (PCC) and a Path Computation | |||
| Element (PCE), or between two PCEs. The data model includes | Element (PCE), or between two PCEs. The data model includes | |||
| configuration and state data. | configuration and state data. | |||
| Status of This Memo | Status of This Memo | |||
| skipping to change at page 1, line 39 ¶ | skipping to change at page 1, line 40 ¶ | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on May 3, 2020. | This Internet-Draft will expire on January 9, 2021. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2019 IETF Trust and the persons identified as the | Copyright (c) 2020 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (https://trustee.ietf.org/license-info) in effect on the date of | (https://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
| to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
| include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
| the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
| skipping to change at page 2, line 29 ¶ | skipping to change at page 2, line 30 ¶ | |||
| 5. The Design of PCEP Data Model . . . . . . . . . . . . . . . . 8 | 5. The Design of PCEP Data Model . . . . . . . . . . . . . . . . 8 | |||
| 5.1. The Overview of PCEP Data Model . . . . . . . . . . . . . 8 | 5.1. The Overview of PCEP Data Model . . . . . . . . . . . . . 8 | |||
| 5.2. The Entity . . . . . . . . . . . . . . . . . . . . . . . 9 | 5.2. The Entity . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 5.3. The Peer Lists . . . . . . . . . . . . . . . . . . . . . 13 | 5.3. The Peer Lists . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 5.4. The Session Lists . . . . . . . . . . . . . . . . . . . . 15 | 5.4. The Session Lists . . . . . . . . . . . . . . . . . . . . 15 | |||
| 5.5. Notifications . . . . . . . . . . . . . . . . . . . . . . 17 | 5.5. Notifications . . . . . . . . . . . . . . . . . . . . . . 17 | |||
| 5.6. RPC . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 | 5.6. RPC . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
| 5.7. The Full PCEP Data Model . . . . . . . . . . . . . . . . 18 | 5.7. The Full PCEP Data Model . . . . . . . . . . . . . . . . 18 | |||
| 6. The Design of PCEP Statistics Data Model . . . . . . . . . . 24 | 6. The Design of PCEP Statistics Data Model . . . . . . . . . . 24 | |||
| 7. Advanced PCE Features . . . . . . . . . . . . . . . . . . . . 27 | 7. Advanced PCE Features . . . . . . . . . . . . . . . . . . . . 27 | |||
| 7.1. Stateful PCE's LSP-DB . . . . . . . . . . . . . . . . . . 28 | 7.1. Stateful PCE's LSP-DB . . . . . . . . . . . . . . . . . . 27 | |||
| 8. Open Issues and Next Step . . . . . . . . . . . . . . . . . . 28 | 8. Open Issues and Next Step . . . . . . . . . . . . . . . . . . 28 | |||
| 8.1. The PCE-Initiated LSP . . . . . . . . . . . . . . . . . . 28 | 8.1. The PCE-Initiated LSP . . . . . . . . . . . . . . . . . . 28 | |||
| 9. Other Considerations . . . . . . . . . . . . . . . . . . . . 28 | 9. Other Considerations . . . . . . . . . . . . . . . . . . . . 28 | |||
| 9.1. PCEP over TLS (PCEPS) . . . . . . . . . . . . . . . . . . 28 | 9.1. PCEP over TLS (PCEPS) . . . . . . . . . . . . . . . . . . 28 | |||
| 10. PCEP YANG Modules . . . . . . . . . . . . . . . . . . . . . . 29 | 10. PCEP YANG Modules . . . . . . . . . . . . . . . . . . . . . . 28 | |||
| 10.1. ietf-pcep module . . . . . . . . . . . . . . . . . . . . 29 | 10.1. ietf-pcep module . . . . . . . . . . . . . . . . . . . . 28 | |||
| 10.2. ietf-pcep-stats module . . . . . . . . . . . . . . . . . 83 | 10.2. ietf-pcep-stats module . . . . . . . . . . . . . . . . . 83 | |||
| 11. Security Considerations . . . . . . . . . . . . . . . . . . . 101 | 11. Security Considerations . . . . . . . . . . . . . . . . . . . 101 | |||
| 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 103 | 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 102 | |||
| 13. Implementation Status . . . . . . . . . . . . . . . . . . . . 103 | 13. Implementation Status . . . . . . . . . . . . . . . . . . . . 103 | |||
| 14. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 104 | 14. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 103 | |||
| 15. References . . . . . . . . . . . . . . . . . . . . . . . . . 104 | 15. References . . . . . . . . . . . . . . . . . . . . . . . . . 104 | |||
| 15.1. Normative References . . . . . . . . . . . . . . . . . . 104 | 15.1. Normative References . . . . . . . . . . . . . . . . . . 104 | |||
| 15.2. Informative References . . . . . . . . . . . . . . . . . 108 | 15.2. Informative References . . . . . . . . . . . . . . . . . 107 | |||
| Appendix A. Example . . . . . . . . . . . . . . . . . . . . . . 109 | Appendix A. Example . . . . . . . . . . . . . . . . . . . . . . 109 | |||
| Appendix B. Contributor Addresses . . . . . . . . . . . . . . . 112 | Appendix B. Contributor Addresses . . . . . . . . . . . . . . . 112 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 113 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 113 | |||
| 1. Introduction | 1. Introduction | |||
| The Path Computation Element (PCE) defined in [RFC4655] is an entity | The Path Computation Element (PCE) defined in [RFC4655] is an entity | |||
| that is capable of computing a network path or route based on a | that is capable of computing a network path or route based on a | |||
| network graph, and applying computational constraints. A Path | network graph, and applying computational constraints. A Path | |||
| Computation Client (PCC) may make requests to a PCE for paths to be | Computation Client (PCC) may make requests to a PCE for paths to be | |||
| skipping to change at page 4, line 42 ¶ | skipping to change at page 4, line 42 ¶ | |||
| [RFC8281] : | [RFC8281] : | |||
| o PCE-initiated LSP, Path Computation LSP Initiate Message | o PCE-initiated LSP, Path Computation LSP Initiate Message | |||
| (PCInitiate). | (PCInitiate). | |||
| [RFC8408] : | [RFC8408] : | |||
| o Path Setup Type (PST). | o Path Setup Type (PST). | |||
| [I-D.ietf-pce-segment-routing] : | [RFC8664] : | |||
| o Segment Routing (SR). | o Segment Routing (SR). | |||
| [RFC6241] : | [RFC6241] : | |||
| o Configuration data. | o Configuration data. | |||
| o State data. | o State data. | |||
| 3.1. Tree Diagrams | 3.1. Tree Diagrams | |||
| skipping to change at page 7, line 10 ¶ | skipping to change at page 7, line 10 ¶ | |||
| | Communication Protocol | | | | Communication Protocol | | | |||
| | (PCEP) for Point-to- | | | | (PCEP) for Point-to- | | | |||
| | Multipoint Traffic | | | | Multipoint Traffic | | | |||
| | Engineering Label Switched | | | | Engineering Label Switched | | | |||
| | Paths | | | | Paths | | | |||
| | Network Configuration | [RFC8341] | | | Network Configuration | [RFC8341] | | |||
| | Access Control Model | | | | Access Control Model | | | |||
| | Conveying Path Setup Type | [RFC8408] | | | Conveying Path Setup Type | [RFC8408] | | |||
| | in PCE Communication | | | | in PCE Communication | | | |||
| | Protocol (PCEP) Messages | | | | Protocol (PCEP) Messages | | | |||
| | Traffic Engineering Common | [I-D.ietf-teas-yang-te-types] | | | Traffic Engineering Common | [RFC8776] | | |||
| | YANG Types | | | | YANG Types | | | |||
| | A YANG Data Model for | [I-D.ietf-teas-yang-te] | | | A YANG Data Model for | [I-D.ietf-teas-yang-te] | | |||
| | Traffic Engineering | | | | Traffic Engineering | | | |||
| | Tunnels and Interfaces | | | | Tunnels and Interfaces | | | |||
| | YANG Groupings for TLS | [I-D.ietf-netconf-tls-client-server] | | | YANG Groupings for TLS | [I-D.ietf-netconf-tls-client-server] | | |||
| | Clients and TLS Servers | | | | Clients and TLS Servers | | | |||
| | PCEP Extensions for | [I-D.ietf-pce-segment-routing] | | | PCEP Extensions for | [RFC8664] | | |||
| | Segment Routing | | | | Segment Routing | | | |||
| | PCEP Extensions for | [I-D.ietf-pce-association-group] | | | PCEP Extensions for | [RFC8697] | | |||
| | Establishing Relationships | | | | Establishing Relationships | | | |||
| | Between Sets of LSPs | | | | Between Sets of LSPs | | | |||
| | YANG Data Model for OSPF | [I-D.ietf-ospf-yang] | | | YANG Data Model for OSPF | [I-D.ietf-ospf-yang] | | |||
| | Protocol | | | | Protocol | | | |||
| | YANG Data Model for IS-IS | [I-D.ietf-isis-yang-isis-cfg] | | | YANG Data Model for IS-IS | [I-D.ietf-isis-yang-isis-cfg] | | |||
| | Protocol | | | | Protocol | | | |||
| | PCEP extensions for GMPLS | [I-D.ietf-pce-gmpls-pcep-extensions] | | | PCEP extensions for GMPLS | [I-D.ietf-pce-gmpls-pcep-extensions] | | |||
| +----------------------------+--------------------------------------+ | +----------------------------+--------------------------------------+ | |||
| Table 2: Refrences in the YANG modules | Table 2: Refrences in the YANG modules | |||
| skipping to change at page 18, line 10 ¶ | skipping to change at page 18, line 10 ¶ | |||
| rpcs: | rpcs: | |||
| +---x trigger-resync {stateful,sync-opt}? | +---x trigger-resync {stateful,sync-opt}? | |||
| +---w input | +---w input | |||
| +---w pcc? -> /pcep/entity/peers/peer/addr | +---w pcc? -> /pcep/entity/peers/peer/addr | |||
| 5.7. The Full PCEP Data Model | 5.7. The Full PCEP Data Model | |||
| The module, "ietf-pcep", defines the basic components of a PCE | The module, "ietf-pcep", defines the basic components of a PCE | |||
| speaker. The tree depth in the tree is set to 10. | speaker. The tree depth in the tree is set to 10. | |||
| module: ietf-pcep | module: ietf-pcep | |||
| +--rw pcep! | +--rw pcep! | |||
| +--rw entity | +--rw entity | |||
| +--rw addr inet:ip-address | +--rw addr inet:ip-address | |||
| +--rw enabled? boolean | +--rw enabled? boolean | |||
| +--rw role pcep-role | +--rw role pcep-role | |||
| +--rw description? string | +--rw description? string | |||
| +--rw speaker-entity-id? string {sync-opt}? | +--rw speaker-entity-id? string {sync-opt}? | |||
| +--rw admin-status? boolean | +--rw admin-status? boolean | |||
| +--ro index? uint32 | +--ro index? uint32 | |||
| +--ro oper-status? pcep-oper-status | +--ro oper-status? pcep-oper-status | |||
| +--rw domain | +--rw domain | |||
| | +--rw domain* [domain-type domain] | | +--rw domain* [domain-type domain] | |||
| | +--rw domain-type domain-type | | +--rw domain-type domain-type | |||
| | +--rw domain domain | | +--rw domain domain | |||
| +--rw capability | +--rw capability | |||
| | +--rw capability? bits | | +--rw capability? bits | |||
| | +--rw pce-initiated? boolean {pce-initiated}? | | +--rw pce-initiated? boolean {pce-initiated}? | |||
| | +--rw include-db-ver? boolean | | +--rw include-db-ver? boolean | |||
| | | {stateful,sync-opt}? | | | {stateful,sync-opt}? | |||
| | +--rw trigger-resync? boolean | | +--rw trigger-resync? boolean | |||
| | | {stateful,sync-opt}? | | | {stateful,sync-opt}? | |||
| | +--rw trigger-initial-sync? boolean | | +--rw trigger-initial-sync? boolean | |||
| | | {stateful,sync-opt}? | | | {stateful,sync-opt}? | |||
| | +--rw incremental-sync? boolean | | +--rw incremental-sync? boolean | |||
| | | {stateful,sync-opt}? | | | {stateful,sync-opt}? | |||
| | +--rw sr {sr}? | | +--rw sr {sr}? | |||
| | +--rw enabled? boolean | | +--rw enabled? boolean | |||
| | +--rw msd-limit? boolean | | +--rw msd-limit? boolean | |||
| | +--rw nai? boolean | | +--rw nai? boolean | |||
| +--rw msd? uint8 {sr}? | +--rw msd? uint8 {sr}? | |||
| +--rw pce-info | +--rw pce-info | |||
| | +--rw scope | | +--rw scope | |||
| | | +--rw path-scope? bits | | | +--rw path-scope? bits | |||
| | | +--rw intra-area-pref? uint8 | | | +--rw intra-area-pref? uint8 | |||
| | | +--rw inter-area-pref? uint8 | | | +--rw inter-area-pref? uint8 | |||
| | | +--rw inter-as-pref? uint8 | | | +--rw inter-as-pref? uint8 | |||
| | | +--rw inter-layer-pref? uint8 | | | +--rw inter-layer-pref? uint8 | |||
| | +--rw neigh-domains | | +--rw neigh-domains | |||
| | | +--rw domain* [domain-type domain] | | | +--rw domain* [domain-type domain] | |||
| | | +--rw domain-type domain-type | | | +--rw domain-type domain-type | |||
| | | +--rw domain domain | | | +--rw domain domain | |||
| | +--rw path-key {path-key}? | | +--rw path-key {path-key}? | |||
| | +--rw enabled? boolean | | +--rw enabled? boolean | |||
| | +--rw discard-timer? uint32 | | +--rw discard-timer? uint32 | |||
| | +--rw reuse-time? uint32 | | +--rw reuse-time? uint32 | |||
| | +--rw pce-id? inet:ip-address | | +--rw pce-id? inet:ip-address | |||
| +--rw connect-timer? uint16 | +--rw connect-timer? uint16 | |||
| +--rw connect-max-retry? uint32 | +--rw connect-max-retry? uint32 | |||
| +--rw init-backoff-timer? uint16 | +--rw init-backoff-timer? uint16 | |||
| +--rw max-backoff-timer? uint32 | +--rw max-backoff-timer? uint32 | |||
| +--rw open-wait-timer? uint16 | +--ro open-wait-timer? uint16 | |||
| +--rw keep-wait-timer? uint16 | +--ro keep-wait-timer? uint16 | |||
| +--rw keep-alive-timer? uint8 | +--rw keep-alive-timer? uint8 | |||
| +--rw dead-timer? uint8 | +--rw dead-timer? uint8 | |||
| +--rw allow-negotiation? boolean | +--rw allow-negotiation? boolean | |||
| +--rw max-keep-alive-timer? uint8 | +--rw max-keep-alive-timer? uint8 | |||
| +--rw max-dead-timer? uint8 | +--rw max-dead-timer? uint8 | |||
| +--rw min-keep-alive-timer? uint8 | +--rw min-keep-alive-timer? uint8 | |||
| +--rw min-dead-timer? uint8 | +--rw min-dead-timer? uint8 | |||
| +--rw sync-timer? uint16 {svec}? | +--rw sync-timer? uint16 {svec}? | |||
| +--rw request-timer? uint16 | +--rw request-timer? uint16 | |||
| +--rw max-sessions? uint32 | +--rw max-sessions? uint32 | |||
| +--rw max-unknown-reqs? uint32 | +--rw max-unknown-reqs? uint32 | |||
| +--rw max-unknown-msgs? uint32 | +--rw max-unknown-msgs? uint32 | |||
| +--rw pcep-notification-max-rate uint32 | +--rw pcep-notification-max-rate uint32 | |||
| +--rw stateful-parameter {stateful}? | +--rw stateful-parameter {stateful}? | |||
| | +--rw state-timeout? uint32 | | +--rw state-timeout? uint32 | |||
| | +--rw redelegation-timeout? uint32 | | +--rw redelegation-timeout? uint32 | |||
| | +--rw rpt-non-pcep-lsp? boolean | | +--rw rpt-non-pcep-lsp? boolean | |||
| +--rw of-list {objective-function}? | +--rw of-list {objective-function}? | |||
| | +--rw objective-function* [of] | | +--rw objective-function* [of] | |||
| | +--rw of identityref | | +--rw of identityref | |||
| +--ro lsp-db {stateful}? | +--ro lsp-db {stateful}? | |||
| | +--ro db-ver? uint64 {sync-opt}? | | +--ro db-ver? uint64 {sync-opt}? | |||
| | +--ro association-list* | | +--ro association-list* | |||
| | | [type id source global-source extended-id] | | | [type id source global-source extended-id] | |||
| | | {association}? | | | {association}? | |||
| | | +--ro type identityref | | | +--ro type identityref | |||
| | | +--ro id uint16 | | | +--ro id uint16 | |||
| | | +--ro source inet:ip-address | | | +--ro source inet:ip-address | |||
| | | +--ro global-source uint32 | | | +--ro global-source uint32 | |||
| | | +--ro extended-id string | | | +--ro extended-id string | |||
| | | +--ro lsp* [plsp-id pcc-id lsp-id] | | | +--ro lsp* [plsp-id pcc-id lsp-id] | |||
| | | +--ro plsp-id -> /pcep/entity/lsp-db/lsp/plsp-id | | | +--ro plsp-id -> /pcep/entity/lsp-db/lsp/plsp-id | |||
| | | +--ro pcc-id -> /pcep/entity/lsp-db/lsp/pcc-id | | | +--ro pcc-id -> /pcep/entity/lsp-db/lsp/pcc-id | |||
| | | +--ro lsp-id -> /pcep/entity/lsp-db/lsp/lsp-id | | | +--ro lsp-id -> /pcep/entity/lsp-db/lsp/lsp-id | |||
| | +--ro lsp* [plsp-id pcc-id lsp-id] | | +--ro lsp* [plsp-id pcc-id lsp-id] | |||
| | +--ro plsp-id uint32 | | +--ro plsp-id uint32 | |||
| | +--ro pcc-id inet:ip-address | | +--ro pcc-id inet:ip-address | |||
| | +--ro source? | | +--ro source? | |||
| | | -> /te:te/lsps-state/lsp/source | | | -> /te:te/lsps-state/lsp/source | |||
| | +--ro destination? | | +--ro destination? | |||
| | | -> /te:te/lsps-state/lsp/destination | | | -> /te:te/lsps-state/lsp/destination | |||
| | +--ro tunnel-id? | | +--ro tunnel-id? | |||
| | | -> /te:te/lsps-state/lsp/tunnel-id | | | -> /te:te/lsps-state/lsp/tunnel-id | |||
| | +--ro lsp-id | | +--ro lsp-id | |||
| | | -> /te:te/lsps-state/lsp/lsp-id | | | -> /te:te/lsps-state/lsp/lsp-id | |||
| | +--ro extended-tunnel-id? | | +--ro extended-tunnel-id? | |||
| | | -> /te:te/lsps-state/lsp/extended-tunnel-id | | | -> /te:te/lsps-state/lsp/extended-tunnel-id | |||
| | +--ro admin-state? boolean | | +--ro admin-state? boolean | |||
| | +--ro operational-state? operational-state | | +--ro operational-state? operational-state | |||
| | +--ro delegated | | +--ro delegated | |||
| | | +--ro enabled? boolean | | | +--ro enabled? boolean | |||
| | | +--ro peer? -> /pcep/entity/peers/peer/addr | | | +--ro peer? -> /pcep/entity/peers/peer/addr | |||
| | | +--ro srp-id? uint32 | | | +--ro srp-id? uint32 | |||
| | +--ro initiation {pce-initiated}? | | +--ro initiation {pce-initiated}? | |||
| | | +--ro enabled? boolean | | | +--ro enabled? boolean | |||
| | | +--ro peer? -> /pcep/entity/peers/peer/addr | | | +--ro peer? -> /pcep/entity/peers/peer/addr | |||
| | +--ro symbolic-path-name? string | | +--ro symbolic-path-name? string | |||
| | +--ro last-error? identityref | | +--ro last-error? identityref | |||
| | +--ro pst? identityref | | +--ro pst? identityref | |||
| | +--ro association-list* | | +--ro association-list* | |||
| | [type id source global-source extended-id] | | [type id source global-source extended-id] | |||
| | {association}? | | {association}? | |||
| | +--ro type | | +--ro type | |||
| | | -> /pcep/entity/lsp-db/association-list/type | | | -> /pcep/entity/lsp-db/association-list/type | |||
| | +--ro id | | +--ro id | |||
| | | -> /pcep/entity/lsp-db/association-list/id | | | -> /pcep/entity/lsp-db/association-list/id | |||
| | +--ro source leafref | | +--ro source leafref | |||
| | +--ro global-source leafref | | +--ro global-source leafref | |||
| | +--ro extended-id leafref | | +--ro extended-id leafref | |||
| +--ro path-keys {path-key}? | +--ro path-keys {path-key}? | |||
| | +--ro path-keys* [path-key] | | +--ro path-keys* [path-key] | |||
| | +--ro path-key uint16 | | +--ro path-key uint16 | |||
| | +--ro cps | | +--ro cps | |||
| | | +--ro explicit-route-objects* [index] | | | +--ro explicit-route-objects* [index] | |||
| | | +--ro index uint32 | | | +--ro index uint32 | |||
| | | +--ro (type)? | | | +--ro (type)? | |||
| | | +--:(numbered-node-hop) | | | +--:(numbered-node-hop) | |||
| | | | +--ro numbered-node-hop | | | | +--ro numbered-node-hop | |||
| | | | +--ro node-id te-node-id | | | | +--ro node-id te-node-id | |||
| | | | +--ro hop-type? te-hop-type | | | | +--ro hop-type? te-hop-type | |||
| | | +--:(numbered-link-hop) | | | +--:(numbered-link-hop) | |||
| | | | +--ro numbered-link-hop | | | | +--ro numbered-link-hop | |||
| | | | +--ro link-tp-id te-tp-id | | | | +--ro link-tp-id te-tp-id | |||
| | | | +--ro hop-type? te-hop-type | | | | +--ro hop-type? te-hop-type | |||
| | | | +--ro direction? te-link-direction | | | | +--ro direction? te-link-direction | |||
| | | +--:(unnumbered-link-hop) | | | +--:(unnumbered-link-hop) | |||
| | | | +--ro unnumbered-link-hop | | | | +--ro unnumbered-link-hop | |||
| | | | +--ro link-tp-id te-tp-id | | | | +--ro link-tp-id te-tp-id | |||
| | | | +--ro node-id te-node-id | | | | +--ro node-id te-node-id | |||
| | | | +--ro hop-type? te-hop-type | | | | +--ro hop-type? te-hop-type | |||
| | | | +--ro direction? te-link-direction | | | | +--ro direction? te-link-direction | |||
| | | +--:(as-number) | | | +--:(as-number) | |||
| | | | +--ro as-number-hop | | | | +--ro as-number-hop | |||
| | | | +--ro as-number inet:as-number | | | | +--ro as-number inet:as-number | |||
| | | | +--ro hop-type? te-hop-type | | | | +--ro hop-type? te-hop-type | |||
| | | +--:(label) | | | +--:(label) | |||
| | | +--ro label-hop | | | +--ro label-hop | |||
| | | +--ro te-label | | | +--ro te-label | |||
| | | +--ro (technology)? | | | ... | |||
| | | | ... | | +--ro pcc-original? -> /pcep/entity/peers/peer/addr | |||
| | | +--ro direction? | | +--ro req-id? uint32 | |||
| | | te-label-direction | | +--ro retrieved? boolean | |||
| | +--ro pcc-original? -> /pcep/entity/peers/peer/addr | | +--ro pcc-retrieved? -> /pcep/entity/peers/peer/addr | |||
| | +--ro req-id? uint32 | | +--ro creation-time? yang:timestamp | |||
| | +--ro retrieved? boolean | | +--ro discard-time? uint32 | |||
| | +--ro pcc-retrieved? -> /pcep/entity/peers/peer/addr | | +--ro reuse-time? uint32 | |||
| | +--ro creation-time? yang:timestamp | +--rw peers | |||
| | +--ro discard-time? uint32 | +--rw peer* [addr] | |||
| | +--ro reuse-time? uint32 | +--rw addr inet:ip-address | |||
| +--rw peers | +--rw role pcep-role | |||
| +--rw peer* [addr] | +--rw description? string | |||
| +--rw addr inet:ip-address | +--rw domain | |||
| +--rw role pcep-role | | +--rw domain* [domain-type domain] | |||
| +--rw description? string | | +--rw domain-type domain-type | |||
| +--rw domain | | +--rw domain domain | |||
| | +--rw domain* [domain-type domain] | +--rw capability | |||
| | +--rw domain-type domain-type | | +--rw capability? bits | |||
| | +--rw domain domain | | +--rw pce-initiated? boolean | |||
| +--rw capability | | | {pce-initiated}? | |||
| | +--rw capability? bits | | +--rw include-db-ver? boolean | |||
| | +--rw pce-initiated? boolean | | | {stateful,sync-opt}? | |||
| | | {pce-initiated}? | | +--rw trigger-resync? boolean | |||
| | +--rw include-db-ver? boolean | | | {stateful,sync-opt}? | |||
| | | {stateful,sync-opt}? | | +--rw trigger-initial-sync? boolean | |||
| | +--rw trigger-resync? boolean | | | {stateful,sync-opt}? | |||
| | | {stateful,sync-opt}? | | +--rw incremental-sync? boolean | |||
| | +--rw trigger-initial-sync? boolean | | | {stateful,sync-opt}? | |||
| | | {stateful,sync-opt}? | | +--rw sr {sr}? | |||
| | +--rw incremental-sync? boolean | | +--rw enabled? boolean | |||
| | | {stateful,sync-opt}? | | +--rw msd-limit? boolean | |||
| | +--rw sr {sr}? | | +--rw nai? boolean | |||
| | +--rw enabled? boolean | +--rw msd? uint8 {sr}? | |||
| | +--rw msd-limit? boolean | +--rw pce-info | |||
| | +--rw nai? boolean | | +--rw scope | |||
| +--rw msd? uint8 {sr}? | | | +--rw path-scope? bits | |||
| +--rw pce-info | | | +--rw intra-area-pref? uint8 | |||
| | +--rw scope | | | +--rw inter-area-pref? uint8 | |||
| | | +--rw path-scope? bits | | | +--rw inter-as-pref? uint8 | |||
| | | +--rw intra-area-pref? uint8 | | | +--rw inter-layer-pref? uint8 | |||
| | | +--rw inter-area-pref? uint8 | | +--rw neigh-domains | |||
| | | +--rw inter-as-pref? uint8 | | +--rw domain* [domain-type domain] | |||
| | | +--rw inter-layer-pref? uint8 | | +--rw domain-type domain-type | |||
| | +--rw neigh-domains | | +--rw domain domain | |||
| | +--rw domain* [domain-type domain] | +--rw delegation-pref? uint8 {stateful}? | |||
| | +--rw domain-type domain-type | +--rw auth | |||
| | +--rw domain domain | | +--rw (auth-type-selection)? | |||
| +--rw delegation-pref? uint8 {stateful}? | | +--:(auth-key-chain) | |||
| +--rw auth | | | +--rw key-chain? | |||
| | +--rw (auth-type-selection)? | | | key-chain:key-chain-ref | |||
| | +--:(auth-key-chain) | | +--:(auth-key) | |||
| | | +--rw key-chain? | | | +--rw crypto-algorithm identityref | |||
| | | key-chain:key-chain-ref | | | +--rw (key-string-style)? | |||
| | +--:(auth-key) | | | +--:(keystring) | |||
| | | +--rw crypto-algorithm identityref | | | | +--rw keystring? string | |||
| | | +--rw (key-string-style)? | | | +--:(hexadecimal) | |||
| | | +--:(keystring) | | | {key-chain:hex-key-string}? | |||
| | | | +--rw keystring? string | | | +--rw hexadecimal-string? | |||
| | | +--:(hexadecimal) | | | yang:hex-string | |||
| | | {key-chain:hex-key-string}? | | +--:(auth-tls) {tls}? | |||
| | | +--rw hexadecimal-string? | | +--rw (role)? | |||
| | | yang:hex-string | | +--:(server) | |||
| | +--:(auth-tls) {tls}? | | | +--rw tls-server | |||
| | +--rw (role)? | | | ... | |||
| | +--:(server) | | +--:(client) | |||
| | | +--rw tls-server | | +--rw tls-client | |||
| | | +--rw server-identity | | ... | |||
| | | | ... | +--ro discontinuity-time? yang:timestamp | |||
| | | +--rw client-authentication! | +--ro initiate-session? boolean | |||
| | | | ... | +--ro session-exists? boolean | |||
| | | +--rw hello-params | +--ro session-up-time? yang:timestamp | |||
| | | | {tls-server-hello-params-config}? | +--ro session-fail-time? yang:timestamp | |||
| | | | ... | +--ro session-fail-up-time? yang:timestamp | |||
| | | +--rw keepalives! | +--ro sessions | |||
| | | {tls-server-keepalives}? | +--ro session* [initiator] | |||
| | | ... | +--ro initiator pcep-initiator | |||
| | +--:(client) | +--ro role? | |||
| | +--rw tls-client | | -> /pcep/entity/role | |||
| | +--rw client-identity | +--ro state-last-change? yang:timestamp | |||
| | | ... | +--ro state? pcep-sess-state | |||
| | +--rw server-authentication | +--ro session-creation? yang:timestamp | |||
| | | ... | +--ro connect-retry? yang:counter32 | |||
| | +--rw hello-params | +--ro local-id? uint8 | |||
| | | {tls-client-hello-params-config}? | +--ro remote-id? uint8 | |||
| | | ... | +--ro keepalive-timer? uint8 | |||
| | +--rw keepalives! | +--ro peer-keepalive-timer? uint8 | |||
| | {tls-client-keepalives}? | +--ro dead-timer? uint8 | |||
| | ... | +--ro peer-dead-timer? uint8 | |||
| +--ro discontinuity-time? yang:timestamp | +--ro ka-hold-time-rem? uint8 | |||
| +--ro initiate-session? boolean | +--ro overloaded? boolean | |||
| +--ro session-exists? boolean | +--ro overload-time? uint32 | |||
| +--ro session-up-time? yang:timestamp | +--ro peer-overloaded? boolean | |||
| +--ro session-fail-time? yang:timestamp | +--ro peer-overload-time? uint32 | |||
| +--ro session-fail-up-time? yang:timestamp | +--ro lspdb-sync? sync-state | |||
| +--ro sessions | | {stateful}? | |||
| +--ro session* [initiator] | +--ro recv-db-ver? uint64 | |||
| +--ro initiator pcep-initiator | | {stateful,sync-opt}? | |||
| +--ro role? | +--ro of-list {objective-function}? | |||
| | -> /pcep/entity/role | | +--ro objective-function* [of] | |||
| +--ro state-last-change? yang:timestamp | | +--ro of identityref | |||
| +--ro state? pcep-sess-state | +--ro pst-list | |||
| +--ro session-creation? yang:timestamp | | +--ro path-setup-type* [pst] | |||
| +--ro connect-retry? yang:counter32 | | +--ro pst identityref | |||
| +--ro local-id? uint8 | +--ro assoc-type-list {association}? | |||
| +--ro remote-id? uint8 | | +--ro assoc-type* [at] | |||
| +--ro keepalive-timer? uint8 | | +--ro at identityref | |||
| +--ro peer-keepalive-timer? uint8 | +--ro speaker-entity-id? string {sync-opt}? | |||
| +--ro dead-timer? uint8 | +--ro discontinuity-time? yang:timestamp | |||
| +--ro peer-dead-timer? uint8 | ||||
| +--ro ka-hold-time-rem? uint8 | ||||
| +--ro overloaded? boolean | ||||
| +--ro overload-time? uint32 | ||||
| +--ro peer-overloaded? boolean | ||||
| +--ro peer-overload-time? uint32 | ||||
| +--ro lspdb-sync? sync-state | ||||
| | {stateful}? | ||||
| +--ro recv-db-ver? uint64 | ||||
| | {stateful,sync-opt}? | ||||
| +--ro of-list {objective-function}? | ||||
| | +--ro objective-function* [of] | ||||
| | +--ro of identityref | ||||
| +--ro pst-list | ||||
| | +--ro path-setup-type* [pst] | ||||
| | +--ro pst identityref | ||||
| +--ro assoc-type-list {association}? | ||||
| | +--ro assoc-type* [at] | ||||
| | +--ro at identityref | ||||
| +--ro speaker-entity-id? string {sync-opt}? | ||||
| +--ro discontinuity-time? yang:timestamp | ||||
| rpcs: | ||||
| +---x trigger-resync {stateful,sync-opt}? | rpcs: | |||
| +---w input | +---x trigger-resync {stateful,sync-opt}? | |||
| +---w pcc? -> /pcep/entity/peers/peer/addr | +---w input | |||
| +---w pcc? -> /pcep/entity/peers/peer/addr | ||||
| notifications: | notifications: | |||
| +---n pcep-session-up | +---n pcep-session-up | |||
| | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | |||
| | +--ro session-initiator? | | +--ro session-initiator? | |||
| | | -> /pcep/entity/peers/peer/sessions/session/initiator | | | -> /pcep/entity/peers/peer/sessions/session/initiator | |||
| | +--ro state-last-change? yang:timestamp | | +--ro state-last-change? yang:timestamp | |||
| | +--ro state? pcep-sess-state | | +--ro state? pcep-sess-state | |||
| +---n pcep-session-down | +---n pcep-session-down | |||
| | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | |||
| | +--ro session-initiator? pcep-initiator | | +--ro session-initiator? pcep-initiator | |||
| | +--ro state-last-change? yang:timestamp | | +--ro state-last-change? yang:timestamp | |||
| | +--ro state? pcep-sess-state | | +--ro state? pcep-sess-state | |||
| +---n pcep-session-local-overload | +---n pcep-session-local-overload | |||
| | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | |||
| | +--ro session-initiator? | | +--ro session-initiator? | |||
| | | -> /pcep/entity/peers/peer/sessions/session/initiator | | | -> /pcep/entity/peers/peer/sessions/session/initiator | |||
| | +--ro overloaded? boolean | | +--ro overloaded? boolean | |||
| | +--ro overload-time? uint32 | | +--ro overload-time? uint32 | |||
| +---n pcep-session-local-overload-clear | +---n pcep-session-local-overload-clear | |||
| | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | |||
| | +--ro overloaded? boolean | | +--ro overloaded? boolean | |||
| +---n pcep-session-peer-overload | +---n pcep-session-peer-overload | |||
| | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | |||
| | +--ro session-initiator? | | +--ro session-initiator? | |||
| | | -> /pcep/entity/peers/peer/sessions/session/initiator | | | -> /pcep/entity/peers/peer/sessions/session/initiator | |||
| | +--ro peer-overloaded? boolean | | +--ro peer-overloaded? boolean | |||
| | +--ro peer-overload-time? uint32 | | +--ro peer-overload-time? uint32 | |||
| +---n pcep-session-peer-overload-clear | +---n pcep-session-peer-overload-clear | |||
| +--ro peer-addr? -> /pcep/entity/peers/peer/addr | +--ro peer-addr? -> /pcep/entity/peers/peer/addr | |||
| +--ro peer-overloaded? boolean | +--ro peer-overloaded? boolean | |||
| 6. The Design of PCEP Statistics Data Model | 6. The Design of PCEP Statistics Data Model | |||
| The module, "ietf-pcep-stats", augments the ietf-pcep module to | The module, "ietf-pcep-stats", augments the ietf-pcep module to | |||
| include statistics at the PCEP peer and session level. | include statistics at the PCEP peer and session level. | |||
| module: ietf-pcep-stats | module: ietf-pcep-stats | |||
| augment /pcep:pcep/pcep:entity/pcep:peers/pcep:peer: | augment /pcep:pcep/pcep:entity/pcep:peers/pcep:peer: | |||
| +--ro num-sess-setup-ok? yang:counter32 | +--ro num-sess-setup-ok? yang:counter32 | |||
| +--ro num-sess-setup-fail? yang:counter32 | +--ro num-sess-setup-fail? yang:counter32 | |||
| skipping to change at page 29, line 18 ¶ | skipping to change at page 28, line 43 ¶ | |||
| PCEP session is started.. | PCEP session is started.. | |||
| 10. PCEP YANG Modules | 10. PCEP YANG Modules | |||
| 10.1. ietf-pcep module | 10.1. ietf-pcep module | |||
| RFC Ed.: In this section, replace all occurrences of 'XXXX' with the | RFC Ed.: In this section, replace all occurrences of 'XXXX' with the | |||
| actual RFC number and all occurrences of the revision date below with | actual RFC number and all occurrences of the revision date below with | |||
| the date of RFC publication (and remove this note). | the date of RFC publication (and remove this note). | |||
| <CODE BEGINS> file "ietf-pcep@2019-10-31.yang" | <CODE BEGINS> file "ietf-pcep@2020-07-08.yang" | |||
| module ietf-pcep { | module ietf-pcep { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-pcep"; | namespace "urn:ietf:params:xml:ns:yang:ietf-pcep"; | |||
| prefix pcep; | prefix pcep; | |||
| import ietf-inet-types { | import ietf-inet-types { | |||
| prefix inet; | prefix inet; | |||
| reference | reference | |||
| "RFC 6991: Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
| } | } | |||
| skipping to change at page 29, line 43 ¶ | skipping to change at page 29, line 20 ¶ | |||
| } | } | |||
| import ietf-te { | import ietf-te { | |||
| prefix te; | prefix te; | |||
| reference | reference | |||
| "I-D.ietf-teas-yang-te: A YANG Data Model for Traffic | "I-D.ietf-teas-yang-te: A YANG Data Model for Traffic | |||
| Engineering Tunnels and Interfaces"; | Engineering Tunnels and Interfaces"; | |||
| } | } | |||
| import ietf-te-types { | import ietf-te-types { | |||
| prefix te-types; | prefix te-types; | |||
| reference | reference | |||
| "I-D.ietf-teas-yang-te-types: Traffic Engineering Common YANG | "RFC 8776: Common YANG Data Types for Traffic Engineering"; | |||
| Types"; | ||||
| } | } | |||
| import ietf-key-chain { | import ietf-key-chain { | |||
| prefix key-chain; | prefix key-chain; | |||
| reference | reference | |||
| "RFC 8177: YANG Data Model for Key Chains"; | "RFC 8177: YANG Data Model for Key Chains"; | |||
| } | } | |||
| import ietf-netconf-acm { | import ietf-netconf-acm { | |||
| prefix nacm; | prefix nacm; | |||
| reference | reference | |||
| "RFC 8341: Network Configuration Protocol (NETCONF) Access | "RFC 8341: Network Configuration Protocol (NETCONF) Access | |||
| skipping to change at page 30, line 45 ¶ | skipping to change at page 30, line 20 ¶ | |||
| "IETF PCE (Path Computation Element) Working Group"; | "IETF PCE (Path Computation Element) Working Group"; | |||
| contact | contact | |||
| "WG Web: <https://tools.ietf.org/wg/pce/> | "WG Web: <https://tools.ietf.org/wg/pce/> | |||
| WG List: <mailto:pce@ietf.org> | WG List: <mailto:pce@ietf.org> | |||
| Editor: Dhruv Dhody | Editor: Dhruv Dhody | |||
| <mailto:dhruv.ietf@gmail.com>"; | <mailto:dhruv.ietf@gmail.com>"; | |||
| description | description | |||
| "The YANG module defines a generic configuration and | "The YANG module defines a generic configuration and | |||
| operational model for PCEP. | operational model for PCEP. | |||
| Copyright (c) 2019 IETF Trust and the persons identified as | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | |||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | ||||
| 'MAY', and 'OPTIONAL' in this document are to be interpreted as | ||||
| described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | ||||
| they appear in all capitals, as shown here. | ||||
| Copyright (c) 2020 IETF Trust and the persons identified as | ||||
| authors of the code. All rights reserved. | authors of the code. All rights reserved. | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (https://trustee.ietf.org/license-info). | (https://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; see the | This version of this YANG module is part of RFC XXXX; see the | |||
| RFC itself for full legal notices."; | RFC itself for full legal notices."; | |||
| revision 2019-10-31 { | revision 2020-07-08 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference | reference | |||
| "RFC XXXX: A YANG Data Model for Path Computation | "RFC XXXX: A YANG Data Model for Path Computation | |||
| Element Communications Protocol (PCEP)"; | Element Communications Protocol (PCEP)"; | |||
| } | } | |||
| /* | /* | |||
| * Typedefs | * Typedefs | |||
| */ | */ | |||
| skipping to change at page 38, line 45 ¶ | skipping to change at page 38, line 26 ¶ | |||
| reference | reference | |||
| "RFC 8253: PCEPS: Usage of TLS to Provide a Secure Transport | "RFC 8253: PCEPS: Usage of TLS to Provide a Secure Transport | |||
| for the Path Computation Element Communication Protocol | for the Path Computation Element Communication Protocol | |||
| (PCEP)"; | (PCEP)"; | |||
| } | } | |||
| feature sr { | feature sr { | |||
| description | description | |||
| "Support Segment Routing for PCE."; | "Support Segment Routing for PCE."; | |||
| reference | reference | |||
| "I-D.ietf-pce-segment-routing: PCEP Extensions for Segment | "RFC 8664: Path Computation Element Communication Protocol | |||
| Routing"; | (PCEP) Extensions for Segment Routing"; | |||
| } | } | |||
| feature association { | feature association { | |||
| description | description | |||
| "Support Association in PCEP."; | "Support Association in PCEP."; | |||
| reference | reference | |||
| "I-D.ietf-pce-association-group: PCEP Extensions for | "RFC 8697: Path Computation Element Communication Protocol | |||
| Establishing Relationships Between Sets of LSPs"; | (PCEP) Extensions for Establishing Relationships between | |||
| Sets of Label Switched Paths (LSPs)"; | ||||
| } | } | |||
| /* | /* | |||
| * Identities | * Identities | |||
| */ | */ | |||
| identity lsp-error { | identity lsp-error { | |||
| if-feature "stateful"; | if-feature "stateful"; | |||
| description | description | |||
| "Base LSP error"; | "Base LSP error"; | |||
| skipping to change at page 47, line 8 ¶ | skipping to change at page 46, line 38 ¶ | |||
| "Support incremental (delta) sync"; | "Support incremental (delta) sync"; | |||
| reference | reference | |||
| "RFC 8232: Optimizations of Label Switched Path State | "RFC 8232: Optimizations of Label Switched Path State | |||
| Synchronization Procedures for a Stateful PCE"; | Synchronization Procedures for a Stateful PCE"; | |||
| } | } | |||
| container sr { | container sr { | |||
| if-feature "sr"; | if-feature "sr"; | |||
| description | description | |||
| "If segment routing is supported"; | "If segment routing is supported"; | |||
| reference | reference | |||
| "I-D.ietf-pce-segment-routing: PCEP Extensions for Segment | "RFC 8664: Path Computation Element Communication Protocol | |||
| Routing"; | (PCEP) Extensions for Segment Routing"; | |||
| leaf enabled { | leaf enabled { | |||
| type boolean; | type boolean; | |||
| description | description | |||
| "Set to true if SR is enabled"; | "Set to true if SR is enabled"; | |||
| } | } | |||
| leaf msd-limit { | leaf msd-limit { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description | description | |||
| "True indicates no limit on MSD, the | "True indicates no limit on MSD, the | |||
| skipping to change at page 47, line 39 ¶ | skipping to change at page 47, line 21 ¶ | |||
| } | } | |||
| //sr | //sr | |||
| } | } | |||
| //capability | //capability | |||
| leaf msd { | leaf msd { | |||
| if-feature "sr"; | if-feature "sr"; | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "Maximum SID Depth for SR"; | "Maximum SID Depth for SR"; | |||
| reference | reference | |||
| "I-D.ietf-pce-segment-routing: PCEP Extensions for Segment | "RFC 8664: Path Computation Element Communication Protocol | |||
| Routing"; | (PCEP) Extensions for Segment Routing"; | |||
| } | } | |||
| } | } | |||
| //info | //info | |||
| grouping pce-info { | grouping pce-info { | |||
| description | description | |||
| "This grouping specifies all PCE information | "This grouping specifies all PCE information | |||
| which maybe relevant to the PCE selection. | which maybe relevant to the PCE selection. | |||
| This information corresponds to PCE auto-discovery | This information corresponds to PCE auto-discovery | |||
| skipping to change at page 53, line 45 ¶ | skipping to change at page 53, line 28 ¶ | |||
| a failed session setup attempt to a peer. | a failed session setup attempt to a peer. | |||
| The back-off time increases for each failed session | The back-off time increases for each failed session | |||
| setup attempt, until this maximum value is reached. | setup attempt, until this maximum value is reached. | |||
| Session setup attempts then repeat periodically | Session setup attempts then repeat periodically | |||
| without any further increase in back-off time."; | without any further increase in back-off time."; | |||
| reference | reference | |||
| "RFC 5440: Path Computation Element (PCE) Communication | "RFC 5440: Path Computation Element (PCE) Communication | |||
| Protocol (PCEP)"; | Protocol (PCEP)"; | |||
| } | } | |||
| leaf open-wait-timer { | leaf open-wait-timer { | |||
| type uint16 { | type uint16; | |||
| range "1..65535"; | ||||
| } | ||||
| units "seconds"; | units "seconds"; | |||
| default "60"; | default "60"; | |||
| config false; | ||||
| description | description | |||
| "The time in seconds that the PCEP entity will wait | "The time in seconds that the PCEP entity will wait | |||
| to receive an Open message from a peer after the | to receive an Open message from a peer after the | |||
| TCP connection has come up. | TCP connection has come up. | |||
| If no Open message is received within this time then | If no Open message is received within this time then | |||
| PCEP terminates the TCP connection and deletes the | PCEP terminates the TCP connection and deletes the | |||
| associated sessions."; | associated sessions."; | |||
| reference | reference | |||
| "RFC 5440: Path Computation Element (PCE) Communication | "RFC 5440: Path Computation Element (PCE) Communication | |||
| Protocol (PCEP)"; | Protocol (PCEP)"; | |||
| } | } | |||
| leaf keep-wait-timer { | leaf keep-wait-timer { | |||
| type uint16 { | type uint16; | |||
| range "1..65535"; | ||||
| } | ||||
| units "seconds"; | units "seconds"; | |||
| default "60"; | default "60"; | |||
| config false; | ||||
| description | description | |||
| "The time in seconds that the PCEP entity will wait | "The time in seconds that the PCEP entity will wait | |||
| to receive a Keepalive or PCErr message from a peer | to receive a Keepalive or PCErr message from a peer | |||
| during session initialization after receiving an | during session initialization after receiving an | |||
| Open message. If no Keepalive or PCErr message is | Open message. If no Keepalive or PCErr message is | |||
| received within this time then PCEP terminates the | received within this time then PCEP terminates the | |||
| TCP connection and deletes the associated | TCP connection and deletes the associated | |||
| sessions."; | sessions."; | |||
| reference | reference | |||
| "RFC 5440: Path Computation Element (PCE) Communication | "RFC 5440: Path Computation Element (PCE) Communication | |||
| skipping to change at page 56, line 35 ¶ | skipping to change at page 56, line 15 ¶ | |||
| default "60"; | default "60"; | |||
| description | description | |||
| "The value of SyncTimer in seconds is used in the | "The value of SyncTimer in seconds is used in the | |||
| case of synchronized path computation request | case of synchronized path computation request | |||
| using the SVEC object. Consider the case where a | using the SVEC object. Consider the case where a | |||
| PCReq message is received by a PCE that contains | PCReq message is received by a PCE that contains | |||
| the SVEC object referring to M synchronized path | the SVEC object referring to M synchronized path | |||
| computation requests. If after the expiration of | computation requests. If after the expiration of | |||
| the SyncTimer all the M path computation requests | the SyncTimer all the M path computation requests | |||
| have not been, received a protocol error is | have not been, received a protocol error is | |||
| triggered and the PCE MUST cancel the whole set | triggered and the PCE must cancel the whole set | |||
| of path computation requests. | of path computation requests. | |||
| The aim of the SyncTimer is to avoid the storage | The aim of the SyncTimer is to avoid the storage | |||
| of unused synchronized requests should one of | of unused synchronized requests should one of | |||
| them get lost for some reasons (for example, a | them get lost for some reasons (for example, a | |||
| misbehaving PCC). | misbehaving PCC). | |||
| Zero means that the PCEP entity does not use the | Zero means that the PCEP entity does not use the | |||
| SyncTimer."; | SyncTimer."; | |||
| reference | reference | |||
| "RFC 5440: Path Computation Element (PCE) | "RFC 5440: Path Computation Element (PCE) | |||
| Communication Protocol (PCEP)"; | Communication Protocol (PCEP)"; | |||
| skipping to change at page 59, line 50 ¶ | skipping to change at page 59, line 30 ¶ | |||
| type uint64; | type uint64; | |||
| description | description | |||
| "The LSP State Database Version Number"; | "The LSP State Database Version Number"; | |||
| } | } | |||
| list association-list { | list association-list { | |||
| if-feature "association"; | if-feature "association"; | |||
| key "type id source global-source extended-id"; | key "type id source global-source extended-id"; | |||
| description | description | |||
| "List of all PCEP associations"; | "List of all PCEP associations"; | |||
| reference | reference | |||
| "I-D.ietf-pce-association-group: PCEP | "RFC 8697: Path Computation Element Communication | |||
| Extensions for Establishing Relationships | Protocol (PCEP) Extensions for Establishing | |||
| Between Sets of LSPs"; | Relationships between Sets of Label Switched | |||
| Paths (LSPs)"; | ||||
| leaf type { | leaf type { | |||
| type identityref { | type identityref { | |||
| base te-types:association-type; | base te-types:association-type; | |||
| } | } | |||
| description | description | |||
| "The PCEP association type"; | "The PCEP association type"; | |||
| } | } | |||
| leaf id { | leaf id { | |||
| type uint16; | type uint16; | |||
| description | description | |||
| skipping to change at page 65, line 41 ¶ | skipping to change at page 65, line 22 ¶ | |||
| leaf extended-id { | leaf extended-id { | |||
| type leafref { | type leafref { | |||
| path "/pcep/entity/lsp-db/" | path "/pcep/entity/lsp-db/" | |||
| + "association-list/extended-id"; | + "association-list/extended-id"; | |||
| } | } | |||
| description | description | |||
| "Additional information to | "Additional information to | |||
| support unique identification."; | support unique identification."; | |||
| } | } | |||
| reference | reference | |||
| "I-D.ietf-pce-association-group: PCEP | "RFC 8697: Path Computation Element Communication | |||
| Extensions for Establishing Relationships | Protocol (PCEP) Extensions for Establishing | |||
| Between Sets of LSPs"; | Relationships between Sets of Label Switched | |||
| Paths (LSPs)"; | ||||
| } | } | |||
| } | } | |||
| } | } | |||
| container path-keys { | container path-keys { | |||
| when "../role = 'pce' or ../role = 'pcc-and-pce'" { | when "../role = 'pce' or ../role = 'pcc-and-pce'" { | |||
| description | description | |||
| "These fields are applicable when the role is | "These fields are applicable when the role is | |||
| PCE"; | PCE"; | |||
| } | } | |||
| if-feature "path-key"; | if-feature "path-key"; | |||
| config false; | config false; | |||
| description | description | |||
| "The path-keys generated by the PCE"; | "The path-keys generated by the PCE"; | |||
| reference | reference | |||
| "RFC 5520: Preserving Topology Confidentiality | "RFC 5520: Preserving Topology Confidentiality | |||
| in Inter-Domain Path Computation Using a Path- | in Inter-Domain Path Computation Using a Path- | |||
| Key-Based Mechanism"; | Key-Based Mechanism"; | |||
| list path-keys { | list path-keys { | |||
| skipping to change at page 78, line 43 ¶ | skipping to change at page 78, line 24 ¶ | |||
| "The PST authorized"; | "The PST authorized"; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| container assoc-type-list { | container assoc-type-list { | |||
| if-feature "association"; | if-feature "association"; | |||
| description | description | |||
| "Indicate the list of supported association types | "Indicate the list of supported association types | |||
| on this session"; | on this session"; | |||
| reference | reference | |||
| "I-D.ietf-pce-association-group: PCEP | "RFC 8697: Path Computation Element Communication | |||
| Extensions for Establishing Relationships | Protocol (PCEP) Extensions for Establishing | |||
| Between Sets of LSPs"; | Relationships between Sets of Label Switched | |||
| Paths (LSPs)"; | ||||
| list assoc-type { | list assoc-type { | |||
| key "at"; | key "at"; | |||
| description | description | |||
| "The list of authorized association types"; | "The list of authorized association types"; | |||
| leaf at { | leaf at { | |||
| type identityref { | type identityref { | |||
| base te-types:association-type; | base te-types:association-type; | |||
| } | } | |||
| description | description | |||
| "The association type authorized"; | "The association type authorized"; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| leaf speaker-entity-id { | leaf speaker-entity-id { | |||
| if-feature "sync-opt"; | if-feature "sync-opt"; | |||
| type string; | type string; | |||
| description | description | |||
| skipping to change at page 83, line 19 ¶ | skipping to change at page 83, line 4 ¶ | |||
| if-feature "sync-opt"; | if-feature "sync-opt"; | |||
| description | description | |||
| "Trigger the resyncrinization at the PCE"; | "Trigger the resyncrinization at the PCE"; | |||
| reference | reference | |||
| "RFC 8232: Optimizations of Label Switched Path State | "RFC 8232: Optimizations of Label Switched Path State | |||
| Synchronization Procedures for a Stateful PCE"; | Synchronization Procedures for a Stateful PCE"; | |||
| input { | input { | |||
| leaf pcc { | leaf pcc { | |||
| type leafref { | type leafref { | |||
| path "/pcep/entity/peers/peer/addr"; | path "/pcep/entity/peers/peer/addr"; | |||
| } | } | |||
| description | description | |||
| "The IP address to identify the PCC. The state | "The IP address to identify the PCC. The state | |||
| syncronization is re-triggered for all LSPs from | syncronization is re-triggered for all LSPs from | |||
| the PCC. The rpc on the PCC will be ignored."; | the PCC. The rpc on the PCC will be ignored."; | |||
| } | } | |||
| } | } | |||
| //input | //input | |||
| } | } | |||
| //rpc | //rpc | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 10.2. ietf-pcep-stats module | 10.2. ietf-pcep-stats module | |||
| <CODE BEGINS> file "ietf-pcep-stats@2019-10-31.yang" | <CODE BEGINS> file "ietf-pcep-stats@2020-07-08.yang" | |||
| module ietf-pcep-stats { | module ietf-pcep-stats { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-pcep-stats"; | namespace "urn:ietf:params:xml:ns:yang:ietf-pcep-stats"; | |||
| prefix pcep-stats; | prefix pcep-stats; | |||
| import ietf-pcep { | import ietf-pcep { | |||
| prefix pcep; | prefix pcep; | |||
| reference | reference | |||
| "RFC XXXX: A YANG Data Model for Path Computation | "RFC XXXX: A YANG Data Model for Path Computation | |||
| Element Communications Protocol (PCEP)"; | Element Communications Protocol (PCEP)"; | |||
| skipping to change at page 84, line 18 ¶ | skipping to change at page 83, line 51 ¶ | |||
| "IETF PCE (Path Computation Element) Working Group"; | "IETF PCE (Path Computation Element) Working Group"; | |||
| contact | contact | |||
| "WG Web: <https://tools.ietf.org/wg/pce/> | "WG Web: <https://tools.ietf.org/wg/pce/> | |||
| WG List: <mailto:pce@ietf.org> | WG List: <mailto:pce@ietf.org> | |||
| Editor: Dhruv Dhody | Editor: Dhruv Dhody | |||
| <mailto:dhruv.ietf@gmail.com>"; | <mailto:dhruv.ietf@gmail.com>"; | |||
| description | description | |||
| "The YANG module augments the PCEP yang operational | "The YANG module augments the PCEP yang operational | |||
| model with statistics, counters and telemetry data. | model with statistics, counters and telemetry data. | |||
| Copyright (c) 2019 IETF Trust and the persons identified as | Copyright (c) 2020 IETF Trust and the persons identified as | |||
| authors of the code. All rights reserved. | authors of the code. All rights reserved. | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (https://trustee.ietf.org/license-info). | (https://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; see the | This version of this YANG module is part of RFC XXXX; see the | |||
| RFC itself for full legal notices."; | RFC itself for full legal notices."; | |||
| revision 2019-10-31 { | revision 2020-07-08 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference | reference | |||
| "RFC XXXX: A YANG Data Model for Path Computation | "RFC XXXX: A YANG Data Model for Path Computation | |||
| Element Communications Protocol (PCEP)"; | Element Communications Protocol (PCEP)"; | |||
| } | } | |||
| /* | /* | |||
| * Groupings | * Groupings | |||
| */ | */ | |||
| skipping to change at page 104, line 29 ¶ | skipping to change at page 104, line 9 ¶ | |||
| Thanks to Mahesh Jethmalani for the Yang Doctor review. | Thanks to Mahesh Jethmalani for the Yang Doctor review. | |||
| Thanks to Martin Bjorklund and Tom Petch for providing guidance | Thanks to Martin Bjorklund and Tom Petch for providing guidance | |||
| regarding the Yang guidelines. | regarding the Yang guidelines. | |||
| 15. References | 15. References | |||
| 15.1. Normative References | 15.1. Normative References | |||
| [I-D.ietf-isis-yang-isis-cfg] | ||||
| Litkowski, S., Yeung, D., Lindem, A., Zhang, Z., and L. | ||||
| Lhotka, "YANG Data Model for IS-IS Protocol", draft-ietf- | ||||
| isis-yang-isis-cfg-42 (work in progress), October 2019. | ||||
| [I-D.ietf-netconf-tls-client-server] | ||||
| Watsen, K. and G. Wu, "YANG Groupings for TLS Clients and | ||||
| TLS Servers", draft-ietf-netconf-tls-client-server-19 | ||||
| (work in progress), May 2020. | ||||
| [I-D.ietf-ospf-yang] | ||||
| Yeung, D., Qu, Y., Zhang, Z., Chen, I., and A. Lindem, | ||||
| "YANG Data Model for OSPF Protocol", draft-ietf-ospf- | ||||
| yang-29 (work in progress), October 2019. | ||||
| [I-D.ietf-pce-gmpls-pcep-extensions] | ||||
| Margaria, C., Dios, O., and F. Zhang, "PCEP extensions for | ||||
| GMPLS", draft-ietf-pce-gmpls-pcep-extensions-16 (work in | ||||
| progress), December 2019. | ||||
| [I-D.ietf-teas-yang-te] | ||||
| Saad, T., Gandhi, R., Liu, X., Beeram, V., and I. Bryskin, | ||||
| "A YANG Data Model for Traffic Engineering Tunnels and | ||||
| Interfaces", draft-ietf-teas-yang-te-23 (work in | ||||
| progress), March 2020. | ||||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
| DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., | [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., | |||
| and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | |||
| Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, | Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, | |||
| <https://www.rfc-editor.org/info/rfc3209>. | <https://www.rfc-editor.org/info/rfc3209>. | |||
| skipping to change at page 106, line 5 ¶ | skipping to change at page 106, line 9 ¶ | |||
| <https://www.rfc-editor.org/info/rfc6242>. | <https://www.rfc-editor.org/info/rfc6242>. | |||
| [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", | [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", | |||
| RFC 6991, DOI 10.17487/RFC6991, July 2013, | RFC 6991, DOI 10.17487/RFC6991, July 2013, | |||
| <https://www.rfc-editor.org/info/rfc6991>. | <https://www.rfc-editor.org/info/rfc6991>. | |||
| [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", | [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", | |||
| RFC 7950, DOI 10.17487/RFC7950, August 2016, | RFC 7950, DOI 10.17487/RFC7950, August 2016, | |||
| <https://www.rfc-editor.org/info/rfc7950>. | <https://www.rfc-editor.org/info/rfc7950>. | |||
| [RFC8177] Lindem, A., Ed., Qu, Y., Yeung, D., Chen, I., and J. | ||||
| Zhang, "YANG Data Model for Key Chains", RFC 8177, | ||||
| DOI 10.17487/RFC8177, June 2017, | ||||
| <https://www.rfc-editor.org/info/rfc8177>. | ||||
| [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF | [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF | |||
| Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, | Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, | |||
| <https://www.rfc-editor.org/info/rfc8040>. | <https://www.rfc-editor.org/info/rfc8040>. | |||
| [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
| 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
| May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
| [RFC8177] Lindem, A., Ed., Qu, Y., Yeung, D., Chen, I., and J. | ||||
| Zhang, "YANG Data Model for Key Chains", RFC 8177, | ||||
| DOI 10.17487/RFC8177, June 2017, | ||||
| <https://www.rfc-editor.org/info/rfc8177>. | ||||
| [RFC8231] Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path | [RFC8231] Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path | |||
| Computation Element Communication Protocol (PCEP) | Computation Element Communication Protocol (PCEP) | |||
| Extensions for Stateful PCE", RFC 8231, | Extensions for Stateful PCE", RFC 8231, | |||
| DOI 10.17487/RFC8231, September 2017, | DOI 10.17487/RFC8231, September 2017, | |||
| <https://www.rfc-editor.org/info/rfc8231>. | <https://www.rfc-editor.org/info/rfc8231>. | |||
| [RFC8232] Crabbe, E., Minei, I., Medved, J., Varga, R., Zhang, X., | [RFC8232] Crabbe, E., Minei, I., Medved, J., Varga, R., Zhang, X., | |||
| and D. Dhody, "Optimizations of Label Switched Path State | and D. Dhody, "Optimizations of Label Switched Path State | |||
| Synchronization Procedures for a Stateful PCE", RFC 8232, | Synchronization Procedures for a Stateful PCE", RFC 8232, | |||
| DOI 10.17487/RFC8232, September 2017, | DOI 10.17487/RFC8232, September 2017, | |||
| skipping to change at page 107, line 19 ¶ | skipping to change at page 107, line 23 ¶ | |||
| [RFC8408] Sivabalan, S., Tantsura, J., Minei, I., Varga, R., and J. | [RFC8408] Sivabalan, S., Tantsura, J., Minei, I., Varga, R., and J. | |||
| Hardwick, "Conveying Path Setup Type in PCE Communication | Hardwick, "Conveying Path Setup Type in PCE Communication | |||
| Protocol (PCEP) Messages", RFC 8408, DOI 10.17487/RFC8408, | Protocol (PCEP) Messages", RFC 8408, DOI 10.17487/RFC8408, | |||
| July 2018, <https://www.rfc-editor.org/info/rfc8408>. | July 2018, <https://www.rfc-editor.org/info/rfc8408>. | |||
| [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol | [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol | |||
| Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, | Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, | |||
| <https://www.rfc-editor.org/info/rfc8446>. | <https://www.rfc-editor.org/info/rfc8446>. | |||
| [I-D.ietf-teas-yang-te] | [RFC8664] Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., | |||
| Saad, T., Gandhi, R., Liu, X., Beeram, V., and I. Bryskin, | and J. Hardwick, "Path Computation Element Communication | |||
| "A YANG Data Model for Traffic Engineering Tunnels and | Protocol (PCEP) Extensions for Segment Routing", RFC 8664, | |||
| Interfaces", draft-ietf-teas-yang-te-21 (work in | DOI 10.17487/RFC8664, December 2019, | |||
| progress), April 2019. | <https://www.rfc-editor.org/info/rfc8664>. | |||
| [I-D.ietf-teas-yang-te-types] | ||||
| Saad, T., Gandhi, R., Liu, X., Beeram, V., and I. Bryskin, | ||||
| "Traffic Engineering Common YANG Types", draft-ietf-teas- | ||||
| yang-te-types-11 (work in progress), October 2019. | ||||
| [I-D.ietf-netconf-tls-client-server] | ||||
| Watsen, K., Wu, G., and L. Xia, "YANG Groupings for TLS | ||||
| Clients and TLS Servers", draft-ietf-netconf-tls-client- | ||||
| server-15 (work in progress), October 2019. | ||||
| [I-D.ietf-pce-association-group] | [RFC8697] Minei, I., Crabbe, E., Sivabalan, S., Ananthakrishnan, H., | |||
| Minei, I., Crabbe, E., Sivabalan, S., Ananthakrishnan, H., | ||||
| Dhody, D., and Y. Tanaka, "Path Computation Element | Dhody, D., and Y. Tanaka, "Path Computation Element | |||
| Communication Protocol (PCEP) Extensions for Establishing | Communication Protocol (PCEP) Extensions for Establishing | |||
| Relationships Between Sets of Label Switched Paths | Relationships between Sets of Label Switched Paths | |||
| (LSPs)", draft-ietf-pce-association-group-10 (work in | (LSPs)", RFC 8697, DOI 10.17487/RFC8697, January 2020, | |||
| progress), August 2019. | <https://www.rfc-editor.org/info/rfc8697>. | |||
| [I-D.ietf-pce-segment-routing] | ||||
| Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., | ||||
| and J. Hardwick, "PCEP Extensions for Segment Routing", | ||||
| draft-ietf-pce-segment-routing-16 (work in progress), | ||||
| March 2019. | ||||
| [I-D.ietf-isis-yang-isis-cfg] | ||||
| Litkowski, S., Yeung, D., Lindem, A., Zhang, Z., and L. | ||||
| Lhotka, "YANG Data Model for IS-IS Protocol", draft-ietf- | ||||
| isis-yang-isis-cfg-42 (work in progress), October 2019. | ||||
| [I-D.ietf-ospf-yang] | ||||
| Yeung, D., Qu, Y., Zhang, Z., Chen, I., and A. Lindem, | ||||
| "YANG Data Model for OSPF Protocol", draft-ietf-ospf- | ||||
| yang-29 (work in progress), October 2019. | ||||
| [I-D.ietf-pce-gmpls-pcep-extensions] | [RFC8776] Saad, T., Gandhi, R., Liu, X., Beeram, V., and I. Bryskin, | |||
| Margaria, C., Dios, O., and F. Zhang, "PCEP extensions for | "Common YANG Data Types for Traffic Engineering", | |||
| GMPLS", draft-ietf-pce-gmpls-pcep-extensions-15 (work in | RFC 8776, DOI 10.17487/RFC8776, June 2020, | |||
| progress), October 2019. | <https://www.rfc-editor.org/info/rfc8776>. | |||
| 15.2. Informative References | 15.2. Informative References | |||
| [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation | [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation | |||
| Element (PCE)-Based Architecture", RFC 4655, | Element (PCE)-Based Architecture", RFC 4655, | |||
| DOI 10.17487/RFC4655, August 2006, | DOI 10.17487/RFC4655, August 2006, | |||
| <https://www.rfc-editor.org/info/rfc4655>. | <https://www.rfc-editor.org/info/rfc4655>. | |||
| [RFC7420] Koushik, A., Stephan, E., Zhao, Q., King, D., and J. | [RFC7420] Koushik, A., Stephan, E., Zhao, Q., King, D., and J. | |||
| Hardwick, "Path Computation Element Communication Protocol | Hardwick, "Path Computation Element Communication Protocol | |||
| skipping to change at page 113, line 43 ¶ | skipping to change at page 113, line 43 ¶ | |||
| EMail: jonathan.hardwick@metaswitch.com | EMail: jonathan.hardwick@metaswitch.com | |||
| Vishnu Pavan Beeram | Vishnu Pavan Beeram | |||
| Juniper Networks | Juniper Networks | |||
| USA | USA | |||
| EMail: vbeeram@juniper.net | EMail: vbeeram@juniper.net | |||
| Jeff Tantsura | Jeff Tantsura | |||
| Apstra, Inc. | ||||
| USA | USA | |||
| EMail: jefftant@gmail.com | EMail: jefftant@gmail.com | |||
| End of changes. 48 change blocks. | ||||
| 411 lines changed or deleted | 395 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||