Using Viewing Statistics to Control Energy and Traffic Overhead in ...

2 downloads 56836 Views 8MB Size Report
Galaxy SIII 4G (Android Jelly Bean 4.1.2), we identified that YouTube exhibits all the streaming techniques in the. Android platform with its combination of the ...
1

Using Viewing Statistics to Control Energy and Traffic Overhead in Mobile Video Streaming Matti Siekkinen, Mohammad Ashraful Hoque, Jukka K. Nurminen

Abstract—Video streaming can drain a smartphone battery quickly. A large part of the energy consumed goes to wireless communication. In this article, we first study the energy efficiency of different video content delivery strategies used by service providers and identify a number of sources of energy inefficiency. Specifically, we find a fundamental tradeoff in energy waste between prefetching small and large chunks of video content: Small chunks are bad because each download causes a fixed tail energy to be spent regardless of the amount of content downloaded, whereas large chunks increase the risk of downloading data that user will never view because of abandoning the video. Hence, the key to optimal strategy lies in the ability to predict when the user might abandon viewing prematurely. We then propose an algorithm called eSchedule that uses viewing statistics to predict viewer behavior and computes an energy optimal download strategy for a given mobile client. The algorithm also includes a mechanism for explicit control of traffic overhead, i.e., unnecessary download of content that the user will never watch. Our evaluation results suggest that the algorithm can cut the energy waste down to less than half compared to other strategies. We also present and experiment with an Android prototype that integrates eSchedule into a YouTube downloader. Index Terms—mobile communication, video, energy efficiency

I. I NTRODUCTION

V

IDEO streaming is one of the most used mobile services. Projections about its evolution in the near future consistently suggest substantial growth [1]. Video streaming is very resource hungry application, whereas smartphones are resource constrained compared to the desktop equivalents. One of the major limitations is the battery capacity and, therefore, any solutions that optimize the energy efficiency of such services are important. The fraction of energy consumed by wireless communication during video streaming is significant. In fact, it can add up to more than half of the total energy consumed by a smartphone when streaming video. Furthermore, the network infrastructure is also stressed by the large traffic volumes. In this article, we propose an algorithm that optimizes this energy consumption by computing an optimal strategy for the delivery of the video content to a mobile client. This work was supported in part by the Academy of Finland CUBIC project with grant numbers 277498 and 278207 and by TEKES in the DIGILE Internet of Things program. M. Siekkinen and J. Nurminen are with the Department of Computer Science and Engineering, School of Science, Aalto University, Finland. Email: {matti.siekkinen,jukka.k.nurminen}@aalto.fi. M. Hoque is with the Helsinki Institute for Information Technology and University of Helsinki. E-mail: [email protected] Manuscript submitted May 14, 2014, revised in December 19, 2014, and accepted in March 11, 2015.

We have identified two types of sources of energy waste in mobile video streaming: 1) idle energy expenditure caused by radio resource management which keeps the radio powered on for a period of time after all bytes of a transfer have been received, and 2) energy spent in downloading content that the user will not watch because of abandoning the session, a very common phenomenon according to previous studies [2]. The origins of these two are contradictory: If video content is delivered to the smartphone in small chunks, the first type of energy waste dominates, specifically in the form of so called tail energy [3], but the amount of unnecessarily downloaded content is constrained. In contrast, delivering the video content in large chunks has an exactly opposite effect: the total tail energy is small whereas the risk of spending energy and network resources to download content that user will not watch is high. We design an algorithm called eSchedule that uses viewing statistics as input and determines chunk sizes corresponding to the optimal download strategy that minimizes the expected amount of energy waste for a given client. The underlying idea is that video clip specific statistics collected from all the previous viewing sessions enable predicting how another user will watch the video. The algorithm derives abandoning probabilities from the viewing statistics and uses them together with power models and latest estimate of the download rate of content to compute the expected value of the energy waste. The most energy efficient schedule does not always minimize the traffic overhead, i.e., the amount of content downloaded but never watched. Yet, traffic overhead is important for the video service providers that need to pay for the bandwidth that they consume as well as for users that have a limited data plan. For this reason, we also include a mechanism in eSchedule to explicitly control the traffic overhead and enable a controlled tradeoff between the energy and traffic overhead. Even though we use viewing statistics from a real service (YouTube), we do not address the issue of how to collect the viewing statistics. They can be provided by a video streaming service provider or by a mobile network operator. Furthermore, the statistics can be also context specific capturing temporal variations in the viewing patterns in addition to the patterns induced by the content itself. In summary, we make the following contributions: • We design eSchedule, an algorithm that computes optimal download strategy for a given mobile video streaming client by using viewing statistics. The algorithm also includes mechanisms to explicitly control the traffic overhead and to adapt to consistently biased user behavior. We present two versions of eSchedule: one based on

