The BGP-LS originator learns of the association of an application-specific attribute to one or more applications from the underlying IGP protocol Link State Advertisements (LSAs) or Link State Packets (LSPs) from which it is advertising the topology information. [
RFC 8920] and [
RFC 8919] specify the mechanisms for advertising application-specific link attributes in OSPF and IS-IS, respectively.
Application-specific link attributes received from an IGP node without the use of ASLA encodings continue to be encoded using the respective BGP-LS top-level TLVs listed in
Table 1 as specified in their respective reference documents.
While the ASLA encoding in OSPF is similar to that of BGP-LS, the encoding in IS-IS differs and requires additional procedures when conveying information into BGP-LS. One of these differences arises from the presence of the L-flag in the IS-IS encoding. Another difference arises due to the requirement to collate information from two types of IS-IS encodings for application-specific link information (i.e., the IS-IS ASLA sub-TLV and the IS-IS Application-Specific Shared Risk Link Group (SRLG) TLV) [
RFC 8919] and to carry them together in the BGP-LS ASLA TLV.
A BGP-LS originator node that is advertising link-state information from the underlying IGP using ASLA encodings determines their BGP-LS encoding based on the following rules:
-
Application-specific link attributes received from an OSPF node using an ASLA sub-TLV or from an IS-IS node using either an ASLA sub-TLV or an Application-Specific SRLG TLV MUST be encoded in the BGP-LS ASLA TLV as sub-TLVs. Exceptions to this rule are specified in (2)(F) and (2)(G) below.
-
In the case of IS-IS, the specific procedures below are to be followed:
-
When application-specific link attributes are received from a node with the L-flag set in the IS-IS ASLA sub-TLV and when application bits (other than RSVP-TE) are set in the application bit masks, then the application-specific link attributes advertised in the corresponding legacy IS-IS TLVs and sub-TLVs MUST be encoded within the BGP-LS ASLA TLV as sub-TLVs with the application bits (other than the RSVP-TE bit) copied from the IS-IS ASLA sub-TLV. The link attributes advertised in the legacy IS-IS TLVs and sub-TLVs are also advertised in BGP-LS top-level TLVs as per [RFC 7752], [RFC 8571], and [RFC 9104]. The same procedure also applies for the advertisement of the SRLG values from the IS-IS Application-Specific SRLG TLV.
-
When the IS-IS ASLA sub-TLV has the RSVP-TE application bit set, then the link attributes for the corresponding IS-IS ASLA sub-TLVs MUST be encoded using the respective BGP-LS top-level TLVs as per [RFC 7752], [RFC 8571], and [RFC 9104]. Similarly, when the IS-IS Application-Specific SRLG TLV has the RSVP-TE application bit set, then the SRLG values within it MUST be encoded using the top-level BGP-LS SRLG TLV (1096) as per [RFC 7752].
-
The SRLGs advertised in one or more IS-IS Application-Specific SRLG TLVs and the other link attributes advertised in one or more IS-IS ASLA sub-TLVs are REQUIRED to be collated, on a per-application basis, only for those applications that meet all the following criteria:
-
their bit is set in the SABM or UDABM in one of the two types of IS-IS encodings (e.g., IS-IS ASLA sub-TLV)
-
the other encoding type (e.g., IS-IS Application Specific SRLG TLV) has an advertisement with zero-length application bit masks
-
there is no corresponding advertisement of that other encoding type (following the example, IS-IS Application Specific SRLG TLV) with that specific application bit set
For each such application, its collated information MUST be carried in a BGP-LS ASLA TLV with that application's bit set in the SABM or UDABM. See the illustration in Section 4.1.
-
If the resulting set of collated link attributes and SRLG values is common across multiple applications, they MAY be advertised in a common BGP-LS ASLA TLV instance where the bits for all such applications would be set in the application bit mask.
-
Both the SRLG values from IS-IS Application-Specific SRLG TLVs and the link attributes from IS-IS ASLA sub-TLVs, with the zero-length application bit mask, MUST be advertised into a BGP-LS ASLA TLV with a zero-length application bit mask, independent of the collation described above.
-
[RFC 8919] allows the advertisement of the Maximum Link Bandwidth within an IS-IS ASLA sub-TLV even though it is not an application-specific attribute. However, when originating the Maximum Link Bandwidth into BGP-LS, the attribute MUST be encoded only in the top-level BGP-LS Maximum Link Bandwidth TLV (1089) and MUST NOT be advertised within the BGP-LS ASLA TLV.
-
[RFC 8919] also allows the advertisement of the Maximum Reservable Link Bandwidth and the Unreserved Bandwidth within an IS-IS ASLA sub-TLV even though these attributes are specific to RSVP-TE application. However, when originating the Maximum Reservable Link Bandwidth and Unreserved Bandwidth into BGP-LS, these attributes MUST be encoded only in the BGP-LS top-level Maximum Reservable Link Bandwidth TLV (1090) and Unreserved Bandwidth TLV (1091), respectively, and not within the BGP-LS ASLA TLV.
These rules ensure that a BGP-LS originator performs the advertisement for all application-specific link attributes from the IGP nodes that support the ASLA extension. Furthermore, it also ensures that the top-level BGP-LS TLVs defined for RSVP-TE and GMPLS applications continue to be used for advertisement of their application-specific attributes.
A BGP-LS speaker would normally advertise all the application-specific link attributes corresponding to RSVP-TE and GMPLS applications as existing top-level BGP-LS TLVs while for other applications they are encoded in the ASLA TLV(s) with appropriate applicable bit mask setting. An application-specific attribute value received via a sub-TLV within the ASLA TLV has precedence over the value received via a top-level TLV.
This section illustrates the procedure for the advertisement of application-specific link attributes from IS-IS into BGP-LS.
Consider the following advertisements for a link in IS-IS. We start with this set:
-
IS-IS ASLA sub-TLV with the S, F, and X bits set on it that carries certain application-specific link attributes
-
IS-IS Application-Specific SRLG TLV with zero-length bit masks with a set of application-specific SRLGs
-
IS-IS Application-Specific SRLG TLV with the X bit set on it with a set of application-specific SRLGs
The corresponding BGP-LS advertisements for that link are determined as follows:
First, based on rule (1), the advertisements are conveyed to BGP-LS to get the following "updated set":
-
ASLA with the S, F, and X bits set on it that carries link attributes from IS-IS advertisement (a)
-
ASLA SRLG with zero-length bit masks with a set of SRLGs from IS-IS advertisement (b)
-
ASLA SRLG with the X bit set on it with a set of SRLGs from IS-IS advertisement (c)
Next, we apply the rules from (2) to this "updated set", because all of them were sourced from IS-IS, to derive a new set.
The next rule that applies is (2)(c), and it is determined that collation is required for applications S and F; therefore, we get the following "final set":
-
ASLA with the S bit set on it that carries link attributes from IS-IS advertisement (a) and SRLGs from IS-IS advertisement (b) (this is collation for application S based on (2)(c))
-
ASLA with the F bit set on it that carries link attributes from IS-IS advertisement (a) and SRLGs from IS-IS advertisement (b) (this is collation for application F based on (2)(c))
-
ASLA with the X bit set on it that carries link attributes from IS-IS advertisement (a) (remaining application not affected by collation based on (2)(c))
-
ASLA with zero-length bit masks with SRLGs from IS-IS advertisement (b) (not affected by (2)(c) and therefore carried forward unchanged from the "updated set")
-
ASLA with the X bit set on it with SRLGs from IS-IS advertisement (c) (not affected by (2)(c) and therefore carried forward unchanged from the "updated set")
Implementations may optionally perform further consolidation by processing the "final set" above based on (2)(d) to determine the following "consolidated final set":
-
ASLA with the S and F bits set on it that carries application-specific link attributes from IS-IS advertisement (a) and SRLGs from IS-IS advertisement (b) (this is the consolidation of items 1 and 2 of the "final set" based on (2)(d))
-
ASLA with the X bit set on it that carries certain application-specific link attributes from IS-IS advertisement (a) (it is unaffected by this consolidation)
-
ASLA with zero-length bit masks with a set of application-specific SRLGs from IS-IS advertisement (b) (this is retained based on (2)(e) and is unaffected by any further consolidation)
-
ASLA with the X bit set on it with a set of application-specific SRLGs from IS-IS advertisement (c) (it is unaffected by this consolidation)
Further optimization (e.g., combining (2) and (4) from the "consolidated final set" above into a single BGP-LS ASLA TLV) may be possible while ensuring that the semantics are preserved between the IS-IS and BGP-LS advertisements. Such optimizations are outside the scope of this document.