際際滷

際際滷Share a Scribd company logo
SAPSM: Smart Adaptive
      802.11 PSM for Smartphones

                    Andrew J. Pyles, Xin Qi, Gang Zhou,
                       Matthew Keally and Xue Liu*

                            College of William and Mary,
                                 *McGill University

http://www.cs.wm.edu/~xqi             Ubicomp 2012         1
WiFi  A Significant Source of Energy
                Consumption

 Mobile data grows fast

 WiFi usage accounts for:
       94.2% in 2011
                                              (Cisco Visual Networking Index 2011-2016)
       80% (estimated) in 2015
                                                                                          Low Power
 WiFi power consumption                                      1200
                                                                                          Active(Idle)
                                                              1000
       High in Active Mode                                                               Active (Xmit)

                                                 Power (mW)
                                                               800

                                                               600

                                                               400

                                                               200

                                                                 0
       [SiFi - Ubicomp `11, Bartendr - Mobicom `10]
http://www.cs.wm.edu/~xqi              Ubicomp 2012                  Screen                  2
                                                                              BT
                                                                                   WiFi
Static PSM

    Static Power Save Mode (PSM):
                                                                     Beacon
                               PS-Poll


(Smartphone)                                                                  (Access Point)
                                     Sleeping             Sleeping
                             Beacon Interval    Beacon Interval
                        Awake              Awake              Awake

          Pros: Saving Energy
          Cons: Adding Delay (100~300ms)

  Unacceptable for delay sensitive Apps, such as
   http://www.cs.wm.edu/~xqi                    Ubicomp 2012                            3
Adaptive PSM

   Adaptive PSM
                               Null:
                                 Null :
                              Awake
                                                              Beacon     nobuffering
                                                                            buffering
                                Sleep
                              PS-Poll


(Smartphone)                                                               (Access Point)
           PSM
          CAM                             Awake
    Power(CAM)  20*Power(PSM)
          pkt. rate
            CAM
                True
                timeout?
                  >thr.?
                                                          CAM = Constantly Active Mode
    Be careful of the switch to CAM.

  http://www.cs.wm.edu/~xqi                Ubicomp 2012                                  4
Adaptive PSM Behavior of Different
               Handheld Devices
    Adaptive PSM appears to only use information from MAC
     layer to control the switch to CAM
        Is it consistent across all devices?
    We evaluate Adaptive PSM behaviors on different devices
       UDP traffic with
        random port


How to improve Adaptive PSM?




    All devices switch to CAM with spurious network traffic.
         Energy waste!
    http://www.cs.wm.edu/~xqi  Ubicomp 2012                     5
