Hybrid Peer-to-peer Streaming System for Mobile Peers with Transcoding

In this paper, we study in hybrid peer-to-peer (P2P) streaming system, which includes fixed peers and mobile peers in the same network, and propose a flow rate allocation algorithm to optimize the streaming system. In the proposed algorithm, based on transcoding technique, we describe how to exchange original and transcoded data among video source server, fixed and mobile peers. The purpose of our algorithm is to reduce the bandwidth demand of video source server, while ensuring the flow rate of video data sending to any peer no less than its video coding rate. We compare the performance of P2P streaming system using our algorithm with traditional design in various situations in the simulation experiment, and test how much benefit the system can get from the new algorithm. The results show that, if the flow rate of video data is allocated appropriately, better performance of streaming system can be achieved.


INTRODUCTION
With the popular of P2P multimedia streaming, peers become more and more complex.These clients, such as PC, TV, tablet, PDA, cellphone, and so on, have various screen sizes, color depth and video qualities.Specially, they may have different bandwidth with heterogeneous access network [1][2][3][4], and they may have different video coding algorithm with heterogeneous hardware and software.In traditional designs, the peers that receive different video coding data cannot share their upload bandwidth each other.
To deal with this problem, in recent years, there are some literatures [2][3][4][5][6] that propose transcoding technique using in P2P streaming systems.With this technique, powerful peers can transcode and share their video data to other peers, which even use different video coding algorithm.Present researches announce that, in some situations, compared with traditional design, P2P streaming system with transcoding have better performances, such as suitability of heterogeneous drivers, various video coding support, and less resource consumption.Nevertheless, existent studies just focus on video coding algorithm and computational resource allocation, which fails to investigate and design their systems on how to efficiently transmit different video coding data in the network.
In this paper, we are interested in the algorithm of flow rate allocation.Prior works have studied the issue of flow rate allocation in no transcoding situation [7][8][9], the scenario of network coding [10], the multiple channel system [11], and the arbitrary graph model [12].Our study bases on hybrid P2P streaming system with transcoding, which includes fixed and mobile peers in one overlay network [4] [7].Fixed peers, in this study, refer to PC or IPTV connected to the overlay network over a reliable connection and had powerful computing capability to transcode video data timely.And oppositely, mobile peers are seen as no transcoding capability, but just transmit transcoded data.We seek to propose a flow rate allocation algorithm for transcoding and transmission of video streaming to mobile peers, while ensure the flow rate of video data sending to any peer no less than its video coding rate.Without sacrificing realistic assumptions of systems scale, our analysis and algorithm is based on both transcoding technique and the feature of hybrid network environment, and we mainly investigate the bandwidth demand of video source server in the system using our algorithm.Furthermore, based on the simulation experiment, we compare the performance of our design with traditional situations, and seek to find out in what situation our algorithm work more effectively and how much benefit the system can get.
The remainder of the paper is organized as follows.Section 2 describes and insights the basic environment of research.In Section 3, we give the flow rate allocation algorithm of the hybrid system for streaming to mobile peers.In section 4, we show the simulation experiment and compare system performance with traditional design.Finally, we conclude this paper in Section 5.

HYBRID P2P STREAMING SYSTEM WITH TRANSCODING
Before we propose our flow rate allocation algorithm, in this section, we first summarize some fundamental characteristics and overview the research environment of hybrid P2P streaming system with transcoding (HPSST).
Utilizing transcoding technique, hybrid P2P streaming system can support multiple video coding rates and exchange their data in one overlay network.Especially, in our study, there are two kinds of video coding data needed by fixed and mobile peers respectively.As shown as Fig. 1, this is a simple example of HPSST.

Figure 1. Example of HPSST.
There are four peers (A, B, C and D) and one video source server (S) in the system.A and B are PCs with 1000 Kbps upload capacity and 800Kbps video coding rate respectively, which are seen as fixed peers, and C, D are cellphones with 100 Kbps upload capacity and 200Kbps video coding rate respectively, which are seen as mobile peers.And, we further assume that the download bandwidth and transcoding capability is not the bottleneck of the system.The goal of flow rate allocation is to ensure all peers receiving data achieving their video coding rate, and, at the same time, minimize the bandwidth demand of video source server.As we see in the examples of Fig. 2, the flow rate allocation influences the performance of the system.In next section, we describe how our algorithm works.Before that, for the sake of mathematical tractability, we make a few assumptions.First, our study bases on the scenario of hybrid P2P streaming system.The all fixed peers are supposed to have the same upload capacity and video coding rate.And, the all mobile peers are supposed to have the same upload capacity and video coding rate too.Second, the connection of whole system is seen as a complete network, and the capacity of upload bandwidth is the only bottleneck.This assumption is according to most existing studies [7][8][9][10] of P2P systems.Specially, in our study, it means that the fixed peers can transcode their video data to the format for mobile peers, and the transcoded data is always enough for upload in the discussion.Our flow rate allocation algorithm just discusses the basic data flow model and seeks to optimize the bandwidth utilization, which does not restrict the specific video coding algorithm.FLOW RATE ALLOCATION ALGORITHM Before give our algorithm, introduce some necessary notations firstly.
Denote by s for the video source server, ..., ; 1, 2,..., ; , and allocate flow rate as follows: 1, 2,..., ; The Flow of Transcoded Data Let s u be the rest upload capacity of s , and fi u be the rest upload capacity of Return to the HPSST example of Fig. 1.Following our algorithm, the flow rate allocation should be assigned as Fig. 2(c).Hence the bandwidth demand of video source server reduces to 800Kbps, while all peers getting data are no less than their video coding rate.For more details, in next section, we do simulation experiment to test the effectiveness of our flow rate allocation algorithm.

