[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