]> git.proxmox.com Git - mirror_frr.git/blame - yang/frr-isisd.yang
Merge pull request #13060 from opensourcerouting/feature/allow_peering_with_127.0.0.1
[mirror_frr.git] / yang / frr-isisd.yang
CommitLineData
41db488c 1// SPDX-License-Identifier: BSD-2-Clause
20bd27e2
EDP
2module frr-isisd {
3 yang-version 1.1;
4 namespace "http://frrouting.org/yang/isisd";
5 prefix frr-isisd;
6
7 import ietf-yang-types {
8 prefix yang;
9 }
10
11 import ietf-inet-types {
12 prefix inet;
13 }
14
15 import frr-interface {
16 prefix frr-interface;
17 }
18
806defc8
IR
19 import frr-vrf {
20 prefix frr-vrf;
21 }
22
23 import frr-route-map {
24 prefix frr-route-map;
25 }
26
20bd27e2
EDP
27 import frr-route-types {
28 prefix frr-route-types;
29 }
30
31 organization
8678d638 32 "FRRouting";
20bd27e2
EDP
33 contact
34 "FRR Users List: <mailto:frog@lists.frrouting.org> FRR Development
35 List: <mailto:dev@lists.frrouting.org>";
36 description
fe3b629a
RW
37 "This module defines a model for managing FRR isisd daemon.
38
39 Copyright 2020 FRRouting
40
41 Redistribution and use in source and binary forms, with or without
42 modification, are permitted provided that the following conditions
43 are met:
44
45 1. Redistributions of source code must retain the above copyright notice,
46 this list of conditions and the following disclaimer.
47
48 2. Redistributions in binary form must reproduce the above copyright
49 notice, this list of conditions and the following disclaimer in the
50 documentation and/or other materials provided with the distribution.
51
52 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
53 \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
54 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
55 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
56 HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
57 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
58 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
59 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
60 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
61 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
62 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.";
20bd27e2 63
01d43141
EDP
64 revision 2021-02-15 {
65 description
66 "Group SRGB and SRLB in a container so that they can be displayed
67 and configured together";
68 }
d2c970ff
EDP
69 revision 2020-04-06 {
70 description
71 "Group LSP timers in a container so that they can be displayed and
72 configured together";
73 }
26eb18e2
EDP
74 revision 2019-12-17 {
75 description
76 "Changed default area is-type to level-1-2";
77 }
f22b9250
QY
78 revision 2019-09-09 {
79 description
80 "Changed interface references to use
d2c970ff 81 frr-interface:interface-ref typedef";
f22b9250 82 }
20bd27e2
EDP
83 revision 2018-07-26 {
84 description
85 "Initial revision.";
86 reference
87 "ISO/IEC 10589:2002.";
88 }
89
90 typedef level {
91 type enumeration {
92 enum "level-1" {
93 value 1;
94 description
95 "This enum indicates L1-only capability.";
96 }
97 enum "level-2" {
98 value 2;
99 description
100 "This enum indicates L2-only capability.";
101 }
102 enum "level-1-2" {
103 value 3;
104 description
105 "This enum indicates capability for both levels.";
106 }
107 }
108 description
109 "This type defines IS-IS level of an object.";
110 }
111
aec5ef49
RW
112 typedef extended-circuit-id {
113 type uint32;
114 description
115 "This type defines the extended circuit ID
116 associated with an interface.";
117 }
118
e36ec6ac
DO
119 typedef hello-padding-type {
120 type enumeration {
121 enum "always" {
122 value 0;
123 description
124 "Add padding to all hello packets.";
125 }
126 enum "disabled" {
127 value 1;
128 description
129 "Do not add any padding to hello packets.";
130 }
06fbbf29 131 enum "during-adjacency-formation" {
e36ec6ac
DO
132 value 2;
133 description
134 "Add padding to hello packets during adjacency formation only.";
135 }
136 }
137 }
138
20bd27e2
EDP
139 typedef network-type {
140 type enumeration {
141 enum "unknown" {
142 value 0;
143 description
144 "Unknown network type. Only valid as a state.";
145 }
146 enum "broadcast" {
147 value 1;
148 description
149 "Broadcast circuit network-type.";
150 }
151 enum "point-to-point" {
152 value 2;
153 description
154 "Point-to-point circuit network-type.";
155 }
156 enum "loopback" {
157 value 3;
158 description
159 "Loopback circuit network-type. Only valid as a state.";
160 }
161 }
162 }
163
164 typedef lsp-id {
165 type string {
166 pattern "[0-9A-Fa-f]{4}\\.[0-9A-Fa-f]{4}\\.[0-9A-Fa-f]{4}\\.[0-9][0-9]-[0-9][0-9]";
167 }
168 description
169 "This type defines the IS-IS LSP ID format using a
170 pattern, An example LSP ID is 0143.0438.AeF0.02-01";
171 }
172
aec5ef49
RW
173 typedef snpa {
174 type string {
175 length "0 .. 20";
176 }
177 description
178 "This type defines the Subnetwork Point
179 of Attachment (SNPA) format.
180 The SNPA should be encoded according to the rules
181 specified for the particular type of subnetwork
182 being used. As an example, for an ethernet subnetwork,
183 the SNPA is encoded as a MAC address like
184 '00aa.bbcc.ddee'.";
185 }
186
20bd27e2
EDP
187 typedef system-id {
188 type string {
189 pattern "[0-9A-Fa-f]{4}\\.[0-9A-Fa-f]{4}\\.[0-9A-Fa-f]{4}";
190 }
191 description
192 "This type defines IS-IS system-id using a pattern,
193 An example system-id is 0143.0438.AeF0";
194 }
195
196 typedef net-address {
197 type string {
198 pattern "[a-fA-F0-9]{2}(\\.[a-fA-F0-9]{4}){3,9}\\.[a-fA-F0-9]{2}";
199 }
200 description
201 "This type defines an OSI NET address using a pattern,
202 An example net-address is 49.0123.6452.1972.00";
203 }
204
205 typedef if-state-type {
206 type enumeration {
207 enum "up" {
208 value 0;
209 description
210 "Up state.";
211 }
212 enum "down" {
213 value 1;
214 description
215 "Down state";
216 }
217 }
218 description
219 "This type defines the state of an interface";
220 }
221
222 typedef adj-state-type {
223 type enumeration {
224 enum "up" {
225 value 0;
226 description
227 "State indicates the adjacency is established.";
228 }
229 enum "down" {
230 value 1;
231 description
232 "State indicates the adjacency is NOT established.";
233 }
234 enum "init" {
235 value 2;
236 description
237 "State indicates the adjacency is establishing.";
238 }
239 enum "failed" {
240 value 3;
241 description
242 "State indicates the adjacency is failed.";
243 }
244 }
245 description
246 "This type defines states of an adjacency";
247 }
248
249 typedef metric-style-type {
250 type enumeration {
251 enum "narrow" {
252 value 0;
253 description
254 "This enum describes narrow metric style";
255 reference
256 "RFC1195";
257 }
258 enum "wide" {
259 value 1;
260 description
261 "This enum describes wide metric style";
262 reference
263 "RFC5305";
264 }
265 enum "transition" {
266 value 2;
267 description
268 "This enum describes transition metric style";
269 }
270 }
271 }
272
d20b14bc
RW
273 typedef access-list-ref {
274 type string;
275 }
276
381200be
RW
277 typedef prefix-list-ref {
278 type string;
279 }
280
20bd27e2
EDP
281 grouping redistribute-attributes {
282 description
283 "Common optional attributes of any redistribute entry.";
82c25998 284 leaf route-map {
806defc8 285 type frr-route-map:route-map-ref;
82c25998
DT
286 description
287 "Applies the conditions of the specified route-map to routes that
288 are redistributed into this routing instance.";
289 }
20bd27e2 290
82c25998
DT
291 leaf metric {
292 type uint32 {
293 range "0..16777215";
20bd27e2 294 }
82c25998
DT
295 default "0";
296 description
297 "Metric used for the redistributed route. If 0,
298 the default-metric attribute is used instead.";
20bd27e2
EDP
299 }
300 }
301
302 grouping redistribute-default {
303 description
304 "Redistribution of default route within a level.";
305 leaf always {
5f1e5e3f
EDP
306 type boolean;
307 default "false";
20bd27e2
EDP
308 description
309 "Always advertise default route.";
310 }
311
312 uses redistribute-attributes;
313 }
314
315 grouping isis-password {
316 description
317 "Authentication attributes or an IS-IS area or domain.";
318 leaf password {
319 type string {
320 length "1..254";
321 }
322 mandatory true;
323 description
324 "Actual password.";
325 }
326
327 leaf password-type {
328 type enumeration {
329 enum "clear" {
330 value 1;
331 description
332 "Clear-text password type.";
333 }
334 enum "md5" {
335 value 54;
336 description
337 "MD5 password type.";
338 }
339 }
340 mandatory true;
341 description
342 "Type of password used.";
343 }
344 }
345
346 grouping isis-area-password {
347 uses isis-password;
348
349 leaf authenticate-snp {
350 type enumeration {
351 enum "none" {
352 value 0;
353 description
354 "No SNP authentication.";
355 }
356 enum "send-only" {
357 value 1;
358 description
359 "Send authenticated PDUs but do not check on receiving.";
360 }
361 enum "validate" {
362 value 3;
363 description
364 "Send authenticated PDUs and check on receiving.";
365 }
366 }
367 default "none";
368 description
369 "SNP PDUs authentication.";
370 }
371 }
372
d20b14bc
RW
373 grouping global-config-lfa {
374 container lfa {
375 description
376 "LFA configuration.";
377
378 leaf load-sharing {
379 type boolean;
380 default "true";
381 description
382 "Load share prefixes across multiple backups.";
383 }
384 leaf priority-limit {
385 type enumeration {
386 enum "critical" {
387 value 0;
388 description
389 "Compute for critical priority prefixes only.";
390 }
391 enum "high" {
392 value 1;
393 description
394 "Compute for critical & high priority prefixes.";
395 }
396 enum "medium" {
397 value 2;
398 description
399 "Compute for critical, high & medium priority prefixes.";
400 }
401 }
402 description
403 "Limit backup computation up to the prefix priority.";
404 }
405 list tiebreaker {
406 key "index";
407 unique "type";
408 description
409 "Configure tiebreaker for multiple backups.";
410 leaf index {
411 type uint8 {
412 range "1..255";
413 }
414 description
415 "Preference order among tiebreakers.";
416 }
417 leaf type {
418 type enumeration {
419 enum "downstream" {
420 value 0;
421 description
422 "Prefer backup path via downstream node.";
423 }
424 enum "lowest-backup-metric" {
425 value 1;
426 description
427 "Prefer backup path with lowest total metric.";
428 }
429 enum "node-protecting" {
430 value 2;
431 description
432 "Prefer node protecting backup path.";
433 }
434 }
435 mandatory true;
436 description
437 "Tiebreaker type.";
438 }
439 }
440 }
441 }
442
381200be
RW
443 grouping global-config-remote-lfa {
444 container remote-lfa {
445 description
446 "Remote LFA configuration.";
447
448 leaf prefix-list {
449 type prefix-list-ref;
450 description
451 "Filter PQ node router ID based on prefix list.";
452 }
453 }
454 }
455
d20b14bc
RW
456 grouping interface-config-lfa {
457 container lfa {
458 description
459 "LFA configuration.";
460 leaf enable {
461 type boolean;
462 default false;
463 description
464 "Enables LFA computation.";
465 }
466 leaf-list exclude-interface {
467 type frr-interface:interface-ref;
468 description
469 "Exclude an interface from computation.";
470 }
471 }
472 }
473
381200be
RW
474 grouping interface-config-remote-lfa {
475 container remote-lfa {
476 description
477 "Remote LFA configuration.";
478
479 leaf enable {
480 type boolean;
481 default false;
482 description
483 "Enables remote LFA computation using LDP tunnels.";
484 must ". = 'false' or ../../lfa/enable = 'true'" {
485 error-message
486 "Remote LFA depends on classic LFA being configured in the interface.";
487 }
488
489 }
490 leaf maximum-metric {
491 type uint32 {
492 range "1..16777215";
493 }
494 description
495 "Limit remote LFA node selection within the metric.";
496 }
497 }
498 }
499
ed5d7032
RW
500 grouping interface-config-ti-lfa {
501 container ti-lfa {
502 description
503 "TI-LFA configuration.";
504 leaf enable {
3bb513c3
CH
505 must ". = 'false' or ../../lfa/enable = 'false'" {
506 error-message
507 "Can't enable both classic LFA and TI-LFA in the same interface.";
508 }
ed5d7032
RW
509 type boolean;
510 default false;
511 description
512 "Enables TI-LFA computation.";
513 }
514 leaf node-protection {
515 type boolean;
516 must ". = 'false' or ../enable = 'true'";
517 default false;
518 description
519 "Node protection is provided by the alternate.";
520 }
ce4eccfa
FR
521 leaf link-fallback {
522 type boolean;
523 must ". = 'false' or ../enable = 'true'";
524 default false;
525 description
526 "Fallback to link protection.";
527 }
ed5d7032
RW
528 }
529 }
530
e206450b 531 grouping interface-config {
d2c970ff
EDP
532 description
533 "Interface configuration grouping";
e206450b
RW
534 leaf area-tag {
535 type string;
536 mandatory true;
537 description
538 "Area-tag associated to this circuit.";
539 }
540
541 leaf ipv4-routing {
542 type boolean;
543 default "false";
544 description
545 "Routing IS-IS IPv4 traffic over this circuit.";
546 }
547
548 leaf ipv6-routing {
549 type boolean;
550 default "false";
551 description
552 "Routing IS-IS IPv6 traffic over this circuit.";
553 }
554
555 leaf circuit-type {
556 type level;
557 default "level-1-2";
558 description
559 "IS-type of this circuit.";
560 }
561
4affdba7
G
562 container bfd-monitoring {
563 leaf enabled {
564 type boolean;
565 default "false";
566 description
567 "Monitor IS-IS peers on this circuit.";
568 }
569 leaf profile {
570 type string;
571 description
572 "Let BFD use a pre-configured profile.";
573 }
e206450b
RW
574 }
575
576 container csnp-interval {
577 description
578 "Complete Sequence Number PDU (CSNP) generation interval.";
579 leaf level-1 {
580 type uint16 {
581 range "1..600";
582 }
583 units "seconds";
584 default "10";
585 description
586 "CNSP interval for level-1";
587 }
588
589 leaf level-2 {
590 type uint16 {
591 range "1..600";
592 }
593 units "seconds";
594 default "10";
595 description
596 "CNSP interval for level-2";
597 }
598 }
599
600 container psnp-interval {
601 description
602 "Partial Sequence Number PDU (PSNP) generation interval.";
603 leaf level-1 {
604 type uint16 {
605 range "1..120";
606 }
607 units "seconds";
608 default "2";
609 description
610 "PNSP interval for level-1";
611 }
612
613 leaf level-2 {
614 type uint16 {
615 range "1..120";
616 }
617 units "seconds";
618 default "2";
619 description
620 "PCNSP interval for level-2";
621 }
622 }
623
624 container hello {
625 description
626 "Parameters related to IS-IS hello PDUs.";
627 leaf padding {
e36ec6ac
DO
628 type hello-padding-type;
629 default "always";
e206450b 630 description
e36ec6ac 631 "Type of padding for IS-IS hello packets.";
e206450b
RW
632 }
633
634 container interval {
635 description
636 "Interval between consecutive hello messages.";
637 leaf level-1 {
638 type uint32 {
639 range "1..600";
640 }
641 units "seconds";
642 default "3";
643 description
644 "Holding time for level-1; interval will depend on multiplier.";
645 }
646
647 leaf level-2 {
648 type uint32 {
649 range "1..600";
650 }
651 units "seconds";
652 default "3";
653 description
654 "Holding time for level-2; interval will depend on multiplier.";
655 }
656 }
657
658 container multiplier {
659 description
660 "Multiplier for the hello messages holding time.";
661 leaf level-1 {
662 type uint16 {
663 range "2..100";
664 }
665 default "10";
666 description
667 "Multiplier for the hello holding time.";
668 }
669
670 leaf level-2 {
671 type uint16 {
672 range "2..100";
673 }
674 default "10";
675 description
676 "Multiplier for the hello holding time.";
677 }
678 }
679 }
680
681 container metric {
682 description
683 "Default metric for this IS-IS circuit.";
684 leaf level-1 {
685 type uint32 {
686 range "0..16777215";
687 }
688 must ". < 64 or /frr-isisd:isis/instance[area-tag = current()/../../area-tag]/metric-style = 'wide'";
689 default "10";
690 description
691 "Default level-1 metric for this IS-IS circuit.";
692 }
693
694 leaf level-2 {
695 type uint32 {
696 range "0..16777215";
697 }
698 must ". < 64 or /frr-isisd:isis/instance[area-tag = current()/../../area-tag]/metric-style = 'wide'";
699 default "10";
700 description
701 "Default level-2 metric for this IS-IS circuit.";
702 }
703 }
704
705 container priority {
706 description
707 "Priority for Designated Router election.";
708 leaf level-1 {
709 type uint8 {
710 range "0..127";
711 }
712 default "64";
713 description
714 "Level-1 priority for this IS-IS circuit.";
715 }
716
717 leaf level-2 {
718 type uint8 {
719 range "0..127";
720 }
721 default "64";
722 description
723 "Level-2 priority for this IS-IS circuit.";
724 }
725 }
726
727 leaf network-type {
728 type network-type;
e206450b 729 must "(. = \"point-to-point\") or (. = \"broadcast\")";
d2c970ff 730 default "broadcast";
e206450b
RW
731 description
732 "Explicitly configured type of IS-IS circuit (broadcast or point-to-point).";
733 }
734
735 leaf passive {
736 type boolean;
737 default "false";
738 description
739 "Interface is in passive mode.";
740 }
741
742 container password {
743 presence "Present if a password is set for this IS interface.";
744 uses isis-password;
745 }
746
747 leaf disable-three-way-handshake {
748 type boolean;
749 default "false";
750 description
751 "Disables three-way handshake when creating new adjacencies.";
752 }
753
754 container multi-topology {
755 description
756 "IS-IS topologies configured on this circuit.";
a15014f3 757 leaf standard {
e206450b
RW
758 type boolean;
759 default "true";
760 description
a15014f3 761 "Standard (IPV4 unicast) topology.";
e206450b
RW
762 }
763
764 leaf ipv4-multicast {
765 type boolean;
766 default "true";
767 description
768 "IPv4 multicast topology.";
769 }
770
771 leaf ipv4-management {
772 type boolean;
773 default "true";
774 description
775 "IPv4 management topology.";
776 }
777
778 leaf ipv6-unicast {
779 type boolean;
780 default "true";
781 description
782 "IPv6 unicast topology.";
783 }
784
785 leaf ipv6-multicast {
786 type boolean;
787 default "true";
788 description
789 "IPv6 multicast topology.";
790 }
791
792 leaf ipv6-management {
793 type boolean;
794 default "true";
795 description
796 "IPv6 management topology.";
797 }
798
799 leaf ipv6-dstsrc {
800 type boolean;
801 default "true";
802 description
803 "IPv6 destination-source topology.";
804 }
805 }
1cbf96a8 806
807 container mpls {
808 description
809 "Configuration of MPLS parameters";
810 leaf ldp-sync {
811 type boolean;
812 default "true";
813 description
814 "Enable MPLS LDP-Sync functionality on this circuit.";
815 }
816 leaf holddown {
817 type uint16 {
818 range "0..10000";
ec62fbaa
IR
819 }
820 units "seconds";
821 description
822 "Time to wait for LDP-Sync to occur before restoring interface metric.";
1cbf96a8 823 }
824 }
825
ed5d7032
RW
826 container fast-reroute {
827 description
828 "Interface IP Fast-reroute configuration.";
829 container level-1 {
830 description
831 "Level-1 IP Fast-reroute configuration.";
d20b14bc 832 uses interface-config-lfa;
381200be 833 uses interface-config-remote-lfa;
ed5d7032
RW
834 uses interface-config-ti-lfa;
835 }
836 container level-2 {
837 description
838 "Level-2 IP Fast-reroute configuration.";
d20b14bc 839 uses interface-config-lfa;
381200be 840 uses interface-config-remote-lfa;
ed5d7032
RW
841 uses interface-config-ti-lfa;
842 }
843 }
e206450b
RW
844 }
845
aec5ef49 846 grouping adjacency-state {
d2c970ff
EDP
847 description
848 "Adjacency state";
aec5ef49
RW
849 container adjacencies {
850 config false;
d2c970ff
EDP
851 description
852 "This container lists the adjacencies of
853 the local node.";
aec5ef49 854 list adjacency {
d2c970ff
EDP
855 description
856 "List of operational adjacencies.";
aec5ef49
RW
857 leaf neighbor-sys-type {
858 type level;
859 description
860 "Level capability of neighboring system";
861 }
d2c970ff 862
aec5ef49
RW
863 leaf neighbor-sysid {
864 type system-id;
865 description
866 "The system-id of the neighbor";
867 }
d2c970ff 868
aec5ef49
RW
869 leaf neighbor-extended-circuit-id {
870 type extended-circuit-id;
871 description
872 "Circuit ID of the neighbor";
873 }
d2c970ff 874
aec5ef49
RW
875 leaf neighbor-snpa {
876 type snpa;
877 description
878 "SNPA of the neighbor";
879 }
d2c970ff 880
aec5ef49
RW
881 leaf hold-timer {
882 type uint16;
d2c970ff 883 units "seconds";
aec5ef49
RW
884 description
885 "The holding time in seconds for this
886 adjacency. This value is based on
887 received hello PDUs and the elapsed
888 time since receipt.";
889 }
d2c970ff 890
aec5ef49
RW
891 leaf neighbor-priority {
892 type uint8 {
893 range "0 .. 127";
894 }
895 description
896 "Priority of the neighboring IS for becoming
897 the DIS.";
898 }
d2c970ff 899
aec5ef49
RW
900 leaf state {
901 type adj-state-type;
902 description
903 "This leaf describes the state of the interface.";
904 }
09873729 905
906 uses adjacency-sids;
4747dddb 907 uses lan-adjacency-sids;
aec5ef49 908 }
aec5ef49 909 }
aec5ef49
RW
910 }
911
c32496ee 912 grouping event-counters {
d2c970ff
EDP
913 description
914 "Grouping for IS-IS interface event counters";
c32496ee
RW
915 container event-counters {
916 config false;
d2c970ff
EDP
917 description
918 "IS-IS interface event counters.";
c32496ee
RW
919 leaf adjacency-changes {
920 type uint32;
921 description
922 "The number of times an adjacency state change has
923 occurred on this interface.";
924 }
d2c970ff 925
c32496ee
RW
926 leaf adjacency-number {
927 type uint32;
928 description
929 "The number of adjacencies on this interface.";
930 }
d2c970ff 931
c32496ee
RW
932 leaf init-fails {
933 type uint32;
934 description
935 "The number of times initialization of this
936 interface has failed. This counts events such
937 as PPP NCP failures. Failures to form an
938 adjacency are counted by adjacency-rejects.";
939 }
d2c970ff 940
c32496ee
RW
941 leaf adjacency-rejects {
942 type uint32;
943 description
944 "The number of times an adjacency has been
945 rejected on this interface.";
946 }
d2c970ff 947
c32496ee
RW
948 leaf id-len-mismatch {
949 type uint32;
950 description
951 "The number of times an IS-IS PDU with an ID
952 field length different from that for this
953 system has been received on this interface.";
954 }
d2c970ff 955
c32496ee
RW
956 leaf max-area-addresses-mismatch {
957 type uint32;
958 description
959 "The number of times an IS-IS PDU has been
960 received on this interface with the
961 max area address field differing from that of
962 this system.";
963 }
d2c970ff 964
c32496ee
RW
965 leaf authentication-type-fails {
966 type uint32;
967 description
968 "Number of authentication type mismatches.";
969 }
d2c970ff 970
c32496ee
RW
971 leaf authentication-fails {
972 type uint32;
973 description
974 "Number of authentication key failures.";
975 }
c32496ee 976 }
c32496ee
RW
977 }
978
aec5ef49
RW
979 grouping interface-state {
980 description
981 "IS-IS interface operational state.";
982 uses adjacency-state;
d2c970ff 983
c32496ee 984 uses event-counters;
aec5ef49
RW
985 }
986
20bd27e2
EDP
987 grouping notification-instance-hdr {
988 description
989 "Instance specific IS-IS notification data grouping";
990 leaf routing-instance {
991 type string;
992 description
993 "Name of the routing-instance instance.";
994 }
995
996 leaf routing-protocol-name {
997 type string;
998 description
999 "Name of the IS-IS instance.";
1000 }
1001
1002 leaf isis-level {
1003 type level;
1004 description
1005 "IS-IS level of the instance.";
1006 }
1007 }
1008
1009 grouping notification-interface-hdr {
1010 description
1011 "Interface specific IS-IS notification data grouping";
1012 leaf interface-name {
f22b9250 1013 type frr-interface:interface-ref;
20bd27e2
EDP
1014 description
1015 "IS-IS interface name";
1016 }
1017
1018 leaf interface-level {
1019 type level;
1020 description
1021 "IS-IS level of the interface.";
1022 }
1023
1024 leaf extended-circuit-id {
aec5ef49 1025 type extended-circuit-id;
20bd27e2
EDP
1026 description
1027 "Eextended circuit-id of the interface.";
1028 }
1029 }
1030
09873729 1031 grouping adjacency-sids {
1032 description
1033 "IS-IS segment routing adjacency SID grouping.";
1034 container adjacency-sids {
1035 description
1036 "This container lists the information of adjacency SID.";
1037 list adjacency-sid {
1038 leaf af {
1039 type uint8;
1040 description
1041 "This leaf describes the protocol-family associated with the
1042 adjacency SID.";
1043 }
1044
1045 leaf value {
1046 type uint32;
1047 description
1048 "This leaf describes the value of adjacency SID.";
1049 }
1050
1051 leaf weight {
1052 type uint8;
1053 description
1054 "This leaf describes the weight of the adjacency SID.";
1055 }
1056
1057 leaf protection-requested {
1058 type boolean;
1059 description
1060 "This leaf describes if the adjacency SID must be protected.";
1061 }
1062 }
1063 }
1064 }
1065
4747dddb 1066 grouping lan-adjacency-sids {
1067 description
1068 "IS-IS segment routing LAN adjacency SID grouping.";
1069 container lan-adjacency-sids {
1070 description
1071 "This container lists the information of LAN adjacency SID.";
1072 list lan-adjacency-sid {
1073 leaf af {
1074 type uint8;
1075 description
1076 "This leaf describes the protocol-family associated with the
1077 LAN adjacency SID.";
1078 }
1079
1080 leaf value {
1081 type uint32;
1082 description
1083 "This leaf describes the value of LAN adjacency SID.";
1084 }
1085
1086 leaf weight {
1087 type uint8;
1088 description
1089 "This leaf describes the weight of the LAN adjacency SID.";
1090 }
1091
1092 leaf protection-requested {
1093 type boolean;
1094 description
1095 "This leaf describes if the LAN adjacency SID must be protected.";
1096 }
1097 }
1098 }
1099 }
1100
20bd27e2
EDP
1101 container isis {
1102 description
1103 "Configuration of the IS-IS routing daemon.";
1104 list instance {
65251ce8 1105 key "area-tag vrf";
20bd27e2
EDP
1106 description
1107 "IS-IS routing instance.";
1108 leaf area-tag {
1109 type string;
1110 description
1111 "Area-tag associated to this routing instance.";
1112 }
1113
65251ce8 1114 leaf vrf {
806defc8 1115 type frr-vrf:vrf-ref;
65251ce8 1116 description
1117 "VRF NAME.";
1118 }
1119
20bd27e2
EDP
1120 leaf is-type {
1121 type level;
26eb18e2 1122 default "level-1-2";
20bd27e2
EDP
1123 description
1124 "Level of the IS-IS routing instance (OSI only).";
1125 }
1126
1127 leaf-list area-address {
1128 type net-address;
1129 max-elements 3;
1130 description
1131 "List of OSI NET addresses for this protocol instance.";
1132 }
1133
1134 leaf dynamic-hostname {
1135 type boolean;
1136 default "true";
1137 description
1138 "Dynamic hostname support for IS-IS.";
1139 }
1140
f3abc412 1141 leaf attach-send {
1142 type boolean;
1143 default "true";
1144 description
1145 "If true, attached bits are sent in LSP if L1/L2 router for inter-area traffic.";
1146 }
1147
1148 leaf attach-receive-ignore {
1149 type boolean;
1150 default "false";
1151 description
1152 "If false, attached bits received in LSP, cause default route add, if L1 router for inter-area traffic.";
1153 }
1154
20bd27e2 1155 leaf attached {
5f1e5e3f
EDP
1156 type boolean;
1157 default "false";
f3abc412 1158 status deprecated;
20bd27e2 1159 description
5f1e5e3f 1160 "If true, identify as L1/L2 router for inter-area traffic.";
20bd27e2
EDP
1161 }
1162
01ea9b03 1163 container overload {
20bd27e2 1164 description
01ea9b03
IL
1165 "Overload bit configuration.";
1166 leaf enabled {
1167 type boolean;
1168 default "false";
1169 description
1170 "If true, avoid any transit traffic.";
1171 }
1172
1173 leaf on-startup {
1174 type uint32 {
1175 range "0..86400";
1176 }
1177 units "seconds";
1178 default "0";
1179 description
1180 "The duration the overload bit should be set on startup.";
1181 }
20bd27e2
EDP
1182 }
1183
1184 leaf metric-style {
1185 type metric-style-type;
1186 must ". = 'wide' or count(../multi-topology/*) = 0";
1187 default "wide";
1188 description
1189 "Define the style of TLVs metric supported.";
1190 }
1191
d74f913c
IL
1192 leaf advertise-high-metrics {
1193 type boolean;
1194 default "false";
1195 description
1196 "Advertise high metric value on all interfaces.";
1197 }
1198
20bd27e2 1199 leaf purge-originator {
5f1e5e3f
EDP
1200 type boolean;
1201 default "false";
20bd27e2
EDP
1202 description
1203 "Use the RFC 6232 purge-originator.";
1204 reference
1205 "RFC6232";
1206 }
1207
3f3608d8
DO
1208 leaf advertise-passive-only {
1209 type boolean;
1210 default "false";
1211 description
1212 "Advertise prefixes of passive interfaces only";
1213 }
1214
20bd27e2
EDP
1215 container lsp {
1216 description
1217 "Configuration of Link-State Packets (LSP) parameters";
1218 leaf mtu {
1219 type uint16 {
1220 range "128..4352";
1221 }
1222 default "1497";
1223 description
1224 "MTU of an LSP.";
1225 }
1226
d2c970ff 1227 container timers {
20bd27e2 1228 description
d2c970ff
EDP
1229 "LSP-related timers";
1230 container level-1 {
20bd27e2 1231 description
d2c970ff
EDP
1232 "Level-1 LSP-related timers";
1233 leaf refresh-interval {
1234 type uint16;
1235 units "seconds";
1236 default "900";
1237 description
1238 "LSP refresh interval for level-1.";
1239 }
20bd27e2 1240
d2c970ff
EDP
1241 leaf maximum-lifetime {
1242 type uint16 {
1243 range "350..65535";
1244 }
1245 units "seconds";
1246 must ". >= ../refresh-interval + 300";
1247 default "1200";
1248 description
1249 "Maximum LSP lifetime for level-1.";
1250 }
20bd27e2 1251
d2c970ff
EDP
1252 leaf generation-interval {
1253 type uint16 {
1254 range "1..120";
1255 }
1256 units "seconds";
1257 must ". < ../refresh-interval";
1258 default "30";
1259 description
1260 "Minimum time allowed before level-1 LSP retransmissions.";
20bd27e2 1261 }
20bd27e2
EDP
1262 }
1263
d2c970ff 1264 container level-2 {
20bd27e2 1265 description
d2c970ff
EDP
1266 "Level-2 LSP-related timers";
1267 leaf refresh-interval {
1268 type uint16;
1269 units "seconds";
1270 default "900";
1271 description
1272 "LSP refresh interval for level-2.";
1273 }
20bd27e2 1274
d2c970ff
EDP
1275 leaf maximum-lifetime {
1276 type uint16 {
1277 range "350..65535";
1278 }
1279 units "seconds";
1280 must ". >= ../refresh-interval + 300";
1281 default "1200";
1282 description
1283 "Maximum LSP lifetime for level-2.";
20bd27e2 1284 }
20bd27e2 1285
d2c970ff
EDP
1286 leaf generation-interval {
1287 type uint16 {
1288 range "1..120";
1289 }
1290 units "seconds";
1291 must ". < ../refresh-interval";
1292 default "30";
1293 description
1294 "Minimum time allowed before level-2 LSP retransmissions.";
20bd27e2 1295 }
20bd27e2
EDP
1296 }
1297 }
1298 }
1299
1300 container spf {
1301 description
1302 "Parameters related to the Shortest Path First algorithm.";
1303 container ietf-backoff-delay {
1304 presence "Present if IETF SPF back-off delay is enabled.";
1305 description
1306 "SPF back-off delay algorithm parameters (see RFC 8405).";
1307 leaf init-delay {
1308 type uint16 {
1309 range "0..60000";
1310 }
1311 units "msec";
1312 mandatory true;
1313 description
1314 "Delay used while in QUIET state";
1315 }
1316
1317 leaf short-delay {
1318 type uint16 {
1319 range "0..60000";
1320 }
1321 units "msec";
1322 mandatory true;
1323 description
1324 "Delay used while in SHORT_WAIT state";
1325 }
1326
1327 leaf long-delay {
1328 type uint16 {
1329 range "0..60000";
1330 }
1331 units "msec";
1332 mandatory true;
1333 description
1334 "Delay used while in LONG_WAIT state";
1335 }
1336
1337 leaf hold-down {
1338 type uint16 {
1339 range "0..60000";
1340 }
1341 units "msec";
1342 mandatory true;
1343 description
1344 "Time with no received IGP events before considering IGP stable";
1345 }
1346
1347 leaf time-to-learn {
1348 type uint16 {
1349 range "0..60000";
1350 }
1351 units "msec";
1352 mandatory true;
1353 description
1354 "Maximum duration needed to learn all the events related to a
1355 single failure";
1356 }
1357 }
1358
1359 container minimum-interval {
1360 description
1361 "Minimum interval between consecutive executions of the
1362 SPF algorithm.";
1363 leaf level-1 {
1364 type uint16 {
1365 range "1..120";
1366 }
1367 units "seconds";
1368 default "1";
1369 description
1370 "Minimum time between consecutive level-1 SPFs.";
1371 }
1372
1373 leaf level-2 {
1374 type uint16 {
1375 range "1..120";
1376 }
1377 units "seconds";
1378 default "1";
1379 description
1380 "Minimum time between consecutive level-2 SPFs.";
1381 }
1382 }
d20b14bc
RW
1383
1384 container prefix-priorities {
1385 description
1386 "SPF Prefix Priority configuration";
1387
1388 container critical {
1389 description
1390 "Critical prefix priority";
1391 leaf access-list-name {
1392 type access-list-ref;
1393 description
1394 "Access List to determine prefixes for
1395 this priority";
1396 }
1397 }
1398 container high {
1399 description
1400 "High prefix priority";
1401 leaf access-list-name {
1402 type access-list-ref;
1403 description
1404 "Access List to determine prefixes for
1405 this priority";
1406 }
1407 }
1408 container medium {
1409 description
1410 "Medium prefix priority";
1411 leaf access-list-name {
1412 type access-list-ref;
1413 description
1414 "Access List to determine prefixes for
1415 this priority";
1416 }
1417 }
1418 }
20bd27e2
EDP
1419 }
1420
1421 container area-password {
1422 presence "Present if authentication is required for IS level-1.";
1423 description
1424 "Authentication password for an IS-IS area.";
1425 uses isis-area-password;
1426 }
1427
1428 container domain-password {
1429 presence "Present if authentication is required for IS level-2.";
1430 description
1431 "Authentication password for an IS-IS domain.";
1432 uses isis-area-password;
1433 }
1434
1435 container default-information-originate {
1436 description
1437 "Distribution of default information.";
1438 list ipv4 {
1439 key "level";
1440 description
1441 "Distribute default route for IPv4.";
1442 leaf level {
1443 type level;
1444 must "(. != \"level-1-2\") and ((../../../is-type = \"level-1-2\") or (. = ../../../is-type))";
1445 }
1446
1447 uses redistribute-default;
1448 }
1449
1450 list ipv6 {
1451 key "level";
1452 description
1453 "Distribute default route for IPv6.";
1454 leaf level {
1455 type level;
1456 must "(. != \"level-1-2\") and ((../../../is-type = \"level-1-2\") or (. = ../../../is-type))";
1457 }
1458
1459 uses redistribute-default;
1460 }
1461 }
1462
1463 container redistribute {
1464 description
1465 "Redistributes routes learned from other routing protocols.";
1466 list ipv4 {
1467 key "protocol level";
1468 description
1469 "IPv4 route redistribution.";
1470 leaf protocol {
1471 type frr-route-types:frr-route-types-v4;
1472 must ". != \"isis\"";
1473 description
1474 "Originating routing protocol for the IPv4 routes.";
1475 }
1476
1477 leaf level {
1478 type level;
1479 must "(. != \"level-1-2\") and ((../../../is-type = \"level-1-2\") or (. = ../../../is-type))";
1480 description
1481 "IS-IS level into which the routes should be redistributed.";
1482 }
1483
1484 uses redistribute-attributes;
1485 }
1486
1487 list ipv6 {
1488 key "protocol level";
1489 description
1490 "IPv6 route redistribution.";
1491 leaf protocol {
1492 type frr-route-types:frr-route-types-v6;
1493 must ". != \"isis\"";
1494 description
1495 "Originating routing protocol for the IPv6 routes.";
1496 }
1497
1498 leaf level {
1499 type level;
1500 must "(. != \"level-1-2\") and ((../../../is-type = \"level-1-2\") or (. = ../../../is-type))";
1501 description
1502 "IS-IS level into which the routes should be redistributed.";
1503 }
1504
1505 uses redistribute-attributes;
1506 }
1507 }
1508
1509 container multi-topology {
1510 description
1511 "IS-IS topologies configured for this area.";
1512 container ipv4-multicast {
1513 presence "Present if a separate IPv4-multicast topology is configured for this area.";
1514 description
1515 "IPv4 multicast topology.";
1516 leaf overload {
5f1e5e3f
EDP
1517 type boolean;
1518 default "false";
20bd27e2
EDP
1519 }
1520 }
1521
1522 container ipv4-management {
1523 presence "Present if a separate IPv4-management topology is configured for this area.";
1524 description
1525 "IPv4 management topology.";
1526 leaf overload {
5f1e5e3f
EDP
1527 type boolean;
1528 default "false";
20bd27e2
EDP
1529 }
1530 }
1531
1532 container ipv6-unicast {
1533 presence "Present if a separate IPv6-unicast topology is configured for this area.";
1534 description
1535 "IPv6 unicast topology.";
1536 leaf overload {
5f1e5e3f
EDP
1537 type boolean;
1538 default "false";
20bd27e2
EDP
1539 }
1540 }
1541
1542 container ipv6-multicast {
1543 presence "Present if a separate IPv6-multicast topology is configured for this area.";
1544 description
1545 "IPv6 multicast topology.";
1546 leaf overload {
5f1e5e3f
EDP
1547 type boolean;
1548 default "false";
20bd27e2
EDP
1549 }
1550 }
1551
1552 container ipv6-management {
1553 presence "Present if a separate IPv6-management topology is configured for this area.";
1554 description
1555 "IPv6 management topology.";
1556 leaf overload {
5f1e5e3f
EDP
1557 type boolean;
1558 default "false";
20bd27e2
EDP
1559 }
1560 }
1561
1562 container ipv6-dstsrc {
1563 presence "Present if a separate IPv6 destination-source topology is configured for this area.";
1564 description
1565 "IPv6 destination-source topology.";
1566 leaf overload {
5f1e5e3f
EDP
1567 type boolean;
1568 default "false";
20bd27e2
EDP
1569 }
1570 }
1571 }
1572
d20b14bc
RW
1573 container fast-reroute {
1574 description
1575 "IP Fast-reroute configuration.";
1576 container level-1 {
1577 description
1578 "Level-1 IP Fast-reroute configuration.";
1579 uses global-config-lfa;
381200be 1580 uses global-config-remote-lfa;
d20b14bc
RW
1581 }
1582 container level-2 {
1583 description
1584 "Level-2 IP Fast-reroute configuration.";
1585 uses global-config-lfa;
381200be 1586 uses global-config-remote-lfa;
d20b14bc
RW
1587 }
1588 }
1589
20bd27e2 1590 leaf log-adjacency-changes {
5f1e5e3f
EDP
1591 type boolean;
1592 default "false";
20bd27e2
EDP
1593 description
1594 "Log changes to the IS-IS adjacencies in this area.";
1595 }
20bd27e2 1596
2e2a8b91
OD
1597 container mpls-te {
1598 presence "Present if MPLS-TE is enabled.";
20bd27e2 1599 description
2e2a8b91
OD
1600 "Enable MPLS-TE functionality.";
1601 leaf router-address {
1602 type inet:ipv4-address;
1603 description
1604 "Stable IP address of the advertising router.";
1605 }
173f8887
OD
1606 leaf router-address-v6 {
1607 type inet:ipv6-address;
1608 description
1609 "Stable IPv6 address of the advertising router.";
1610 }
ed6189a9
OD
1611 leaf export {
1612 type boolean;
1613 default "false";
1614 description
1615 "Export Link State informatin.";
1616 }
20bd27e2 1617 }
7e405d3b
RW
1618
1619 container segment-routing {
1620 description
1621 "Segment Routing global configuration.";
1622 leaf enabled {
1623 type boolean;
1624 default "false";
1625 description
1626 "Enables segment-routing protocol extensions.";
1627 }
01d43141 1628 container label-blocks {
d8391312 1629 description
01d43141
EDP
1630 "Local and global label blocks.";
1631 container srgb {
1632 description
1633 "Global blocks to be advertised.";
01d43141 1634 leaf lower-bound {
3bb513c3 1635 must "../upper-bound > .";
01d43141
EDP
1636 type uint32;
1637 default "16000";
1638 description
1639 "Lower value in the label range.";
1640 }
1641 leaf upper-bound {
3bb513c3 1642 must ". > ../lower-bound";
01d43141
EDP
1643 type uint32;
1644 default "23999";
1645 description
1646 "Upper value in the label range.";
1647 }
d8391312 1648 }
01d43141
EDP
1649 container srlb {
1650 description
1651 "Local blocks to be advertised.";
01d43141 1652 leaf lower-bound {
3bb513c3 1653 must "../upper-bound > .";
01d43141
EDP
1654 type uint32;
1655 default "15000";
1656 description
1657 "Lower value in the label range.";
1658 }
1659 leaf upper-bound {
3bb513c3 1660 must ". > ../lower-bound";
01d43141
EDP
1661 type uint32;
1662 default "15999";
1663 description
1664 "Upper value in the label range.";
1665 }
d8391312
OD
1666 }
1667 }
7e405d3b
RW
1668 container msd {
1669 description
1670 "MSD configuration.";
1671 leaf node-msd {
1672 type uint8;
1673 description
1674 "Node MSD is the lowest MSD supported by the node.";
1675 }
1676 }
1677 container prefix-sid-map {
1678 description
1679 "Prefix SID configuration.";
1680 list prefix-sid {
1681 key "prefix";
1682 unique "sid-value-type sid-value";
1683 description
1684 "List of prefix SID mapped to IPv4/IPv6
1685 local prefixes.";
1686 leaf prefix {
1687 type inet:ip-prefix;
1688 description
1689 "Connected prefix sid.";
1690 }
1691 leaf sid-value-type {
1692 type enumeration {
1693 enum "index" {
1694 value 0;
1695 description
1696 "The value will be interpreted as an index.";
1697 }
1698 enum "absolute" {
1699 value 1;
1700 description
1701 "The value will become interpreted as an absolute
1702 value.";
1703 }
1704 }
1705 default "index";
1706 description
1707 "This leaf defines how value must be interpreted.";
1708 }
1709 leaf sid-value {
1710 type uint32;
1711 mandatory true;
1712 description
1713 "Value associated with prefix. The value must be
1714 interpreted in the context of sid-value-type.";
1715 }
1716 leaf last-hop-behavior {
1717 type enumeration {
1718 enum "explicit-null" {
1719 value 0;
1720 description
1721 "Use explicit-null for the SID.";
1722 }
1723 enum "no-php" {
1724 value 1;
1725 description
1726 "Do not use Penultimate Hop Popping (PHP)
1727 for the SID.";
1728 }
1729 enum "php" {
1730 value 2;
1731 description
1732 "Use PHP for the SID.";
1733 }
1734 }
1735 default "php";
1736 description
1737 "Configure last hop behavior.";
1738 }
01983712
RW
1739 leaf n-flag-clear {
1740 type boolean;
1741 default "false";
1742 description
1743 "Not a node SID";
1744 }
7e405d3b
RW
1745 }
1746 }
1747 }
1cbf96a8 1748
1749 container mpls {
1750 description
1751 "Configuration of MPLS parameters";
1752 container ldp-sync {
1753 presence "Present if MPLS LDP-Sync is enabled.";
1754 description
1755 "Enable MPLS LDP-Sync functionality.";
1756 leaf holddown {
1757 type uint16 {
1758 range "0..10000";
1759 }
1760 units "seconds";
1761 default "0";
1762 description
1763 "Time to wait for LDP-Sync to occur before restoring interface metric.";
1764 }
1765 }
1766 }
1767
20bd27e2
EDP
1768 }
1769 }
1770
1771 augment "/frr-interface:lib/frr-interface:interface" {
1772 description
1773 "Extends interface model with IS-IS related parameters.";
1774 container isis {
1775 presence "Present if an IS-IS circuit is defined for this interface.";
1776 description
1777 "IS-IS interface parameters.";
e206450b 1778 uses interface-config;
27171928
RW
1779 }
1780 }
1781
1782 augment "/frr-interface:lib/frr-interface:interface/frr-interface:state" {
1783 description
1784 "Extends interface model with IS-IS operational data.";
1785 container isis {
1786 presence "Present if an IS-IS circuit is defined for this interface.";
1787 description
1788 "IS-IS interface operational data.";
d2c970ff 1789
aec5ef49 1790 uses interface-state;
20bd27e2
EDP
1791 }
1792 }
1793
1794 notification database-overload {
1795 description
1796 "This notification is sent when an IS-IS instance
1797 overload state changes.";
1798 uses notification-instance-hdr;
1799
1800 leaf overload {
1801 type enumeration {
1802 enum "off" {
1803 value 0;
1804 description
1805 "Indicates IS-IS instance has left overload state";
1806 }
1807 enum "on" {
1808 value 1;
1809 description
1810 "Indicates IS-IS instance has entered overload state";
1811 }
1812 }
1813 description
1814 "New overload state of the IS-IS instance";
1815 }
1816 }
1817
1818 notification lsp-too-large {
1819 description
1820 "This notification is sent when we attempt to propagate
1821 an LSP that is larger than the dataLinkBlockSize for the
1822 circuit. The notification generation must be throttled
f79f7a7b 1823 with at least 5 seconds between successive
20bd27e2
EDP
1824 notifications.";
1825 uses notification-instance-hdr;
1826
1827 uses notification-interface-hdr;
1828
1829 leaf pdu-size {
1830 type uint32;
1831 description
1832 "Size of the LSP PDU";
1833 }
1834
1835 leaf lsp-id {
1836 type lsp-id;
1837 description
1838 "LSP ID";
1839 }
1840 }
1841
1842 notification if-state-change {
1843 description
1844 "This notification is sent when an interface
1845 state change is detected.";
1846 uses notification-instance-hdr;
1847
1848 uses notification-interface-hdr;
1849
1850 leaf state {
1851 type if-state-type;
1852 description
1853 "Interface state.";
1854 }
1855 }
1856
1857 notification corrupted-lsp-detected {
1858 description
1859 "This notification is sent when we find that
1860 an LSP that was stored in memory has become
1861 corrupted.";
1862 uses notification-instance-hdr;
1863
1864 leaf lsp-id {
1865 type lsp-id;
1866 description
1867 "LSP ID";
1868 }
1869 }
1870
1871 notification attempt-to-exceed-max-sequence {
1872 description
1873 "This notification is sent when the system
1874 wraps the 32-bit sequence counter of an LSP.";
1875 uses notification-instance-hdr;
1876
1877 leaf lsp-id {
1878 type lsp-id;
1879 description
1880 "LSP ID";
1881 }
1882 }
1883
1884 notification id-len-mismatch {
1885 description
1886 "This notification is sent when we receive a PDU
1887 with a different value for the System ID length.
1888 The notification generation must be throttled
f79f7a7b 1889 with at least 5 seconds between successive
20bd27e2
EDP
1890 notifications.";
1891 uses notification-instance-hdr;
1892
1893 uses notification-interface-hdr;
1894
1895 leaf pdu-field-len {
1896 type uint8;
1897 description
1898 "Size of the ID length in the received PDU";
1899 }
1900
1901 leaf raw-pdu {
1902 type binary;
1903 description
1904 "Received raw PDU.";
1905 }
1906 }
1907
1908 notification max-area-addresses-mismatch {
1909 description
1910 "This notification is sent when we receive a PDU
1911 with a different value for the Maximum Area Addresses.
1912 The notification generation must be throttled
f79f7a7b 1913 with at least 5 seconds between successive
20bd27e2
EDP
1914 notifications.";
1915 uses notification-instance-hdr;
1916
1917 uses notification-interface-hdr;
1918
1919 leaf max-area-addresses {
1920 type uint8;
1921 description
1922 "Received number of supported areas";
1923 }
1924
1925 leaf raw-pdu {
1926 type binary;
1927 description
1928 "Received raw PDU.";
1929 }
1930 }
1931
1932 notification own-lsp-purge {
1933 description
1934 "This notification is sent when the system receives
1935 a PDU with its own system ID and zero age.";
1936 uses notification-instance-hdr;
1937
1938 uses notification-interface-hdr;
1939
1940 leaf lsp-id {
1941 type lsp-id;
1942 description
1943 "LSP ID";
1944 }
1945 }
1946
1947 notification sequence-number-skipped {
1948 description
1949 "This notification is sent when the system receives a
1950 PDU with its own system ID and different contents. The
1951 system has to reoriginate the LSP with a higher sequence
1952 number.";
1953 uses notification-instance-hdr;
1954
1955 uses notification-interface-hdr;
1956
1957 leaf lsp-id {
1958 type lsp-id;
1959 description
1960 "LSP ID";
1961 }
1962 }
1963
1964 notification authentication-type-failure {
1965 description
1966 "This notification is sent when the system receives a
1967 PDU with the wrong authentication type field.
1968 The notification generation must be throttled
f79f7a7b 1969 with at least 5 seconds between successive
20bd27e2
EDP
1970 notifications.";
1971 uses notification-instance-hdr;
1972
1973 uses notification-interface-hdr;
1974
1975 leaf raw-pdu {
1976 type binary;
1977 description
1978 "Received raw PDU.";
1979 }
1980 }
1981
1982 notification authentication-failure {
1983 description
1984 "This notification is sent when the system receives
1985 a PDU with the wrong authentication information.
1986 The notification generation must be throttled with
f79f7a7b 1987 with at least 5 seconds between successive
20bd27e2
EDP
1988 notifications.";
1989 uses notification-instance-hdr;
1990
1991 uses notification-interface-hdr;
1992
1993 leaf raw-pdu {
1994 type binary;
1995 description
1996 "Received raw PDU.";
1997 }
1998 }
1999
2000 notification version-skew {
2001 description
2002 "This notification is sent when the system receives a
2003 PDU with a different protocol version number.
2004 The notification generation must be throttled
f79f7a7b 2005 with at least 5 seconds between successive
20bd27e2
EDP
2006 notifications.";
2007 uses notification-instance-hdr;
2008
2009 uses notification-interface-hdr;
2010
2011 leaf protocol-version {
2012 type uint8;
2013 description
2014 "Protocol version received in the PDU.";
2015 }
2016
2017 leaf raw-pdu {
2018 type binary;
2019 description
2020 "Received raw PDU.";
2021 }
2022 }
2023
2024 notification area-mismatch {
2025 description
2026 "This notification is sent when the system receives a
2027 Hello PDU from an IS that does not share any area
2028 address. The notification generation must be throttled
f79f7a7b 2029 with at least 5 seconds between successive
20bd27e2
EDP
2030 notifications.";
2031 uses notification-instance-hdr;
2032
2033 uses notification-interface-hdr;
2034
2035 leaf raw-pdu {
2036 type binary;
2037 description
2038 "Received raw PDU.";
2039 }
2040 }
2041
2042 notification rejected-adjacency {
2043 description
2044 "This notification is sent when the system receives a
2045 Hello PDU from an IS but does not establish an adjacency
2046 for some reason. The notification generation must be
f79f7a7b 2047 throttled with at least 5 seconds between successive
20bd27e2
EDP
2048 notifications.";
2049 uses notification-instance-hdr;
2050
2051 uses notification-interface-hdr;
2052
2053 leaf raw-pdu {
2054 type binary;
2055 description
2056 "Received raw PDU.";
2057 }
2058
2059 leaf reason {
2060 type string;
2061 description
2062 "The system may provide a reason to reject the
2063 adjacency. If the reason is not available,
2064 an empty string will be returned.";
2065 }
2066 }
2067
2068 notification lsp-error-detected {
2069 description
2070 "This notification is sent when the system receives an
2071 LSP with a parse error. The notification generation must
f79f7a7b 2072 be throttled with at least 5 seconds between successive
20bd27e2
EDP
2073 notifications.";
2074 uses notification-instance-hdr;
2075
2076 uses notification-interface-hdr;
2077
2078 leaf lsp-id {
2079 type lsp-id;
2080 description
2081 "LSP ID.";
2082 }
2083
2084 leaf raw-pdu {
2085 type binary;
2086 description
2087 "Received raw PDU.";
2088 }
2089
2090 leaf error-offset {
2091 type uint32;
2092 description
2093 "If the problem is a malformed TLV, the error-offset
2094 points to the start of the TLV. If the problem is with
2095 the LSP header, the error-offset points to the errant
2096 byte";
2097 }
2098
2099 leaf tlv-type {
2100 type uint8;
2101 description
2102 "If the problem is a malformed TLV, the tlv-type is set
2103 to the type value of the suspicious TLV. Otherwise,
2104 this leaf is not present.";
2105 }
2106 }
2107
2108 notification adjacency-state-change {
2109 description
2110 "This notification is sent when an IS-IS adjacency
2111 moves to Up state or to Down state.";
2112 uses notification-instance-hdr;
2113
2114 uses notification-interface-hdr;
2115
2116 leaf neighbor {
2117 type string;
2118 description
2119 "Name of the neighbor. If the name of the neighbor is
2120 not available, it is not returned.";
2121 }
2122
2123 leaf neighbor-system-id {
2124 type system-id;
2125 description
2126 "Neighbor system-id";
2127 }
2128
2129 leaf state {
2130 type adj-state-type;
2131 description
2132 "New state of the IS-IS adjacency.";
2133 }
2134
2135 leaf reason {
2136 type string;
2137 description
2138 "If the adjacency is going to DOWN, this leaf provides
2139 a reason for the adjacency going down. The reason is
2140 provided as a text. If the adjacency is going to UP, no
2141 reason is provided.";
2142 }
2143 }
2144
2145 notification lsp-received {
2146 description
2147 "This notification is sent when an LSP is received.
2148 The notification generation must be throttled with at
f79f7a7b 2149 least 5 seconds between successive notifications.";
20bd27e2
EDP
2150 uses notification-instance-hdr;
2151
2152 uses notification-interface-hdr;
2153
2154 leaf lsp-id {
2155 type lsp-id;
2156 description
2157 "LSP ID";
2158 }
2159
2160 leaf sequence {
2161 type uint32;
2162 description
2163 "Sequence number of the received LSP.";
2164 }
2165
2166 leaf received-timestamp {
2167 type yang:timestamp;
2168 description
2169 "Timestamp when the LSP was received.";
2170 }
2171
2172 leaf neighbor-system-id {
2173 type system-id;
2174 description
2175 "Neighbor system-id of LSP sender";
2176 }
2177 }
2178
2179 notification lsp-generation {
2180 description
2181 "This notification is sent when an LSP is regenerated.
2182 The notification generation must be throttled with at
f79f7a7b 2183 least 5 seconds between successive notifications.";
20bd27e2
EDP
2184 uses notification-instance-hdr;
2185
2186 leaf lsp-id {
2187 type lsp-id;
2188 description
2189 "LSP ID";
2190 }
2191
2192 leaf sequence {
2193 type uint32;
2194 description
2195 "Sequence number of the received LSP.";
2196 }
2197
2198 leaf send-timestamp {
2199 type yang:timestamp;
2200 description
2201 "Timestamp when our LSP was regenerated.";
2202 }
2203 }
2204}