Apply by doing:
        cd /usr/src
        patch -p0 < 015_tcp.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.175.2.2
retrieving revision 1.175.2.3
diff -u -p -r1.175.2.2 -r1.175.2.3
--- sys/netinet/tcp_input.c	20 Mar 2005 23:36:10 -0000	1.175.2.2
+++ sys/netinet/tcp_input.c	1 Apr 2005 15:31:06 -0000	1.175.2.3
@@ -1371,13 +1371,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;
 	}
 
 	/*
