What is the recommendation to limit the rate of transfer so that bandwidth utilization isn't saturated? The current upload limit is approximately 40Mbps.
You command will do pretty well at that, though you don't want --stats and --progress (and --stats takes a time unit, eg --stats 10s.
Rclone doesn't do delta transfers like rsync (cloud storage doesn't support it in general) nor preserve permissions (same reason). You can quit and restart rclone and it will pick up where it left off. Rclone is very good at parallel transfers.
Rclone stores files 1:1 your disk -> cloud storage.
If you want a backup program which does do delta transfers and preserve permissions then you could use restic which can use rclone as a backend to store the actual objects.
Rclone checks checksums after each upload. You can also use rclone check to do a complete check of all the checksums.
Use --bwlimit. The parameter it takes is in bytes/s so 40Mbit/s = 8 MByte/s. Knock that down a bit to avoid saturation, say --bwlimit 7M (you'll probably need to experiment).
I thought that rclone only transfers changes. Can rclone only be resumed in the same session or can it be reinstated in a separate session? For example, if I stop rclone, shutdown the device and restart it?
How does parallelization affect --bwlimit? For example, if --transfers=10 and --bwlimit=7M, will it attempt to sequentially transmit these within the limits of 7M as a total?
If you are using --progress then --stats controls the rate at which the progress messages get printed. So you can use them together provided you are aware of that.
Rclone only transfers changes, yes, but on a file by file basis. So if you have 1000 files to sync and rclone gets through 300 you can quit it and restart and it will transfer the remaining 700.
However if you have one 100G file and you quit rclone and restart it, rclone will start from the beginning of the 100G file (this may change in the future!).
In that scenario rclone will transmit 10 files concurrently with a maximum total bandwidth of 7MByte/s, so each transfer will get roughly 0.7MByte/s
One file on your disk goes to one object on the cloud storage.
Probably the closest thing to that is running with the -v flag which will list every file transferred.