Multimedia Transport Protocol using Multiple Paths over ... - IEEE Xplore

2 downloads 148 Views 508KB Size Report
Heterogeneous Wireless Networks. Oh Chan Kwon, Yunmin Go, and Hwangjun Song. Dept. of Computer Science and Engineering. POSTECH. Pohang ...
ICTC 2014 1570018983

Multimedia Transport Protocol using Multiple Paths over Heterogeneous Wireless Networks Oh Chan Kwon, Yunmin Go, and Hwangjun Song Dept. of Computer Science and Engineering POSTECH Pohang, Republic of Korea {ochanism, gnfservant, hwangjun}@postech.ac.kr

layer. At the shim layer, the raw data packets are transferred concurrently to the packet scheduler and Raptor encoder buffer. When the amount of raw data at the Raptor encoder buffer is sufficient, Raptor encoding is performed. The generated redundant data are then packetized and delivered to the packet scheduler.

Abstract— This work presents a multipath multimedia transport protocol (MPMTP), which exploits path diversity over heterogeneous wireless networks. The goal of MPMTP is to provide a seamless high-quality video streaming service by using multiple wireless networks simultaneously. In MPMTP, systematic Raptor codes are adopted to mitigate video quality degradation caused by wireless channel errors, as well as to alleviate a head-of-line blocking problem in multipath environments. The proposed MPMTP is fully implemented in a Linux kernel and examined over real wireless network environments. Keywords— Multiple paths, video streaming, Raptor codes, transport protocol, wireless network.

I. INTRODUCTION State-of-the-art smart mobile devices have remarkable functionalities, such as high computing power, large storage size, high-resolution display capability, and multiple advanced networking interfaces. Thus, users may expect that current mobile devices will improve the Quality-of-Service (QoS) by using multiple networking interfaces simultaneously. However, conventional transport protocols such as TCP and UDP cannot support multi-homing devices to use multiple paths concurrently. The Internet engineering task force (IETF) has proposed multipath TCP (MPTCP) [1]. However, the performance of MPTCP is somewhat lower than expected in the presence of diverse network conditions [2]. This is because packets can arrive out-of-order due to diverse network conditions, so this phenomenon can incur a head-of-line blocking problem. In this work, we propose a multipath multimedia transport protocol (MPMTP) to seamlessly provide a high-quality video streaming service over multiple wireless networks. In the proposed MPMTP, Raptor codes [3] are adopted as an FEC scheme to mitigate the video quality degradation caused by wireless channel errors as well as to alleviate a head-of-line blocking problem in multipath environments.

Fig. 1. Protocol architecture of MPMTP (sender side)

A. Packet Scheduling Algorithm The packet scheduler assigns raw data to multiple paths to minimize the transmission delay of the whole encoding block while supporting best effort service for in-order packet delivery. Actually, packets may arrive out-of-order, as they are transmitted through multiple paths. In this case, it may incur additional processing delay for packet reordering at the receiver buffer, which may be an obstacle to a seamless video streaming service. In fact, the available bandwidth, delay, and sender buffer occupancy of each path should be considered in order to achieve in-order packet delivery. Hence, raw data packets are allocated based on the following path delay index (PDI) defined by

II. PROPOSED MULTIMEDIA TRANSPORT PROTOCOL In MPMTP, systematic Raptor codes are adopted to alleviate video quality degradation caused by time-varying wireless network conditions, as well as to mitigate a head-ofline blocking problem in multipath environments, and its code rate ( c ) is adjusted on the fly by considering the wireless channel state. The overall protocol architecture of MPMTP is illustrated in Figure 1. As shown in the figure, MPMTP uses TCP to exchange control packets for connection setup or feedback information. UDP is then employed to transmit video streaming data. The parameter control unit determines the code rate of Raptor codes and packet scheduling vector based on feedback information from the network monitoring unit. Compressed video stream is divided into raw data packets at the application layer, and these are moved to the MPMTP shim

978-1-4799-6786-5/14/$31.00 ©2014 IEEE









blk total blk P size  nbuf  1 P size  nbuf  nbuf i i i PDI iblk TR   tiott , TR ri  1  lossi  ri

(1)

where P size is the packet size in bytes, tiott is the one-way trip blk is time of the i -th path, lossi is the PLR of the i -th path, nbuf i the number of raw data packets in the current source block at total is the total number the sender buffer of the i -th path, and nbuf i of packets at the sender buffer of the i -th path. riTR is the transmission rate through the i -th path determined by the TFRC algorithm [4]. The PDI in Eq. 1 implicitly implies the expected packet arrival time (i.e., sum of the transmission delay, queuing delay at the sender buffer, and one-way trip time). Now, a raw data packet is assigned to the path with the