2

dynamic programming that produces an optimal schedule and another one based on a heuristic that may also produce suboptimal solutions by doing less computation. • We evaluate eSchedule using simulations and conclude that it can reduce the energy overhead by more than 50% and provides effective means to control the traffic overhead. Our results also suggest that 100 views are sufficiently many to predict viewing behaviour accurately enough. • We implement an Android prototype based on the heuristic version of eSchedule. Our experiments confirm that the prototype works well, causes negligible computing overhead, and adapts to changing network conditions. The article is organized as follows. We next give a technical overview of mobile video streaming with special focus on energy consumption. In Section III, we present our algorithm and describe simulation-based evaluation results in Section IV. In Section V, we showcase the Android prototype we have developed after which we conclude the article. II. M OBILE V IDEO S TREAMING A. Video Streaming using HTTP over TCP HTTP over TCP is currently the most commonly used protocol suite for delivering multimedia streaming content to mobile devices [4]. Figure 1 shows the streaming strategies used by the streaming services to deliver content to mobile devices. 2*4+(H*#5&"'(-.$/0/1,( !"#$%&'()%#&)#!*$#+) :0D>I(63*7,)(&"(1)$84,)= 2*4+(@+*)+

!"#$%&"'()*+,(-.$/0/1,(23*45(63*7,)( &"(1)$84,)(9$)(:;(;? @;( 3G

Wi−Fi −−> 3G

50

9:

"!!

100

Wi−Fi

50

3G

LTE

0

0

100 50

0

100 200 300 Playback Time (S)

(c) Chunk sizes (399 s)

400

0

100

200

0

300

400

3G −−> Wi−Fi

3G −−> Wi−Fi

4567,$2.80$123

399 s

100

$

"%! "!! %! !$ #!!

Chunk Size (S)

198 s

Chunk Size (S)

1 0.9

100 200 300 Playback Time (S)

400

(d) Wi-Fi ⇔ HSPA (399 s)

Fig. 14: Viewer retention and chunk sizes (in seconds) chosen by eSchedule for the two videos.

0

0.2

0.4 0.6 0.8 fraction of video watched (%)

(a) Wi-Fi

1

0

0.8 200 0.6

0.4 100

audience retention

0.5

audience retention

eSchedule YouTube App Whole Video Download ON-OFF-M audience retention

energy waste compared to oracle (J)

1

energy waste compared to oracle (J) 0

1

300

10

0.2

0

0

0.2

0.4 0.6 0.8 fraction of video watched (%)

1

(b) LTE

Fig. 15: Energy waste compared to Oracle while streaming the 399s video using Galaxy SIII 4G.

viewing progresses. For this reason, when streaming over the Wi-Fi access, eSchedule chooses chunks that are of increasing size while the viewing progresses. The larger tail energy of LTE makes eSchedule choose three large chunks. ON-OFF-M uses a large number of chunks, which increases the amount of energy waste using 3G and LTE. At a first glance, it looks like downloading the whole video is a good idea. However, the viewer retention suggests that the video loses around 50% of its viewers during the first 35% of total duration and for those viewers the amount of energy wastes would be larger compared to the download schedule chosen by eSchedule. Figure 14d shows two example streaming situations where the wireless connectivity changes in the middle of streaming the longer video. In the first case, the phone switches from Wi-Fi to 3G access after the third chunk is downloaded. In the second case, the phone switches from 3G to Wi-Fi access after the first chunk is downloaded. We note that our download scheduler correctly adapts to the new situation in both cases and changes the download strategy accordingly. Specifically, the scheduler switches to shorter chunks when the access changes from 3G to Wi-Fi and vice versa. D. Discussion Although our prototype integrates eSchedule into the clientside application, other deployment possibilities also exist. The video streaming service provider that also maintains

the viewing statistics can run eSchedule and make servers deliver optimal chunk sizes to clients. Such deployment is immediately possible as opposed to a third party deployment, which is limited by the lack of open access to viewing retention data. Alternatively, a mobile network operator could maintain viewing statistics and run eSchedule in proxy servers that perform the optimal chunk size selection. Adaptive streaming is rapidly gaining ground with mobile streaming services. Dynamic Adaptive Streaming over HTTP (DASH) [23] is currently the most prevalent approach. It switches to a different bitrate (and quality) on the fly as the available bandwidth fluctuates. It is client centric in that the client estimates bandwidth availability and makes decisions on which quality video chunk to download. eSchedule can be integrated into a DASH client so that the calculation of the optimal chunk size to be downloaded next is triggered each time upon bitrate switching. We also quantified the energy overhead of running the prototype in the smartphone. Specifically, we measured the download scheduler that implements the eSchedule-h algorithm. We measured that Galaxy SIII 4G spent only 15 mW in computing the chunk sizes which is negligible compared to the total power consumption including the playback and downloading power consumption. The eSchedule algorithm requires an accurate power model that, in case of mobile network access, includes timers which may differ between mobile networks. These timers are operator controlled and their values are not available through any standard API in a smartphone. Fortunately, earlier research has shown that it is possible to infer these timer values in an automated manner [24]. Power states are also part of the power models. This information needs to be pre-configured to eSchedule as obtaining the power states accurately requires external power monitoring tools. The power states are phone model specific and they can be shared between users. In case a user behaves in a consistently biased way, at least for some time, it is possible to make eSchedule adapt to it. A limitation of eSchedule is that even though we designed a mechanism to account for biased behavior, it still adapts to global statistics. An interesting but challenging piece of future work would be to consider how eSchedule could be

14

extended to support also personalized statistics. Such extension would bear resemblance to recommender systems and would benefit from the large body of research done in that domain. The actual algorithm of eSchedule that calculates the optimal downloading schedule would still work in the exact same way but would just be given different statistics for different users. VI. R ELATED W ORK Energy consumption for multimedia streaming in mobile devices has been studied before. Most of the early work focused on streaming over Wi-Fi access because cellular networks did not yet provide sufficient bandwidth for video streaming. Some recent papers consider also the cellular access network. We next discuss the most important parts of that body of work and compare it to our work in this paper. Anand et al. proposed adapting Wi-Fi power management in response to access patterns and application hints on data access [25]. Bagchi [26] also presented a solution for streaming over Wi-Fi, one in which a player maintains a fixed playback buffer size and requests data from the server when the buffer status reaches a low buffer threshold. The alternative is that the player plays from the playback buffer and ceases downloading. This solution is similar to the ON-OFF-S mechanism discussed in Section II. Two other similar approaches [27], [28] modify TCP window-size of IP packets to trigger the TCP flow control mechanism artificially, which eventually generates bursty traffic when the TCP window-size is modified to a higher value. These solutions save energy by forcing the Wi-Fi into sleep mode, which means they avoid any potential auxiliary traffic such as TCP control packets, and, at the same time, the application layer keeps messages alive. Hoque et al. [29] study also TCP-based multimedia streaming and propose an energy optimization proxy that uses traffic shaping to serve content to clients in bursts and automatically determines the optimal chunk size. None of the above mentioned solutions address the problem of users abandoning the viewing of the video. Several kinds of optimization techniques exist to reduce energy while communicating over 3G. For example, RadioJockey mines program execution in order to optimize the use of Fast Dormancy in 3G communication and in that way reduces energy consumption [10]. However, it does not actually target streaming; instead it focuses on background apps. ARO [30] and TOP [31] have similar objectives but they require active participation from application developers. Bartendr saves energy by prefetching streaming content when the signal strength is good [32]. It is in fact a complementary mechanism that could be integrated with eSchedule. Some work has looked at scheduling of mobile traffic based on the power consumption characteristics of wireless radios. For example, CoolSpots propose to schedule low bit rate video transmission over Bluetooth and higher bit rate video over WiFi [33]. Such a solution is orthogonal to what we propose in this paper. If eSchedule is used with a downloader that fetches each chunk of video over a separate TCP connection, such as the one our prototype features, CoolSpots could complement the system to save more energy by downloading chunks over Bluetooth when deemed beneficial.

There are also several measurement papers that touch on the subject of our work. For instance, Balasubramanian et al. [3] studied the energy consumption of 3G data communication and Huang et al. [11] examined the LTE power characteristics. Trestian et al. [34] specifically studied streaming and energy consumption in. In addition, also other Quality of Experience aspects besides energy consumption of mobile video have been studied. For example, Shafiq et al. [35] report on a large scale measurement study of mobile video usage. Li et al. [18] presented GreenTube which is a solution closely related to ours. They propose as a solution to reduce the energy consumption while streaming YouTube videos to Android phones. The download scheduling part of GreenTube has two important differences to eSchedule: First, it is based on users’ local viewing history rather than global per-video statistics that we propose to use in this work. Second, the use of expected value of viewing time as the sole input to scheduler leads to less than optimal energy consumption as observed in Section IV. Finally, our earlier paper [36] presented the idea of using viewing statistics to optimize energy efficiency in wireless video streaming. In this article, we substantially extended that work by proposing an algorithm to compute the optimal schedule in addition to the heuristic version and by adding mechanisms to explicitly control the traffic overhead and to adapt to persistent user bias. VII. C ONCLUSION We have presented eSchedule, an algorithm to compute energy optimal download schedule of video content in mobile video streaming. The algorithm relies on the use of viewing statistics to predict user behavior. It can also be used to control traffic overhead in streaming and still provide energy efficiency, which is of particular interest for mobile network operators. As future work, we plan to study further the viewing behavior in mobile video streaming by means of traffic analysis. We are particularly interested in understanding the dynamics and context dependency of the viewer retention. R EFERENCES [1] Cisco, “Cisco visual networking index: Forecast and methodology, 20122017,” Cisco, White Paper, May 2013. [2] A. Finamore, M. Mellia, M. M. Munaf`o, R. Torres, and S. G. Rao, “Youtube everywhere: Impact of device and infrastructure synergies on user experience,” in Proceedings of the 2011 ACM SIGCOMM Conference on Internet Measurement Conference, ser. IMC ’11. New York, NY, USA: ACM, 2011, pp. 345–360. [3] N. Balasubramanian, A. Balasubramanian, and A. Venkataramani, “Energy consumption in mobile phones: a measurement study and implications for network applications,” in Proceedings of the 9th ACM SIGCOMM conference on Internet measurement conference, ser. IMC ’09. New York, NY, USA: ACM, 2009, pp. 280–293. [4] L. Guo, E. Tan, S. Chen, Z. Xiao, O. Spatscheck, and X. Zhang, “Delving into internet streaming media delivery: a quality and resource utilization perspective,” in Proceedings of the 6th ACM SIGCOMM conference on Internet measurement, ser. IMC ’06. New York, NY, USA: ACM, 2006, pp. 217–230. [5] M. A. Hoque, M. Siekkinen, and J. K. Nurminen, “Dissecting mobile video services: An energy consumption perspective,” in 14th IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks(WoWMoM), ser. WoWMoM ’13. IEEE, 2013. [6] “IEEE 802.11, Wireless LAN Medium Access Control and Physical Layer Specification,” 1999.

15

[7] “3GPP TS 25.331, Radio Resource Control (RRC); Protocol specification,” May 1999. [8] “3GPP TS 36.331, E-UTRA; Radio Resource Control (RRC) Protocol Specification,” May 2008. [9] “Fast Dormancy best practices, GSM association, network efficiency task force,” 2010. [10] P. K. Athivarapu, R. Bhagwan, S. Guha, V. Navda, R. Ramjee, D. Arora, V. N. Padmanabhan, and G. Varghese, “RadioJockey: mining program execution to optimize cellular radio usage,” in Proceedings of the 18th annual international conference on Mobile computing and networking, ser. Mobicom ’12. New York, NY, USA: ACM, 2012, pp. 101–112. [11] J. Huang, F. Qian, A. Gerber, Z. M. Mao, S. Sen, and O. Spatscheck, “A close examination of performance and power characteristics of 4G LTE networks,” in Proceedings of the 10th international conference on Mobile systems, applications, and services, ser. MobiSys ’12. New York, NY, USA: ACM, 2012, pp. 225–238. [12] M. A. Hoque, M. Siekkinen, J. K. Nurminen, M. Aalto, and S. Tarkoma, “Mobile multimedia streaming techniques: Qoe and energy saving perspective,” Pervasive and Mobile Computing, vol. 16, Part A, no. 0, pp. 96 – 114, 2015. [13] A. Balachandran, V. Sekar, A. Akella, S. Seshan, I. Stoica, and H. Zhang, “Developing a predictive model of quality of experience for internet video,” in Proceedings of the ACM SIGCOMM 2013 Conference on SIGCOMM, ser. SIGCOMM ’13. New York, NY, USA: ACM, 2013, pp. 339–350. [14] “Audience retention: https://support.google.com/youtube/answer/ 1715160?hl=en,” 2014. [15] M. Siekkinen, M. Hoque, J. K. Nurminen, and M. Aalto, “Streaming over 3g and lte: How to save smartphone energy in radio access networkfriendly way,” in Proceedings of the 5th ACM Workshop on Mobile Video, ser. MoVid’13. ACM, 2013, pp. 13–18. [16] B. Jackson, J. D. Scargle, D. Barnes, S. Arabhi, A. Alt, P. Gioumousis, E. Gwin, P. Sangtrakulcharoen, L. Tan, and T. T. Tsai, “An algorithm for optimal partitioning of data on an interval,” Signal Processing Letters, IEEE, vol. 12, no. 2, pp. 105–108, Feb 2005. [17] B. Wang, J. Kurose, P. Shenoy, and D. Towsley, “Multimedia streaming via TCP: An analytic performance study,” ACM Trans. Multimedia Comput. Commun. Appl., vol. 4, no. 2, pp. 16:1–16:22, May 2008. [18] X. Li, M. Dong, Z. Ma, and F. Fernandes, “GreenTube: Power Optimization for Mobile Video Streaming via Dynamic Cache Management,” in Proceedings of the ACM Multimedia, ser. acmmm’12. New York, NY, USA: ACM, 2012. [19] P. J. Rousseeuw, I. Ruts, and J. W. Tukey, “The Bagplot: A Bivariate Boxplot,” The American Statistician, vol. 53, no. 4, pp. 382–387, Nov. 1999. [20] S. Verboven and M. Hubert, “Matlab library libra,” Wiley Interdisciplinary Reviews: Computational Statistics, vol. 2, no. 4, pp. 509–515, 2010. [21] A. Chakraborty, V. Navda, V. N. Padmanabhan, and R. Ramjee, “Coordinating cellular background transfers using loadsense,” in Proceedings of the 19th Annual International Conference on Mobile Computing and Networking, ser. MobiCom ’13. New York, NY, USA: ACM, 2013, pp. 63–74. [22] F. Qian, Z. Wang, A. Gerber, Z. M. Mao, S. Sen, and O. Spatscheck, “Characterizing radio resource allocation for 3G networks,” in Proceedings of the 10th ACM SIGCOMM conference on Internet measurement, ser. IMC ’10. New York, NY, USA: ACM, 2010, pp. 137–150. [23] T. Stockhammer, “Dynamic adaptive streaming over HTTP –: standards and design principles,” in Proceedings of the second annual ACM conference on Multimedia systems, ser. MMSys ’11. New York, NY, USA: ACM, 2011, pp. 133–144. [24] F. Qian, Z. Wang, A. Gerber, Z. M. Mao, S. Sen, and O. Spatscheck, “Characterizing radio resource allocation for 3g networks,” in Proceedings of the 10th ACM SIGCOMM Conference on Internet Measurement, ser. IMC ’10. New York, NY, USA: ACM, 2010, pp. 137–150. [25] M. Anand, E. B. Nightingale, and J. Flinn, “Self-tuning wireless network power management,” in Proceedings of the 9th annual international conference on Mobile computing and networking, ser. MobiCom ’03. ACM, 2003, pp. 176–189. [26] S. Bagchi, “A fuzzy algorithm for dynamically adaptive multimedia streaming,” ACM Trans. Multimedia Comput. Commun. Appl., vol. 7, pp. 11:1–11:26, 2011. [27] H. Yan, R. Krishnan, S. A. Watterson, D. K. Lowenthal, K. Li, and L. L. Peterson, “Client-centered energy and delay analysis for TCP downloads.” in IWQOS. IEEE, 2004, pp. 255–264. [28] E. Tan, L. Guo, S. Chen, and X. Zhang, “PSM-Throttling: Minimizing energy consumption for bulk data communications in WLANs,” in

[29]

[30]

[31]

[32]

[33]

[34]

[35]

[36]

Proceedings of International Conference on Network Protocols, 2007. IEEE, 2007, pp. 123–132. M. A. Hoque, M. Siekkinen, J. K. Nurminen, S. Tarkoma, and M. Aalto, “Saving energy in mobile devices for on-demand multimedia streaming – a cross-layer approach,” ACM Trans. Multimedia Comput. Commun. Appl., vol. 10, no. 3, pp. 25:1–25:23, Apr. 2014. F. Qian, Z. Wang, A. Gerber, Z. Mao, S. Sen, and O. Spatscheck, “Profiling resource usage for mobile applications: a cross-layer approach,” in Proceedings of the 9th international conference on Mobile systems, applications, and services, ser. MobiSys ’11. New York, NY, USA: ACM, 2011, pp. 321–334. F. Qian, Z. Wang, A. Gerber, Z. M. Mao, S. Sen, and O. Spatscheck, “TOP: Tail Optimization Protocol For Cellular Radio Resource Allocation,” in Proceedings of the The 18th IEEE International Conference on Network Protocols, ser. ICNP ’10. Washington, DC, USA: IEEE Computer Society, 2010, pp. 285–294. A. Schulman, V. Navda, R. Ramjee, N. Spring, P. Deshpande, C. Grunewald, K. Jain, and V. N. Padmanabhan, “Bartendr: a practical approach to energy-aware cellular data scheduling,” in Proceedings of the sixteenth annual international conference on Mobile computing and networking, ser. MobiCom ’10. New York, NY, USA: ACM, 2010, pp. 85–96. T. Pering, Y. Agarwal, R. Gupta, and R. Want, “CoolSpots: reducing the power consumption of wireless mobile devices with multiple radio interfaces,” in Proceedings of MobiSys 2006. New York, NY, USA: ACM, 2006, pp. 220–232. R. Trestian, A.-N. Moldovan, O. Ormond, and G.-M. Muntean, “Energy consumption analysis of video streaming to android mobile devices,” in Network Operations and Management Symposium (NOMS), 2012 IEEE, Apr. 2012, pp. 444 –452. M. Z. Shafiq, J. Erman, L. Ji, A. X. Liu, J. Pang, and J. Wang, “Understanding the impact of network dynamics on mobile video user engagement,” in The 2014 ACM International Conference on Measurement and Modeling of Computer Systems, ser. SIGMETRICS ’14. New York, NY, USA: ACM, 2014, pp. 367–379. M. A. Hoque, M. Siekkinen, and J. K. Nurminen, “Using crowdsourced viewing statistics to save energy in wireless video streaming,” in Proceedings of the 19th Annual International Conference on Mobile Computing and Networking, ser. MobiCom ’13. New York, NY, USA: ACM, 2013, pp. 377–388. Matti Siekkinen obtained the degree of M.Sc. in computer science from Helsinki University of Technology in 2003 and Ph.D from Eurecom / University of Nice Sophia-Antipolis in 2006. He is currently a postdoc at Aalto University. His current research focuses on mobile computing, network measurements, and Internet protocols with a special interest in energy efficiency.

Mohammad Ashraful Hoque obtained his M.Sc degree in Computer Science and Engineering in 2010, and Ph.D in 2013 from Aalto University. He is currently a post doctoral researcher in Helsinki Institute for Information Technology (HIIT) and University of Helsinki. His research interests are energy efficient mobile computing, data analysis, distributed computing, scheduling, and machine learning.

Jukka K. Nurminen is a professor at Aalto University since 2011. He has almost 25 years of experience in software research at Nokia Research Center. Jukkas experience ranges from mathematical modeling to expert systems, from network planning tools to solutions for mobile phones, and from R&D project management to tens of patented inventions. He received his M.Sc degree in 1986 and Ph.D. degree in 2003 from Helsinki University of Technology.

Suggest Documents