To Be Smart

 Utilize information from lay 3 and above in network stack
 Prevent unimportant traffic from triggering the switch
  to CAM
       unimportant traffic - delay tolerant traffic and traffic
        discarded by TCP/IP stack (no listening port)
 STPM (Mobicom `03) considers traffic delay sensitivity
  assigned by developers
      gap between developers and users
             65-75% energy consumption of free apps deliver advertisements
              [EuroSys2012]. Developers may not be motivated to indicate their
              app is delay tolerant

http://www.cs.wm.edu/~xqi            Ubicomp 2012                            6
Ideas and Challenges

 Ideas:
       Associates a priority with each app
       Users decide the priority of each app
       Only high priority (or delay sensitive) apps traffic can
        trigger the switch to CAM
       Other apps traffic cannot
 Challenges:
       How to assist even non-technical users to decide an apps
        priority?
       How to track an apps priority through the system
        efficiently?

http://www.cs.wm.edu/~xqi          Ubicomp 2012                     7
Outline

   SAPSM Design
   Evaluation
   Related Work
   Conclusions




http://www.cs.wm.edu/~xqi    Ubicomp 2012   8
Constraints, Definitions and Hints

 Constraints:
       minimizes user interaction
       respects the critical path
       uses hints from system and apps
 Definitions - app priorities
                            delay sensitive traffic ?        allowed to switch to CAM ?
       High Priority                  Yes                               Yes
       Low Priority                   No                                No


 Hints
       background traffic  delay tolerant traffic, e.g., SipDroid
       sets the entire system to be low priority as screen is off

http://www.cs.wm.edu/~xqi                     Ubicomp 2012                                9
SAPSM Architecture




 Exposes driver internals to SAPSM Core                    Relays apps priority from
                                                           APM to SAPSM Core
 Checks the priority of app each packet belongs to
  Updates the Adaptive PSM counter if high priority
 Collects networking usage of each app
  Classifies each app into high priority or low priority
  Interacts with users
  http://www.cs.wm.edu/~xqi            Ubicomp 2012                                10
SAPSM Core  Inbound Traffic




                                     Port
 1      1 mapping                   being
  App1 UID1                         True
                                      UID
                                 listened?   
  App2 UID2                                                      TCP/IP
                               SAPSM
                                  Core
High Priority List                                              WiFi Driver        Packet

                                                       Updates thenothingcounter
                                                            Does traffic



     http://www.cs.wm.edu/~xqi                   Ubicomp 2012                        11
SAPSM Core  Outbound Traffic


                                                               Packet



 1      1 mapping
  App1 UID1                       UID     
  App2 UID2                                                    TCP/IP
                               SAPSM
                                  Core
High Priority List                                            WiFi Driver


                       Resets Type of Service in IP header
                            Does nothing


     http://www.cs.wm.edu/~xqi                 Ubicomp 2012                 12
Application Priority Manager

 Low priority for each app by default

 Polls each apps data rate by TrafficStats API

 Classifies each app to either high priority or low priority

 Provides interfaces for user to set priority




http://www.cs.wm.edu/~xqi     Ubicomp 2012                      13
SVM as Classifier

 Data collection  a user study
 14 participants
 6 apps
       Network interactive apps: Android Market, web browser
       Network non-interactive apps: an offline game
       Ambiguous apps: Gmail, Facebook and Twitter
 Set the phone to static PSM
 Each participant uses each app for 10 minutes and is asked
  whether the observed latency is acceptable or not
 acceptable means low priority; otherwise high priority
 The RX and TX rates and traffic amounts are collected for each
  app

http://www.cs.wm.edu/~xqi         Ubicomp 2012                  14
88.1%




RXRate features are preferred Download data in background
                              Tank Game is low priority 14/14
                              Ambiguous apps 47/56
 http://www.cs.wm.edu/~xqi   Ubicomp 2012                       15
Evaluation

 Do low priority applications save energy over high priority
  applications?

 How does the SAPSM solution save energy with typical use
  cases?

 Does general networking performance suffer for applications
  placed into high priority?




http://www.cs.wm.edu/~xqi     Ubicomp 2012                      16
Do low priority apps save energy?

     Traffic with no listening socket


                                                 SAPSM is higher than Static PSM

                                           Low Priority Energy Inversion




    http://www.cs.wm.edu/~xqi          Ubicomp 2012                                17
Low priority apps achieve large energy saving at low rate
Does SAPSM save energy with typical
              use cases?
 4 clearly low priority apps:
         Streaming audio app, 128kbps Manually set as low priority
         Offline map app                 Classified as low priority 
         RSS reader app                  Classified as low priority 
         Social networking apps (Gmail, Facebook, and Twitter) running in
          background when screen is off Automatically set as low priority 



                            44%
                                  18%   56%

                                              13%




http://www.cs.wm.edu/~xqi                Ubicomp 2012                         18
Does general networking performance
                 suffer?

 Netperf  a benchmark to measure network
  performance

       SAPSM 1  implements the socket checking by hashing table




      SAPSM achieves similar performance as Adaptive PSM

http://www.cs.wm.edu/~xqi    Ubicomp 2012                    19
Related Work

 Optimizing PSM behavior, e.g.,
       PSMThrottling (ICNP 07) uses traffic shaping to add burstiness
       Micro power (Mobisys 08) predicts small sleep interval to save
        energy
       SAPSM saves energy by prioritizing apps and is hence different
 Modifications to network infrastructure, e.g.,
       Napman (Mobisys 10) reduces contention by staggering beacon
        period of each client and ensures the fairness of AP scheduling
       Avoiding the Rush Hours (Mobisys 11) staggers beacon periods
        by eavesdropping on APs in close proximity
       SAPSM runs on client and is hence complementary

http://www.cs.wm.edu/~xqi        Ubicomp 2012                             20
Conclusions

 Effective WiFi power management is important

 SAPSM assists users in automatically determining each
  apps priority with an offline classifier
       In future, we plan to develop personal classifier or one classifier
        for each potential user group


 SAPSM achieves 13%~56% energy saving by
       prioritizing apps
       only allowing high priority apps to trigger the switch to CAM

http://www.cs.wm.edu/~xqi         Ubicomp 2012                            21
Questions?




http://www.cs.wm.edu/~xqi      Ubicomp 2012   22
Thank You!

                              The End




http://www.cs.wm.edu/~xqi      Ubicomp 2012   23
Sprint HTC Hero Adaptive PSM




     1 second, non-configurable

http://www.cs.wm.edu/~xqi    Ubicomp 2012    24
 Setup
       A Linux server runs hostpad as AP
       Server varies pkt rates, 30s for each rate
       512 bytes pkts for MCAST, UDP and ICMP based unwanted
        traffic
        60 bytes SYN for TCP-based unwanted traffic
       Each device is less than one meter away from the AP
       Turning off all apps using network and other network
        interface, e.g., Bluetooth, 3G



http://www.cs.wm.edu/~xqi   Ubicomp 2012                    25
Observations




 Various UP thresholds, some of them are small, e.g. 1pkt/s for HTC
  Hero
 All devices are susceptible to unwanted traffic based on UDP and
  ICMP
 Energy waste caused by such unwanted traffic


http://www.cs.wm.edu/~xqi      Ubicomp 2012                            26
To Be Smart

 Utilize information from lay 3 and above in network stack
 Prevent unimportant traffic from triggering the switch
  to CAM
       unimportant traffic - delay tolerant traffic and traffic
        discarded by TCP/IP stack (no listening port)
 STPM (Mobicom `03) considers traffic delay sensitivity (or
  priority) assigned by developers
      gap between developers and users
             65-75% energy consumption of free apps deliver advertisements
              [EuroSys2012]. Developers may not be motivated to indicate their
              app is low priority.


