| < draft-ietf-isis-yang-isis-cfg-30.txt | draft-ietf-isis-yang-isis-cfg-31.txt > | |||
|---|---|---|---|---|
| IS-IS Working Group S. Litkowski | IS-IS Working Group S. Litkowski | |||
| Internet-Draft Orange | Internet-Draft Orange | |||
| Intended status: Standards Track D. Yeung | Intended status: Standards Track D. Yeung | |||
| Expires: July 22, 2019 Arrcus, Inc | Expires: July 25, 2019 Arrcus, Inc | |||
| A. Lindem | A. Lindem | |||
| Cisco Systems | Cisco Systems | |||
| J. Zhang | J. Zhang | |||
| Juniper Networks | Juniper Networks | |||
| L. Lhotka | L. Lhotka | |||
| CZ.NIC | CZ.NIC | |||
| January 18, 2019 | January 21, 2019 | |||
| YANG Data Model for IS-IS protocol | YANG Data Model for IS-IS Protocol | |||
| draft-ietf-isis-yang-isis-cfg-30 | draft-ietf-isis-yang-isis-cfg-31 | |||
| Abstract | Abstract | |||
| This document defines a YANG data model that can be used to configure | This document defines a YANG data model that can be used to configure | |||
| and manage IS-IS protocol on network elements. | and manage IS-IS protocol on network elements. | |||
| Requirements Language | Requirements Language | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
| skipping to change at page 1, line 46 ¶ | skipping to change at page 1, line 46 ¶ | |||
| 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 July 22, 2019. | This Internet-Draft will expire on July 25, 2019. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2019 IETF Trust and the persons identified as the | Copyright (c) 2019 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 | |||
| skipping to change at page 2, line 25 ¶ | skipping to change at page 2, line 25 ¶ | |||
| 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 | |||
| described in the Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2. Design of the Data Model . . . . . . . . . . . . . . . . . . 3 | 2. Design of the Data Model . . . . . . . . . . . . . . . . . . 3 | |||
| 2.1. IS-IS Configuration . . . . . . . . . . . . . . . . . . . 9 | 2.1. IS-IS Configuration . . . . . . . . . . . . . . . . . . . 9 | |||
| 2.2. Multitopology Parameters . . . . . . . . . . . . . . . . 9 | 2.2. Multitopology Parameters . . . . . . . . . . . . . . . . 10 | |||
| 2.3. Per-Level Parameters . . . . . . . . . . . . . . . . . . 10 | 2.3. Per-Level Parameters . . . . . . . . . . . . . . . . . . 10 | |||
| 2.4. Per-Interface Parameters . . . . . . . . . . . . . . . . 11 | 2.4. Per-Interface Parameters . . . . . . . . . . . . . . . . 12 | |||
| 2.5. Authentication Parameters . . . . . . . . . . . . . . . . 18 | 2.5. Authentication Parameters . . . . . . . . . . . . . . . 19 | |||
| 2.6. IGP/LDP synchronization . . . . . . . . . . . . . . . . . 18 | 2.6. IGP/LDP synchronization . . . . . . . . . . . . . . . . 20 | |||
| 2.7. ISO parameters . . . . . . . . . . . . . . . . . . . . . 18 | 2.7. ISO parameters . . . . . . . . . . . . . . . . . . . . . 20 | |||
| 2.8. IP FRR . . . . . . . . . . . . . . . . . . . . . . . . . 19 | 2.8. IP FRR . . . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
| 2.9. Operational States . . . . . . . . . . . . . . . . . . . 19 | 2.9. Operational States . . . . . . . . . . . . . . . . . . . 21 | |||
| 3. RPC Operations . . . . . . . . . . . . . . . . . . . . . . . 20 | 3. RPC Operations . . . . . . . . . . . . . . . . . . . . . . . 21 | |||
| 4. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 20 | 4. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 21 | |||
| 5. Interaction with Other YANG Modules . . . . . . . . . . . . . 21 | 5. Interaction with Other YANG Modules . . . . . . . . . . . . 23 | |||
| 6. IS-IS YANG Module . . . . . . . . . . . . . . . . . . . . . . 22 | 6. IS-IS YANG Module . . . . . . . . . . . . . . . . . . . . . . 23 | |||
| 7. Security Considerations . . . . . . . . . . . . . . . . . . . 102 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 104 | |||
| 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 103 | 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 105 | |||
| 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 103 | 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 105 | |||
| 10. Change log for ietf-isis YANG module . . . . . . . . . . . . 103 | 10. Change log for ietf-isis YANG module . . . . . . . . . . . . 105 | |||
| 10.1. From version -29 to version -30 . . . . . . . . . . . . 103 | 10.1. From version -29 to version -30 . . . . . . . . . . . . 105 | |||
| 10.2. From version -28 to version -29 . . . . . . . . . . . . 104 | 10.2. From version -28 to version -29 . . . . . . . . . . . . 106 | |||
| 10.3. From version -27 to version -28 . . . . . . . . . . . . 104 | 10.3. From version -27 to version -28 . . . . . . . . . . . . 106 | |||
| 10.4. From version -26 to version -27 . . . . . . . . . . . . 104 | 10.4. From version -26 to version -27 . . . . . . . . . . . . 106 | |||
| 10.5. From version -25 to version -26 . . . . . . . . . . . . 104 | 10.5. From version -25 to version -26 . . . . . . . . . . . . 106 | |||
| 10.6. From version -24 to version -25 . . . . . . . . . . . . 104 | 10.6. From version -24 to version -25 . . . . . . . . . . . . 106 | |||
| 10.7. From version -22 to version -24 . . . . . . . . . . . . 105 | 10.7. From version -22 to version -24 . . . . . . . . . . . . 107 | |||
| 10.8. From version -21 to version -22 . . . . . . . . . . . . 106 | 10.8. From version -21 to version -22 . . . . . . . . . . . . 107 | |||
| 10.9. From version -20 to version -21 . . . . . . . . . . . . 106 | 10.9. From version -20 to version -21 . . . . . . . . . . . . 107 | |||
| 10.10. From version -19 to version -20 . . . . . . . . . . . . 106 | 10.10. From version -19 to version -20 . . . . . . . . . . . . 108 | |||
| 10.11. From version -18 to version -19 . . . . . . . . . . . . 106 | 10.11. From version -18 to version -19 . . . . . . . . . . . . 108 | |||
| 10.12. From version -17 to version -18 . . . . . . . . . . . . 106 | 10.12. From version -17 to version -18 . . . . . . . . . . . . 108 | |||
| 10.13. From version -16 to version -17 . . . . . . . . . . . . 106 | 10.13. From version -16 to version -17 . . . . . . . . . . . . 108 | |||
| 10.14. From version -15 to version -16 . . . . . . . . . . . . 107 | 10.14. From version -15 to version -16 . . . . . . . . . . . . 108 | |||
| 10.15. From version -14 to version -15 . . . . . . . . . . . . 107 | 10.15. From version -14 to version -15 . . . . . . . . . . . . 108 | |||
| 10.16. From version -13 to version -14 . . . . . . . . . . . . 107 | 10.16. From version -13 to version -14 . . . . . . . . . . . . 109 | |||
| 10.17. From version -12 to version -13 . . . . . . . . . . . . 107 | 10.17. From version -12 to version -13 . . . . . . . . . . . . 109 | |||
| 10.18. From version -09 to version -12 . . . . . . . . . . . . 108 | 10.18. From version -09 to version -12 . . . . . . . . . . . . 109 | |||
| 10.19. From version -08 to version -09 . . . . . . . . . . . . 108 | 10.19. From version -08 to version -09 . . . . . . . . . . . . 109 | |||
| 10.20. From version -07 to version -08 . . . . . . . . . . . . 108 | 10.20. From version -07 to version -08 . . . . . . . . . . . . 110 | |||
| 10.21. From version -05 to version -07 . . . . . . . . . . . . 108 | 10.21. From version -05 to version -07 . . . . . . . . . . . . 110 | |||
| 10.22. From version -03 to version -05 . . . . . . . . . . . . 108 | 10.22. From version -03 to version -05 . . . . . . . . . . . . 110 | |||
| 10.23. From version -02 to version -03 . . . . . . . . . . . . 109 | 10.23. From version -02 to version -03 . . . . . . . . . . . . 110 | |||
| 10.24. From version -01 to version -02 . . . . . . . . . . . . 109 | 10.24. From version -01 to version -02 . . . . . . . . . . . . 111 | |||
| 10.25. From version -00 to version -01 . . . . . . . . . . . . 109 | 10.25. From version -00 to version -01 . . . . . . . . . . . . 111 | |||
| 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 110 | 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 112 | |||
| 11.1. Normative References . . . . . . . . . . . . . . . . . . 110 | 11.1. Normative References . . . . . . . . . . . . . . . . . . 112 | |||
| 11.2. Informative References . . . . . . . . . . . . . . . . . 114 | 11.2. Informative References . . . . . . . . . . . . . . . . . 115 | |||
| Appendix A. Example of IS-IS configuration in XML . . . . . . . 114 | Appendix A. Example of IS-IS configuration in XML . . . . . . . 116 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 116 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 118 | |||
| 1. Introduction | 1. Introduction | |||
| This document defines a YANG ([RFC7950]) data model for IS-IS routing | This document defines a YANG ([RFC7950]) data model for IS-IS routing | |||
| protocol. | protocol. | |||
| The data model covers configuration of an IS-IS routing protocol | The data model covers configuration of an IS-IS routing protocol | |||
| instance as well as operational states. | instance as well as operational states. | |||
| A simplified tree representation of the data model is presented in | A simplified tree representation of the data model is presented in | |||
| skipping to change at page 3, line 47 ¶ | skipping to change at page 3, line 47 ¶ | |||
| 2. Design of the Data Model | 2. Design of the Data Model | |||
| The IS-IS YANG module augments the "control-plane-protocol" list in | The IS-IS YANG module augments the "control-plane-protocol" list in | |||
| ietf-routing module (defined in [RFC8349]) with specific IS-IS | ietf-routing module (defined in [RFC8349]) with specific IS-IS | |||
| parameters. | parameters. | |||
| The figure below describes the overall structure of the isis YANG | The figure below describes the overall structure of the isis YANG | |||
| module: | module: | |||
| module: ietf-isis | module: ietf-isis | |||
| augment /rt:routing/rt:ribs/rt:rib/rt:routes/rt:route: | augment /rt:routing/rt:ribs/rt:rib/rt:routes/rt:route: | |||
| +--ro metric? uint32 | +--ro metric? uint32 | |||
| +--ro tag* uint64 | +--ro tag* uint64 | |||
| +--ro route-type? enumeration | +--ro route-type? enumeration | |||
| augment /if:interfaces/if:interface: | augment /if:interfaces/if:interface: | |||
| +--rw clns-mtu? uint16 | +--rw clns-mtu? uint16 | |||
| augment | augment | |||
| /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol: | /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol: | |||
| +--rw isis | +--rw isis | |||
| +--rw enable? boolean {admin-control}? | +--rw enable? boolean {admin-control}? | |||
| +--rw level-type? level | +--rw level-type? level | |||
| +--rw system-id? system-id | +--rw system-id? system-id | |||
| +--rw maximum-area-addresses? uint8 {maximum-area-addresses}? | +--rw maximum-area-addresses? uint8 {maximum-area-addresses}? | |||
| +--rw area-address* area-address | +--rw area-address* area-address | |||
| +--rw lsp-mtu? uint16 | +--rw lsp-mtu? uint16 | |||
| +--rw lsp-lifetime? uint16 | +--rw lsp-lifetime? uint16 | |||
| +--rw lsp-refresh? rt-types:timer-value-seconds16 | +--rw lsp-refresh? rt-types:timer-value-seconds16 | |||
| {lsp-refresh}? | {lsp-refresh}? | |||
| +--rw poi-tlv? boolean {poi-tlv}? | +--rw poi-tlv? boolean {poi-tlv}? | |||
| +--rw graceful-restart {graceful-restart}? | +--rw graceful-restart {graceful-restart}? | |||
| | +--rw enable? boolean | | +--rw enable? boolean | |||
| | +--rw restart-interval? rt-types:timer-value-seconds16 | | +--rw restart-interval? rt-types:timer-value-seconds16 | |||
| | +--rw helper-enable? boolean | | +--rw helper-enable? boolean | |||
| +--rw nsr {nsr}? | +--rw nsr {nsr}? | |||
| | +--rw enable? boolean | | +--rw enable? boolean | |||
| +--rw node-tags {node-tag}? | +--rw node-tags {node-tag}? | |||
| | +--rw node-tag* [tag] | | +--rw node-tag* [tag] | |||
| | ... | | ... | |||
| +--rw metric-type | +--rw metric-type | |||
| | +--rw value? enumeration | | +--rw value? enumeration | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | ... | | | ... | |||
| | +--rw level-2 | | +--rw level-2 | |||
| | ... | | ... | |||
| +--rw default-metric | +--rw default-metric | |||
| | +--rw value? wide-metric | | +--rw value? wide-metric | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | ... | | | ... | |||
| | +--rw level-2 | | +--rw level-2 | |||
| | ... | | ... | |||
| +--rw auto-cost {auto-cost}? | +--rw auto-cost {auto-cost}? | |||
| | +--rw enable? boolean | | +--rw enable? boolean | |||
| | +--rw reference-bandwidth? uint32 | | +--rw reference-bandwidth? uint32 | |||
| +--rw authentication | +--rw authentication | |||
| | +--rw (authentication-type)? | | +--rw (authentication-type)? | |||
| | | ... | | | ... | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | ... | | | ... | |||
| | +--rw level-2 | | +--rw level-2 | |||
| | ... | | ... | |||
| +--rw address-families {nlpid-control}? | +--rw address-families {nlpid-control}? | |||
| | +--rw address-family-list* [address-family] | | +--rw address-family-list* [address-family] | |||
| | ... | | ... | |||
| +--rw mpls | ||||
| | +--rw te-rid {te-rid}? | ||||
| | | ... | ||||
| | +--rw ldp | ||||
| | ... | ||||
| +--rw spf-control | ||||
| | +--rw paths? uint16 {max-ecmp}? | ||||
| | +--rw ietf-spf-delay {ietf-spf-delay}? | ||||
| | ... | ||||
| +--rw fast-reroute {fast-reroute}? | ||||
| | +--rw lfa {lfa}? | ||||
| +--rw preference | ||||
| | +--rw (granularity)? | ||||
| | ... | ||||
| +--rw overload | ||||
| | +--rw status? boolean | ||||
| +--rw overload-max-metric {overload-max-metric}? | ||||
| | +--rw timeout? rt-types:timer-value-seconds16 | ||||
| +--ro spf-log | ||||
| | +--ro event* [id] | ||||
| | ... | ||||
| +--ro lsp-log | ||||
| | +--ro event* [id] | ||||
| | ... | ||||
| +--ro hostnames | ||||
| | +--ro hostname* [system-id] | ||||
| | ... | ||||
| +--ro database | ||||
| | +--ro levels* [level] | ||||
| | ... | ||||
| +--ro local-rib | ||||
| | +--ro route* [prefix] | ||||
| | ... | ||||
| +--ro system-counters | ||||
| | +--ro level* [level] | ||||
| | ... | ||||
| +--ro protected-routes | ||||
| | +--ro address-family-stats* [address-family prefix alternate] | ||||
| | ... | ||||
| +--ro unprotected-routes | ||||
| | +--ro address-family-stats* [address-family prefix] | ||||
| | ... | ||||
| +--ro protection-statistics* [frr-protection-method] | ||||
| | +--ro frr-protection-method string | ||||
| | +--ro address-family-stats* [address-family] | ||||
| | ... | ||||
| +--rw mpls | +--rw topologies {multi-topology}? | |||
| | +--rw te-rid {te-rid}? | | +--rw topology* [name] | |||
| | | ... | | ... | |||
| | +--rw ldp | +--rw interfaces | |||
| | ... | +--rw interface* [name] | |||
| +--rw spf-control | ... | |||
| | +--rw paths? uint16 {max-ecmp}? | ||||
| | +--rw ietf-spf-delay {ietf-spf-delay}? | ||||
| | ... | ||||
| +--rw fast-reroute {fast-reroute}? | ||||
| | +--rw lfa {lfa}? | ||||
| +--rw preference | ||||
| | +--rw (granularity)? | ||||
| | ... | ||||
| +--rw overload | ||||
| | +--rw status? boolean | ||||
| +--rw overload-max-metric {overload-max-metric}? | ||||
| | +--rw timeout? rt-types:timer-value-seconds16 | ||||
| +--ro spf-log | ||||
| | +--ro event* [id] | ||||
| | ... | ||||
| +--ro lsp-log | ||||
| | +--ro event* [id] | ||||
| | ... | ||||
| +--ro hostnames | ||||
| | +--ro hostname* [system-id] | ||||
| | ... | ||||
| +--ro database | ||||
| | +--ro levels* [level] | ||||
| | ... | ||||
| +--ro local-rib | ||||
| | +--ro route* [prefix] | ||||
| | ... | ||||
| +--ro system-counters | ||||
| | +--ro level* [level] | ||||
| | ... | ||||
| +--ro protected-routes | ||||
| | +--ro address-family-stats* [address-family prefix alternate] | ||||
| | ... | ||||
| +--ro unprotected-routes | ||||
| | +--ro address-family-stats* [address-family prefix] | ||||
| | ... | ||||
| +--ro protection-statistics* [frr-protection-method] | ||||
| | +--ro frr-protection-method string | ||||
| | +--ro address-family-stats* [address-family] | ||||
| | ... | ||||
| +--rw topologies {multi-topology}? | ||||
| | +--rw topology* [name] | ||||
| | ... | ||||
| +--rw interfaces | ||||
| +--rw interface* [name] | ||||
| ... | ||||
| rpcs: | rpcs: | |||
| +---x clear-adjacency | +---x clear-adjacency | |||
| | +---w input | | +---w input | |||
| | +---w routing-protocol-instance-name -> | | +---w routing-protocol-instance-name -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +---w level? level | | +---w level? level | |||
| | +---w interface? if:interface-ref | | +---w interface? if:interface-ref | |||
| +---x clear-database | +---x clear-database | |||
| +---w input | +---w input | |||
| +---w routing-protocol-instance-name -> | +---w routing-protocol-instance-name -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| +---w level? level | +---w level? level | |||
| notifications: | notifications: | |||
| +---n database-overload | +---n database-overload | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro overload? enumeration | | +--ro overload? enumeration | |||
| +---n lsp-too-large | +---n lsp-too-large | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro pdu-size? uint32 | | +--ro pdu-size? uint32 | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| +---n if-state-change | +---n if-state-change | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro state? if-state-type | | +--ro state? if-state-type | |||
| +---n corrupted-lsp-detected | +---n corrupted-lsp-detected | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| +---n attempt-to-exceed-max-sequence | +---n attempt-to-exceed-max-sequence | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| +---n id-len-mismatch | +---n id-len-mismatch | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro pdu-field-len? uint8 | | +--ro pdu-field-len? uint8 | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n max-area-addresses-mismatch | +---n max-area-addresses-mismatch | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro max-area-addresses? uint8 | | +--ro max-area-addresses? uint8 | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n own-lsp-purge | +---n own-lsp-purge | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| +---n sequence-number-skipped | +---n sequence-number-skipped | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| +---n authentication-type-failure | +---n authentication-type-failure | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n authentication-failure | +---n authentication-failure | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n version-skew | +---n version-skew | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro protocol-version? uint8 | | +--ro protocol-version? uint8 | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n area-mismatch | +---n area-mismatch | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n rejected-adjacency | +---n rejected-adjacency | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| | +--ro reason? string | | +--ro reason? string | |||
| +---n protocols-supported-mismatch | +---n protocols-supported-mismatch | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| | +--ro protocols* uint8 | | +--ro protocols* uint8 | |||
| +---n lsp-error-detected | +---n lsp-error-detected | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| | +--ro error-offset? uint32 | | +--ro error-offset? uint32 | |||
| | +--ro tlv-type? uint8 | | +--ro tlv-type? uint8 | |||
| +---n adjacency-state-change | +---n adjacency-state-change | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro neighbor? string | | +--ro neighbor? string | |||
| | +--ro neighbor-system-id? system-id | | +--ro neighbor-system-id? system-id | |||
| | +--ro state? adj-state-type | | +--ro state? adj-state-type | |||
| | +--ro reason? string | | +--ro reason? string | |||
| +---n lsp-received | +---n lsp-received | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| | +--ro sequence? uint32 | | +--ro sequence? uint32 | |||
| | +--ro received-timestamp? yang:timestamp | | +--ro received-timestamp? yang:timestamp | |||
| | +--ro neighbor-system-id? system-id | | +--ro neighbor-system-id? system-id | |||
| +---n lsp-generation | +---n lsp-generation | |||
| +--ro routing-protocol-name? -> | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| +--ro isis-level? level | +--ro isis-level? level | |||
| +--ro lsp-id? lsp-id | +--ro lsp-id? lsp-id | |||
| +--ro sequence? uint32 | +--ro sequence? uint32 | |||
| +--ro send-timestamp? yang:timestamp | +--ro send-timestamp? yang:timestamp | |||
| 2.1. IS-IS Configuration | 2.1. IS-IS Configuration | |||
| The IS-IS configuration container is divided in: | The IS-IS configuration is divided in: | |||
| o Global parameters. | o Global parameters. | |||
| o Per interface configuration (see Section 2.4). | o Per interface configuration (see Section 2.4). | |||
| Additional modules may be created to support any additional | Additional modules may be created to support any additional | |||
| parameters. These additional modules MUST augment the ietf-isis | parameters. These additional modules MUST augment the ietf-isis | |||
| module. | module. | |||
| The model implements features, thus some of the configuration | The model implements features, thus some of the configuration | |||
| skipping to change at page 12, line 8 ¶ | skipping to change at page 13, line 5 ¶ | |||
| defined in the "ietf-interfaces" YANG model ([RFC8343]. | defined in the "ietf-interfaces" YANG model ([RFC8343]. | |||
| Each interface has some interface-specific parameters that may have a | Each interface has some interface-specific parameters that may have a | |||
| different per level value as described in previous section. An | different per level value as described in previous section. An | |||
| interface-specific parameter always override an IS-IS global | interface-specific parameter always override an IS-IS global | |||
| parameter. | parameter. | |||
| Some parameters like hello-padding are defined as containers to allow | Some parameters like hello-padding are defined as containers to allow | |||
| easy extension by vendor specific modules. | easy extension by vendor specific modules. | |||
| +--rw interfaces | +--rw interfaces | |||
| +--rw interface* [name] | +--rw interface* [name] | |||
| +--rw name if:interface-ref | +--rw name if:interface-ref | |||
| +--rw level-type? level | +--rw level-type? level | |||
| +--rw lsp-pacing-interval? | +--rw lsp-pacing-interval? | |||
| rt-types:timer-value-milliseconds | rt-types:timer-value-milliseconds | |||
| +--rw lsp-retransmit-interval? | +--rw lsp-retransmit-interval? | |||
| rt-types:timer-value-seconds16 | rt-types:timer-value-seconds16 | |||
| +--rw passive? boolean | +--rw passive? boolean | |||
| +--rw csnp-interval? | +--rw csnp-interval? | |||
| rt-types:timer-value-seconds16 | rt-types:timer-value-seconds16 | |||
| +--rw hello-padding | +--rw hello-padding | |||
| | +--rw enable? boolean | | +--rw enable? boolean | |||
| +--rw mesh-group-enable? mesh-group-state | +--rw mesh-group-enable? mesh-group-state | |||
| +--rw mesh-group? uint8 | +--rw mesh-group? uint8 | |||
| +--rw interface-type? interface-type | +--rw interface-type? interface-type | |||
| +--rw enable? boolean {admin-control}? | +--rw enable? boolean {admin-control}? | |||
| +--rw tag* uint32 {prefix-tag}? | +--rw tag* uint32 {prefix-tag}? | |||
| +--rw tag64* uint64 {prefix-tag64}? | +--rw tag64* uint64 {prefix-tag64}? | |||
| +--rw node-flag? boolean {node-flag}? | +--rw node-flag? boolean {node-flag}? | |||
| +--rw hello-authentication | +--rw hello-authentication | |||
| | +--rw (authentication-type)? | | +--rw (authentication-type)? | |||
| | | +--:(key-chain) {key-chain}? | | | +--:(key-chain) {key-chain}? | |||
| | | | +--rw key-chain? key-chain:key-chain-ref | | | | +--rw key-chain? key-chain:key-chain-ref | |||
| | | +--:(password) | | | +--:(password) | |||
| | | +--rw key? string | | | +--rw key? string | |||
| | | +--rw crypto-algorithm? identityref | | | +--rw crypto-algorithm? identityref | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | +--rw (authentication-type)? | | | +--rw (authentication-type)? | |||
| | | +--:(key-chain) {key-chain}? | | | +--:(key-chain) {key-chain}? | |||
| | | | +--rw key-chain? | | | | +--rw key-chain? | |||
| key-chain:key-chain-ref | key-chain:key-chain-ref | |||
| | | +--:(password) | | | +--:(password) | |||
| | | +--rw key? string | | | +--rw key? string | |||
| | | +--rw crypto-algorithm? identityref | | | +--rw crypto-algorithm? identityref | |||
| | +--rw level-2 | | +--rw level-2 | |||
| | +--rw (authentication-type)? | | +--rw (authentication-type)? | |||
| | +--:(key-chain) {key-chain}? | | +--:(key-chain) {key-chain}? | |||
| | | +--rw key-chain? | | | +--rw key-chain? | |||
| key-chain:key-chain-ref | key-chain:key-chain-ref | |||
| | +--:(password) | | +--:(password) | |||
| | +--rw key? string | | +--rw key? string | |||
| | +--rw crypto-algorithm? identityref | | +--rw crypto-algorithm? identityref | |||
| +--rw hello-interval | +--rw hello-interval | |||
| | +--rw value? rt-types:timer-value-seconds16 | | +--rw value? rt-types:timer-value-seconds16 | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | +--rw value? rt-types:timer-value-seconds16 | | | +--rw value? rt-types:timer-value-seconds16 | |||
| | +--rw level-2 | | +--rw level-2 | |||
| | +--rw value? rt-types:timer-value-seconds16 | | +--rw value? rt-types:timer-value-seconds16 | |||
| +--rw hello-multiplier | +--rw hello-multiplier | |||
| | +--rw value? uint16 | | +--rw value? uint16 | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | +--rw value? uint16 | | | +--rw value? uint16 | |||
| | +--rw level-2 | | +--rw level-2 | |||
| | +--rw value? uint16 | | +--rw value? uint16 | |||
| +--rw priority | +--rw priority | |||
| | +--rw value? uint8 | | +--rw value? uint8 | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | +--rw value? uint8 | | | +--rw value? uint8 | |||
| | +--rw level-2 | | +--rw level-2 | |||
| | +--rw value? uint8 | | +--rw value? uint8 | |||
| +--rw metric | +--rw metric | |||
| | +--rw value? wide-metric | | +--rw value? wide-metric | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | +--rw value? wide-metric | | | +--rw value? wide-metric | |||
| | +--rw level-2 | | +--rw level-2 | |||
| | +--rw value? wide-metric | | +--rw value? wide-metric | |||
| +--rw bfd {bfd}? | +--rw bfd {bfd}? | |||
| | +--rw enable? boolean | | +--rw enable? boolean | |||
| | +--rw local-multiplier? multiplier | | +--rw local-multiplier? multiplier | |||
| | +--rw (interval-config-type)? | | +--rw (interval-config-type)? | |||
| | +--:(tx-rx-intervals) | | +--:(tx-rx-intervals) | |||
| | | +--rw desired-min-tx-interval? uint32 | | | +--rw desired-min-tx-interval? uint32 | |||
| | | +--rw required-min-rx-interval? uint32 | | | +--rw required-min-rx-interval? uint32 | |||
| | +--:(single-interval) {single-minimum-interval}? | | +--:(single-interval) {single-minimum-interval}? | |||
| | +--rw min-interval? uint32 | | +--rw min-interval? uint32 | |||
| +--rw address-families {nlpid-control}? | +--rw address-families {nlpid-control}? | |||
| | +--rw address-family-list* [address-family] | | +--rw address-family-list* [address-family] | |||
| | +--rw address-family iana-rt-types:address-family | | +--rw address-family iana-rt-types:address-family | |||
| +--rw mpls | +--rw mpls | |||
| | +--rw ldp | | +--rw ldp | |||
| | +--rw igp-sync? boolean {ldp-igp-sync}? | | +--rw igp-sync? boolean {ldp-igp-sync}? | |||
| +--rw fast-reroute {fast-reroute}? | +--rw fast-reroute {fast-reroute}? | |||
| | +--rw lfa {lfa}? | | +--rw lfa {lfa}? | |||
| | +--rw candidate-enable? boolean | | +--rw candidate-enable? boolean | |||
| | +--rw enable? boolean | | +--rw enable? boolean | |||
| | +--rw remote-lfa {remote-lfa}? | | +--rw remote-lfa {remote-lfa}? | |||
| | | +--rw enable? boolean | | | +--rw enable? boolean | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | +--rw candidate-enable? boolean | | | +--rw candidate-enable? boolean | |||
| | | +--rw enable? boolean | | | +--rw enable? boolean | |||
| | | +--rw remote-lfa {remote-lfa}? | | | +--rw remote-lfa {remote-lfa}? | |||
| | | +--rw enable? boolean | | | +--rw enable? boolean | |||
| | +--rw level-2 | | +--rw level-2 | |||
| | +--rw candidate-enable? boolean | | +--rw candidate-enable? boolean | |||
| | +--rw enable? boolean | | +--rw enable? boolean | |||
| | +--rw remote-lfa {remote-lfa}? | | +--rw remote-lfa {remote-lfa}? | |||
| | +--rw enable? boolean | | +--rw enable? boolean | |||
| +--ro adjacencies | +--ro adjacencies | |||
| | +--ro adjacency* [] | | +--ro adjacency* [] | |||
| | +--ro neighbor-sys-type? level | | +--ro neighbor-sys-type? level | |||
| | +--ro neighbor-sysid? system-id | | +--ro neighbor-sysid? system-id | |||
| | +--ro neighbor-extended-circuit-id? | | +--ro neighbor-extended-circuit-id? | |||
| extended-circuit-id | extended-circuit-id | |||
| | +--ro neighbor-snpa? snpa | | +--ro neighbor-snpa? snpa | |||
| | +--ro usage? level | | +--ro usage? level | |||
| | +--ro hold-timer? | | +--ro hold-timer? | |||
| rt-types:timer-value-seconds16 | rt-types:timer-value-seconds16 | |||
| | +--ro neighbor-priority? uint8 | | +--ro neighbor-priority? uint8 | |||
| | +--ro lastuptime? yang:timestamp | | +--ro lastuptime? yang:timestamp | |||
| | +--ro state? adj-state-type | | +--ro state? adj-state-type | |||
| +--ro event-counters | +--ro event-counters | |||
| | +--ro adjacency-changes? uint32 | | +--ro adjacency-changes? uint32 | |||
| | +--ro adjacency-number? uint32 | | +--ro adjacency-number? uint32 | |||
| | +--ro init-fails? uint32 | | +--ro init-fails? uint32 | |||
| | +--ro adjacency-rejects? uint32 | | +--ro adjacency-rejects? uint32 | |||
| | +--ro id-len-mismatch? uint32 | | +--ro id-len-mismatch? uint32 | |||
| | +--ro max-area-addresses-mismatch? uint32 | | +--ro max-area-addresses-mismatch? uint32 | |||
| | +--ro authentication-type-fails? uint32 | | +--ro authentication-type-fails? uint32 | |||
| | +--ro authentication-fails? uint32 | | +--ro authentication-fails? uint32 | |||
| | +--ro lan-dis-changes? uint32 | | +--ro lan-dis-changes? uint32 | |||
| +--ro packet-counters | +--ro packet-counters | |||
| | +--ro level* [level] | | +--ro level* [level] | |||
| | +--ro level level-number | | +--ro level level-number | |||
| | +--ro iih | | +--ro iih | |||
| | | +--ro in? uint32 | | | +--ro in? uint32 | |||
| | | +--ro out? uint32 | | | +--ro out? uint32 | |||
| | +--ro ish | | +--ro ish | |||
| | | +--ro in? uint32 | | | +--ro in? uint32 | |||
| | | +--ro out? uint32 | | | +--ro out? uint32 | |||
| | +--ro esh | | +--ro esh | |||
| | | +--ro in? uint32 | | | +--ro in? uint32 | |||
| | | +--ro out? uint32 | | | +--ro out? uint32 | |||
| | +--ro lsp | | +--ro lsp | |||
| | | +--ro in? uint32 | | | +--ro in? uint32 | |||
| | | +--ro out? uint32 | | | +--ro out? uint32 | |||
| | +--ro psnp | | +--ro psnp | |||
| | | +--ro in? uint32 | | | +--ro in? uint32 | |||
| | | +--ro out? uint32 | | | +--ro out? uint32 | |||
| | +--ro csnp | | +--ro csnp | |||
| | | +--ro in? uint32 | | | +--ro in? uint32 | |||
| | | +--ro out? uint32 | | | +--ro out? uint32 | |||
| | +--ro unknown | | +--ro unknown | |||
| | +--ro in? uint32 | | +--ro in? uint32 | |||
| | +--ro out? uint32 | | +--ro out? uint32 | |||
| +--rw topologies {multi-topology}? | +--rw topologies {multi-topology}? | |||
| +--rw topology* [name] | +--rw topology* [name] | |||
| +--rw name -> | +--rw name -> | |||
| ../../../../../../../../rt:ribs/rib/name | ../../../../../../../../rt:ribs/rib/name | |||
| +--rw metric | +--rw metric | |||
| +--rw value? wide-metric | +--rw value? wide-metric | |||
| +--rw level-1 | +--rw level-1 | |||
| | +--rw value? wide-metric | | +--rw value? wide-metric | |||
| +--rw level-2 | +--rw level-2 | |||
| +--rw value? wide-metric | +--rw value? wide-metric | |||
| rpcs: | rpcs: | |||
| +---x clear-adjacency | +---x clear-adjacency | |||
| | +---w input | | +---w input | |||
| | +---w routing-protocol-instance-name -> | | +---w routing-protocol-instance-name -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +---w level? level | | +---w level? level | |||
| | +---w interface? if:interface-ref | | +---w interface? if:interface-ref | |||
| +---x clear-database | +---x clear-database | |||
| +---w input | +---w input | |||
| +---w routing-protocol-instance-name -> | +---w routing-protocol-instance-name -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| +---w level? level | +---w level? level | |||
| notifications: | notifications: | |||
| +---n database-overload | +---n database-overload | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro overload? enumeration | | +--ro overload? enumeration | |||
| +---n lsp-too-large | +---n lsp-too-large | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro pdu-size? uint32 | | +--ro pdu-size? uint32 | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| +---n if-state-change | +---n if-state-change | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro state? if-state-type | | +--ro state? if-state-type | |||
| +---n corrupted-lsp-detected | +---n corrupted-lsp-detected | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| +---n attempt-to-exceed-max-sequence | +---n attempt-to-exceed-max-sequence | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| +---n id-len-mismatch | +---n id-len-mismatch | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro pdu-field-len? uint8 | | +--ro pdu-field-len? uint8 | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n max-area-addresses-mismatch | +---n max-area-addresses-mismatch | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro max-area-addresses? uint8 | | +--ro max-area-addresses? uint8 | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n own-lsp-purge | +---n own-lsp-purge | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| +---n sequence-number-skipped | +---n sequence-number-skipped | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| +---n authentication-type-failure | +---n authentication-type-failure | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n authentication-failure | +---n authentication-failure | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n version-skew | +---n version-skew | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro protocol-version? uint8 | | +--ro protocol-version? uint8 | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n area-mismatch | +---n area-mismatch | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| +---n rejected-adjacency | +---n rejected-adjacency | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| | +--ro reason? string | | +--ro reason? string | |||
| +---n protocols-supported-mismatch | +---n protocols-supported-mismatch | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| | +--ro protocols* uint8 | | +--ro protocols* uint8 | |||
| +---n lsp-error-detected | +---n lsp-error-detected | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| | +--ro error-offset? uint32 | | +--ro error-offset? uint32 | |||
| | +--ro tlv-type? uint8 | | +--ro tlv-type? uint8 | |||
| +---n adjacency-state-change | +---n adjacency-state-change | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro neighbor? string | | +--ro neighbor? string | |||
| | +--ro neighbor-system-id? system-id | | +--ro neighbor-system-id? system-id | |||
| | +--ro state? adj-state-type | | +--ro state? adj-state-type | |||
| | +--ro reason? string | | +--ro reason? string | |||
| +---n lsp-received | +---n lsp-received | |||
| | +--ro routing-protocol-name? -> | | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? if:interface-ref | | +--ro interface-name? if:interface-ref | |||
| | +--ro interface-level? level | | +--ro interface-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro lsp-id? lsp-id | | +--ro lsp-id? lsp-id | |||
| | +--ro sequence? uint32 | | +--ro sequence? uint32 | |||
| | +--ro received-timestamp? yang:timestamp | | +--ro received-timestamp? yang:timestamp | |||
| | +--ro neighbor-system-id? system-id | | +--ro neighbor-system-id? system-id | |||
| +---n lsp-generation | +---n lsp-generation | |||
| +--ro routing-protocol-name? -> | +--ro routing-protocol-name? -> | |||
| /rt:routing/control-plane-protocols/control-plane-protocol/name | /rt:routing/control-plane-protocols/control-plane-protocol/name | |||
| +--ro isis-level? level | +--ro isis-level? level | |||
| +--ro lsp-id? lsp-id | +--ro lsp-id? lsp-id | |||
| +--ro sequence? uint32 | +--ro sequence? uint32 | |||
| +--ro send-timestamp? yang:timestamp | +--ro send-timestamp? yang:timestamp | |||
| 2.5. Authentication Parameters | 2.5. Authentication Parameters | |||
| The module enables authentication configuration through the IETF key- | The module enables authentication configuration through the IETF key- | |||
| chain module ([RFC8177]). The IS-IS module imports the "ietf-key- | chain module ([RFC8177]). The IS-IS module imports the "ietf-key- | |||
| chain" module and reuses some groupings to allow global and per | chain" module and reuses some groupings to allow global and per | |||
| interface configuration of authentication. If a global | interface configuration of authentication. If a global | |||
| authentication is configured, an implementation SHOULD authenticate | authentication is configured, an implementation SHOULD authenticate | |||
| PSNPs (Partial Sequence Number Packets), CSNPs (Complete Sequence | PSNPs (Partial Sequence Number Packets), CSNPs (Complete Sequence | |||
| Number Packets) and LSPs (Link State Packets) with the authentication | Number Packets) and LSPs (Link State Packets) with the authentication | |||
| skipping to change at page 19, line 7 ¶ | skipping to change at page 20, line 32 ¶ | |||
| As IS-IS protocol is based on ISO protocol suite, some ISO parameters | As IS-IS protocol is based on ISO protocol suite, some ISO parameters | |||
| may be required. | may be required. | |||
| This module augments interface configuration model to support ISO | This module augments interface configuration model to support ISO | |||
| configuration parameters. | configuration parameters. | |||
| The clns-mtu can be defined under the interface. | The clns-mtu can be defined under the interface. | |||
| 2.8. IP FRR | 2.8. IP FRR | |||
| This YANG model supports LFA (Loop Free Alternates) ([RFC5286]) and | This YANG module supports LFA (Loop Free Alternates) ([RFC5286]) and | |||
| remote LFA ([RFC7490]) as IP FRR techniques. The "fast-reroute" | remote LFA ([RFC7490]) as IP FRR techniques. The "fast-reroute" | |||
| container may be augmented by other models to support other IPFRR | container may be augmented by other models to support other IPFRR | |||
| flavors (MRT, TILFA ...). | flavors (MRT, TILFA ...). | |||
| The current version of the model supports activation of LFA and | The current version of the model supports activation of LFA and | |||
| remote LFA at interface only. The global "lfa" container is present | remote LFA at interface only. The global "lfa" container is present | |||
| but kept empty to allow augmentation with vendor specific properties | but kept empty to allow augmentation with vendor specific properties | |||
| like policies. | like policies. | |||
| Remote LFA is considered as a child of LFA. Remote LFA cannot be | Remote LFA is considered as a child of LFA. Remote LFA cannot be | |||
| skipping to change at page 20, line 23 ¶ | skipping to change at page 22, line 5 ¶ | |||
| 4. Notifications | 4. Notifications | |||
| The "ietf-isis" module introduces some notifications : | The "ietf-isis" module introduces some notifications : | |||
| database-overload: raised when overload condition is changed. | database-overload: raised when overload condition is changed. | |||
| lsp-too-large: raised when the system tries to propagate a too | lsp-too-large: raised when the system tries to propagate a too | |||
| large PDU. | large PDU. | |||
| if-state-change: raise when the state of an interface changes. | if-state-change: raised when the state of an interface changes. | |||
| corrupted-lsp-detected: raised when the system find that an LSP | corrupted-lsp-detected: raised when the system finds that an LSP | |||
| that was stored in memory has become corrupted. | that was stored in memory has become corrupted. | |||
| attempt-to-exceed-max-sequence: This notification is sent when the | attempt-to-exceed-max-sequence: This notification is sent when the | |||
| system wraps the 32-bit sequence counter of an LSP. | system wraps the 32-bit sequence counter of an LSP. | |||
| id-len-mismatch: This notification is sent when we receive a PDU | id-len-mismatch: This notification is sent when we receive a PDU | |||
| with a different value for the System ID length. | with a different value for the System ID length. | |||
| max-area-addresses-mismatch: This notification is sent when we | max-area-addresses-mismatch: This notification is sent when we | |||
| receive a PDU with a different value for the Maximum Area | receive a PDU with a different value for the Maximum Area | |||
| skipping to change at page 21, line 32 ¶ | skipping to change at page 23, line 12 ¶ | |||
| adjacency-state-change: This notification is sent when an IS-IS | adjacency-state-change: This notification is sent when an IS-IS | |||
| adjacency moves to Up state or to Down state. | adjacency moves to Up state or to Down state. | |||
| lsp-received: This notification is sent when a LSP is received. | lsp-received: This notification is sent when a LSP is received. | |||
| lsp-generation: This notification is sent when a LSP is | lsp-generation: This notification is sent when a LSP is | |||
| regenerated. | regenerated. | |||
| 5. Interaction with Other YANG Modules | 5. Interaction with Other YANG Modules | |||
| The "isis" configuration container augments the "/rt:routing/ | The "isis" container augments the "/rt:routing/rt:control-plane- | |||
| rt:control-plane-protocols/control-plane-protocol" container of the | protocols/control-plane-protocol" container of the ietf-routing | |||
| ietf-routing [RFC8349] module by defining IS-IS specific parameters. | [RFC8349] module by defining IS-IS specific parameters. | |||
| The "isis" module augments "/if:interfaces/if:interface" defined by | The "isis" module augments "/if:interfaces/if:interface" defined by | |||
| [RFC8343] with ISO specific parameters. | [RFC8343] with ISO specific parameters. | |||
| The "isis" operational state container augments the "/rt:routing- | The "isis" operational state container augments the "/rt:routing- | |||
| state/rt:control-plane-protocols/control-plane-protocol" container of | state/rt:control-plane-protocols/control-plane-protocol" container of | |||
| the ietf-routing module by defining IS-IS specific operational | the ietf-routing module by defining IS-IS specific operational | |||
| states. | states. | |||
| Some IS-IS specific routes attributes are added to route objects of | Some IS-IS specific routes attributes are added to route objects of | |||
| skipping to change at page 22, line 10 ¶ | skipping to change at page 23, line 38 ¶ | |||
| The modules defined in this document use some groupings from ietf- | The modules defined in this document use some groupings from ietf- | |||
| keychain [RFC8177]. | keychain [RFC8177]. | |||
| The module reuses types from [RFC6991] and [RFC8294]. | The module reuses types from [RFC6991] and [RFC8294]. | |||
| To support BFD for fast detection, the module relies on | To support BFD for fast detection, the module relies on | |||
| [I-D.ietf-bfd-yang]. | [I-D.ietf-bfd-yang]. | |||
| 6. IS-IS YANG Module | 6. IS-IS YANG Module | |||
| <CODE BEGINS> file "ietf-isis@2019-01-18.yang" | The following RFCs, drafts and external standards are not referenced | |||
| in the document text but are referenced in the ietf-isis.yang module: | ||||
| [ISO-10589], [RFC1195], [RFC5029], [RFC5130], [RFC5305], [RFC5306], | ||||
| [RFC5308], [RFC5880], [RFC5881], [RFC6119], [RFC6232], [RFC7794], | ||||
| [RFC7810], [RFC7917], [RFC8405]. | ||||
| <CODE BEGINS> file "ietf-isis@2019-01-21.yang" | ||||
| module ietf-isis { | module ietf-isis { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-isis"; | namespace "urn:ietf:params:xml:ns:yang:ietf-isis"; | |||
| prefix isis; | prefix isis; | |||
| import ietf-routing { | import ietf-routing { | |||
| prefix "rt"; | prefix "rt"; | |||
| reference "RFC 8349 - A YANG Data Model for Routing | reference "RFC 8349 - A YANG Data Model for Routing | |||
| Management (NMDA Version)"; | Management (NMDA Version)"; | |||
| } | } | |||
| import ietf-inet-types { | import ietf-inet-types { | |||
| prefix inet; | prefix inet; | |||
| reference "RFC 6991 - Common YANG Data Types"; | reference "RFC 6991 - Common YANG Data Types"; | |||
| } | } | |||
| skipping to change at page 24, line 7 ¶ | skipping to change at page 25, line 42 ¶ | |||
| "; | "; | |||
| description | description | |||
| "This YANG module defines the generic configuration and | "This YANG module defines the generic configuration and | |||
| operational state for the IS-IS protocol. | operational state for the IS-IS protocol. | |||
| It is intended that the module | It is intended that the module | |||
| will be extended by vendors to define vendor-specific | will be extended by vendors to define vendor-specific | |||
| IS-IS configuration parameters and policies, | IS-IS configuration parameters and policies, | |||
| for example route maps or route policies. | for example route maps or route policies. | |||
| This YANG model conforms to the Network Management | This YANG module conforms to the Network Management | |||
| Datastore Architecture (NDMA) as described in RFC 8242. | Datastore Architecture (NDMA) as described in RFC 8242. | |||
| Copyright (c) 2018 IETF Trust and the persons identified as | Copyright (c) 2018 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 | |||
| skipping to change at page 24, line 30 ¶ | skipping to change at page 26, line 17 ¶ | |||
| This version of this YANG module is part of RFC XXXX; | This version of this YANG module is part of RFC XXXX; | |||
| see the RFC itself for full legal notices. | see the RFC itself for full legal notices. | |||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', | |||
| 'SHALL NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', | 'SHALL NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', | |||
| 'NOT RECOMMENDED', 'MAY', and 'OPTIONAL' in this document | 'NOT RECOMMENDED', 'MAY', and 'OPTIONAL' in this document | |||
| are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] | are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] | |||
| when, and only when, they appear in all capitals, as shown here. | when, and only when, they appear in all capitals, as shown here. | |||
| "; | "; | |||
| revision 2019-01-18 { | revision 2019-01-21 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference "RFC XXXX"; | reference "RFC XXXX"; | |||
| } | } | |||
| /* Identities */ | /* Identities */ | |||
| identity isis { | identity isis { | |||
| base rt:routing-protocol; | base rt:routing-protocol; | |||
| description "Identity for the IS-IS routing protocol."; | description "Identity for the IS-IS routing protocol."; | |||
| skipping to change at page 74, line 12 ¶ | skipping to change at page 75, line 51 ¶ | |||
| description "minimum LSP bandwidth."; | description "minimum LSP bandwidth."; | |||
| } | } | |||
| leaf indication { | leaf indication { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "The indication whether the interface supports Standard | "The indication whether the interface supports Standard | |||
| or Arbitrary SONET/SDH."; | or Arbitrary SONET/SDH."; | |||
| } | } | |||
| } | } | |||
| container psc-specific { | container psc-specific { | |||
| when "../switching-capability >= 1 and ../switching-capability | when "../switching-capability >= 1 and | |||
| <= 4"; | ||||
| ../switching-capability <= 4"; | ||||
| description | description | |||
| "Switching Capability-specific information applicable | "Switching Capability-specific information applicable | |||
| when switching type is PSC1,PSC2,PSC3 or PSC4."; | when switching type is PSC1,PSC2,PSC3 or PSC4."; | |||
| leaf minimum-lsp-bandwidth { | leaf minimum-lsp-bandwidth { | |||
| type rt-types:bandwidth-ieee-float32; | type rt-types:bandwidth-ieee-float32; | |||
| description "minimum LSP bandwidth."; | description "minimum LSP bandwidth."; | |||
| } | } | |||
| leaf mtu { | leaf mtu { | |||
| type uint16; | type uint16; | |||
| skipping to change at page 100, line 14 ¶ | skipping to change at page 102, line 4 ¶ | |||
| points to the start of the TLV. If the problem is with | points to the start of the TLV. If the problem is with | |||
| the LSP header, the error-offset points to the errant | the LSP header, the error-offset points to the errant | |||
| byte"; | byte"; | |||
| } | } | |||
| leaf tlv-type { | leaf tlv-type { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "If the problem is a malformed TLV, the tlv-type is set | "If the problem is a malformed TLV, the tlv-type is set | |||
| to the type value of the suspicious TLV. Otherwise, | to the type value of the suspicious TLV. Otherwise, | |||
| this leaf is not present."; | this leaf is not present."; | |||
| } | } | |||
| description | description | |||
| "This notification is sent when the system receives an | "This notification is sent when the system receives an | |||
| LSP with a parse error. The notification generation must | LSP with a parse error. The notification generation must | |||
| be throttled with at least 5 seconds betweeen successive | be throttled with at least 5 seconds betweeen successive | |||
| notifications."; | notifications."; | |||
| } | } | |||
| notification adjacency-state-change { | notification adjacency-state-change { | |||
| uses notification-instance-hdr; | uses notification-instance-hdr; | |||
| uses notification-interface-hdr; | uses notification-interface-hdr; | |||
| leaf neighbor { | leaf neighbor { | |||
| type string { | type string { | |||
| skipping to change at page 103, line 34 ¶ | skipping to change at page 105, line 24 ¶ | |||
| Authors would like to thank Kiran Agrahara Sreenivasa, Dean | Authors would like to thank Kiran Agrahara Sreenivasa, Dean | |||
| Bogdanovic, Yingzhen Qu, Yi Yang, Jeff Tanstura for their major | Bogdanovic, Yingzhen Qu, Yi Yang, Jeff Tanstura for their major | |||
| contributions to the draft. | contributions to the draft. | |||
| 9. IANA Considerations | 9. IANA Considerations | |||
| The IANA is requested to assign two new URIs from the IETF XML | The IANA is requested to assign two new URIs from the IETF XML | |||
| registry ([RFC3688]). Authors are suggesting the following URI: | registry ([RFC3688]). Authors are suggesting the following URI: | |||
| URI: urn:ietf:params:xml:ns:yang:ietf-isis | URI: urn:ietf:params:xml:ns:yang:ietf-isis | |||
| Registrant Contact: IS-IS WG | Registrant Contact: The IESG | |||
| XML: N/A, the requested URI is an XML namespace | XML: N/A, the requested URI is an XML namespace | |||
| This document also requests one new YANG module name in the YANG | This document also requests one new YANG module name in the YANG | |||
| Module Names registry ([RFC6020]) with the following suggestion: | Module Names registry ([RFC6020]) with the following suggestion: | |||
| name: ietf-isis | name: ietf-isis | |||
| namespace: urn:ietf:params:xml:ns:yang:ietf-isis | namespace: urn:ietf:params:xml:ns:yang:ietf-isis | |||
| prefix: isis | prefix: isis | |||
| reference: RFC XXXX | reference: RFC XXXX | |||
| skipping to change at page 111, line 45 ¶ | skipping to change at page 113, line 31 ¶ | |||
| 2008, <https://www.rfc-editor.org/info/rfc5305>. | 2008, <https://www.rfc-editor.org/info/rfc5305>. | |||
| [RFC5306] Shand, M. and L. Ginsberg, "Restart Signaling for IS-IS", | [RFC5306] Shand, M. and L. Ginsberg, "Restart Signaling for IS-IS", | |||
| RFC 5306, DOI 10.17487/RFC5306, October 2008, | RFC 5306, DOI 10.17487/RFC5306, October 2008, | |||
| <https://www.rfc-editor.org/info/rfc5306>. | <https://www.rfc-editor.org/info/rfc5306>. | |||
| [RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308, | [RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308, | |||
| DOI 10.17487/RFC5308, October 2008, | DOI 10.17487/RFC5308, October 2008, | |||
| <https://www.rfc-editor.org/info/rfc5308>. | <https://www.rfc-editor.org/info/rfc5308>. | |||
| [RFC5443] Jork, M., Atlas, A., and L. Fang, "LDP IGP | ||||
| Synchronization", RFC 5443, DOI 10.17487/RFC5443, March | ||||
| 2009, <https://www.rfc-editor.org/info/rfc5443>. | ||||
| [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | |||
| (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, | (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, | |||
| <https://www.rfc-editor.org/info/rfc5880>. | <https://www.rfc-editor.org/info/rfc5880>. | |||
| [RFC5881] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | [RFC5881] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | |||
| (BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881, | (BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881, | |||
| DOI 10.17487/RFC5881, June 2010, | DOI 10.17487/RFC5881, June 2010, | |||
| <https://www.rfc-editor.org/info/rfc5881>. | <https://www.rfc-editor.org/info/rfc5881>. | |||
| [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | |||
| skipping to change at page 114, line 17 ¶ | skipping to change at page 115, line 46 ¶ | |||
| Back-Off Delay Algorithm for Link-State IGPs", RFC 8405, | Back-Off Delay Algorithm for Link-State IGPs", RFC 8405, | |||
| DOI 10.17487/RFC8405, June 2018, | DOI 10.17487/RFC8405, June 2018, | |||
| <https://www.rfc-editor.org/info/rfc8405>. | <https://www.rfc-editor.org/info/rfc8405>. | |||
| [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>. | |||
| 11.2. Informative References | 11.2. Informative References | |||
| [RFC5443] Jork, M., Atlas, A., and L. Fang, "LDP IGP | ||||
| Synchronization", RFC 5443, DOI 10.17487/RFC5443, March | ||||
| 2009, <https://www.rfc-editor.org/info/rfc5443>. | ||||
| [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | |||
| BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | |||
| <https://www.rfc-editor.org/info/rfc8340>. | <https://www.rfc-editor.org/info/rfc8340>. | |||
| Appendix A. Example of IS-IS configuration in XML | Appendix A. Example of IS-IS configuration in XML | |||
| This section gives an example of configuration of an IS-IS instance | This section gives an example of configuration of an IS-IS instance | |||
| on a device. The example is written in XML. | on a device. The example is written in XML. | |||
| <?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | |||
| <data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> | <data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> | |||
| <routing xmlns="urn:ietf:params:xml:ns:yang:ietf-routing"> | <routing xmlns="urn:ietf:params:xml:ns:yang:ietf-routing"> | |||
| <name>SLI</name> | <name>SLI</name> | |||
| <router-id>1.1.1.1</router-id> | <router-id>1.1.1.1</router-id> | |||
| <control-plane-protocols> | <control-plane-protocols> | |||
| <control-plane-protocol> | <control-plane-protocol> | |||
| <name>ISIS-example</name> | <name>ISIS-example</name> | |||
| <description/> | <description/> | |||
| <type> | <type> | |||
| <type xmlns:isis="urn:ietf:params:xml:ns:yang:ietf-isis"> | <type | |||
| xmlns:isis="urn:ietf:params:xml:ns:yang:ietf-isis"> | ||||
| isis:isis | isis:isis | |||
| </type> | </type> | |||
| </type> | </type> | |||
| <isis xmlns="urn:ietf:params:xml:ns:yang:ietf-isis"> | <isis xmlns="urn:ietf:params:xml:ns:yang:ietf-isis"> | |||
| <enable>true</enable> | <enable>true</enable> | |||
| <level-type>level-2</level-type> | <level-type>level-2</level-type> | |||
| <system-id>87FC.FCDF.4432</system-id> | <system-id>87FC.FCDF.4432</system-id> | |||
| <area-address>49.0001</area-address> | <area-address>49.0001</area-address> | |||
| <mpls> | <mpls> | |||
| <te-rid> | <te-rid> | |||
| skipping to change at page 115, line 31 ¶ | skipping to change at page 117, line 16 ¶ | |||
| <name>Loopback0</name> | <name>Loopback0</name> | |||
| <tag>200</tag> | <tag>200</tag> | |||
| <metric> | <metric> | |||
| <value>0</value> | <value>0</value> | |||
| </metric> | </metric> | |||
| <passive>true</passive> | <passive>true</passive> | |||
| </interface> | </interface> | |||
| <interface> | <interface> | |||
| <name>Eth1</name> | <name>Eth1</name> | |||
| <level-type>level-2</level-type> | <level-type>level-2</level-type> | |||
| <interface-type>point-to-point</interface-type> | ||||
| <interface-type>point-to-point</interface-type> | ||||
| <metric> | <metric> | |||
| <value>167890</value> | <value>167890</value> | |||
| </metric> | </metric> | |||
| </interface> | </interface> | |||
| </interfaces> | </interfaces> | |||
| </isis> | </isis> | |||
| </control-plane-protocol> | </control-plane-protocol> | |||
| </control-plane-protocols> | </control-plane-protocols> | |||
| </routing> | </routing> | |||
| <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> | <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> | |||
| <interface> | <interface> | |||
| <name>Loopback0</name> | <name>Loopback0</name> | |||
| <description/> | <description/> | |||
| <type xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type"> | <type | |||
| xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type"> | ||||
| ianaift:softwareLoopback | ianaift:softwareLoopback | |||
| </type> | </type> | |||
| <link-up-down-trap-enable>enabled</link-up-down-trap-enable> | ||||
| <link-up-down-trap-enable>enabled</link-up-down-trap-enable> | ||||
| <ipv4 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip"> | <ipv4 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip"> | |||
| <address> | <address> | |||
| <ip>192.0.2.1</ip> | <ip>192.0.2.1</ip> | |||
| <prefix-length>32</prefix-length> | <prefix-length>32</prefix-length> | |||
| </address> | </address> | |||
| </ipv4> | </ipv4> | |||
| <ipv6 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip"> | <ipv6 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip"> | |||
| <address> | <address> | |||
| <ip>2001:DB8::1</ip> | <ip>2001:DB8::1</ip> | |||
| <prefix-length>128</prefix-length> | <prefix-length>128</prefix-length> | |||
| </address> | </address> | |||
| </ipv6> | </ipv6> | |||
| </interface> | </interface> | |||
| <interface> | <interface> | |||
| <name>Eth1</name> | <name>Eth1</name> | |||
| <description/> | <description/> | |||
| <type xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type"> | <type | |||
| xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type"> | ||||
| ianaift:ethernetCsmacd | ianaift:ethernetCsmacd | |||
| </type> | </type> | |||
| <link-up-down-trap-enable>enabled</link-up-down-trap-enable> | ||||
| <link-up-down-trap-enable>enabled</link-up-down-trap-enable> | ||||
| <ipv4 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip"> | <ipv4 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip"> | |||
| <address> | <address> | |||
| <ip>198.51.100.1</ip> | <ip>198.51.100.1</ip> | |||
| <prefix-length>30</prefix-length> | <prefix-length>30</prefix-length> | |||
| </address> | </address> | |||
| </ipv4> | </ipv4> | |||
| <ipv6 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip"> | <ipv6 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip"> | |||
| <address> | <address> | |||
| <ip>2001:DB8:0:0:FF::1</ip> | <ip>2001:DB8:0:0:FF::1</ip> | |||
| <prefix-length>64</prefix-length> | <prefix-length>64</prefix-length> | |||
| End of changes. 34 change blocks. | ||||
| 676 lines changed or deleted | 689 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/ | ||||