Limiting outbound traffic / connectivity

I’m on a Cox Residential connection (1GB down / 25MB up) and noticed when I started plotting, everything in my network chain starting acting up… time outs, performance was trash, etc.

First thing that got replaced was my Linksys 1GB switch (with an UniFi Switch) - that helped a lot.

The second thing I noticed was times of REALLY flaky internet - performance was like 60 KB/sec or Netflix would time out…

My mind immediately went to the ‘Connected Peers’ view of the farming app which I noticed will fill up with 100s of connections. I figured the network discovery would have a BitTorrent like behavior for obvious reasons.

Anyway, I’ve been inspecting my traffic a lot more than I did in the past (0) and noticed that the plotter is by far the most active device in my network, sending on average 6 GB/day of outbound traffic - which seems insane.

I’m 90% sure my ISP, which has been flawless for 10 years in this location, is punishing my for the outbound traffic to some extent.

Anyway I’m curious if others have found a healthy/effective way to scale back the nodes desire to connect to everyone in the world and limit the traffic a bit and if there has been any downside to doing so?

Are you plotting to local drives or to a destination over the network?

In theory your plotter doesn’t require an internet connection for what it does.
You still need to give your harvester / farmer access to the generated plots or move the plots to such a location, but this can be done over your local network
If your plotter is a standalone machine, remove Inet access, keep local network.

Local drives - all either in the host machine or in the SFF8088-connected enclosure.

Understand there is some intra-network slicing and dicing I can do - and good call out on my distinction - it’s the farmer/outbound peer connections that I imagine are creating the hellacious outbound traffic/day.

I don’t see how the peers are causing enough traffic to cause internet issues. I have just as many peers and I have no issues on a much smaller connection. And I even serve movies to my family and they have no issues.

You said you see that there is a lot of traffic outbound from the plotter system. Did you verify that traffic is actually chia traffic? Check what ports it is calling out on. Maybe something else is causing this.

I take it your hard wired not on WiFi?
I have my pc on wifi, if I move plots over the network my ping while online gaming jumps up and Netflix has issues buffering.
My farmer also starts missing alot of proof checks.

Yep all hard wired - I haven’t checked the logs yet with INFO turned on to see if I’m missing a lot of proofs :frowning:

I have the gui open and I can see it not check for minutes at a time, easier than log looking if it’s constant.

I’m fairly sure I’ve seen that you can limit connections while I was looking in the config.yaml , maybe worth a look, but possibly I’m wrong on that.

I’ve had higher outbound traffic than this - if the blockchain is 5GB, and a bunch of nodes with low height connect to you, then you will transfer many MBs, even GBs to them, especially if they don’t have many connections themselves. It doesn’t seem to be affecting my down speed, I assume it’s impacting my available up speed for other things, though.

At one point I considered trying to work out if I could automatically block people with low height, but figured that wouldn’t make me a very nice node, I don’t even kick them if I see them, but if I started to notice an impact on other things I might reconsider.

If I was going to do it though, I’d take an approach similar to this, rather than trying to mess with Chia code, or arbitrarily banning low-height nodes, go a lower level and make sure no connection can be too greedy:

https://making.pusher.com/per-ip-rate-limiting-with-iptables/

1 Like

If you run a decent firewall (which you should), you can go in and throttle that local IP’s outbound traffic. That should solve your problem.

I used target_peer_count in config to limit the number of connections on my rpi farmer prior to version 1.1.6

Worked as expected, connections and CPU load went down.
Ex:
target_peer_count: 7

1 Like

I’d rather have a lot of connections than do anything to limit my peer count - my reasoning for that (which I’d be glad to be corrected on) is that if lots of other nodes want to get to my height it must be a high height, and therefore I’m not falling behind the true peak, therefore a high amount of outbound traffic means everything is working. I’d actually be glad to be wrong on this, though.

Ah this is what I was wondering! (if there was some mechanism to control this) - right now it’s showing like 150 peer connections which seems like… a lot.

I am on Spectrum 30 down and I think 5 upload. I rarely have issues farming or plotting when both systems are connected to the internet. I intentionally Gimp my internet and pay for the lowest speed they offer because I am cheap and so far, other than the rare buffer on Hulu or YT (very rare), the Quality of Service has been nearly 100%.

I do know that Cox cable is known to throttle.

Cox doesn’t choose specifically who to throttle yet (or ever will). Instead, they monitor for excessive usage at the neighborhood’s node and if there is excessive traffic among all users, they throttle the entire node/neighborhood.

1 Like

This was my concern - especially since my upstream usage went up like 10,000% since I started farming and after 10 years of no issues, the week I start farming we start having these problems. Not hard to associate the two events when I see 6 GB/day outbound from the farming machine… yikes.

In a normal situation, you’d not have anything to worry about unless you are running a business with multiple users at home. You could see about going to a business level service agreement and see if that solves your issue.