Internet DRAFT - draft-li-lsr-ospf-purge-originator
draft-li-lsr-ospf-purge-originator
LSR Working Group Z.Li
Internet Draft China Mobile
Intended status: Standards Track C. Lin
Expires: May 8, 2024 New H3C Technologies
November 8, 2023
Purge Originator Identification for OSPF
draft-li-lsr-ospf-purge-originator-01
Abstract
In RFC6232(Purge Originator Identification TLV for IS-IS), ISIS POI
(Purge Originator Identification) TLV is added to the purge LSP to
record the system ID of the IS generating it.
At present, OSPF purge does not contain any information
identifying the Router that generates the purge. This makes it
difficult to locate the source router.
While OSPF protocol is difficult to add additional content to the
purge LSA, this document proposes generating a POI LSA together with
a purge LSA to record the router ID of the router generating the
purge.
To address this issue, this document defines a POI LSA to record the
router ID of the OSPF generating it.
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other documents
at any time. It is inappropriate to use Internet-Drafts as
reference material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
li & lin, et al. Expire May 8, 2024 [Page 1]
Internet-Draft OSPF Purge Originator Identification November 2023
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on May 8, 2024.
Copyright Notice
Copyright (c) 2023 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.
Table of Contents
1. Introduction ............................................. 3
2. Requirements Language .................................... 3
3. Solution ................................................. 3
3.1 POI Capability ......................................... 4
3.2 POI LSA for OSPF........................................ 5
3.3 POI LSA for OSPFv3 ..................................... 7
4. Deployment Considerations ............................... 10
5. Security Considerations ................................. 10
6. IANA Considerations ..................................... 10
7. References .............................................. 11
7.1 Normative References .................................. 11
7.2 Informative References ................................ 12
Authors' Addresses ........................................... 13
li & lin, et al. Expires May 8, 2024 [Page 2]
Internet-Draft OSPF Purge Originator Identification November 2023
1. Introduction
OSPF protocol floods purges throughout an area, regardless of
which router initiates the purge. At present, the OSPF protocol has
no mechanism to locate the originator of a purge. This makes it
difficult for network operators to determine the origin of the
purge. RFC6232 introduces Purge Originator Identification TLV for
IS-IS to record the system ID of the IS generating a purge LSP. For
OSPF protocol, the same mechanism is required.
While OSPF protocol is difficult to add additional content to the
purge LSA, this document proposes generating a Purge Originator
Identification (POI) LSA together with a purge LSA to record the
router ID of the router generating the purge. The format of the POI
LSA is defined for OSPF and OSPFv3 respectively in section 3.2 and
3.3.
2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
3. Solution
An OSPF router SHOULD generate a POI LSA to record its router ID
when it generates a purge. POI LSA is used by other routers or
network administrators to determine the originator of the purge LSA.
POI LSA SHOULD only be sent to neighbors that support POI
capability. Routers that do not support POI capability SHOULD ignore
the POI LSA they receive as unknown LSA. POI capability is defined
in section 3.1. The format of POI LSA for OSPF and OSPFv3 is defined
in section 3.2 and 3.3 respectively.
When a purge LSA is received from a neighbor that does not support
POI LSA, the receiver with POI capability SHOULD generate a POI LSA
for it.
li & lin, et al. Expires May 8, 2024 [Page 3]
Internet-Draft OSPF Purge Originator Identification November 2023
+---+ +---+ +---+ +---+
|R1 |--X--|R2 |------|R3 | ------------|R4 |
+---+ +---+ +---+ +---+
R2(notPOI) --> R3 R3 --> R4
| PurgeLSA1 PurgeLSA1
| POI LSA
| *****************************
PurgeLSA1 *LinkID of Purge LSA : LSA1 *
| *LsType of Purge LSA : xx *
| *AdvRtr of Purge LSA : R1 *
| *Advertising RouterID: R3 *
| *Neighbor Router ID : R2 *
| *****************************
|
|
+---+ +---+
|R5 |----------|R6 |
+---+ +---
R5 -------> R6
PurgeLSA1
POI LSA
*****************************
*LinkID of Purge LSA : LSA1 *
*AdvRtr of Purge LSA : R1 *
*Advertising RouterID: R5 *
*Neighbor Router ID : R2 *
*****************************
Figure 1: Generator of a Purge LSA does not support the feature
The POI LSAs are encapsulated in Link State Update Packets and sent
out to neighbors with POI capability.
3.1 POI Capability
OSPF router need to exchange POI capability with neighbors. With
this Originator Identification Solution, a new bit, called PS (purge
signal), is introduced into the Extended Options (EO) TLV in the
Link-Local Signaling (LLS) block (see [RFC5613]). see Figure 2
below.
+---+---+---+---+---+---+---+- -+---+---+---+---+---+---+---+---+
| * | * | * | * | * | * | * |...| * | * | * | * | * |PS | RS| LR|
+---+---+---+---+---+---+---+- -+---+---+---+---+---+---+---+---+
Figure 2: PS Bits in Extended Options TLV
Value: TBD, suggest 0x00000004
li & lin, et al. Expires May 8, 2024 [Page 4]
Internet-Draft OSPF Purge Originator Identification November 2023
Description: Purge Signal(PS-bit)
Routers capable of performing POI LSAs synchronization should always
set the PS-bit in their Hello packets. When Receive Hello Packets
with PS-Bit Set, the router should record that the neighbor has POI
ability, Otherwise, the router should record that the neighbor has
no POI ability. It is important to mention that operation of the
OSPF neighbor FSM is not changed by this document.
3.2 POI LSA for OSPF
The POI LSA for OSPF is used by OSPF router to advertise the
originator of a corresponding purge LSA.
The flood scope of POI LSA should be consistent with the purge LSA.
If the purge LSA is link-local, area-local, or entire domain, then
scope of the POI LSA should be link-local, area-local or entire
domain. A POI LSA must not be generated for another POI LSA.
This document defines POI LSA for OSPF.
The format of OSPF POI LSA is shown below:
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 | 9,10, or 11 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Opaque Type | Opaque ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS checksum | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+- TLVs -+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: POI LSA for OSPF
Opaque Type: 1 byte, TBD, for POI LSA, suggest 05
li & lin, et al. Expires May 8, 2024 [Page 5]
Internet-Draft OSPF Purge Originator Identification November 2023
The format of the TLVs within the body of the POI LSA is the same as
the format used by [RFC3630]. The variable TLV section consist of
one or more nested TLV tuples. Nested TLV are also referred to as
Sub-TLVs. The format of each TLV is shown below:
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
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4: OSPF POI LSA TLV Format
Type: 2-octet field.
Length: The total length (in octets) of the value portion of the TLV
including nested Sub-TLVs.
The format of POI TLV is shown below:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Purge LSA Link State ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Purge LSA Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Purge LSA AdvRtr |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Neighbor Router ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5: OSPF POI Identification TLV
Where:
li & lin, et al. Expires May 8, 2024 [Page 6]
Internet-Draft OSPF Purge Originator Identification November 2023
Type: 1
Length: The total length (in octets) of the value
portion of the TLV including nested Sub-TLVs
Purge LSA Link Statate ID: Link State ID of the purged LSA.
Purge LSA Type: LSA Type of the purged LSA.
Purge LSA AdvRtr: Router ID of the router that generates
the original LSA.
Advertising Router ID: Router ID of the router that
generates this POI LSA.
Neighbor Router ID: Router ID of the router from which
the purge was received, if the purge LSA is generated itself, then
the Neighbor Router ID is set zero.
3.3 POI LSA for OSPFv3
The Flooding Scope in LSA Header of POI LSA should be consistent
with purge LSA. The U-bit will not be set indicating that the LSA
should not be flooded if it is not understood.
This document defines POI LSA for OSPFv3.
The format of OSPFv3 POI LSA is shown below:
li & lin, et al. Expires May 8, 2024 [Page 7]
Internet-Draft OSPF Purge Originator Identification November 2023
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|S12| Function Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link State ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS Checksum | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+- TLVs -+
| ... |
Figure 6: POI LSA for OSPFv3
Function Code: TBD, suggest 10
The format of the TLVs within the body of the POI LSA is the same as
the format used by [RFC3630]. The variable TLV section consist of
one or more nested TLV tuples. Nested TLV are also referred to as
Sub-TLVs. The format of each TLV is:
The POI LSA TLV of POI LSA is shown below:
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
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 7: OSPFv3 POI LSA TLV Format
Type: 2-octet field.
li & lin, et al. Expires May 8, 2024 [Page 8]
Internet-Draft OSPF Purge Originator Identification November 2023
Length: The total length (in octets) of the value portion of the TLV
including nested Sub-TLVs.
The format of OSPF POI TLV is shown below:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Purge LSA Link State ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Purge LSA Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Purge LSA AdvRtr |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Neighbor Router ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 8: OSPFV3 POI Identification TLV
Where:
Type: 1
Length: The total length (in octets) of the value
portion of the TLV including nested Sub-TLVs
Purge LSA Link Statate ID: Link State ID of the purged LSA.
Purge LSA Type: LSA Type of the purged LSA.
Purge LSA AdvRtr: Router ID of the router that generates
the original LSA.
Advertising Router ID: Router ID of the router that
generates this POI LSA.
Neighbor Router ID: Router ID of the router from which the
purge was received, if the purge LSA is generated itself, then
the Neighbor Router ID is set zero.
li & lin, et al. Expires May 8, 2024 [Page 9]
Internet-Draft OSPF Purge Originator Identification November 2023
4. Deployment Considerations
If the router that generate the purge LSA does not support this
feature, then the nearest router that support this feature should
generate the POI LSA instead. And the POI LSA should not be send to
routers that does not support this feature.
So the routers should exchange and record the capability when
establishing neighbors.
When receive a purge from a neighbor that does not support the POI
LSA, then it SHOULD generates a POI LSA with both its own router ID
and the router ID of the neighbor from which it received the purge.
This allows routers receiving purges to log the router ID of the
originator, or the upstream source of the purge. This makes it much
easier for the network administrator to locate the origin of the
purge and thus the cause of the purge. Similarly, this POI LSA is
helpful to developers in lab situations. The POI LSA is then flood
to all neighbors that support this feature.
5. Security Considerations
TBD.
6. IANA Considerations
This document update the Extended Options (EO) TLV 0x00000004 in
OSPF and OSPFv3 hello packet, reference to [RFC4813]
PS-bit: TBD, suggest 0x00000004
This document updates the OSPF Opaque LSA type for POI LSA,
reference to [RFC5250].
Opaque Type: TBD, OSPF POI-LSA, suggest 5
This document requests the creation of an "OSPF POI LSA TLVs"
registry, that defines top-level TLVs for the OSPF POI LSA, under
the "OSPF Parameters" registry. The initial code-points
assignment is as below:
li & lin, et al. Expires May 8, 2024 [Page 10]
Internet-Draft OSPF Purge Originator Identification November 2023
* Type 0: Reserved.
* Type 1: OSPF POI Identification TLV: Refer to Section 3.2 of
this document.
This document update the OSPFv3 Function Code for POI LSA, reference
to [RFC5340].
Function Code: TBD, OSPFv3 POI-LSA, suggest 10
This document requests the creation of an "OSPFv3 POI LSA TLVs"
registry, that defines top-level TLVs for the OSPFv3 POI LSA, under
the "OSPFv3 Parameters" registry. The initial code-points
assignment is as below:
* Type 0: Reserved.
* Type 1: OSPFv3 POI Identification TLV: Refer to Section 3.3 of
this document.
7. References
7.1 Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5250] Rob Coltun , Alex D. Zinin , Igor Bryskin , Lou
Berger,"The OSPF Opaque LSA Option", RFC 5250, DOI
10.17847/RFC5250, July 2008,
<https://www.rfc-editor.org/info/rfc5250>.
[RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF
for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008,
<https://www.rfc-editor.org/info/rfc5340>.
li & lin, et al. Expires May 8, 2024 [Page 11]
Internet-Draft OSPF Purge Originator Identification November 2023
[RFC5613] Barry Friedman , Liem Nguyen , Abhay Roy , Alex
D. Zinin , Derek M. Yeung,"OSPF Link-Local Signaling", RFC
5613, DOI 10.17487/RFC5613, August
2009,<https://www.rfceditor.org/info/rfc5613>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
7.2 Informative References
[RFC6232] Wei, F., Qin, Y., Li, Z., Li, T., and J. Dong, "Purge
Originator Identification TLV for IS-IS", RFC 6232,
DOI 10.17487/RFC6232, May 2011,
<https://www.rfc-editor.org/info/rfc6232>.
li & lin, et al. Expires May 8, 2024 [Page 12]
Internet-Draft OSPF Purge Originator Identification November 2023
Authors' Addresses
Zhenqiang Li
China Mobile
P.R. China
EMail: lizhenqiang@chinamobile.com
Changwang Lin
New H3C Technologies
P.R. China
Email: linchangwang.04414@h3c.com
li & lin, et al. Expires May 8, 2024 [Page 13]