RFC5682 implementation for FreeBSD
To test the implementation, I used dummynet(4) to spike a delay from 200ms to 800ms.
Result
TCP spurious timeout without RFC5682 (SACK enabled)
TCP spurious timeout with rfc5682 (SACK enabled)
TCP spurious timeout without rfc5682 (SACK disabled)
TCP spurious timeout with rfc5682 (SACK disabled)