Advertising Layer 2 Bundle Member Link Attributes in OSPF
RFC 9356
Ketan Talaulikar, Ed.
Cisco Systems
India
ketant.ietf@gmail.com
Peter Psenak
Cisco Systems
Apollo Business Center
Mlynske nivy 43
Bratislava
821 09
Slovakia
ppsenak@cisco.com
January 2023
rtg
lsr
OSPF
There are deployments where the Layer 3 (L3) interface on which OSPF operates is a Layer 2 (L2) interface bundle. Existing OSPF advertisements only support advertising link attributes of the Layer 3 interface. If entities external to OSPF wish to control traffic flows on the individual physical links that comprise the Layer 2 interface bundle, then link attribute information for the bundle members is required.
This document defines the protocol extensions for OSPF to advertise the link attributes of L2 bundle members. The document also specifies the advertisment of these OSPF extensions via BGP Link State protocol and thereby updates RFC 9085.
Introduction
There are deployments where the Layer 3 interface on which an OSPF adjacency is established is a Layer 2 interface bundle, for instance, a Link Aggregation Group (LAG) [IEEE802.1AX]. This reduces the number of adjacencies that need to be maintained by the OSPF protocol in cases where there are parallel links between the neighbors. Entities external to OSPF such as Path Computation Elements (PCE) [RFC4655] may wish to control traffic flows on individual Layer 2 member links of the underlying bundle interface (e.g., LAG). To do so, link attribute information for individual bundle members is required. The protocol extensions defined in this document provide the means to advertise this information.
This document defines sub-TLVs to advertise link attribute information for each of the L2 bundle members which comprise the Layer 3 interface on which OSPF operates. Similar capabilities were introduced in IS-IS via [RFC8668].
[RFC8665] and [RFC8666] introduced the adjacency segment identifier (Adj-SID) link attribute for OSPFv2 and OSPFv3, respectively, which can be used as an instruction to forward traffic over a specific link [RFC8402]. This document enables the advertisement of the Adj-SIDs using the same Adj-SID Sub-TLV at the granularity level of each L2 bundle member link so that traffic may be steered over that specific member link.
Note that the advertisements at the L2 bundle member link-level defined in this document are intended to be provided to external OSPF entities and do not alter or change the OSPF route computation. The following items are intentionally not defined in and are outside the scope of this document:
- What link attributes will be advertised. This is determined by the needs of the external entities.
- A minimum or default set of link attributes.
- How these attributes are configured.
- How the advertisements are used.
- What impact the use of these advertisements may have on traffic flow in the network.
- How the advertisements are passed to external entities.
The BGP Link State (BGP-LS) [RFC7752] was extended for the advertisement of Layer 2 bundle members and their attributes in [RFC9085], which covered only IS-IS. This document updates [RFC9085] by specifying the advertisement from OSPF (refer to Section 3).
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.
L2 Bundle Member Attributes
A new L2 Bundle Member Attributes Sub-TLV is introduced to advertise L2 bundle member attributes in both OSPFv2 and OSPFv3. In the case of OSPFv2, this sub-TLV is an optional sub-TLV of the OSPFv2 Extended Link TLV that is used to describe link attributes via the OSPFv2 Extended Link Opaque LSA (Link State Advertisement) [RFC7684]. In the case of OSPFv3, this sub-TLV is an optional sub-TLV of the Router Link TLV of the OSPFv3 E-Router-LSA [RFC8362].
When the OSPF adjacency is associated with an L2 bundle interface, this sub-TLV is used to advertise the underlying L2 bundle member links along with their respective link attributes. The inclusion of this information implies that the identified link is a member of the L2 bundle associated with an OSPF L3 link and that the member link is operationally up. Therefore, advertisements of member links MUST NOT be done when the member link becomes operationally down or is no longer a member of the identified L2 bundle.
The advertisement of the L2 Bundle Member Attributes Sub-TLV may be asymmetric for an OSPF link, depending on the underlying Layer 2 connectivity, i.e., advertised by the router on only one end.
The L2 Bundle Member Attributes Sub-TLV has the following format:
L2 Bundle Member Attributes Sub-TLV 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               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                   L2 Bundle Member Descriptor                 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           Member Link Attribute sub-TLVs (variable)          //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Where:
Type:
24 for OSPFv2 and 29 for OSPFv3
Length:
The total length (in octets) of the value portion of the TLV including nested Sub-TLVs.
L2 Bundle Member Descriptor:
A 4-octet Link-Local Identifier as described in [RFC4202] and used in [RFC8510] for the member link.
Link attributes for L2 bundle member links are advertised as sub-TLVs of the L2 Bundle Member Attribute Sub-TLV.
In the case of OSPFv2, the L2 Bundle Member Attributes Sub-TLV shares the sub-TLV space of the Extended Link TLV, and the sub-TLVs of the Extended Link TLV MAY be used to describe the attributes of the member link. Figure 2 lists sub-TLVs and their applicability for L2 bundle member links. The sub-TLVs that are not applicable MUST NOT be used as sub-TLVs for the L2 Bundle Member Attributes Sub-TLV. Specifications that introduce new sub-TLVs of the Extended Link TLV MUST indicate their applicability for the L2 Bundle Member Attributes Sub-TLV. Typically, attributes that have Layer 3 semantics would not be applicable, but Layer 2 attributes would apply. An implementation MUST ignore any sub-TLVs received that are not applicable in the context of the L2 Bundle Member Attribute Sub-TLV.
Applicability of OSPFv2 Link Attribute Sub-TLVs for L2 Bundle Members

 Y - applicable
 N - not-applicable

 1  SID/Label (N)
 2  Adj-SID (Y)
 3  LAN Adj-SID/Label (Y)
 4  Network-to-Router Metric (N)
 5  RTM Capability (N)
 6  OSPFv2 Link MSD (N)
 7  Graceful-Link-Shutdown (N)
 8  Remote IPv4 Address (N)
 9  Local/Remote Interface ID (N)
