New Ethernet Cable Testing
PC-to-PC testing is an excellent practical method. The best software is iPerf3, which measures TCP/UDP throughput, retransmissions and packet loss. It is free and specifically designed for network performance testing.
What you need
- Two computers with Ethernet adapters supporting the required speed
- The cable being tested
- iPerf3 installed on both computers
- Matching NIC speedsβfor example, two 2.5G adapters to test 2.5 Gb/s
- Modern adapters support Auto-MDI/MDIX, so a crossover cable is normally unnecessary
Connect the cable directly between the two computers.
1. Configure IP addresses
On PC 1:
IP address: 192.168.50.1
Subnet mask: 255.255.255.0
Gateway: blank
On PC 2:
IP address: 192.168.50.2
Subnet mask: 255.255.255.0
Gateway: blank
Disable Wi-Fi temporarily to ensure the test uses Ethernet.
Confirm connectivity from PC 2:
ping 192.168.50.1
2. Confirm negotiated data rate
On each Windows computer:
Get-NetAdapter | Format-Table Name, Status, LinkSpeed
You should see the expected speed:
Ethernet Up 1 Gbps
If a Cat6 cable repeatedly negotiates at 100 Mb/s instead of 1 Gb/s, one or more pairs are probably faulty.
3. Run a TCP throughput test
On PC 1, start the server:
iperf3.exe -s
On PC 2, run a five-minute test:
iperf3.exe -c 192.168.50.1 -t 300 -P 4
-P 4 creates four parallel streams, which can help fully load faster connections.
Typical healthy results are approximately:
| Negotiated link | Expected TCP result |
|---|---|
| 100 Mb/s | 93β95 Mb/s |
| 1 Gb/s | 930β950 Mb/s |
| 2.5 Gb/s | 2.3β2.4 Gb/s |
| 5 Gb/s | 4.6β4.8 Gb/s |
| 10 Gb/s | 9.2β9.5 Gb/s |
These are approximate because Ethernet, TCP and IP overhead reduces usable throughput.
4. Test the opposite direction
From PC 2:
iperf3.exe -c 192.168.50.1 -t 300 -P 4 -R
-R makes traffic travel from the server towards the client.
With a recent iPerf3 version, test both directions simultaneously:
iperf3.exe -c 192.168.50.1 -t 300 -P 4 --bidir
For initial testing, I prefer separate forward and reverse tests because the results are easier to interpret.
5. Look for TCP retransmissions
The result contains a Retr column:
[SUM] 0.00-300.00 sec 32.8 GBytes 939 Mbits/sec 0 sender
You want:
- Stable throughput
- Ideally zero retransmissions
- No link disconnections
- Similar performance in both directions
One or two retransmissions over a long test do not automatically prove the cable is faulty, but persistent or rapidly increasing retransmissions need investigation.
6. Run a UDP packet-loss test
For a 1 Gb/s link, start below the maximum:
iperf3.exe -c 192.168.50.1 -u -b 900M -t 300
Then increase it:
iperf3.exe -c 192.168.50.1 -u -b 950M -t 300
The receiver reports lost datagrams:
Lost/Total Datagrams
0/2000000 (0%)
Ideally, you want 0% packet loss. However, if the sending PC cannot generate packets quickly enough or the receiving PC is overloaded, UDP loss may occur even with a good cable.
7. Check Windows adapter error counters
Before testing:
Get-NetAdapterStatistics -Name "Ethernet" | Format-List *
Run the test, then issue the command again:
Get-NetAdapterStatistics -Name "Ethernet" | Format-List *
Examine:
ReceivedPacketErrorsOutboundPacketErrorsReceivedDiscardedPacketsOutboundDiscardedPackets
Microsoft confirms that this command reports adapter errors and discards, although the exact counters available depend on the NIC and its driver.
PS C:\Users\Administrator> Get-NetAdapterStatistics -Name "Wi-Fi" |
>> Format-List * |
>> Out-String -Stream |
>> Select-String "rror|iscard"
OutboundDiscardedPackets : 0
OutboundPacketErrors : 0
ReceivedDiscardedPackets : 0
ReceivedPacketErrors : 0
Leave a Reply