In our Internet architecture class this week we presented and discussed several papers related to peer-to-peer networking. I in particular focused on the article "Opportunities and Challenges of Peer-to-Peer
Internet Video Broadcast", which discussed the current state of the art in peer-to-peer video broadcasting. The two example techniques for video broadcast that were described in this paper both attempted to incrementally optimize the broadcast overlay. In other words, peers periodically attempted to change the peers they shared data with to improve the flow of data in the system. Also, both methods appeared to go make such peer-switching decisions by having peers track the history of the performance of other peers they interact with.
At the same time, we also discussed another paper on a peer selection heuristic for improving the performance of Bittorrent downloads. This method relies on the use of CDNs. When a node joins the system, it contacts a CDN-distributed site and tracks the chain of redirects it follows to retrieved the cached content. Then, when choosing peers initially, it compares these redirects against those of other nodes to select those that appear to be in the same or the closest CDN. The use of this technique resulted in significant performance gains.
Having studied both papers, it seems very easy to ask why anyone has not tried tried applying a similar technique to improving the performance of peer-to-peer video broadcasts. That's when I started to see one of the values of collaborating together and sharing information in a class or lab setting. By sharing what we know, we can synthesize new ideas from existing ones much more easily. Most ideas seem simple in hindsight, but the process of discovering those ideas is often much more complicated, and sharing research knowledge in a lab setting appears to be an effective way to spark innovation.
Saturday, September 25, 2010
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment