[PATCH v2] babel: Rework seqno request handling to track sender, not destination
Toke Høiland-Jørgensen
toke at toke.dk
Sat Dec 17 21:35:43 CET 2022
Toke Høiland-Jørgensen <toke at toke.dk> writes:
> + /*
> + * To suppress duplicates, check if we already have a newer (higher seqno)
> + * outstanding request; if this one is newer, replace the old one. Also allow
> + * upgrading a previously forwarded request to one we originate.
> + */
> WALK_LIST(sr, e->requests)
> if (sr->router_id == router_id)
> {
> - /* Found matching or newer */
> - if (ge_mod64k(sr->seqno, seqno) && seqno_request_valid(sr))
> + if (ge_mod64k(sr->seqno, seqno) && (!sr->forwarded || fwd_from))
> return;
Realised after sending that this duplicate suppression is too
aggressive: it'll also suppress retransmissions. I'll send a v3.
-Toke
More information about the Bird-users
mailing list