2008 R2 advanced TCP tuning

I have 4 physical servers that someone prior to me has built. We are noticing slowness when copying files between these servers. I have taken a quick look at the servers and I believe the issue may lie with the advanced tcp ip settings.

I ran the following command on each server (netsh interface tcp show global) and noted the results. It appears that each of these servers have different options set for the advanced tcp ip settings.

My two questions are
1. What are the default settings in 2008 r2 for these options?
2. Is there a document somewhere that details what each option does and when it may be used.

I figure as a start I could try setting all of these options back to the 2008 R2 defaults and then see if speeds improve.
LVL 35
Joseph DalyAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Before you start adjust tcp it is good to know few things first.
What are network card speeds on each server, and did you check is established connection full duplex or half duplex (and on switch too). Are you sending one big file, or a bunch of small files? and what are expected network transfer speeds for some file size, and what is current speed?

What tool did you use to check current network speeds?
Is maybe CPU usage high while files are copied?

General recommendation for speed up networks
Article about TCP tuning
Another one - tcp tuning
Default tcp values for server 2008
Chris HInfrastructure ManagerCommented:
Querying active state...

TCP Global Parameters
Receive-Side Scaling State          : enabled
Chimney Offload State               : automatic
NetDMA State                        : enabled
Direct Cache Acess (DCA)            : disabled
Receive Window Auto-Tuning Level    : normal
Add-On Congestion Control Provider  : ctcp
ECN Capability                      : disabled
RFC 1323 Timestamps                 : disabled

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Chris HInfrastructure ManagerCommented:
Try using iperf between servers, but make sure you test it in both directions (both directions implies running both servers as server and client).  I had an issue where the 2008 servers were sending 250Mbps~ and the 2008R2 servers were sending 950Mbs.  I ran the commands in both directions:

iperf -s      (SERVER MODE-aka receive)
iperf -c %serverIP% -w 64k    (CLIENT MODE-aka send)

Adding the -w 64k improved the throughput on the 2008 servers from 250 to 860Mbps....

I ran the following two commands on every 2008 server:

netsh interface tcp set global rss=disabled
netsh interface tcp set global autotuning=highlyrestricted    (this disables the TCP windows tuning)

From there, speeds were back to normal.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Windows Server 2008

From novice to tech pro — start learning today.