Imagine you’re watching a movie via Internet-based VOD, one of those flicks you choose purely for the action scenes. Problem is, the dialogue is horrendous. What do you do? Skip ahead, of course. Such skipping can be a major technical challenge, however, especially if your VOD provider uses P2P technology to deliver its video streams. But five researchers from Spanish ISP Telefonica and UC Irvine have come up with a way to solve this problem.
The gang of five have developed a system called “Kangaroo” that promises to deal with jumpy VOD viewers by improving the architecture of the underlying P2P network. Kangaroo was field-tested during the 2008 Olympics, and its technology was presented at the 8th International Workshop on Peer-to-Peer Systems in Boston last week. While the details of this technology are admittedly a bit geeky, they help to
understand illustrate why previous P2P VOD efforts like Joost and Babelgum failed and why smaller providers like Global Media Services/GridCast and MediaMelon need big content partners to make P2P work.
Jumping back and forth within a movie can be tricky even for traditional VOD providers that don’t use P2P. Chris Albrecht’s recent Amazon HD VOD test demonstrated this well; Amazon’s service had numerous problems with its video quality after a jump, and each skip took a long time.
Try to make a similar switch in a P2P environment, and you’re gonna have a host of new issues. P2P tends to work best if many users watch the same thing more or less at the same time, or if newer viewers can access cached content from others that are already halfway into the movie — something the UCI and Telefonica researchers call a “cascade of peers.” Introduce skipping to such a system, and your neat caching cascade suddenly goes out of the window.
This is where Kangaroo hops to the rescue. The system uses a tracker server similar to the one used by BitTorrent to help peers find each other and make sure everyone gets their fair share of bits and bytes. However, Kangaroo’s tracker goes a few steps further, keeping track of not just which part of a video each user is watching at any given time, but which parts of a video they’ve already watched. Those are pretty resource-intensive tasks, which is why Kangaroo uses some hash table magic as well as a few educated guesses to avoid constant communication with those jumpy peers.
Kangaroo was tested in a lab environment with thousands of simulated peers, as well as with several hundred users, during the 2008 Olympics. The researchers were also able to use some internal data from Telefonica’s own VOD service, consisting of 65,498 VOD sessions, to get a sense of how people really use these services. Turns out that 90 percent percent of viewers do 10 or less jumps within a movie — a number the folks behind Kangaroo think it can handle.
So how about other P2P vendors? Both Joost and Babelgum ditched their P2P VOD efforts in recent months and went back to server-based video streaming. When asked whether those impatient, skipping viewers may have had something to do with the change in direction, Telefonica researcher and Kangaroo co-inventor Parminder Chhabra replied that Joost and Babelgum probably had a similar approach for skipping content as part of their proprietary P2P solutions.
However, good algorithms only get you so far. “At every jump operation, you have to quickly find new peers with whom you can share data,” Chhabra explained. “These systems work better if there are a large number of simultaneous users of the system.” We all know that Joost wasn’t exactly the popular kid when it relied on its external app, which is why users ended up getting a lot of their content from Joost’s servers, despite its P2P architecture.
In other words, there are two components necessary to making P2P VOD work: Good technology that is capable of dealing with lack of patience on the part of the viewer, and good content that will lead to more viewers — and potentially much less skipping.