Jump to content
Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
NickTheGreek

IW10

Recommended Posts

Τελικά τι έγινε με αυτό και δεν το ακούω ?

Increasing TCP’s Initial Congestion Window

Increasing the initial cwnd size on the server to the new RFC 6928 value of 10 segments (IW10) is one of the simplest ways to improve performance for all users and all applications running over TCP. And the good news is that many operating systems have already updated their latest kernels to use the increased value — check the appropriate documentation and release notes.

For Linux, IW10 is the new default for all kernels above 2.6.39. However, don’t stop there: upgrade to 3.2+ to also get the benefit of other important updates; see Proportional Rate Reduction for TCP.

https://hpbn.co/building-blocks-of-tcp/

 

 

Share this post


Link to post
Share on other sites

CentOS 6.4 update finally supports IW10 for tcp/ip tuning

iw10

 

Google and others have published several whitepapers showing benchmarks where tuning tcp/ip on servers can really help web browsing performance.

One of these important tweaks is known as IW10 which improves the tcp/ip congestion window by reducing ACKs (initally sending 10 packets instead of only 3) and is enabled by increasing initcwnd and initrwnd.

Unfortunately those on CentOS (one of the most popular linux production distributions) were not able to take advantage of this – until this weekend when CentOS 6.4 was shipped.

CentOS 6.3 could change initcwnd but NOT initrwnd (RWIN) which requires a kernel > 2.6.33

CentOS 6.4 is 2.6.32-358.0.1.el6 (Red Hat 4.4.7-3) so the feature has been backported

Here’s how to take advantage of IW10 on CentOS 6.4

 

This is obviously for power users with root access to their VPS or dedicated servers (this will NOT work on Virtuozzo VZ vps!)

First of course do a yum update to get Centos 6.4

Then take a look at your current settings via

ip route show

You are looking for the last line that will say something like

default via 4.3.2.1 dev eth0

Then just take that line and add two parts to it

ip route change default via 4.3.2.1 dev eth0 initcwnd 10 initrwnd 10

And bingo, you now have IW10 support.
If something goes wrong, it will just complain and not make the change.

Note these changes aren’t permanent, you will have to add the line to /etc/rc.local
or similar, to make it happen on each reboot

There are other important things to tune with tcp/ip, but one of the other most important is to disable “slow start after idle”

sysctl -a | grep tcp_slow_start_after_idle
sysctl -w net.ipv4.tcp_slow_start_after_idle=0

It is possible to actually examine the performance improvements of making this change on a packet level but it requires the use of wireshark and and counting ACKs which is a bit tedious so I will skip that for now.

Unfortunately it might be YEARS before CentOS gets things like TCP Fast Open which has only appeared a few months ago in linux kernel > 3.5 but I am still investigating if it’s possible in CentOS 6.4 to easily reduce the RTT initial timeout from 3 seconds to 1 second which is another recommended tcpip tuning improvement.

 

https://ckon.wordpress.com/2013/03/11/centos-6-4-supports-iw10-tcpip-tuning/

Share this post


Link to post
Share on other sites

Εχει ήδη εδραιωθεί ? απλά ξεχάστηκε ?

αντιρρήσεις και επιφυλάξεις υπήρχαν από τότε:

https://tools.ietf.org/html/draft-gettys-iw10-considered-harmful-00

 

Internet Engineering Task Force                               Jim Gettys
Internet-Draft                                  Alcatel-Lucent Bell Labs
Intended status: Informational                           August 26, 2011
Expires: February 27, 2012


                        

IW10 Considered Harmful

draft-gettys-iw10-considered-harmful-00

Abstract The proposed change to the initial window to 10 indraft-ietf-tcpm- initcwnd must be considered deeply harmful; not because it is the proposed change is evil taken in isolation, but that other changes in web browsers and web sites that have occurred over the last decade, it makes the problem of transient congestion at a user's broadband connection two and a half times worse. This result has been hidden by the already widespread bufferbloat present in broadband connections. Packet loss in isolation is no longer a useful metric of a path's quality. The very drive to improve latency of web page rendering is already destroying other low latency applications, such as VOIP and gaming, and will prevent reliable rich web real time web applications such as those contemplated by the IETF rtcweb working group.

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×