The Dilemma of Handling Wifi Broadcast Traffic in Smartphone
Total Page:16
File Type:pdf, Size:1020Kb
2015 IEEE Conference on Computer Communications (INFOCOM) All or None? The Dilemma of Handling WiFi Broadcast Traffic in Smartphone Suspend Mode Ge Peng, Gang Zhou, David T. Nguyen, Xin Qi Department of Computer Science, College of William and Mary fgpeng, gzhou, dnguyen, [email protected] Abstract—Smartphones save energy by entering a low power so it is important to handle WiFi broadcast traffic in an suspend mode (<20mW) when they are idle. We find that on some energy efficient way. To improve energy efficiency, some smartphones, WiFi broadcast frames interrupt suspend mode smartphones, such as Galaxy Nexus and Galaxy S4, receive and force the phone to switch to active mode (>120mW). As a result, power consumption increases dramatically. To improve no broadcast frames except ARP and Multicast DNS frames energy efficiency, some phones employ a hardware broadcast when they are in suspend mode. With this policy, higher energy filter in the WiFi driver. All UDP broadcast frames other than efficiency is achieved. However, this impairs the functionalities Multicast DNS frames are blocked, thus none is received by as applications can not receive any broadcast frame during upper layer applications. So, we have a dilemma of handling suspend mode. Broadcast traffic is pervasive and important in WiFi broadcast traffic during smartphone suspend mode: either receive all of them suffering high power consumption, or receive modern networks. Many network protocols rely on broadcast none of them sacrificing functionalities. In this paper, we propose to perform correctly or effectively, such as ARP, DHCP, Software Broadcast Filter (SBF) to address the dilemma. SBF is and DNS. Some system services employ broadcast packets smarter than the hardware broadcast filter as it only filters out for resource discovery, such as NetBIOS Name Resolution. useless broadcast frames and does not impair functionalities of Applications also embrace broadcast packets to communicate applications. SBF is also more energy efficient than the “receive all” method. Our trace driven evaluation shows that SBF can save with neighbors, such as LAN sync feature of Dropbox [5], up to 52% energy consumption than the “receive all” method. neighbor discovery of Spotify [6], and crowdsourcing based content sharing applications [7] [8]. Failure to receive these I. INTRODUCTION broadcast frames results in misfunction of system services or Smartphones spend a large amount of time in a state where user applications. Complaints regarding this issue [9] [10] [11] they are not actively used. This state is usually referred to as [12] have also been posted in many technical forums. suspend or sleep mode. In this mode, the screen is off and Whether to receive a broadcast frame or not? It is dif- the processor is idle, so the phone consumes very little power. ficult to tell because WiFi driver has no information about For example, power consumption of Nexus One is 11 mW in what broadcast frames are needed by system services and suspend mode while it is above 120 mW in active mode. By user applications. This leads to the dilemma of dealing with turning smartphones into suspend mode while they are not in WiFi broadcast traffic on modern smartphones during suspend use, considerable energy can be saved. mode: receive all and suffer high power consumption, or However, incoming WiFi traffic interrupts a smartphone’s receive none and sacrifice functionalities. In this paper, we suspend mode and triggers the switch to the high power address the dilemma by designing a flexible packet filter that active mode. One example is app notification when screen enables fine-grained policies to handle WiFi broadcast frames. is off. Another example, which is often overlooked, is WiFi Specifically, we make two contributions. broadcast traffic. On some smartphones, such as Nexus One, WiFi driver wakes up the whole system upon receiving a WiFi • Through measurements and analysis, we investigate how broadcast frame during suspend mode. Moreover, in order to existing smartphones deal with broadcast traffic when in allow enough time to process the frame and possible following suspend mode. Four smartphones are used for the study: transmission events, WiFi driver requires a wake lock [1] of HTC Hero, Nexus One, Galaxy Nexus, and Galaxy S4. one second. The phone stays in active mode until the wake Though power consumption and functionality analysis, lock expires. As a result, battery drains fast even when a user we reveal the problem of existing solutions, which we is doing nothing on the smartphone. Many users have been refer to as the dilemma of handling WiFi broadcast traffic complaining about this problem [2] [3] [4]. during a smartphone’s suspend mode. Actually, WLAN is not designed for smartphones at the • We propose Software Broadcast Filter (SBF) to address beginning. Although WiFi broadcast frames are destined to the dilemma, and compare it with solutions on modern the whole local area network, not all of them are useful to smartphones. Through energy modeling and trace driven smartphones, e.g. WiFi broadcast frames for printer service performance evaluation, we demonstrate the performance discovery. It is energy inefficient to wake up the whole system of the proposed method. Compared to the “receive none” and stay awake just because of these useless background solution, SBF does not impair functionalities of smart- broadcast frames. Smartphones have very limited battery life, phone applications. Compared to the “receive all” solu- 978-1-4799-8381-0/15/$31.00 ©2015 IEEE 1212 2015 IEEE Conference on Computer Communications (INFOCOM) tion, SBF reduces the power consumption by up to 52%. Nexus One This phone is equipped with ARP offload [18], In literature, existing research mainly focuses on design- which enables a network adapter to respond to ARP requests ing energy efficient broadcast/multicast protocols for wireless without waking up the system. For other broadcast frames, networks [13] [14] or reducing energy consumption of WiFi it employs the same method as on HTC Hero: waking up unicast traffic when a smartphone is in active mode [15] [16] (resuming), staying in active state for one second, and then [17]. However, we are different in that we study the impact of going back to suspend mode. WiFi broadcast frames are WiFi broadcast traffic when a smartphone is in suspend mode. usually small. It will not take too much energy for the radio to This problem deserves attention because: (1) Broadcast traffic receive such frames. Figure 1 shows the power consumption has a broad impact as it affects all nodes in a network. (2) when a Nexus One phone wakes up to receive a WiFi broadcast Broadcast traffic is passive and typically arrives unexpectedly. frame. Although the energy cost for the phone to resume and To the best of our knowledge, we are the first to present go back to suspend is not negligible, we find that the main measurements and analysis of different ways to deal with WiFi part of energy is consumed during the one second wake lock broadcast traffic during smartphone suspend mode. time triggered by the broadcast frame. The rest of the paper is organized as follows. First, in Sec- tion II we investigate how existing smartphones deal with WiFi 600 500 broadcast traffic during suspend mode, and reveal a dilemma one second wake lock that existing solutions face with experimental study. Based 400 on our observations, in Section III, we propose a solution to 300 Power(mW) 200 address the dilemma and model its energy saving. Then, in 100 Section IV, we demonstrate the performance through trace 0 4 4.5 5 5.5 6 6.5 7 driven performance evaluation. Finally, we discuss related Time(s) works in Section V and conclude this paper in VI. Fig. 1: Power consumption when waking up to receive a II. REVEALING THE DILEMMA WITH EXPERIMENTS WiFi broadcast frame (measured on Nexus One with Monsoon To reveal the dilemma, we first introduce existing solutions Power Monitor[19]) on four modern smartphones. Then, we carry out experiments Galaxy Nexus and S4 The same as on Nexus One, these two to show how they perform in term of functionality and energy phones are also equipped with ARP offload. In addition, they efficiency when WiFi broadcast traffic exists. enable a hardware broadcast filter. This filter blocks all UDP A. Understanding Existing Solutions on Modern Smartphones broadcast frames with the only exception of Multicast DNS To investigate how modern smartphones handle WiFi broad- (MDNS) frames. As a result, no UDP broadcast frames other cast frames when in suspend mode, we analyze WiFi drivers of than MDNS frames are received by the system when the phone four commercial smartphones listed in Table I. Note that some is in suspend mode. 802.11 control and management frames are also broadcast, B. Real World WiFi Broadcast Traffic Analysis such as beacon frames. However, we only focus on data We collect traces to see how WiFi broadcast traffic looks frames as this is the part of traffic that we can leverage. Also, like in real world. Traces are collected in four locations: we focus on MAC layer broadcast since we study behaviors a corridor inside a teaching building, a college library, an of WiFi driver. In IP layer, it can be either unicast address office in a Computer Science Department, and an off-campus or broadcast/multicast address. In this paper, by (UDP/ARP) Starbucks store. For each location, we capture all broadcast broadcast frames/traffic we simply mean WiFi broadcast data frames under an AP for 30 mins during peek time. frames/traffic (with UDP/ ARP data). TABLE I: Devices used for analysis ARP UDP 97.7% 99.8% 99.7% 99.9% device Android kernel WiFi 100 version version driver 80 HTC Hero 2.3.7 2.6.29 wlan.ko 60 40 percentage (%) Nexus One 2.3.7 2.6.37 bcm4329.ko 20 Galaxy Nexus 4.2.1 3.0.31 bcmdhd.ko 0 (a) Precentage of UDP and ARP broadcast Galaxy S4 4.2.2 3.4.0 bcmdhd.ko 12 10.4 10 HTC Hero On this phone, WiFi driver receives all broadcast 8 7.3 frames and passes them to system network stack.