http://www.cs.wm.edu/~xqi             Ubicomp 2012                               27
Ideas and Challenges

 Ideas:
       Associates a priority with each app
       Users decide the priority of each app
       Only high priority (or delay sensitive) apps traffic can
        trigger the switch to CAM
       Other apps traffic cannot
 Challenges:
       How to assist even non-technical users to decide an apps
        priority?
       How to track an apps priority through the system
        efficiently?

http://www.cs.wm.edu/~xqi          Ubicomp 2012                     28

More Related Content

SAPSM Ubicomp 2012

  • 1. SAPSM: Smart Adaptive 802.11 PSM for Smartphones Andrew J. Pyles, Xin Qi, Gang Zhou, Matthew Keally and Xue Liu* College of William and Mary, *McGill University http://www.cs.wm.edu/~xqi Ubicomp 2012 1
  • 2. WiFi A Significant Source of Energy Consumption Mobile data grows fast WiFi usage accounts for: 94.2% in 2011 (Cisco Visual Networking Index 2011-2016) 80% (estimated) in 2015 Low Power WiFi power consumption 1200 Active(Idle) 1000 High in Active Mode Active (Xmit) Power (mW) 800 600 400 200 0 [SiFi - Ubicomp `11, Bartendr - Mobicom `10] http://www.cs.wm.edu/~xqi Ubicomp 2012 Screen 2 BT WiFi
  • 3. Static PSM Static Power Save Mode (PSM): Beacon PS-Poll (Smartphone) (Access Point) Sleeping Sleeping Beacon Interval Beacon Interval Awake Awake Awake Pros: Saving Energy Cons: Adding Delay (100~300ms) Unacceptable for delay sensitive Apps, such as http://www.cs.wm.edu/~xqi Ubicomp 2012 3
  • 4. Adaptive PSM Adaptive PSM Null: Null : Awake Beacon nobuffering buffering Sleep PS-Poll (Smartphone) (Access Point) PSM CAM Awake Power(CAM) 20*Power(PSM) pkt. rate CAM True timeout? >thr.? CAM = Constantly Active Mode Be careful of the switch to CAM. http://www.cs.wm.edu/~xqi Ubicomp 2012 4
  • 5. Adaptive PSM Behavior of Different Handheld Devices Adaptive PSM appears to only use information from MAC layer to control the switch to CAM Is it consistent across all devices? We evaluate Adaptive PSM behaviors on different devices UDP traffic with random port How to improve Adaptive PSM? All devices switch to CAM with spurious network traffic. Energy waste! http://www.cs.wm.edu/~xqi Ubicomp 2012 5
  • 6. To Be Smart Utilize information from lay 3 and above in network stack Prevent unimportant traffic from triggering the switch to CAM unimportant traffic - delay tolerant traffic and traffic discarded by TCP/IP stack (no listening port) STPM (Mobicom `03) considers traffic delay sensitivity assigned by developers gap between developers and users 65-75% energy consumption of free apps deliver advertisements [EuroSys2012]. Developers may not be motivated to indicate their app is delay tolerant http://www.cs.wm.edu/~xqi Ubicomp 2012 6
  • 7. Ideas and Challenges Ideas: Associates a priority with each app Users decide the priority of each app Only high priority (or delay sensitive) apps traffic can trigger the switch to CAM Other apps traffic cannot Challenges: How to assist even non-technical users to decide an apps priority? How to track an apps priority through the system efficiently? http://www.cs.wm.edu/~xqi Ubicomp 2012 7
  • 8. Outline SAPSM Design Evaluation Related Work Conclusions http://www.cs.wm.edu/~xqi Ubicomp 2012 8
  • 9. Constraints, Definitions and Hints Constraints: minimizes user interaction respects the critical path uses hints from system and apps Definitions - app priorities delay sensitive traffic ? allowed to switch to CAM ? High Priority Yes Yes Low Priority No No Hints background traffic delay tolerant traffic, e.g., SipDroid sets the entire system to be low priority as screen is off http://www.cs.wm.edu/~xqi Ubicomp 2012 9
  • 10. SAPSM Architecture Exposes driver internals to SAPSM Core Relays apps priority from APM to SAPSM Core Checks the priority of app each packet belongs to Updates the Adaptive PSM counter if high priority Collects networking usage of each app Classifies each app into high priority or low priority Interacts with users http://www.cs.wm.edu/~xqi Ubicomp 2012 10
  • 11. SAPSM Core Inbound Traffic Port 1 1 mapping being App1 UID1 True UID listened? App2 UID2 TCP/IP SAPSM Core High Priority List WiFi Driver Packet Updates thenothingcounter Does traffic http://www.cs.wm.edu/~xqi Ubicomp 2012 11
  • 12. SAPSM Core Outbound Traffic Packet 1 1 mapping App1 UID1 UID App2 UID2 TCP/IP SAPSM Core High Priority List WiFi Driver Resets Type of Service in IP header Does nothing http://www.cs.wm.edu/~xqi Ubicomp 2012 12
  • 13. Application Priority Manager Low priority for each app by default Polls each apps data rate by TrafficStats API Classifies each app to either high priority or low priority Provides interfaces for user to set priority http://www.cs.wm.edu/~xqi Ubicomp 2012 13
  • 14. SVM as Classifier Data collection a user study 14 participants 6 apps Network interactive apps: Android Market, web browser Network non-interactive apps: an offline game Ambiguous apps: Gmail, Facebook and Twitter Set the phone to static PSM Each participant uses each app for 10 minutes and is asked whether the observed latency is acceptable or not acceptable means low priority; otherwise high priority The RX and TX rates and traffic amounts are collected for each app http://www.cs.wm.edu/~xqi Ubicomp 2012 14
  • 15. 88.1% RXRate features are preferred Download data in background Tank Game is low priority 14/14 Ambiguous apps 47/56 http://www.cs.wm.edu/~xqi Ubicomp 2012 15
  • 16. Evaluation Do low priority applications save energy over high priority applications? How does the SAPSM solution save energy with typical use cases? Does general networking performance suffer for applications placed into high priority? http://www.cs.wm.edu/~xqi Ubicomp 2012 16
  • 17. Do low priority apps save energy? Traffic with no listening socket SAPSM is higher than Static PSM Low Priority Energy Inversion http://www.cs.wm.edu/~xqi Ubicomp 2012 17 Low priority apps achieve large energy saving at low rate
  • 18. Does SAPSM save energy with typical use cases? 4 clearly low priority apps: Streaming audio app, 128kbps Manually set as low priority Offline map app Classified as low priority RSS reader app Classified as low priority Social networking apps (Gmail, Facebook, and Twitter) running in background when screen is off Automatically set as low priority 44% 18% 56% 13% http://www.cs.wm.edu/~xqi Ubicomp 2012 18
  • 19. Does general networking performance suffer? Netperf a benchmark to measure network performance SAPSM 1 implements the socket checking by hashing table SAPSM achieves similar performance as Adaptive PSM http://www.cs.wm.edu/~xqi Ubicomp 2012 19
  • 20. Related Work Optimizing PSM behavior, e.g., PSMThrottling (ICNP 07) uses traffic shaping to add burstiness Micro power (Mobisys 08) predicts small sleep interval to save energy SAPSM saves energy by prioritizing apps and is hence different Modifications to network infrastructure, e.g., Napman (Mobisys 10) reduces contention by staggering beacon period of each client and ensures the fairness of AP scheduling Avoiding the Rush Hours (Mobisys 11) staggers beacon periods by eavesdropping on APs in close proximity SAPSM runs on client and is hence complementary http://www.cs.wm.edu/~xqi Ubicomp 2012 20
  • 21. Conclusions Effective WiFi power management is important SAPSM assists users in automatically determining each apps priority with an offline classifier In future, we plan to develop personal classifier or one classifier for each potential user group SAPSM achieves 13%~56% energy saving by prioritizing apps only allowing high priority apps to trigger the switch to CAM http://www.cs.wm.edu/~xqi Ubicomp 2012 21
  • 23. Thank You! The End http://www.cs.wm.edu/~xqi Ubicomp 2012 23
  • 24. Sprint HTC Hero Adaptive PSM 1 second, non-configurable http://www.cs.wm.edu/~xqi Ubicomp 2012 24
  • 25. Setup A Linux server runs hostpad as AP Server varies pkt rates, 30s for each rate 512 bytes pkts for MCAST, UDP and ICMP based unwanted traffic 60 bytes SYN for TCP-based unwanted traffic Each device is less than one meter away from the AP Turning off all apps using network and other network interface, e.g., Bluetooth, 3G http://www.cs.wm.edu/~xqi Ubicomp 2012 25
  • 26. Observations Various UP thresholds, some of them are small, e.g. 1pkt/s for HTC Hero All devices are susceptible to unwanted traffic based on UDP and ICMP Energy waste caused by such unwanted traffic http://www.cs.wm.edu/~xqi Ubicomp 2012 26
  • 27. To Be Smart Utilize information from lay 3 and above in network stack Prevent unimportant traffic from triggering the switch to CAM unimportant traffic - delay tolerant traffic and traffic discarded by TCP/IP stack (no listening port) STPM (Mobicom `03) considers traffic delay sensitivity (or priority) assigned by developers gap between developers and users 65-75% energy consumption of free apps deliver advertisements [EuroSys2012]. Developers may not be motivated to indicate their app is low priority. http://www.cs.wm.edu/~xqi Ubicomp 2012 27
  • 28. Ideas and Challenges Ideas: Associates a priority with each app Users decide the priority of each app Only high priority (or delay sensitive) apps traffic can trigger the switch to CAM Other apps traffic cannot Challenges: How to assist even non-technical users to decide an apps priority? How to track an apps priority through the system efficiently? http://www.cs.wm.edu/~xqi Ubicomp 2012 28

