A push-pull network coding protocol for live peer-to-peer streaming
In this paper, we propose a new peer-to-peer (P2P) video streaming protocol which presents an implementation of network coding with a new caching mechanism. It employs a push-pull mechanism for sending the video chunks between peers. More specifically, this push-pull mechanism gives priority to the video chunks according to their video layers. The video base layer is transmitted through a pushing mechanism while the enhancement layers employ a pulling mechanism. Moreover, in the network coding algorithm of this protocol, we introduce a caching mechanism to improve the networks performance as well as the video streaming quality. The comprehensive simulations show that the proposed protocol outperforms the traditional random network coding protocol by demonstrating a high improvement in video quality, redundancy of bandwidth usage, and reduction of the average frames loss in various video layers.