| < draft-ietf-isis-yang-isis-cfg-19.txt | draft-ietf-isis-yang-isis-cfg-20.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: May 24, 2018 Arrcus, Inc | Expires: November 26, 2018 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 | |||
| November 20, 2017 | May 25, 2018 | |||
| YANG Data Model for IS-IS protocol | YANG Data Model for IS-IS protocol | |||
| draft-ietf-isis-yang-isis-cfg-19 | draft-ietf-isis-yang-isis-cfg-20 | |||
| 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", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
| skipping to change at page 1, line 44 ¶ | skipping to change at page 1, line 44 ¶ | |||
| 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 http://datatracker.ietf.org/drafts/current/. | Drafts is at http://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 24, 2018. | This Internet-Draft will expire on November 26, 2018. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2017 IETF Trust and the persons identified as the | Copyright (c) 2018 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 | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (http://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 29 ¶ | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 1.1. Tree diagram . . . . . . . . . . . . . . . . . . . . . . 3 | 1.1. Tree diagram . . . . . . . . . . . . . . . . . . . . . . 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 . . . . . . . . . . . . . . . . 10 | 2.2. Multitopology Parameters . . . . . . . . . . . . . . . . 10 | |||
| 2.3. Per-Level Parameters . . . . . . . . . . . . . . . . . . 10 | 2.3. Per-Level Parameters . . . . . . . . . . . . . . . . . . 10 | |||
| 2.4. Per-Interface Parameters . . . . . . . . . . . . . . . . 12 | 2.4. Per-Interface Parameters . . . . . . . . . . . . . . . . 12 | |||
| 2.5. Authentication Parameters . . . . . . . . . . . . . . . . 22 | 2.5. Authentication Parameters . . . . . . . . . . . . . . . . 23 | |||
| 2.6. IGP/LDP synchronization . . . . . . . . . . . . . . . . . 23 | 2.6. IGP/LDP synchronization . . . . . . . . . . . . . . . . . 23 | |||
| 2.7. ISO parameters . . . . . . . . . . . . . . . . . . . . . 23 | 2.7. ISO parameters . . . . . . . . . . . . . . . . . . . . . 23 | |||
| 2.8. IP FRR . . . . . . . . . . . . . . . . . . . . . . . . . 23 | 2.8. IP FRR . . . . . . . . . . . . . . . . . . . . . . . . . 23 | |||
| 2.9. Operational States . . . . . . . . . . . . . . . . . . . 23 | 2.9. Operational States . . . . . . . . . . . . . . . . . . . 24 | |||
| 3. RPC Operations . . . . . . . . . . . . . . . . . . . . . . . 24 | 3. RPC Operations . . . . . . . . . . . . . . . . . . . . . . . 24 | |||
| 4. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 25 | 4. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 25 | |||
| 5. Interaction with Other YANG Modules . . . . . . . . . . . . . 29 | 5. Interaction with Other YANG Modules . . . . . . . . . . . . . 26 | |||
| 6. IS-IS YANG Module . . . . . . . . . . . . . . . . . . . . . . 30 | 6. IS-IS YANG Module . . . . . . . . . . . . . . . . . . . . . . 26 | |||
| 7. Security Considerations . . . . . . . . . . . . . . . . . . . 104 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 101 | |||
| 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 105 | 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 102 | |||
| 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 105 | 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 102 | |||
| 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 105 | 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 103 | |||
| 11. Change log for ietf-isis YANG module . . . . . . . . . . . . 106 | 11. Change log for ietf-isis YANG module . . . . . . . . . . . . 103 | |||
| 11.1. From version -18 to version -19 . . . . . . . . . . . . 106 | 11.1. From version -19 to version -20 . . . . . . . . . . . . 103 | |||
| 11.2. From version -17 to version -18 . . . . . . . . . . . . 106 | 11.2. From version -18 to version -19 . . . . . . . . . . . . 103 | |||
| 11.3. From version -16 to version -17 . . . . . . . . . . . . 106 | 11.3. From version -17 to version -18 . . . . . . . . . . . . 103 | |||
| 11.4. From version -15 to version -16 . . . . . . . . . . . . 106 | 11.4. From version -16 to version -17 . . . . . . . . . . . . 104 | |||
| 11.5. From version -14 to version -15 . . . . . . . . . . . . 106 | 11.5. From version -15 to version -16 . . . . . . . . . . . . 104 | |||
| 11.6. From version -13 to version -14 . . . . . . . . . . . . 107 | 11.6. From version -14 to version -15 . . . . . . . . . . . . 104 | |||
| 11.7. From version -12 to version -13 . . . . . . . . . . . . 107 | 11.7. From version -13 to version -14 . . . . . . . . . . . . 104 | |||
| 11.8. From version -09 to version -12 . . . . . . . . . . . . 107 | 11.8. From version -12 to version -13 . . . . . . . . . . . . 105 | |||
| 11.9. From version -08 to version -09 . . . . . . . . . . . . 107 | 11.9. From version -09 to version -12 . . . . . . . . . . . . 105 | |||
| 11.10. From version -07 to version -08 . . . . . . . . . . . . 107 | 11.10. From version -08 to version -09 . . . . . . . . . . . . 105 | |||
| 11.11. From version -05 to version -07 . . . . . . . . . . . . 108 | 11.11. From version -07 to version -08 . . . . . . . . . . . . 105 | |||
| 11.12. From version -03 to version -05 . . . . . . . . . . . . 108 | 11.12. From version -05 to version -07 . . . . . . . . . . . . 105 | |||
| 11.13. From version -02 to version -03 . . . . . . . . . . . . 108 | 11.13. From version -03 to version -05 . . . . . . . . . . . . 106 | |||
| 11.14. From version -01 to version -02 . . . . . . . . . . . . 108 | 11.14. From version -02 to version -03 . . . . . . . . . . . . 106 | |||
| 11.15. From version -00 to version -01 . . . . . . . . . . . . 109 | 11.15. From version -01 to version -02 . . . . . . . . . . . . 106 | |||
| 12. Normative References . . . . . . . . . . . . . . . . . . . . 110 | 11.16. From version -00 to version -01 . . . . . . . . . . . . 107 | |||
| Appendix A. Example of IS-IS configuration in XML . . . . . . . 111 | 12. Normative References . . . . . . . . . . . . . . . . . . . . 107 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 113 | Appendix A. Example of IS-IS configuration in XML . . . . . . . 108 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 111 | ||||
| 1. Introduction | 1. Introduction | |||
| This document defines a YANG data model for IS-IS routing protocol. | This document defines a YANG data model for IS-IS routing 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. | |||
| 1.1. Tree diagram | 1.1. Tree diagram | |||
| skipping to change at page 4, line 9 ¶ | skipping to change at page 4, line 9 ¶ | |||
| 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 with specific IS-IS parameters. | ietf-routing module with specific IS-IS parameters. | |||
| The module is designed as per NMDA (Network Management Datastore | The module is designed as per NMDA (Network Management Datastore | |||
| Architecture). | Architecture). | |||
| 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 /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol | augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protoc | |||
| : | ol: | |||
| +--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 mpls | +--rw mpls | |||
| | +--rw ipv4-router-id? inet:ipv4-address {ipv4-router-id}? | | +--rw ipv4-router-id? inet:ipv4-address {ipv4-router-id}? | |||
| | +--rw ipv6-router-id? inet:ipv6-address {ipv6-router-id}? | | +--rw ipv6-router-id? inet:ipv6-address {ipv6-router-id}? | |||
| | +--rw ldp | | +--rw ldp | |||
| | ... | | ... | |||
| +--rw auto-cost {auto-cost}? | +--rw auto-cost {auto-cost}? | |||
| | +--rw reference-bandwidth? uint32 | | +--rw reference-bandwidth? uint32 | |||
| | +--rw enable? boolean | | +--rw enable? boolean | |||
| +--rw lsp-mtu? uint16 | +--rw lsp-mtu? uint16 | |||
| +--rw lsp-lifetime? uint16 | +--rw lsp-lifetime? uint16 | |||
| +--rw lsp-refresh? rt-types:timer-value-seconds16 {ls | +--rw lsp-refresh? rt-types:timer-value-seconds16 {l | |||
| p-refresh}? | sp-refresh}? | |||
| +--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 authentication | +--rw authentication | |||
| | +--rw (authentication-type)? | | +--rw (authentication-type)? | |||
| | | ... | | | ... | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | ... | | | ... | |||
| | +--rw level-2 | | +--rw level-2 | |||
| | ... | | ... | |||
| +--rw metric-type | +--rw metric-type | |||
| | +--rw value? enumeration | | +--rw value? enumeration | |||
| | +--rw level-1 | | +--rw level-1 | |||
| | | ... | | | ... | |||
| | +--rw level-2 | ||||
| | ... | ||||
| +--rw default-metric | ||||
| | +--rw value? wide-metric | ||||
| | +--rw level-1 | ||||
| | | ... | ||||
| | +--rw level-2 | ||||
| | ... | ||||
| +--rw afs {nlpid-control}? | ||||
| | +--rw af* [af] | ||||
| | ... | ||||
| +--rw preference | ||||
| | +--rw (granularity)? | ||||
| | ... | ||||
| +--rw overload | ||||
| | +--rw status? boolean | ||||
| +--rw overload-max-metric {overload-max-metric}? | ||||
| | +--rw timeout? rt-types:timer-value-seconds16 | ||||
| +--rw fast-reroute {fast-reroute}? | ||||
| | +--rw lfa {lfa}? | ||||
| | +--ro protected-routes | ||||
| | | ... | ||||
| | +--ro nonprotected-routes | ||||
| | | ... | ||||
| | +--ro protection-statistics* [frr-protection-method] | ||||
| | ... | ||||
| +--rw spf-control | ||||
| | +--rw ietf-spf-delay {ietf-spf-delay}? | ||||
| | ... | ||||
| +--rw topologies {multi-topology}? | ||||
| | +--rw topology* [name] | ||||
| | ... | ||||
| +--rw interfaces | ||||
| | +--rw interface* [name] | ||||
| | ... | ||||
| +--ro spf-log | ||||
| | +--ro event* [id] | ||||
| | ... | ||||
| +--ro lsp-log | ||||
| | +--ro event* [id] | ||||
| | ... | ||||
| +--ro hostnames | ||||
| | +--ro hostname* [system-id] | ||||
| | ... | ||||
| +--ro database | ||||
| | +--ro level-db* [level] | ||||
| | ... | ||||
| | +--rw level-2 | +--ro local-rib | |||
| | ... | | +--ro route* [prefix] | |||
| +--rw default-metric | | ... | |||
| | +--rw value? wide-metric | +--ro system-counters | |||
| | +--rw level-1 | +--ro level* [level] | |||
| | | ... | ... | |||
| | +--rw level-2 | ||||
| | ... | rpcs: | |||
| +--rw afs {nlpid-control}? | +---x clear-adjacency | |||
| | +--rw af* [af] | | +---w input | |||
| | ... | | +---w routing-protocol-instance-name instance-state-ref | |||
| +--rw preference | | +---w level? level | |||
| | +--rw (granularity)? | | +---w interface? string | |||
| | ... | +---x clear-database | |||
| +--rw overload | +---w input | |||
| | +--rw status? boolean | +---w routing-protocol-instance-name instance-state-ref | |||
| +--rw overload-max-metric {overload-max-metric}? | +---w level? level | |||
| | +--rw timeout? rt-types:timer-value-seconds16 | ||||
| +--rw fast-reroute {fast-reroute}? | notifications: | |||
| | +--rw lfa {lfa}? | +---n database-overload | |||
| | +--ro protected-routes | | +--ro routing-instance? string | |||
| | | ... | | +--ro routing-protocol-name? string | |||
| | +--ro nonprotected-routes | | +--ro isis-level? level | |||
| | | ... | | +--ro overload? enumeration | |||
| | +--ro protection-statistics* [frr-protection-method] | +---n lsp-too-large | |||
| | ... | | +--ro routing-instance? string | |||
| +--rw spf-control | | +--ro routing-protocol-name? string | |||
| | +--rw ietf-spf-delay {ietf-spf-delay}? | | +--ro isis-level? level | |||
| | ... | | +--ro interface-name? string | |||
| +--rw topologies {multi-topology}? | | +--ro interface-level? level | |||
| | +--rw topology* [name] | | +--ro extended-circuit-id? extended-circuit-id | |||
| | ... | | +--ro pdu-size? uint32 | |||
| +--rw interfaces | | +--ro lsp-id? lsp-id | |||
| | +--rw interface* [name] | +---n if-state-change | |||
| | ... | | +--ro routing-instance? string | |||
| +--ro spf-log | | +--ro routing-protocol-name? string | |||
| | +--ro event* [id] | | +--ro isis-level? level | |||
| | ... | | +--ro interface-name? string | |||
| +--ro lsp-log | | +--ro interface-level? level | |||
| | +--ro event* [id] | | +--ro extended-circuit-id? extended-circuit-id | |||
| | ... | | +--ro state? if-state-type | |||
| +--ro hostnames | +---n corrupted-lsp-detected | |||
| | +--ro hostname* [system-id] | | +--ro routing-instance? string | |||
| | ... | | +--ro routing-protocol-name? string | |||
| +--ro database | | +--ro isis-level? level | |||
| | +--ro level-db* [level] | | +--ro lsp-id? lsp-id | |||
| | ... | +---n attempt-to-exceed-max-sequence | |||
| +--ro local-rib | | +--ro routing-instance? string | |||
| | +--ro route* [prefix] | | +--ro routing-protocol-name? string | |||
| | ... | | +--ro isis-level? level | |||
| +--ro system-counters | | +--ro lsp-id? lsp-id | |||
| +--ro level* [level] | +---n id-len-mismatch | |||
| ... | | +--ro routing-instance? string | |||
| rpcs: | | +--ro routing-protocol-name? string | |||
| +---x clear-adjacency | | +--ro isis-level? level | |||
| | +--ro input | | +--ro interface-name? string | |||
| | +--ro routing-protocol-instance-name instance-state-ref | | +--ro interface-level? level | |||
| | +--ro level? level | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro interface? string | | +--ro pdu-field-len? uint8 | |||
| +---x clear-database | | +--ro raw-pdu? binary | |||
| +--ro input | +---n max-area-addresses-mismatch | |||
| +--ro routing-protocol-instance-name instance-state-ref | | +--ro routing-instance? string | |||
| +--ro level? level | | +--ro routing-protocol-name? string | |||
| notifications: | | +--ro isis-level? level | |||
| +---n database-overload | | +--ro interface-name? string | |||
| | +--ro routing-instance? string | | +--ro interface-level? level | |||
| | +--ro routing-protocol-name? string | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro isis-level? level | | +--ro max-area-addresses? uint8 | |||
| | +--ro overload? enumeration | | +--ro raw-pdu? binary | |||
| +---n lsp-too-large | +---n own-lsp-purge | |||
| | +--ro routing-instance? string | | +--ro routing-instance? string | |||
| | +--ro routing-protocol-name? string | | +--ro routing-protocol-name? string | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? string | | +--ro interface-name? string | |||
| | +--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 lsp-id? lsp-id | |||
| | +--ro lsp-id? lsp-id | +---n sequence-number-skipped | |||
| +---n if-state-change | | +--ro routing-instance? string | |||
| | +--ro routing-instance? string | | +--ro routing-protocol-name? string | |||
| | +--ro routing-protocol-name? string | | +--ro isis-level? level | |||
| | +--ro isis-level? level | | +--ro interface-name? string | |||
| | +--ro interface-name? string | | +--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 state? if-state-type | +---n authentication-type-failure | |||
| +---n corrupted-lsp-detected | | +--ro routing-instance? string | |||
| | +--ro routing-instance? string | | +--ro routing-protocol-name? string | |||
| | +--ro routing-protocol-name? string | | +--ro isis-level? level | |||
| | +--ro isis-level? level | | +--ro interface-name? string | |||
| | +--ro lsp-id? lsp-id | | +--ro interface-level? level | |||
| +---n attempt-to-exceed-max-sequence | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro routing-instance? string | | +--ro raw-pdu? binary | |||
| | +--ro routing-protocol-name? string | +---n authentication-failure | |||
| | +--ro isis-level? level | | +--ro routing-instance? string | |||
| | +--ro lsp-id? lsp-id | | +--ro routing-protocol-name? string | |||
| +---n id-len-mismatch | | +--ro isis-level? level | |||
| | +--ro routing-instance? string | | +--ro interface-name? string | |||
| | +--ro routing-protocol-name? string | | +--ro interface-level? level | |||
| | +--ro isis-level? level | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro interface-name? string | | +--ro raw-pdu? binary | |||
| | +--ro interface-level? level | +---n version-skew | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro routing-instance? string | |||
| | +--ro pdu-field-len? uint8 | | +--ro routing-protocol-name? string | |||
| | +--ro raw-pdu? binary | | +--ro isis-level? level | |||
| +---n max-area-addresses-mismatch | | +--ro interface-name? string | |||
| | +--ro routing-instance? string | | +--ro interface-level? level | |||
| | +--ro routing-protocol-name? string | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro isis-level? level | | +--ro protocol-version? uint8 | |||
| | +--ro interface-name? string | | +--ro raw-pdu? binary | |||
| | +--ro interface-level? level | +---n area-mismatch | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro routing-instance? string | |||
| | +--ro max-area-addresses? uint8 | | +--ro routing-protocol-name? string | |||
| | +--ro raw-pdu? binary | | +--ro isis-level? level | |||
| +---n own-lsp-purge | | +--ro interface-name? string | |||
| | +--ro routing-instance? string | | +--ro interface-level? level | |||
| | +--ro routing-protocol-name? string | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro isis-level? level | | +--ro raw-pdu? binary | |||
| | +--ro interface-name? string | +---n rejected-adjacency | |||
| | +--ro interface-level? level | | +--ro routing-instance? string | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro routing-protocol-name? string | |||
| | +--ro lsp-id? lsp-id | | +--ro isis-level? level | |||
| +---n sequence-number-skipped | | +--ro interface-name? string | |||
| | +--ro routing-instance? string | | +--ro interface-level? level | |||
| | +--ro routing-protocol-name? string | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro isis-level? level | | +--ro raw-pdu? binary | |||
| | +--ro interface-name? string | | +--ro reason? string | |||
| | +--ro interface-level? level | +---n protocols-supported-mismatch | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro routing-instance? string | |||
| | +--ro lsp-id? lsp-id | | +--ro routing-protocol-name? string | |||
| +---n authentication-type-failure | | +--ro isis-level? level | |||
| | +--ro routing-instance? string | | +--ro interface-name? string | |||
| | +--ro routing-protocol-name? string | | +--ro interface-level? level | |||
| | +--ro isis-level? level | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro interface-name? string | | +--ro raw-pdu? binary | |||
| | +--ro interface-level? level | | +--ro protocols* uint8 | |||
| | +--ro extended-circuit-id? extended-circuit-id | +---n lsp-error-detected | |||
| | +--ro raw-pdu? binary | | +--ro routing-instance? string | |||
| +---n authentication-failure | | +--ro routing-protocol-name? string | |||
| | +--ro routing-instance? string | | +--ro isis-level? level | |||
| | +--ro routing-protocol-name? string | | +--ro interface-name? string | |||
| | +--ro isis-level? level | | +--ro interface-level? level | |||
| | +--ro interface-name? string | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro interface-level? level | | +--ro lsp-id? lsp-id | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro raw-pdu? binary | |||
| | +--ro raw-pdu? binary | | +--ro error-offset? uint32 | |||
| +---n version-skew | | +--ro tlv-type? uint8 | |||
| | +--ro routing-instance? string | +---n adjacency-state-change | |||
| | +--ro routing-protocol-name? string | | +--ro routing-instance? string | |||
| | +--ro isis-level? level | | +--ro routing-protocol-name? string | |||
| | +--ro interface-name? string | | +--ro isis-level? level | |||
| | +--ro interface-level? level | | +--ro interface-name? string | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-level? level | |||
| | +--ro protocol-version? uint8 | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro neighbor? string | |||
| +---n area-mismatch | | +--ro neighbor-system-id? system-id | |||
| | +--ro routing-instance? string | | +--ro state? adj-state-type | |||
| | +--ro routing-protocol-name? string | | +--ro reason? string | |||
| | +--ro isis-level? level | +---n lsp-received | |||
| | +--ro interface-name? string | | +--ro routing-instance? string | |||
| | +--ro interface-level? level | | +--ro routing-protocol-name? string | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro isis-level? level | |||
| | +--ro raw-pdu? binary | | +--ro interface-name? string | |||
| +---n rejected-adjacency | | +--ro interface-level? level | |||
| | +--ro routing-instance? string | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro routing-protocol-name? string | | +--ro lsp-id? lsp-id | |||
| | +--ro isis-level? level | | +--ro sequence? uint32 | |||
| | +--ro interface-name? string | | +--ro received-timestamp? yang:timestamp | |||
| | +--ro interface-level? level | | +--ro neighbor-system-id? system-id | |||
| | +--ro extended-circuit-id? extended-circuit-id | +---n lsp-generation | |||
| | +--ro raw-pdu? binary | +--ro routing-instance? string | |||
| | +--ro reason? string | +--ro routing-protocol-name? string | |||
| +---n protocols-supported-mismatch | +--ro isis-level? level | |||
| | +--ro routing-instance? string | +--ro lsp-id? lsp-id | |||
| | +--ro routing-protocol-name? string | +--ro sequence? uint32 | |||
| | +--ro isis-level? level | +--ro send-timestamp? yang:timestamp | |||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro raw-pdu? binary | ||||
| | +--ro protocols* uint8 | ||||
| +---n lsp-error-detected | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro lsp-id? lsp-id | ||||
| | +--ro raw-pdu? binary | ||||
| | +--ro error-offset? uint32 | ||||
| | +--ro tlv-type? uint8 | ||||
| +---n adjacency-state-change | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro neighbor? string | ||||
| | +--ro neighbor-system-id? system-id | ||||
| | +--ro state? adj-state-type | ||||
| | +--ro reason? string | ||||
| +---n lsp-received | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro lsp-id? lsp-id | ||||
| | +--ro sequence? uint32 | ||||
| | +--ro received-timestamp? yang:timestamp | ||||
| | +--ro neighbor-system-id? system-id | ||||
| +---n lsp-generation | ||||
| +--ro routing-instance? string | ||||
| +--ro routing-protocol-name? string | ||||
| +--ro isis-level? level | ||||
| +--ro lsp-id? lsp-id | ||||
| +--ro sequence? uint32 | ||||
| +--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 container 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 this to support any additional | Additional modules may be created this to support any additional | |||
| skipping to change at page 12, line 29 ¶ | skipping to change at page 12, line 29 ¶ | |||
| defined in the "ietf-interfaces" YANG model. | defined in the "ietf-interfaces" YANG model. | |||
| 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? rt-types:timer-value-millis | | +--rw lsp-pacing-interval? rt-types:timer-value-milli | |||
| econds | seconds | |||
| | +--rw lsp-retransmit-interval? rt-types:timer-value-second | | +--rw lsp-retransmit-interval? rt-types:timer-value-secon | |||
| s16 | ds16 | |||
| | +--rw passive? boolean | | +--rw passive? boolean | |||
| | +--rw csnp-interval? rt-types:timer-value-second | | +--rw csnp-interval? rt-types:timer-value-secon | |||
| s16 | ds16 | |||
| | +--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? key-chain:key-chain-re | | | | | +--rw key-chain? key-chain:key-chain-r | |||
| f | ef | |||
| | | | +--:(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? key-chain:key-chain-re | | | | +--rw key-chain? key-chain:key-chain-r | |||
| f | ef | |||
| | | +--:(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 afs {nlpid-control}? | | | +--rw local-multiplier? multiplier | |||
| | | +--rw af* [af] | | | +--rw (interval-config-type)? | |||
| | | +--rw af iana-rt-types:address-family | | | +--:(tx-rx-intervals) | |||
| | +--rw mpls | | | | +--rw desired-min-tx-interval? uint32 | |||
| | | +--rw ldp | | | | +--rw required-min-rx-interval? uint32 | |||
| | | +--rw igp-sync? boolean {ldp-igp-sync}? | | | +--:(single-interval) {single-minimum-interval}? | |||
| | +--rw fast-reroute {fast-reroute}? | | | +--rw min-interval? uint32 | |||
| | | +--rw lfa {lfa}? | | +--rw afs {nlpid-control}? | |||
| | | +--rw candidate-disabled? boolean | | | +--rw af* [af] | |||
| | | +--rw enable? boolean | | | +--rw af iana-rt-types:address-family | |||
| | | +--rw remote-lfa {remote-lfa}? | | +--rw mpls | |||
| | | | +--rw enable? boolean | | | +--rw ldp | |||
| | | +--rw level-1 | | | +--rw igp-sync? boolean {ldp-igp-sync}? | |||
| | | | +--rw candidate-disabled? boolean | | +--rw fast-reroute {fast-reroute}? | |||
| | | | +--rw enable? boolean | | | +--rw lfa {lfa}? | |||
| | | | +--rw remote-lfa {remote-lfa}? | | | +--rw candidate-disabled? boolean | |||
| | | | +--rw enable? boolean | | | +--rw enable? boolean | |||
| | | +--rw level-2 | | | +--rw remote-lfa {remote-lfa}? | |||
| | | +--rw candidate-disabled? boolean | | | | +--rw enable? boolean | |||
| | | +--rw enable? boolean | | | +--rw level-1 | |||
| | | +--rw remote-lfa {remote-lfa}? | | | | +--rw candidate-disabled? boolean | |||
| | | +--rw enable? boolean | | | | +--rw enable? boolean | |||
| | +--rw topologies {multi-topology}? | | | | +--rw remote-lfa {remote-lfa}? | |||
| | | +--rw topology* [name] | | | | +--rw enable? boolean | |||
| | | +--rw name leafref | | | +--rw level-2 | |||
| | | +--rw metric | | | +--rw candidate-disabled? boolean | |||
| | | +--rw value? wide-metric | | | +--rw enable? boolean | |||
| | | +--rw level-1 | | | +--rw remote-lfa {remote-lfa}? | |||
| | | | +--rw value? wide-metric | | | +--rw enable? boolean | |||
| | | +--rw level-2 | | +--rw topologies {multi-topology}? | |||
| | | +--rw value? wide-metric | | | +--rw topology* [name] | |||
| | +--ro adjacencies | | | +--rw name -> ../../../../../../../../rt:ribs/ri | |||
| | | +--ro adjacency* | b/name | |||
| | | +--ro neighbor-systype? level | | | +--rw metric | |||
| | | +--ro neighbor-sysid? system-id | | | +--rw value? wide-metric | |||
| | | +--ro neighbor-extended-circuit-id? extended-circuit | | | +--rw level-1 | |||
| -id | | | | +--rw value? wide-metric | |||
| | | +--ro neighbor-snpa? snpa | | | +--rw level-2 | |||
| | | +--ro usage? level | | | +--rw value? wide-metric | |||
| | | +--ro hold-timer? rt-types:timer-v | | +--ro adjacencies | |||
| alue-seconds16 | | | +--ro adjacency* [] | |||
| | | +--ro neighbor-priority? uint8 | | | +--ro neighbor-systype? level | |||
| | | +--ro lastuptime? yang:timestamp | | | +--ro neighbor-sysid? system-id | |||
| | | +--ro state? adj-state-type | | | +--ro neighbor-extended-circuit-id? extended-circui | |||
| | +--ro event-counters | t-id | |||
| | | +--ro adjacency-changes? uint32 | | | +--ro neighbor-snpa? snpa | |||
| | | +--ro adjacency-number? uint32 | | | +--ro usage? level | |||
| | | +--ro init-fails? uint32 | | | +--ro hold-timer? rt-types:timer- | |||
| | | +--ro adjacency-rejects? uint32 | value-seconds16 | |||
| | | +--ro id-len-mismatch? uint32 | | | +--ro neighbor-priority? uint8 | |||
| | | +--ro max-area-addresses-mismatch? uint32 | | | +--ro lastuptime? yang:timestamp | |||
| | | +--ro authentication-type-fails? uint32 | | | +--ro state? adj-state-type | |||
| | | +--ro authentication-fails? uint32 | | +--ro event-counters | |||
| | | +--ro lan-dis-changes? uint32 | | | +--ro adjacency-changes? uint32 | |||
| | +--ro packet-counters | | | +--ro adjacency-number? uint32 | |||
| | +--ro level* [level] | | | +--ro init-fails? uint32 | |||
| | +--ro level level-number | | | +--ro adjacency-rejects? uint32 | |||
| | +--ro iih | | | +--ro id-len-mismatch? uint32 | |||
| | | +--ro in? uint32 | | | +--ro max-area-addresses-mismatch? uint32 | |||
| | | +--ro out? uint32 | | | +--ro authentication-type-fails? uint32 | |||
| | +--ro ish | | | +--ro authentication-fails? uint32 | |||
| | | +--ro in? uint32 | | | +--ro lan-dis-changes? uint32 | |||
| | | +--ro out? uint32 | | +--ro packet-counters | |||
| | +--ro esh | | +--ro level* [level] | |||
| | | +--ro in? uint32 | | +--ro level level-number | |||
| | | +--ro out? uint32 | | +--ro iih | |||
| | +--ro lsp | | | +--ro in? uint32 | |||
| | | +--ro in? uint32 | | | +--ro out? uint32 | |||
| | | +--ro out? uint32 | | +--ro ish | |||
| | +--ro psnp | | | +--ro in? uint32 | |||
| | | +--ro in? uint32 | | | +--ro out? uint32 | |||
| | | +--ro out? uint32 | | +--ro esh | |||
| | +--ro csnp | | | +--ro in? uint32 | |||
| | | +--ro in? uint32 | | | +--ro out? uint32 | |||
| | | +--ro out? uint32 | | +--ro lsp | |||
| | +--ro unknown | | | +--ro in? uint32 | |||
| | +--ro in? uint32 | | | +--ro out? uint32 | |||
| | +--ro out? uint32 | | +--ro psnp | |||
| +--ro spf-log | | | +--ro in? uint32 | |||
| | +--ro event* [id] | | | +--ro out? uint32 | |||
| | +--ro id uint32 | | +--ro csnp | |||
| | +--ro spf-type? enumeration | | | +--ro in? uint32 | |||
| | +--ro level? level-number | | | +--ro out? uint32 | |||
| | +--ro schedule-timestamp? yang:timestamp | | +--ro unknown | |||
| | +--ro start-timestamp? yang:timestamp | | +--ro in? uint32 | |||
| | +--ro end-timestamp? yang:timestamp | | +--ro out? uint32 | |||
| | +--ro trigger-lsp* [lsp] | +--ro spf-log | |||
| | +--ro lsp lsp-id | | +--ro event* [id] | |||
| | +--ro sequence? uint32 | | +--ro id uint32 | |||
| +--ro lsp-log | | +--ro spf-type? enumeration | |||
| | +--ro event* [id] | | +--ro level? level-number | |||
| | +--ro id uint32 | | +--ro schedule-timestamp? yang:timestamp | |||
| | +--ro level? level-number | | +--ro start-timestamp? yang:timestamp | |||
| | +--ro lsp | | +--ro end-timestamp? yang:timestamp | |||
| | | +--ro lsp? lsp-id | | +--ro trigger-lsp* [lsp] | |||
| | | +--ro sequence? uint32 | | +--ro lsp lsp-id | |||
| | +--ro received-timestamp? yang:timestamp | | +--ro sequence? uint32 | |||
| | +--ro change? identityref | +--ro lsp-log | |||
| +--ro hostnames | | +--ro event* [id] | |||
| | +--ro hostname* [system-id] | | +--ro id uint32 | |||
| | +--ro system-id system-id | | +--ro level? level-number | |||
| | +--ro hostname? string | | +--ro lsp | |||
| +--ro database | | | +--ro lsp? lsp-id | |||
| | +--ro level-db* [level] | | | +--ro sequence? uint32 | |||
| | +--ro level level-number | | +--ro received-timestamp? yang:timestamp | |||
| | +--ro lsp* [lsp-id] | | +--ro change? identityref | |||
| | +--ro decoded-completed? boolean | +--ro hostnames | |||
| | +--ro raw-data? yang:hex-string | | +--ro hostname* [system-id] | |||
| | +--ro lsp-id lsp-id | | +--ro system-id system-id | |||
| | +--ro checksum? uint16 | | +--ro hostname? string | |||
| | +--ro remaining-lifetime? uint16 | +--ro database | |||
| | +--ro sequence? uint32 | | +--ro level-db* [level] | |||
| | +--ro attributes? bits | | +--ro level level-number | |||
| | +--ro ipv4-addresses* inet:ipv4-address | | +--ro lsp* [lsp-id] | |||
| | +--ro ipv6-addresses* inet:ipv6-address | | +--ro decoded-completed? boolean | |||
| | +--ro ipv4-te-routerid? inet:ipv4-address | | +--ro raw-data? yang:hex-string | |||
| | +--ro ipv6-te-routerid? inet:ipv6-address | | +--ro lsp-id lsp-id | |||
| | +--ro protocol-supported* uint8 | | +--ro checksum? uint16 | |||
| | +--ro dynamic-hostname? string | | +--ro remaining-lifetime? uint16 | |||
| | +--ro authentication | | +--ro sequence? uint32 | |||
| | | +--ro authentication-type? string | | +--ro attributes? bits | |||
| | | +--ro authentication-key? string | | +--ro ipv4-addresses* inet:ipv4-address | |||
| | +--ro mt-entries | | +--ro ipv6-addresses* inet:ipv6-address | |||
| | | +--ro topology* | | +--ro ipv4-te-routerid? inet:ipv4-address | |||
| | | +--ro MT-ID? uint16 | | +--ro ipv6-te-routerid? inet:ipv6-address | |||
| | | +--ro attributes? bits | | +--ro protocol-supported* uint8 | |||
| | +--ro router-capabilities* | | +--ro dynamic-hostname? string | |||
| | | +--ro flags? bits | | +--ro authentication | |||
| | | +--ro node-tags {node-tag}? | | | +--ro authentication-type? string | |||
| | | | +--ro node-tag* | | | +--ro authentication-key? string | |||
| | | | +--ro tag? uint32 | | +--ro mt-entries | |||
| | | +--ro binary? binary | | | +--ro topology* [] | |||
| | +--ro is-neighbor | | | +--ro MT-ID? uint16 | |||
| | | +--ro neighbor* | | | +--ro attributes? bits | |||
| | | +--ro neighbor-id? system-id | | +--ro router-capabilities* [] | |||
| | | +--ro i-e? boolean | | | +--ro flags? bits | |||
| | | +--ro default-metric? std-metric | | | +--ro node-tags {node-tag}? | |||
| | | +--ro delay-metric | | | | +--ro node-tag* [] | |||
| | | | +--ro metric? std-metric | | | | +--ro tag? uint32 | |||
| | | | +--ro supported? boolean | | | +--ro binary? binary | |||
| | | +--ro expense-metric | | +--ro is-neighbor | |||
| | | | +--ro metric? std-metric | | | +--ro neighbor* [] | |||
| | | | +--ro supported? boolean | | | +--ro neighbor-id? system-id | |||
| | | +--ro error-metric | | | +--ro i-e? boolean | |||
| | | +--ro metric? std-metric | | | +--ro default-metric? std-metric | |||
| | | +--ro supported? boolean | | | +--ro delay-metric | |||
| | +--ro extended-is-neighbor | | | | +--ro metric? std-metric | |||
| | | +--ro neighbor* | | | | +--ro supported? boolean | |||
| | | +--ro neighbor-id? system-id | | | +--ro expense-metric | |||
| | | +--ro metric? wide-metric | | | | +--ro metric? std-metric | |||
| | +--ro ipv4-internal-reachability | | | | +--ro supported? boolean | |||
| | | +--ro prefixes* | | | +--ro error-metric | |||
| | | +--ro up-down? boolean | | | +--ro metric? std-metric | |||
| | | +--ro i-e? boolean | | | +--ro supported? boolean | |||
| | | +--ro ip-prefix? inet:ipv4-address | | +--ro extended-is-neighbor | |||
| | | +--ro prefix-len? uint8 | | | +--ro neighbor* [] | |||
| | | +--ro default-metric? std-metric | | | +--ro neighbor-id? system-id | |||
| | | +--ro delay-metric | | | +--ro metric? wide-metric | |||
| | | | +--ro metric? std-metric | | +--ro ipv4-internal-reachability | |||
| | | | +--ro supported? boolean | | | +--ro prefixes* [] | |||
| | | +--ro expense-metric | | | +--ro up-down? boolean | |||
| | | | +--ro metric? std-metric | | | +--ro i-e? boolean | |||
| | | | +--ro supported? boolean | | | +--ro ip-prefix? inet:ipv4-address | |||
| | | +--ro error-metric | | | +--ro prefix-len? uint8 | |||
| | | +--ro metric? std-metric | | | +--ro default-metric? std-metric | |||
| | | +--ro supported? boolean | | | +--ro delay-metric | |||
| | +--ro ipv4-external-reachability | | | | +--ro metric? std-metric | |||
| | | +--ro prefixes* | | | | +--ro supported? boolean | |||
| | | +--ro up-down? boolean | | | +--ro expense-metric | |||
| | | +--ro i-e? boolean | | | | +--ro metric? std-metric | |||
| | | +--ro ip-prefix? inet:ipv4-address | | | | +--ro supported? boolean | |||
| | | +--ro prefix-len? uint8 | | | +--ro error-metric | |||
| | | +--ro default-metric? std-metric | | | +--ro metric? std-metric | |||
| | | +--ro delay-metric | | | +--ro supported? boolean | |||
| | | | +--ro metric? std-metric | | +--ro ipv4-external-reachability | |||
| | | | +--ro supported? boolean | | | +--ro prefixes* [] | |||
| | | +--ro expense-metric | | | +--ro up-down? boolean | |||
| | | | +--ro metric? std-metric | | | +--ro i-e? boolean | |||
| | | | +--ro supported? boolean | | | +--ro ip-prefix? inet:ipv4-address | |||
| | | +--ro error-metric | | | +--ro prefix-len? uint8 | |||
| | | +--ro metric? std-metric | | | +--ro default-metric? std-metric | |||
| | | +--ro supported? boolean | | | +--ro delay-metric | |||
| | +--ro extended-ipv4-reachability | | | | +--ro metric? std-metric | |||
| | | +--ro prefixes* | | | | +--ro supported? boolean | |||
| | | +--ro up-down? boolean | | | +--ro expense-metric | |||
| | | +--ro ip-prefix? inet:ipv4-address | | | | +--ro metric? std-metric | |||
| | | +--ro prefix-len? uint8 | | | | +--ro supported? boolean | |||
| | | +--ro metric? wide-metric | | | +--ro error-metric | |||
| | | +--ro tag* uint32 | | | +--ro metric? std-metric | |||
| | | +--ro tag64* uint64 | | | +--ro supported? boolean | |||
| | | +--ro external-prefix-flag? boolean | | +--ro extended-ipv4-reachability | |||
| | | +--ro readvertisement-flag? boolean | | | +--ro prefixes* [] | |||
| | | +--ro node-flag? boolean | | | +--ro up-down? boolean | |||
| | | +--ro ipv4-source-router-id? inet:ipv4-address | | | +--ro ip-prefix? inet:ipv4-address | |||
| | | +--ro ipv6-source-router-id? inet:ipv6-address | | | +--ro prefix-len? uint8 | |||
| | +--ro mt-is-neighbor | | | +--ro metric? wide-metric | |||
| | | +--ro neighbor* | | | +--ro tag* uint32 | |||
| | | +--ro MT-ID? uint16 | | | +--ro tag64* uint64 | |||
| | | +--ro neighbor-id? system-id | | | +--ro external-prefix-flag? boolean | |||
| | | +--ro metric? wide-metric | | | +--ro readvertisement-flag? boolean | |||
| | +--ro mt-extended-ipv4-reachability | | | +--ro node-flag? boolean | |||
| | | +--ro prefixes* | | | +--ro ipv4-source-router-id? inet:ipv4-address | |||
| | | +--ro MT-ID? uint16 | | | +--ro ipv6-source-router-id? inet:ipv6-address | |||
| | | +--ro up-down? boolean | | +--ro mt-is-neighbor | |||
| | | +--ro ip-prefix? inet:ipv4-address | | | +--ro neighbor* [] | |||
| | | +--ro prefix-len? uint8 | | | +--ro MT-ID? uint16 | |||
| | | +--ro metric? wide-metric | | | +--ro neighbor-id? system-id | |||
| | | +--ro tag* uint32 | | | +--ro metric? wide-metric | |||
| | | +--ro tag64* uint64 | | +--ro mt-extended-ipv4-reachability | |||
| | | +--ro external-prefix-flag? boolean | | | +--ro prefixes* [] | |||
| | | +--ro readvertisement-flag? boolean | | | +--ro MT-ID? uint16 | |||
| | | +--ro node-flag? boolean | | | +--ro up-down? boolean | |||
| | | +--ro ipv4-source-router-id? inet:ipv4-address | | | +--ro ip-prefix? inet:ipv4-address | |||
| | | +--ro ipv6-source-router-id? inet:ipv6-address | | | +--ro prefix-len? uint8 | |||
| | +--ro mt-ipv6-reachability | | | +--ro metric? wide-metric | |||
| | | +--ro prefixes* | | | +--ro tag* uint32 | |||
| | | +--ro MT-ID? uint16 | | | +--ro tag64* uint64 | |||
| | | +--ro up-down? boolean | | | +--ro external-prefix-flag? boolean | |||
| | | +--ro ip-prefix? inet:ipv6-address | | | +--ro readvertisement-flag? boolean | |||
| | | +--ro prefix-len? uint8 | | | +--ro node-flag? boolean | |||
| | | +--ro metric? wide-metric | | | +--ro ipv4-source-router-id? inet:ipv4-address | |||
| | | +--ro tag* uint32 | | | +--ro ipv6-source-router-id? inet:ipv6-address | |||
| | | +--ro tag64* uint64 | | +--ro mt-ipv6-reachability | |||
| | | +--ro external-prefix-flag? boolean | | | +--ro prefixes* [] | |||
| | | +--ro readvertisement-flag? boolean | | | +--ro MT-ID? uint16 | |||
| | | +--ro node-flag? boolean | | | +--ro up-down? boolean | |||
| | | +--ro ipv4-source-router-id? inet:ipv4-address | | | +--ro ip-prefix? inet:ipv6-address | |||
| | | +--ro ipv6-source-router-id? inet:ipv6-address | | | +--ro prefix-len? uint8 | |||
| | +--ro ipv6-reachability | | | +--ro metric? wide-metric | |||
| | +--ro prefixes* | | | +--ro tag* uint32 | |||
| | +--ro up-down? boolean | | | +--ro tag64* uint64 | |||
| | +--ro ip-prefix? inet:ipv6-address | | | +--ro external-prefix-flag? boolean | |||
| | +--ro prefix-len? uint8 | | | +--ro readvertisement-flag? boolean | |||
| | +--ro metric? wide-metric | | | +--ro node-flag? boolean | |||
| | +--ro tag* uint32 | | | +--ro ipv4-source-router-id? inet:ipv4-address | |||
| | +--ro tag64* uint64 | | | +--ro ipv6-source-router-id? inet:ipv6-address | |||
| | +--ro external-prefix-flag? boolean | | +--ro ipv6-reachability | |||
| | +--ro readvertisement-flag? boolean | | +--ro prefixes* [] | |||
| | +--ro node-flag? boolean | | +--ro up-down? boolean | |||
| | +--ro ipv4-source-router-id? inet:ipv4-address | | +--ro ip-prefix? inet:ipv6-address | |||
| | +--ro ipv6-source-router-id? inet:ipv6-address | | +--ro prefix-len? uint8 | |||
| +--ro local-rib | | +--ro metric? wide-metric | |||
| | +--ro route* [prefix] | | +--ro tag* uint32 | |||
| | +--ro prefix inet:ip-prefix | | +--ro tag64* uint64 | |||
| | +--ro next-hops | | +--ro external-prefix-flag? boolean | |||
| | | +--ro next-hop* [next-hop] | | +--ro readvertisement-flag? boolean | |||
| | | +--ro outgoing-interface? if:interface-ref | | +--ro node-flag? boolean | |||
| | | +--ro next-hop inet:ip-address | | +--ro ipv4-source-router-id? inet:ipv4-address | |||
| | +--ro metric? uint32 | | +--ro ipv6-source-router-id? inet:ipv6-address | |||
| | +--ro level? level-number | +--ro local-rib | |||
| | +--ro route-tag? uint32 | | +--ro route* [prefix] | |||
| +--ro system-counters | | +--ro prefix inet:ip-prefix | |||
| +--ro level* [level] | | +--ro next-hops | |||
| +--ro level level-number | | | +--ro next-hop* [next-hop] | |||
| +--ro corrupted-lsps? uint32 | | | +--ro outgoing-interface? if:interface-ref | |||
| +--ro authentication-type-fails? uint32 | | | +--ro next-hop inet:ip-address | |||
| +--ro authentication-fails? uint32 | | +--ro metric? uint32 | |||
| +--ro database-overload? uint32 | | +--ro level? level-number | |||
| +--ro own-lsp-purge? uint32 | | +--ro route-tag? uint32 | |||
| +--ro manual-address-drop-from-area? uint32 | +--ro system-counters | |||
| +--ro max-sequence? uint32 | +--ro level* [level] | |||
| +--ro sequence-number-skipped? uint32 | +--ro level level-number | |||
| +--ro id-len-mismatch? uint32 | +--ro corrupted-lsps? uint32 | |||
| +--ro partition-changes? uint32 | +--ro authentication-type-fails? uint32 | |||
| +--ro lsp-errors? uint32 | +--ro authentication-fails? uint32 | |||
| +--ro spf-runs? uint32 | +--ro database-overload? uint32 | |||
| rpcs: | +--ro own-lsp-purge? uint32 | |||
| +---x clear-adjacency | +--ro manual-address-drop-from-area? uint32 | |||
| | +--ro input | +--ro max-sequence? uint32 | |||
| | +--ro routing-protocol-instance-name instance-state-ref | +--ro sequence-number-skipped? uint32 | |||
| | +--ro level? level | +--ro id-len-mismatch? uint32 | |||
| | +--ro interface? string | +--ro partition-changes? uint32 | |||
| +---x clear-database | +--ro lsp-errors? uint32 | |||
| +--ro input | +--ro spf-runs? uint32 | |||
| +--ro routing-protocol-instance-name instance-state-ref | ||||
| +--ro level? level | rpcs: | |||
| notifications: | +---x clear-adjacency | |||
| +---n database-overload | | +---w input | |||
| | +--ro routing-instance? string | | +---w routing-protocol-instance-name instance-state-ref | |||
| | +--ro routing-protocol-name? string | | +---w level? level | |||
| | +--ro isis-level? level | | +---w interface? string | |||
| | +--ro overload? enumeration | +---x clear-database | |||
| +---n lsp-too-large | +---w input | |||
| | +--ro routing-instance? string | +---w routing-protocol-instance-name instance-state-ref | |||
| | +--ro routing-protocol-name? string | +---w level? level | |||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | notifications: | |||
| | +--ro interface-level? level | +---n database-overload | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro routing-instance? string | |||
| | +--ro pdu-size? uint32 | | +--ro routing-protocol-name? string | |||
| | +--ro lsp-id? lsp-id | | +--ro isis-level? level | |||
| +---n if-state-change | | +--ro overload? enumeration | |||
| | +--ro routing-instance? string | +---n lsp-too-large | |||
| | +--ro routing-protocol-name? string | | +--ro routing-instance? string | |||
| | +--ro isis-level? level | | +--ro routing-protocol-name? string | |||
| | +--ro interface-name? string | | +--ro isis-level? level | |||
| | +--ro interface-level? level | | +--ro interface-name? string | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-level? level | |||
| | +--ro state? if-state-type | | +--ro extended-circuit-id? extended-circuit-id | |||
| +---n corrupted-lsp-detected | | +--ro pdu-size? uint32 | |||
| | +--ro routing-instance? string | | +--ro lsp-id? lsp-id | |||
| | +--ro routing-protocol-name? string | +---n if-state-change | |||
| | +--ro isis-level? level | | +--ro routing-instance? string | |||
| | +--ro lsp-id? lsp-id | | +--ro routing-protocol-name? string | |||
| +---n attempt-to-exceed-max-sequence | | +--ro isis-level? level | |||
| | +--ro routing-instance? string | | +--ro interface-name? string | |||
| | +--ro routing-protocol-name? string | | +--ro interface-level? level | |||
| | +--ro isis-level? level | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro lsp-id? lsp-id | | +--ro state? if-state-type | |||
| +---n id-len-mismatch | +---n corrupted-lsp-detected | |||
| | +--ro routing-instance? string | | +--ro routing-instance? string | |||
| | +--ro routing-protocol-name? string | | +--ro routing-protocol-name? string | |||
| | +--ro isis-level? level | | +--ro isis-level? level | |||
| | +--ro interface-name? string | | +--ro lsp-id? lsp-id | |||
| | +--ro interface-level? level | +---n attempt-to-exceed-max-sequence | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro routing-instance? string | |||
| | +--ro pdu-field-len? uint8 | | +--ro routing-protocol-name? string | |||
| | +--ro raw-pdu? binary | | +--ro isis-level? level | |||
| +---n max-area-addresses-mismatch | | +--ro lsp-id? lsp-id | |||
| | +--ro routing-instance? string | +---n id-len-mismatch | |||
| | +--ro routing-protocol-name? string | | +--ro routing-instance? string | |||
| | +--ro isis-level? level | | +--ro routing-protocol-name? string | |||
| | +--ro interface-name? string | | +--ro isis-level? level | |||
| | +--ro interface-level? level | | +--ro interface-name? string | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-level? level | |||
| | +--ro max-area-addresses? uint8 | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro pdu-field-len? uint8 | |||
| +---n own-lsp-purge | | +--ro raw-pdu? binary | |||
| | +--ro routing-instance? string | +---n max-area-addresses-mismatch | |||
| | +--ro routing-protocol-name? string | | +--ro routing-instance? string | |||
| | +--ro isis-level? level | | +--ro routing-protocol-name? string | |||
| | +--ro interface-name? string | | +--ro isis-level? level | |||
| | +--ro interface-level? level | | +--ro interface-name? string | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-level? level | |||
| | +--ro lsp-id? lsp-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| +---n sequence-number-skipped | | +--ro max-area-addresses? uint8 | |||
| | +--ro routing-instance? string | | +--ro raw-pdu? binary | |||
| | +--ro routing-protocol-name? string | +---n own-lsp-purge | |||
| | +--ro isis-level? level | | +--ro routing-instance? string | |||
| | +--ro interface-name? string | | +--ro routing-protocol-name? string | |||
| | +--ro interface-level? level | | +--ro isis-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-name? string | |||
| | +--ro lsp-id? lsp-id | | +--ro interface-level? level | |||
| +---n authentication-type-failure | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro routing-instance? string | | +--ro lsp-id? lsp-id | |||
| | +--ro routing-protocol-name? string | +---n sequence-number-skipped | |||
| | +--ro isis-level? level | | +--ro routing-instance? string | |||
| | +--ro interface-name? string | | +--ro routing-protocol-name? string | |||
| | +--ro interface-level? level | | +--ro isis-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-name? string | |||
| | +--ro raw-pdu? binary | | +--ro interface-level? level | |||
| +---n authentication-failure | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro routing-instance? string | | +--ro lsp-id? lsp-id | |||
| | +--ro routing-protocol-name? string | +---n authentication-type-failure | |||
| | +--ro isis-level? level | | +--ro routing-instance? string | |||
| | +--ro interface-name? string | | +--ro routing-protocol-name? string | |||
| | +--ro interface-level? level | | +--ro isis-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-name? string | |||
| | +--ro raw-pdu? binary | | +--ro interface-level? level | |||
| +---n version-skew | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro routing-instance? string | | +--ro raw-pdu? binary | |||
| | +--ro routing-protocol-name? string | +---n authentication-failure | |||
| | +--ro isis-level? level | | +--ro routing-instance? string | |||
| | +--ro interface-name? string | | +--ro routing-protocol-name? string | |||
| | +--ro interface-level? level | | +--ro isis-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-name? string | |||
| | +--ro protocol-version? uint8 | | +--ro interface-level? level | |||
| | +--ro raw-pdu? binary | | +--ro extended-circuit-id? extended-circuit-id | |||
| +---n area-mismatch | | +--ro raw-pdu? binary | |||
| | +--ro routing-instance? string | +---n version-skew | |||
| | +--ro routing-protocol-name? string | | +--ro routing-instance? string | |||
| | +--ro isis-level? level | | +--ro routing-protocol-name? string | |||
| | +--ro interface-name? string | | +--ro isis-level? level | |||
| | +--ro interface-level? level | | +--ro interface-name? string | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-level? level | |||
| | +--ro raw-pdu? binary | | +--ro extended-circuit-id? extended-circuit-id | |||
| +---n rejected-adjacency | | +--ro protocol-version? uint8 | |||
| | +--ro routing-instance? string | | +--ro raw-pdu? binary | |||
| | +--ro routing-protocol-name? string | +---n area-mismatch | |||
| | +--ro isis-level? level | | +--ro routing-instance? string | |||
| | +--ro interface-name? string | | +--ro routing-protocol-name? string | |||
| | +--ro interface-level? level | | +--ro isis-level? level | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-name? string | |||
| | +--ro raw-pdu? binary | | +--ro interface-level? level | |||
| | +--ro reason? string | | +--ro extended-circuit-id? extended-circuit-id | |||
| +---n protocols-supported-mismatch | | +--ro raw-pdu? binary | |||
| | +--ro routing-instance? string | +---n rejected-adjacency | |||
| | +--ro routing-protocol-name? string | | +--ro routing-instance? string | |||
| | +--ro isis-level? level | | +--ro routing-protocol-name? string | |||
| | +--ro interface-name? string | | +--ro isis-level? level | |||
| | +--ro interface-level? level | | +--ro interface-name? string | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-level? level | |||
| | +--ro raw-pdu? binary | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro protocols* uint8 | | +--ro raw-pdu? binary | |||
| +---n lsp-error-detected | | +--ro reason? string | |||
| | +--ro routing-instance? string | +---n protocols-supported-mismatch | |||
| | +--ro routing-protocol-name? string | | +--ro routing-instance? string | |||
| | +--ro isis-level? level | | +--ro routing-protocol-name? string | |||
| | +--ro interface-name? string | | +--ro isis-level? level | |||
| | +--ro interface-level? level | | +--ro interface-name? string | |||
| | +--ro extended-circuit-id? extended-circuit-id | | +--ro interface-level? level | |||
| | +--ro lsp-id? lsp-id | | +--ro extended-circuit-id? extended-circuit-id | |||
| | +--ro raw-pdu? binary | | +--ro raw-pdu? binary | |||
| | +--ro error-offset? uint32 | | +--ro protocols* uint8 | |||
| | +--ro tlv-type? uint8 | +---n lsp-error-detected | |||
| +---n adjacency-state-change | | +--ro routing-instance? string | |||
| | +--ro routing-instance? string | | +--ro routing-protocol-name? string | |||
| | +--ro routing-protocol-name? string | | +--ro isis-level? level | |||
| | +--ro isis-level? level | | +--ro interface-name? string | |||
| | +--ro interface-name? string | | +--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 neighbor? string | | +--ro raw-pdu? binary | |||
| | +--ro neighbor-system-id? system-id | | +--ro error-offset? uint32 | |||
| | +--ro state? adj-state-type | | +--ro tlv-type? uint8 | |||
| | +--ro reason? string | +---n adjacency-state-change | |||
| +---n lsp-received | | +--ro routing-instance? string | |||
| | +--ro routing-instance? string | | +--ro routing-protocol-name? string | |||
| | +--ro routing-protocol-name? string | | +--ro isis-level? level | |||
| | +--ro isis-level? level | | +--ro interface-name? string | |||
| | +--ro interface-name? string | | +--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 lsp-id? lsp-id | | +--ro neighbor-system-id? system-id | |||
| | +--ro sequence? uint32 | | +--ro state? adj-state-type | |||
| | +--ro received-timestamp? yang:timestamp | | +--ro reason? string | |||
| | +--ro neighbor-system-id? system-id | +---n lsp-received | |||
| +---n lsp-generation | | +--ro routing-instance? string | |||
| +--ro routing-instance? string | | +--ro routing-protocol-name? string | |||
| +--ro routing-protocol-name? string | | +--ro isis-level? level | |||
| +--ro isis-level? level | | +--ro interface-name? string | |||
| +--ro lsp-id? lsp-id | | +--ro interface-level? level | |||
| +--ro sequence? uint32 | | +--ro extended-circuit-id? extended-circuit-id | |||
| +--ro send-timestamp? yang:timestamp | | +--ro lsp-id? lsp-id | |||
| | +--ro sequence? uint32 | ||||
| | +--ro received-timestamp? yang:timestamp | ||||
| | +--ro neighbor-system-id? system-id | ||||
| +---n lsp-generation | ||||
| +--ro routing-instance? string | ||||
| +--ro routing-protocol-name? string | ||||
| +--ro isis-level? level | ||||
| +--ro lsp-id? lsp-id | ||||
| +--ro sequence? uint32 | ||||
| +--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 ([I-D.ietf-rtgwg-yang-key-chain]). The IS-IS module | chain module ([I-D.ietf-rtgwg-yang-key-chain]). The IS-IS module | |||
| imports the "ietf-key-chain" module and reuses some groupings to | imports the "ietf-key-chain" module and reuses some groupings to | |||
| allow global and per interface configuration of authentication. If a | allow global and per interface configuration of authentication. If a | |||
| global authentication is configured, an implementation SHOULD | global authentication is configured, an implementation SHOULD | |||
| authenticate PSNPs, CSNPs and LSPs with the authentication parameters | authenticate PSNPs, CSNPs and LSPs with the authentication parameters | |||
| supplied. The authentication of hello PDUs can be activated on a per | supplied. The authentication of hello PDUs can be activated on a per | |||
| skipping to change at page 24, line 41 ¶ | skipping to change at page 25, line 5 ¶ | |||
| 3. RPC Operations | 3. RPC Operations | |||
| The "ietf-isis" module defines two RPC operations: | The "ietf-isis" module defines two RPC operations: | |||
| o clear-isis-database: reset the content of a particular IS-IS | o clear-isis-database: reset the content of a particular IS-IS | |||
| database and restart database synchronization with the neighbors. | database and restart database synchronization with the neighbors. | |||
| o clear-isis-adjacency: restart a particular set of IS-IS | o clear-isis-adjacency: restart a particular set of IS-IS | |||
| adjacencies. | adjacencies. | |||
| rpcs: | ||||
| +---x clear-adjacency | ||||
| | +--ro input | ||||
| | +--ro routing-protocol-instance-name instance-state-ref | ||||
| | +--ro level? level | ||||
| | +--ro interface? string | ||||
| +---x clear-database | ||||
| +--ro input | ||||
| +--ro routing-protocol-instance-name instance-state-ref | ||||
| +--ro level? level | ||||
| 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. | |||
| corrupted-lsp-detected : raised when the system find that an LSP | corrupted-lsp-detected : raised when the system find that an LSP | |||
| skipping to change at page 26, line 20 ¶ | skipping to change at page 26, line 20 ¶ | |||
| receives a LSP with a parse error. | receives a LSP with a parse error. | |||
| adjacency-change : This notification is sent when an IS-IS | adjacency-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. | |||
| notifications: | ||||
| +---n database-overload | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro overload? enumeration | ||||
| +---n lsp-too-large | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro pdu-size? uint32 | ||||
| | +--ro lsp-id? lsp-id | ||||
| +---n if-state-change | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro state? if-state-type | ||||
| +---n corrupted-lsp-detected | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro lsp-id? lsp-id | ||||
| +---n attempt-to-exceed-max-sequence | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro lsp-id? lsp-id | ||||
| +---n id-len-mismatch | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro pdu-field-len? uint8 | ||||
| | +--ro raw-pdu? binary | ||||
| +---n max-area-addresses-mismatch | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro max-area-addresses? uint8 | ||||
| | +--ro raw-pdu? binary | ||||
| +---n own-lsp-purge | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro lsp-id? lsp-id | ||||
| +---n sequence-number-skipped | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro lsp-id? lsp-id | ||||
| +---n authentication-type-failure | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro raw-pdu? binary | ||||
| +---n authentication-failure | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro raw-pdu? binary | ||||
| +---n version-skew | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro protocol-version? uint8 | ||||
| | +--ro raw-pdu? binary | ||||
| +---n area-mismatch | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro raw-pdu? binary | ||||
| +---n rejected-adjacency | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro raw-pdu? binary | ||||
| | +--ro reason? string | ||||
| +---n protocols-supported-mismatch | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro raw-pdu? binary | ||||
| | +--ro protocols* uint8 | ||||
| +---n lsp-error-detected | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro lsp-id? lsp-id | ||||
| | +--ro raw-pdu? binary | ||||
| | +--ro error-offset? uint32 | ||||
| | +--ro tlv-type? uint8 | ||||
| +---n adjacency-state-change | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro neighbor? string | ||||
| | +--ro neighbor-system-id? system-id | ||||
| | +--ro state? adj-state-type | ||||
| | +--ro reason? string | ||||
| +---n lsp-received | ||||
| | +--ro routing-instance? string | ||||
| | +--ro routing-protocol-name? string | ||||
| | +--ro isis-level? level | ||||
| | +--ro interface-name? string | ||||
| | +--ro interface-level? level | ||||
| | +--ro extended-circuit-id? extended-circuit-id | ||||
| | +--ro lsp-id? lsp-id | ||||
| | +--ro sequence? uint32 | ||||
| | +--ro received-timestamp? yang:timestamp | ||||
| | +--ro neighbor-system-id? system-id | ||||
| +---n lsp-generation | ||||
| +--ro routing-instance? string | ||||
| +--ro routing-protocol-name? string | ||||
| +--ro isis-level? level | ||||
| +--ro lsp-id? lsp-id | ||||
| +--ro sequence? uint32 | ||||
| +--ro send-timestamp? yang:timestamp | ||||
| 5. Interaction with Other YANG Modules | 5. Interaction with Other YANG Modules | |||
| The "isis" configuration container augments the "/rt:routing/ | The "isis" configuration container augments the "/rt:routing/ | |||
| rt:control-plane-protocols/control-plane-protocol" container of the | rt:control-plane-protocols/control-plane-protocol" container of the | |||
| ietf-routing [I-D.ietf-netmod-routing-cfg] module by defining IS-IS | ietf-routing [I-D.ietf-netmod-routing-cfg] module by defining IS-IS | |||
| specific parameters. | specific parameters. | |||
| The "isis" module augments "/if:interfaces/if:interface" with ISO | The "isis" module augments "/if:interfaces/if:interface" with ISO | |||
| specific parameters. | specific parameters. | |||
| skipping to change at page 30, line 10 ¶ | skipping to change at page 26, line 44 ¶ | |||
| Some IS-IS specific routes attributes are added to route objects of | Some IS-IS specific routes attributes are added to route objects of | |||
| the ietf-routing module by augmenting "/rt:routing- | the ietf-routing module by augmenting "/rt:routing- | |||
| state/rt:ribs/rt:rib/rt:routes/rt:route". | state/rt:ribs/rt:rib/rt:routes/rt:route". | |||
| The modules defined in this document use some groupings from ietf- | The modules defined in this document use some groupings from ietf- | |||
| keychain [I-D.ietf-rtgwg-yang-key-chain]. | keychain [I-D.ietf-rtgwg-yang-key-chain]. | |||
| 6. IS-IS YANG Module | 6. IS-IS YANG Module | |||
| <CODE BEGINS> file "ietf-isis@2017-11-20.yang" | <CODE BEGINS> file "ietf-isis@2018-05-25.yang" | |||
| module ietf-isis { | module ietf-isis { | |||
| 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 | ||||
| Management (NMDA Version)"; | ||||
| } | } | |||
| import ietf-inet-types { | import ietf-inet-types { | |||
| prefix inet; | prefix inet; | |||
| reference "RFC 6021 - Common YANG Data Types"; | ||||
| } | } | |||
| import ietf-yang-types { | import ietf-yang-types { | |||
| prefix yang; | prefix yang; | |||
| reference "RFC 6021 - Common YANG Data Types"; | ||||
| } | } | |||
| import ietf-interfaces { | import ietf-interfaces { | |||
| prefix "if"; | prefix "if"; | |||
| reference "RFC 8343 - A YANG Data Model for Interface | ||||
| Management (NDMA Version)"; | ||||
| } | } | |||
| import ietf-key-chain { | import ietf-key-chain { | |||
| prefix "key-chain"; | prefix "key-chain"; | |||
| reference "RFC 8177 - YANG Data Model for Key Chains"; | ||||
| } | } | |||
| import ietf-routing-types { | import ietf-routing-types { | |||
| prefix "rt-types"; | prefix "rt-types"; | |||
| reference "RFC 8291 - Common YANG Data Types for the | ||||
| Routing Area"; | ||||
| } | } | |||
| import iana-routing-types { | import iana-routing-types { | |||
| prefix "iana-rt-types"; | prefix "iana-rt-types"; | |||
| reference "RFC 8291 - Common YANG Data Types for the | ||||
| Routing Area"; | ||||
| } | ||||
| import ietf-bfd-types { | ||||
| prefix "bfd-types"; | ||||
| reference "RFC XXXX - YANG Data Model for Bidirectional | ||||
| Forwarding Detection (BFD)"; | ||||
| } | } | |||
| organization | organization | |||
| "IETF ISIS Working Group"; | "IETF IS-IS Working Group"; | |||
| contact | contact | |||
| "WG List: <mailto:isis-wg@ietf.org> | "WG List: <mailto:isis-wg@ietf.org> | |||
| Editor: Stephane Litkowski | Editor: Stephane Litkowski | |||
| <mailto:stephane.litkowski@orange.com> | <mailto:stephane.litkowski@orange.com> | |||
| Derek Yeung | Derek Yeung | |||
| <mailto:derek@arrcus.com> | <mailto:derek@arrcus.com> | |||
| Acee Lindem | Acee Lindem | |||
| skipping to change at page 31, line 28 ¶ | skipping to change at page 28, line 34 ¶ | |||
| <mailto:kkoushik@brocade.com> | <mailto:kkoushik@brocade.com> | |||
| Yingzhen Qu | Yingzhen Qu | |||
| <mailto:yiqu@cisco.com> | <mailto:yiqu@cisco.com> | |||
| Jeff Tantsura | Jeff Tantsura | |||
| <mailto:jefftant.ietf@gmail.com> | <mailto:jefftant.ietf@gmail.com> | |||
| "; | "; | |||
| description | description | |||
| "The YANG module defines a generic configuration model for | "The YANG module defines a generic configuration model for | |||
| ISIS common across all of the vendor implementations."; | IS-IS common across all of the vendor implementations."; | |||
| revision 2017-11-20 { | revision 2017-05-25 { | |||
| 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 ISIS routing protocol."; | description "Identity for the IS-IS routing protocol."; | |||
| } | } | |||
| identity isis-adjacency-change { | identity isis-adjacency-change { | |||
| description "Identity for the ISIS routing protocol | description "Identity for the IS-IS routing protocol | |||
| adjacency state."; | adjacency state."; | |||
| } | } | |||
| identity clear-isis-database { | identity clear-isis-database { | |||
| description "Identity for the ISIS routing protocol | description "Identity for the IS-IS routing protocol | |||
| database reset action."; | database reset action."; | |||
| } | } | |||
| identity clear-isis-adjacency { | identity clear-isis-adjacency { | |||
| description "Identity for the ISIS routing protocol | description "Identity for the IS-IS routing protocol | |||
| adjacency reset action."; | adjacency reset action."; | |||
| } | } | |||
| identity lsp-log-reason { | identity lsp-log-reason { | |||
| description "Base identity for an LSP change | description "Base identity for an LSP change | |||
| log reason."; | log reason."; | |||
| } | } | |||
| identity refresh { | identity refresh { | |||
| base lsp-log-reason; | base lsp-log-reason; | |||
| skipping to change at page 32, line 33 ¶ | skipping to change at page 29, line 38 ¶ | |||
| description | description | |||
| "Identity used when the LSP log reason is | "Identity used when the LSP log reason is | |||
| a change in the content of the LSP."; | a change in the content of the LSP."; | |||
| } | } | |||
| /* Feature definitions */ | /* Feature definitions */ | |||
| feature ietf-spf-delay { | feature ietf-spf-delay { | |||
| description | description | |||
| "Support of IETF SPF delay algorithm."; | "Support of IETF SPF delay algorithm."; | |||
| reference "RFC XXXX - SPF Back-off algorithm for link | ||||
| state IGPs"; | ||||
| } | } | |||
| feature bfd { | feature bfd { | |||
| description | description | |||
| "Support of BFD for IS-IS links."; | "Support for BFD detection of IS-IS neighbor reachability."; | |||
| reference "RFC 5880 - Bidirectional Forwarding Detection (BFD) | ||||
| RFC 5881 - Bidirectional Forwarding Detection | ||||
| (BFD) for IPv4 and IPv6 (Single Hop)"; | ||||
| } | } | |||
| feature key-chain { | feature key-chain { | |||
| description | description | |||
| "Support of keychain for authentication."; | "Support of keychain for authentication."; | |||
| } | ||||
| feature segment-routing { | ||||
| description | ||||
| "Support of segment-routing."; | ||||
| } | } | |||
| feature node-flag { | feature node-flag { | |||
| description | description | |||
| "Support of node-flag advertisement | "Support of node-flag advertisement | |||
| as prefix attribute"; | as prefix attribute"; | |||
| reference "RFC7794 - IS-IS Prefix Attributes for | ||||
| Extended IP and IPv6 Reachability"; | ||||
| } | } | |||
| feature node-tag { | feature node-tag { | |||
| description | description | |||
| "Support of node tag."; | "Support of node tag."; | |||
| reference "RFC7917 - Advertising Node Administrative Tags | ||||
| in IS-IS"; | ||||
| } | } | |||
| feature ldp-igp-sync { | feature ldp-igp-sync { | |||
| description | description | |||
| "Support of RFC5443."; | "Support of synchronization between IS-IS and LDP."; | |||
| reference "RFC5443 - LDP IGP Synchronization"; | ||||
| } | } | |||
| feature fast-reroute { | feature fast-reroute { | |||
| description | description | |||
| "Support of IPFRR."; | "Support of IP Fast Reroute."; | |||
| } | } | |||
| feature nsr { | feature nsr { | |||
| description | description | |||
| "Support of | "Support of | |||
| Non Stop Routing."; | Non Stop Routing."; | |||
| } | } | |||
| feature lfa { | feature lfa { | |||
| description | description | |||
| "Support of Loop Free Alternates."; | "Support of Loop Free Alternates."; | |||
| reference "RFC5286 - Basic Specification of IP Fast-Reroute: | ||||
| Loop-free Alternates"; | ||||
| } | } | |||
| feature remote-lfa { | feature remote-lfa { | |||
| description | description | |||
| "Support of remote Loop Free Alternates."; | "Support of remote Loop Free Alternates."; | |||
| reference "RFC7490 - Remote Loop-Free Alternate Fast Reroute"; | ||||
| } | } | |||
| feature overload-max-metric { | feature overload-max-metric { | |||
| description | description | |||
| "Support of overload by setting | "Support of overload by setting | |||
| all links to max metric."; | all links to max metric."; | |||
| } | } | |||
| feature prefix-tag { | feature prefix-tag { | |||
| description | description | |||
| "Add 32bit tag to prefixes"; | "Add 32bit tag to prefixes"; | |||
| reference "RFC5130 - A Policy Control Mechanism in | ||||
| IS-IS Using Administrative Tags"; | ||||
| } | } | |||
| feature prefix-tag64 { | feature prefix-tag64 { | |||
| description | description | |||
| "Add 64bit tag to prefixes"; | "Add 64bit tag to prefixes"; | |||
| reference "RFC5130 - A Policy Control Mechanism in | ||||
| IS-IS Using Administrative Tags"; | ||||
| } | } | |||
| feature auto-cost { | feature auto-cost { | |||
| description | description | |||
| "Use an automated assignment of metrics."; | "Use an automated assignment of metrics."; | |||
| } | } | |||
| feature ipv4-router-id { | feature ipv4-router-id { | |||
| description | description | |||
| "Support of IPv4 router ID configuration under ISIS."; | "Support of IPv4 router ID configuration under IS-IS."; | |||
| } | } | |||
| feature ipv6-router-id { | feature ipv6-router-id { | |||
| description | description | |||
| "Support of IPv6 router ID configuration under ISIS."; | "Support of IPv6 router ID configuration under IS-IS."; | |||
| } | } | |||
| feature multi-topology { | feature multi-topology { | |||
| description | description | |||
| "Multitopology routing support."; | "Multitopology routing support."; | |||
| reference "RFC5120 - M-IS-IS: Multi Topology Routing in IS-IS"; | ||||
| } | } | |||
| feature nlpid-control { | feature nlpid-control { | |||
| description | description | |||
| "This feature controls the advertisement | "This feature controls the advertisement | |||
| of support NLPID within ISIS configuration."; | of support NLPID within IS-IS configuration."; | |||
| } | } | |||
| feature graceful-restart { | feature graceful-restart { | |||
| description | description | |||
| "Graceful restart support as per RFC5306."; | "Graceful restart support."; | |||
| reference "RFC5306 - Restart Signaling in IS-IS"; | ||||
| } | } | |||
| feature lsp-refresh { | feature lsp-refresh { | |||
| description | description | |||
| "Configuration of LSP refresh interval."; | "Configuration of LSP refresh interval."; | |||
| } | } | |||
| feature maximum-area-addresses { | feature maximum-area-addresses { | |||
| description | description | |||
| "Support of maximum-area-addresses config."; | "Support of maximum-area-addresses config."; | |||
| skipping to change at page 34, line 32 ¶ | skipping to change at page 32, line 4 ¶ | |||
| feature lsp-refresh { | feature lsp-refresh { | |||
| description | description | |||
| "Configuration of LSP refresh interval."; | "Configuration of LSP refresh interval."; | |||
| } | } | |||
| feature maximum-area-addresses { | feature maximum-area-addresses { | |||
| description | description | |||
| "Support of maximum-area-addresses config."; | "Support of maximum-area-addresses config."; | |||
| } | } | |||
| feature admin-control { | feature admin-control { | |||
| description | description | |||
| "Control administrative state of ISIS."; | "Control administrative state of IS-IS."; | |||
| } | } | |||
| /* Type definitions */ | /* Type definitions */ | |||
| typedef instance-state-ref { | typedef instance-state-ref { | |||
| type leafref { | type leafref { | |||
| path "/rt:routing-state/" | path "/rt:routing-state/" | |||
| +"rt:control-plane-protocols/rt:control-plane-protocol/" | +"rt:control-plane-protocols/rt:control-plane-protocol/" | |||
| +"rt:name"; | +"rt:name"; | |||
| } | } | |||
| description | description | |||
| "This type is used for leaves that reference state data of | "This type is used for leaves that reference state data of | |||
| an ISIS protocol instance."; | an IS-IS protocol instance."; | |||
| } | } | |||
| typedef circuit-id { | typedef circuit-id { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "This type defines the circuit ID | "This type defines the circuit ID | |||
| associated with an interface."; | associated with an interface."; | |||
| } | } | |||
| typedef extended-circuit-id { | typedef extended-circuit-id { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| skipping to change at page 36, line 6 ¶ | skipping to change at page 33, line 25 ¶ | |||
| description | description | |||
| "This enum describes L2 only capability."; | "This enum describes L2 only capability."; | |||
| } | } | |||
| enum "level-all" { | enum "level-all" { | |||
| description | description | |||
| "This enum describes both levels capability."; | "This enum describes both levels capability."; | |||
| } | } | |||
| } | } | |||
| default "level-all"; | default "level-all"; | |||
| description | description | |||
| "This type defines ISIS level of an object."; | "This type defines IS-IS level of an object."; | |||
| } | } | |||
| typedef adj-state-type { | typedef adj-state-type { | |||
| type enumeration { | type enumeration { | |||
| enum "Up" { | enum "up" { | |||
| description | description | |||
| "This state describes that | "This state describes that | |||
| adjacency is established."; | adjacency is established."; | |||
| } | } | |||
| enum "Down" { | enum "down" { | |||
| description | description | |||
| "This state describes that | "This state describes that | |||
| adjacency is NOT established."; | adjacency is NOT established."; | |||
| } | } | |||
| enum "Init" { | enum "init" { | |||
| description | description | |||
| "This state describes that | "This state describes that | |||
| adjacency is establishing."; | adjacency is establishing."; | |||
| } | } | |||
| enum "Failed" { | enum "failed" { | |||
| description | description | |||
| "This state describes that | "This state describes that | |||
| adjacency is failed."; | adjacency is failed."; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "This type defines states of an adjacency"; | "This type defines states of an adjacency"; | |||
| } | } | |||
| typedef if-state-type { | typedef if-state-type { | |||
| type enumeration { | type enumeration { | |||
| enum "Up" { | enum "up" { | |||
| description | description | |||
| "Up state."; | "Up state."; | |||
| } | } | |||
| enum "Down" { | enum "down" { | |||
| description | description | |||
| "Down state"; | "Down state"; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "This type defines states of an interface"; | "This type defines states of an interface"; | |||
| } | } | |||
| typedef level-number { | typedef level-number { | |||
| type uint8 { | type uint8 { | |||
| range "1 .. 2"; | range "1 .. 2"; | |||
| } | } | |||
| description | description | |||
| "This type defines a current ISIS level."; | "This type defines a current IS-IS level."; | |||
| } | } | |||
| typedef lsp-id { | typedef lsp-id { | |||
| type string { | type string { | |||
| pattern | pattern | |||
| '[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}\.[0-9A-Fa-f]' | '[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}\.[0-9A-Fa-f]' | |||
| +'{4}\.[0-9][0-9]-[0-9][0-9]'; | +'{4}\.[0-9][0-9]-[0-9][0-9]'; | |||
| } | } | |||
| description | description | |||
| "This type defines ISIS LSP ID using pattern, | "This type defines IS-IS LSP ID using pattern, | |||
| system id looks like : 0143.0438.AeF0.02-01"; | system id looks like : 0143.0438.AeF0.02-01"; | |||
| } | } | |||
| typedef area-address { | typedef area-address { | |||
| type string { | type string { | |||
| pattern '[0-9A-Fa-f]{2}\.([0-9A-Fa-f]{4}\.){0,3}'; | pattern '[0-9A-Fa-f]{2}\.([0-9A-Fa-f]{4}\.){0,3}'; | |||
| } | } | |||
| description | description | |||
| "This type defines the area address format."; | "This type defines the area address format."; | |||
| } | } | |||
| skipping to change at page 37, line 46 ¶ | skipping to change at page 35, line 18 ¶ | |||
| "This type defines Subnetwork Point | "This type defines Subnetwork Point | |||
| of Attachement format."; | of Attachement format."; | |||
| } | } | |||
| typedef system-id { | typedef system-id { | |||
| type string { | type string { | |||
| pattern | pattern | |||
| '[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}'; | '[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}'; | |||
| } | } | |||
| description | description | |||
| "This type defines ISIS system id using pattern, | "This type defines IS-IS system id using pattern, | |||
| system id looks like : 0143.0438.AeF0"; | system id looks like : 0143.0438.AeF0"; | |||
| } | } | |||
| typedef wide-metric { | typedef wide-metric { | |||
| type uint32 { | type uint32 { | |||
| range "0 .. 16777215"; | range "0 .. 16777215"; | |||
| } | } | |||
| description | description | |||
| "This type defines wide style format | "This type defines wide style format | |||
| of ISIS metric."; | of IS-IS metric."; | |||
| } | } | |||
| typedef std-metric { | typedef std-metric { | |||
| type uint8 { | type uint8 { | |||
| range "0 .. 63"; | range "0 .. 63"; | |||
| } | } | |||
| description | description | |||
| "This type defines old style format | "This type defines old style format | |||
| of ISIS metric."; | of IS-IS metric."; | |||
| } | } | |||
| typedef mesh-group-state { | typedef mesh-group-state { | |||
| type enumeration { | type enumeration { | |||
| enum "meshInactive" { | enum "meshinactive" { | |||
| description | description | |||
| "Interface is not part of a mesh group."; | "Interface is not part of a mesh group."; | |||
| } | } | |||
| enum "meshSet" { | enum "meshset" { | |||
| description | description | |||
| "Interface is part of a mesh group."; | "Interface is part of a mesh group."; | |||
| } | } | |||
| enum "meshBlocked" { | enum "meshblocked" { | |||
| description | description | |||
| "LSPs must not be flooded over that interface."; | "LSPs must not be flooded over that interface."; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "This type describes meshgroup state of an interface"; | "This type describes meshgroup state of an interface"; | |||
| } | } | |||
| /* Grouping definitions for configuration and ops state */ | /* Grouping definitions for configuration and ops state */ | |||
| skipping to change at page 39, line 22 ¶ | skipping to change at page 36, line 40 ¶ | |||
| "Circuit ID of the neighbor"; | "Circuit ID of the neighbor"; | |||
| } | } | |||
| leaf neighbor-snpa { | leaf neighbor-snpa { | |||
| type snpa; | type snpa; | |||
| description | description | |||
| "SNPA of the neighbor"; | "SNPA of the neighbor"; | |||
| } | } | |||
| leaf usage { | leaf usage { | |||
| type level; | type level; | |||
| description | description | |||
| "How is the adjacency used ? | "Define the level(s) activated on the adjacency. | |||
| On a p2p link this might be level 1 and 2, | On a p2p link this might be level 1 and 2, | |||
| but on a LAN, the usage will be level 1 | but on a LAN, the usage will be level 1 | |||
| between peers at L1 or level 2 between | between peers at L1 or level 2 between | |||
| peers at L2."; | peers at L2."; | |||
| } | } | |||
| leaf hold-timer { | leaf hold-timer { | |||
| type rt-types:timer-value-seconds16; | type rt-types:timer-value-seconds16; | |||
| units seconds; | units seconds; | |||
| description | description | |||
| "The holding time in seconds for this | "The holding time in seconds for this | |||
| skipping to change at page 44, line 33 ¶ | skipping to change at page 42, line 4 ¶ | |||
| } | } | |||
| description | description | |||
| "Per AF statistics."; | "Per AF statistics."; | |||
| } | } | |||
| description | description | |||
| "Global protection statistics."; | "Global protection statistics."; | |||
| } | } | |||
| description | description | |||
| "IPFRR states."; | "IPFRR states."; | |||
| } | } | |||
| grouping notification-instance-hdr { | grouping notification-instance-hdr { | |||
| description | description | |||
| "This group describes common instance specific | "This group describes common instance specific | |||
| data for notifications."; | data for notifications."; | |||
| leaf routing-instance { | leaf routing-instance { | |||
| type string; | type string; | |||
| description | description | |||
| "Describes the name of the routing-instance instance."; | "Describes the name of the routing-instance instance."; | |||
| } | } | |||
| leaf routing-protocol-name { | leaf routing-protocol-name { | |||
| type string; | type string; | |||
| description | description | |||
| "Describes the name of the ISIS instance."; | "Describes the name of the IS-IS instance."; | |||
| } | } | |||
| leaf isis-level { | leaf isis-level { | |||
| type level; | type level; | |||
| description | description | |||
| "Describes the ISIS level of the instance."; | "Describes the IS-IS level of the instance."; | |||
| } | } | |||
| } | } | |||
| grouping notification-interface-hdr { | grouping notification-interface-hdr { | |||
| description | description | |||
| "This group describes common interface specific | "This group describes common interface specific | |||
| data for notifications."; | data for notifications."; | |||
| leaf interface-name { | leaf interface-name { | |||
| type string; | type string; | |||
| description | description | |||
| "Describes the name of the ISIS interface."; | "Describes the name of the IS-IS interface."; | |||
| } | } | |||
| leaf interface-level { | leaf interface-level { | |||
| type level; | type level; | |||
| description | description | |||
| "Describes the ISIS level of the interface."; | "Describes the IS-IS level of the interface."; | |||
| } | } | |||
| leaf extended-circuit-id { | leaf extended-circuit-id { | |||
| type extended-circuit-id; | type extended-circuit-id; | |||
| description | description | |||
| "Describes the extended circuit-id of the interface."; | "Describes the extended circuit-id of the interface."; | |||
| } | } | |||
| } | } | |||
| grouping route-content { | grouping route-content { | |||
| description | description | |||
| "This group add isis-specific route properties."; | "This group add isis-specific route properties."; | |||
| leaf metric { | leaf metric { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "This leaf describes ISIS metric of a route."; | "This leaf describes IS-IS metric of a route."; | |||
| } | } | |||
| leaf-list tag { | leaf-list tag { | |||
| type uint64; | type uint64; | |||
| description | description | |||
| "This leaf describes list of tags associated | "This leaf describes list of tags associated | |||
| with the route. The leaf describes both | with the route. The leaf describes both | |||
| 32bits and 64bits tags."; | 32bits and 64bits tags."; | |||
| } | } | |||
| leaf route-type { | leaf route-type { | |||
| type enumeration { | type enumeration { | |||
| skipping to change at page 46, line 32 ¶ | skipping to change at page 43, line 51 ¶ | |||
| enum l2-down-external { | enum l2-down-external { | |||
| description "Level 2 external route | description "Level 2 external route | |||
| and leaked to a lower level"; | and leaked to a lower level"; | |||
| } | } | |||
| enum l1-down-external { | enum l1-down-external { | |||
| description "Level 1 external route | description "Level 1 external route | |||
| and leaked to a lower level"; | and leaked to a lower level"; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "This leaf describes the type of ISIS route."; | "This leaf describes the type of IS-IS route."; | |||
| } | } | |||
| } | } | |||
| grouping admin-control { | grouping admin-control { | |||
| leaf enable { | leaf enable { | |||
| if-feature admin-control; | if-feature admin-control; | |||
| type boolean; | type boolean; | |||
| default true; | default true; | |||
| description | description | |||
| "Control the administrative | "Control the administrative | |||
| skipping to change at page 48, line 30 ¶ | skipping to change at page 45, line 50 ¶ | |||
| related to a single component failure."; | related to a single component failure."; | |||
| } | } | |||
| description | description | |||
| "Grouping for IETF SPF delay configuration."; | "Grouping for IETF SPF delay configuration."; | |||
| } | } | |||
| grouping ietf-spf-delay-state { | grouping ietf-spf-delay-state { | |||
| leaf current-state { | leaf current-state { | |||
| type enumeration { | type enumeration { | |||
| enum "QUIET" { | enum "quiet" { | |||
| description "QUIET state"; | description "QUIET state"; | |||
| } | } | |||
| enum "SHORT_WAIT" { | enum "short-wait" { | |||
| description "SHORT_WAIT state"; | description "SHORT_WAIT state"; | |||
| } | } | |||
| enum "LONG_WAIT" { | enum "long-wait" { | |||
| description "LONG_WAIT state"; | description "LONG_WAIT state"; | |||
| } | } | |||
| } | } | |||
| config false; | config false; | |||
| description | description | |||
| "Current state of the algorithm."; | "Current SPF backoff algorithm state."; | |||
| } | } | |||
| leaf remaining-time-to-learn { | leaf remaining-time-to-learn { | |||
| type rt-types:timer-value-milliseconds; | type rt-types:timer-value-milliseconds; | |||
| units "msec"; | units "msec"; | |||
| config false; | config false; | |||
| description | description | |||
| "Remaining time until time-to-learn timer fires."; | "Remaining time until time-to-learn timer fires."; | |||
| } | } | |||
| leaf remaining-hold-down { | leaf remaining-hold-down { | |||
| type rt-types:timer-value-milliseconds; | type rt-types:timer-value-milliseconds; | |||
| skipping to change at page 50, line 30 ¶ | skipping to change at page 47, line 50 ¶ | |||
| leaf route-tag { | leaf route-tag { | |||
| type uint32; | type uint32; | |||
| description "Route tag for this route."; | description "Route tag for this route."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| grouping isis-node-tag-cfg { | grouping isis-node-tag-cfg { | |||
| description | description | |||
| "ISIS node tag config."; | "IS-IS node tag config."; | |||
| container node-tags { | container node-tags { | |||
| if-feature node-tag; | if-feature node-tag; | |||
| list node-tag { | list node-tag { | |||
| key tag; | key tag; | |||
| leaf tag { | leaf tag { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "Node tag value."; | "Node tag value."; | |||
| } | } | |||
| description | description | |||
| skipping to change at page 53, line 25 ¶ | skipping to change at page 50, line 45 ¶ | |||
| description | description | |||
| "This leaf defines the protocol | "This leaf defines the protocol | |||
| preference for external routes."; | preference for external routes."; | |||
| } | } | |||
| } | } | |||
| case coarse { | case coarse { | |||
| leaf default { | leaf default { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "This leaf defines the protocol | "This leaf defines the protocol | |||
| preference for all ISIS routes."; | preference for all IS-IS routes."; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "Choice for implementation of route preference."; | "Choice for implementation of route preference."; | |||
| } | } | |||
| description | description | |||
| "This grouping defines how route preference is configured."; | "This grouping defines how route preference is configured."; | |||
| } | } | |||
| grouping hello-authentication-cfg { | grouping hello-authentication-cfg { | |||
| skipping to change at page 56, line 17 ¶ | skipping to change at page 53, line 37 ¶ | |||
| description | description | |||
| "remote LFA configuration."; | "remote LFA configuration."; | |||
| } | } | |||
| description | description | |||
| "Grouping for LFA | "Grouping for LFA | |||
| interface configuration"; | interface configuration"; | |||
| } | } | |||
| grouping isis-global-cfg { | grouping isis-global-cfg { | |||
| description | description | |||
| "Defines the ISIS global configuration."; | "Defines the IS-IS global configuration."; | |||
| uses admin-control; | uses admin-control; | |||
| leaf level-type { | leaf level-type { | |||
| type level; | type level; | |||
| default "level-all"; | default "level-all"; | |||
| description | description | |||
| "This leaf describes the type of ISIS node. | "This leaf describes the type of IS-IS node. | |||
| A node can be level-1-only, level-2-only | A node can be level-1-only, level-2-only | |||
| or level-1-2. | or level-1-2. | |||
| "; | "; | |||
| } | } | |||
| leaf system-id { | leaf system-id { | |||
| type system-id; | type system-id; | |||
| description | description | |||
| "This leaf defines the system-id of the node."; | "This leaf defines the system-id of the node."; | |||
| } | } | |||
| skipping to change at page 61, line 38 ¶ | skipping to change at page 59, line 9 ¶ | |||
| } | } | |||
| grouping isis-if-cfg { | grouping isis-if-cfg { | |||
| description | description | |||
| "Grouping for interface cfg."; | "Grouping for interface cfg."; | |||
| leaf level-type { | leaf level-type { | |||
| type level; | type level; | |||
| default "level-all"; | default "level-all"; | |||
| description | description | |||
| "This leaf defines the associated ISIS | "This leaf defines the associated IS-IS | |||
| level of the interface."; | level of the interface."; | |||
| } | } | |||
| leaf lsp-pacing-interval { | leaf lsp-pacing-interval { | |||
| type rt-types:timer-value-milliseconds; | type rt-types:timer-value-milliseconds; | |||
| units "milliseconds"; | units "milliseconds"; | |||
| default 33; | default 33; | |||
| description | description | |||
| "This leaf defines the interval between | "This leaf defines the interval between | |||
| LSP transmissions in milli-seconds"; | LSP transmissions in milli-seconds"; | |||
| } | } | |||
| skipping to change at page 62, line 12 ¶ | skipping to change at page 59, line 32 ¶ | |||
| units "seconds"; | units "seconds"; | |||
| description | description | |||
| "This leaf defines the interval between | "This leaf defines the interval between | |||
| retransmission of LSP"; | retransmission of LSP"; | |||
| } | } | |||
| leaf passive { | leaf passive { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description | description | |||
| "This leaf defines if interface is in | "This leaf defines if interface is in | |||
| passive mode (ISIS not running, | passive mode (IS-IS not running, | |||
| but network is advertised)."; | but network is advertised)."; | |||
| } | } | |||
| leaf csnp-interval { | leaf csnp-interval { | |||
| type rt-types:timer-value-seconds16; | type rt-types:timer-value-seconds16; | |||
| units "seconds"; | units "seconds"; | |||
| default 10; | default 10; | |||
| description | description | |||
| "This leaf defines the interval of CSNP | "This leaf defines the interval of CSNP | |||
| messages."; | messages."; | |||
| } | } | |||
| container hello-padding { | container hello-padding { | |||
| leaf enable { | leaf enable { | |||
| type boolean; | type boolean; | |||
| default "true"; | default "true"; | |||
| description | description | |||
| "Status of Hello-padding activation. | "Status of Hello-padding activation. | |||
| By default, the implementation shall | By default, the implementation shall | |||
| pad HELLOs."; | pad HELLOs."; | |||
| } | } | |||
| description | description | |||
| "This container handles ISIS hello padding | "This container handles IS-IS hello padding | |||
| configuration."; | configuration."; | |||
| } | } | |||
| leaf mesh-group-enable { | leaf mesh-group-enable { | |||
| type mesh-group-state; | type mesh-group-state; | |||
| description | description | |||
| "Describes the mesh group state of | "Describes the mesh group state of | |||
| the interface."; | the interface."; | |||
| } | } | |||
| leaf mesh-group { | leaf mesh-group { | |||
| when "../mesh-group-enable = 'meshSet'" { | when "../mesh-group-enable = 'meshset'" { | |||
| description | description | |||
| "Only valid when mesh-group-enable | "Only valid when mesh-group-enable | |||
| equals meshSet"; | equals to meshset"; | |||
| } | } | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "Describes the mesh group ID of | "Describes the mesh group ID of | |||
| the interface."; | the interface."; | |||
| } | } | |||
| leaf interface-type { | leaf interface-type { | |||
| type interface-type; | type interface-type; | |||
| default "broadcast"; | default "broadcast"; | |||
| description | description | |||
| "This leaf defines the type of adjacency | "This leaf defines the type of adjacency | |||
| to be established on the interface. | to be established on the interface. | |||
| This is affecting the type of hello | This is affecting the type of hello | |||
| message that would be used."; | message that would be used."; | |||
| } | } | |||
| skipping to change at page 65, line 15 ¶ | skipping to change at page 62, line 34 ¶ | |||
| description "level-1 specific cfg"; | description "level-1 specific cfg"; | |||
| } | } | |||
| container level-2 { | container level-2 { | |||
| uses metric-cfg; | uses metric-cfg; | |||
| description "level-2 specific cfg"; | description "level-2 specific cfg"; | |||
| } | } | |||
| description "Metric configuration."; | description "Metric configuration."; | |||
| } | } | |||
| container bfd { | container bfd { | |||
| if-feature bfd; | if-feature bfd; | |||
| leaf enable { | description "BFD Client Configuration."; | |||
| type boolean; | uses bfd-types:client-cfg-parms; | |||
| default false; | ||||
| description " | reference "draft-ietf-bfd-yang-xx.txt: | |||
| Enables BFD on the interface | YANG Data Model for Bidirectional Forwarding | |||
| "; | Detection (BFD)"; | |||
| } | ||||
| description | ||||
| "BFD configuration."; | ||||
| } | } | |||
| container afs { | container afs { | |||
| if-feature nlpid-control; | if-feature nlpid-control; | |||
| list af { | list af { | |||
| key af; | key af; | |||
| leaf af { | leaf af { | |||
| type iana-rt-types:address-family; | type iana-rt-types:address-family; | |||
| description | description | |||
| "Address-family"; | "Address-family"; | |||
| skipping to change at page 66, line 4 ¶ | skipping to change at page 63, line 20 ¶ | |||
| container ldp { | container ldp { | |||
| leaf igp-sync { | leaf igp-sync { | |||
| if-feature ldp-igp-sync; | if-feature ldp-igp-sync; | |||
| type boolean; | type boolean; | |||
| default false; | default false; | |||
| description | description | |||
| "Enables IGP/LDP sync."; | "Enables IGP/LDP sync."; | |||
| } | } | |||
| description | description | |||
| "LDP protocol related configurations."; | "LDP protocol related configurations."; | |||
| } | } | |||
| description | description | |||
| "Container for MPLS specific configuration | "Container for MPLS specific configuration | |||
| for ISIS."; | for IS-IS."; | |||
| } | } | |||
| } | } | |||
| grouping isis-if-topologies-cfg { | grouping isis-if-topologies-cfg { | |||
| description | description | |||
| "ISIS interface topology cfg."; | "IS-IS interface topology cfg."; | |||
| container metric { | container metric { | |||
| uses metric-cfg; | uses metric-cfg; | |||
| container level-1 { | container level-1 { | |||
| uses metric-cfg; | uses metric-cfg; | |||
| description "level-1 specific cfg"; | description "level-1 specific cfg"; | |||
| } | } | |||
| container level-2 { | container level-2 { | |||
| uses metric-cfg; | uses metric-cfg; | |||
| description "level-2 specific cfg"; | description "level-2 specific cfg"; | |||
| } | } | |||
| skipping to change at page 66, line 38 ¶ | skipping to change at page 64, line 5 ¶ | |||
| grouping system-counters { | grouping system-counters { | |||
| container system-counters { | container system-counters { | |||
| config false; | config false; | |||
| list level { | list level { | |||
| key level; | key level; | |||
| leaf level { | leaf level { | |||
| type level-number; | type level-number; | |||
| description | description | |||
| "This leaf describes the ISIS level."; | "This leaf describes the IS-IS level."; | |||
| } | } | |||
| leaf corrupted-lsps { | leaf corrupted-lsps { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "Number of corrupted in-memory LSPs detected. | "Number of corrupted in-memory LSPs detected. | |||
| LSPs received from the wire with a bad | LSPs received from the wire with a bad | |||
| checksum are silently dropped and not counted. | checksum are silently dropped and not counted. | |||
| LSPs received from the wire with parse errors | LSPs received from the wire with parse errors | |||
| are counted by lsp-errors."; | are counted by lsp-errors."; | |||
| } | } | |||
| skipping to change at page 70, line 11 ¶ | skipping to change at page 67, line 27 ¶ | |||
| grouping packet-counters { | grouping packet-counters { | |||
| container packet-counters { | container packet-counters { | |||
| config false; | config false; | |||
| list level { | list level { | |||
| key level; | key level; | |||
| leaf level { | leaf level { | |||
| type level-number; | type level-number; | |||
| description | description | |||
| "This leaf describes the ISIS level."; | "This leaf describes the IS-IS level."; | |||
| } | } | |||
| container iih { | container iih { | |||
| leaf in { | leaf in { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "Received PDUs."; | "Received PDUs."; | |||
| } | } | |||
| leaf out { | leaf out { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| skipping to change at page 77, line 51 ¶ | skipping to change at page 75, line 20 ¶ | |||
| "This leaf describes the IPv4 prefix"; | "This leaf describes the IPv4 prefix"; | |||
| } | } | |||
| leaf prefix-len { | leaf prefix-len { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "This leaf describes the IPv4 prefix len in bits"; | "This leaf describes the IPv4 prefix len in bits"; | |||
| } | } | |||
| leaf default-metric { | leaf default-metric { | |||
| type std-metric; | type std-metric; | |||
| description | description | |||
| "This leaf describes the ISIS default metric value"; | "This leaf describes the IS-IS default metric value"; | |||
| } | } | |||
| container delay-metric { | container delay-metric { | |||
| leaf metric { | leaf metric { | |||
| type std-metric; | type std-metric; | |||
| description | description | |||
| "This leaf describes the ISIS delay metric value"; | "This leaf describes the IS-IS delay metric value"; | |||
| } | } | |||
| leaf supported { | leaf supported { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description | description | |||
| "This leaf describes if the metric is supported."; | "This leaf describes if the metric is supported."; | |||
| } | } | |||
| description | description | |||
| "This container defines the ISIS delay metric."; | "This container defines the IS-IS delay metric."; | |||
| } | } | |||
| container expense-metric { | container expense-metric { | |||
| leaf metric { | leaf metric { | |||
| type std-metric; | type std-metric; | |||
| description | description | |||
| "This leaf describes the ISIS expense metric value"; | "This leaf describes the IS-IS expense metric value"; | |||
| } | } | |||
| leaf supported { | leaf supported { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description | description | |||
| "This leaf describes if the metric is supported."; | "This leaf describes if the metric is supported."; | |||
| } | } | |||
| description | description | |||
| "This container defines the ISIS expense metric."; | "This container defines the IS-IS expense metric."; | |||
| } | } | |||
| container error-metric { | container error-metric { | |||
| leaf metric { | leaf metric { | |||
| type std-metric; | type std-metric; | |||
| description | description | |||
| "This leaf describes the ISIS error metric value"; | "This leaf describes the IS-IS error metric value"; | |||
| } | } | |||
| leaf supported { | leaf supported { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description | description | |||
| "This leaf describes if the metric is supported."; | "This leaf describes if the metric is supported."; | |||
| } | } | |||
| description | description | |||
| "This container defines the ISIS error metric."; | "This container defines the IS-IS error metric."; | |||
| } | } | |||
| } | } | |||
| grouping prefix-ipv4-extended { | grouping prefix-ipv4-extended { | |||
| description | description | |||
| "This group defines attributes of an | "This group defines attributes of an | |||
| IPv4 extended prefix."; | IPv4 extended prefix."; | |||
| leaf up-down { | leaf up-down { | |||
| type boolean; | type boolean; | |||
| description | description | |||
| "This leaf expresses the value of up/down bit."; | "This leaf expresses the value of up/down bit."; | |||
| skipping to change at page 79, line 30 ¶ | skipping to change at page 76, line 47 ¶ | |||
| } | } | |||
| leaf prefix-len { | leaf prefix-len { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "This leaf describes the IPv4 prefix len in bits"; | "This leaf describes the IPv4 prefix len in bits"; | |||
| } | } | |||
| leaf metric { | leaf metric { | |||
| type wide-metric; | type wide-metric; | |||
| description | description | |||
| "This leaf describes the ISIS metric value"; | "This leaf describes the IS-IS metric value"; | |||
| } | } | |||
| leaf-list tag { | leaf-list tag { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "This leaf describes a list of tags associated with | "This leaf describes a list of tags associated with | |||
| the prefix."; | the prefix."; | |||
| } | } | |||
| leaf-list tag64 { | leaf-list tag64 { | |||
| type uint64; | type uint64; | |||
| description | description | |||
| skipping to change at page 80, line 20 ¶ | skipping to change at page 77, line 37 ¶ | |||
| "This leaf describes the IPv6 prefix"; | "This leaf describes the IPv6 prefix"; | |||
| } | } | |||
| leaf prefix-len { | leaf prefix-len { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "This leaf describes the IPv4 prefix len in bits"; | "This leaf describes the IPv4 prefix len in bits"; | |||
| } | } | |||
| leaf metric { | leaf metric { | |||
| type wide-metric; | type wide-metric; | |||
| description | description | |||
| "This leaf describes the ISIS metric value"; | "This leaf describes the IS-IS metric value"; | |||
| } | } | |||
| leaf-list tag { | leaf-list tag { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "This leaf describes a list of tags associated with | "This leaf describes a list of tags associated with | |||
| the prefix."; | the prefix."; | |||
| } | } | |||
| leaf-list tag64 { | leaf-list tag64 { | |||
| type uint64; | type uint64; | |||
| description | description | |||
| skipping to change at page 80, line 35 ¶ | skipping to change at page 78, line 4 ¶ | |||
| "This leaf describes a list of tags associated with | "This leaf describes a list of tags associated with | |||
| the prefix."; | the prefix."; | |||
| } | } | |||
| leaf-list tag64 { | leaf-list tag64 { | |||
| type uint64; | type uint64; | |||
| description | description | |||
| "This leaf describes a list of 64-bit tags associated with | "This leaf describes a list of 64-bit tags associated with | |||
| the prefix."; | the prefix."; | |||
| } | } | |||
| uses prefix-attributes-extension; | uses prefix-attributes-extension; | |||
| } | } | |||
| grouping neighbor-extended { | grouping neighbor-extended { | |||
| description | description | |||
| "This group defines attributes of an | "This group defines attributes of an | |||
| ISIS extended neighbor."; | IS-IS extended neighbor."; | |||
| leaf neighbor-id { | leaf neighbor-id { | |||
| type system-id; | type system-id; | |||
| description | description | |||
| "This leaf describes the system-id of the neighbor."; | "This leaf describes the system-id of the neighbor."; | |||
| } | } | |||
| leaf metric { | leaf metric { | |||
| type wide-metric; | type wide-metric; | |||
| description | description | |||
| "This leaf describes the ISIS metric value"; | "This leaf describes the IS-IS metric value"; | |||
| } | } | |||
| } | } | |||
| grouping neighbor { | grouping neighbor { | |||
| description | description | |||
| "This group defines attributes of an | "This group defines attributes of an | |||
| ISIS standard neighbor."; | IS-IS standard neighbor."; | |||
| leaf neighbor-id { | leaf neighbor-id { | |||
| type system-id; | type system-id; | |||
| description | description | |||
| "This leaf describes the system-id of the neighbor."; | "This leaf describes the system-id of the neighbor."; | |||
| } | } | |||
| leaf i-e { | leaf i-e { | |||
| type boolean; | type boolean; | |||
| description | description | |||
| "This leaf expresses the value of I/E bit."; | "This leaf expresses the value of I/E bit."; | |||
| } | } | |||
| leaf default-metric { | leaf default-metric { | |||
| type std-metric; | type std-metric; | |||
| description | description | |||
| "This leaf describes the ISIS default metric value"; | "This leaf describes the IS-IS default metric value"; | |||
| } | } | |||
| container delay-metric { | container delay-metric { | |||
| leaf metric { | leaf metric { | |||
| type std-metric; | type std-metric; | |||
| description | description | |||
| "This leaf describes the ISIS delay metric value"; | "This leaf describes the IS-IS delay metric value"; | |||
| } | } | |||
| leaf supported { | leaf supported { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description | description | |||
| "This leaf describes if the metric is supported."; | "This leaf describes if the metric is supported."; | |||
| } | } | |||
| description | description | |||
| "This container defines the ISIS delay metric."; | "This container defines the IS-IS delay metric."; | |||
| } | } | |||
| container expense-metric { | container expense-metric { | |||
| leaf metric { | leaf metric { | |||
| type std-metric; | type std-metric; | |||
| description | description | |||
| "This leaf describes the ISIS delay expense value"; | "This leaf describes the IS-IS delay expense value"; | |||
| } | } | |||
| leaf supported { | leaf supported { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description | description | |||
| "This leaf describes if the metric is supported."; | "This leaf describes if the metric is supported."; | |||
| } | } | |||
| description | description | |||
| "This container defines the ISIS expense metric."; | "This container defines the IS-IS expense metric."; | |||
| } | } | |||
| container error-metric { | container error-metric { | |||
| leaf metric { | leaf metric { | |||
| type std-metric; | type std-metric; | |||
| description | description | |||
| "This leaf describes the ISIS error metric value"; | "This leaf describes the IS-IS error metric value"; | |||
| } | } | |||
| leaf supported { | leaf supported { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description | description | |||
| "This leaf describes if the metric is supported."; | "This leaf describes if the metric is supported."; | |||
| } | } | |||
| description | description | |||
| "This container defines the ISIS error metric."; | "This container defines the IS-IS error metric."; | |||
| } | } | |||
| } | } | |||
| grouping lsp-entry { | grouping lsp-entry { | |||
| description | description | |||
| "This group defines attributes of an | "This group defines attributes of an | |||
| ISIS LSP database entry."; | IS-IS LSP database entry."; | |||
| leaf decoded-completed { | leaf decoded-completed { | |||
| type boolean; | type boolean; | |||
| description | description | |||
| "The IS-IS body is fully decoded."; | "The IS-IS body is fully decoded."; | |||
| } | } | |||
| leaf raw-data { | leaf raw-data { | |||
| type yang:hex-string; | type yang:hex-string; | |||
| description | description | |||
| "The complete LSP in network byte | "The complete LSP in network byte | |||
| skipping to change at page 84, line 5 ¶ | skipping to change at page 81, line 23 ¶ | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "This leaf describes attributes of the LSP."; | "This leaf describes attributes of the LSP."; | |||
| } | } | |||
| leaf-list ipv4-addresses { | leaf-list ipv4-addresses { | |||
| type inet:ipv4-address; | type inet:ipv4-address; | |||
| description | description | |||
| "This leaf describes the IPv4 addresses of the node. | "This leaf describes the IPv4 addresses of the node. | |||
| ISIS reference is TLV 132."; | IS-IS reference is TLV 132."; | |||
| } | } | |||
| leaf-list ipv6-addresses { | leaf-list ipv6-addresses { | |||
| type inet:ipv6-address; | type inet:ipv6-address; | |||
| description | description | |||
| "This leaf describes the IPv6 interface | "This leaf describes the IPv6 interface | |||
| addresses of the node. | addresses of the node. | |||
| ISIS reference is TLV 232."; | IS-IS reference is TLV 232."; | |||
| } | } | |||
| leaf ipv4-te-routerid { | leaf ipv4-te-routerid { | |||
| type inet:ipv4-address; | type inet:ipv4-address; | |||
| description | description | |||
| "This leaf describes the IPv4 Traffic Engineering | "This leaf describes the IPv4 Traffic Engineering | |||
| router ID of the node. | router ID of the node. | |||
| ISIS reference is TLV 134."; | IS-IS reference is TLV 134."; | |||
| } | } | |||
| leaf ipv6-te-routerid { | leaf ipv6-te-routerid { | |||
| type inet:ipv6-address; | type inet:ipv6-address; | |||
| description | description | |||
| "This leaf describes the IPv6 Traffic Engineering | "This leaf describes the IPv6 Traffic Engineering | |||
| router ID of the node. | router ID of the node. | |||
| ISIS reference is TLV 140."; | IS-IS reference is TLV 140."; | |||
| } | } | |||
| leaf-list protocol-supported { | leaf-list protocol-supported { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "This leaf describes the list of | "This leaf describes the list of | |||
| supported protocols. | supported protocols. | |||
| ISIS reference is TLV 129."; | IS-IS reference is TLV 129."; | |||
| } | } | |||
| leaf dynamic-hostname { | leaf dynamic-hostname { | |||
| type string; | type string; | |||
| description | description | |||
| "This leaf describes the name of the node. | "This leaf describes the name of the node. | |||
| ISIS reference is TLV 137."; | IS-IS reference is TLV 137."; | |||
| } | } | |||
| container authentication { | container authentication { | |||
| leaf authentication-type { | leaf authentication-type { | |||
| type string; | type string; | |||
| description | description | |||
| "This leaf describes the authentication type | "This leaf describes the authentication type | |||
| to be used."; | to be used."; | |||
| } | } | |||
| leaf authentication-key { | leaf authentication-key { | |||
| type string; | type string; | |||
| description | description | |||
| "This leaf describes the authentication key | "This leaf describes the authentication key | |||
| to be used. For security reason, the | to be used. For security reason, the | |||
| authentication key MUST NOT be presented | authentication key MUST NOT be presented | |||
| in plaintext format. Authors recommends | in plaintext format. Authors recommends | |||
| to use MD5 hash to present the authentication-key."; | to use MD5 hash to present the authentication-key."; | |||
| } | } | |||
| description "This container describes authentication | description "This container describes authentication | |||
| information of the node. ISIS reference is TLV 10."; | information of the node. IS-IS reference is TLV 10."; | |||
| } | } | |||
| container mt-entries { | container mt-entries { | |||
| list topology { | list topology { | |||
| leaf MT-ID { | leaf MT-ID { | |||
| type uint16 { | type uint16 { | |||
| range "0 .. 4095"; | range "0 .. 4095"; | |||
| } | } | |||
| description | description | |||
| skipping to change at page 86, line 6 ¶ | skipping to change at page 83, line 24 ¶ | |||
| } | } | |||
| description | description | |||
| "This leaf describes attributes of the LSP | "This leaf describes attributes of the LSP | |||
| for the associated topology."; | for the associated topology."; | |||
| } | } | |||
| description | description | |||
| "List of topologies supported."; | "List of topologies supported."; | |||
| } | } | |||
| description | description | |||
| "This container describes the topology supported. | "This container describes the topology supported. | |||
| ISIS reference is TLV 229."; | IS-IS reference is TLV 229."; | |||
| } | } | |||
| list router-capabilities { | list router-capabilities { | |||
| leaf flags { | leaf flags { | |||
| type bits { | type bits { | |||
| bit flooding { | bit flooding { | |||
| position 0; | position 0; | |||
| description | description | |||
| "If the S bit is set(1), | "If the S bit is set(1), | |||
| the IS-IS Router CAPABILITY TLV | the IS-IS Router CAPABILITY TLV | |||
| skipping to change at page 87, line 4 ¶ | skipping to change at page 84, line 23 ¶ | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "Node tag value."; | "Node tag value."; | |||
| } | } | |||
| description | description | |||
| "List of tags."; | "List of tags."; | |||
| } | } | |||
| description | description | |||
| "Container for node tags."; | "Container for node tags."; | |||
| } | } | |||
| leaf binary { | leaf binary { | |||
| type binary; | type binary; | |||
| description | description | |||
| "This leaf describes the capability of the node. | "This leaf describes the capability of the node. | |||
| Format is binary according to the protocol encoding."; | Format is binary according to the protocol encoding."; | |||
| } | } | |||
| description | description | |||
| "This container describes the capabilities of the node. | "This container describes the capabilities of the node. | |||
| This container may be extended with detailed | This container may be extended with detailed | |||
| information. | information. | |||
| ISIS reference is TLV 242."; | IS-IS reference is TLV 242."; | |||
| } | } | |||
| container is-neighbor { | container is-neighbor { | |||
| list neighbor { | list neighbor { | |||
| uses neighbor; | uses neighbor; | |||
| description | description | |||
| "List of neighbors."; | "List of neighbors."; | |||
| } | } | |||
| description | description | |||
| "This leaf describes list of ISIS neighbors. | "This leaf describes list of IS-IS neighbors. | |||
| ISIS reference is TLV 2."; | IS-IS reference is TLV 2."; | |||
| } | } | |||
| container extended-is-neighbor { | container extended-is-neighbor { | |||
| list neighbor { | list neighbor { | |||
| uses neighbor-extended; | uses neighbor-extended; | |||
| description | description | |||
| "List of neighbors."; | "List of neighbors."; | |||
| } | } | |||
| description | description | |||
| "This container describes list of ISIS extended | "This container describes list of IS-IS extended | |||
| neighbors. | neighbors. | |||
| ISIS reference is TLV 22."; | IS-IS reference is TLV 22."; | |||
| } | } | |||
| container ipv4-internal-reachability { | container ipv4-internal-reachability { | |||
| list prefixes { | list prefixes { | |||
| uses prefix-ipv4-std; | uses prefix-ipv4-std; | |||
| description | description | |||
| "List of prefixes."; | "List of prefixes."; | |||
| } | } | |||
| description | description | |||
| "This container describes list of IPv4 internal | "This container describes list of IPv4 internal | |||
| reachability information. | reachability information. | |||
| ISIS reference is TLV 128."; | IS-IS reference is TLV 128."; | |||
| } | } | |||
| container ipv4-external-reachability { | container ipv4-external-reachability { | |||
| list prefixes { | list prefixes { | |||
| uses prefix-ipv4-std; | uses prefix-ipv4-std; | |||
| description | description | |||
| "List of prefixes."; | "List of prefixes."; | |||
| } | } | |||
| description | description | |||
| "This container describes list of IPv4 external | "This container describes list of IPv4 external | |||
| reachability information. | reachability information. | |||
| ISIS reference is TLV 130."; | IS-IS reference is TLV 130."; | |||
| } | } | |||
| container extended-ipv4-reachability { | container extended-ipv4-reachability { | |||
| list prefixes { | list prefixes { | |||
| uses prefix-ipv4-extended; | uses prefix-ipv4-extended; | |||
| description | description | |||
| "List of prefixes."; | "List of prefixes."; | |||
| } | } | |||
| description | description | |||
| "This container describes list of IPv4 extended | "This container describes list of IPv4 extended | |||
| reachability information. | reachability information. | |||
| ISIS reference is TLV 135."; | IS-IS reference is TLV 135."; | |||
| } | } | |||
| container mt-is-neighbor { | container mt-is-neighbor { | |||
| list neighbor { | list neighbor { | |||
| leaf MT-ID { | leaf MT-ID { | |||
| type uint16 { | type uint16 { | |||
| range "0 .. 4095"; | range "0 .. 4095"; | |||
| } | } | |||
| description | description | |||
| "This leaf defines the identifier | "This leaf defines the identifier | |||
| of a topology."; | of a topology."; | |||
| } | } | |||
| uses neighbor-extended; | uses neighbor-extended; | |||
| description | description | |||
| "List of neighbors."; | "List of neighbors."; | |||
| } | } | |||
| description | description | |||
| "This container describes list of ISIS multi-topology | "This container describes list of IS-IS multi-topology | |||
| neighbors. | neighbors. | |||
| ISIS reference is TLV 223."; | IS-IS reference is TLV 223."; | |||
| } | } | |||
| container mt-extended-ipv4-reachability { | container mt-extended-ipv4-reachability { | |||
| list prefixes { | list prefixes { | |||
| leaf MT-ID { | leaf MT-ID { | |||
| type uint16 { | type uint16 { | |||
| range "0 .. 4095"; | range "0 .. 4095"; | |||
| } | } | |||
| description | description | |||
| "This leaf defines the identifier | "This leaf defines the identifier | |||
| skipping to change at page 89, line 19 ¶ | skipping to change at page 86, line 39 ¶ | |||
| } | } | |||
| uses prefix-ipv4-extended; | uses prefix-ipv4-extended; | |||
| description | description | |||
| "List of prefixes."; | "List of prefixes."; | |||
| } | } | |||
| description | description | |||
| "This container describes list of IPv4 | "This container describes list of IPv4 | |||
| reachability information in multi-topology | reachability information in multi-topology | |||
| environment. | environment. | |||
| ISIS reference is TLV 235."; | IS-IS reference is TLV 235."; | |||
| } | } | |||
| container mt-ipv6-reachability { | container mt-ipv6-reachability { | |||
| list prefixes { | list prefixes { | |||
| leaf MT-ID { | leaf MT-ID { | |||
| type uint16 { | type uint16 { | |||
| range "0 .. 4095"; | range "0 .. 4095"; | |||
| } | } | |||
| description | description | |||
| "This leaf defines the identifier | "This leaf defines the identifier | |||
| of a topology."; | of a topology."; | |||
| } | } | |||
| uses prefix-ipv6-extended; | uses prefix-ipv6-extended; | |||
| description | description | |||
| "List of prefixes."; | "List of prefixes."; | |||
| } | } | |||
| description | description | |||
| "This container describes list of IPv6 | "This container describes list of IPv6 | |||
| reachability information in multi-topology | reachability information in multi-topology | |||
| environment. | environment. | |||
| ISIS reference is TLV 237."; | IS-IS reference is TLV 237."; | |||
| } | } | |||
| container ipv6-reachability { | container ipv6-reachability { | |||
| list prefixes { | list prefixes { | |||
| uses prefix-ipv6-extended; | uses prefix-ipv6-extended; | |||
| description | description | |||
| "List of prefixes."; | "List of prefixes."; | |||
| } | } | |||
| description | description | |||
| "This container describes list of IPv6 | "This container describes list of IPv6 | |||
| reachability information. | reachability information. | |||
| IS-IS reference is TLV 236."; | ||||
| ISIS reference is TLV 236."; | ||||
| } | } | |||
| } | } | |||
| grouping lsdb { | grouping lsdb { | |||
| container database { | container database { | |||
| config false; | config false; | |||
| list level-db { | list level-db { | |||
| key level; | key level; | |||
| leaf level { | leaf level { | |||
| skipping to change at page 90, line 31 ¶ | skipping to change at page 87, line 49 ¶ | |||
| key lsp-id; | key lsp-id; | |||
| uses lsp-entry; | uses lsp-entry; | |||
| description | description | |||
| "List of LSPs in LSDB."; | "List of LSPs in LSDB."; | |||
| } | } | |||
| description | description | |||
| "This container describes the list of LSPs | "This container describes the list of LSPs | |||
| in the level x database."; | in the level x database."; | |||
| } | } | |||
| description | description | |||
| "This container describes ISIS Link State | "This container describes IS-IS Link State | |||
| databases."; | databases."; | |||
| } | } | |||
| description | description | |||
| "Grouping for LSDB description."; | "Grouping for LSDB description."; | |||
| } | } | |||
| /* Augmentations */ | /* Augmentations */ | |||
| augment "/rt:routing/" | augment "/rt:routing/" | |||
| +"rt:ribs/rt:rib/rt:routes/rt:route" { | +"rt:ribs/rt:rib/rt:routes/rt:route" { | |||
| when "rt:source-protocol = 'isis:isis'" { | when "rt:source-protocol = 'isis:isis'" { | |||
| description "ISIS-specific route attributes."; | description "IS-IS-specific route attributes."; | |||
| } | } | |||
| uses route-content; | uses route-content; | |||
| description | description | |||
| "This augments route object in RIB with ISIS-specific | "This augments route object in RIB with IS-IS-specific | |||
| attributes."; | attributes."; | |||
| } | } | |||
| augment "/if:interfaces/if:interface" { | augment "/if:interfaces/if:interface" { | |||
| leaf clns-mtu { | leaf clns-mtu { | |||
| type uint16; | type uint16; | |||
| description | description | |||
| "Defines CLNS MTU of the interface."; | "Defines CLNS MTU of the interface."; | |||
| } | } | |||
| description "ISO interface config."; | description "ISO interface config."; | |||
| } | } | |||
| augment "/rt:routing/rt:control-plane-protocols/" | augment "/rt:routing/rt:control-plane-protocols/" | |||
| +"rt:control-plane-protocol" { | +"rt:control-plane-protocol" { | |||
| when "rt:type = 'isis:isis'" { | when "rt:type = 'isis:isis'" { | |||
| description | description | |||
| "This augment is only valid when routing protocol | "This augment is only valid when routing protocol | |||
| instance type is isis."; | instance type is isis."; | |||
| } | } | |||
| description | description | |||
| "This augments a routing protocol instance with ISIS | "This augments a routing protocol instance with IS-IS | |||
| specific parameters."; | specific parameters."; | |||
| container isis { | container isis { | |||
| must "count(area-address) > 0" { | must "count(area-address) > 0" { | |||
| error-message "At least one area-address | error-message "At least one area-address | |||
| must be configured."; | must be configured."; | |||
| description | description | |||
| "Enforce configuration of at least one area."; | "Enforce configuration of at least one area."; | |||
| } | } | |||
| uses isis-global-cfg; | uses isis-global-cfg; | |||
| container fast-reroute { | container fast-reroute { | |||
| if-feature fast-reroute; | if-feature fast-reroute; | |||
| uses fast-reroute-global-cfg; | uses fast-reroute-global-cfg; | |||
| uses fast-reroute-global-state; | uses fast-reroute-global-state; | |||
| description | description | |||
| "IPFRR."; | "IPFRR."; | |||
| } | } | |||
| container spf-control { | container spf-control { | |||
| container ietf-spf-delay { | container ietf-spf-delay { | |||
| skipping to change at page 93, line 22 ¶ | skipping to change at page 90, line 43 ¶ | |||
| description | description | |||
| "List of topologies."; | "List of topologies."; | |||
| } | } | |||
| description | description | |||
| "Container for multi-topology"; | "Container for multi-topology"; | |||
| } | } | |||
| uses adjacency-state; | uses adjacency-state; | |||
| uses event-counters; | uses event-counters; | |||
| uses packet-counters; | uses packet-counters; | |||
| description | description | |||
| "List of ISIS interfaces."; | "List of IS-IS interfaces."; | |||
| } | } | |||
| description | description | |||
| "This container defines ISIS interface specific | "This container defines IS-IS interface specific | |||
| configuration objects."; | configuration objects."; | |||
| } | } | |||
| uses spf-log; | uses spf-log; | |||
| uses lsp-log; | uses lsp-log; | |||
| uses hostname-db; | uses hostname-db; | |||
| uses lsdb; | uses lsdb; | |||
| uses local-rib; | uses local-rib; | |||
| uses system-counters; | uses system-counters; | |||
| description | description | |||
| "This container defines ISIS specific configuration | "This container defines IS-IS specific configuration | |||
| objects."; | objects."; | |||
| } | } | |||
| } | } | |||
| /* RPC methods */ | /* RPC methods */ | |||
| rpc clear-adjacency { | rpc clear-adjacency { | |||
| description | description | |||
| "This RPC request clears a particular | "This RPC request clears a particular | |||
| set of ISIS adjacencies. If the operation | set of IS-IS adjacencies. If the operation | |||
| fails for ISIS internal reason, then | fails for IS-IS internal reason, then | |||
| error-tag and error-app-tag should be set | error-tag and error-app-tag should be set | |||
| to a meaningful value."; | to a meaningful value."; | |||
| input { | input { | |||
| leaf routing-protocol-instance-name { | leaf routing-protocol-instance-name { | |||
| type instance-state-ref; | type instance-state-ref; | |||
| mandatory "true"; | mandatory "true"; | |||
| description | description | |||
| "Name of the ISIS protocol instance whose ISIS | "Name of the IS-IS protocol instance whose IS-IS | |||
| information is being queried. | information is being queried. | |||
| If the ISIS instance with name equal to the | If the IS-IS instance with name equal to the | |||
| value of this parameter doesn't exist, then this | value of this parameter doesn't exist, then this | |||
| operation SHALL fail with error-tag 'data-missing' | operation SHALL fail with error-tag 'data-missing' | |||
| and error-app-tag | and error-app-tag | |||
| 'routing-protocol-instance-not-found'."; | 'routing-protocol-instance-not-found'."; | |||
| } | } | |||
| leaf level { | leaf level { | |||
| type level; | type level; | |||
| description | description | |||
| "ISIS level of the adjacency to be cleared. | "IS-IS level of the adjacency to be cleared. | |||
| If ISIS level is level-1-2, both level 1 and level 2 | If IS-IS level is level-1-2, both level 1 and level 2 | |||
| adjacencies would be cleared. | adjacencies would be cleared. | |||
| If the value provided is different from the one | If the value provided is different from the one | |||
| authorized in the enum type, then this | authorized in the enum type, then this | |||
| operation SHALL fail with error-tag 'data-missing' | operation SHALL fail with error-tag 'data-missing' | |||
| and error-app-tag | and error-app-tag | |||
| 'bad-isis-level'. | 'bad-isis-level'. | |||
| "; | "; | |||
| } | } | |||
| leaf interface { | leaf interface { | |||
| type string; | type string; | |||
| description | description | |||
| "Name of the ISIS interface. | "Name of the IS-IS interface. | |||
| If the ISIS interface with name equal to the | If the IS-IS interface with name equal to the | |||
| value of this parameter doesn't exist, then this | value of this parameter doesn't exist, then this | |||
| operation SHALL fail with error-tag 'data-missing' | operation SHALL fail with error-tag 'data-missing' | |||
| and error-app-tag | and error-app-tag | |||
| 'isis-interface-not-found'."; | 'isis-interface-not-found'."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| rpc clear-database { | rpc clear-database { | |||
| description | description | |||
| "This RPC request clears a particular | "This RPC request clears a particular | |||
| ISIS database. If the operation | IS-IS database. If the operation | |||
| fails for ISIS internal reason, then | fails for IS-IS internal reason, then | |||
| error-tag and error-app-tag should be set | error-tag and error-app-tag should be set | |||
| to a meaningful value."; | to a meaningful value."; | |||
| input { | input { | |||
| leaf routing-protocol-instance-name { | leaf routing-protocol-instance-name { | |||
| type instance-state-ref; | type instance-state-ref; | |||
| mandatory "true"; | mandatory "true"; | |||
| description | description | |||
| "Name of the ISIS protocol instance whose ISIS | "Name of the IS-IS protocol instance whose IS-IS | |||
| information is being queried. | information is being queried. | |||
| If the ISIS instance with name equal to the | If the IS-IS instance with name equal to the | |||
| value of this parameter doesn't exist, then this | value of this parameter doesn't exist, then this | |||
| operation SHALL fail with error-tag 'data-missing' | operation SHALL fail with error-tag 'data-missing' | |||
| and error-app-tag | and error-app-tag | |||
| 'routing-protocol-instance-not-found'."; | 'routing-protocol-instance-not-found'."; | |||
| } | } | |||
| leaf level { | leaf level { | |||
| type level; | type level; | |||
| description | description | |||
| "ISIS level of the adjacency to be cleared. | "IS-IS level of the adjacency to be cleared. | |||
| If ISIS level is level-1-2, both level 1 and level 2 | If IS-IS level is level-1-2, both level 1 and level 2 | |||
| adjacencies would be cleared. | adjacencies would be cleared. | |||
| If the value provided is different from the one | If the value provided is different from the one | |||
| authorized in the enum type, then this | authorized in the enum type, then this | |||
| operation SHALL fail with error-tag 'data-missing' | operation SHALL fail with error-tag 'data-missing' | |||
| and error-app-tag | and error-app-tag | |||
| 'bad-isis-level'. | 'bad-isis-level'. | |||
| "; | "; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| /* Notifications */ | /* Notifications */ | |||
| notification database-overload { | notification database-overload { | |||
| uses notification-instance-hdr; | uses notification-instance-hdr; | |||
| skipping to change at page 96, line 10 ¶ | skipping to change at page 93, line 31 ¶ | |||
| enum "on" { | enum "on" { | |||
| description | description | |||
| "The system is in overload condition."; | "The system is in overload condition."; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "Describes the new overload state of the instance."; | "Describes the new overload state of the instance."; | |||
| } | } | |||
| description | description | |||
| "This notification is sent when an ISIS instance | "This notification is sent when an IS-IS instance | |||
| overload condition changes."; | overload condition changes."; | |||
| } | } | |||
| notification lsp-too-large { | notification lsp-too-large { | |||
| uses notification-instance-hdr; | uses notification-instance-hdr; | |||
| uses notification-interface-hdr; | uses notification-interface-hdr; | |||
| leaf pdu-size { | leaf pdu-size { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| skipping to change at page 102, line 39 ¶ | skipping to change at page 100, line 12 ¶ | |||
| leaf neighbor-system-id { | leaf neighbor-system-id { | |||
| type system-id; | type system-id; | |||
| description | description | |||
| "Describes the system-id of the neighbor."; | "Describes the system-id of the neighbor."; | |||
| } | } | |||
| leaf state { | leaf state { | |||
| type adj-state-type; | type adj-state-type; | |||
| description | description | |||
| "This leaf describes the new state of the | "This leaf describes the new state of the | |||
| ISIS adjacency."; | IS-IS adjacency."; | |||
| } | } | |||
| leaf reason { | leaf reason { | |||
| type string; | type string; | |||
| description | description | |||
| "If the adjacency is going to DOWN, | "If the adjacency is going to DOWN, | |||
| this leaf provides a reason for the adjacency | this leaf provides a reason for the adjacency | |||
| going down. The reason is provided as a text. | going down. The reason is provided as a text. | |||
| If the adjacency is going to UP, no reason is | If the adjacency is going to UP, no reason is | |||
| provided."; | provided."; | |||
| } | } | |||
| description | description | |||
| "This notification is sent when an ISIS adjacency | "This notification is sent when an IS-IS adjacency | |||
| moves to Up state or to Down state."; | moves to Up state or to Down state."; | |||
| } | } | |||
| notification lsp-received { | notification lsp-received { | |||
| uses notification-instance-hdr; | uses notification-instance-hdr; | |||
| uses notification-interface-hdr; | uses notification-interface-hdr; | |||
| leaf lsp-id { | leaf lsp-id { | |||
| type lsp-id; | type lsp-id; | |||
| description | description | |||
| skipping to change at page 106, line 7 ¶ | skipping to change at page 103, line 24 ¶ | |||
| 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 | |||
| 11. Change log for ietf-isis YANG module | 11. Change log for ietf-isis YANG module | |||
| 11.1. From version -18 to version -19 | 11.1. From version -19 to version -20 | |||
| o Moved to Yang 1.1 | ||||
| o Lower case enumerations | ||||
| o Add RFC references to features | ||||
| o Remove segment-routing feature | ||||
| o Modified BFD activation modeling | ||||
| 11.2. From version -18 to version -19 | ||||
| o Align with draft-ietf-netmod-rfc8022bis. | o Align with draft-ietf-netmod-rfc8022bis. | |||
| o Modify address family types as per draft-ietf-rtgwg-routing-types- | o Modify address family types as per draft-ietf-rtgwg-routing-types- | |||
| 17. | 17. | |||
| 11.2. From version -17 to version -18 | 11.3. From version -17 to version -18 | |||
| o NMDA compliancy. | o NMDA compliancy. | |||
| o Set some default values. | o Set some default values. | |||
| o Align with iana-rt-types module. | o Align with iana-rt-types module. | |||
| 11.3. From version -16 to version -17 | 11.4. From version -16 to version -17 | |||
| o Cosmetic fixes. | o Cosmetic fixes. | |||
| o Use of rt-types model. | o Use of rt-types model. | |||
| 11.4. From version -15 to version -16 | 11.5. From version -15 to version -16 | |||
| o Alignment with last IETF key chain model. | o Alignment with last IETF key chain model. | |||
| o lsp-log "change" leaf moved as an identity. | o lsp-log "change" leaf moved as an identity. | |||
| o Incremental SPF removed from spf-log types. | o Incremental SPF removed from spf-log types. | |||
| 11.5. From version -14 to version -15 | 11.6. From version -14 to version -15 | |||
| o Alignment with OSPF model done: | o Alignment with OSPF model done: | |||
| * Added spf-control container with IETF SPF delay algorithm as a | * Added spf-control container with IETF SPF delay algorithm as a | |||
| feature. | feature. | |||
| * Added graceful-restart options. | * Added graceful-restart options. | |||
| * Added nsr as a feature. | * Added nsr as a feature. | |||
| skipping to change at page 107, line 15 ¶ | skipping to change at page 104, line 46 ¶ | |||
| * Added auto-cost container. | * Added auto-cost container. | |||
| * Moved reference-bandwidth under auto-cost container. | * Moved reference-bandwidth under auto-cost container. | |||
| * Added IS-IS local RIB as operational state. | * Added IS-IS local RIB as operational state. | |||
| * Added decode-completed and raw-data leaves in the LSDB model. | * Added decode-completed and raw-data leaves in the LSDB model. | |||
| * Modified the notification header. | * Modified the notification header. | |||
| 11.6. From version -13 to version -14 | 11.7. From version -13 to version -14 | |||
| o Segment Routing extensions are now in a separate document. | o Segment Routing extensions are now in a separate document. | |||
| 11.7. From version -12 to version -13 | 11.8. From version -12 to version -13 | |||
| o Move feature nlpid-control to container rather than list. | o Move feature nlpid-control to container rather than list. | |||
| o Rename multi-topology to topologies to align with OSPF. | o Rename multi-topology to topologies to align with OSPF. | |||
| o Rename bfd/enabled to bfd/enable for consistency reason. | o Rename bfd/enabled to bfd/enable for consistency reason. | |||
| o Add support for NSR with a feature. | o Add support for NSR with a feature. | |||
| 11.8. From version -09 to version -12 | 11.9. From version -09 to version -12 | |||
| o Rename node-tag container to node-tags. | o Rename node-tag container to node-tags. | |||
| 11.9. From version -08 to version -09 | 11.10. From version -08 to version -09 | |||
| o Added container before af list. | o Added container before af list. | |||
| o Added container before topology list. | o Added container before topology list. | |||
| o Aligned LFA if per level cfg. | o Aligned LFA if per level cfg. | |||
| o Align to draft-ietf-netmod-routing-cfg-23. | o Align to draft-ietf-netmod-routing-cfg-23. | |||
| 11.10. From version -07 to version -08 | 11.11. From version -07 to version -08 | |||
| o Remove selector from system-id type. | o Remove selector from system-id type. | |||
| o Add some default values. | o Add some default values. | |||
| o Moved lists to containers+groupings for per level configuration. | o Moved lists to containers+groupings for per level configuration. | |||
| o remove routing-instance as per core routing model v21. | o remove routing-instance as per core routing model v21. | |||
| o added BFD leaf (no more BFD protocol model). | o added BFD leaf (no more BFD protocol model). | |||
| o changed keychain module reference. | o changed keychain module reference. | |||
| 11.11. From version -05 to version -07 | 11.12. From version -05 to version -07 | |||
| o Move Overload config from list to container. | o Move Overload config from list to container. | |||
| o Move Overload-max-metric config from list to container. | o Move Overload-max-metric config from list to container. | |||
| o Move preference config from list to container. | o Move preference config from list to container. | |||
| o Add Node flag in config. | o Add Node flag in config. | |||
| o Removed BFD config => moved to isis-bfd module. | o Removed BFD config => moved to isis-bfd module. | |||
| o Remove call to routing policy model. | o Remove call to routing policy model. | |||
| 11.12. From version -03 to version -05 | 11.13. From version -03 to version -05 | |||
| o Correct invalid references to previous versions of core routing | o Correct invalid references to previous versions of core routing | |||
| model. | model. | |||
| o Remove BFD config and replace by groupings from ietf-bfd. | o Remove BFD config and replace by groupings from ietf-bfd. | |||
| o Adding routing-policy support through routing-policy model. | o Adding routing-policy support through routing-policy model. | |||
| 11.13. From version -02 to version -03 | 11.14. From version -02 to version -03 | |||
| o Reviewed config and op state groupings. | o Reviewed config and op state groupings. | |||
| o Add default value to lfa candidate-disabled. | o Add default value to lfa candidate-disabled. | |||
| o Add enable leaf to isis container to reflect admin state. | o Add enable leaf to isis container to reflect admin state. | |||
| o Move to VRF centric only. | o Move to VRF centric only. | |||
| o Segment routing is part os a separate module. | o Segment routing is part os a separate module. | |||
| 11.14. From version -01 to version -02 | 11.15. From version -01 to version -02 | |||
| o Adding IPFRR. | o Adding IPFRR. | |||
| o Adding igp-ldp-sync. | o Adding igp-ldp-sync. | |||
| o Adding segment-routing. | o Adding segment-routing. | |||
| o Adding instance reference to operational states. | o Adding instance reference to operational states. | |||
| o Move AF type from string to identity. | o Move AF type from string to identity. | |||
| skipping to change at page 109, line 21 ¶ | skipping to change at page 107, line 7 ¶ | |||
| o Added modification information in lsp-log. | o Added modification information in lsp-log. | |||
| o Removing igp-ldp-sync timer in IS-IS. | o Removing igp-ldp-sync timer in IS-IS. | |||
| o Defining hierarchy for operational states. | o Defining hierarchy for operational states. | |||
| o Adding clns-mtu. | o Adding clns-mtu. | |||
| o Adding key-chain. | o Adding key-chain. | |||
| 11.15. From version -00 to version -01 | 11.16. From version -00 to version -01 | |||
| o Interface metric move from af container to interface container. | o Interface metric move from af container to interface container. | |||
| o Hello-padding on interface moved to hello-padding-disable with | o Hello-padding on interface moved to hello-padding-disable with | |||
| empty type. | empty type. | |||
| o three-way-handshake removed. | o three-way-handshake removed. | |||
| o route preference changed to a choice. | o route preference changed to a choice. | |||
| End of changes. 188 change blocks. | ||||
| 1134 lines changed or deleted | 1028 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/ | ||||