Are bandwidth limits (--bwlimit) for inbound, outbound or both?

I’m really interested in using rclone to throttle transfers from restic backups using rclone serve restic. I’m reading about --bwlimit but am not really clear on one thing: does the throttle apply to ingress, egress, or both?

In my case, I would like to throttle inbound, but leave outbound (to the cloud service) unlimited. If throttling one ends up throttling the other, that’s okay – I just don’t need a specific limit on outbound.

It applies to both…

The way it works is that rclone copies stuff from source -> dest where either can be local files or remote. The copying engine in the middle does the bandwidth limiting.

There isn’t a way of specifying that, alas, and it doesn’t really make sense the way rclone is implemented right now - the copying engine doesn’t have any idea or whether it is sending to or reading from the net.

There is an issue about this though: https://github.com/ncw/rclone/issues/1873 - fancy helping?

1 Like

apologies for piggybacking on this post. I have a bwlimit on my move command to gdrive :

rclone move ........ --bwlimit 10M

@ncw are you saying that this will also set a bwlimit for my rclone vfs mount’s incoming connection?

If so, is there any other way to stop rclone uploading more than 750GB per day? (I’ve gone a bit higher than the 8MB/s as my upload doesn’t tend to run for 24 hours). If I remember correctly the max transfer command is only per invocation, which wouldn’t work well for me where my job could run a few times a day.

Okay – that’s totally fine. Because even if just the inbound is throttled, that implicitly throttles the outbound too; can’t upload what you haven’t downloaded yet.

The more I think about it, the more I don’t think this is going to be helpful. How can one upload at 100 Mbps but download the data to upload at only 10 Mbps? You’d need a huge (or ever-increasing) buffer, and frankly I don’t think it’s worth the trouble.

Thanks for the tips!

1 Like

No, the bwlimit command is for each rclone instance only. They don’t communicate with each other so you can set separate limits for each.

2 Likes

Perfect - thanks.

Good to see you’ve thought of everything :wink:

1 Like