A Client-Centric Data Streaming Technique for Smartphones: An Energy Evaluation
MetadataShow full item record
With advances in microelectronic and wireless communication technologies, smartphones have computer-like capabilities in terms of computing power and communication bandwidth. They allow users to use advanced applications that used to be run on computers only. Web browsing, email fetching, gaming, social networking, and multimedia streaming are examples of wide-spread smartphone applications. Unsurprisingly, network-related applications are dominant in the realm of smartphones. Users love to be connected while they are mobile. Streaming applications, as a part of network-related applications, are getting increasingly popular. Mobile TV, video on demand, and video sharing are some popular streaming services in the mobile world. Thus, the expected operational time of smartphones is rising rapidly. On the other hand, the enormous growth of smartphone applications and services adds up to a significant increase in complexity in the context of computation and communication needs, and thus there is a growing demand for energy in smartphones. Unlike the exponential growth in computing and communication technologies, the growth in battery technologies is not keeping up with the rapidly growing energy demand of these devices. Therefore, the smartphone's utility has been severely constrained by its limited battery lifetime. It is very important to conserve the smartphone's battery power. Even though hardware components are the actual energy consumers, software applications utilize the hardware components through the operating system. Thus, by making smartphone applications energy-efficient, the battery lifetime can be extended. With this view, this work focuses on two main problems: i) developing an energy testing methodology for smartphone applications, and ii) evaluating the energy cost and designing an energy-friendly downloader for smartphone streaming applications. The detailed contributions of this thesis are as follows: (i) it gives a generalized framework for energy performance testing and shows a detailed flowchart that application developers can easily follow to test their applications; (ii) it evaluates the energy cost of some popular streaming applications showing how the download strategy that an application developer adopts may adversely affect the energy savings; (iii) it develops a model of an energy-friendly downloader for streaming applications and studies the effects of the downloader's parameters regarding energy consumption; and finally, (iv) it gives a mathematical model for the proposed downloader and validates it by means of experiments.