10  Application Specific Link Attributes (Y)
11  Shared Risk Link Group (Y)
12  Unidirectional Link Delay (Y)
13  Min/Max Unidirectional Link Delay (Y)
14  Unidirectional Delay Variation (Y)
15  Unidirectional Link Loss (Y)
16  Unidirectional Residual Bandwidth (Y)
17  Unidirectional Available Bandwidth (Y)
18  Unidirectional Utilized Bandwidth (Y)
19  Administrative Group (Y)
20  Extended Administrative Group (Y)
21  OSPFv2 Link Attributes Bits (N)
22  TE Metric (Y)
23  Maximum Link Bandwidth (Y)
24  L2 Bundle Member Attributes (N)

In the case of OSPFv3, the L2 Bundle Member Attributes Sub-TLV shares the sub-TLV space of the Router Link TLV, and the sub-TLVs of the Router Link TLV MAY be used to describe the attributes of the member link. Figure 3 lists sub-TLVs that are applicable to the Router Link TLV and lists their applicability for L2 bundle member links. The sub-TLVs that are not applicable MUST NOT be used as sub-TLVs for the L2 Bundle Member Attributes Sub-TLV. Specifications that introduce new sub-TLVs of the Router Link TLV MUST indicate their applicability for the L2 Bundle Member Attributes Sub-TLV. An implementation MUST ignore any sub-TLVs received that are not applicable in the context of the L2 Bundle Member Attribute Sub-TLV.
Applicability of OSPFv3 Link Attribute Sub-TLVs for L2 Bundle Members

 Y - applicable
 N - not-applicable
 X - not Router Link Sub-TLV

 1  IPv6-Forwarding-Address (X)
 2  IPv4-Forwarding-Address (X)
 3  Route-Tag (X)
 4  Prefix SID (X)
 5  Adj-SID (Y)
 6  LAN Adj-SID (Y)
 7  SID/Label (N)
 8  Graceful-Link-Shutdown (N)
 9  OSPFv3 Link MSD (N)
10  OSPFv3 Link Attribute Bits (N)
11  Application Specific Link Attributes (Y)
12  Shared Risk Link Group (Y)
13  Unidirectional Link Delay (Y)
14  Min/Max Unidirectional Link Delay (Y)
15  Unidirectional Delay Variation (Y)
16  Unidirectional Link Loss (Y)
17  Unidirectional Residual Bandwidth (Y)
18  Unidirectional Available Bandwidth (Y)
19  Unidirectional Utilized Bandwidth (Y)
20  Administrative Group (Y)
21  Extended Administrative Group (Y)
22  Traffic Engineering Metric (Y)
23  Maximum Link Bandwidth (Y)
24  Local Interface IPv6 Address (N)
25  Remote Interface IPv6 Address (N)
26  Flex-Algorithm Prefix Metric (X)
27  Prefix Source OSPF Router-ID (X)
28  Prefix Source Router Address (X)
29  L2 Bundle Member Attributes (N)
30  SRv6 SID Structure (Y)
31  SRv6 End.X SID Structure (Y)
32  SRv6 End.X SID Structure (Y)