SIMULATION EXPERIMENT
In the simulation experiment, we implement hybrid P2P streaming system with transcoding and traditional no transcoding design described in previous paper [8][9].To conduct rigorous analysis of the systems under wide range of working conditions, we implement our experiments to emulate the characteristics of realistic systems with different parameters and a large number of test times.We mainly investigate the bandwidth demand of video source server using our algorithm, and compare the performance with traditional design in various settings.For brevity, denote by T s u for the bandwidth demand of video source server in the simulation system using traditional algorithm, and by s u for our algorithm.First, we take an overlook for the T s u and s u in complete random scenario.The experiment tests the system with all random settings, which randomly chooses f n and m n from 5 to 100, o r and t r from 200 to 1600, f u and m u from 100 to 2000.We test T s u and s u 1000 times respectively.The results are shown in Fig. 3.We can see that, in the complete random scenario, T s u and s u spread all over the figure, but, notice of the lower part of Fig. 3, u is hardly less than 400, while s u descends to 200 in some cases.Furthermore, we count the averages of every 100 values of T s u , which are drawn with red triangles in Fig. 3, and the averages of s u are drawn with green.The new algorithm shows some advantages in this test.
Next, for more details, we initialize and test the system with practical parameter, which simulates the HPSST in ADSL and CDMA networks.ADSL clients are seen as the fixed peers, while CDMA clients are seen as the mobile peers.The initial setting of the HPSST is on Table I.In this test, we seek to know how the bandwidth demand of video source server changes by the different system scale.The peer number of ADSL and CDMA are both 20 initially.We add peer number in only one kind client every time, and measure the corresponding bandwidth demand of video source server.For example, as the green area in the bottom of Fig. 4, first, we measure the bandwidth demand of video source server with our algorithm in the initial setting as TABLE I, after that, peer number of ADSL is added to 30, 40, and so on, while other parameters are held constant, and we measure the bandwidth demand of video source server orderly.In the experiment, we compare the bandwidth demand of video source server with traditional and our algorithm from the increase of both ADSL and CDMA scales.The results are shown in Fig. 4. We can see that the bandwidth demand of video source server using our algorithm is less than traditional one both in the increase of ADSL and CDMA peers.

CONCLUSION
In this paper, we have studied the issue of streaming to mobile peers in hybrid P2P streaming system.With transcoding technique, we propose a flow rate allocation algorithm to optimize the system performance.We have also done simulation experiment to compare our algorithm to traditional design, and to test how much benefit new algorithm takes in various situations.The results have shown some advantages of our algorithm.

Fig. 2 (
a) and Fig. 2(b) are two flow rate allocation methods.They all ensure receiving flow rate of fixed peers at 800Kbps and mobile peers at 200Kbps.But the demand bandwidth of video source server is 1100Kbps in Fig. 2(a), while 900Kbps in Fig. 2(b).

Figure 2 .
Figure 2. Examples of flow rate allocation in HPSST.
f i p for the i-th fixed peer, and m i p for the i-th mobile peer.Let f n be the number of fixed peers and m n be the number of mobile peers.Let s u be the bandwidth demand of s , f u be the upload capacity of fixed peer, and m u be the upload capacity of mobile peer.Let o r be the coding rate of original video data and t r be the coding rate of transcoded video data.Let f i tr be the total rate of f i p getting video data from the system and m i tr be the total rate of m i p getting video data from the system.Denote by   o x y z f   for network flow of original data from peer x (or video source server) to peer y at rate z, and   t x y z f   for network flow of transcoded data from peer x(or video source server) to peer y at rate z. the key parameters of the algorithm, which describe how data transmits in the system.The Flow of Original Data1) Get information of system, including f n

Figure 4 .
Figure 4. Bandwidth demand of video source server.