RFC 5187
OSPFv3 Graceful Restart
RFC 5187: OSPFv3 Graceful Restart π¦
Okay bestie, this is RFC 5187 from the Network Working Group, a Standards Track doc published in June 2008. Padma Pillay-Esnault (Cisco Systems) and Acee Lindem (Redback Networks) wrote it together, and the header doesn't list anything it obsoletes or updates. The whole thing is about how OSPFv3 does graceful restart π
Status of This Memo π
Okay so this is an Internet standards track protocol for the whole Internet community, and they literally want people to discuss it and send in suggestions for improvements π«Ά For the current standardization state and status, you check the "Internet Official Protocol Standards" (STD 1) doc. And distribution is unlimited, so share away πΈ
Abstract β¨
So this doc describes OSPFv3 graceful restart. OSPFv3's graceful restart is identical to OSPFv2's, except for the differences written down here π₯ Those differences include the format of the grace Link State Advertisements (LSAs), plus some other considerations.
Table of Contents ποΈ
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Grace Link State Advertisement . . . . . . . . . . . . . . . . 2
2.1. Grace LSA - LS Type . . . . . . . . . . . . . . . . . . . . 2
2.2. Grace LSA Format . . . . . . . . . . . . . . . . . . . . . 3
3. Additional Considerations for OSPFv3 Graceful Restart . . . . . 4
3.1. Preservation of LSA ID to Prefix Correspondence . . . . . . 4
3.2. Preservation of Interface IDs for Link-LSAs,
Network-LSAs, and Router-LSAs . . . . . . . . . . . . . . . 4
4. Security Considerations . . . . . . . . . . . . . . . . . . . . 5
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5
6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 5
7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 5
7.1. Normative References . . . . . . . . . . . . . . . . . . . 5
7.2. Informative References . . . . . . . . . . . . . . . . . . 6
1. Introduction π§
Okay so the graceful OSPF restart spec, [GRACE], explains a mechanism for restarting the control plane of an OSPFv2 [OSPFv2] router whose forwarding plane is still intact π The goal is a minimum of disruption to the network, and it's giving smooth.
Now, the methods in [GRACE] work for OSPFv3 [OSPFv3] too, mostly. The one big difference is that OSPFv3 uses a grace-LSA with a different format to signal that a router is starting (or about to start) a graceful restart. This doc also covers some other OSPFv3 differences π
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 [RFC2119]. These are the official rules-of-language words, so pay attention to them π
2. Grace Link State Advertisement π
So an OSPFv3 router that's starting a graceful restart of its OSPFv3 software originates grace-LSAs. A grace-LSA basically asks the router's neighbors to help out by continuing to advertise the router as fully adjacent during the grace period. It carries the restarting router's grace-period and a reason code for why the restart is happening π
Here's the lowkey important bit: in OSPFv3 (see section 2.11 of [OSPFv3]), neighboring routers on any link are always identified by their router IDs. OSPFv2 is different. There, neighbors on point-to-point networks and virtual links are identified by their Router IDs, but neighbors on broadcast, Non-Broadcast Multi-Access (NBMA), and point-to-multipoint links are identified by their IPv4 interface addresses π Because of that, there is no requirement for the router-address TLV [GRACE] for OSPFv3 graceful restart. No router-address TLV needed, bestie β¨
The TLV formats of the grace-LSA described in [GRACE] stay exactly the same π«Ά
2.1. Grace LSA - LS Type π’
A grace-LSA is an LSA with the LS type equal to 0x000b, so that's the number you're looking for π¦
LSA function code LS Type Description
------------------------------------------
11 0x000b GRACE-LSA
Grace-LSA Type and Function Code
The S2-bit and S1-bit are set to 0 to indicate link-local flooding scope. The U-bit is set to 0 because it isn't applicable to LSAs with link-local flooding scope. Simple, clean, no notes π
2.2. Grace LSA Format πΈ
Here's how a grace LSA is laid out π
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 |0|0|0| 11 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link State ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS sequence number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS checksum | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+- TLVs -+
| ... |
Grace-LSA Format
The Link State ID of a grace-LSA in OSPFv3 is the Interface ID of the interface that originates the LSA. That's the key detail π
Each TLV is laid out like this:
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... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Format
Grace-LSA TLVs are formatted according to section 2.3.2 of [OSPF-TE]. The TLVs that can show up in the body of a grace-LSA are:
- Grace Period (Type=1, Length=4). The number of seconds that the router's neighbors should continue to advertise the router as fully adjacent, regardless of the state of database synchronization between the router and its neighbors. This TLV MUST always appear in a grace-LSA. Non-negotiable, bestie π
- Graceful restart reason (Type=2, Length=1). Encodes the reason for the router restart, as one of the following: 0 (unknown), 1 (software restart), 2 (software reload/upgrade), or 3 (switch to redundant control processor). This TLV MUST always appear in a grace-LSA. Yes, also always. It's giving consistency π
Full Copyright Statement π
okay so the IETF Trust owns the copyright on this one (2008!) π This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights β¨
This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE π
Intellectual Property π¦
the IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document, or the extent to which any license under such rights might or might not be available. it also doesn't claim that it has made any independent effort to identify any such rights π§ info on how rights work for RFC documents lives in BCP 78 and BCP 79, so go check those if you're curious π
copies of IPR disclosures made to the IETF Secretariat, and any assurances of licenses to be made available, or the result of an attempt to get a general license or permission for implementers or users to use these proprietary rights, can be found in the IETF online IPR repository at http://www.ietf.org/ipr π
the IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology needed to implement this standard. just send that info to the IETF at ietf-ipr@ietf.org π«Ά bestie, that's the whole vibe π
π¦ where this page comes from
- ietf: rfc5187 2008-06
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms