We have three Macs at home, which run an assortment of cloud-backup and synchronization apps—including Dropbox, CrashPlan, BitTorrent Sync and Arq.
Whenever any one, or combination of, these apps saturates the ADSL upload bandwidth, downloading then becomes very difficult. And that presents a big problem when trying to do things like watch content on iTunes, or have a conversation over Skype.
These apps all try to address the problem, but in collectively (and sometimes individually) ineffective ways:
- They all provide for bandwidth limitation through configuration. That doesn’t help, though, when you have multiple apps trying to upload at once. And who really wants to limit upload bandwidth during the 95% of the day when it wouldn’t matter anyway, just to address the 5% of the time when it’s needed?
- Some provide for automatic bandwidth reduction when detecting that the network—on the given computer—is busy. But this doesn’t help when you have the apps running on multiple machines on the network.
- All provide for manual pausing. Only Arq provides a means of pausing through scripting (or via a command-line interface); the rest require manually clicking their menu-bar icons. Only Arq and CrashPlan allow you to specify the amount of time to pause; for the others, you have to remember to unpause them. And BitTorrent Sync’s menubar icon doesn’t even have a “paused” state (like Dropbox’s), which nearly ensures that an unfortunate event—like realizing the file you’re working on isn’t up to date—will be the thing that reminds you that it’s not running.
Although I’d love to find a single-interface, elegant solution to the problem, life right now would be much easier if:
- All such apps provided a means of scripted pausing. That way, using my iPhone while sitting on the couch, I could connect to Keyboard Maestro and run a macro that would pause every app on every machine on the network.
- All such apps provided timed pauses. That way, I wouldn’t have to remember to unpause them. And for those that don’t provide timed pauses, for goodness sake, at least provide a paused state of your menu-bar icon.
The solution to your problem is a decent acess device in your home, where you can restrict the upstream bandwidth used out of the access device. I think my Fritzbox can do that though with 5Mbit/s up it’s not a huge concern for me.
Niall, I don’t want to permanently restrict upstream bandwidth, sacrificing the 95% of the time when I don’t need it for the 5% when I do.
Hi Matt,
You don’t want to restrict your upstream bandwidth. What you want is to manage the upstream packet queue, so that ACKs aren’t being delayed (and slowing your downloads). Currently the (quite large) packet buffers in your router are being saturated, meaning a RTT can become huge. See https://en.wikipedia.org/wiki/Bufferbloat for a better explanation.
Sadly most home routers don’t have good/any QoS management tools, despite being linux-based.
If you’re comfortable with reflashing with Tomato and DD-WRT, they’ do.
Any modern gateway QoS/AQM system will do much to make your problem[1] go away, leaving you with most of your bandwidth up and down all the time, while allowing those applications to function in the background, as intended. [2]
See openwrt’s qos system, or cerowrt’s aqm system, or gargoyle’s or ipfires, or merely the scripts like wondershaper (good to study but now obsolete) to grok it. No pause button required, just better packet mixing.
[1] Bufferbloat
[2] I don’t know a lot about bittorrent sync. It seems likely that of the apps you use it will be the hardest to do aqm properly on.