0

This particular web site (gops.tay.be) serves objects quick if I try to request the page using windows, but I get them very slow if trying using linux. There is no difference if I use browser or curl:

Windows:

C:\curl>curl http://gops.tay.be/RadControls/Upload/Skins/Office2007/RadUpload.css -w %{time_total} -o 1.txt -s
0,078

Linux:

[root@ ~]# curl http://gops.tay.be/RadControls/Upload/Skins/Office2007/RadUpload.css -w   %{time_total} -o 1.txt -s
5.551

[root@ ~]# host gops.tay.be
gops.tay.be has address 194.7.31.58

[root@ ~]# ip -s -o r s c |grep 194.7.31.58
194.7.31.58 from 192.168.252.176 via 192.168.252.254 dev eth0 \    cache  used 2 age   2sec ipid 0x26de rtt 98ms rttvar 110ms cwnd 10
194.7.31.58 via 192.168.252.254 dev eth0  src 192.168.252.176 \    cache  age 8sec ipid 0x26de rtt 98ms rttvar 110ms cwnd 10
local 192.168.252.176 from 194.7.31.58 dev lo  src 192.168.252.176 \    cache <local>  used 6 age 2sec iif eth0

In wireshark both downloads (sessions initialisation etc.) seems to be identical except the linux has tcp.options.wscale.multiplier = 4 and windows has 256. The gops.tay.be server has always tcp.options.wscale.multiplier = 1.

Any other downloads from the linux box work just fine. For example for http://cdn.sstatic.net/serverfault/all.css?v=b1f1055f1c12 linux starts with tcp.options.wscale.multiplier = 4 and cdn.sstatic.net has a value of 1024.

What could cause such throttling? And why is a download from Windows box so quick in comparison?

Giacomo1968
  • 3,553
  • 29
  • 42

1 Answers1

3

The difference is due to tcp timestamps being used in Linux but not in windows. Turning them off makes the problem go away.

I have no answer as to why you are losing packets because of this option being on though.

Matthew Ife
  • 24,261