10GbE on Windows 7?

2

I have two machines, one with Linux Mint and the other with Windows 7. They each have a 10GbE card (Thecus C10GTR) and are directly connected with a cat6A cable.

I'm using iperf3 for bandwidth testing. I've turned off windows Firewall. I use Comodo Firewall, but I've disabled the firewall drivers it attached to the NIC.

With this setup, I get about 1.5-2Gbps. If I boot the Windows 7 box into Linux Mint, I get 8-10Gbps.

How can I get Windows 7 up to more reasonable speeds?

Ouroborus

Posted 2016-02-15T23:36:27.970

Reputation: 2 549

You have the latest windows driver installed? – Moab – 2016-02-15T23:45:43.993

Can you verify 2 things. 1. How are you testing the speeds, 2. at any point are you confusing GB (GigaByte) with Gb (GigaBit)? The second question is mostly to test your knowledge, since some people don't realize the difference. So nothing personal. – dakre18 – 2016-02-15T23:49:04.383

If you get no solutions here try Thecus technical support. http://www.thecus.com/sp_tech.php

– Moab – 2016-02-15T23:49:31.340

@Moab I do have the latest drivers Thecus supplies. – Ouroborus – 2016-02-15T23:52:26.607

@dakre18 As I said, I'm using iperf3. Some of its options configure reporting and has an item that specifically differentiates between -byte and -bit. I selected the option to display results in gigabits: -f g. – Ouroborus – 2016-02-15T23:55:54.697

@Ouroborus oh, I missed that part, sorry :) Just overlooked you were using iPerf3. Now I could see the problem being with Windows 7, but I think I have an answer you may or may not like. – dakre18 – 2016-02-16T00:09:43.787

There's no such thing as cat6E cable - officially speaking. Its cat6A. – Journeyman Geek – 2016-02-16T00:39:03.150

Linus (YouTube) goes through his entire troubleshooting processing at https://www.youtube.com/watch?v=D03t890dKTU . He ended up having to set Jumbo frames and a few other things.

– David Betz – 2016-02-16T03:47:07.840

Answers

0

If you say that you get the right speed with Linux but not with Windows, it's safe to rule any hardware or physical problems.

We're running a mix of different 10GB solutions here, some via direct cabling, some via 10GB BASE-T and others over fiber.

Install the latest drivers and make sure they're compatible with Windows 7. Make sure to use the latest version available, and make sure that you're using the NDIS 6.2 copy/build of the driver if you have that option (generally there will be many folders in the driver download, the NDIS 6.2 is the one specifically for Windows 7).

Which build of iperf3 are you using? Make sure it's not a bad build, a poor port, or a cygwin hack. I'm pretty sure these are the ones we use in testing: https://iperf.fr/iperf-download.php#windows

Do you get the same performance no matter which PC is the client and which is the server? iperf3 tests are uni-directional - one PC sends and the other receives. Either switch the -s/-c parameters or tag on a -r parameter to reverse the testing direction.

Did you set the iperf3 window size (it's the -w parameter) - perhaps the different Windows/Linux builds are compiled with different defaults.

Does Windows have jumbo frames enabled? Check the controller properties in Device Manager and make sure frame size is set to 9000 (and use ifconfig on Linux to do the same).

Disable any firewalls on the Windows end as some poorly-written software can do horrible things to your network bandwidth. Disable unused network filters and protocols when right-clicking on the connection and looking at its properties and see if you have any that aren't part of a default Windows install.

Mahmoud Al-Qudsi

Posted 2016-02-15T23:36:27.970

Reputation: 3 274

I think I'll pin the blame on Comodo Firewall. Turning it off isn't enough. Disabling the Comodo's network filter drivers on the NIC (and adjusting buffers and RSS settings) brings the speeds up to ~9.5Gbps, where I'd expected them to be. It also solves another issue I was having where hitting the NIC with heavy traffic would cause it to suddenly cause all the connections through it to become unresponsive. – Ouroborus – 2016-02-16T04:05:22.447

There you go! Glad you got it to work. If this problem is solved and you feel my answer helped you, please mark it as solved to help others down the line. – Mahmoud Al-Qudsi – 2016-02-16T04:07:39.907