Case Study: Apple CDN – Part 2

Yesterday, it was revealed that Apple is delivering content on its newly rolled out CDN, which was built in record time – twelve months. Is this a major accomplishment, or is it just a CDN build-out rush job? We’ll answer that question here. Let’s start off by saying Apple doesn’t even really need a CDN to deliver content, although page load times would suffer. If Apple really wanted to, they could serve 100% of their content without using a CDN or even building one. They would just need to buy thousands of servers with SSDs, Juniper routers, Arista switches, IP Transit, then load Varnish software on the servers, and place the hardware in a few key POPs like LA, SJ, Miami, London, Amsterdam, Frankfurt, Singapore, Tokyo, and so on. Then use an Anycast DNS based service to send the user request to the closest POP, wherever it may be. The example above is one extreme.

Since Apple decided to build a CDN in twelve months, we can now classify it, as to the type of CDN it is. In Apple’s case, their CDN is going to fall into one of three categories 1) multi-hosting content delivery system, like the one mentioned above “think of Rackspace w/o Akamai option” 2) half-baked CDN like Comcast, that uses a bunch of third party software plug-ins & applications, that is required to complete the full CDN software stack, yet still lacks a majority of the features and functionality of Akamai / EdgeCast or 3) a full service CDN like Akamai and EdgeCast. Obviously, Apple CDN is more than a multi-site hosting platform serving content. That leaves two options: half-baked CDN and full service CDN.

Is Apple CDN a Full Service Global CDN like Akamai or EdgeCast

What is a full service global CDN? It’s a highly tuned CDN with all the basic caching and streaming features, plus all the standard features found at a typical CDN, including DSA, FEO, Token Auth, Advanced Reporting, Real Time Reporting, Fast Purging, Rules Engine, Origin Shield, DDoS Protection at Layer 3 & 4, Mobile Device Detection, Dashboards that push configs out to global POPs, and so on. The full service CDN is a finely tuned machine, meaning all hardware and software layers are optimized, including the OS, web server, caching software, logging system, LAN at POPs that connects servers to switches, routing, OSPF, storage, and so on. On top of that, all of the software and hardware components are working together in harmony, as a singular system, where rules and configs are pushed out, and propagated globally to all POPs that go into effect within seconds or minutes.

And finally, the thousands of servers in the global footprint must be able to transfer back raw log data on small files, large files, video, and all formats running over the CDN, back to a central location for extraction, loading, and processing, in real time, so real time analytics are available to the marketing staff, assisting them make decisions in real time from the raw log data, in order to sell more Apple products. And Splunk isn’t going to cut it, since it is a way too general logging/correlation application. CDNs are very unique, and custom built applications are needed to handle the specific workloads and workflows of a CDN. I can go on, but I’ll stop here.

Conclusion

Established CDNs have been doing this for years, investing tens of thousands of engineering hours in specific areas like caching, storage, OS tuning, network tuning, WAN tuning, and so on. And while this is happening, CDNs continue to build new features incorporating technologies that touch upon wireless last mile acceleration, big data, RAM caching, SDN, thin layer VM technology overlaying the browser, and so on. I think the point has been made that Apple is not in this category, at least not yet, maybe in 3 to 5 years.

Money is not an issue for Apple. It can throw $5B into a CDN at will, but building just an average CDN takes years, and tens of thousands of engineering hours with hard to find skill sets. Therefore, Apple’s CDN is a half-baked CDN that lacks the features and functionality of a typical CDN. Apple will to have invest hundreds of millions of dollars over the next few years, in order to deliver a portion of their content to global audiences. Will Apple deliver some content from its CDN? Absolutely, but not 100% like Netflix. And if their absolutely dead set on delivering 100% of their content over their own CDN, it’s going to take five years minimum, starting today, with a staff of 200 to 300 CDN engineers. Is Apple’s CDN going to impact Akamai? That is to be discussed in another post.