# need some help on tune tcp [ solved ]

## shallpion

I recently noticed there is a horrible lag when I tried to pay my cell phone bill through verizon wireless website ( This is a major cell phone provider in usa ). I thought it was just because some server delay. But after testing the same website under windows xp I figured out it is working well. So I did some research on internet and learned about the so-called tcp tuning. The gentoo wiki suggests

 *Quote:*   

> 
> 
> net.ipv4.tcp_wmem = 4096 65536 16777216
> 
> net.ipv4.tcp_rmem = 4096 87380 16777216
> ...

 

A somewhat very larg max number 16777216 = 16M. However, I did this and found no changed after sysctl -p. On the other hand, I tried to set them very small

 *Quote:*   

> 
> 
> net.ipv4.tcp_wmem = 4096 16384 57344
> 
> net.ipv4.tcp_rmem = 4096 87380 57344
> ...

 

To my big surprise. I immediately noticed a huge speed increase when using verizon wireless--->now I need less than 1 second to open many verizon pages which I had to spend almost 1 minute. Another typical website who has this phenomenon is

http://www.rv.net/forum/

This confused me a bit because I suppose these two numbers should be the bigger the better. I tested some other websites which I had very slow experience, and figured out there is NO significant change, whatever. So there must be something different about the verizon website. I looked into ubuntu forum and found they are also suggesting a smaller tcp_mem, smaller then the default. So could anybody please kindly explain these two flags to me ? ThanksLast edited by shallpion on Thu Feb 25, 2010 3:03 pm; edited 2 times in total

----------

## shallpion

A careful observation with tcpdump indicates tons of message like

 *Quote:*   

> 
> 
> 10:07:30.699839 IP 162.115.224.47.https > 192.168.1.145.36115: Flags [P.], seq 70772:70784, ack 1588, win 12288, length 12
> 
> 10:07:30.699889 IP 192.168.1.145.36115 > 162.115.224.47.https: Flags [.], ack 70784, win 12, length 0
> ...

 

Looks like something wrong with the tcp_window_size, so I  echo 0 > /proc/sys/net/ipv4/tcp_window_scaling

Now everything is fine.

----------

