Understand iperf3 results

1

I'm trying to diagnose network performance in my house. I ran iperf3 on two Macs wired to a gigabit Ethernet switch (through cable runs in wall). My results were:

Connecting to host 10.0.1.192, port 5201  

[  5] local 10.0.1.51 port 50191 connected to 10.0.1.192 port 5201
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec  9.54 MBytes  80.0 Mbits/sec
[  5]   1.00-2.00   sec  11.3 MBytes  94.7 Mbits/sec
[  5]   2.00-3.00   sec  11.3 MBytes  94.5 Mbits/sec
[  5]   3.00-4.00   sec  11.2 MBytes  94.2 Mbits/sec
[  5]   4.00-5.00   sec  11.2 MBytes  93.6 Mbits/sec
[  5]   5.00-6.00   sec  11.3 MBytes  94.6 Mbits/sec
[  5]   6.00-7.00   sec  11.2 MBytes  94.2 Mbits/sec
[  5]   7.00-8.00   sec  11.1 MBytes  93.5 Mbits/sec
[  5]   8.00-9.00   sec  11.3 MBytes  94.7 Mbits/sec
[  5]   9.00-10.00  sec  11.2 MBytes  94.3 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.00  sec   111 MBytes  92.8 Mbits/sec - sender
[  5]   0.00-10.05  sec   110 MBytes  92.0 Mbits/sec - receiver

So this outputs results for each second for 10 seconds. I'm not seeing any warning messages that the documentation of iperf3 mentioned hinting that I need to apply special parameters other than the default iperf3 -c [ip].

My questions are:

  1. So I assume the Transfer column means how much data it sent during the 1 second interval?
  2. If yes for #1, why doesn't it match the Bitrate of 'data/second'? If no for #1, can you explain what Transfer and Bitrate really mean in layman's terms?
  3. I assume this is pathetic performance for two Macs plugged in via ethernet to a gigabit router?
  4. Is there a page/reference somewhere that describes what sort of numbers I should get if I have a 100 Mbit/s vs 1000 Mbit/s connection for wired connections in optimal conditions?

I don't know if I have bad wire connections throughout the house or not, but just trying to get a handle on my actual performance before I make any drastic decisions (such as gutting the wiring in my house and pulling new wire and getting new hardware).

I followed test from this article and its author seems to get 700/600 numbers in his wired results, so I feel something is way off.

Hardware being tested:

  • Netgear GS608 8 x 10/100/1000Mbps Gigabit Ethernet Switch
  • 21.5" Mid 2011 iMac running on El Capitan
  • MacBook Pro 15" Retina, Late 2013 using Cable Matters USB->3.0 adapter to ethernet

Terry

Posted 2017-07-04T01:44:34.873

Reputation: 235

Answers

1

iperf's Transfer column is in MebiBytes: 1,048,576's of 8-bit Bytes.
iperf's Bitrate column is in megabits: 1,000,000's of 1-bit bits.
There are roughly 8.4 megabits per MebiByte.

94 Mbits/sec is the max rate you can get for TCP/IP throughput on 100 megabit Ethernet with standard sized frames. If this was gigabit Ethernet, you should be seeing 942 megabits/sec.

Your results show that you've only established a 100 megabit link between the two Macs. Check your wiring to make sure you have all 4 pairs, with the right pinout on both ends, and make doubly sure you haven't split a pair. Also double check your USB Ethernet dongle to make sure it's gigabit. A lot of USB Ethernet dongles are only 10/100. Make sure both Macs say its gigabit Ethernet and make sure the switch thinks both ports have negotiated gigabit.

I'm not sure why you were only expecting 600-700 megabits per second. Macs have been able to saturate gigabit Ethernet at 942 mbps on iperf since around the 1GHz PPC G4 Macs in ~2001. Anything less and you have faulty wiring that doesn't meet the Cat5 spec or is longer than 100m.

Spiff

Posted 2017-07-04T01:44:34.873

Reputation: 84 656

The 600/700 number...I wasn't expecting that, I wasn't even getting close to that result reported by person who wrote the article, so I knew something was wrong. But I misread his result. His result was for one wired machine. But I actually had an old MacBook Pro limiting the result to 100 megabit Ethernet. So I swapped that out and I transferred 1.07 GBytes with a Bitrate of 923 Mbits/sec. So I think wired is fine, buy unfortunately I'm getting totally poor and high variance wifi results :(. – Terry – 2017-07-05T18:32:05.257

I'm glad you figured it out, but your explanation doesn't make sense to me because all MacBook Pros with built-in Ethernet supported gigabit Ethernet. So maybe the problem was really that you were using a USB to 10/100 Ethernet adapter instead of, say, a Thunderbolt to gigabit Ethernet adapter? – Spiff – 2017-07-05T18:45:12.107

I'm confused myself. I was using a 17" MacBook Pro Mid 2010. When I looked in Network Utility I swear it said 10/100 for Ethernet. But when I just checked now, it did say gigabit. And I ran another wired test with iperf3 and got high results again. This is crazy. – Terry – 2017-07-05T19:37:47.373

If your machines aren't able to reliably negotiate a gigabit connection, it suggests a wiring problem. The first thing to look for is a split pair (where the pins that need to be connected to a twisted pair are actually connected to one wire from each of two different twisted pairs, losing all the benefit of doing balanced/differential signaling). – Spiff – 2017-07-05T20:57:10.513

1@Terry Yes, AirPort Express only has 10/100 Ethernet. This usually isn't much of a bottleneck because in most real-world situations, 300Mbps Wi-Fi doesn't get that much above 94Mbps anyway (half duplex, extra protocol overhead, most device too far away to get max PHY rate anyway), and most users don't care about LAN speeds, they care about Internet speeds, and most users don't have 100Mbps Internet. But users who care about max performance should buy AirPort Extremes, not AirPort Expresses. – Spiff – 2017-07-09T18:19:05.970

Stab in dark since you seem to know your stuff pretty quick. I'm trying to improve home wifi network (wan/lan). Was comparing a new Orbi +1 satellite vs my existing Extreme extended via wired Express. Flawed test I see now due to 10/100 ports. Any opinion on whether two wired Extremes vs Orbi +1 satellite or 3 wired Extremes vs Orbi +2 satellite would be comparable in performance? – Terry – 2017-07-09T18:28:29.687

@Terry Two wired Extremes. Always run wires to stationary devices and reserve your wireless bandwidth for mobile devices. – Spiff – 2017-07-09T18:31:12.767

I know that, but for wireless devices, I was just asking if you had any opinion on whether using Extremes in tandem to extend a wireless network would perform as good as a Netgear Orbi system. – Terry – 2017-07-09T19:30:43.747

1@Terry I thought the whole point of an Orbi system was to use a wireless backhaul between APs for when you can't run Ethernet. It sounds like you've already run Ethernet, so go with two Extremes. – Spiff – 2017-07-09T19:38:26.517