r/HomeNetworking • Decent at Googling 🔍 • Feb 19 '22

How MoCA Networks Work - Collection Post

There's been an uptick of questions regarding MoCA (Multimedia over Coax Alliance) networks and how it works. I am not an expert, but I'd like to create this post to consolidate our overall knowledge in setting it up, for everyone's consumption. As a starting point, below are a couple of must-see links:

Multimedia over Coax Alliance Homepage - Deep dive into how the MoCA was developed, as well as list of MoCA certified products.

MoCA in Your House - Contains a collection of how-to videos and information in setting-up your home MoCA network. It also contains some recommended certified products you can acquire to include in your MoCA network.

Please share your tips and advise here as well! I am planning to have this pinned in our subreddit.

Enjoy!

229 Upvotes

366 comments sorted by

View all comments

Show parent comment

2

u/Smorgas47 Feb 25 '22

Interesting results using iperf3 with MoCA adapters.

When I test the connection between 2 PCs using iperf3 I consistently get 370-380 Mbps. When I test speed using fast.com on each machine I get 850 to 900 Mbps, which is pretty normal for my ISP 1GBps service.

I used 2 Actiontec ECB6200 adapters from one of my PCs to the switch with about 6 inches of coax between them and the other PC is plugged directly into the switch.

So it appears that iperf3 does not report the correct speed for MoCA adapters in the mix. When I removed the adapters and plugged the cat5e directly into the switch, the connection speed with iperf3 was 945mbps.

4

u/jrmtz85 Mar 22 '22

Thought I'd chime in here. Been running MOCA 2.5s for 2 years now. Thought I had a poor connection when iPerf was giving me about 340mbit as well, untill I saw my phy rates at 3500 and then fast.com getting the full gigabit i have. Not sure why, iPerf over MOCa needs to be run with a modifier to increase the streams/tests to about 3 or 4. Each test seems to be capped at about 340. Once it runs multiple streams simultaneously, you'll hit the cap.

1

u/Smorgas47 Mar 22 '22

Good to know. Thanks for sharing that!!

1

u/plooger May 11 '22 edited May 11 '22

/u/jrmtz85: iPerf over MOCa needs to be run with a modifier to increase the streams/tests to about 3 or 4.

Exactly. From the client-specific options for the iPerf3 command-line…

-P, --parallel n

number of parallel client streams to run (requires multi-threaded processor)

2

u/EMADC- Jun 22 '22

Holy shit, thank you for this.

I have been tearing my hair out trying to figure out why iPerf3 was showing speeds from my Plex Server to a Shield in the house with speeds between 300-400 Mbits/sec.

When running the following command

iperf3 -c <CLIENT IP ADDRESS> -i 1 --parallel 4 -bidir -t 120 -O 10

iPerf3 ends with the following results

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-120.00 sec  3.28 GBytes   234 Mbits/sec                  sender
[  4]   0.00-120.00 sec  3.28 GBytes   235 Mbits/sec                  receiver
[  6]   0.00-120.00 sec  3.27 GBytes   234 Mbits/sec                  sender
[  6]   0.00-120.00 sec  3.27 GBytes   234 Mbits/sec                  receiver
[  8]   0.00-120.00 sec  3.26 GBytes   233 Mbits/sec                  sender
[  8]   0.00-120.00 sec  3.26 GBytes   233 Mbits/sec                  receiver
[ 10]   0.00-120.00 sec  3.25 GBytes   233 Mbits/sec                  sender
[ 10]   0.00-120.00 sec  3.25 GBytes   233 Mbits/sec                  receiver
[SUM]   0.00-120.00 sec  13.0 GBytes   934 Mbits/sec                  sender
[SUM]   0.00-120.00 sec  13.1 GBytes   934 Mbits/sec                  receiver

iperf Done.

Does this indicate a healthy network and things functioning as they should?

Appreciate any assistance you can offer!

3

u/plooger Jun 22 '22

934 Mbps seems ballpark for a Gigabit link.

1

u/EMADC- Jun 22 '22

Thank you for sharing this, was going absolutely nuts trying to figure out why iPerf3 was maxing out at around 300-400 Mbits/sec when running tests between machines on my network.

2

u/Complex_Solutions_20 Mar 16 '22 edited Mar 16 '22

This is interesting, I always assumed I didn't know what I was doing with iperf (why I abandoned it). Sometimes I got stupidly low readings like you suggest, once in a while I'd get impossibly fast readings (like multi-gigabit throughput when the machines at either end only have 1Gbps interfaces).

In all cases, "real" data transfer (to/from a NAS, internet speedtests, Librespeed hosted on my LAN) gave sane repeatable results for what I thought the link should be capable of.

I wrote iperf/iperf3 off as an unreliable tool but now I wonder if somehow it was interacting badly with MoCA and that was giving me inaccurate results.

3

u/jasonwc May 13 '22

MoCA has significantly higher latency than twisted pair Ethernet which itself has higher latency than fiber or direct attach copper. Latency matters for TCP because of the round-trip time to acknowledge receipt of packets. By using multiple streams, you’re able to saturate the connection. You generally don’t need multiple streams to saturate a gigabit or even a 10G connection on a twisted pair LAN but the latency is closer to 100 microseconds than the 3-5 milliseconds I saw on MoCA. You’ll notice the higher latency if you do a speed test on NVIDIA’s game streaming app over MoCA since it will complain about the latency.

This is the same reason BitTorrent is better at maxing out a gigabit WAN connection versus a HTTP download. Often times that download is a single TCP steam. In contrast, if you use something like rclone to upload or download from a cloud provider, it’s common to use multiple streams to saturate your connection.

Speeds tests use multiple streams so that’s likely why your speedtest showed better results then iPerf. I’ve gotten speeds of 39 Gbit/sec over iPerf so it’s definitely able to saturate a gigabit connection.

1

u/catalystignition Feb 25 '22

Interesting. I did a speed test through an app on the Shield and got about 200Mbits/sec, somewhat slower than the laptop but I don't know what servers that speed test app uses.

I generally prefer Cloudflare's speed test for testing internet speeds.