In this paper, we propose P2Cast to tackle the scalability issue faced by VoD service over the Internet. P2Cast extends the IP multicast patching scheme to the unicast-only network by exploring the idea of P2P network. We further address two key technical issues in P2Cast, namely (1) constructing the application overlay appropriate for streaming; and (2) providing continuous stream playback (without glitches) in the face of disruption from an early departing client. Our simulation experiments show that P2Cast scales much better than traditional client-server unicast service, and generally out-performs the multicast-based patching if clients can cache more than of stream's initial part. Furthermore, we handle disruptions by delaying the start of playback and applying the shifted forwarding technique to the base stream. The threshold in P2Cast serves as a knob that can adjust the balance between the scalability and the clients' viewing quality in P2Cast.
Future research can proceed along several avenues. First, we are developing the middleware implementing P2Cast. Second, as in any peer-to-peer networks, clients can behave selfishly by not contributing their resources and serving other peers. We are studying a mechanism to encourage clients to cooperate with each other, and to achieve certain fairness among peers. Third, in this paper we point out that the threshold can serve as a knob to adjust the balance between the scalability and the clients' viewing quality in P2Cast. How to actually select the threshold based on the video's popularity and network condition is worth further study. Finally, current P2Cast is designed with supporting CBR videos in mind. How to extend it to support VBR is an interesting question.