As I mentioned previously, the auto recv space scaling algorithm isn't
optimized for all links. At list in my case, with the proverbial
satellite link (high bandwidth, high latency), the window never appears to
grow.
Manually setting the default recv space allows me to download at high
speed again. This diff brings back the two relevant sysctls.
Index: tcp_var.h
===================================================================
RCS file: /home/tedu/cvs/src/sys/netinet/tcp_var.h,v
retrieving revision 1.97
diff -u -r1.97 tcp_var.h
--- tcp_var.h 21 Oct 2010 11:38:27 -0000 1.97
+++ tcp_var.h 24 Dec 2010 23:08:33 -0000
@@ -481,8 +481,8 @@
{ "keepintvl", CTLTYPE_INT }, \
{ "slowhz", CTLTYPE_INT }, \
{ "baddynamic", CTLTYPE_STRUCT }, \
- { NULL, 0 }, \
- { NULL, 0 }, \
+ { "recvspace", CTLTYPE_INT }, \
+ { "sendspace", CTLTYPE_INT }, \
{ "ident", CTLTYPE_STRUCT }, \
{ "sack", CTLTYPE_INT }, \
{ "mssdflt", CTLTYPE_INT }, \
@@ -506,8 +506,8 @@
&tcp_keepintvl, \
NULL, \
NULL, \
- NULL, \
- NULL, \
+ &tcp_recvspace, \
+ &tcp_sendspace, \
NULL, \
NULL, \
&tcp_mssdflt, \