Bandwidth cost inside the datacenter

Started by
1 comment, last by SeanMiddleditch 8 years ago

Is there generally any type of cost for bandwidth used inside the datacenter for server<->server data transfers?

Advertisement
For the general case, one must certainly say: "it depends, read the contract". However, for every datacenter that I've seen, datacenter-internal traffic (and most of the time inter-datacenter traffic as well, if they have several locations) is free.
If you go with co-location, and put your own hardware in, then you have your own switches/routers at the top of each rack, and your own Ethernet cables (that you have to neatly arrange yourself.)
At that point, no, the only cost is usually space and power/cooling, plus whatever access/transit you have to pay to get out of the place.

If you use a cloud/VPS provider, the policy varies by provider. Amazon will typically charge you for transit between availability zones, but not charge for traffic withing availability zones. They may have multiple AZs in the same approximate physical location, though, so make sure you consider this when choosing instance location.
Cheaper providers will just measure by host/instance, and apply a cap, and charge you if you go over. Some also provide two interfaces, one local (10.x or whatever) and one routed, and charge the routed interface traffic.
enum Bool { True, False, FileNotFound };
Cost is weird in this case.

First, recall that for a non-trivial game, you may well have multiple data centers for different regions or locales. Even if you go with a single company (e.g. Amazon) you may incur inter-datacenter costs.

Second, even if the costs are free, there's still a limit to how much data you can shove over wires. You can bottleneck yourselves on that connection. Maybe no in bandwidth but certainly in latency and other overhead. For our work, given the input from a another big MMO at the company, we're putting some effort into ensuring that as much traffic as possible is localized to a single machine.

Third, you can build out more complex layouts that complicate matters further. For instance, you might have multiple VMs hosted on a single physical server, which are faster/cheaper to communicate between. Or you might just have a physical layout where some clusters of machines have a high-speed low-latency interconnect, but there's a slower connection between clusters, all within a single DC.

So far as your basic question goes, though, no, there's no _usually_ a cost between machines in a DC, unless you're paying for an upgrade.

Sean Middleditch – Game Systems Engineer – Join my team!

This topic is closed to new replies.

Advertisement