157

1

ICTC 2014

MPUDP is seriously degraded as shown in Figure 2 (b). Since MPUDP does not provide any error correction method, it exhibits the worst video quality. On the other hand, MPMTP recovers most of the lost packets successfully and supports the video streaming service without noticeable degradation.

minimum PDI iblk value. This procedure is repeated for all raw data packets in the source block, and the packet scheduling  vector PV for the source block is obtained as follows.  (2) PV   pv1 , pv2 , ... , pv p  , num

where pvi indicates the path identity through which the i -th raw data packet in the source block is transmitted and p num is the number of raw data packets in the source block. In contrast to raw data packets, in-order packet delivery is not important for redundant data packets, because Raptor decoding can be performed if a sufficient number of redundant data packets are available regardless of the packet order. Thus, the redundant data packet scheduling can be simply performed according to a weighted round robin. The weighting factor of the i -th path for redundant data packets is determined by  wfi PV 

p num

   j 1

 psvij PV

 

 1 psvij PV   0

p num ,

Protocol Measurement Goodput (Mbps)

  loss PV

N path

 wfi PV  lossi .

     i 1





  , 

(6)

where n is the minimum number of packets required for successful Raptor decoding, and nenc  c  is the number of packets in a encoding block. Finally, the code  rate can be determined as follows to ensure that  (c, PV ) is less than  max :   (7) c*  PV   arg min c diff  PV , c  , c diff









6.7218

8.4693

8.3775

No. of buffer underflow

8

0

0

Buffering duration (sec.)

31.3927

0

0

PSNR (dB)

41.1791

34.0910

40.4802

   if   c, PV    otherwise.

max

,

(b)

IV. CONCLUSION In this work, we have proposed MPMTP using systematic Raptor codes to provide a seamless high-quality video streaming service over wireless networks. The code rate is adjusted on the fly to overcome time-varying wireless network conditions. MPMTP performs packet scheduling according to the wireless network conditions as well as the packet payload characteristics. The experimental results show that MPMTP outperforms existing multipath transport protocols and is suitable for high-quality video streaming service over wireless networks.

min

0  c 1

MPMTP

(c) Fig. 2. Subjective video quality comparison: (a) MPTCP, (b) MPUDP, and (c) MPMTP

(5)

 (c, PV )  P X  n min | X ~ B n enc  c  ,1  loss all PV

 max   c, PV  PV , c   

MPUDP

(a)

Now, we can approximately calculate the Raptor decoding failure rate using a binomial distribution, i.e., 

MPTCP [2]

(4)

otherwise.

B. Code Rate Determining Algorithm The code rate for the next source block is related to the PLR values of paths during the transmission of the next block as well as packet scheduling vector since the number of lost packets is associated with  packet scheduling vector. When a packet scheduling vector PV is given, the overall PLR of MPMTP is represented by the weighted sum of lossi for 1  i  N path . all

PERFORMANCE COMPARISON WITH EXISTING PROTOCOLS

(3)

if pv j  i,

 

TABLE I.

ACKNOWLEDGMENT This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education (NRF2013R1A1A2006732) and the MSIP (Ministry of Science, ICT & Future Planning), Korea in the ICT R&D Program 2014.

(8)

III. EXPERIMENTAL RESULTS During the experiment, the proposed MPMTP is fully implemented using the C language in Linux kernel 3.5. The experiment time is set to 120 seconds. We use a full HD video encoded by MPEG-2 Transport Stream (TS) with an average 8 Mbps bit rate and 25 fps frame rate. We compare the proposed MPMTP with existing protocols, namely MPTCP [2] and MPUDP. The mechanism of MPUDP is almost the same as that of MPTCP, but it uses UDP instead of TCP. The experimental results are summarized in TABLE I. First, it can be observed in the table that MPMTP and MPUDP provide seamless video streaming without encountering buffer underflow, whereas MPTCP incur receiver buffer underflows. Secondly, it is clearly observed that the video quality of

REFERENCES [1] [2] [3] [4]

158

2

A. Ford, C. Raiciu, M. Handley, S. Barre, and J. Iyengar, “Architectural Guidelines for Multipath TCP Development,” IETF RFC 6182, Mar. 2011. S. Barre, C. Paasch, and O. Bonaventure, “MultiPath TCP: From Theory to Practice,” Networking, LNCS, vol. 6640, pp. 444-457, May 2011. A. Shokrollahi, “Raptor codes,” IEEE Transactions on Information Theory, vol. 52, no. 6, pp. 2551–2567, Jun. 2006. S. Floyd, M. Handley, J. Padhye, and J. Widmer, “Equation-based congestion control for unicast applications,” in Proc. ACM SIGCOMM, Aug. 2000.