Editor's Notes

  • #2: Good MorningMy name is Xin Qi , from
  • #3: Recently, as smartphone becomes more and more popular, the mobile data usage keeps growing Here is a table from a recent cisco report, the mobile data traffic growth speed is fast these yearIt also reports that . It estimates the number will be 80% in 2015It is well known thatThis figure is drawn based on data from recent pubsThe Wifi component consumes much higher power than other component when it is in active mode.
  • #4: To reduce WIFi energy consumptionThe smartphone stops polling when no more buffered packets at AP and goes to sleep for a beacon intervalHowever, such sleeping interval adds delay
  • #5: Adaptive PSM is a tradeoff between energy and delayIn Adaptive PSM, when the smartphone is awake, as usual itHowever,In CAM, cancel buffering high powerAt the same time,Switch back to buffer packetsThrough experiments, we find that
  • #6: A question arises here is that is this behaviorTo find the answer, we The results are plotted X dimensionY dimensionFrom the figure you can see all devices are triggered to CAM by this spurious network traffic.
  • #7: In this paper, we plan to make smarterFirst, we utilizeWith these information, we can preventPrevious work such as STPM
  • #8: To tame the challenges, we have the following ideas
  • #9: In the rest of the talk, I will present the design of our system and its evaluation results.Then, I will briefly talk related work and conclude the talk.
  • #10: The design is restricted to the following three constraintsThe two hints we use in our design areFor example, sipdroid uses a service to transmit RTP packet in background, we dont want such traffic to be low prioritySecond, we set since when the screen is off, users do not care the delay anymore.
  • #11: There are mainly four components in SAPSM architectureBesides, it interacts with users to finally set each apps priority.
  • #12: SAPSM Core then compares the UID with those of high priority apps
  • #14: This interface queries user whether the network latency of this app is acceptable or not.If it is not acceptable, the user can set the app to be high priority for smaller latency.
  • #15: To train a svm classifier, we did a user study.In the study, there are 14 participants with different majorsTheir network interactive level depends the actual network usage.
  • #16: From the collected information, Smartphones are receivers rather than consumers of informationWe use cross validation to do the parameter selectionThere are three zones in the resulting classifierFirst, the classifier can accurately classify all 14 tank game instances into low priorityFor the ambiguous apps such as it can correctly classify 47 out of 56 instances.The apps in the right upper zone are those with both high and high. They are classified as low.. The results contradict intuition. One explanation could be that all the apps here download data in background and users do not care delay in such case
  • #17: We evaluate our design from three aspectsFirst, we check whetherSecond we check whether Third, we evaluate whether the general networking performance. Here we want to check the overhead of SAPSM.
  • #18: To see whether there is an energy saving for low priority apps,Second, we investigate the lowFrom previous slides, we know the power consumption of PSM is lower than that of CAM. However, the smartphone sends a polling packets for each data packet buffered at AP. When the data rate is high, the number of polling packet will also be high, it is an extra overhead compared to CAM.
  • #21: Infrastructure pronunciation
  • #27: --Did you zoom in before copying and pasting? This figure (also the one before) looks blurry when displayed. Zoom in first before copying and pasting will make it clear. Focus on UDP with random portICMP ping packetsremove