many, many thanks to 'Silby' for his help to fix a little problem with FreeBSD and a badly behaved firewall. if you ever have delay problems with 0 sized TCP windows coming from a GNAT firewall, make the following change to your tcp_timer.h file:
define TCPTV_PERSMIN ( hz/5)
instead of:
define TCPTV_PERSMIN ( 5*hz)
this will reduce the hardcoded delay FreeBSD will make before re-transmitting the packet.