A peer-to-peer novel video streaming scheme is described in which each
peer stores and streams videos to the requesting client peers. Each video
is encoded into multiple descriptions and each description is placed on a
different node. If a serving peer disconnects in the middle of a
streaming session, the system searches for a replacement peer that stores
the same video description and has sufficient uplink bandwidth. Employing
multiple description coding in a peer-to-peer based network improves the
robustness of the distributed streaming content in the event a serving
peer is lost. Video quality can be maintained in the presence of server
peers being lost. The video codec design and network policies have a
significant effect on the streamed video quality. The system performance
generally improves as the number of descriptions M for the video
increases, which implies that a higher video quality can be obtained with
the same network loading.