1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
|
Internet Engineering Task Force (IETF) P. Psenak
Request for Comments: 7684 Cisco Systems
Category: Standards Track H. Gredler
ISSN: 2070-1721 Independent
R. Shakir
Jive Communications, Inc.
W. Henderickx
Alcatel-Lucent
J. Tantsura
Ericsson
A. Lindem
Cisco Systems
November 2015
OSPFv2 Prefix/Link Attribute Advertisement
Abstract
OSPFv2 requires functional extension beyond what can readily be done
with the fixed-format Link State Advertisements (LSAs) as described
in RFC 2328. This document defines OSPFv2 Opaque LSAs based on Type-
Length-Value (TLV) tuples that can be used to associate additional
attributes with prefixes or links. Depending on the application,
these prefixes and links may or may not be advertised in the fixed-
format LSAs. The OSPFv2 Opaque LSAs are optional and fully backward
compatible.
Status of This Memo
This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 5741.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc7684.
Psenak, et al. Standards Track [Page 1]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow
modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other
than English.
Table of Contents
1. Introduction ....................................................3
1.1. Requirements Notation ......................................3
2. OSPFv2 Extended Prefix Opaque LSA ...............................3
2.1. OSPFv2 Extended Prefix TLV .................................5
3. OSPFv2 Extended Link Opaque LSA .................................8
3.1. OSPFv2 Extended Link TLV ...................................9
4. Backward Compatibility .........................................10
5. Security Considerations ........................................10
6. IANA Considerations ............................................11
6.1. OSPFv2 Extended Prefix Opaque LSA TLVs Registry ...........11
6.2. OSPFv2 Extended Prefix TLV Sub-TLVs Registry ..............12
6.3. OSPFv2 Extended Prefix TLV Flags Registry .................12
6.4. OSPFv2 Extended Link Opaque LSA TLVs Registry .............12
6.5. OSPFv2 Extended Link TLV Sub-TLVs Registry ................13
7. References .....................................................13
7.1. Normative References ......................................13
7.2. Informative References ....................................14
Acknowledgements ..................................................14
Authors' Addresses ................................................15
Psenak, et al. Standards Track [Page 2]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
1. Introduction
OSPFv2 requires functional extension beyond what can readily be done
with the fixed-format Link State Advertisements (LSAs) as described
in RFC 2328 [OSPFV2]. This document defines OSPFv2 Opaque LSAs based
on Type-Length-Value (TLV) tuples that can be used to associate
additional attributes with prefixes or links. Depending on the
application, these prefixes and links may or may not be advertised in
the fixed-format LSAs. The OSPFv2 Opaque LSAs are optional and fully
backward compatible. This is in contrast to the approach taken in
OSPFv3 [OSPFv3-EXTEND] where the existing LSAs will be replaced by
TLV-based extended LSAs.
New requirements such as source/destination routing, route tagging,
and segment routing necessitate this extension.
This specification defines the following OSPFv2 Opaque LSAs:
1. OSPFv2 Extended Prefix Opaque LSA - Allows advertisement of
additional attributes for prefixes advertised in Router-LSAs,
Network-LSAs, Summary-LSAs (IP network), NSSA-LSAs, and
AS-external-LSAs [OSPFV2][RFC3101].
2. OSPFv2 Extended Link Opaque LSA - Allows advertisement of
additional attributes for links advertised in Router-LSAs.
Additionally, the following TLVs are defined:
1. OSPFv2 Extended Prefix TLV - Top-level TLV advertising attributes
for a prefix in the OSPFv2 Extended Prefix Opaque LSA.
2. OSPFv2 Extended Link TLV - Top-level TLV advertising attributes
for a link in the OSPFv2 Extended Link Opaque LSA.
1.1. Requirements Notation
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [KEYWORDS].
2. OSPFv2 Extended Prefix Opaque LSA
The OSPFv2 Extended Prefix Opaque LSA is used to advertise additional
prefix attributes. Opaque LSAs are described in [OPAQUE].
Multiple OSPFv2 Extended Prefix Opaque LSAs can be advertised by an
OSPFv2 router. The flooding scope of the OSPFv2 Extended Prefix
Opaque LSA depends on the scope of the advertised prefixes and is
Psenak, et al. Standards Track [Page 3]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
under the control of the advertising router. In some cases (e.g.,
mapping server deployment [SEGMENT-ROUTING]), the LSA flooding scope
may be greater than the scope of the corresponding prefixes.
The format of the OSPFv2 Extended Prefix Opaque LSA is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS age | Options | LS Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Opaque Type | Opaque ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS sequence number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS checksum | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+- TLVs -+
| ... |
OSPFv2 Extended Prefix Opaque LSA
The Opaque Type used by the OSPFv2 Extended Prefix Opaque LSA is 7.
The Opaque Type is used to differentiate the various types of OSPFv2
Opaque LSAs and is described in Section 3 of [OPAQUE]. The LS Type
may be 10 or 11, indicating that the Opaque LSA flooding scope is
area-local (10) or AS-wide (11) [OPAQUE]. The LSA Length field
[OSPFV2] represents the total length (in octets) of the Opaque LSA,
including the LSA header and all TLVs (including padding).
The Opaque ID field is an arbitrary value used to maintain multiple
OSPFv2 Extended Prefix Opaque LSAs. For OSPFv2 Extended Prefix
Opaque LSAs, the Opaque ID has no semantic significance other than to
differentiate OSPFv2 Extended Prefix Opaque LSAs originated by the
same OSPFv2 router. If multiple OSPFv2 Extended Prefix Opaque LSAs
include the same prefix, the attributes from the Opaque LSA with the
lowest Opaque ID SHOULD be used.
The format of the TLVs within the body of the OSPFv2 Extended Prefix
Opaque LSA is the same as the format used by the Traffic Engineering
Extensions to OSPFv2 [TE]. The variable TLV section consists of one
or more nested TLV tuples. Nested TLVs are also referred to as sub-
TLVs. The format of each TLV is:
Psenak, et al. Standards Track [Page 4]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value |
o
o
o
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Format
The Length field defines the length of the value portion in octets
(thus, a TLV with no value portion would have a length of 0). The
TLV is padded to 4-octet alignment; padding is not included in the
Length field (so a 3-octet value would have a length of 3, but the
total size of the TLV would be 8 octets). Nested TLVs are also
32-bit aligned. For example, a 1-byte value would have the Length
field set to 1, and 3 octets of padding would be added to the end of
the value portion of the TLV. The padding is composed of zeros.
2.1. OSPFv2 Extended Prefix TLV
The OSPFv2 Extended Prefix TLV is used to advertise additional
attributes associated with the prefix. Multiple OSPFv2 Extended
Prefix TLVs MAY be advertised in each OSPFv2 Extended Prefix Opaque
LSA. However, since the Opaque LSA type defines the flooding scope,
the LSA flooding scope MUST satisfy the application-specific
requirements for all the prefixes included in a single OSPFv2
Extended Prefix Opaque LSA. The OSPFv2 Extended Prefix TLV has the
following format:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Route Type | Prefix Length | AF | Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Address Prefix (variable) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sub-TLVs (variable) |
+- -+
| ... |
OSPFv2 Extended Prefix TLV
Psenak, et al. Standards Track [Page 5]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
Type
The TLV type. The value is 1 for this TLV type.
Length
Variable, dependent on sub-TLVs.
Route Type
The type of the OSPFv2 route. If the route type is 0
(Unspecified), the information inside the OSPFv2 External Prefix
TLV applies to the prefix regardless of prefix's route type. This
is useful when prefix-specific attributes are advertised by an
external entity that is not aware of the route type associated
with the prefix. Supported types are:
0 - Unspecified
1 - Intra-Area
3 - Inter-Area
5 - Autonomous System (AS) External
7 - Not-So-Stubby Area (NSSA) External
These route types correspond directly to the OSPFv2 LSAs types as
defined in the "OSPFv2 Link State (LS) Type" registry in
<http://www.iana.org/assignments/ospfv2-parameters>.
Specification of route types other than those defined will prevent
correlation with existing OSPFv2 LSAs and is beyond the scope of
this specification.
Prefix Length
Length of prefix in bits.
AF
Address family for the prefix. Currently, the only supported
value is 0 for IPv4 unicast. The inclusion of address family in
this TLV allows for future extension.
Flags
This one-octet field contains flags applicable to the prefix.
Supported Flags include:
0x80 - A-Flag (Attach Flag): An Area Border Router (ABR)
generating an OSPFv2 Extended Prefix TLV for an inter-area
prefix that is locally connected or attached in another
connected area SHOULD set this flag.
Psenak, et al. Standards Track [Page 6]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
0x40 - N-Flag (Node Flag): Set when the prefix identifies the
advertising router, i.e., the prefix is a host prefix
advertising a globally reachable address typically associated
with a loopback address. The advertising router MAY choose to
not set this flag even when the above conditions are met. If
the flag is set and the prefix length is not a host prefix,
then the flag MUST be ignored. The flag is preserved when the
OSPFv2 Extended Prefix Opaque LSA is propagated between areas.
Address Prefix
For the address family IPv4 unicast, the prefix itself is encoded
as a 32-bit value. The default route is represented by a prefix
of length 0. Prefix encoding for other address families is beyond
the scope of this specification.
If this TLV is advertised multiple times for the same prefix in the
same OSPFv2 Extended Prefix Opaque LSA, only the first instance of
the TLV is used by receiving OSPFv2 routers. This situation SHOULD
be logged as an error.
If this TLV is advertised multiple times for the same prefix in
different OSPFv2 Extended Prefix Opaque LSAs originated by the same
OSPFv2 router, the OSPFv2 advertising router is re-originating OSPFv2
Extended Prefix Opaque LSAs for multiple prefixes and is most likely
repacking Extended-Prefix-TLVs in OSPFv2 Extended Prefix Opaque LSAs.
In this case, the Extended-Prefix-TLV in the OSPFv2 Extended Prefix
Opaque LSA with the smallest Opaque ID is used by receiving OSPFv2
routers. This situation may be logged as a warning.
It is RECOMMENDED that OSPFv2 routers advertising OSPFv2 Extended
Prefix TLVs in different OSPFv2 Extended Prefix Opaque LSAs
re-originate these LSAs in ascending order of Opaque ID to minimize
the disruption.
If this TLV is advertised multiple times for the same prefix in
different OSPFv2 Extended Prefix Opaque LSAs originated by different
OSPFv2 routers, the application using the information is required to
determine which OSPFv2 Extended Prefix Opaque LSA is used. For
example, the application could prefer the LSA providing the best path
to the prefix.
This document creates a registry for OSPFv2 Extended Prefix sub-TLVs
in Section 6.
Psenak, et al. Standards Track [Page 7]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
3. OSPFv2 Extended Link Opaque LSA
The OSPFv2 Extended Link Opaque LSA is used to advertise additional
link attributes. Opaque LSAs are described in [OPAQUE].
The OSPFv2 Extended Link Opaque LSA has an area flooding scope.
Multiple OSPFv2 Extended Link Opaque LSAs can be advertised by a
single router in an area.
The format of the OSPFv2 Extended Link Opaque LSA is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS age | Options | LS Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Opaque Type | Opaque ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS sequence number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS checksum | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+- TLVs -+
| ... |
OSPFv2 Extended Link Opaque LSA
The Opaque Type used by the OSPFv2 Extended Link Opaque LSA is 8.
The LS Type is 10, indicating that the Opaque LSA flooding scope is
area-local [OPAQUE]. The Opaque Type is used to differentiate the
various types of OSPFv2 Opaque LSAs and is described in Section 3 of
[OPAQUE]. The LSA Length field [OSPFV2] represents the total length
(in octets) of the Opaque LSA, including the LSA header and all TLVs
(including padding).
The Opaque ID field is an arbitrary value used to maintain multiple
OSPFv2 Extended Prefix Opaque LSAs. For OSPFv2 Extended Link Opaque
LSAs, the Opaque ID has no semantic significance other than to
differentiate OSPFv2 Extended Link Opaque LSAs originated by the same
OSPFv2 router. If multiple OSPFv2 Extended Link Opaque LSAs include
the same link, the attributes from the Opaque LSA with the lowest
Opaque ID will be used.
The format of the TLVs within the body of the OSPFv2 Extended Link
Opaque LSA is the same as described in Section 2.
Psenak, et al. Standards Track [Page 8]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
3.1. OSPFv2 Extended Link TLV
The OSPFv2 Extended Link TLV is used to advertise various attributes
of the link. It describes a single link and is constructed of a set
of sub-TLVs. There are no ordering requirements for the sub-TLVs.
Only one OSPFv2 Extended Link TLV SHALL be advertised in each OSPFv2
Extended Link Opaque LSA, allowing for fine granularity changes in
the topology.
The OSPFv2 Extended Link TLV has following format:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link Type | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link Data |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sub-TLVs (variable) |
+- -+
| ... |
OSPFv2 Extended Link TLV
Type
The TLV type. The value is 1 for this TLV type.
Length
Variable, dependent on sub-TLVs.
Link Type
Link Type is defined in Section A.4.2 of [OSPFV2] and in the
"OSPFv2 Router LSA Link Type (Value 1)" registry at
<http://www.iana.org/assignments/ospfv2-parameters>.
Specification of link types other than those defined will prevent
correlation with existing OSPFv2 Router-LSA links and is beyond
the scope this specification.
Link ID
Link ID is defined in Section A.4.2 of [OSPFV2].
Link Data
Link Data is defined in Section A.4.2 of [OSPFV2].
Psenak, et al. Standards Track [Page 9]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
If this TLV is advertised multiple times in the same OSPFv2 Extended
Link Opaque LSA, only the first instance of the TLV is used by
receiving OSPFv2 routers. This situation SHOULD be logged as an
error.
If this TLV is advertised multiple times for the same link in
different OSPFv2 Extended Link Opaque LSAs originated by the same
OSPFv2 router, the OSPFv2 Extended Link TLV in the OSPFv2 Extended
Link Opaque LSA with the smallest Opaque ID is used by receiving
OSPFv2 routers. This situation may be logged as a warning.
It is RECOMMENDED that OSPFv2 routers advertising OSPFv2 Extended
Link TLVs in different OSPFv2 Extended Link Opaque LSAs re-originate
these LSAs in ascending order of Opaque ID to minimize the
disruption.
This document creates a registry for OSPFv2 Extended Link sub-TLVs in
Section 6.
4. Backward Compatibility
Since Opaque OSPFv2 LSAs are optional and backward compatible
[OPAQUE], the extensions described herein are fully backward
compatible. However, future OSPFv2 applications utilizing these
extensions MUST address backward compatibility of the corresponding
functionality.
5. Security Considerations
In general, new LSAs defined in this document are subject to the same
security concerns as those described in [OSPFV2] and [OPAQUE].
OSPFv2 applications utilizing these OSPFv2 extensions must define the
security considerations relating to those applications in the
specifications corresponding to those applications.
Additionally, implementations must assure that malformed TLV and sub-
TLV permutations are detected and do not provide a vulnerability for
attackers to crash the OSPFv2 router or routing process. Malformed
LSAs MUST NOT be stored in the Link State Database (LSDB),
acknowledged, or reflooded. Reception of malformed LSAs SHOULD be
counted and/or logged for further analysis. In this context, a
malformed LSA is one that cannot be parsed due to a TLV or sub-TLV
overrunning the end of the subsuming LSA, TLV, or sub-TLV or where
there is data remaining to be parsed but the length of the remaining
data is less than the size of a TLV header.
Psenak, et al. Standards Track [Page 10]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
6. IANA Considerations
This specification updates the "Opaque Link-State Advertisements
(LSA) Option Types" registry with the following values:
o 7 - OSPFv2 Extended Prefix Opaque LSA
o 8 - OSPFv2 Extended Link Opaque LSA
This specification also creates five new registries:
o OSPFv2 Extended Prefix Opaque LSA TLVs
o OSPFv2 Extended Prefix TLV Sub-TLVs
o OSPFv2 Extended Prefix TLV Flags
o OSPFv2 Extended Link Opaque LSA TLVs
o OSPFv2 Extended Link TLV Sub-TLVs
6.1. OSPFv2 Extended Prefix Opaque LSA TLVs Registry
The "OSPFv2 Extend Prefix Opaque LSA TLVs" registry defines top-level
TLVs for OSPFv2 Extended Prefix Opaque LSAs and has been added to the
"Open Shortest Path First v2 (OSPFv2) Parameters" registry. New
values can be allocated via IETF Review or IESG Approval [RFC5226].
The following initial values have been allocated:
o 0 - Reserved
o 1 - OSPFv2 Extended Prefix TLV
Types in the range 32768-33023 are for Experimental Use; these will
not be registered with IANA and MUST NOT be mentioned by RFCs.
Types in the range 33024-65535 are not to be assigned at this time.
Before any assignments can be made in the 33024-65535 range, there
MUST be an IETF specification that specifies IANA considerations
covering the range being assigned.
Psenak, et al. Standards Track [Page 11]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
6.2. OSPFv2 Extended Prefix TLV Sub-TLVs Registry
The "OSPFv2 Extended Prefix TLV Sub-TLVs" registry defines sub-TLVs
at any level of nesting for OSPFv2 Extended Prefix TLVs and has been
added to the "Open Shortest Path First v2 (OSPFv2) Parameters"
registry. New values can be allocated via IETF Review or IESG
Approval.
The following initial value has been allocated:
o 0 - Reserved
Types in the range 32768-33023 are for Experimental Use; these will
not be registered with IANA and MUST NOT be mentioned by RFCs.
Types in the range 33024-65535 are not to be assigned at this time.
Before any assignments can be made in the 33024-65535 range, there
MUST be an IETF specification that specifies IANA considerations
covering the range being assigned.
6.3. OSPFv2 Extended Prefix TLV Flags Registry
The "OSPFv2 Extended Prefix TLV Flags" registry defines the bits in
the 8-bit OSPFv2 Extended Prefix TLV Flags (Section 2.1). This
specification defines the A (0x80) and N (0x40) bits. This registry
has been added to the "Open Shortest Path First v2 (OSPFv2)
Parameters" registry. New values can be allocated via IETF Review or
IESG Approval.
6.4. OSPFv2 Extended Link Opaque LSA TLVs Registry
The "OSPFv2 Extended Link Opaque LSA TLVs" registry defines top-level
TLVs for OSPFv2 Extended Link Opaque LSAs and has been added to the
"Open Shortest Path First v2 (OSPFv2) Parameters" registry. New
values can be allocated via IETF Review or IESG Approval.
The following initial values have been allocated:
o 0 - Reserved
o 1 - OSPFv2 Extended Link TLV
Types in the range 32768-33023 are for Experimental Use; these will
not be registered with IANA and MUST NOT be mentioned by RFCs.
Psenak, et al. Standards Track [Page 12]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
Types in the range 33024-65535 are not to be assigned at this time.
Before any assignments can be made in the 33024-65535 range, there
MUST be an IETF specification that specifies IANA considerations
covering the range being assigned.
6.5. OSPFv2 Extended Link TLV Sub-TLVs Registry
The "OSPFv2 Extended Link TLV Sub-TLVs" registry defines sub-TLVs at
any level of nesting for OSPFv2 Extended Link TLVs and has been added
to the "Open Shortest Path First v2 (OSPFv2) Parameters" registry.
New values can be allocated via IETF Review or IESG Approval.
The following initial value has been allocated:
o 0 - Reserved
Types in the range 32768-33023 are for Experimental Use; these will
not be registered with IANA and MUST NOT be mentioned by RFCs.
Types in the range 33024-65535 are not to be assigned at this time.
Before any assignments can be made in the 33024-65535 range, there
MUST be an IETF specification that specifies IANA considerations
covering the range being assigned.
7. References
7.1. Normative References
[KEYWORDS] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[OPAQUE] Berger, L., Bryskin, I., Zinin, A., and R. Coltun, "The
OSPF Opaque LSA Option", RFC 5250, DOI 10.17487/RFC5250,
July 2008, <http://www.rfc-editor.org/info/rfc5250>.
[OSPFV2] Moy, J., "OSPF Version 2", STD 54, RFC 2328,
DOI 10.17487/RFC2328, April 1998,
<http://www.rfc-editor.org/info/rfc2328>.
[TE] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering
(TE) Extensions to OSPF Version 2", RFC 3630,
DOI 10.17487/RFC3630, September 2003,
<http://www.rfc-editor.org/info/rfc3630>.
Psenak, et al. Standards Track [Page 13]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
7.2. Informative References
[OSPFv3-EXTEND]
Lindem, A., Mirtorabi, S., Roy, A., and F. Baker, "OSPFv3
LSA Extendibility", Work in Progress, draft-ietf-ospf-
ospfv3-lsa-extend-08, October 2015.
[RFC3101] Murphy, P., "The OSPF Not-So-Stubby Area (NSSA) Option",
RFC 3101, DOI 10.17487/RFC3101, January 2003,
<http://www.rfc-editor.org/info/rfc3101>.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226,
DOI 10.17487/RFC5226, May 2008,
<http://www.rfc-editor.org/info/rfc5226>.
[SEGMENT-ROUTING]
Psenak, P., Previdi, S., Filsfils, C., Gredler, H.,
Shakir, R., Henderickx, W., and J. Tantsura, "OSPF
Extensions for Segment Routing", Work in Progress,
draft-ietf-ospf-segment-routing-extensions-05, June 2015.
Acknowledgements
We would like to thank Anton Smirnov for his contribution.
Thanks to Tony Przygienda for his review and comments.
Thanks to Wim Henderickx, Greg Harkins, Peter Psenak, Eric Wu,
Shraddha Hegde, and Csaba Mate for their responses to the
implementation survey.
Thanks to Tom Petch and Chris Bowers for review and comments.
Thanks to Alia Atlas and Alvaro Retana for their AD review and
comments.
Thanks to Carlos Pignataro and Ron Bonica for Operations Directorate
review and comments.
Thanks to Suresh Krishnan for the Gen-ART review and comments.
Thanks to Ben Campbell, Kathleen Moriarty, and Barry Leiba for IESG
review and comments.
Psenak, et al. Standards Track [Page 14]
^L
RFC 7684 OSPFv2 Prefix/Link Attributes November 2015
Authors' Addresses
Peter Psenak
Cisco Systems
Apollo Business Center
Mlynske nivy 43
Bratislava, 821 09
Slovakia
Email: ppsenak@cisco.com
Hannes Gredler
Independent
Email: hannes@gredler.at
Rob Shakir
Jive Communications, Inc.
1275 W 1600 N, Suite 100
Orem, UT 84057
United States
Email: rjs@rob.sh
Wim Henderickx
Alcatel-Lucent
Copernicuslaan
Antwerp, 2018 94089
Belgium
Email: wim.henderickx@alcatel-lucent.com
Jeff Tantsura
Ericsson
300 Holger Way
San Jose, CA 95134
United States
Email: jeff.tantsura@ericsson.com
Acee Lindem
Cisco Systems
301 Midenhall Way
Cary, NC 27513
United States
Email: acee@cisco.com
Psenak, et al. Standards Track [Page 15]
^L
|