Vista TCP: 30s retransmission delay == SLOW FILE TRANSFERS?
Folks,I've been researching a problem on my network over the past 2 days and I'd like to share what i've found so far. From my investigation and limited understanding of TCP, it is become apparent that there is some sort of fundamental problem with TCP in Vista, particularly when communicating with OSX (although I don't have a lot of different OSes to test with, so it could be more widespread). SummaryThe problem seems to be with TCP. It causes transfers of large amounts of data to stop and start sporadically, specifically when copying files from a Windows Share over NetBIOS / SMB. I've taken a Wireshark (tcpdump) capture of the problem. The captures are of a MacBook Pro (10.4.9) copying a file from a recently installed Windows Vista machine over 802.11n (Airport Extreme) using SMB / NetBIOS.Vista side: http://www.digitician.com.au/~elawford/winvista-filecopy-vista-small.capOSX side: http://www.digitician.com.au/~elawford/winvista-filecopy-osx-small.capThings to note from the 'vista' capture:- Packet 185 is a retransmission of packet Packet 170 but Packet 184 is an ACK for Packet 170 that was RECEIVED by Vista (where this cap was taken). Why did Vista not acknowledge this ACK that was clearly received by the network interface?- Packet 185 is sent (Vista ->) almost exactly 30 seconds after Packet 184 (Mac ->) - Why did it take 30 seconds to retransmit? Why such a high RTO??Why does Vista takes 30 seconds to retransmit a lost packet over a 2ms RTT link???SymptomsSince upgrading my file server to Windows Vista, i've noticed that the performance of streaming or copying files is very slow. What I mean by that the file transfer will usually start just fine and cruise along at 5-6MB/sec and then after about 30 seconds or so (this is highly variable though, can be almost straight away or can be after 2 minutes) the transfer will just stop and no data will be sent from the server until about 30 seconds later when the transfer will resume. It will then stop again, start again, stop again etc. This makes streaming basically impossible and file transfers take alot longer than they should.The capture above has been cut down (the original was hundreds of MB) to show one of these instances where the transfer cuts out. A friend and I have been looking for this for a few hours now and we're starting to come to the conclusion that there may be a potentially serious bug in Vista's new networking stack.Other things tried This has been duplicated this on three separate Vista installations: One running on dedicated hardware and two running in a vmware session. Both had the same problems. I've tried most possible combinations of settings for netsh interface tcp global, including enable ECN, CTCP and disabling auto window scaling. I've applied the hotfix for slow file transfers from Microsoft (KB935448). I've booted the MacBook Pro into Bootcamp / Windows XP and could NOT reproduce the problem over the same wireless network to the same server. This could be an OSX -> Vista-specific issue. I've tried the same transfer from the MacBook Pro to two different machines - one running Gentoo linux and the other Windows XP - over the same wireless to the same GigE ethernet segment and I could not reproduce the issue. I've tried going via hardwired GigE instead of 802.11n and could not reproduce the issue either.Would really appreciate an expert opinion on this. Has anyone else experienced this behavior? Thanks in advance,Ed
April 12th, 2007 2:53pm
Hi, I stumbled upon this thread by searching for the vista slow file copy problem on google (I've been entering the same search terms each week to see if anyone has come up with new research or working solutions), and I can confirm the 30 sec delay when copying files over NFS (rather than SMB). It shows up as spikes in the task manager bandwidth graph, though I haven't run Wireshark or anything of the sort. I'm copying from/to a Linux 126.96.36.199 server, over gigabit ethernet. Good to see people actively researching the issue! Hope this helps. Cheers, mf
June 2nd, 2007 7:14pm
Mark me as another one with this issue thought my developers were talking stupid so i setup vista on my system and low and behold lag spikes and lost packets. Ive heard rumor of this problem but didnt think even Microsoft would release a stuffed TCP/IP Stack like this. IVe now confirmed the issue on 3 system (all our vista system all differnt hardware configs) all xp's, 2003server, linux, macs not a problem with any slow down. Checked the issue on 4x routers / 2x 10/100 switches and 2x gigbyte switches (capable of 2gig burst in bidi) speed tops out around 250 - 300k in all senarios and long pauses every 30 seconds. The hardware tested was from every major manufacture and represents the best mid range of the last year also been tested on a new Vigor 3300V with latest firmware same problem. ON the vista side ive striped out and tweaked every setting i can think of and retested after each change no differnce.No system have firewall, AV, Security suit or any of that rubbish all are top spec performace workstations with raid / dual gig lan x2 4200's.I figure its one of 2 things1, Microsoft screwed up big time (not deliberatly) but i think it probably has something todo with QOS tweaks they made problem being i dont think they will be tweakable as its probably deep rooted in the new networking arcitecture they included. 2. could this be a clash of IPV6 we know it cant be removed without a reg hack and some tweaks and i had big probs with xp and the ipv6 patch when we tested it. Is IPV6 active at all times even when not given settings? not sure how to test for it dont think ive got any ipv6 capable gear.My hats in the ring anyone else?Maccs
July 4th, 2007 9:23pm
I have the same problem but with a Linux box. All was fine until I went from XP to Vista now movies stored on the vista machine pause for long periods. I also ran wireshark and found something similar. Thanks
July 25th, 2007 4:14am
Here too. Searched high and low for a fix to no avail. This is driving me nuts now. Its happening on 2 separate Vista PCs. Could it be related to the newSMB2 implementation perhaps? Whatever it is, I hope this gets fixed asap.
September 25th, 2007 11:14pm
I have been backing up my system prior to rebuild to a Buffalo External HDD (1GB LAN) HP Pavilion laptop (1GB LAN)direct connection to I am getting no more that 1.5MB/sec (1.39GB is going to take 4h7m) This is becoming a massive task asI have about 150GB to copy ! ! ! Please give me a resolution soon. CheersAndy
October 21st, 2008 10:39pm
From what I can tell, 90% of the Vista throughput issues (local file copy, networked transfers, etc.) are fixed in SP1.
October 21st, 2008 10:42pm
Disable IP 6 from Vista / Windows 7. Problem cured...
November 12th, 2009 9:12pm