Apply by doing:
        cd /usr/src
        patch -p0 < 032_tcp2.patch

And then rebuild your kernel.

Index: sys/netinet/tcp_input.c
===================================================================
RCS file: /cvs/src/sys/netinet/tcp_input.c,v
retrieving revision 1.158.2.4
retrieving revision 1.158.2.5
diff -u -p -r1.158.2.4 -r1.158.2.5
--- sys/netinet/tcp_input.c	20 Mar 2005 23:44:05 -0000	1.158.2.4
+++ sys/netinet/tcp_input.c	1 Apr 2005 15:32:53 -0000	1.158.2.5
@@ -1406,13 +1406,17 @@ trimthenstep6:
 
 	/*
 	 * If last ACK falls within this segment's sequence numbers,
-	 * record its timestamp.
-	 * Fix from Braden, see Stevens p. 870
+	 * record its timestamp if it's more recent.
+	 * Cf fix from Braden, see Stevens p. 870
 	 */
 	if (opti.ts_present && TSTMP_GEQ(opti.ts_val, tp->ts_recent) &&
 	    SEQ_LEQ(th->th_seq, tp->last_ack_sent)) {
+		if (SEQ_LEQ(tp->last_ack_sent, th->th_seq + tlen +
+		    ((tiflags & (TH_SYN|TH_FIN)) != 0)))
+			tp->ts_recent = opti.ts_val;
+		else
+			tp->ts_recent = 0;
 		tp->ts_recent_age = tcp_now;
-		tp->ts_recent = opti.ts_val;
 	}
 
 	/*
