Revert "Increase the default TCP maximum segment size from 512 to 1460."
authorSimon 'corecode' Schubert <corecode@fs.ei.tum.de>
Mon, 14 Sep 2009 17:08:04 +0000 (19:08 +0200)
committerSimon 'corecode' Schubert <corecode@fs.ei.tum.de>
Mon, 14 Sep 2009 17:08:04 +0000 (19:08 +0200)
This reverts commit d190343e53819e25316a2a890724404f8e48c78d.

It seems that there are systems (probably firewalls) in action which
enforce an MSS of 536.

Specifically, at research.microsoft.com, port 80, packets seem to be
simply dropped if they exceed a MSS of 536 bytes, and no ICMP
destinatino unreachable, need to fragment message is generated.

While this behavior might be questionable as well, we should not diverge
from established standards.

This default MSS value can be changed using the sysctl node
net.inet.tcp.mssdflt.

Mandated by RFC 879, RFC 1122.

sys/netinet/tcp.h

index b493388..e320bb7 100644 (file)
@@ -121,9 +121,8 @@ struct tcphdr {
  * With an IP MSS of 576, this is 536,
  * but 512 is probably more convenient.
  * This should be defined as MIN(512, IP_MSS - sizeof (struct tcpiphdr)).
- * The modern consensus is that 1500 is a safe MTU to use for the Internet.
  */
-#define        TCP_MSS 1460
+#define        TCP_MSS 512
 
 /*
  * TCP_MINMSS is defined to be 256 which is fine for the smallest