According to industry analysts, we’ve passed into the “post-PC era.”
Take a look around and who can doubt it? People are fixated on their handheld and tablet devices like crazed addicts.
According to a recent study by Ericsson, mobile data traffic more than doubled over the 12 months ending in July of this year. And what’s driving that traffic are apps and content.
Sure, people are talking and texting, but more and more people are watching video, and playing Angry Birds, and searching for the nearest sushi restaurant.
What will separate the winners from the losers in this new online world will be user experience?
Those who deliver the best experience will come out on top, and that depends on two things: latency and bandwidth.
We’re starting to see the latter in the mobile world as 4G networks make their way into the mainstream. (True, it’s not yet available on the iPhone. But contrary to what many people believe, just because something isn’t supported on an Apple product doesn’t mean it doesn’t exist. Rest assured, though, that when a 4G iPhone is released Apple will be credited with its invention.) I’m personally getting 8 – 10 Mbps download speeds on my 4G phone, which is as fast as my home broadband connection.
As for latency, until someone comes up with a speed-of-light accelerator we’re stuck. One-way transit time for light to circle the earth is ~ 134 milliseconds. Add to that fiber optic refraction and other inefficiencies and the round-trip latency on even the best networks can approach 300 ms.
The approximate relationship between distance and latency is shown in Figure 1 (see below).
But a Hulu user streaming the latest episode of Glee will be seriously PO’ed if the video is choppy or if the voice is out of sync.
To assess the effect of bandwidth and latency on user experience, I set up a simulated WAN environment that allows me to adjust both. See Figure 2.
It’s worth noting that this only produces a one-way stream of content. For distributed and/or chatty applications, the impact of latency is multiplied.
I used the WANem utility (http://wanem.sourceforge.net) as my emulator. For testing, I chose the sample video that comes with Windows 7, “Wildlife in HD”. Figure 3 lists its properties.
With a resolution of 1280 x 720 and a bit rate in excess of 6 Mbps, it’s beyond what you’re likely to try to watch on your iPad, at least for now. But it does help to illustrate the impact of bandwidth and latency on performance.
For testing purposes I began with a 1Gbps connection – essentially unlimited bandwidth. I then stepped up the latency from 0 to 160 ms and captured the output. I repeated these tests with bandwidths of 100Mbps, 6Mbps, and 2Mbps.
Not surprisingly, when latency increased both video and audio began to get choppy. The results were similar as I dropped the available bandwidth.
Test results are presented in Table 1 (below) along with links to the video captures.
Since the original clip is 30 seconds long, the playback time is an additional indication of how much the video was affected. (Due to some initial buffering, problems are not always apparent until a few seconds in.)
Latency effects became increasingly pronounced as the available bandwidth approached the bit rate of the video. Finally, when I dropped the available bandwidth below the video bit rate the results were terrible.
|Available Bandwidth||Round-Trip Latency (ms)||Playback Time (m:ss)||Link to Captured Video||Notes|
|1 Gbps||0||0:30||http://www.youtube.com/watch?v=NmHi7-QLlh4||Smooth video & audio|
|1 Gbps||25||0:30||http://www.youtube.com/watch?v=0ejJNu4rx4A||Still good playback|
|1 Gbps||50||0:35||http://www.youtube.com/watch?v=L_XnDYBE8tQ||Audio gets choppy|
|1 Gbps||80||0:55||http://www.youtube.com/watch?v=NFQ3MnHasMc||Both video and audio are choppy|
|1 Gbps||160||1:52||http://www.youtube.com/watch?v=Z2Om2XW3hOw||Extremely choppy; awful|
|100 Mbps||50||0:33||http://www.youtube.com/watch?v=5UrNhfLIIZc||Similar to 1Gbps results with same settings|
|100 Mbps||80||0:57||http://www.youtube.com/watch?v=f4QrAOGMftA||Similar to 1Gbps results with same settings|
|6 Mbps||0||0:30||http://www.youtube.com/watch?v=SIO2v4nuIi0||Good video & audio|
|6 Mbps||12||0:34||http://www.youtube.com/watch?v=j1mqjvtPLfk||Some audio stutter|
|6 Mbps||25||0:44||http://www.youtube.com/watch?v=PyfHRNHBnR0||Bad audio; video okay|
The bottom line is this: if you’re a cloud content provider, locating your apps and content close to your users and investing in fast networks are two of the smartest decisions you can make.