A Network Coding Equivalent Content Distribution Scheme for Efficient Peer-to-Peer Interactive VoD Streaming #Ch.Sivaramakrishna 1, Assistent Professor Computer Science and Engineering Department #V.Redya Jadav 2, Associate Professor, Computer Science and Engineering Department #A.Mallikharjun 3 M.Tech, Computer Science and Engineering Department # Bomma Institute of Technology and Science, Khammam, A.P State, INDIA architecture to support efficient streaming and fast neighbor discovery at the same time. Abstract- Multipoint video conferencing is an InstantLeap separates the neighbors at each peer interpersonal application with real time visual into a streaming neighbor list and a shortcut communication for virtual meetings which can neighbor list, for streaming and neighbor give users a new level of interactivity. Many types discovery respectively, which are maintained of networks such as mesh based structure which loosely but effectively based on random neighbor provides an information redundancy and more list exchanges. Our analysis shows that complicated data delivery scheme due to its InstantLeap achieves an O(1) neighbor discovery complex structure. In order to overcome this efficiency upon any playback leap across the problem, Multi tree structure in a peer-to-peer media stream in streaming overlays of any size, network is proposed to achieve full quality video and low messaging costs for overlay maintenance for all the participants and to overcome the issue upon peer join, departure, and VCR operations. comes from heterogeneity of peers. Layered video We also verify our design with large-scale has been a popular technique to enable access simulation studies of dynamic P2P VoD systems for video is used to solve the denying requests based on real-world settings. and allow each peer to view all the other peers at any time. Index Terms: - P2P streaming, video-on-demand, fast In large-scale peer-to-peer (P2P) Video-on- neighbor discovery, indexing overlay, Multipoint Demand (VoD) streaming applications, a video conferencing, Layered video, Multi-tree fundamental challenge is to quickly locate new structure, peer-to-peer (P2P). supplying peers whenever a VCR command is issued, in order to achieve smooth viewing 1 INTRODUCTION experiences. For many existing commercial systems which use tracker servers for neighbor Video conferencing is a rapidly growing discovery, the increasing scale of P2P VoD reliable technology for connecting the people systems has overloaded the dedicated servers to to communicate visually across the globe. the point where they cannot accurately identify Face-to-face interactions are achieved the suppliers with the desired content and irrespective of any geographical locations. It bandwidth. To avoid overloading the servers and is widely used for multi-national companies achieve instant neighbor discovery over the selforganizing P2P overlay, we design a novel with various branches across the world, method of organizing peers watching a video. education, commerce etc. Video The method features a light-weight indexing conferencing is also a cost- effective solution by reducing the travel cost and time spent.
The basic of video conferencing requires the environment, equipment and the network that links the sites together. The major feature of this multipoint video conferencing is to render the high quality video images at any capture resolution. The core concept used in video conferencing is digital compression in real time. The major problem in video conferencing is quality degradation and bandwidth fluctuation among the participants. In pointto-point video conferencing, the quality degradation occurs mildly that does not affect majorly due to sufficient bandwidth, whereas in multipoint video conferencing this becomes a major problem. By using existing techniques and various types of networks, still there is minimum number of base quality receivers (half quality). Many types of structured and unstructured networks were used in existing like mesh based structure, tree structure and broadcasting. Each type of networks is having certain advantages and disadvantages. Tree based structure provides single point of failure if any one node does not perform its task. Whereas mesh based structure is having better resilience but the drawback is its complex structure. Likewise every structure is having some pros and cons. Peer-to-peer network is a reliable network model for multipoint video conferencing which provides better efficiency and fault tolerance. The major advantage of using this peer-topeer network is direct sharing of content among all the peers and for its scalability. In this network, each peer plays the role of content providers and content consumers at the same time. That is, the peer can initiate requests to other peers and at the same time responds to incoming requests from other peers in the network. Video is composed of multiple frames in a sequence manner. Each frame is one image. Video is a temporal combination of frames that are sent one after the other. Prior to the transmission, compression technique needs to be applied to reduce the bandwidth requirements. Video compressions are mainly used for removing the redundant frames. Video compression takes place by spatially compressing each frame and temporally compressing set of frames. Various video coding techniques are used. The advances in video coding [1] explains the scalable video coding(svc) consists of H.264/SVC, wavelet-based SVC, multiple description coding and high efficiency video coding. Peer-to-peer (P2P) Video-on-Demand (VoD) streaming has been successfully deployed over the Internet [1] [3], providing an abundance of online videos to hundreds of thousands of users. Unlike the traditional client-server approach which tends to incur enormous server costs [4], P2P VoD applications allow peers watching the same video to exchange available media blocks among themselves, and can therefore dramatically alleviate the server load [5] [7]. Most state-of-the-art P2P VoD streaming applications adopt mesh-pull based P2P protocols. Each application typically consists of multiple mesh overlays, each of which connects the peers watching the same video. The peers in an overlay request available video blocks in their local buffers from each other, based on the exchanged buffer availability bitmaps (i.e., buffer maps). The buffer at each peer represents a sliding window of the video stream, containing the block it is currently playing (referred to as its playback position hereinafter) and a number of blocks the peer has just watched or is about to watch in the near future. When compared to P2P live streaming which has more mature applications in deployment, P2P VoD streaming presents a fundamental technical challenge to the designers: Given a certain video, the users (peers) could be
watching different parts of the video, and may issue VCR commands (e.g., pause, random seek) at will to leap to new playback positions (referred to as the target playback positions), which leads to a polarization of the buffered and needed contents among the peers and consequently the necessity to frequently search for new supplying peers. In order to provide the user with a smooth playback experience, the rebuffering delay from the time when a VCR command is issued to the time when playback resumes needs to be minimized, to a level comparable to that of VCR operations with a videocassette recorder, or to the channel switching delay when watching TV. In existing P2P VoD systems, this rebuffering delay can be as long as 18 seconds on average [8], which certainly needs improving in the future. The re-buffering delay in P2P VoD streaming is typically composed of the time to search for new supplying peers and the time for downloading and buffering new blocks from them. While existing research work by others have investigated reducing the block downloading delay using such methods as optimized block scheduling algorithms [9], this paper aims at minimizing the neighbor discovery delay which in most situations is the dominant component in the re-buffering delay. In particular, we propose the design of a novel overlay architecture, with which given any target playback position, a set of new supplying peers can be found as fast as possible; these supplying peers (1) have the available blocks around the target playback position and (2) can aggregately provide the leaping peer (i.e., the peer that is switching to a new playback position) with sufficient upload bandwidth to match the required streaming rate. 2. RELATED WORK Since Akkus IE et al. [1] proposed a P2P multipoint video conferencing. They developed a fully distributed algorithm and multi-objective optimization framework for minimizing the number of half quality receivers, minimizing the denying issues experienced in a chain and granting additional requests at maximum level. Civanlar et al. [2] proposed a P2P multipoint video conferencing proto-type for a point-topoint video conferencing and it had extended to multipoint. They used an algorithm for two-stage heuristic to solve the asymmetric multipoint video conferencing problem. C. Hsu et al. [3] proposed a polynomial time approximation algorithm of weighted segment scheduling and demonstrated that outperforms other algorithms in terms of perceived video quality and in load balancing. C. Xu et al. [4] proposed a balanced binary tree overlay network for exact queries and range queries. They derived algorithms for node joining and finding replacement. D. Tran et al. [5] proposed a P2P technique called ZIGZAG and it allows the single source to distribute content to many clients with appropriate root at the server. End-toend delay is also minimized. They used a star topology for forwarding the content. H.Hu et al. [6] proposed a layered P2P streaming layered protocol with mesh-based structure in order to maximize the efficiency. J. Liu et al. [7] derived algorithms to solve the layering and bandwidth problem using two-step decomposition consists of intra session and intersession optimization. It is used to improve the total system utility. Intra session allocation is to detect the number of layers in a particular session for appropriate layering design and intersession is to allocate the bandwidth among the sessions. J. Liu et al. [8] described the basic taxonomy of P2P
broadcast. They closely examined tree based and data driven overlay construction. Y. Liu et al [9] proposed a PRIME approach of mesh based P2P streaming for live content. They minimized the bandwidth bottleneck and content bottleneck by using packet scheduling. Naeem R et al. [10] explained the video streaming for both on demand and live streaming over P2P networks. Advanced video coding techniques are also explained and the basic of P2P network with unique functionalities are discussed. Scalable video coding is defined with proper temporal, spatial and quality resolutions. Ponec M et al [11] developed the layer trees construction algorithm and other distributed algorithms such as primal and primal-dual to maximize the overall utility. V. Venkataraman et al. [12] proposed an unstructured end system multicast protocol called Chunkyspread to incorporate different constraints and optimizations. Y. Liu et al. [13] described a survey about P2P video live streaming and P2P Video-on-Demand streaming technology with various types of networks. Y. W. Sung et al. [14] proposed the multi-tree framework for good utilization, equitable distribution, differential distribution and to attain stability. Riding on the prevailing success of P2P file sharing and live streaming applications, a number of studies have been proposed to take the advantage of the P2P paradigm to provide VoD service. Most existing P2P VoD streaming protocols fall into two main categories: one of them is tree-push based protocols which organize peers into multiple 3 multicast trees, and distribute the media streams by pushing data from the tree root downward [15] [18]. However, such treepush based protocols suffer from their low resilience to volatile peer dynamics. The other category includes the mesh-pull based protocols, such as BitOS [19], BASS [20], Toast [5], and Redcarpet [21], which are based on block swarming [22] over mesh overlay topologies. PPLive [1], UUSee [2], and PPStream [3] are early successful deployments of such mesh-pull based P2P VoD service. In contrast to P2P live streaming, many problems related to peer asynchrony and VCR operations in P2P VoD streaming are more challenging [10], [13], [14], [23], [24]. One of the fundamental challenges is to minimize the re-buffering delay after a VCR command is issued. Some studies propose to use prefetching to minimize the re-buffering delay [10], [23], which may require placing anchors throughout the media stream. VOVO [24] explores the association rules between two segments the one a user is playing and another one the user might jump to and prefetches the potential destination segments. In general, prefetching takes up extra bandwidth which may otherwise be used to improve streaming quality, which may not be accurate due to the difficulty in predicting a future segment to watch. Other efforts on minimizing the re-buffering delay focus on the improvement of the block selection and source selection algorithms [9]. To alleviate the load on tracker servers, DHT (Distributed Hash Table) has been adopted in a number of recent P2P VoD proposals [10] [12] to map block locations to peers. In general, each DHT lookup takes log(n) steps, where N is the number of peers in the system, and DHT updates are required whenever the cached blocks are changed at the peers as their playback progresses. A few recent proposals suggest different overlay structures to implement neighbor lookup without the complexity and cost of constructing a DHT. Wang et al. [13] utilize a dynamic skip list (DSL) to construct a P2P VoD overlay,
where all the peers are connected sequentially according to their playback progress at the base layer of the skip list, and each peer may also randomly connect to a few non-adjacent peers in the higher layers. A log(n) complexity is shown for each lookup over the skip list. Chi et al. [26] suggest the use of an AVL tree for peer indexing, which can achieve a search efficiency sub linear to the number of peers. Cheng et al. [14] propose a ring-assisted overlay management scheme, where each peer maintains a set of concentric rings with power-law radius and places neighbors on the rings based on how similar their cached contents are. This overlay structure promises to achieve an O(log(T/w)) lookup complexity (T and w are the video size and the buffer size, respectively), but a rigorous proof is missing. 3. PROPOSED WORK A. System Architecture Each participant in our multipoint video conferencing is termed as peer. In our Peerto-peer network, each peer will send and receive the video at the same time. Each peer in the video conferencing group can be able to identify the other active peers involved in the network. The list of members who are all active is available for all the participants and also will receive a bye message from those participants who are all leaving the video conferencing. The sender peer captures the video tracks from the capture device directly at any resolution. The root sender peer act as a Parent. The parent peer sends the video to multiple receivers directly. Then the process goes on level by level. The video is transmitted from sender to receiver by using the layered video and the proposed multi-tree structure. For video transmission, the video content needs to be encoded while capturing the streaming content from the camera. Encoding process is to convert the raw video content into a suitable format for both efficient transmission and also for storing that particular video. Then transmission takes place from the sender to multiple receivers through multi-tree structure. At the receiver side, the receiving video is decoded and displayed. Decoding process reverses the conversion of encoding. The video is stored simultaneously while it is displaying in the receiver peer. So that further video transmissions can take place. The overall architecture of the video transmission process in multipoint video conferencing is as shown in figure (1). Layered video is used for partitioning the streaming video into base layer and enhancement layers. Enhancement layers are depending on the base layers. A video cannot be able to decode without receiving the base layer. Every participant can view any other participants at any time by using the layered video. Multi-tree structure is implemented for video transmission process. This structure is having dynamic nature which makes every node possible to join and leave the multipoint video conferencing at any time that does not affect the transmission process. A peer can have any number of child peers according to that peer s available bandwidth and other resources to provide a better quality. B. Layered Video Video conferencing requires the layered video for encoding and decoding process that must be done in real time. Since the latency should be low, layered video is applied by using a H.263 coding technique. The ultimate goal of video source coding H.263 video codec is to reduce bit-stream for video
storage and transmission purpose. The H.263 video CODEC- COder and DECoder is used for encoding the video for compression before transmission and decoding the video for decompression before displaying the video. The video is compressed in JPEG format and all the peers are able to receive the streaming content with full quality. This technique achieves the essential compression gain, compared with existing video codec techniques. Fig. 1. Video Transmission Architecture Layered video encodes a video stream into a single base layer and more number of enhancement layers. Base layer is the most significant layer which contains the essential features of a video. Enhancement layer consists of multiple layers with enhanced features. The base layer provides the half quality and enhancement layers are used to increase the quality of a video that provides more robustness. Half quality video is considered as receiving only the base layer which is a lower layer. Full quality is achieved by receiving both base layer and enhancement layers which are higher layers as in figure (2). Fig. 2: Layered video architecture (Base layer = Half quality, Base layer + Enhancement layers = Full quality) The sender peer transmits a single video streaming content to multiple receivers whose quality is adjusted and they can subscribe to any number of layers based on its available bandwidth. The source video content needs to be transmitted is analyzed and then partitioned into layers while encoding. In the decoder side, first the base layer is received and then the enhancement layers are decoded. Thus quality and resolution of a video is improved efficiently by adding more number of layers. Adding more number of enhancement layers further refines the reconstructed video streaming quality. The base layer with most important features has a higher priority and the rest of the layers are having lower priority. High priority video frames are decoded primarily and then low priority frames are decoded optionally according to the resources available by the peers. In order to this, it exhibits better temporal resolution and better bandwidth utilization properties. High compression ratio is achieved by inter-frame and intra-frame compressions. Temporal redundancy and spatial redundancy are used as a compression advantage against the data loss. All the layers in the layered video are decoded to the multiple receiver peers through multi tree
structure. All the participants can view any other participants at any time with any configuration. C. Multi-Tree Structure To achieve better quality for all the peers in the video conferencing and also to avoid the latency, multi tree structure is proposed. The peers in the network are organized into a multi-tree structure with a relationship as parent-child. The root parent peer initiates the video transmission to the multiple child peers as far as possible. Further those multiple child peers act as multiple parents to forth coming child peers and so on. This structure increases level by level but the video receiving and sending that video to many receivers takes place simultaneously. Failure recovery is possible if the peer cannot be able to receive the video from the corresponding sender, then some other peer will perform that task. The receiver peer starts receiving the video streaming as soon as possible after joining into the network otherwise it migrates to a any other parent peer. In this structure, any peer can be able to join and leave the network at any time due to its dynamic nature. For example, Let us consider a root parent peer (i.e. peer 0) having four child peers (i.e. peer 1, peer 2, peer 3 and peer 4) as in figure (2). The video transmission starts directly from the parent peer by capturing the video tracks from the capture device and it is received by the four child peers. Then these four child peers becomes a parent by transmitting the streaming video content to the child peers in the next level simultaneously as soon as they receiving the video (i.e. peer 1 sends the video streaming to peer 5, peer 6, peer 7 and peer 8. Like this from peer 2 to peer 9, peer 10, peer 11 and peer 12. Then peer 3 to peer 13, peer 14, peer 15 and peer 16. Finally from peer 4 to peer 17, peer 18, peer 19 and peer 20). The multi-tree structure can be constructed according to the available bandwidth with any number of child peers and the streaming can be performed efficiently. The dynamic nature of this structure makes the video conferencing in a reliable manner with better fault tolerance and the number of child peers may also vary. This structure works best when compared to other types due to its better contribution among all the peers in the network and no heterogeneity problems. It helps in providing better quality and efficient routing of video content among the participants. Fig. 3: Multi-Tree Structure for twenty participants in a peer-to-peer network 4. ARCHITECTURE Unlike live streaming where a peer s playback position can only move continuously forward, VoD streaming allows the users to freely change their playback
position to any random point in the video stream. Such random playback leaps necessitates quick discovery of new supplying peers which are able to provide video blocks at the target playback position and have the upload bandwidth to actually serve these blocks. To achieve the fastest possible neighbor discovery, Instant Leap presents a simple but efficient P2P overlay architecture, corresponding to the streaming of one video to N peers. A. Peer grouping with playback locality We partition the video stream into m consecutive segments along the time axis. Each segment consists of multiple media blocks. A peer is marked as a member of group i if its current playback position falls into the ith segment. Peers in the same group (e.g., group i), and those in the two adjacent groups (e.g., groups i 1, i + 1), may have overlapping buffer contents and are thus potential supplying peers for one another. Each peer in group i maintains two neighbor lists: the first list (referred to as the streaming neighbor list) contains a subset of peers within the same group i as well as those in the two adjacent groups i 1 and i + 1; the second list (referred to as the shortcut neighbor list) includes peers that are not in group i nor the two groups adjacent to group i, the connections to which serve as shortcuts to reach other parts of the video stream upon playback leaps. A conceptual model of the overlay design is illustrated in Fig. 1 (A). The discovery of peers to be maintained in the neighbor lists is based on a random exchange protocol, to be discussed in Sec. 5. Fig 4(A) Fig 4(B) Fig. 4. P2P VoD overlay architecture in Instant Leap The two neighbor lists at a peer facilitate efficient streaming from neighbors in the same group or adjacent groups, and meanwhile enable fast discovery of new supplying peers in other destination groups whenever a playback leap occurs, by following connections to the shortcut neighbors. By maintaining neighbors in a random subset of all groups at each peer, we decouple the complexity of inter-group
neighbor discovery from the total number of peers in the overlay, N; the complexity is reduced to at most a simple function of the number of segments in the video, m. What is more, in the following, we show that the complexity of neighbor discovery can be independent of m as well. reasonable number of shortcut neighbors (i.e., O(m)), an O(1) complexity for discovering supplying peers in any new playback position with sufficient upload bandwidth can be achieved with high probability. B. Inter-group connectivity We can represent each group of peers in Fig. 3 (A) by one graph node and merge all the connections across groups into one; the condensed overlay graph is shown in Fig. 3 (B). In practical large-scale P2P VoD applications, a streaming overlay of a video can be populated by thousands of peers or more, with a large number of peers in each group. The node degrees in the condensed overlay graph in Fig. 1 (B) can be much larger than the number of intergroup connections at a single peer. Therefore, given a reasonable number of neighbors at each peer, the condensed overlay graph can turn out to be a dense graph, or even a complete graph. Hence the number of hops between any two nodes in the condensed graph would tend to be small, i.e., O(1) with high probability. For a peer currently at segment i who initiates a playback leap to a nonadjacent segment j, the complexity of finding a neighbor in the destination group j is proportional to the number of hops between the nodes concerned in the condensed graph, i.e., O(1) with high probability. After a neighbor in the destination group is located, the leaping peer can acquire more streaming neighbors that can aggregately provide sufficient bandwidth for its media streaming, by exchanging neighbor lists with the established neighbor in the group. We present the detailed protocols for realizing the architecture in the Sec. 5 and extensive analysis of the protocols in Sec. V, which shows that when each peer has a 5. RESULTS AND DISCUSSIONS The multipoint video conferencing is deployed using layered video and multi-tree structure in a peer to peer network. All the peers act both as sender peer and receiver peer. Each peer sends and receives the video in full quality at the same time. All the participants can be able to view any other participants involved in the video conferencing network. The participants currently involved in conferencing are identified as active peers and those participants who are not currently involved are identified as passive peers. Any peers involved in the multipoint video conferencing can join and leave at any time. The video is captured for 60 seconds from the capture
device at any resolution and it is transmitted to the receivers directly with proper encoding and decoding technique. All the layers in the layered video are transmitted to the receivers through a multitree structure. Receivers access the video and the video receiving process with time duration is as shown in figure (5) for ten participants involved in a multipoint video conferencing. The root peer receives the video directly using capture device. Then this act as sender peer for next four peers. Then next five peers are receiving the video content from the four upper level peers. Every peer in this video conferencing is playing both the roles as sender and receiver. The users are allowed to set parameters such as window size, frame rate, quality, video size and format. The video which is receiving is stored simultaneously at the receiver side in order to forward that video to the forthcoming receivers. The recording video is saved in a scalable video processing standard format known as Audio Video Interleave (AVI) started out playing 15 frames per second of a video in a 160*120 pixel window and the video file which is saving is also monitored simultaneously. Fig.5: Video Receiving 6. CONCLUSION We proposed an efficient video transmission for multipoint video conferencing in a peerto-peer network that makes use of layered video and multi-tree structure, where each peer stores and streams videos to the requesting receivers. We encode a video into several layers and it is decoded with all the layers as possible within the available bandwidth. This approach makes possible to achieve full quality with proper synchronization as well as better contribution among all the participants involved in the videoconferencing. Fault tolerance is obtained by the peer-to-peer network. The problems such as heterogeneity of peers and quality degradation are avoided by using this proposed multi-tree structure. Transmission delay does not occur and the scalability of video transmission is improved by using multi-tree structure approach. 7 REFERENCES
[1] W.P.K. Yiu, X. Jin, and S.H.G. Chan, VMesh: Distributed Segment Storage for Peer-to-Peer Interactive Video Streaming, IEEE J. Selected Areas in Comm., vol. 25, no. 9, pp. 1717-1731, Dec. 2007. [2] C. Xu, G.M. Muntean, E. Fallon, and A. Hanley, A Balanced Tree-Based Strategy for Unstructured Media Distribution in P2P Networks, Proc. IEEE Int l Conf. Comm. (ICC 08), pp. 1797-1801,May 2008. [3] C. Zheng, G. Shen, and S. Li, Distributed Prefetching Scheme for Random Seek Support in Peer-to-Peer Streaming Applications, Proc. ACM Workshop Advances in Peer-to-Peer Multimedia Streaming, pp. 29-38, Nov. 2005. [4] D. Wang and J. Liu, A Dynamic Skip List-Based Overlay for On-Demand Media Streaming with VCR Interactions, IEEE Trans. Parallel and Distributed Systems, vol. 19, no. 4, pp. 503-514, Apr. 2008. [5] H.V. Jagadish, B.C. Ooi, and Q.H. Vu, BATON: A Balanced Tree Structure for Peer-to-Peer Networks, Proc. Int l Conf. Very Large Data Bases (VLDB 05), pp. 661-672, Aug. 2005. [6] S.Y.R. Li, R.W. Yeung, and N. Cai, Linear Network Coding, IEEE Trans. Information Theory, vol. 49, no. 2, pp. 371-381, Feb. 2003. [7] M. Wang and B. Li, R2: Random Push with Random Network Coding in Live Peerto-Peer Streaming, IEEE J. Selected Areas in Comm., vol. 25, no. 9, pp. 1655-1666, Dec. 2007. [8] P.J. Wu, J.N. Hwang, C.N. Lee, C.C. Gau, and H.H. Kao, Eliminating Packet Loss Accumulation in Peer-to-Peer Streaming Systems, IEEE Trans. Circuits and Systems for Video Technology, vol. 19, no. 12, pp. 1766-1780, Dec. 2009. [9] E.W. Zegura, K.L. Calvert, and S. Bhattacharjee, How to Model an Internetwork, Proc. IEEE INFOCOM, vol. 2, pp. 594-602, Mar. 1996. [10] G. Wu, B. Li, and Z. Li, Dynamic Bandwidth Auctions in Multioverlay P2P Streaming with Network Coding, IEEE Trans. Parallel and Distributed Systems, vol. 19, no. 6, pp. 806-820, June 2008. [11] H. Chi, Q. Zhang, J. Jia, and X. Shen, Efficient Search and Scheduling in P2P- Based Media-on-Demand Streaming Service, IEEE J. Selected Areas in Comm., vol. 25, no. 2, pp. 119-130, Jan. 2007. [12] C. Gkantsidis, J. Miller, and P. Rodriguez, Comprehensive View of a Live Network Coding P2P System, Proc. ACM SIGCOMM Conf. Internet Measurement (IMC 06), pp. 177-188, Oct. 2006. [13] S. Annapureddy, S. Guha, C. Gkantsidis, D. Gunawardena, and P. Rodriguez, Exploring Vod in P2P Swarming Systems, Proc. IEEE INFOCOM 07, pp. 2571-2575, May 2007. [14] K. Nguyen, T. Nguyen, and S.-C. Cheung, Peer-to-Peer Streaming with Hierarchical Network Coding, Proc. IEEE Int l Conf. Multimedia and Expo, pp. 396-399, July 2007. [15] M. Wang and B. Li, Lava: A Reality Check of Network Coding in Peer-to-Peer Live Streaming, Proc. IEEE INFOCOM, pp. 1082-1090, May 2007. [16] C. Feng and B. Li, On Large-Scale Peer-to-Peer Streaming Systems with Network Coding, Proc. ACM Int l Conf. Multimedia, pp. 269-278, Oct. 2008. [17] A. Habib and J. Chuang, Service Differentiated Peer Selection: An Incentive Mechanism for Peer-to-Peer Media Streaming, IEEE Trans. Multimedia, vol. 8, no. 3, pp. 610-621, June 2006. [18] http://www.bittorrent.com, 2011. [19] C.S. Chang, T. Ho, M. Effros, M. Medard, and B. Leong, Issues in Peer-to-Peer Networking: A Coding Optimization
Approach, Proc. IEEE Int l Symp. Network Coding, June 2010. V.Redya received the B.E, degrees in computer science and engineering from Osmania University, Hyderabad, AP, and India. He is received M.Tech in Computer Science and Engineering at Jawaharlal Nehru Technological University, Hyderabad, AP and India. He is pursuing Ph.D program in computer science and Engineering. A.Mallikarjun received the B.Tech, degrees in computer science and engineering from Jawaharlal Nehru Technological University, Hyderabad, AP, and India. He is Pursuing M.Tech in Computer Science and Engineering at BOMMA INSTITUTE OF TECHNOLOGY and SCIENCE from Jawaharlal Nehru Technological University, Hyderabad, AP and India.