Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 Feb 2021 06:12:48 +0000
From:      bugzilla-noreply@freebsd.org
To:        ipfw@FreeBSD.org
Subject:   [Bug 253476] ipfw keepalive: tcp_do_segment: Timestamp missing, segment silently dropped
Message-ID:  <bug-253476-8303-nSuHm6ycHQ@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-253476-8303@https.bugs.freebsd.org/bugzilla/>
References:  <bug-253476-8303@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D253476

--- Comment #4 from Helge Oldach <freebsd@oldach.net> ---
I believe this goes back to D27148, enforcing TSopt for RFC 7323 compliance=
 if
negotiated. This is MFC'd so I expect we will see said behaviour in recent
stable/12 (and stable/11) as well.

I am however wondering about the strict TSopt requirement for keepalive pac=
kets
not carrying user data (as in this case). IMHO this requirement will help
neither PAWS nor RTTM: We are in an idle situation where there is simply no
user data to transmit, so there is no risk of corrupting user data nor a
compelling reason for RTT measurements.

RFC 7223 section 3.2 already mentions situations where the guidelines are t=
oo
strict.

The case with ipfw generated keepalives is that ipfw apparently doesn't sto=
re
sufficient context to generate a proper TSopt. We can perhaps reuse previous
TSval/TSecr but that might potentially impact PAWS/RTTM?

As a quick fix meant to improve interoperability I would suggest to amend t=
he
tolerate_missing_ts sysctl in a way that we have three alternatives for dea=
ling
with negotiated TSopt:
- Strict RFC 7223, dropping packets w/o TSopt (currently:
tolerate_missing_ts=3D0)
- Accept packets w/o TSopt if zero data
- Accept all packets (currently: tolerate_missing_ts=3D1)

--=20
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-253476-8303-nSuHm6ycHQ>