BGP-LS Advertisement
The BGP-LS extensions for the advertisment of Layer 2 bundle members and their attributes were specified in [RFC9085]. Using the OSPF L2 Bundle Member Attributes sub-TLV defined in this document, the L2 bundle member information can now be advertised from OSPF into BGP-LS on the same lines as discussed for IS-IS in Section 2.2.3 of [RFC9085].
IANA Considerations
IANA has allocated the following code point via the early allocation in the "OSPFv2 Extended Link TLV Sub-TLVs" registry under the "OSPFv2 Parameters" registry that needs to be made permanent:
Value:
24
Name:
L2 Bundle Member Attributes
IANA has allocated the following code point via the early allocation in the "OSPFv3 Extended LSA Sub-TLVs" registry under the "OSPFv3 Parameters" registry that needs to be made permanent:
Value:
29
Name:
L2 Bundle Member Attributes
IANA is requested to introduce a column "Applicability to L2 Bundle Member sub-TLV" (abbreviated as L2BM) in the registry tables for the "OSPFv2 Extended Link TLV Sub-TLVs" registry with the initial updates (Y/N) against allocations as indicated in Figure 2. An explanatory note would also be added to this registry as follows:
The column for the Applicability to L2 Bundle Member sub-TLV (L2BM) may be marked as follows:
Y -
sub-TLV MAY appear in L2 Bundle Member sub-TLV
N -
sub-TLV MUST NOT appear in L2 Bundle Member sub-TLV
Similarly, IANA is requested to introduce a column "Applicability to L2 Bundle Member sub-TLV" (abbreviated as L2BM) in the registry tables for the "OSPFv3 Extended LSA Sub-TLVs" registry with the initial updates (Y/N/X) against allocations as indicated in Figure 3.
The column for the Applicability to L2 Bundle Member sub-TLV (L2BM) may be marked as follows:
Y -
sub-TLV MAY appear in L2 Bundle Member sub-TLV
N -
sub-TLV MUST NOT appear in L2 Bundle Member sub-TLV
X -
sub-TLV is not a Router Link sub-TLV; it MUST NOT appear in L2 Bundle Member sub-TLV
Further allocations from these two registries are required to indicate the applicability of the introduced sub-TLV to the L2 Bundle Member sub-TLV that would get updated in these registries.
Operational Considerations
Implementations MUST NOT enable the advertisement of Layer 2 bundle member links and their attributes in OSPF LSAs by default and MUST provide a configuration option to enable their advertisement on specific links.
[RFC9129] specifies the base OSPF YANG model. The required configuration and operational elements for this feature are expected to be introduced as augmentation to this base OSPF YANG model.
Security Considerations
The OSPF protocol has supported the advertisement of link attribute information, including link identifiers, for many years. The advertisements defined in this document are identical to the existing advertisements defined in [RFC3630], [RFC4203], [RFC5329], [RFC7471], [RFC8665], and [RFC8666], but those advertisements are associated with L2 links that are part of a bundle interface on which the OSPF protocol operates. Therefore, the security considerations of these documents are applicable, and there are no new security issues introduced by the extensions in this document.
As always, if the protocol is used in an environment where unauthorized access to the physical links on which OSPF packets are sent occurs, then attacks are possible. The use of authentication as defined in [RFC5709], [RFC7474], [RFC4552], and [RFC7166] is recommended for preventing such attacks.
References
Normative References
[IEEE802.1AX]

IEEE Standard for Local and Metropolitan Area Networks--Link Aggregation
IEEE
29 May 2020
DOI 10.1109/IEEESTD.2020.9105034
IEEE Std. 802.1AX-2020
Informative References
[RFC4655]
[RFC8668]
[RFC8665]
[RFC8666]
[RFC8402]
[RFC7752]
[RFC9085]
[RFC2119]
[RFC8174]
[RFC7684]
[RFC8362]
[RFC4202]
[RFC8510]
[RFC9129]
[RFC3630]
[RFC4203]
[RFC5329]
[RFC7471]
[RFC5709]
[RFC7474]
[RFC4552]
[RFC7166]
Acknowledgements
This document leverages the similar work done for IS-IS, and the authors of this document would like to acknowledge the contributions of the authors of [RFC8668].
The authors would like to thank Anoop Ghanwani, Paul Kyzivat, Dan Romascanu, and Russ Mundy for their review and feedback on this document. The authors would also like to thank Acee Lindem for his detailed shepherd review of this document. The authors would also like to thank John Scudder for his AD review and the discussion related to the applicability of TLVs/sub-TLVs to the L2 Bundle Member TLV.