A look at Content Delivery Networks, or “how to serve lots of content really fast”
Since 1999, Voxel has powered the high performance needs of a demanding client base by offering scalable delivery of high-bandwidth media, applications and content.
Panther Express is a global content delivery network provider established in 2005 by the former CEO of DoubleClick, Kevin Ryan, and the co-founder and former CTO of DoubleClick, Dwight Merriman.
EdgeCast was founded in 2006 by a group of successful technology entrepreneurs who have years of experience building network infrastructure, web hosting, and application delivery products and companies.
IndyNET is a worldwide content distribution and diverse monitoring network headquartered in Christchurch, New Zealand.
Content Delivery Networks help websites and services to deliver online content in an efficient manner. Since they act transparently behind the scenes, CDNs are often anonymous contributors to large online services.
To get a little more insight, we spoke to the CDN providers Voxel dot Net, Panther Express, EdgeCast Networks and IndyNET to get some information on how they work, their perspective on the CDN market and the challenges they face, and what the future looks like for CDNs.
Why use a CDN?
CDNs seem to be used everywhere these days, but why is that? Why don’t more companies set up their own infrastructure? Gad Stanislas, Vice President of Panther Express, explains why CDNs are so widely used.
“Increasingly, companies around the globe view digital content delivery as a utility service, much like electricity and telecom,” he says. “But few companies have the ability or the desire to create their own CDN infrastructure in order to implement an effective digital content strategy. As a result, they are outsourcing content delivery to CDN providers. For these companies, a CDN provider must offer fast, reliable delivery on terms that are highly flexible and affordable.”
This equation of cost, convenience and performance is echoed by the other CDNs as well. Anthony Citrano at EdgeCast sums it up:
“The ideal CDN provides end users with the highest possible performance and quality of content delivery, regardless of the user location or connection to the Internet, while at the same time reducing the overall cost of content delivery.”
Lots of servers, lots of locations
Much of the advantage that CDNs offer comes from serving content from multiple geographical locations, unlike traditional hosting providers who usually have just one location. Visitors to a site can therefore be routed to a relatively nearby and high-performance “cache” of content, which gives less latency and more optimal transfer rates.
While just the number of servers doesn’t tell the whole story about size or performance (where server specifications can play a huge role, as well as storage solutions and network setups), we thought it would be interesting to get a picture of what is needed to run a CDN. Below are some numbers from the companies we spoke to:
- Panther Express
800 servers in 22 different geographical locations.
- IndyNET Limited
80 servers in 11 different geographical locations.
- Voxel dot Net
2000+ servers in 14 different geographical locations.
- EdgeCast Networks
Wouldn’t disclose the number of servers but say they have 13 different geographical locations.
These locations have to have the same content replicated and synchronized between them (i.e. acting as caches of content). The system also needs to be able to quickly route users to the location closest to them.
Jasper Bryant-Greene, Director of IndyNET, explains more about how they handle their content distribution: “Static content is delivered to our network via a REST API. This content is propagated around the entire network within approximately 10 seconds. Clients are directed to the closest server via GeoDNS and IP Anycast.”
Linux and high-speed web servers
Because of the specific needs of CDNs they often use customized software. All of the CDNs we spoke to ran Linux, except EdgeCast who use a combination of Windows and Unix. IndyNET told us that Gentoo Linux is their primary choice but they also use Debian and Ubuntu.
Panther Express has their own custom-built web server software, Voxel uses a customized version of Apache, and IndyNET uses the high-performance Lighttpd web server. These networks serve huge amounts of data so it really makes sense for them to use software that is optimized for fast content delivery.
Monitoring is crucial
Monitoring is crucial for hosting companies and other online service providers, and it may be even truer for CDNs due to their strong focus on delivery performance. And it’s not all about performance, either. Availability is another important factor. If part of a CDN stops working, this needs to be noticed immediately. It is clear that monitoring is taken very seriously by CDNs.
IndyNET handle all monitoring themselves: “We utilize the fantastic open-source monitoring system Nagios both for monitoring our own network and as a platform for selling monitoring to customers,” says Jasper Bryant-Greene.
Panther Express and Voxel, on the other hand, have chosen to use a mix of internal and external monitoring tools and services.
“Our internal monitoring tools run frequent health checks that perform data pulls on test objects,” says Gad Stanislas. “In addition, pings and trace routes are run to measure latency and network health. All data centers are interconnected via a software mesh to determine real-time data center health in the area of latency, packet loss and node performance, which is fed back to our Network Operations Center.”
Since reacting to problems is just as important as detecting them, CDNs benefit from having automatic procedures in place to handle at least the most common errors. For example, Panther Express claim they can update their server mappings within 20 seconds of any issue (so if a data center goes down or has performance issues, that location can be excluded from the CDN until it works again).
The biggest challenge of running a CDN
Regarding the challenges of running a CDN, there seems to be a consensus that scaling and properly adding capacity is something that CDNs constantly have to deal with.
“Staying far ahead of customer growth curves is our largest challenge,” says Zachary Smith, President of Voxel.
According to Gad Stanislas of Panther Express, the challenge is two-fold. “The biggest challenge in running a CDN is capacity planning. The second important consideration is gathering critical metrics on system performance.”
This is not surprising when you consider that CDNs are basically selling delivery capacity. The importance of gathering metrics to keep track of this cannot be understated.
The future of CDNs
The internet as a whole is growing with more and more video delivery and other demanding services. How will CDNs adapt and shape themselves to handle the increased demands, or in short, what will CDNs look like in the future?
Jasper Bryant-Greene thinks they will look much like they do today, “but with better technologies for locality, and nodes distributed closer to the customer.”
“Larger caches will be required to serve increasingly larger files such as HD video versus standard video files,” says Gad Stanislas. “We also anticipate increasing concerns regarding security and content protection.”
Zachary Smith believes in service integration with hosting solutions. “CDN services will be an extension of a client’s hosting infrastructure. It will be up to the hosting integrator to provide a solution that ‘just works’ to scale their clients.”
We would like to extend a big thank you to Jasper Bryant-Greene of IndyNET, Anthony Citrano of EdgeCast, Gad Stanislas of Panther Express and Zachary Smith of Voxel dot Net, who took time out of their busy days to speak to us.