How do I port my application to OS X?

Throttle Application bandwidth by Process, not by port or host

  • I'm using Bitcasa to back up things, but it doesn't have builtin bandwidth upload throttling. So consequently it sucks up all the bandwidth and the entire houses network comes to a stop. This also happens to make browsing the web impossible. This would be easy to do if Bitcasa used a nonstandard port, but it uses 433 to upload to Amazon's EC. I have other applications that also need full bandwidth to EC (intermittently), so throttling those domains won't work either. What I really need is an application specific throttling App . Help? (OS X ML).

  • Answer:

    I've not used it myself, but I think that http://intrarts.com/throttledcli.html might do what you want. It's geared towards optimizing online games but should do what you want as well, at least on casual inspection. There's both a GUI and CLI version (you probably want the former) and it's open source.

Brent Parker at Ask.Metafilter.Com Visit the source

Was this solution helpful to you?

Other answers

Throttled is just a front end for ipfw. ipfw allows shaping based on port and host, not by application. =/ In case anyone is looking for ipfw/PF frontends, there are a few others to look at as well http://www.hanynet.com/icefloor/ for PF and http://www.hanynet.com/waterroof/ for ipfw. But both of these, again, don't allow shaping based on application - which is the criteria I'm trying to meet.

Brent Parker

You can also throttle based on soure IP, can't you? Can You add a second IP on a virtual interface and force Bitcassa to bind to that iP somehow? Alternatively, do you have to solve this on your computer, rather than the router? OpenWRT Attitude Adjustment does a pretty good job with upstream QoS with no configuration beyond checking and then setting your actual upstream bandwidth. Since I started using it I've stopped throttling long uploads, like my offsite backup, because it doesn't get in the way any more. I can fill the upstream pipe and yet pings still maintain the same latency as an unloaded connection

Good Brain

Actually, perhaps simpler than setting up a secondary IP, use lsof to figure out what port bitcassa is using for the source-port when talking to amazon, then match on that source-port.

Good Brain

Can you edit QoS settings in your router? If so, limit connections to EC to a specific percentage of your bandwidth (say 5 to 75%, for example). This should still give it the option of grabbing a lot of outgoing bandwidth without allowing it to use everything.

caution live frogs

Good Brain - Which router are you using? I'd like to take the Attitude Adjustment route (it would probably solve other problems), but I'm not sure which I should get (and could also sit behind a UVerse modem).

Brent Parker

I'm running OpenWRT on two Netgear routers, a WNDR3700 & WNDR3800, which are basically the same hardware. It works very well. Unfortunately, I think the 3800 is discontinued and the 3700 has had a major hardware revision so it effectively a different router from what I have. I'd suggest checking out the list of http://wiki.openwrt.org/toh/start. I think there are some TP-Link routers that people find to be a good deal. Pay close attention to hardware versions though.

Good Brain

Related Q & A:

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.