Skip to main content

OSPF Application-Specific Link Attributes


Alvaro Retana

No Objection

Erik Kline
(Martin Vigoureux)


No Record

Note: This ballot was opened for revision 12 and is now closed.

Comment (2020-06-08 for -14)
The link attributes are sub-sub-TLVs, but are sections 6 and 7 constantly refer to them as “TLV types”, which seems imprecise.


S/other then/other than

Throughout this document, the indefinite and definite articles ‘a’, ‘an’, and ‘the’ are often missing  where needed and present where not needed.
Comment (2020-06-07 for -14)
Three main things from me:

(1) I found I'm in agreement below with some of the points raised in the posted OPSDIR review.  Please give that another once-over.

(2) A grammatical point: I think nearly every instance in this document of "which" should be replaced by "that".

(3) In Section 12.3.3, I don't think it's appropriate to use MUST-type language to constrain future document authors.

And now, my nit-storm:

Section 1:
* "... attribute advertisements - examples of which ..." -- hyphen should be a comma
* "... for a link that is not enabled for RSV-TE." -- s/RSV/RSVP/
* "... path via that link it will result ..." -- comma after "link"

Section 3:
* Please define, or provide a reference for, "GMPLS".

Section 4.1:
* "... not inspected by OSPF, that acts as ..." -- s/that/which instead/

Section 5:
* Several changes to this paragraph suggested:
   On top of advertising the link attributes for standardized
   applications, link attributes can be advertised for the purpose of
   application that is not defined as standardized one.  We call such
   application a user defined application.  What such application might
   be is not subject to the standardization and is outside of the scope
   of this specification.
   On top of advertising the link attributes for standardized
   applications, link attributes can be advertised for the purpose of
   applications that are not standardized.  We call such an
   application a "User Defined Application" or "UDA".  These applications are
   not subject to standardization and are outside of the scope
   of this specification.

* Is the snapshot of the current content of the Link Attribute Application Identifier Registry needed?  The rest of the document doesn't seem to reference it.
* "... to advertise all UDAs." -- although it's fairly clear at this point what a UDA is, I suggest defining it somewhere above, maybe by hanging it off one of the other places where the full name is used such as in the paragraph above

Section 6.1:
* Please expand "IPFRR" on first use.

Section 6.2:
* "All these can be used ..." -- s/All/All of/

Section 11:
* "- e.g.  RSVP-TE -" -- comma after "e.g."
* "... one need to make sure ..." -- s/need/needs/
* "... applications, where the enablement ..." -- remove comma
* "... such application - e.g.  LFA." -- change to "such application.  An example of this is LFA."

Section 12.3.4:
* "Link attributes that are NOT allowed  ..." -- s/NOT/not/
Comment (2020-06-23 for -15)
Discuss cleared.  Thank you for addressing my comments.

Two possible nits in section 5:

   If the same attribute is advertised in more than single ASLA sub-TLVs
   with the application listed in the Application Bit Masks, the
   application SHOULD use the first instance of advertisement and ignore
   any subsequent advertisements of that attribute.

Propose changing "single" to "one".

   If link attributes are advertised associated with zero length
   Application Identifier Bit Masks for both standard applications and
   user defined applications, then any Standard Application and/or any
   User Defined Application is permitted to use that set of link

Propose changing "associated with" to "with associated" or just "with"


Previous discuss comments:

I found parts of this document hard to understand, but I'm not familiar with the specifics of the protocols.

This discuss is in the vein of "I think that folks might struggle to implement this correctly/consistently".   In particular I had some questions/concerns about section 5 which, if clarified, would probably help this document.

In Section 5:

   The ASLA sub-TLV is an optional sub-TLV and can appear multiple times
   in the OSPFv2 Extended Link TLV and OSPFv3 Router-Link TLV.  The ASLA
   sub-TLV MUST be used for advertisement of the link attributes listed
   at the end on this section if these are advertised inside OSPFv2
   Extended Link TLV and OSPFv3 Router-Link TLV.  It has the following

I think that it would be useful to clarify when/why the ASLA sub-TLV can be included multiple times.  I.e. when different applications want to control different link attributes.

   Standard Application Identifier Bits are defined/sent starting with
   Bit 0.  Undefined bits which are transmitted MUST be transmitted as 0
   and MUST be ignored on receipt.  Bits that are not transmitted MUST
   be treated as if they are set to 0 on receipt.  Bits that are not
   supported by an implementation MUST be ignored on receipt.

