Last week, when Cotendo announced their new mobile acceleration platform, I got more than a few emails from readers asking what exactly makes up a mobile acceleration service. Many have heard of application acceleration before, a service Akamai has dominated the market with, but mobile acceleration is still pretty new. In that light, I spent some with Cotendo talking about their service and here is a quick summary of how they think their technology can improve mobile content delivery in an era of increasingly dynamic and personalized content needs.
As anyone who has used a smart phone to visit a website knows, it takes much longer for that webpage to load as compared to a home broadband connection. In fact, load times for websites via a mobile device are typically four to ten times longer than loads over a cable or DSL connection at home. While there are some technology improvements on the horizon with wider deployment of LTE looming, no one expects mobile operators to be able to deliver sufficient bandwidth to alleviate these slowdowns any time soon. If anything, the opposite is happening with wireless carriers favoring data caps and restricting users. For carriers, putting up more towers is an arduous process and dropping more backhaul to the towers doesn't solve the spectrum bottleneck caused by the limited number of towers.
Beyond a few purpose specific tasks, such as optimizing video streams to mobile devices, most CDNs have struggled to deal with mobile content because it is, by definition, more personal, more dynamic, and harder to cache. An individual's social network information is unique to that user. Ads related to hyper-local location are tightly tied to a user. The same goes for your bank account and location based weather services and a long list of others. That has meant CDNs couldn't solve the last mile problem, either. While bandwidth is an issue, it is not the main issue. The latency and varying round-trip time (RTT) is the main challenge for mobile delivery today.
The most common concern raised around mobile data networks is the capacity and bandwidth, but actually one of the main reasons for delays and slowness on mobile networks is rarely discussed and this is the latency, or the mobile last mile round-trip time (RTT). While the typical time it takes a packet to go back and forth between an end-user to the carrier’s gateway on broadband is typically 10-15 milliseconds, for 3G networks, the round-trip-time from a mobile device to the carrier gateway (GGSN) is typically in the range of 80-200 ms. Moreover, while the broadband networks provide a reliable consistent RTTs, on a typical 3G network the RTT may vary during a specific request dramatically. The RTT value has significant impact on TCP efficiency and accumulates over a page, as typically a page consists of many different objects (each retrieved in a different request adding additional RTT to add to the page load time).
For their part, content providers still struggle to deal with mobile because they could not reliably predict the network conditions of the last mile. A square block in New York City could see huge variances in traffic conditions over the course of a single day. To deal with this problem, most mobile operators have decided to put in place caps, which is a solution that angers many customers. Those same mobile operators would love to figure out a way to decrease latency while increasing the amount of data that a customer can view on their mobile device and this is where some of the new mobile acceleration services in the market fit in.
Indeed, mobile is the fastest growing segment of the Internet and will likely continue to grow in importance. So CDN providers that want to keep content customers happy will need to address this segment aggressively. This is why the folks at Cotendo believe that content owners can leverage CDN and other technologies to improve last mile speeds for mobile devices by optimizing other parts of the transit process rather than expanding the last mile pipe. Cotendo breaks this effort down into three realms to address: the network layer, the content layer, and the business logic layer.
Network Layer: A critical part of the bottleneck is the HTTP protocol. It's more than a decade old and was never designed for mobile network topographies of limited bandwidth, variable round-trip times, and diverse display and processing capabilities of mobile devices. Problems with the HTTP protocol are numerous. A single request per connection is allowed, the equivalent of a phone conversation where only one party can be heard at a time. A first-in-first-out queue structure makes it impossible to use business logic within a single connection. Browsers work around the problem by using multiple connections, which means more origin server calls and greater latency for mobile page loads. The HTTP protocol does not allow many types of compression that would help speed mobile traffic. Further, the HTTP protocol insists on redundancies that result in the same request being sent repeatedly across a connection. This includes headers such as user-agent, host and accept that are generally static and should be cached.
Cotendo is working with Google to build a newer protocol dubbed SPDY into its CDN. SPDY solves all of the above problems and Google estimates it could decrease latency by 50%, which would have a big positive impact for consumers. Currently SPDY is supported only on Chrome, but likely it will be supported on Android on its next release, so Cotendo is positioning itself and its customers to benefit from this eventual and inevitable move away from HTTP. Because SPDY works over TCP (the default transport protocol for the Internet) disruption to the infrastructure will be quite minimal.
Cotendo is deploying a few other approaches at the network level to speed content, as well. Dynamic site acceleration (DSA), which I explained in an earlier blog post, involves a combination of improved TCP algorithms and route optimization along with more advanced DNS mapping to speed up transport of packets at the network layer. And Cotendo is rolling out a joint product with Citrix Netscaler that will offer direct integration between WAN optimization hardware devices on the origin side of the network with CDN POPs. The result should be significantly faster speeds from the origin over the first mile to the middle mile, and then faster transit through the CDN to POPs that connect to the last mile and mobile gateways near the end user.
Content Layer: Cotendo is using a number of tools to squeeze content into a smaller footprint without requiring alterations on the origin server. Adaptive image compression generates and caches various image sizes close to the network edge once a user session has started and serves up the image most appropriate for the end device and network conditions. By recompressing an image Cotendo can shrink its size to be 25% smaller or more of the original size. This is important because images attribute an average of 60% of overall page size on mobile sites, according to mobile.httparchive.org. Cotendo takes this real-time decisions with regards to device type and network condition to other decision on content serving, making smarter decisions on caching and delivery to accommodate the specific conditions of each request.
Business Logic Layer: This has traditionally been the hardest one to address for CDNs trying to improve mobile content page load times. That's because its the most personal, individual and dynamic and the most resistant to caching. Serving the right social network content, mobile commerce, mobile ads and coupons and location specific data all require some degree of logic. To address the logic side, Cotendo has built Cloudlet, an application platform that pushes logic that previously resided in the origin server far out to the edge of the network close to the end user.
For example, AccuWeather and AT&T use Cloudlet (video case study) to serve geographically specific weather data to end users and cache key parts of the data in the edge of the network. Once the initial data call has occurred, Cloudlet enables AccuWeather to locate significant chunks of content in the edge of the network based on the premise that, barring a major location change in a short period of time. So Cloudlet will pull in pages appropriate for the end device, connection speed, and adjacent page content that business logic dictates might be clicked on by the end user. In a similar fashion, Cloudlet would let a mobile ad network push to the edge ads that are close to an end user's location and then serve them the correct ads subsequently without requiring additional content calls back to the origin server.
Many of the CDNs in the market today have a mobile solution, but most of them are talking about the delivery of video or ad insertion and are not yet addressing the acceleration part of mobile content. In January, Akamai announced a "strategic alliance" with Ericsson to bring to market mobile cloud acceleration solutions and showed off a prototype at Mobile World Congress the same week. No further details have yet been anncouned about when the product will launch or exactly what it looks like, but it does appear that Cotendo and Akamai/Ericsson are taking different approaches with Cotendo targeting content owners and Akamai/Ericsson jointly targeting last mile providers.
These are just a few of the ways that Cotendo is looking at speeding up mobile content and the whole market for these services is just starting out. I'll be diving deeper into each of these areas in subsequent posts and welcome your comments or suggestions on what questions to ask and what technology topics to cover in this rich area of innovation.