Update
Ok, I've tried the answers below and nothing has changed. I've identified the chipset in the laptop as the NVIDIA nForce 520. I downloaded the latest Vista x64 drivers for the nForce 520 (NVIDIA doesn't have any drivers for that chipset for Win 7 yet). I've tried installing the included firewall software (thinking maybe it is interfering - it's not). I've completely uninstalled my anti virus software (I am using Avast!) thinking its network filter driver may be causing a problem, that hasn't helped either.
I took my laptop over to my brothers house and was able to copy files at 10 - 12 MB/s over his 100Mbit network so I don't think it's the hardware.
I have run iperf with some surprising results:
iperf from the laptop sending to the server (upload)
> iperf -c naru
------------------------------------------------------------
Client connecting to naru, TCP port 5001
TCP window size: 8.00 KByte (default)
------------------------------------------------------------
[328] local 192.168.7.100 port 8549 connected with 192.168.7.6 port 5001
[ ID] Interval Transfer Bandwidth
[328] 0.0-10.0 sec 162 MBytes 136 Mbits/sec
> iperf -c naru -w 64k
------------------------------------------------------------
Client connecting to naru, TCP port 5001
TCP window size: 64.0 KByte
------------------------------------------------------------
[328] local 192.168.7.100 port 8550 connected with 192.168.7.6 port 5001
[ ID] Interval Transfer Bandwidth
[328] 0.0-10.0 sec 1.06 GBytes 909 Mbits/sec
iperf from the server sending to the laptop (download)
> iperf -c miyuki
------------------------------------------------------------
Client connecting to miyuki, TCP port 5001
TCP window size: 8.00 KByte (default)
------------------------------------------------------------
[256] local 192.168.7.6 port 51871 connected with 192.168.7.100 port 5001
[ ID] Interval Transfer Bandwidth
[256] 0.0-10.1 sec 25.2 MBytes 20.8 Mbits/sec
> iperf -c miyuki -w 64k
------------------------------------------------------------
Client connecting to miyuki, TCP port 5001
TCP window size: 64.0 KByte
------------------------------------------------------------
[256] local 192.168.7.6 port 51872 connected with 192.168.7.100 port 5001
[ ID] Interval Transfer Bandwidth
[256] 0.0-10.0 sec 21.1 MBytes 17.6 Mbits/sec
For comparison here are the iperf numbers between the HTPC and the server
Server: Naru, Host: CC (CC sends to Naru)
iperf -c naru: 0.0-10.0 sec 363 MBytes 305 Mbits/sec
iperf -c naru -w 64k: 0.0-10.0 sec 1.06 GBytes 912 Mbits/sec
Server: CC, Host: Naru (Naru sends to CC)
iperf -c cc: 0.0-10.0 sec 322 MBytes 270 Mbits/sec
iperf -c cc -w 64k: 0.0-10.0 sec 1020 MBytes 855 Mbits/sec
Using wireshark to watch a transfer from the server to the laptop nets a lot of the following entries:
(:51aa is the server, :37a1 is the laptop)
No. Time Source Destination Proto Info
37785 27.286240 fe80::3820:2199:1623:37a1 fe80::1569:8500:b24a:51aa TCP [TCP Dup ACK 37753#13] 8360 > microsoft-ds [ACK] Seq=80228 Ack=40489174 Win=64800 Len=0 SLE=40499254 SRE=40517974
37786 27.286258 fe80::3820:2199:1623:37a1 fe80::1569:8500:b24a:51aa TCP [TCP Dup ACK 37753#14] 8360 > microsoft-ds [ACK] Seq=80228 Ack=40489174 Win=64800 Len=0 SLE=40499254 SRE=40519414
37787 27.286277 fe80::3820:2199:1623:37a1 fe80::1569:8500:b24a:51aa TCP [TCP Dup ACK 37753#15] 8360 > microsoft-ds [ACK] Seq=80228 Ack=40489174 Win=64800 Len=0 SLE=40499254 SRE=40520854
37788 27.286295 fe80::3820:2199:1623:37a1 fe80::1569:8500:b24a:51aa TCP [TCP Dup ACK 37753#16] 8360 > microsoft-ds [ACK] Seq=80228 Ack=40489174 Win=64800 Len=0 SLE=40499254 SRE=40522294
37789 27.286313 fe80::3820:2199:1623:37a1 fe80::1569:8500:b24a:51aa TCP [TCP Dup ACK 37753#17] 8360 > microsoft-ds [ACK] Seq=80228 Ack=40489174 Win=64800 Len=0 SLE=40499254 SRE=40523734
37790 27.286332 fe80::3820:2199:1623:37a1 fe80::1569:8500:b24a:51aa TCP [TCP Dup ACK 37753#18] 8360 > microsoft-ds [ACK] Seq=80228 Ack=40489174 Win=64800 Len=0 SLE=40499254 SRE=40525174
37791 27.286351 fe80::3820:2199:1623:37a1 fe80::1569:8500:b24a:51aa TCP [TCP Dup ACK 37753#19] 8360 > microsoft-ds [ACK] Seq=80228 Ack=40489174 Win=64800 Len=0 SLE=40499254 SRE=40526614
37792 27.286370 fe80::1569:8500:b24a:51aa fe80::3820:2199:1623:37a1 TCP [TCP Previous segment lost] [TCP segment of a reassembled PDU]
37793 27.286372 fe80::1569:8500:b24a:51aa fe80::3820:2199:1623:37a1 TCP [TCP segment of a reassembled PDU]
37794 27.286375 fe80::1569:8500:b24a:51aa fe80::3820:2199:1623:37a1 TCP [TCP Fast Retransmission] [TCP segment of a reassembled PDU]
37795 27.286377 fe80::1569:8500:b24a:51aa fe80::3820:2199:1623:37a1 TCP [TCP Out-Of-Order] [TCP segment of a reassembled PDU]
37796 27.286379 fe80::1569:8500:b24a:51aa fe80::3820:2199:1623:37a1 TCP [TCP Out-Of-Order] [TCP segment of a reassembled PDU]
37797 27.286382 fe80::1569:8500:b24a:51aa fe80::3820:2199:1623:37a1 TCP [TCP Out-Of-Order] [TCP segment of a reassembled PDU]
37798 27.286413 fe80::3820:2199:1623:37a1 fe80::1569:8500:b24a:51aa TCP [TCP Dup ACK 37753#20] 8360 > microsoft-ds [ACK] Seq=80228 Ack=40489174 Win=64800 Len=0 SLE=40528054 SRE=40529494 SLE=40499254 SRE=40526614
37799 27.286432 fe80::3820:2199:1623:37a1 fe80::1569:8500:b24a:51aa TCP [TCP Dup ACK 37753#21] 8360 > microsoft-ds [ACK] Seq=80228 Ack=40489174 Win=64800 Len=0 SLE=40528054 SRE=40530934 SLE=40499254 SRE=40526614
At this point I am at a complete and utter loss as to what to try next.
Original Question
Background
I am currently experiencing an issue on my freshly installed Windows 7 laptop. The issue originally occurred after I had installed the Windows 7 RC. When Windows Vista and the Windows 7 Beta 1 were installed on this laptop I was able to transfer at gigabit speeds with Jumbo frames turned on to the 9KB/9014 range. The two switches between the laptop support Jumbo frames as well.
When copying files from my server to my laptop, they run at a snails pace (usually less than 1 MB/sec) while other devices going through the same switches can transfer at higher speeds (45 - 55 MB/sec). It seems copying from the laptop to the server nets a faster speed but nothing like it should be.
Machines involved
- Miyuki: Laptop with the issue. Windows 7 x64 RTM. HP Pavilion dv9700 CTO. Uses a NVIDIA nForce 10/100/1000 Mbps Ethernet adapter. (Video is GeForce 8400M GS)
- Naru: Server with files. Custom Windows Server 2008 R2 x64 SP2. Uses a D-Link DGE-560T PCI Express Gigabit adapter.
- CC: HTPC on same switch without issue. Windows Vista x86 SP2. Uses an on-board Realtek RTL8168B/8111B PCI-E GBE adapter.
When these images were taken jumbo frames have all been turned off.
The images
Copying initiated from the laptop
Server -> Laptop
(source: gibixonline.com)
Laptop -> Server
Copying initiated from the server
Server -> Laptop
(source: gibixonline.com)
Unexpectedly having the server copy a file from the laptop to itself results in speeds I would expect. (Laptop -> Server)
(source: gibixonline.com)
I stated earlier that the other machine on the same switch doesn't have this issue. High DPI is turned on since this is displayed on a HDTV.
Server -> HTPC
(source: gibixonline.com)
Naturally as a test I decided to see what the speeds were between my laptop and the HTPC. Unfortunately they were exactly what I expected.
HTPC -> Laptop
(source: gibixonline.com)
Final notes
I have tried everything I can think of. Even jumbo frames are turned off at this point and nothing seems to affect it. I've tried turning my Anti-Virus protection off to changing the cables that I use. Currently all cables in use are CAT-5e that I have built. I tried taking the cable from the HTPC and plugged it into my laptop to see if cabling was an issue. The two switches in question are a D-Link DGS-1216T and a "dumb" switch that supports jumbo frames, the D-Link DGS-2208.