| < draft-ietf-isis-yang-isis-cfg-29.txt | draft-ietf-isis-yang-isis-cfg-30.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: June 30, 2019 Arrcus, Inc | Expires: July 22, 2019 Arrcus, Inc | |||
| A. Lindem | A. Lindem | |||
| Cisco Systems | Cisco Systems | |||
| J. Zhang | J. Zhang | |||
| Juniper Networks | Juniper Networks | |||
| L. Lhotka | L. Lhotka | |||
| CZ.NIC | CZ.NIC | |||
| December 27, 2018 | January 18, 2019 | |||
| YANG Data Model for IS-IS protocol | YANG Data Model for IS-IS protocol | |||
| draft-ietf-isis-yang-isis-cfg-29 | draft-ietf-isis-yang-isis-cfg-30 | |||
| Abstract | Abstract | |||
| This document defines a YANG data model that can be used to configure | This document defines a YANG data model that can be used to configure | |||
| and manage IS-IS protocol on network elements. | and manage IS-IS protocol on network elements. | |||
| Requirements Language | Requirements Language | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
| skipping to change at page 1, line 46 ¶ | skipping to change at page 1, line 46 ¶ | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on June 30, 2019. | This Internet-Draft will expire on July 22, 2019. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2018 IETF Trust and the persons identified as the | Copyright (c) 2019 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (https://trustee.ietf.org/license-info) in effect on the date of | (https://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| 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 37 ¶ | skipping to change at page 2, line 37 ¶ | |||
| 2.4. Per-Interface Parameters . . . . . . . . . . . . . . . . 11 | 2.4. Per-Interface Parameters . . . . . . . . . . . . . . . . 11 | |||
| 2.5. Authentication Parameters . . . . . . . . . . . . . . . . 18 | 2.5. Authentication Parameters . . . . . . . . . . . . . . . . 18 | |||
| 2.6. IGP/LDP synchronization . . . . . . . . . . . . . . . . . 18 | 2.6. IGP/LDP synchronization . . . . . . . . . . . . . . . . . 18 | |||
| 2.7. ISO parameters . . . . . . . . . . . . . . . . . . . . . 18 | 2.7. ISO parameters . . . . . . . . . . . . . . . . . . . . . 18 | |||
| 2.8. IP FRR . . . . . . . . . . . . . . . . . . . . . . . . . 19 | 2.8. IP FRR . . . . . . . . . . . . . . . . . . . . . . . . . 19 | |||
| 2.9. Operational States . . . . . . . . . . . . . . . . . . . 19 | 2.9. Operational States . . . . . . . . . . . . . . . . . . . 19 | |||
| 3. RPC Operations . . . . . . . . . . . . . . . . . . . . . . . 20 | 3. RPC Operations . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
| 4. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 20 | 4. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
| 5. Interaction with Other YANG Modules . . . . . . . . . . . . . 21 | 5. Interaction with Other YANG Modules . . . . . . . . . . . . . 21 | |||
| 6. IS-IS YANG Module . . . . . . . . . . . . . . . . . . . . . . 22 | 6. IS-IS YANG Module . . . . . . . . . . . . . . . . . . . . . . 22 | |||
| 7. Security Considerations . . . . . . . . . . . . . . . . . . . 101 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 102 | |||
| 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 102 | 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 103 | |||
| 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 102 | 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 103 | |||
| 10. Change log for ietf-isis YANG module . . . . . . . . . . . . 102 | 10. Change log for ietf-isis YANG module . . . . . . . . . . . . 103 | |||
| 10.1. From version -28 to version -29 . . . . . . . . . . . . 102 | 10.1. From version -29 to version -30 . . . . . . . . . . . . 103 | |||
| 10.2. From version -27 to version -28 . . . . . . . . . . . . 103 | 10.2. From version -28 to version -29 . . . . . . . . . . . . 104 | |||
| 10.3. From version -26 to version -27 . . . . . . . . . . . . 103 | 10.3. From version -27 to version -28 . . . . . . . . . . . . 104 | |||
| 10.4. From version -25 to version -26 . . . . . . . . . . . . 103 | 10.4. From version -26 to version -27 . . . . . . . . . . . . 104 | |||
| 10.5. From version -24 to version -25 . . . . . . . . . . . . 103 | 10.5. From version -25 to version -26 . . . . . . . . . . . . 104 | |||
| 10.6. From version -22 to version -24 . . . . . . . . . . . . 104 | 10.6. From version -24 to version -25 . . . . . . . . . . . . 104 | |||
| 10.7. From version -21 to version -22 . . . . . . . . . . . . 104 | 10.7. From version -22 to version -24 . . . . . . . . . . . . 105 | |||
| 10.8. From version -20 to version -21 . . . . . . . . . . . . 104 | 10.8. From version -21 to version -22 . . . . . . . . . . . . 106 | |||
| 10.9. From version -19 to version -20 . . . . . . . . . . . . 104 | 10.9. From version -20 to version -21 . . . . . . . . . . . . 106 | |||
| 10.10. From version -18 to version -19 . . . . . . . . . . . . 104 | 10.10. From version -19 to version -20 . . . . . . . . . . . . 106 | |||
| 10.11. From version -17 to version -18 . . . . . . . . . . . . 105 | 10.11. From version -18 to version -19 . . . . . . . . . . . . 106 | |||
| 10.12. From version -16 to version -17 . . . . . . . . . . . . 105 | 10.12. From version -17 to version -18 . . . . . . . . . . . . 106 | |||
| 10.13. From version -15 to version -16 . . . . . . . . . . . . 105 | 10.13. From version -16 to version -17 . . . . . . . . . . . . 106 | |||
| 10.14. From version -14 to version -15 . . . . . . . . . . . . 105 | 10.14. From version -15 to version -16 . . . . . . . . . . . . 107 | |||
| 10.15. From version -13 to version -14 . . . . . . . . . . . . 106 | 10.15. From version -14 to version -15 . . . . . . . . . . . . 107 | |||
| 10.16. From version -12 to version -13 . . . . . . . . . . . . 106 | 10.16. From version -13 to version -14 . . . . . . . . . . . . 107 | |||
| 10.17. From version -09 to version -12 . . . . . . . . . . . . 106 | 10.17. From version -12 to version -13 . . . . . . . . . . . . 107 | |||
| 10.18. From version -08 to version -09 . . . . . . . . . . . . 106 | 10.18. From version -09 to version -12 . . . . . . . . . . . . 108 | |||
| 10.19. From version -07 to version -08 . . . . . . . . . . . . 106 | 10.19. From version -08 to version -09 . . . . . . . . . . . . 108 | |||
| 10.20. From version -05 to version -07 . . . . . . . . . . . . 106 | 10.20. From version -07 to version -08 . . . . . . . . . . . . 108 | |||
| 10.21. From version -03 to version -05 . . . . . . . . . . . . 107 | 10.21. From version -05 to version -07 . . . . . . . . . . . . 108 | |||
| 10.22. From version -02 to version -03 . . . . . . . . . . . . 107 | 10.22. From version -03 to version -05 . . . . . . . . . . . . 108 | |||
| 10.23. From version -01 to version -02 . . . . . . . . . . . . 107 | 10.23. From version -02 to version -03 . . . . . . . . . . . . 109 | |||
| 10.24. From version -00 to version -01 . . . . . . . . . . . . 108 | 10.24. From version -01 to version -02 . . . . . . . . . . . . 109 | |||
| 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 108 | 10.25. From version -00 to version -01 . . . . . . . . . . . . 109 | |||
| 11.1. Normative References . . . . . . . . . . . . . . . . . . 108 | 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 110 | |||
| 11.2. Informative References . . . . . . . . . . . . . . . . . 112 | 11.1. Normative References . . . . . . . . . . . . . . . . . . 110 | |||
| Appendix A. Example of IS-IS configuration in XML . . . . . . . 112 | 11.2. Informative References . . . . . . . . . . . . . . . . . 114 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 114 | Appendix A. Example of IS-IS configuration in XML . . . . . . . 114 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 116 | ||||
| 1. Introduction | 1. Introduction | |||
| This document defines a YANG ([RFC7950]) data model for IS-IS routing | This document defines a YANG ([RFC7950]) data model for IS-IS routing | |||
| protocol. | protocol. | |||
| The data model covers configuration of an IS-IS routing protocol | The data model covers configuration of an IS-IS routing protocol | |||
| instance as well as operational states. | instance as well as operational states. | |||
| A simplified tree representation of the data model is presented in | A simplified tree representation of the data model is presented in | |||
| skipping to change at page 5, line 31 ¶ | skipping to change at page 5, line 33 ¶ | |||
| +--ro spf-log | +--ro spf-log | |||
| | +--ro event* [id] | | +--ro event* [id] | |||
| | ... | | ... | |||
| +--ro lsp-log | +--ro lsp-log | |||
| | +--ro event* [id] | | +--ro event* [id] | |||
| | ... | | ... | |||
| +--ro hostnames | +--ro hostnames | |||
| | +--ro hostname* [system-id] | | +--ro hostname* [system-id] | |||
| | ... | | ... | |||
| +--ro database | +--ro database | |||
| | +--ro level-db* [level] | | +--ro levels* [level] | |||
| | ... | | ... | |||
| +--ro local-rib | +--ro local-rib | |||
| | +--ro route* [prefix] | | +--ro route* [prefix] | |||
| | ... | | ... | |||
| +--ro system-counters | +--ro system-counters | |||
| | +--ro level* [level] | | +--ro level* [level] | |||
| | ... | | ... | |||
| +--ro protected-routes | +--ro protected-routes | |||
| | +--ro address-family-stats* [address-family prefix alternate] | | +--ro address-family-stats* [address-family prefix alternate] | |||
| | ... | | ... | |||
| skipping to change at page 18, line 26 ¶ | skipping to change at page 18, line 26 ¶ | |||
| +--ro sequence? uint32 | +--ro sequence? uint32 | |||
| +--ro send-timestamp? yang:timestamp | +--ro send-timestamp? yang:timestamp | |||
| 2.5. Authentication Parameters | 2.5. Authentication Parameters | |||
| The module enables authentication configuration through the IETF key- | The module enables authentication configuration through the IETF key- | |||
| chain module ([RFC8177]). The IS-IS module imports the "ietf-key- | chain module ([RFC8177]). The IS-IS module imports the "ietf-key- | |||
| chain" module and reuses some groupings to allow global and per | chain" module and reuses some groupings to allow global and per | |||
| interface configuration of authentication. If a global | interface configuration of authentication. If a global | |||
| authentication is configured, an implementation SHOULD authenticate | authentication is configured, an implementation SHOULD authenticate | |||
| PSNPs, CSNPs and LSPs with the authentication parameters supplied. | PSNPs (Partial Sequence Number Packets), CSNPs (Complete Sequence | |||
| The authentication of hello PDUs can be activated on a per interface | Number Packets) and LSPs (Link State Packets) with the authentication | |||
| basis. | parameters supplied. The authentication of HELLO PDUs (Protocol Data | |||
| Units) can be activated on a per interface basis. | ||||
| 2.6. IGP/LDP synchronization | 2.6. IGP/LDP synchronization | |||
| [RFC5443] defines a mechanism where IGP needs to be synchronized with | [RFC5443] defines a mechanism where IGP (Interior Gateway Protocol) | |||
| LDP. An "ldp-igp-sync" feature has been defined in the model to | needs to be synchronized with LDP (Label Distribution Protocol). An | |||
| support this mechanism. The "mpls/ldp/igp-sync" leaf under | "ldp-igp-sync" feature has been defined in the model to support this | |||
| "interface" allows activation of the mechanism on a per interface | mechanism. The "mpls/ldp/igp-sync" leaf under "interface" allows | |||
| basis. The "mpls/ldp/igp-sync" container in the global configuration | activation of the mechanism on a per interface basis. The "mpls/ldp/ | |||
| is empty on purpose and is not required for the activation. The goal | igp-sync" container in the global configuration is empty on purpose | |||
| of this empty container is to allow easy augmentation with additional | and is not required for the activation. The goal of this empty | |||
| parameters like timers for example. | container is to allow easy augmentation with additional parameters | |||
| like timers for example. | ||||
| 2.7. ISO parameters | 2.7. ISO parameters | |||
| As IS-IS protocol is based on ISO protocol suite, some ISO parameters | As IS-IS protocol is based on ISO protocol suite, some ISO parameters | |||
| may be required. | may be required. | |||
| This module augments interface configuration model to support ISO | This module augments interface configuration model to support ISO | |||
| configuration parameters. | configuration parameters. | |||
| The clns-mtu can be defined under the interface. | The clns-mtu can be defined under the interface. | |||
| 2.8. IP FRR | 2.8. IP FRR | |||
| This YANG model supports LFA ([RFC5286]) and remote LFA ([RFC7490]) | This YANG model supports LFA (Loop Free Alternates) ([RFC5286]) and | |||
| as IP FRR techniques. The "fast-reroute" container may be augmented | remote LFA ([RFC7490]) as IP FRR techniques. The "fast-reroute" | |||
| by other models to support other IPFRR flavors (MRT, TILFA ...). | container may be augmented by other models to support other IPFRR | |||
| flavors (MRT, TILFA ...). | ||||
| The current version of the model supports activation of LFA and | The current version of the model supports activation of LFA and | |||
| remote LFA at interface only. The global "lfa" container is present | remote LFA at interface only. The global "lfa" container is present | |||
| but kept empty to allow augmentation with vendor specific properties | but kept empty to allow augmentation with vendor specific properties | |||
| like policies. | like policies. | |||
| Remote LFA is considered as a child of LFA. Remote LFA cannot be | Remote LFA is considered as a child of LFA. Remote LFA cannot be | |||
| enabled if LFA is not enabled. | enabled if LFA is not enabled. | |||
| The "candidate-disabled" allows to mark an interface to not be used | The "candidate-disabled" allows to mark an interface to not be used | |||
| skipping to change at page 19, line 48 ¶ | skipping to change at page 19, line 49 ¶ | |||
| o lsp-log: provides informations about LSP events on the node | o lsp-log: provides informations about LSP events on the node | |||
| (reception of an LSP or modification of local LSP). This SHOULD | (reception of an LSP or modification of local LSP). This SHOULD | |||
| be implemented as a wrapping buffer and an implementation MAY | be implemented as a wrapping buffer and an implementation MAY | |||
| decide to log refresh LSPs or not. | decide to log refresh LSPs or not. | |||
| o local-rib: provides the IS-IS internal routing table view. | o local-rib: provides the IS-IS internal routing table view. | |||
| o database: provides details on the current LSDB. | o database: provides details on the current LSDB. | |||
| o hostnames: provides informations about system-id to hostname | o hostnames: provides informations about system-id to hostname | |||
| mappings. | mappings (as defined in [RFC5301]). | |||
| o fast-reroute: provides informations about IP FRR. | o fast-reroute: provides informations about IP FRR. | |||
| 3. RPC Operations | 3. RPC Operations | |||
| The "ietf-isis" module defines two RPC operations: | The "ietf-isis" module defines two RPC operations: | |||
| o clear-database: reset the content of a particular IS-IS database | o clear-database: reset the content of a particular IS-IS database | |||
| and restart database synchronization with the neighbors. | and restart database synchronization with the neighbors. | |||
| skipping to change at page 22, line 10 ¶ | skipping to change at page 22, line 10 ¶ | |||
| The modules defined in this document use some groupings from ietf- | The modules defined in this document use some groupings from ietf- | |||
| keychain [RFC8177]. | keychain [RFC8177]. | |||
| The module reuses types from [RFC6991] and [RFC8294]. | The module reuses types from [RFC6991] and [RFC8294]. | |||
| To support BFD for fast detection, the module relies on | To support BFD for fast detection, the module relies on | |||
| [I-D.ietf-bfd-yang]. | [I-D.ietf-bfd-yang]. | |||
| 6. IS-IS YANG Module | 6. IS-IS YANG Module | |||
| <CODE BEGINS> file "ietf-isis@2018-12-27.yang" | <CODE BEGINS> file "ietf-isis@2019-01-18.yang" | |||
| module ietf-isis { | module ietf-isis { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-isis"; | namespace "urn:ietf:params:xml:ns:yang:ietf-isis"; | |||
| prefix isis; | prefix isis; | |||
| import ietf-routing { | import ietf-routing { | |||
| prefix "rt"; | prefix "rt"; | |||
| reference "RFC 8349 - A YANG Data Model for Routing | reference "RFC 8349 - A YANG Data Model for Routing | |||
| skipping to change at page 24, line 21 ¶ | skipping to change at page 24, line 21 ¶ | |||
| authors of the code. All rights reserved. | authors of the code. All rights reserved. | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; | This version of this YANG module is part of RFC XXXX; | |||
| see the RFC itself for full legal notices."; | see the RFC itself for full legal notices. | |||
| revision 2018-12-27 { | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', | |||
| 'SHALL NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', | ||||
| 'NOT RECOMMENDED', 'MAY', and 'OPTIONAL' in this document | ||||
| are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] | ||||
| when, and only when, they appear in all capitals, as shown here. | ||||
| "; | ||||
| revision 2019-01-18 { | ||||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference "RFC XXXX"; | reference "RFC XXXX"; | |||
| } | } | |||
| /* Identities */ | /* Identities */ | |||
| identity isis { | identity isis { | |||
| base rt:routing-protocol; | base rt:routing-protocol; | |||
| description "Identity for the IS-IS routing protocol."; | description "Identity for the IS-IS routing protocol."; | |||
| skipping to change at page 29, line 49 ¶ | skipping to change at page 30, line 8 ¶ | |||
| } | } | |||
| 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 the IS-IS LSP ID format using a | "This type defines the IS-IS LSP ID format using a | |||
| pattern, An example LSP ID is 0143.0438.AEF0.02-01"; | pattern. An example LSP ID is 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,6}'; | pattern '[0-9A-Fa-f]{2}(\.[0-9A-Fa-f]{4}){0,6}'; | |||
| } | } | |||
| description | description | |||
| "This type defines the area address format."; | "This type defines the area address format."; | |||
| } | } | |||
| typedef snpa { | typedef snpa { | |||
| type string { | type string { | |||
| length "0 .. 20"; | length "0 .. 20"; | |||
| } | } | |||
| description | description | |||
| "This type defines the Subnetwork Point | "This type defines the Subnetwork Point | |||
| of Attachement (SNPA) format."; | of Attachement (SNPA) format. | |||
| The SNPA should be encoded according to the rules | ||||
| specified for the particular type of subnetwork | ||||
| being used. As an example, for an ethernet subnetwork, | ||||
| the SNPA is encoded as a MAC address like 00aa.bbcc.ddee"; | ||||
| } | } | |||
| 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 IS-IS system-id using pattern, | "This type defines IS-IS system-id using pattern, | |||
| An example system-id is 0143.0438.AEF0"; | An example system-id is 0143.0438.AEF0"; | |||
| } | } | |||
| typedef extended-system-id { | typedef extended-system-id { | |||
| type string { | type string { | |||
| pattern | pattern | |||
| '[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}\.[0-9][0-9]'; | '[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}\.[0-9][0-9]'; | |||
| } | } | |||
| description | description | |||
| "This type defines IS-IS system-id using pattern. The extended | "This type defines IS-IS system-id using pattern. The extended | |||
| system id contains the pseudonode number in addition to the | system-id contains the pseudonode number in addition to the | |||
| system id. | system-id. | |||
| An example system-id is 0143.0438.AEF0.00"; | An example system-id is 0143.0438.AEF0.00"; | |||
| } | } | |||
| typedef wide-metric { | typedef wide-metric { | |||
| type uint32 { | type uint32 { | |||
| range "0 .. 16777215"; | range "0 .. 16777215"; | |||
| } | } | |||
| description | description | |||
| "This type defines wide style format of IS-IS metric."; | "This type defines wide style format of IS-IS metric."; | |||
| } | } | |||
| typedef std-metric { | typedef std-metric { | |||
| type uint8 { | type uint8 { | |||
| skipping to change at page 33, line 44 ¶ | skipping to change at page 34, line 6 ¶ | |||
| } | } | |||
| description | description | |||
| "LFA configuration."; | "LFA configuration."; | |||
| } | } | |||
| description | description | |||
| "Interface IP Fast-reroute configuration."; | "Interface IP Fast-reroute configuration."; | |||
| } | } | |||
| } | } | |||
| grouping instance-fast-reroute-state { | grouping instance-fast-reroute-state { | |||
| description "IPFRR state data grouping"; | description "IPFRR state data grouping"; | |||
| container protected-routes { | container protected-routes { | |||
| config false; | config false; | |||
| list address-family-stats { | list address-family-stats { | |||
| key "address-family prefix alternate"; | key "address-family prefix alternate"; | |||
| leaf address-family { | leaf address-family { | |||
| type iana-rt-types:address-family; | type iana-rt-types:address-family; | |||
| description | description | |||
| "Address-family"; | "Address-family"; | |||
| } | } | |||
| leaf prefix { | leaf prefix { | |||
| type string; | type inet:ip-prefix; | |||
| description | description | |||
| "Protected prefix."; | "Protected prefix."; | |||
| } | } | |||
| leaf alternate { | leaf alternate { | |||
| type string; | type inet:ip-address; | |||
| description | description | |||
| "Alternate nexthop for the prefix."; | "Alternate nexthop for the prefix."; | |||
| } | } | |||
| leaf alternate-type { | leaf alternate-type { | |||
| type enumeration { | type enumeration { | |||
| enum equal-cost { | enum equal-cost { | |||
| description | description | |||
| "ECMP alternate."; | "ECMP alternate."; | |||
| } | } | |||
| enum lfa { | enum lfa { | |||
| skipping to change at page 34, line 43 ¶ | skipping to change at page 35, line 4 ¶ | |||
| "Tunnel based alternate | "Tunnel based alternate | |||
| (like RSVP-TE or GRE)."; | (like RSVP-TE or GRE)."; | |||
| } | } | |||
| enum ti-lfa { | enum ti-lfa { | |||
| description | description | |||
| "TI-LFA alternate."; | "TI-LFA alternate."; | |||
| } | } | |||
| enum mrt { | enum mrt { | |||
| description | description | |||
| "MRT alternate."; | "MRT alternate."; | |||
| } | } | |||
| enum other { | enum other { | |||
| description | description | |||
| "Unknown alternate type."; | "Unknown alternate type."; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "Type of alternate."; | "Type of alternate."; | |||
| } | } | |||
| leaf best { | leaf best { | |||
| type boolean; | type boolean; | |||
| description | description | |||
| "Indicates if the alternate is the preferred."; | "Is set when the alternate is the preferred one, | |||
| is unset otherwise."; | ||||
| } | } | |||
| leaf non-best-reason { | leaf non-best-reason { | |||
| type string; | type string { | |||
| length "1..255"; | ||||
| } | ||||
| description | description | |||
| "Information field to describe why the alternate | "Information field to describe why the alternate | |||
| is not best."; | is not best. The length should be limited to 255 unicode | |||
| characters. The expected format is a single line text."; | ||||
| } | } | |||
| leaf protection-available { | leaf protection-available { | |||
| type bits { | type bits { | |||
| bit node-protect { | bit node-protect { | |||
| position 0; | position 0; | |||
| description | description | |||
| "Node protection available."; | "Node protection available."; | |||
| } | } | |||
| bit link-protect { | bit link-protect { | |||
| position 1; | position 1; | |||
| skipping to change at page 36, line 31 ¶ | skipping to change at page 36, line 44 ¶ | |||
| config false; | config false; | |||
| list address-family-stats { | list address-family-stats { | |||
| key "address-family prefix"; | key "address-family prefix"; | |||
| leaf address-family { | leaf address-family { | |||
| type iana-rt-types:address-family; | type iana-rt-types:address-family; | |||
| description "Address-family"; | description "Address-family"; | |||
| } | } | |||
| leaf prefix { | leaf prefix { | |||
| type string; | type inet:ip-prefix; | |||
| description "Unprotected prefix."; | description "Unprotected prefix."; | |||
| } | } | |||
| description | description | |||
| "Per AF unprotected prefix statistics."; | "Per AF unprotected prefix statistics."; | |||
| } | } | |||
| description | description | |||
| "List of prefixes that are not protected."; | "List of prefixes that are not protected."; | |||
| } | } | |||
| list protection-statistics { | list protection-statistics { | |||
| key frr-protection-method; | key frr-protection-method; | |||
| config false; | config false; | |||
| leaf frr-protection-method { | leaf frr-protection-method { | |||
| type string; | type string; | |||
| description "Protection method used."; | description "Protection method used. | |||
| The expected format is a single word. | ||||
| As example: LFA,rLFA, MRT, RSVP-TE..."; | ||||
| } | } | |||
| list address-family-stats { | list address-family-stats { | |||
| key address-family; | key address-family; | |||
| leaf address-family { | leaf address-family { | |||
| type iana-rt-types:address-family; | type iana-rt-types:address-family; | |||
| description "Address-family"; | description "Address-family"; | |||
| } | } | |||
| leaf total-routes { | leaf total-routes { | |||
| skipping to change at page 44, line 4 ¶ | skipping to change at page 44, line 18 ¶ | |||
| description | description | |||
| "Node tag value."; | "Node tag value."; | |||
| } | } | |||
| description | description | |||
| "List of tags."; | "List of tags."; | |||
| } | } | |||
| description | description | |||
| "Container for node admin tags."; | "Container for node admin tags."; | |||
| } | } | |||
| } | } | |||
| grouping authentication-global-cfg { | grouping authentication-global-cfg { | |||
| choice authentication-type { | choice authentication-type { | |||
| case key-chain { | case key-chain { | |||
| if-feature key-chain; | if-feature key-chain; | |||
| leaf key-chain { | leaf key-chain { | |||
| type key-chain:key-chain-ref; | type key-chain:key-chain-ref; | |||
| description | description | |||
| "Reference to a key-chain."; | "Reference to a key-chain."; | |||
| } | } | |||
| } | } | |||
| case password { | case password { | |||
| leaf key { | leaf key { | |||
| type string; | type string; | |||
| description | description | |||
| "This leaf specifies the authentication key."; | "This leaf specifies the authentication key. The | |||
| length of the key may be dependent on the | ||||
| cryptographic algorithm. In cases where it is | ||||
| not, a key length of at least 32 octets should be | ||||
| supported to allow for interoperability with | ||||
| strong keys."; | ||||
| } | } | |||
| leaf crypto-algorithm { | leaf crypto-algorithm { | |||
| type identityref { | type identityref { | |||
| base key-chain:crypto-algorithm; | base key-chain:crypto-algorithm; | |||
| } | } | |||
| description | description | |||
| "Cryptographic algorithm associated with key."; | "Cryptographic algorithm associated with key."; | |||
| } | } | |||
| } | } | |||
| description "Choice of authentication."; | description "Choice of authentication."; | |||
| skipping to change at page 46, line 33 ¶ | skipping to change at page 47, line 4 ¶ | |||
| "Global route preference grouping"; | "Global route preference grouping"; | |||
| } | } | |||
| grouping hello-authentication-cfg { | grouping hello-authentication-cfg { | |||
| choice authentication-type { | choice authentication-type { | |||
| case key-chain { | case key-chain { | |||
| if-feature key-chain; | if-feature key-chain; | |||
| leaf key-chain { | leaf key-chain { | |||
| type key-chain:key-chain-ref; | type key-chain:key-chain-ref; | |||
| description "Reference to a key-chain."; | description "Reference to a key-chain."; | |||
| } | } | |||
| } | } | |||
| case password { | case password { | |||
| leaf key { | leaf key { | |||
| type string; | type string; | |||
| description "Authentication key specification"; | description "Authentication key specification - The | |||
| length of the key may be dependent on the | ||||
| cryptographic algorithm. In cases where it is | ||||
| not, a key length of at leawt 32 octets should be | ||||
| supported to allow for interoperability with | ||||
| strong | ||||
| keys."; | ||||
| } | } | |||
| leaf crypto-algorithm { | leaf crypto-algorithm { | |||
| type identityref { | type identityref { | |||
| base key-chain:crypto-algorithm; | base key-chain:crypto-algorithm; | |||
| } | } | |||
| description | description | |||
| "Cryptographic algorithm associated with key."; | "Cryptographic algorithm associated with key."; | |||
| } | } | |||
| } | } | |||
| description "Choice of authentication."; | description "Choice of authentication."; | |||
| skipping to change at page 52, line 26 ¶ | skipping to change at page 53, line 4 ¶ | |||
| uses ietf-spf-delay; | uses ietf-spf-delay; | |||
| description "IETF SPF delay algorithm configuration."; | description "IETF SPF delay algorithm configuration."; | |||
| } | } | |||
| description | description | |||
| "SPF calculation control."; | "SPF calculation control."; | |||
| } | } | |||
| description "Grouping for SPF global parameters."; | description "Grouping for SPF global parameters."; | |||
| } | } | |||
| grouping instance-config { | grouping instance-config { | |||
| description "IS-IS global configuration grouping"; | description "IS-IS global configuration grouping"; | |||
| uses admin-control; | uses admin-control; | |||
| leaf level-type { | leaf level-type { | |||
| type level; | type level; | |||
| default "level-all"; | default "level-all"; | |||
| description | description | |||
| "Level of an IS-IS node - can be level-1, | "Level of an IS-IS node - can be level-1, | |||
| level-2 or level-all."; | level-2 or level-all."; | |||
| } | } | |||
| leaf system-id { | leaf system-id { | |||
| type system-id; | type system-id; | |||
| description "System-id of the node."; | description "system-id of the node."; | |||
| } | } | |||
| leaf maximum-area-addresses { | leaf maximum-area-addresses { | |||
| if-feature maximum-area-addresses; | if-feature maximum-area-addresses; | |||
| type uint8; | type uint8; | |||
| default 3; | default 3; | |||
| description "Maximum areas supported."; | description "Maximum areas supported."; | |||
| } | } | |||
| leaf-list area-address { | leaf-list area-address { | |||
| skipping to change at page 58, line 50 ¶ | skipping to change at page 59, line 27 ¶ | |||
| /* Grouping for the hostname database */ | /* Grouping for the hostname database */ | |||
| grouping hostname-db { | grouping hostname-db { | |||
| container hostnames { | container hostnames { | |||
| config false; | config false; | |||
| list hostname { | list hostname { | |||
| key system-id; | key system-id; | |||
| leaf system-id { | leaf system-id { | |||
| type system-id; | type system-id; | |||
| description | description | |||
| "System-id associated with the hostname."; | "system-id associated with the hostname."; | |||
| } | } | |||
| leaf hostname { | leaf hostname { | |||
| type string; | type string { | |||
| length "1..255"; | ||||
| } | ||||
| description | description | |||
| "Hostname associated with the system ID."; | "Hostname associated with the system-id | |||
| as defined in RFC5301."; | ||||
| } | } | |||
| description | description | |||
| "List of system-id/hostname associations."; | "List of system-id/hostname associations."; | |||
| } | } | |||
| description | description | |||
| "Hostname to system-id mapping database."; | "Hostname to system-id mapping database."; | |||
| } | } | |||
| description | description | |||
| "Grouping for hostname to system-id mapping database."; | "Grouping for hostname to system-id mapping database."; | |||
| } | } | |||
| skipping to change at page 65, line 36 ¶ | skipping to change at page 66, line 16 ¶ | |||
| leaf end-timestamp { | leaf end-timestamp { | |||
| type yang:timestamp; | type yang:timestamp; | |||
| description | description | |||
| "Timestamp of when the SPF computation ended."; | "Timestamp of when the SPF computation ended."; | |||
| } | } | |||
| list trigger-lsp { | list trigger-lsp { | |||
| key "lsp"; | key "lsp"; | |||
| leaf lsp { | leaf lsp { | |||
| type lsp-id; | type lsp-id; | |||
| description | description | |||
| "LSPID of the LSP triggering SPF computation."; | "LSP ID of the LSP triggering SPF computation."; | |||
| } | } | |||
| leaf sequence { | leaf sequence { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "Sequence number of the LSP triggering SPF | "Sequence number of the LSP triggering SPF | |||
| computation"; | computation"; | |||
| } | } | |||
| description | description | |||
| "This list includes the LSPs that triggered the | "This list includes the LSPs that triggered the | |||
| SPF computation."; | SPF computation."; | |||
| skipping to change at page 66, line 30 ¶ | skipping to change at page 67, line 11 ¶ | |||
| } | } | |||
| leaf level { | leaf level { | |||
| type level-number; | type level-number; | |||
| description | description | |||
| "IS-IS level number for LSP"; | "IS-IS level number for LSP"; | |||
| } | } | |||
| container lsp { | container lsp { | |||
| leaf lsp { | leaf lsp { | |||
| type lsp-id; | type lsp-id; | |||
| description | description | |||
| "LSPID of the LSP."; | "LSP ID of the LSP."; | |||
| } | } | |||
| leaf sequence { | leaf sequence { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "Sequence number of the LSP."; | "Sequence number of the LSP."; | |||
| } | } | |||
| description | description | |||
| "LSP identification container - either the received | "LSP identification container - either the received | |||
| LSP or the locally generated LSP."; | LSP or the locally generated LSP."; | |||
| } | } | |||
| skipping to change at page 69, line 4 ¶ | skipping to change at page 69, line 31 ¶ | |||
| grouping prefix-ipv6-source-router-id { | grouping prefix-ipv6-source-router-id { | |||
| description | description | |||
| "Grouping for the IPv6 source router ID of a prefix | "Grouping for the IPv6 source router ID of a prefix | |||
| advertisement."; | advertisement."; | |||
| leaf ipv6-source-router-id { | leaf ipv6-source-router-id { | |||
| type inet:ipv6-address; | type inet:ipv6-address; | |||
| description "IPv6 Source router ID address."; | description "IPv6 Source router ID address."; | |||
| } | } | |||
| } | } | |||
| grouping prefix-attributes-extension { | grouping prefix-attributes-extension { | |||
| description "Prefix extended attributes."; | description "Prefix extended attributes | |||
| as defined in RFC7794."; | ||||
| uses prefix-reachability-attributes; | uses prefix-reachability-attributes; | |||
| uses prefix-ipv4-source-router-id; | uses prefix-ipv4-source-router-id; | |||
| uses prefix-ipv6-source-router-id; | uses prefix-ipv6-source-router-id; | |||
| } | } | |||
| grouping prefix-ipv4-std { | grouping prefix-ipv4-std { | |||
| description | description | |||
| "Grouping for attributes of an IPv4 standard prefix."; | "Grouping for attributes of an IPv4 standard prefix | |||
| leaf up-down { | as defined in RFC1195."; | |||
| type boolean; | ||||
| description "Value of up/down bit."; | ||||
| } | ||||
| leaf i-e { | ||||
| type boolean; | ||||
| description "Value of I/E bit."; | ||||
| } | ||||
| leaf ip-prefix { | leaf ip-prefix { | |||
| type inet:ipv4-address; | type inet:ipv4-address; | |||
| description "IPv4 prefix address"; | description "IPv4 prefix address"; | |||
| } | } | |||
| leaf prefix-len { | leaf prefix-len { | |||
| type uint8; | type uint8; | |||
| description "IPv4 prefix length (in bits)"; | description "IPv4 prefix length (in bits)"; | |||
| } | } | |||
| leaf default-metric { | leaf i-e { | |||
| type std-metric; | type boolean; | |||
| description "Default IS-IS metric for IPv4 prefix"; | description "Internal or External (I/E) Metric bit value."; | |||
| } | ||||
| container default-metric { | ||||
| leaf metric { | ||||
| type std-metric; | ||||
| description "Default IS-IS metric for IPv4 prefix"; | ||||
| } | ||||
| description "IS-IS default metric container."; | ||||
| } | } | |||
| container delay-metric { | container delay-metric { | |||
| leaf metric { | leaf metric { | |||
| type std-metric; | type std-metric; | |||
| description "IS-IS delay metric for IPv4 prefix"; | description "IS-IS delay metric for IPv4 prefix"; | |||
| } | } | |||
| leaf supported { | leaf supported { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description | description | |||
| skipping to change at page 70, line 24 ¶ | skipping to change at page 71, line 4 ¶ | |||
| container error-metric { | container error-metric { | |||
| leaf metric { | leaf metric { | |||
| type std-metric; | type std-metric; | |||
| description | description | |||
| "This leaf describes the IS-IS 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 "IS-IS error metric for IPv4 prefix"; | description "IS-IS error metric for IPv4 prefix"; | |||
| } | } | |||
| description "IS-IS error metric container."; | description "IS-IS error metric container."; | |||
| } | } | |||
| } | } | |||
| grouping prefix-ipv4-extended { | grouping prefix-ipv4-extended { | |||
| description | description | |||
| "Grouping for attributes of an IPv4 extended prefix."; | "Grouping for attributes of an IPv4 extended prefix | |||
| as defined in RFC5305."; | ||||
| leaf up-down { | leaf up-down { | |||
| type boolean; | type boolean; | |||
| description "Value of up/down bit."; | description "Value of up/down bit."; | |||
| } | } | |||
| leaf ip-prefix { | leaf ip-prefix { | |||
| type inet:ipv4-address; | type inet:ipv4-address; | |||
| description "IPv4 prefix address"; | description "IPv4 prefix address"; | |||
| } | } | |||
| leaf prefix-len { | leaf prefix-len { | |||
| type uint8; | type uint8; | |||
| skipping to change at page 70, line 44 ¶ | skipping to change at page 71, line 26 ¶ | |||
| description "Value of up/down bit."; | description "Value of up/down bit."; | |||
| } | } | |||
| leaf ip-prefix { | leaf ip-prefix { | |||
| type inet:ipv4-address; | type inet:ipv4-address; | |||
| description "IPv4 prefix address"; | description "IPv4 prefix address"; | |||
| } | } | |||
| leaf prefix-len { | leaf prefix-len { | |||
| type uint8; | type uint8; | |||
| description "IPv4 prefix length (in bits)"; | description "IPv4 prefix length (in bits)"; | |||
| } | } | |||
| leaf metric { | leaf metric { | |||
| type wide-metric; | type wide-metric; | |||
| description "IS-IS wide metric value"; | description "IS-IS wide metric value"; | |||
| } | } | |||
| leaf-list tag { | leaf-list tag { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "List of 32-bit tags associated with the IPv4 prefix."; | "List of 32-bit tags associated with the IPv4 prefix."; | |||
| } | } | |||
| leaf-list tag64 { | leaf-list tag64 { | |||
| type uint64; | type uint64; | |||
| description | description | |||
| "List of 32-bit tags associated with the IPv4 prefix."; | "List of 32-bit tags associated with the IPv4 prefix."; | |||
| } | } | |||
| uses prefix-attributes-extension; | uses prefix-attributes-extension; | |||
| } | } | |||
| grouping prefix-ipv6-extended { | grouping prefix-ipv6-extended { | |||
| description "Grouping for attributes of an IPv6 prefix."; | description "Grouping for attributes of an IPv6 prefix | |||
| as defined in RFC5308."; | ||||
| leaf up-down { | leaf up-down { | |||
| type boolean; | type boolean; | |||
| description "Value of up/down bit."; | description "Value of up/down bit."; | |||
| } | } | |||
| leaf ip-prefix { | leaf ip-prefix { | |||
| type inet:ipv6-address; | type inet:ipv6-address; | |||
| description "IPv6 prefix address"; | description "IPv6 prefix address"; | |||
| } | } | |||
| leaf prefix-len { | leaf prefix-len { | |||
| type uint8; | type uint8; | |||
| description "IPv4 prefix length (in bits)"; | description "IPv4 prefix length (in bits)"; | |||
| } | } | |||
| leaf metric { | leaf metric { | |||
| type wide-metric; | type wide-metric; | |||
| description "IS-IS wide metric value"; | description "IS-IS wide metric value"; | |||
| } | } | |||
| leaf-list tag { | leaf-list tag { | |||
| skipping to change at page 78, line 16 ¶ | skipping to change at page 78, line 46 ¶ | |||
| priorities."; | priorities."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| grouping neighbor-extended { | grouping neighbor-extended { | |||
| description | description | |||
| "Grouping for attributes of an IS-IS extended neighbor."; | "Grouping for attributes of an IS-IS extended neighbor."; | |||
| leaf neighbor-id { | leaf neighbor-id { | |||
| type extended-system-id; | type extended-system-id; | |||
| description "System-id of the extended neighbor."; | description "system-id of the extended neighbor."; | |||
| } | } | |||
| container instances { | container instances { | |||
| description "List of all adjacencies between the local | description "List of all adjacencies between the local | |||
| system and the neighbor system-id."; | system and the neighbor system-id."; | |||
| list instance { | list instance { | |||
| key id; | key id; | |||
| leaf id { | leaf id { | |||
| type uint32; | type uint32; | |||
| description "Unique identifier of an instance of a | description "Unique identifier of an instance of a | |||
| skipping to change at page 79, line 4 ¶ | skipping to change at page 79, line 34 ¶ | |||
| grouping neighbor { | grouping neighbor { | |||
| description "IS-IS standard neighbor grouping."; | description "IS-IS standard neighbor grouping."; | |||
| leaf neighbor-id { | leaf neighbor-id { | |||
| type extended-system-id; | type extended-system-id; | |||
| description "IS-IS neighbor system-id"; | description "IS-IS neighbor system-id"; | |||
| } | } | |||
| container instances { | container instances { | |||
| description "List of all adjacencies between the local | description "List of all adjacencies between the local | |||
| system and the neighbor system-id."; | system and the neighbor system-id."; | |||
| list instance { | list instance { | |||
| key id; | key id; | |||
| leaf id { | leaf id { | |||
| type uint32; | type uint32; | |||
| description "Unique identifier of an instance of a | description "Unique identifier of an instance of a | |||
| particular neighbor."; | particular neighbor."; | |||
| } | } | |||
| leaf i-e { | leaf i-e { | |||
| type boolean; | type boolean; | |||
| description | description | |||
| "Internal or External (I/E) Metric bit value"; | "Internal or External (I/E) Metric bit value"; | |||
| } | } | |||
| leaf default-metric { | container default-metric { | |||
| type std-metric; | leaf metric { | |||
| description "IS-IS default metric value"; | type std-metric; | |||
| description "IS-IS default metric value"; | ||||
| } | ||||
| description "IS-IS default metric container"; | ||||
| } | } | |||
| container delay-metric { | container delay-metric { | |||
| leaf metric { | leaf metric { | |||
| type std-metric; | type std-metric; | |||
| description "IS-IS delay metric value"; | description "IS-IS delay metric value"; | |||
| } | } | |||
| leaf supported { | leaf supported { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description "IS-IS delay metric supported"; | description "IS-IS delay metric supported"; | |||
| skipping to change at page 80, line 9 ¶ | skipping to change at page 80, line 43 ¶ | |||
| type std-metric; | type std-metric; | |||
| description "IS-IS error metric value"; | description "IS-IS error metric value"; | |||
| } | } | |||
| leaf supported { | leaf supported { | |||
| type boolean; | type boolean; | |||
| default "false"; | default "false"; | |||
| description "IS-IS error metric supported"; | description "IS-IS error metric supported"; | |||
| } | } | |||
| description "IS-IS error metric container"; | description "IS-IS error metric container"; | |||
| } | } | |||
| description "Instance of a particular adjacency."; | description "Instance of a particular adjacency | |||
| as defined in ISO10589."; | ||||
| } | } | |||
| } | } | |||
| } | } | |||
| /* Top level TLVs */ | /* Top level TLVs */ | |||
| grouping tlv132-ipv4-addresses { | grouping tlv132-ipv4-addresses { | |||
| leaf-list ipv4-addresses { | leaf-list ipv4-addresses { | |||
| type inet:ipv4-address; | type inet:ipv4-address; | |||
| description | description | |||
| skipping to change at page 81, line 25 ¶ | skipping to change at page 82, line 11 ¶ | |||
| type string; | type string; | |||
| description | description | |||
| "Host Name of the IS-IS node - IS-IS reference | "Host Name of the IS-IS node - IS-IS reference | |||
| is TLV 137."; | is TLV 137."; | |||
| } | } | |||
| description "Grouping for TLV137."; | description "Grouping for TLV137."; | |||
| } | } | |||
| grouping tlv10-authentication { | grouping tlv10-authentication { | |||
| container authentication { | container authentication { | |||
| leaf authentication-type { | leaf authentication-type { | |||
| type string; | type identityref { | |||
| base key-chain:crypto-algorithm; | ||||
| } | ||||
| description | description | |||
| "Authentication type to be used with IS-IS node."; | "Authentication type to be used with IS-IS node."; | |||
| } | } | |||
| leaf authentication-key { | leaf authentication-key { | |||
| type string; | type string; | |||
| description | description | |||
| "Authentication keyto be used. For security reasons, | "Authentication key to be used. For security reasons, | |||
| the authentication key MUST NOT be presented in | the authentication key MUST NOT be presented in | |||
| plaintext format. It is recommended to use an MD5 | a clear text format in response to any request | |||
| hash to present the authentication-key."; | (e.g., via get, get-config)."; | |||
| } | } | |||
| description | description | |||
| "IS-IS node authentication information container - | "IS-IS node authentication information container - | |||
| IS-IS reference is TLV 10."; | IS-IS reference is TLV 10."; | |||
| } | } | |||
| description "Grouping for TLV10."; | description "Grouping for TLV10."; | |||
| } | } | |||
| grouping tlv229-mt { | grouping tlv229-mt { | |||
| container mt-entries { | container mt-entries { | |||
| list topology { | list topology { | |||
| skipping to change at page 83, line 49 ¶ | skipping to change at page 84, line 37 ¶ | |||
| description "Grouping for TLV242."; | description "Grouping for TLV242."; | |||
| } | } | |||
| grouping tlv138-srlg { | grouping tlv138-srlg { | |||
| description | description | |||
| "Grouping for TLV138."; | "Grouping for TLV138."; | |||
| container links-srlgs { | container links-srlgs { | |||
| list links { | list links { | |||
| leaf neighbor-id { | leaf neighbor-id { | |||
| type extended-system-id; | type extended-system-id; | |||
| description "System-id of the extended neighbor."; | description "system-id of the extended neighbor."; | |||
| } | } | |||
| leaf flags { | leaf flags { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "Flags associated with the link."; | "Flags associated with the link."; | |||
| } | } | |||
| leaf link-local-id { | leaf link-local-id { | |||
| type union { | type union { | |||
| type inet:ip-address; | type inet:ip-address; | |||
| type uint32; | type uint32; | |||
| skipping to change at page 89, line 5 ¶ | skipping to change at page 89, line 41 ¶ | |||
| description | description | |||
| "IPv6 reachability information container - IS-IS | "IPv6 reachability information container - IS-IS | |||
| reference is TLV 236."; | reference is TLV 236."; | |||
| } | } | |||
| } | } | |||
| grouping lsdb { | grouping lsdb { | |||
| description "Link State Database (LSDB) grouping"; | description "Link State Database (LSDB) grouping"; | |||
| container database { | container database { | |||
| config false; | config false; | |||
| list level-db { | list levels { | |||
| key level; | key level; | |||
| leaf level { | leaf level { | |||
| type level-number; | type level-number; | |||
| description "LSDB level number (1 or 2)"; | description "LSDB level number (1 or 2)"; | |||
| } | } | |||
| list lsp { | list lsp { | |||
| key lsp-id; | key lsp-id; | |||
| uses lsp-entry; | uses lsp-entry; | |||
| description "List of LSPs in LSDB"; | description "List of LSPs in LSDB"; | |||
| skipping to change at page 89, line 16 ¶ | skipping to change at page 90, line 4 ¶ | |||
| key level; | key level; | |||
| leaf level { | leaf level { | |||
| type level-number; | type level-number; | |||
| description "LSDB level number (1 or 2)"; | description "LSDB level number (1 or 2)"; | |||
| } | } | |||
| list lsp { | list lsp { | |||
| key lsp-id; | key lsp-id; | |||
| uses lsp-entry; | uses lsp-entry; | |||
| description "List of LSPs in LSDB"; | description "List of LSPs in LSDB"; | |||
| } | } | |||
| description "LSP list for LSDB level container"; | description "List of LSPs for the LSDB level container"; | |||
| } | } | |||
| description "IS-IS Link State database container"; | description "IS-IS Link State database container"; | |||
| } | } | |||
| } | } | |||
| /* 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'" { | |||
| skipping to change at page 92, line 10 ¶ | skipping to change at page 92, line 45 ¶ | |||
| input { | input { | |||
| leaf routing-protocol-instance-name { | leaf routing-protocol-instance-name { | |||
| type leafref { | type leafref { | |||
| path "/rt:routing/rt:control-plane-protocols/" | path "/rt:routing/rt:control-plane-protocols/" | |||
| + "rt:control-plane-protocol/rt:name"; | + "rt:control-plane-protocol/rt:name"; | |||
| } | } | |||
| mandatory "true"; | mandatory "true"; | |||
| description | description | |||
| "Name of the IS-IS protocol instance whose IS-IS | "Name of the IS-IS protocol instance whose IS-IS | |||
| information is being queried. | adjacency is being cleared. | |||
| If the corresponding IS-IS instance doesn't exist, | If the corresponding IS-IS instance doesn't exist, | |||
| then the operation will fail with an error-tag of | then the operation will fail with an error-tag of | |||
| 'data-missing' and an error-app-tag of | 'data-missing' and an error-app-tag of | |||
| 'routing-protocol-instance-not-found'."; | 'routing-protocol-instance-not-found'."; | |||
| } | } | |||
| leaf level { | leaf level { | |||
| type level; | type level; | |||
| description | description | |||
| "IS-IS level of the adjacency to be cleared. If the | "IS-IS level of the adjacency to be cleared. If the | |||
| IS-IS level is level-1-2, both level 1 and level 2 | 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 the operation | authorized in the enum type, then the operation | |||
| skipping to change at page 95, line 14 ¶ | skipping to change at page 96, line 4 ¶ | |||
| notification attempt-to-exceed-max-sequence { | notification attempt-to-exceed-max-sequence { | |||
| uses notification-instance-hdr; | uses notification-instance-hdr; | |||
| leaf lsp-id { | leaf lsp-id { | |||
| type lsp-id; | type lsp-id; | |||
| description "LSP ID"; | description "LSP ID"; | |||
| } | } | |||
| description | description | |||
| "This notification is sent when the system | "This notification is sent when the system | |||
| wraps the 32-bit sequence counter of an LSP."; | wraps the 32-bit sequence counter of an LSP."; | |||
| } | } | |||
| notification id-len-mismatch { | notification id-len-mismatch { | |||
| uses notification-instance-hdr; | uses notification-instance-hdr; | |||
| uses notification-interface-hdr; | uses notification-interface-hdr; | |||
| leaf pdu-field-len { | leaf pdu-field-len { | |||
| type uint8; | type uint8; | |||
| description "Size of the ID length in the received PDU"; | description "Size of the ID length in the received PDU"; | |||
| } | } | |||
| leaf raw-pdu { | leaf raw-pdu { | |||
| type binary; | type binary; | |||
| description "Received raw PDU."; | description "Received raw PDU."; | |||
| } | } | |||
| description | description | |||
| "This notification is sent when we receive a PDU | "This notification is sent when we receive a PDU | |||
| with a different value for the System ID length. | with a different value for the system-id length. | |||
| The notification generation must be throttled | The notification generation must be throttled | |||
| with at least 5 seconds betweeen successive | with at least 5 seconds betweeen successive | |||
| notifications."; | notifications."; | |||
| } | } | |||
| notification max-area-addresses-mismatch { | notification max-area-addresses-mismatch { | |||
| uses notification-instance-hdr; | uses notification-instance-hdr; | |||
| uses notification-interface-hdr; | uses notification-interface-hdr; | |||
| leaf max-area-addresses { | leaf max-area-addresses { | |||
| skipping to change at page 96, line 16 ¶ | skipping to change at page 97, line 5 ¶ | |||
| notification own-lsp-purge { | notification own-lsp-purge { | |||
| 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 "LSP ID"; | description "LSP ID"; | |||
| } | } | |||
| description | description | |||
| "This notification is sent when the system receives | "This notification is sent when the system receives | |||
| a PDU with its own system ID and zero age."; | a PDU with its own system-id and zero age."; | |||
| } | } | |||
| notification sequence-number-skipped { | notification sequence-number-skipped { | |||
| 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 "LSP ID"; | description "LSP ID"; | |||
| } | } | |||
| description | description | |||
| "This notification is sent when the system receives a | "This notification is sent when the system receives a | |||
| PDU with its own system ID and different contents. The | PDU with its own system-id and different contents. The | |||
| system has to reoriginate the LSP with a higher sequence | system has to reoriginate the LSP with a higher sequence | |||
| number."; | number."; | |||
| } | } | |||
| notification authentication-type-failure { | notification authentication-type-failure { | |||
| uses notification-instance-hdr; | uses notification-instance-hdr; | |||
| uses notification-interface-hdr; | uses notification-interface-hdr; | |||
| leaf raw-pdu { | leaf raw-pdu { | |||
| type binary; | type binary; | |||
| description "Received raw PDU."; | description "Received raw PDU."; | |||
| skipping to change at page 98, line 10 ¶ | skipping to change at page 98, line 47 ¶ | |||
| notification rejected-adjacency { | notification rejected-adjacency { | |||
| uses notification-instance-hdr; | uses notification-instance-hdr; | |||
| uses notification-interface-hdr; | uses notification-interface-hdr; | |||
| leaf raw-pdu { | leaf raw-pdu { | |||
| type binary; | type binary; | |||
| description | description | |||
| "Received raw PDU."; | "Received raw PDU."; | |||
| } | } | |||
| leaf reason { | leaf reason { | |||
| type string; | type string { | |||
| length "1..255"; | ||||
| } | ||||
| description | description | |||
| "The system may provide a reason to reject the | "The system may provide a reason to reject the | |||
| adjacency. If the reason is not available, | adjacency. If the reason is not available, | |||
| an empty string will be returned."; | an empty string will be returned. | |||
| The expected format is a single line text."; | ||||
| } | } | |||
| description | description | |||
| "This notification is sent when the system receives a | "This notification is sent when the system receives a | |||
| Hello PDU from an IS but does not establish an adjacency | Hello PDU from an IS but does not establish an adjacency | |||
| for some reason. The notification generation must be | for some reason. The notification generation must be | |||
| throttled with at least 5 seconds betweeen successive | throttled with at least 5 seconds betweeen successive | |||
| notifications."; | notifications."; | |||
| } | } | |||
| notification protocols-supported-mismatch { | notification protocols-supported-mismatch { | |||
| skipping to change at page 99, line 34 ¶ | skipping to change at page 100, line 26 ¶ | |||
| "This notification is sent when the system receives an | "This notification is sent when the system receives an | |||
| LSP with a parse error. The notification generation must | LSP with a parse error. The notification generation must | |||
| be throttled with at least 5 seconds betweeen successive | be throttled with at least 5 seconds betweeen successive | |||
| notifications."; | notifications."; | |||
| } | } | |||
| notification adjacency-state-change { | notification adjacency-state-change { | |||
| uses notification-instance-hdr; | uses notification-instance-hdr; | |||
| uses notification-interface-hdr; | uses notification-interface-hdr; | |||
| leaf neighbor { | leaf neighbor { | |||
| type string; | type string { | |||
| length "1..255"; | ||||
| } | ||||
| description | description | |||
| "Name of the neighbor. If the name of the neighbor is | "Name of the neighbor. | |||
| It corresponds to the hostname associated | ||||
| with the system-id of the neighbor in the | ||||
| mapping database (RFC5301). | ||||
| If the name of the neighbor is | ||||
| not available, it is not returned."; | not available, it is not returned."; | |||
| } | } | |||
| leaf neighbor-system-id { | leaf neighbor-system-id { | |||
| type system-id; | type system-id; | |||
| description "Neighbor system-id"; | description "Neighbor system-id"; | |||
| } | } | |||
| leaf state { | leaf state { | |||
| type adj-state-type; | type adj-state-type; | |||
| description "New state of the IS-IS adjacency."; | description "New state of the IS-IS adjacency."; | |||
| } | } | |||
| leaf reason { | leaf reason { | |||
| type string; | type string { | |||
| length "1..255"; | ||||
| } | ||||
| description | description | |||
| "If the adjacency is going to DOWN, this leaf provides | "If the adjacency is going to DOWN, this leaf provides | |||
| a reason for the adjacency going down. The reason is | a reason for the adjacency going down. The reason is | |||
| provided as a text. If the adjacency is going to UP, no | provided as a text. If the adjacency is going to UP, no | |||
| reason is provided."; | reason is provided. The expected format is a single line | |||
| text."; | ||||
| } | } | |||
| description | description | |||
| "This notification is sent when an IS-IS 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; | |||
| skipping to change at page 102, line 5 ¶ | skipping to change at page 103, line 7 ¶ | |||
| Some of the readable data nodes in this YANG module may be considered | Some of the readable data nodes in this YANG module may be considered | |||
| sensitive or vulnerable in some network environments. It is thus | sensitive or vulnerable in some network environments. It is thus | |||
| important to control read access (e.g., via get, get-config, or | important to control read access (e.g., via get, get-config, or | |||
| notification) to these data nodes. The exposure of the Link State | notification) to these data nodes. The exposure of the Link State | |||
| Database (LSDB) will expose the detailed topology of the network | Database (LSDB) will expose the detailed topology of the network | |||
| including authentication parameters. Implementations MUST NOT | including authentication parameters. Implementations MUST NOT | |||
| provide a configured authentication key in a clear text format in | provide a configured authentication key in a clear text format in | |||
| response to any request (e.g., via get, get-config). | response to any request (e.g., via get, get-config). | |||
| For IS-IS authentication, configuration is supported vua the | For IS-IS authentication, configuration is supported via the | |||
| specification of key-chain [RFC8177] or the direction specification | specification of key-chain [RFC8177] or the direction specification | |||
| of key and authentication algorithm. Hence, authentification | of key and authentication algorithm. Hence, authentification | |||
| configuration using the "auth-table-trailer" case in the | configuration using the "auth-table-trailer" case in the | |||
| "authentication" container inherits the security considerations of | "authentication" container inherits the security considerations of | |||
| [RFC8177]. This includes the considerations with respect to the | [RFC8177]. This includes the considerations with respect to the | |||
| local storage and handling of authentication keys. | local storage and handling of authentication keys. | |||
| Some of the RPC operations in this YANG module may be considered | Some of the RPC operations in this YANG module may be considered | |||
| sensitive or vulnerable in some network environments. It is thus | sensitive or vulnerable in some network environments. It is thus | |||
| important to control access to these operations. The OSPF YANG | important to control access to these operations. The OSPF YANG | |||
| skipping to change at page 102, line 45 ¶ | skipping to change at page 103, line 47 ¶ | |||
| 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 | |||
| 10. Change log for ietf-isis YANG module | 10. Change log for ietf-isis YANG module | |||
| 10.1. From version -28 to version -29 | 10.1. From version -29 to version -30 | |||
| o Set a maximum-length of 255 for the non-best-reason leaf. | ||||
| o Updated some descriptions. | ||||
| o Renamed "level-db" container to "levels" for consistency reasons. | ||||
| o Added some RFC references in the YANG model. | ||||
| o Leaf default-metric of container prefix-ipv4-std is now a | ||||
| container. | ||||
| o Changed the description of the authentication and removed the | ||||
| reference to MD5 as a possible way to hide the password. | ||||
| o Changed leaf type for authentication type within | ||||
| tlv10-authentication container.Moved from string to | ||||
| keychain:crypto-algorithm identity. | ||||
| o Some admin strings are now limited to a range of 1..255. | ||||
| o Hostname string in hostname DB is limited to 255 as per RFC5301. | ||||
| o In FRR stats, "prefix" is now encoded as inet:ip-prefix rather | ||||
| than a string. "alternate" is now encoded as ip-address. | ||||
| 10.2. From version -28 to version -29 | ||||
| o Fixed area-address type pattern. The authorized number of bytes | o Fixed area-address type pattern. The authorized number of bytes | |||
| was wrong. | was wrong. | |||
| 10.2. From version -27 to version -28 | 10.3. From version -27 to version -28 | |||
| o Fixed non accurate description of level-type leaf. | o Fixed non accurate description of level-type leaf. | |||
| 10.3. From version -26 to version -27 | 10.4. From version -26 to version -27 | |||
| o Fixed XPATH to switching-capability leaf in "when" statement of | o Fixed XPATH to switching-capability leaf in "when" statement of | |||
| psc-specific and tdm-specific containers. | psc-specific and tdm-specific containers. | |||
| 10.4. From version -25 to version -26 | 10.5. From version -25 to version -26 | |||
| o Modify BFD reference descriptions. | o Modify BFD reference descriptions. | |||
| o Fix indentation. | o Fix indentation. | |||
| o "uses interface-state" was missing. | o "uses interface-state" was missing. | |||
| 10.5. From version -24 to version -25 | 10.6. From version -24 to version -25 | |||
| o RPC clear-adjacency uses now an interface reference instead of a | o RPC clear-adjacency uses now an interface reference instead of a | |||
| string. | string. | |||
| o Use expanded "address-family" rather than "af" in the model. | o Use expanded "address-family" rather than "af" in the model. | |||
| o Fix pattern for area-address. | o Fix pattern for area-address. | |||
| o Removed unnecessary identities. | o Removed unnecessary identities. | |||
| skipping to change at page 104, line 18 ¶ | skipping to change at page 105, line 45 ¶ | |||
| OSPF. | OSPF. | |||
| o Added some link attributes (GMPLS, TE, extended TE, SRLGs) in the | o Added some link attributes (GMPLS, TE, extended TE, SRLGs) in the | |||
| LSDB. | LSDB. | |||
| o Added extended-system-id typedef which contains the systemid plus | o Added extended-system-id typedef which contains the systemid plus | |||
| the pseudonode number. | the pseudonode number. | |||
| o Add support of POI Purge Originator Identification. | o Add support of POI Purge Originator Identification. | |||
| 10.6. From version -22 to version -24 | 10.7. From version -22 to version -24 | |||
| o Fix revision date of the module. | o Fix revision date of the module. | |||
| 10.7. From version -21 to version -22 | 10.8. From version -21 to version -22 | |||
| o TE router-id modeling alignment with OSPF. | o TE router-id modeling alignment with OSPF. | |||
| o Add max-ecmp + feature in spf-control container (alignment with | o Add max-ecmp + feature in spf-control container (alignment with | |||
| OSPF). | OSPF). | |||
| 10.8. From version -20 to version -21 | 10.9. From version -20 to version -21 | |||
| o Model revision date fix | o Model revision date fix | |||
| 10.9. From version -19 to version -20 | 10.10. From version -19 to version -20 | |||
| o Moved to Yang 1.1 | o Moved to Yang 1.1 | |||
| o Lower case enumerations | o Lower case enumerations | |||
| o Add RFC references to features | o Add RFC references to features | |||
| o Remove segment-routing feature | o Remove segment-routing feature | |||
| o Modified BFD activation modeling | o Modified BFD activation modeling | |||
| 10.10. From version -18 to version -19 | 10.11. 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. | |||
| 10.11. From version -17 to version -18 | 10.12. 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. | |||
| 10.12. From version -16 to version -17 | 10.13. From version -16 to version -17 | |||
| o Cosmetic fixes. | o Cosmetic fixes. | |||
| o Use of rt-types model. | o Use of rt-types model. | |||
| 10.13. From version -15 to version -16 | 10.14. 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. | |||
| 10.14. From version -14 to version -15 | 10.15. 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 106, line 5 ¶ | skipping to change at page 107, line 40 ¶ | |||
| * 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. | |||
| 10.15. From version -13 to version -14 | 10.16. 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. | |||
| 10.16. From version -12 to version -13 | 10.17. 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. | |||
| 10.17. From version -09 to version -12 | 10.18. From version -09 to version -12 | |||
| o Rename node-tag container to node-tags. | o Rename node-tag container to node-tags. | |||
| 10.18. From version -08 to version -09 | 10.19. 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. | |||
| 10.19. From version -07 to version -08 | 10.20. 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. | |||
| 10.20. From version -05 to version -07 | 10.21. 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. | |||
| 10.21. From version -03 to version -05 | 10.22. 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. | |||
| 10.22. From version -02 to version -03 | 10.23. 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. | |||
| 10.23. From version -01 to version -02 | 10.24. 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 108, line 11 ¶ | skipping to change at page 109, line 45 ¶ | |||
| 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. | |||
| 10.24. From version -00 to version -01 | 10.25. 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. | |||
| skipping to change at page 109, line 5 ¶ | skipping to change at page 110, line 36 ¶ | |||
| 11. References | 11. References | |||
| 11.1. Normative References | 11.1. Normative References | |||
| [I-D.ietf-bfd-yang] | [I-D.ietf-bfd-yang] | |||
| Rahman, R., Zheng, L., Jethanandani, M., Networks, J., and | Rahman, R., Zheng, L., Jethanandani, M., Networks, J., and | |||
| G. Mirsky, "YANG Data Model for Bidirectional Forwarding | G. Mirsky, "YANG Data Model for Bidirectional Forwarding | |||
| Detection (BFD)", draft-ietf-bfd-yang-17 (work in | Detection (BFD)", draft-ietf-bfd-yang-17 (work in | |||
| progress), August 2018. | progress), August 2018. | |||
| [ISO-10589] | ||||
| ISO, "Intermediate System to Intermediate System intra- | ||||
| domain routeing information exchange protocol for use in | ||||
| conjunction with the protocol for providing the | ||||
| connectionless-mode network service (ISO 8473)", | ||||
| International Standard 10589: 2002, Second Edition, 2002. | ||||
| [RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and | ||||
| dual environments", RFC 1195, DOI 10.17487/RFC1195, | ||||
| December 1990, <https://www.rfc-editor.org/info/rfc1195>. | ||||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
| DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | |||
| DOI 10.17487/RFC3688, January 2004, | DOI 10.17487/RFC3688, January 2004, | |||
| <https://www.rfc-editor.org/info/rfc3688>. | <https://www.rfc-editor.org/info/rfc3688>. | |||
| [RFC5029] Vasseur, JP. and S. Previdi, "Definition of an IS-IS Link | ||||
| Attribute Sub-TLV", RFC 5029, DOI 10.17487/RFC5029, | ||||
| September 2007, <https://www.rfc-editor.org/info/rfc5029>. | ||||
| [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi | [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi | |||
| Topology (MT) Routing in Intermediate System to | Topology (MT) Routing in Intermediate System to | |||
| Intermediate Systems (IS-ISs)", RFC 5120, | Intermediate Systems (IS-ISs)", RFC 5120, | |||
| DOI 10.17487/RFC5120, February 2008, | DOI 10.17487/RFC5120, February 2008, | |||
| <https://www.rfc-editor.org/info/rfc5120>. | <https://www.rfc-editor.org/info/rfc5120>. | |||
| [RFC5130] Previdi, S., Shand, M., Ed., and C. Martin, "A Policy | [RFC5130] Previdi, S., Shand, M., Ed., and C. Martin, "A Policy | |||
| Control Mechanism in IS-IS Using Administrative Tags", | Control Mechanism in IS-IS Using Administrative Tags", | |||
| RFC 5130, DOI 10.17487/RFC5130, February 2008, | RFC 5130, DOI 10.17487/RFC5130, February 2008, | |||
| <https://www.rfc-editor.org/info/rfc5130>. | <https://www.rfc-editor.org/info/rfc5130>. | |||
| [RFC5286] Atlas, A., Ed. and A. Zinin, Ed., "Basic Specification for | [RFC5286] Atlas, A., Ed. and A. Zinin, Ed., "Basic Specification for | |||
| IP Fast Reroute: Loop-Free Alternates", RFC 5286, | IP Fast Reroute: Loop-Free Alternates", RFC 5286, | |||
| DOI 10.17487/RFC5286, September 2008, | DOI 10.17487/RFC5286, September 2008, | |||
| <https://www.rfc-editor.org/info/rfc5286>. | <https://www.rfc-editor.org/info/rfc5286>. | |||
| [RFC5301] McPherson, D. and N. Shen, "Dynamic Hostname Exchange | ||||
| Mechanism for IS-IS", RFC 5301, DOI 10.17487/RFC5301, | ||||
| October 2008, <https://www.rfc-editor.org/info/rfc5301>. | ||||
| [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic | [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic | |||
| Engineering", RFC 5305, DOI 10.17487/RFC5305, October | Engineering", RFC 5305, DOI 10.17487/RFC5305, October | |||
| 2008, <https://www.rfc-editor.org/info/rfc5305>. | 2008, <https://www.rfc-editor.org/info/rfc5305>. | |||
| [RFC5306] Shand, M. and L. Ginsberg, "Restart Signaling for IS-IS", | [RFC5306] Shand, M. and L. Ginsberg, "Restart Signaling for IS-IS", | |||
| RFC 5306, DOI 10.17487/RFC5306, October 2008, | RFC 5306, DOI 10.17487/RFC5306, October 2008, | |||
| <https://www.rfc-editor.org/info/rfc5306>. | <https://www.rfc-editor.org/info/rfc5306>. | |||
| [RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308, | ||||
| DOI 10.17487/RFC5308, October 2008, | ||||
| <https://www.rfc-editor.org/info/rfc5308>. | ||||
| [RFC5443] Jork, M., Atlas, A., and L. Fang, "LDP IGP | [RFC5443] Jork, M., Atlas, A., and L. Fang, "LDP IGP | |||
| Synchronization", RFC 5443, DOI 10.17487/RFC5443, March | Synchronization", RFC 5443, DOI 10.17487/RFC5443, March | |||
| 2009, <https://www.rfc-editor.org/info/rfc5443>. | 2009, <https://www.rfc-editor.org/info/rfc5443>. | |||
| [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | |||
| (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, | (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, | |||
| <https://www.rfc-editor.org/info/rfc5880>. | <https://www.rfc-editor.org/info/rfc5880>. | |||
| [RFC5881] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | [RFC5881] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | |||
| (BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881, | (BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881, | |||
| End of changes. 103 change blocks. | ||||
| 145 lines changed or deleted | 256 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/ | ||||