?
Solved

TCP throughput low and asymmetric on windows

Posted on 2010-11-11
5
Medium Priority
?
682 Views
Last Modified: 2012-05-10
I've been using the trialware program "PerformanceTest 7.0", which has a module for testing network throughput.

I've discovered that when I use UDP, the speed is more or less the line speed between the two hosts. However, I've found that the TCP speed is much slower, and asymmetric. Note one of the hosts is an offsite server, 1ms ping away. I've tried to do the test against it from various machines of various specs/OS.

When the Windows Server 2008 machine is the sender, and the XP machine is the receiver, the speed is fast (but not UDP speed). The other way round, it's really, really slow.

Furthermore, I've used WireShark to look at the traffic. I've found numerous TCP duplicate ACKs and retransmissions in both scenarios, but it seems in the slower scenario, the sender waits by over a second roughly when the window size is reached, after a few frames. This doesn't happen the other way round. It also does this every few frames as the transmission goes on. Looking at the network benchmarking window, it seems as though the "data sent" only increments when a retransmission occurs.

The fast way wound, there's still load of resends, but no waiting, which I suppose is why the speed is higher (x10) but not quite as high as UDP.

What could be causing this? I've tried numerous fixes involving netsh commands on the 2008, changing the adapter settings on both, and changing registry settings on both. What do I need to be looking at? Note I've got many, many machines that I've tested this on, some with windows 7, some with windows XP, some with Windows 2008.
0
Comment
Question by:Titian
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
5 Comments
 
LVL 32

Expert Comment

by:aleghart
ID: 34114751
TCP wraps an unwraps the data and checks for transmission errors.  UDP is a spray-and-pray approach.

If your network interface does not handle the TCP crunching (the NIC will say "TOE"), then your Windows OS must do it.  Faster machines working in pure RAM will be faster than slower computers that are performing other tasks and possibly swapping memory operations out to a hard drive cache.

A NIC with TOE (TCP offload engine) will remove the load from the CPU.
0
 

Author Comment

by:Titian
ID: 34116297
I don't think the CPU load is causing the problem. The line is only 10Mbit/s, and the tool is telling me CPU usage is just a few percent.
0
 
LVL 32

Expert Comment

by:aleghart
ID: 34116810
I'm not sure if the %-age of CPU load matters (unless it's already very high).  The TCP traffic must be wrapped and unwrapped for every packet, error check, retransmit/recovery.

UDP lacks any order or flow control, so data can drop or arrive in the wrong order.  Doesn't matter, the sender will keep sending without applying any controls that would normally slow down TCP/IP.
0
 

Accepted Solution

by:
Titian earned 0 total points
ID: 34135329
I called the WAN provider, and it turns out they left one of their ports on half duplex. Problem solved.
0
 

Author Closing Comment

by:Titian
ID: 34178969
It turns out the problem wasn't the configuration after all, it was the WAN provider.
0

Featured Post

Does Powershell have you tied up in knots?

Managing Active Directory does not always have to be complicated.  If you are spending more time trying instead of doing, then it's time to look at something else. For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

You might have come across a situation when you have Exchange 2013 server in two different sites (Production and DR). After adding the Database copy in ECP console it displays Database copy status unknown for the DR exchange server. Issue is strange…
Sometimes clients can lose connectivity with the Lotus Notes Domino Server, but there's not always an obvious answer as to why it happens.   Read this article to follow one of the first experiences I had with Lotus Notes on a client's machine, my…
This tutorial will walk an individual through the steps necessary to install and configure the Windows Server Backup Utility. Directly connect an external storage device such as a USB drive, or CD\DVD burner: If the device is a USB drive, ensure i…
There are cases when e.g. an IT administrator wants to have full access and view into selected mailboxes on Exchange server, directly from his own email account in Outlook or Outlook Web Access. This proves useful when for example administrator want…
Suggested Courses

801 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question