4 ms·
95th percentile billing is not like the per-byte billing that ISPs and other parties try to enforce. 95th percentile billing uses your instantaneous bandwidth u
by skuhn 12y ago
95th percentile billing is not like the per-byte billing that ISPs and other parties try to enforce. 95th percentile billing uses your instantaneous bandwidth utilization, which directly correlates to how you have to size network equipment, and therefore to how much it costs to operate the service.
Per-byte billing does not directly map to how much it costs your provider to transfer your data. I can utilize a link to send 1kbit/s for a month, which is 2.47Tbit of data transferred. That sounds like a lot, but what burden does 1kbit/s place on your provider? Virtually nil. And yet carriers with data caps will charge massive overage fees or heavily throttle usage because of usage like this.
AWS bills per-byte for outbound data, so I'll use that for a concrete example. Lets say that I have a small service that uses 1gbit/s for 30 days.
Commodity transit:
billed at 95th percentile
$2.00 / mbit
$1000 circuit commit
= $2000 / mo
AWS:
billed per-byte
$0.05 / GByte (using their cheapest tier for simplicity)
= $16,200 / mo
There is no major difference here between what it costs the provider to transfer my packets. If anything, Amazon can get better deals on transit than a small startup can. Yet I would pay Amazon nearly ten times as much, simply because their billing metric does not bear any relation to their cost to serve. This is rent-seeking behavior and it should not be allowed to become the default way that ISPs and other service providers bill customers.
- daveloyall 12y agoYou comment is informative but it contains a magnitude error. It should be 2.47gbit, not 2.47tbit. https://www.google.com/search?q=1+kibibit+per+second+*+30+days+in+gibibits https://www.google.com/search?q=1+kibibit+per+second+*+30+da...
- skuhn 12y agoYou're right. 1kbit/s over a month would result in 2.47gbit of data transferred, which is a bit less damning. To get to 2.47tbit, you would of course need 1mbit/s transferred (which is still not that much!). However flawed my example, I think my point remains valid: data usage measured over arbitrary time periods makes no sense when the underlying infrastructure is built with blocks that only care about instantaneous transfer rates.
- daveloyall 12y agoI agree.