Summary: Has a DISCUSS. Needs 3 more YES or NO OBJECTION positions to pass.
I'm sure that this has already been discussed somewhere, and that I'll be able to quickly clear my DISCUSS once pointed at it, but: "To put an upper bound on the amount of time a router retains the stale routes, an implementation MUST support a (configurable) timer, called the "stale timer", that imposes this upper bound. A suggested default value for the stale timer is 180 seconds. An implementation MAY provide the option to disable the timer (i.e., to provide an infinite retention time) but MUST NOT do so by default." The "infinite retention time" part of this makes me deeply uncomfortable -- I can see a good reason for the stale timer, and the default "feels" fine to me, but having an infinite retention time (or, really anything over 10 to 15 minutes) feels like a really dangerous idea, and that it will come back and bite. I'm hoping that I'm missing something obvious, but can you please explain under what conditions an infinite retention policy makes sense? It seems like there would be multiple opportunities for blackholing traffic with this.
Is there a pointer to a formal definition for "full session reset" that you could provide at the end of this text? At a high level, this document can be summed up as follows. When a BGP session is reset, both speakers operate as "Receiving Speakers" according to [RFC4724], meaning they retain each other's routes. This is also true for HOLDTIME expiration. The functionality can be defeated using a "Hard Reset" subcode for the BGP NOTIFICATION Cease Error code. If a Hard Reset is used, a full session reset is performed.
The table in Section 5.1 suggests that nesting a Hard Reset in a Hard Reset is a supported operation. When would it make sense to do so/should this be forbidden?
Thanks for your work on this document. I have only one very small question to ask. §4: > When a BGP speaker resets its session due to a HOLDTIME expiry, it > should generate the relevant BGP NOTIFICATION message as mentioned in Is this intended to be "should" or "SHOULD"?