peer-to-peer multimedia applications
In both academia and industry, peer-to-peer (P2P) applications have attracted great attention. Peer-to-peer file sharing applications, such as Napster, Gnutella, Kazaa, BitTorrent, Skype and PPLive, have witnessed tremendous success among end users. And the uses of peer-to-peer network for multimedia streaming, conferencing, gaming, file backup, information retrieval is on the rise. Recent statistics suggests that P2P traffic accounts for as much as 70\% of Internet traffic. Unlike a client-server based system, peers bring with them serving capacity. Therefore, as the demand of a peer-to-peer system grows, the capacity of the network grows, too. This enables a peer-to-peer multimedia application to be cheap to build and superb in scalability.The purpose of the tutorial is to examine issues associated with the successful building and deployment of a P2P multimedia application. The technologies discussed can be applied to P2P file sharing, P2P conference, P2P media streaming, P2P VoIP, and P2P storage applications. We start by examining two popular P2P applications, BitTorrent and Skype. The study of the two P2P applications helps us to understand the design principles of P2P applications in general. We then investigate a number of tools for building P2P multimedia applications, such as the overlay network, the scheduling algorithm, the erasure resilient coding, and NAT/firewall traversal. Finally, we move on to critical deployment decisions that make or break the P2P applications, such as P2P economy, security issues in P2P application, peer selection, monitoring and debugging utilities in P2P application.
peer-to-peer overlay scheduling erasure resilient coding nat/firewall traversal p2p economy peer selection distributed debugging attack