]> git.proxmox.com Git - mirror_frr.git/blob - yang/frr-isisd.yang
rmap: Minor changes in comments regarding match ip[v6] next-hop type
[mirror_frr.git] / yang / frr-isisd.yang
1 module frr-isisd {
2 yang-version 1.1;
3 namespace "http://frrouting.org/yang/isisd";
4 prefix frr-isisd;
5
6 import ietf-yang-types {
7 prefix yang;
8 }
9
10 import ietf-inet-types {
11 prefix inet;
12 }
13
14 import frr-interface {
15 prefix frr-interface;
16 }
17
18 import frr-route-types {
19 prefix frr-route-types;
20 }
21
22 organization
23 "Free Range Routing";
24 contact
25 "FRR Users List: <mailto:frog@lists.frrouting.org> FRR Development
26 List: <mailto:dev@lists.frrouting.org>";
27 description
28 "This module defines a model for managing FRR isisd daemon.";
29
30 revision 2018-07-26 {
31 description
32 "Initial revision.";
33 reference
34 "ISO/IEC 10589:2002.";
35 }
36
37 typedef level {
38 type enumeration {
39 enum "level-1" {
40 value 1;
41 description
42 "This enum indicates L1-only capability.";
43 }
44 enum "level-2" {
45 value 2;
46 description
47 "This enum indicates L2-only capability.";
48 }
49 enum "level-1-2" {
50 value 3;
51 description
52 "This enum indicates capability for both levels.";
53 }
54 }
55 description
56 "This type defines IS-IS level of an object.";
57 }
58
59 typedef network-type {
60 type enumeration {
61 enum "unknown" {
62 value 0;
63 description
64 "Unknown network type. Only valid as a state.";
65 }
66 enum "broadcast" {
67 value 1;
68 description
69 "Broadcast circuit network-type.";
70 }
71 enum "point-to-point" {
72 value 2;
73 description
74 "Point-to-point circuit network-type.";
75 }
76 enum "loopback" {
77 value 3;
78 description
79 "Loopback circuit network-type. Only valid as a state.";
80 }
81 }
82 }
83
84 typedef lsp-id {
85 type string {
86 pattern "[0-9A-Fa-f]{4}\\.[0-9A-Fa-f]{4}\\.[0-9A-Fa-f]{4}\\.[0-9][0-9]-[0-9][0-9]";
87 }
88 description
89 "This type defines the IS-IS LSP ID format using a
90 pattern, An example LSP ID is 0143.0438.AeF0.02-01";
91 }
92
93 typedef system-id {
94 type string {
95 pattern "[0-9A-Fa-f]{4}\\.[0-9A-Fa-f]{4}\\.[0-9A-Fa-f]{4}";
96 }
97 description
98 "This type defines IS-IS system-id using a pattern,
99 An example system-id is 0143.0438.AeF0";
100 }
101
102 typedef net-address {
103 type string {
104 pattern "[a-fA-F0-9]{2}(\\.[a-fA-F0-9]{4}){3,9}\\.[a-fA-F0-9]{2}";
105 }
106 description
107 "This type defines an OSI NET address using a pattern,
108 An example net-address is 49.0123.6452.1972.00";
109 }
110
111 typedef if-state-type {
112 type enumeration {
113 enum "up" {
114 value 0;
115 description
116 "Up state.";
117 }
118 enum "down" {
119 value 1;
120 description
121 "Down state";
122 }
123 }
124 description
125 "This type defines the state of an interface";
126 }
127
128 typedef adj-state-type {
129 type enumeration {
130 enum "up" {
131 value 0;
132 description
133 "State indicates the adjacency is established.";
134 }
135 enum "down" {
136 value 1;
137 description
138 "State indicates the adjacency is NOT established.";
139 }
140 enum "init" {
141 value 2;
142 description
143 "State indicates the adjacency is establishing.";
144 }
145 enum "failed" {
146 value 3;
147 description
148 "State indicates the adjacency is failed.";
149 }
150 }
151 description
152 "This type defines states of an adjacency";
153 }
154
155 typedef metric-style-type {
156 type enumeration {
157 enum "narrow" {
158 value 0;
159 description
160 "This enum describes narrow metric style";
161 reference
162 "RFC1195";
163 }
164 enum "wide" {
165 value 1;
166 description
167 "This enum describes wide metric style";
168 reference
169 "RFC5305";
170 }
171 enum "transition" {
172 value 2;
173 description
174 "This enum describes transition metric style";
175 }
176 }
177 }
178
179 grouping redistribute-attributes {
180 description
181 "Common optional attributes of any redistribute entry.";
182 leaf route-map {
183 type string {
184 length "1..max";
185 }
186 description
187 "Applies the conditions of the specified route-map to routes that
188 are redistributed into this routing instance.";
189 }
190
191 leaf metric {
192 type uint32 {
193 range "0..16777215";
194 }
195 default "0";
196 description
197 "Metric used for the redistributed route. If 0,
198 the default-metric attribute is used instead.";
199 }
200 }
201
202 grouping redistribute-default {
203 description
204 "Redistribution of default route within a level.";
205 leaf always {
206 type boolean;
207 default "false";
208 description
209 "Always advertise default route.";
210 }
211
212 uses redistribute-attributes;
213 }
214
215 grouping isis-password {
216 description
217 "Authentication attributes or an IS-IS area or domain.";
218 leaf password {
219 type string {
220 length "1..254";
221 }
222 mandatory true;
223 description
224 "Actual password.";
225 }
226
227 leaf password-type {
228 type enumeration {
229 enum "clear" {
230 value 1;
231 description
232 "Clear-text password type.";
233 }
234 enum "md5" {
235 value 54;
236 description
237 "MD5 password type.";
238 }
239 }
240 mandatory true;
241 description
242 "Type of password used.";
243 }
244 }
245
246 grouping isis-area-password {
247 uses isis-password;
248
249 leaf authenticate-snp {
250 type enumeration {
251 enum "none" {
252 value 0;
253 description
254 "No SNP authentication.";
255 }
256 enum "send-only" {
257 value 1;
258 description
259 "Send authenticated PDUs but do not check on receiving.";
260 }
261 enum "validate" {
262 value 3;
263 description
264 "Send authenticated PDUs and check on receiving.";
265 }
266 }
267 default "none";
268 description
269 "SNP PDUs authentication.";
270 }
271 }
272
273 grouping notification-instance-hdr {
274 description
275 "Instance specific IS-IS notification data grouping";
276 leaf routing-instance {
277 type string;
278 description
279 "Name of the routing-instance instance.";
280 }
281
282 leaf routing-protocol-name {
283 type string;
284 description
285 "Name of the IS-IS instance.";
286 }
287
288 leaf isis-level {
289 type level;
290 description
291 "IS-IS level of the instance.";
292 }
293 }
294
295 grouping notification-interface-hdr {
296 description
297 "Interface specific IS-IS notification data grouping";
298 leaf interface-name {
299 type string;
300 description
301 "IS-IS interface name";
302 }
303
304 leaf interface-level {
305 type level;
306 description
307 "IS-IS level of the interface.";
308 }
309
310 leaf extended-circuit-id {
311 type uint32;
312 description
313 "Eextended circuit-id of the interface.";
314 }
315 }
316
317 container isis {
318 description
319 "Configuration of the IS-IS routing daemon.";
320 list instance {
321 key "area-tag";
322 description
323 "IS-IS routing instance.";
324 leaf area-tag {
325 type string;
326 description
327 "Area-tag associated to this routing instance.";
328 }
329
330 leaf is-type {
331 type level;
332 default "level-1";
333 description
334 "Level of the IS-IS routing instance (OSI only).";
335 }
336
337 leaf-list area-address {
338 type net-address;
339 max-elements 3;
340 description
341 "List of OSI NET addresses for this protocol instance.";
342 }
343
344 leaf dynamic-hostname {
345 type boolean;
346 default "true";
347 description
348 "Dynamic hostname support for IS-IS.";
349 }
350
351 leaf attached {
352 type boolean;
353 default "false";
354 description
355 "If true, identify as L1/L2 router for inter-area traffic.";
356 }
357
358 leaf overload {
359 type boolean;
360 default "false";
361 description
362 "If true, avoid any transit traffic.";
363 }
364
365 leaf metric-style {
366 type metric-style-type;
367 must ". = 'wide' or count(../multi-topology/*) = 0";
368 default "wide";
369 description
370 "Define the style of TLVs metric supported.";
371 }
372
373 leaf purge-originator {
374 type boolean;
375 default "false";
376 description
377 "Use the RFC 6232 purge-originator.";
378 reference
379 "RFC6232";
380 }
381
382 container lsp {
383 description
384 "Configuration of Link-State Packets (LSP) parameters";
385 leaf mtu {
386 type uint16 {
387 range "128..4352";
388 }
389 default "1497";
390 description
391 "MTU of an LSP.";
392 }
393
394 container refresh-interval {
395 description
396 "";
397 leaf level-1 {
398 type uint16;
399 units "seconds";
400 default "900";
401 description
402 "LSP refresh interval for level-1.";
403 }
404
405 leaf level-2 {
406 type uint16;
407 units "seconds";
408 default "900";
409 description
410 "LSP refresh interval for level-2.";
411 }
412 }
413
414 container maximum-lifetime {
415 description
416 "Maximum LSP lifetime.";
417 leaf level-1 {
418 type uint16 {
419 range "350..65535";
420 }
421 units "seconds";
422 must ". >= ../../refresh-interval/level-1 + 300";
423 default "1200";
424 description
425 "Maximum LSP lifetime for level-1.";
426 }
427
428 leaf level-2 {
429 type uint16 {
430 range "350..65535";
431 }
432 units "seconds";
433 must ". >= ../../refresh-interval/level-2 + 300";
434 default "1200";
435 description
436 "Maximum LSP lifetime for level-2.";
437 }
438 }
439
440 container generation-interval {
441 description
442 "Minimum LSP regeneration interval.";
443 leaf level-1 {
444 type uint16 {
445 range "1..120";
446 }
447 units "seconds";
448 must ". < ../../refresh-interval/level-1";
449 default "30";
450 description
451 "Minimum time allowed before level-1 LSP retransmissions.";
452 }
453
454 leaf level-2 {
455 type uint16 {
456 range "1..120";
457 }
458 units "seconds";
459 must ". < ../../refresh-interval/level-2";
460 default "30";
461 description
462 "Minimum time allowed before level-2 LSP retransmissions.";
463 }
464 }
465 }
466
467 container spf {
468 description
469 "Parameters related to the Shortest Path First algorithm.";
470 container ietf-backoff-delay {
471 presence "Present if IETF SPF back-off delay is enabled.";
472 description
473 "SPF back-off delay algorithm parameters (see RFC 8405).";
474 leaf init-delay {
475 type uint16 {
476 range "0..60000";
477 }
478 units "msec";
479 mandatory true;
480 description
481 "Delay used while in QUIET state";
482 }
483
484 leaf short-delay {
485 type uint16 {
486 range "0..60000";
487 }
488 units "msec";
489 mandatory true;
490 description
491 "Delay used while in SHORT_WAIT state";
492 }
493
494 leaf long-delay {
495 type uint16 {
496 range "0..60000";
497 }
498 units "msec";
499 mandatory true;
500 description
501 "Delay used while in LONG_WAIT state";
502 }
503
504 leaf hold-down {
505 type uint16 {
506 range "0..60000";
507 }
508 units "msec";
509 mandatory true;
510 description
511 "Time with no received IGP events before considering IGP stable";
512 }
513
514 leaf time-to-learn {
515 type uint16 {
516 range "0..60000";
517 }
518 units "msec";
519 mandatory true;
520 description
521 "Maximum duration needed to learn all the events related to a
522 single failure";
523 }
524 }
525
526 container minimum-interval {
527 description
528 "Minimum interval between consecutive executions of the
529 SPF algorithm.";
530 leaf level-1 {
531 type uint16 {
532 range "1..120";
533 }
534 units "seconds";
535 default "1";
536 description
537 "Minimum time between consecutive level-1 SPFs.";
538 }
539
540 leaf level-2 {
541 type uint16 {
542 range "1..120";
543 }
544 units "seconds";
545 default "1";
546 description
547 "Minimum time between consecutive level-2 SPFs.";
548 }
549 }
550 }
551
552 container area-password {
553 presence "Present if authentication is required for IS level-1.";
554 description
555 "Authentication password for an IS-IS area.";
556 uses isis-area-password;
557 }
558
559 container domain-password {
560 presence "Present if authentication is required for IS level-2.";
561 description
562 "Authentication password for an IS-IS domain.";
563 uses isis-area-password;
564 }
565
566 container default-information-originate {
567 description
568 "Distribution of default information.";
569 list ipv4 {
570 key "level";
571 description
572 "Distribute default route for IPv4.";
573 leaf level {
574 type level;
575 must "(. != \"level-1-2\") and ((../../../is-type = \"level-1-2\") or (. = ../../../is-type))";
576 }
577
578 uses redistribute-default;
579 }
580
581 list ipv6 {
582 key "level";
583 description
584 "Distribute default route for IPv6.";
585 leaf level {
586 type level;
587 must "(. != \"level-1-2\") and ((../../../is-type = \"level-1-2\") or (. = ../../../is-type))";
588 }
589
590 uses redistribute-default;
591 }
592 }
593
594 container redistribute {
595 description
596 "Redistributes routes learned from other routing protocols.";
597 list ipv4 {
598 key "protocol level";
599 description
600 "IPv4 route redistribution.";
601 leaf protocol {
602 type frr-route-types:frr-route-types-v4;
603 must ". != \"isis\"";
604 description
605 "Originating routing protocol for the IPv4 routes.";
606 }
607
608 leaf level {
609 type level;
610 must "(. != \"level-1-2\") and ((../../../is-type = \"level-1-2\") or (. = ../../../is-type))";
611 description
612 "IS-IS level into which the routes should be redistributed.";
613 }
614
615 uses redistribute-attributes;
616 }
617
618 list ipv6 {
619 key "protocol level";
620 description
621 "IPv6 route redistribution.";
622 leaf protocol {
623 type frr-route-types:frr-route-types-v6;
624 must ". != \"isis\"";
625 description
626 "Originating routing protocol for the IPv6 routes.";
627 }
628
629 leaf level {
630 type level;
631 must "(. != \"level-1-2\") and ((../../../is-type = \"level-1-2\") or (. = ../../../is-type))";
632 description
633 "IS-IS level into which the routes should be redistributed.";
634 }
635
636 uses redistribute-attributes;
637 }
638 }
639
640 container multi-topology {
641 description
642 "IS-IS topologies configured for this area.";
643 container ipv4-multicast {
644 presence "Present if a separate IPv4-multicast topology is configured for this area.";
645 description
646 "IPv4 multicast topology.";
647 leaf overload {
648 type boolean;
649 default "false";
650 }
651 }
652
653 container ipv4-management {
654 presence "Present if a separate IPv4-management topology is configured for this area.";
655 description
656 "IPv4 management topology.";
657 leaf overload {
658 type boolean;
659 default "false";
660 }
661 }
662
663 container ipv6-unicast {
664 presence "Present if a separate IPv6-unicast topology is configured for this area.";
665 description
666 "IPv6 unicast topology.";
667 leaf overload {
668 type boolean;
669 default "false";
670 }
671 }
672
673 container ipv6-multicast {
674 presence "Present if a separate IPv6-multicast topology is configured for this area.";
675 description
676 "IPv6 multicast topology.";
677 leaf overload {
678 type boolean;
679 default "false";
680 }
681 }
682
683 container ipv6-management {
684 presence "Present if a separate IPv6-management topology is configured for this area.";
685 description
686 "IPv6 management topology.";
687 leaf overload {
688 type boolean;
689 default "false";
690 }
691 }
692
693 container ipv6-dstsrc {
694 presence "Present if a separate IPv6 destination-source topology is configured for this area.";
695 description
696 "IPv6 destination-source topology.";
697 leaf overload {
698 type boolean;
699 default "false";
700 }
701 }
702 }
703
704 leaf log-adjacency-changes {
705 type boolean;
706 default "false";
707 description
708 "Log changes to the IS-IS adjacencies in this area.";
709 }
710
711 container mpls-te {
712 presence "Present if MPLS-TE is enabled.";
713 description
714 "Enable MPLS-TE functionality.";
715 leaf router-address {
716 type inet:ipv4-address;
717 description
718 "Stable IP address of the advertising router.";
719 }
720 }
721 }
722 }
723
724 augment "/frr-interface:lib/frr-interface:interface" {
725 description
726 "Extends interface model with IS-IS related parameters.";
727 container isis {
728 presence "Present if an IS-IS circuit is defined for this interface.";
729 description
730 "IS-IS interface parameters.";
731 leaf area-tag {
732 type string;
733 mandatory true;
734 description
735 "Area-tag associated to this circuit.";
736 }
737
738 leaf ipv4-routing {
739 type boolean;
740 default "false";
741 description
742 "Routing IS-IS IPv4 traffic over this circuit.";
743 }
744
745 leaf ipv6-routing {
746 type boolean;
747 default "false";
748 description
749 "Routing IS-IS IPv6 traffic over this circuit.";
750 }
751
752 leaf circuit-type {
753 type level;
754 default "level-1-2";
755 description
756 "IS-type of this circuit.";
757 }
758
759 container csnp-interval {
760 description
761 "Complete Sequence Number PDU (CSNP) generation interval.";
762 leaf level-1 {
763 type uint16 {
764 range "1..600";
765 }
766 units "seconds";
767 default "10";
768 description
769 "CNSP interval for level-1";
770 }
771
772 leaf level-2 {
773 type uint16 {
774 range "1..600";
775 }
776 units "seconds";
777 default "10";
778 description
779 "CNSP interval for level-2";
780 }
781 }
782
783 container psnp-interval {
784 description
785 "Partial Sequence Number PDU (PSNP) generation interval.";
786 leaf level-1 {
787 type uint16 {
788 range "1..120";
789 }
790 units "seconds";
791 default "2";
792 description
793 "PNSP interval for level-1";
794 }
795
796 leaf level-2 {
797 type uint16 {
798 range "1..120";
799 }
800 units "seconds";
801 default "2";
802 description
803 "PCNSP interval for level-2";
804 }
805 }
806
807 container hello {
808 description
809 "Parameters related to IS-IS hello PDUs.";
810 leaf padding {
811 type boolean;
812 default "true";
813 description
814 "Add padding to IS-IS hello PDUs.";
815 }
816
817 container interval {
818 description
819 "Interval between consecutive hello messages.";
820 leaf level-1 {
821 type uint32 {
822 range "1..600";
823 }
824 units "seconds";
825 default "3";
826 description
827 "Holding time for level-1; interval will depend on multiplier.";
828 }
829
830 leaf level-2 {
831 type uint32 {
832 range "1..600";
833 }
834 units "seconds";
835 default "3";
836 description
837 "Holding time for level-2; interval will depend on multiplier.";
838 }
839 }
840
841 container multiplier {
842 description
843 "Multiplier for the hello messages holding time.";
844 leaf level-1 {
845 type uint16 {
846 range "2..100";
847 }
848 default "10";
849 description
850 "Multiplier for the hello holding time.";
851 }
852
853 leaf level-2 {
854 type uint16 {
855 range "2..100";
856 }
857 default "10";
858 description
859 "Multiplier for the hello holding time.";
860 }
861 }
862 }
863
864 container metric {
865 description
866 "Default metric for this IS-IS circuit.";
867 leaf level-1 {
868 type uint32 {
869 range "0..16777215";
870 }
871 must ". < 64 or /frr-isisd:isis/instance[area-tag = current()/../../area-tag]/metric-style = 'wide'";
872 default "10";
873 description
874 "Default level-1 metric for this IS-IS circuit.";
875 }
876
877 leaf level-2 {
878 type uint32 {
879 range "0..16777215";
880 }
881 must ". < 64 or /frr-isisd:isis/instance[area-tag = current()/../../area-tag]/metric-style = 'wide'";
882 default "10";
883 description
884 "Default level-2 metric for this IS-IS circuit.";
885 }
886 }
887
888 container priority {
889 description
890 "Priority for Designated Router election.";
891 leaf level-1 {
892 type uint8 {
893 range "0..127";
894 }
895 default "64";
896 description
897 "Level-1 priority for this IS-IS circuit.";
898 }
899
900 leaf level-2 {
901 type uint8 {
902 range "0..127";
903 }
904 default "64";
905 description
906 "Level-2 priority for this IS-IS circuit.";
907 }
908 }
909
910 leaf network-type {
911 type network-type;
912 default "broadcast";
913 must "(. = \"point-to-point\") or (. = \"broadcast\")";
914 description
915 "Explicitly configured type of IS-IS circuit (broadcast or point-to-point).";
916 }
917
918 leaf passive {
919 type boolean;
920 default "false";
921 description
922 "Interface is in passive mode.";
923 }
924
925 container password {
926 presence "Present if a password is set for this IS interface.";
927 uses isis-password;
928 }
929
930 leaf disable-three-way-handshake {
931 type boolean;
932 default "false";
933 description
934 "Disables three-way handshake when creating new adjacencies.";
935 }
936
937 container multi-topology {
938 description
939 "IS-IS topologies configured on this circuit.";
940 leaf ipv4-unicast {
941 type boolean;
942 default "true";
943 description
944 "IPv4 unicast topology.";
945 }
946
947 leaf ipv4-multicast {
948 type boolean;
949 default "true";
950 description
951 "IPv4 multicast topology.";
952 }
953
954 leaf ipv4-management {
955 type boolean;
956 default "true";
957 description
958 "IPv4 management topology.";
959 }
960
961 leaf ipv6-unicast {
962 type boolean;
963 default "true";
964 description
965 "IPv6 unicast topology.";
966 }
967
968 leaf ipv6-multicast {
969 type boolean;
970 default "true";
971 description
972 "IPv6 multicast topology.";
973 }
974
975 leaf ipv6-management {
976 type boolean;
977 default "true";
978 description
979 "IPv6 management topology.";
980 }
981
982 leaf ipv6-dstsrc {
983 type boolean;
984 default "true";
985 description
986 "IPv6 destination-source topology.";
987 }
988 }
989 }
990 }
991
992 notification database-overload {
993 description
994 "This notification is sent when an IS-IS instance
995 overload state changes.";
996 uses notification-instance-hdr;
997
998 leaf overload {
999 type enumeration {
1000 enum "off" {
1001 value 0;
1002 description
1003 "Indicates IS-IS instance has left overload state";
1004 }
1005 enum "on" {
1006 value 1;
1007 description
1008 "Indicates IS-IS instance has entered overload state";
1009 }
1010 }
1011 description
1012 "New overload state of the IS-IS instance";
1013 }
1014 }
1015
1016 notification lsp-too-large {
1017 description
1018 "This notification is sent when we attempt to propagate
1019 an LSP that is larger than the dataLinkBlockSize for the
1020 circuit. The notification generation must be throttled
1021 with at least 5 seconds betweeen successive
1022 notifications.";
1023 uses notification-instance-hdr;
1024
1025 uses notification-interface-hdr;
1026
1027 leaf pdu-size {
1028 type uint32;
1029 description
1030 "Size of the LSP PDU";
1031 }
1032
1033 leaf lsp-id {
1034 type lsp-id;
1035 description
1036 "LSP ID";
1037 }
1038 }
1039
1040 notification if-state-change {
1041 description
1042 "This notification is sent when an interface
1043 state change is detected.";
1044 uses notification-instance-hdr;
1045
1046 uses notification-interface-hdr;
1047
1048 leaf state {
1049 type if-state-type;
1050 description
1051 "Interface state.";
1052 }
1053 }
1054
1055 notification corrupted-lsp-detected {
1056 description
1057 "This notification is sent when we find that
1058 an LSP that was stored in memory has become
1059 corrupted.";
1060 uses notification-instance-hdr;
1061
1062 leaf lsp-id {
1063 type lsp-id;
1064 description
1065 "LSP ID";
1066 }
1067 }
1068
1069 notification attempt-to-exceed-max-sequence {
1070 description
1071 "This notification is sent when the system
1072 wraps the 32-bit sequence counter of an LSP.";
1073 uses notification-instance-hdr;
1074
1075 leaf lsp-id {
1076 type lsp-id;
1077 description
1078 "LSP ID";
1079 }
1080 }
1081
1082 notification id-len-mismatch {
1083 description
1084 "This notification is sent when we receive a PDU
1085 with a different value for the System ID length.
1086 The notification generation must be throttled
1087 with at least 5 seconds betweeen successive
1088 notifications.";
1089 uses notification-instance-hdr;
1090
1091 uses notification-interface-hdr;
1092
1093 leaf pdu-field-len {
1094 type uint8;
1095 description
1096 "Size of the ID length in the received PDU";
1097 }
1098
1099 leaf raw-pdu {
1100 type binary;
1101 description
1102 "Received raw PDU.";
1103 }
1104 }
1105
1106 notification max-area-addresses-mismatch {
1107 description
1108 "This notification is sent when we receive a PDU
1109 with a different value for the Maximum Area Addresses.
1110 The notification generation must be throttled
1111 with at least 5 seconds betweeen successive
1112 notifications.";
1113 uses notification-instance-hdr;
1114
1115 uses notification-interface-hdr;
1116
1117 leaf max-area-addresses {
1118 type uint8;
1119 description
1120 "Received number of supported areas";
1121 }
1122
1123 leaf raw-pdu {
1124 type binary;
1125 description
1126 "Received raw PDU.";
1127 }
1128 }
1129
1130 notification own-lsp-purge {
1131 description
1132 "This notification is sent when the system receives
1133 a PDU with its own system ID and zero age.";
1134 uses notification-instance-hdr;
1135
1136 uses notification-interface-hdr;
1137
1138 leaf lsp-id {
1139 type lsp-id;
1140 description
1141 "LSP ID";
1142 }
1143 }
1144
1145 notification sequence-number-skipped {
1146 description
1147 "This notification is sent when the system receives a
1148 PDU with its own system ID and different contents. The
1149 system has to reoriginate the LSP with a higher sequence
1150 number.";
1151 uses notification-instance-hdr;
1152
1153 uses notification-interface-hdr;
1154
1155 leaf lsp-id {
1156 type lsp-id;
1157 description
1158 "LSP ID";
1159 }
1160 }
1161
1162 notification authentication-type-failure {
1163 description
1164 "This notification is sent when the system receives a
1165 PDU with the wrong authentication type field.
1166 The notification generation must be throttled
1167 with at least 5 seconds betweeen successive
1168 notifications.";
1169 uses notification-instance-hdr;
1170
1171 uses notification-interface-hdr;
1172
1173 leaf raw-pdu {
1174 type binary;
1175 description
1176 "Received raw PDU.";
1177 }
1178 }
1179
1180 notification authentication-failure {
1181 description
1182 "This notification is sent when the system receives
1183 a PDU with the wrong authentication information.
1184 The notification generation must be throttled with
1185 with at least 5 seconds betweeen successive
1186 notifications.";
1187 uses notification-instance-hdr;
1188
1189 uses notification-interface-hdr;
1190
1191 leaf raw-pdu {
1192 type binary;
1193 description
1194 "Received raw PDU.";
1195 }
1196 }
1197
1198 notification version-skew {
1199 description
1200 "This notification is sent when the system receives a
1201 PDU with a different protocol version number.
1202 The notification generation must be throttled
1203 with at least 5 seconds betweeen successive
1204 notifications.";
1205 uses notification-instance-hdr;
1206
1207 uses notification-interface-hdr;
1208
1209 leaf protocol-version {
1210 type uint8;
1211 description
1212 "Protocol version received in the PDU.";
1213 }
1214
1215 leaf raw-pdu {
1216 type binary;
1217 description
1218 "Received raw PDU.";
1219 }
1220 }
1221
1222 notification area-mismatch {
1223 description
1224 "This notification is sent when the system receives a
1225 Hello PDU from an IS that does not share any area
1226 address. The notification generation must be throttled
1227 with at least 5 seconds betweeen successive
1228 notifications.";
1229 uses notification-instance-hdr;
1230
1231 uses notification-interface-hdr;
1232
1233 leaf raw-pdu {
1234 type binary;
1235 description
1236 "Received raw PDU.";
1237 }
1238 }
1239
1240 notification rejected-adjacency {
1241 description
1242 "This notification is sent when the system receives a
1243 Hello PDU from an IS but does not establish an adjacency
1244 for some reason. The notification generation must be
1245 throttled with at least 5 seconds betweeen successive
1246 notifications.";
1247 uses notification-instance-hdr;
1248
1249 uses notification-interface-hdr;
1250
1251 leaf raw-pdu {
1252 type binary;
1253 description
1254 "Received raw PDU.";
1255 }
1256
1257 leaf reason {
1258 type string;
1259 description
1260 "The system may provide a reason to reject the
1261 adjacency. If the reason is not available,
1262 an empty string will be returned.";
1263 }
1264 }
1265
1266 notification lsp-error-detected {
1267 description
1268 "This notification is sent when the system receives an
1269 LSP with a parse error. The notification generation must
1270 be throttled with at least 5 seconds betweeen successive
1271 notifications.";
1272 uses notification-instance-hdr;
1273
1274 uses notification-interface-hdr;
1275
1276 leaf lsp-id {
1277 type lsp-id;
1278 description
1279 "LSP ID.";
1280 }
1281
1282 leaf raw-pdu {
1283 type binary;
1284 description
1285 "Received raw PDU.";
1286 }
1287
1288 leaf error-offset {
1289 type uint32;
1290 description
1291 "If the problem is a malformed TLV, the error-offset
1292 points to the start of the TLV. If the problem is with
1293 the LSP header, the error-offset points to the errant
1294 byte";
1295 }
1296
1297 leaf tlv-type {
1298 type uint8;
1299 description
1300 "If the problem is a malformed TLV, the tlv-type is set
1301 to the type value of the suspicious TLV. Otherwise,
1302 this leaf is not present.";
1303 }
1304 }
1305
1306 notification adjacency-state-change {
1307 description
1308 "This notification is sent when an IS-IS adjacency
1309 moves to Up state or to Down state.";
1310 uses notification-instance-hdr;
1311
1312 uses notification-interface-hdr;
1313
1314 leaf neighbor {
1315 type string;
1316 description
1317 "Name of the neighbor. If the name of the neighbor is
1318 not available, it is not returned.";
1319 }
1320
1321 leaf neighbor-system-id {
1322 type system-id;
1323 description
1324 "Neighbor system-id";
1325 }
1326
1327 leaf state {
1328 type adj-state-type;
1329 description
1330 "New state of the IS-IS adjacency.";
1331 }
1332
1333 leaf reason {
1334 type string;
1335 description
1336 "If the adjacency is going to DOWN, this leaf provides
1337 a reason for the adjacency going down. The reason is
1338 provided as a text. If the adjacency is going to UP, no
1339 reason is provided.";
1340 }
1341 }
1342
1343 notification lsp-received {
1344 description
1345 "This notification is sent when an LSP is received.
1346 The notification generation must be throttled with at
1347 least 5 seconds betweeen successive notifications.";
1348 uses notification-instance-hdr;
1349
1350 uses notification-interface-hdr;
1351
1352 leaf lsp-id {
1353 type lsp-id;
1354 description
1355 "LSP ID";
1356 }
1357
1358 leaf sequence {
1359 type uint32;
1360 description
1361 "Sequence number of the received LSP.";
1362 }
1363
1364 leaf received-timestamp {
1365 type yang:timestamp;
1366 description
1367 "Timestamp when the LSP was received.";
1368 }
1369
1370 leaf neighbor-system-id {
1371 type system-id;
1372 description
1373 "Neighbor system-id of LSP sender";
1374 }
1375 }
1376
1377 notification lsp-generation {
1378 description
1379 "This notification is sent when an LSP is regenerated.
1380 The notification generation must be throttled with at
1381 least 5 seconds betweeen successive notifications.";
1382 uses notification-instance-hdr;
1383
1384 leaf lsp-id {
1385 type lsp-id;
1386 description
1387 "LSP ID";
1388 }
1389
1390 leaf sequence {
1391 type uint32;
1392 description
1393 "Sequence number of the received LSP.";
1394 }
1395
1396 leaf send-timestamp {
1397 type yang:timestamp;
1398 description
1399 "Timestamp when our LSP was regenerated.";
1400 }
1401 }
1402 }