Non pensavo che su internet esistessero ancora router non compliant con il window scaling… questi router bacati azzerano i bit del window scaling
Oggi su uno dei mailserver che gestisco ho nostato che la connessione verso uno specifico mail server era lentissima e mi mandava in timeout le connessioni durante il greeting smtp… pensavo a qualche meccanismo di antispam, anche se piuttosto strano… alla fine il tecnico del server destinatario, che evidentemente aveva già avuto il segnalazioni analoghe mi ha suggerito di di limitare la finestra tcp (disabilitando di fatto il window scaling)
Per fortuna che da un paio di release del kernel è possibile impostare il parametro “window” per singola “route”:
commit 316c1592bea94ead75301cb764523661fbbcc1ca
Author: Stephen Hemminger
Date: Tue Aug 22 00:06:11 2006 -0700
[TCP]: Limit window scaling if window is clamped.
This small change allows for easy per-route workarounds for broken hosts or
middleboxes that are not compliant with TCP standards for window scaling.
Rather than having to turn off window scaling globally. This patch allows
reducing or disabling window scaling if window clamp is present.
Example: Mark Lord reported a problem with 2.6.17 kernel being unable to
access http://www.everymac.com
# ip route add 216.145.246.23/32 via 10.8.0.1 window 65535
Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller