RFC Errata
RFC 5880, "Bidirectional Forwarding Detection (BFD)", June 2010
Note: This RFC has been updated by RFC 7419, RFC 7880, RFC 8562
Source of RFC: bfd (rtg)
Errata ID: 7240
Status: Held for Document Update
Type: Technical
Publication Format(s) : TEXT
Reported By: Jeffrey Haas
Date Reported: 2022-11-06
Held for Document Update by: John Scudder
Date Held: 2023-03-10
Section 6.8.1 says:
bfd.LocalDiag The diagnostic code specifying the reason for the most recent change in the local session state. This MUST be initialized to zero (No Diagnostic).
It should say:
No proposed changes are offered here. See the notes for further discussion.
Notes:
RFC 5880 at various points calls out setting the value of bfd.LocalDiag as part of state transitions. The text defining the feature calls for it to be initialized to zero. Discussion on the WG mailing list following the filing of the initial version of this erratum revealed two things:
First, the text of the RFC is correct, complete, and reflects the authors’ intention at the time of writing, which really WAS that the value should only be initialized to zero but not reset to zero at any other time.
Second, by not emphasizing this point, the spec although formally speaking unambiguous, left space for implementors to exercise their intuitions and creativity. As a result, several implementations are reported to reset this value to zero when the session transitions back to Up.
The discussion is archived at https://mailarchive.ietf.org/arch/msg/rtg-bfd/yEOx2LTO51zq1he6vChUOVJySqM/ . If a new version of RFC 5880 is prepared in the future, this question should be reopened as part of that process. It would also be possible to offer a standards track document to update RFC 5880 in this respect if WG consensus can be found for a new approach.