Opened 12 years ago
Last modified 10 years ago
#10034 closed defect
Slow upload on a NATed Windows XPSP3 guest — at Version 3
Reported by: | alt236 | Owned by: | |
---|---|---|---|
Component: | network/NAT | Version: | VirtualBox 4.1.6 |
Keywords: | Cc: | ||
Guest type: | Windows | Host type: | Mac OS X |
Description (last modified by )
Hello!
I am having some problems with a Guest XP SP3 VM.
Even though the download speed on the NATed interface is reasonably high, but the upload speed seems to be capped at about ~50Kb/sec, works in bursts and eventually hangs. It seems to be worse when FTPing a large number of files in succession.
I've tried the same VM under a MacOS and a Linux host with the same results.
The moment I switch from NAT to a bridged interface, the upload speed returns to a reasonable level.
I disabled the QoS scheduler from the Guest's network interface with no results. I also tuned the TCP buffer with no effect.
There have been some similar problems in the past (not sure if they are related): https://forums.virtualbox.org/viewtopic.php?f=2&p=154844
https://www.virtualbox.org/ticket/1656
https://www.virtualbox.org/ticket/3400
Many thanks! Alex
Change History (4)
comment:1 by , 12 years ago
follow-up: 3 comment:2 by , 12 years ago
I'm having the same problem with a Windows host and Windows guest. It happens not only over FTP but also large HTTP POSTs and probably any other upload. I examined a Wireshark capture and I believe the problem is as follows: after a fair amount of data has been transmitted by the guest, I guess there's a buffer in VirtualBox that starts to fill up and the ACKs that it sends back to the guest have smaller window sizes. Occasionally one of those window sizes will be less than the MSS, and because of Windows' (the guest) Silly Window Syndrome avoidance, it will stop transmitting packets to avoid sending one smaller than the MSS until a 5 second timeout has passed. So the transfer ends up going in burts, with 5 second delays interspersed.
The workaround of increasing one of the NAT TCP/IP buffers helps, specifically the last number:
VBoxManage modifyvm <vm> --natsettings1 1500,64,64,64,1024
Although it reduces the frequency of the delays and greatly improves the transfer speed, it does not fully eliminate the problem.
comment:3 by , 12 years ago
Description: | modified (diff) |
---|
Replying to jdpurcell:
I'm having the same problem with a Windows host and Windows guest. It happens not only over FTP but also large HTTP POSTs and probably any other upload. I examined a Wireshark capture and I believe the problem is as follows: after a fair amount of data has been transmitted by the guest, I guess there's a buffer in VirtualBox that starts to fill up and the ACKs that it sends back to the guest have smaller window sizes. Occasionally one of those window sizes will be less than the MSS, and because of Windows' (the guest) Silly Window Syndrome avoidance, it will stop transmitting packets to avoid sending one smaller than the MSS until a 5 second timeout has passed. So the transfer ends up going in burts, with 5 second delays interspersed.
Thank you for investigation and summary. Could you please clarify a bit your environment? For Virtualbox settings you may attach your log file. Do I understand right that you have got web server on the guest?
The workaround of increasing one of the NAT TCP/IP buffers helps, specifically the last number:
VBoxManage modifyvm <vm> --natsettings1 1500,64,64,64,1024
Although it reduces the frequency of the delays and greatly improves the transfer speed, it does not fully eliminate the problem.
Could you describe what you "see" in this case? Perhaps attaching or sending your pcap files could help with clarification.
Could you please upload the log file? Do you I understand you right, you have installed ftp server(which server do you use?) on winXP guest and try to upload files via ftp?