
The next generation in bandwidth control
FAQ
-
What can it do, and what does it cost?
-
The "what can it do" is probably best explained by
the main web site, but the bottom line is of course
that it can save you money. It costs $150. You
can also extend the free 30 day support with an
annual support contract for $39 if you wish to.
-
Specifically, in my situation, I recently seem to
have been hit by a bunch of one month signups that
have spent every waking hour the whole month
downloading (or maybe using automated downloaders).
-
This is exactly the problem Throttlebox is designed
to address.
-
Can this tool set a global daily limit for each user
on the site?
-
Yes.
-
Can it also used to pick on troublesome users on a
one by one basis and be used to throttle them even
further?
-
To some extent it does that automatically. If they
exceeded the daily limit yesterday, today's limit
will be lower because there isn't just a daily
limit. Instead, Throttlebox takes the hourly and
daily limits that you set and automatically
determines the correct 48 hour limit, the correct
7 day limit, etc. For example, if you set a per
hour limit of 500MB and a per day limit of 2GB,
Throttlebox will determine that the 48 hour limit
should be 3.5 GB. So if they hit the 2GB limit on
day one, they are allowed only 1.5GB on day two.
It's actually a continuous linear limit, as can be
seen in this screenshot:
http://bettercgi.com/throttlebox/images/ruleEdit.png
Additionally, a simple script could be created that
lets you manually specify certain users to be on
the "watch" list, or on the "VIP" list. We call
these different sets of rules for different sets of
users "rulesets" and you can have as many different
rulesets as you'd like. A little custom scripting
will be needed to meet your exact needs in
determining which users are in which set. Also you
should know that the current reporting tools are
designed mostly with a single rule set in mind, so
getting reports for many different rulesets may be
a bit clunky right now, but you can do it.
-
What are the server requirements?
-
Any standard Linux, FreeBSD, Unix, or other any POSIX operating system.
with the Apache web server. Throttlebox currently works with
all available versions of Apache, 1.3, 2.0, and 2.2.
We run Fedora Core on our desktops here
and on our servers we use Fedora and Red Hat Enterprise Linux.
Any reasonably modern CPU and memory that
you might use for a web site will be fine. Like
any Linux software, in extreme conditions the more
memory you have the faster everything will run.
The admin interface can be accessed from most any operating
system with web access including Linux, FreeBSD, OS X, Microsoft Windows, etc.
Like most server software, Strongbox is not designed
for a _server_ running the Windows desktop system.
-
How is CPU and memory loading for the throttling process?
-
It's too low to measure with a reasonable level of
traffic. We ran it at 12,000 hits per second, or
about 8,300,000 GB per month to load down a 2GHz
processor. To get to 8,300,000 GB you'd need to
have perhaps a million members, so as long as you
have fewer than 50,000 members you probably won't
be able to detect any CPU load. Memory usage for
Throttlebox can be calculated as follows:
Number of simultaneous users online =~ members / 100
Memory use = (simultaneous users X 2KB) + 4 MB
So for example with 10,000 users Throttlebox would
use roughly 4.2MB of memory. This depends on your
system, though. 64 bit executables are bigger than
32 bit ones, so if you have a 64 bit processor
everything on the system will take more memory.
There are other variables as well, but the bottom
line is that again unless you have hundreds of
thousands of users Throttlebox isn't going to take any
significant amount of memory. Also there will be a
bit of memory used when an event is running such as
someone running a report, but due to the way Linux
shares code memory it won't be more than a few MBs at
most.
-
Can I see how much total bandwidth a particular user
has used over a period of time?
-
Yes, you can look at the last 24 hours, broken down
by hour, the last 7 days, broken into 4 hour
segments, or the last 30 days, broken into 24 hour
segments. Along with total bandwidth you can see
video bandwidth, image bandwidth, ZIP file
bandwidth, or whatever other rules you choose to
create. See:
http://bettercgi.com/throttlebox/images/userReport.png
and
http://bettercgi.com/throttlebox/images/videoReport.png
-
Can it be used on a domain that is just serving
galleries (free access) to set a daily cutoff limit
- ie after the server has served 10GB (or
whatever), it will now refuse any further connections?
-
There is certainly the potential to set up
something like that. Throttlebox is new, so while
things like rulesets and controlling free galleries
have been included in the basic system, they haven't
been completely fleshed out just yet. The admin and
reporting tools currently are designed mostly for
regular pay sites with a single rule set, for
example. The advantage to you is that they can be
fleshed out with your particular needs and desires
in mind, so you get exactly what you want rather
than getting whatever we already designed. On the
other hand, there may be additional fees for some of
these enhancements and customizations. A simple
way of doing a free site would be to use a free log
in system where they just enter their email address
and they are sent a user name and password for free.
Each email address is only sent one user name, so
the limits can be enforced per user name just as
they would be on any pay site. Another option
would be to use the IP address instead of the user
name. Limiting downloads per IP seems like the
obvious choice, but as you know an IP and a user
are not the same thing. A single user may have
many IPs and a single proxy IP may have several
users, so such a system would need the limits set
high enough to allow for that. Of course the great
thing about that is that we already have a list of
the proxies like AOL's that need to be treated
specially, because we use that for Strongbox.
Anyway this is something I'll be putting more
thought into over the next few weeks and we'll nail
down the best way to do it, but the basic
functionallity of Throttlebox certainly allows for
that.