It was not clear to me what it means if the SABM (or UDABM) fields are entirely empty.  This paragraph states that they are treated as if they are 0, but sections 8 and 11 imply that if the field is omitted then it acts as if all applications are allowed.  Section 12.2 implies that if the field is omitted then it is as if all applications are allowed unless there there is another ASLA with the given application bit set, in which case it is treated as being a 0 again.  I think that this document would be helped if the specific behaviour was defined in section 5, retaining the justification/clarification in the subsequent sections.

It is also not entirely clear to me exactly how the bits are encoded on the wire.  My assumption is that if bit 0 is set, then this would sent the highest bit of the first byte.  E.g. 0x80?  Is that correct?  If not, then I think that the document needs more text, if so, then an example of the encoding may still aid readability.

   User Defined Application Identifier Bits have no relationship to
   Standard Application Identifier Bits and are not managed by IANA or
   any other standards body.  It is recommended that bits are used
   starting with Bit 0 so as to minimize the number of octets required
   to advertise all UDAs.

Doesn't this need more constraints to ensure easy interop (i.e. bits default to 0).  Otherwise, it would seem that anyone is allowed to put any value in this field that they like that could harm interop, or otherwise it might be tricky to compare a 4 byte UDABM to an 8 byte UDABM?

   This document defines the initial set of link attributes that MUST
   use the ASLA sub-TLV if advertised in the OSPFv2 Extended Link TLV or
   in the OSPFv3 Router-Link TLV.  Documents which define new link
   attributes MUST state whether the new attributes support application
   specific values and as such MUST be advertised in an ASLA sub-TLV.
   The link attributes that MUST be advertised in ASLA sub-TLVs are:

I think that I get what this means, but I find the last two sentences slightly jarring given than the ASLA TLV is optional.  Perhaps predicate both of these constraints with "(if supproted)".  E.g., something like, 

 Documents which define new link
 attributes MUST state whether the new attributes support application
 specific values and as such MUST be advertised in an ASLA sub-TLV (if supported).
 The link attributes that MUST be advertised in ASLA sub-TLVs (if supported) are:
Comment (2020-06-10 for -14)
** Section 5.  (same comment as raised about Section 4.1. of draft-ietf-isis-te-app) If the possible values of SABM Length and UDABM Length are 0, 4 and 8, and these are stored literally, why are 8 bits required?  Could they be reallocated to the Reserved field?

** Section 13. (same comment as raised about Section 4.1. of draft-ietf-isis-te-app) Per “Tampering with the information defined in this document may have an effect on applications using it, including impacting Traffic Engineering.”, I have no disagreement with this statement.  However, I would recommend adding a brief statement what is the security impact of “impacting Traffic Engineering”.

** Section 13.  Per "This is similar in nature to the impacts associated with (for example) [RFC3630]", what specific text in RFC3630 was envisioned.  I didn't follow the link.
Comment (2020-06-07 for -13)
Thank you for the work put into this document. I have a single non-blocking COMMENT (question):

In section 5, if the SABM and UDABM lengths are either 0, 4 or 8, then I wonder why the "SABM Length" and "UDABM Length" fields are 8 bits. In control plane, using 2 or 3 bits length would not have a performance impact and would allow for a longer Reserved header field. 

I hope that this helps to improve the document,


No Objection (2020-06-08 for -14)
My co-AD has this covered.
No Objection (2020-06-11 for -14)
I am unable to figure out how this is intended to function and are structured. If that is my lack of OSPF background or a failure in the documents description I don't know.
No Objection (for -14)

Abstain (2020-06-22 for -15)
Thanks for resolving my discuss on aligning SR terms with SPRING's work.

I remain unconvinced on backward compatibility with RSVP-TE, hence my abstain ballot. Similar to other operators, I have serious concerns with operational aspects and the unfair burden placed on operators. A simple on/off control would have provided a much more elegant solution.

From the discussion, this is obviously a multi-vendor agreement on their preferred way, so while I disagree, I will not stand in the way.
No Record (2020-06-11 for -14)
RFC 5226 is obsoleted by RFC 8126