to Optimize Cellular Radio Usage Pavan Kumar, Ranjita Bhagwan, - - PowerPoint PPT Presentation

to optimize cellular radio usage
SMART_READER_LITE
LIVE PREVIEW

to Optimize Cellular Radio Usage Pavan Kumar, Ranjita Bhagwan, - - PowerPoint PPT Presentation

RadioJockey: Mining Program Execution to Optimize Cellular Radio Usage Pavan Kumar, Ranjita Bhagwan, Saikat Guha, Vishnu Navda, Ramachandran Ramjee, Dushyant Arora, Venkat Padmanabhan, George Varghese Microsoft Research India Problem Context:


slide-1
SLIDE 1

RadioJockey: Mining Program Execution to Optimize Cellular Radio Usage

Pavan Kumar, Ranjita Bhagwan, Saikat Guha, Vishnu Navda, Ramachandran Ramjee, Dushyant Arora, Venkat Padmanabhan, George Varghese Microsoft Research India

slide-2
SLIDE 2

Problem Context: Overheads in Cellular Radio Usage

IDLE CELL_FACH CELL_DCH

Wakeup Timeout T1 Timeout T2

State transitions based on: (1) traffic volume (2) operator chosen timers

Tx/Rx Tx/Rx

2

50 100 150 200 250 300 350

5 10 15 20 25 30 Avg Current in mA Time in Seconds

IDLE

Tx/Rx

Ramp-up IDLE T1

Power Consumption

Radio Tail (15-20J) T2

Signaling

Transition # control messages IDLE  DCH 30 DCH  IDLE 2

Latency

Transition Secs IDLE  DCH 2 DCH  IDLE 20

slide-3
SLIDE 3

Existing Radio-tail Optimizations

  • 1. Amortize tail overhead by

shaping traffic

a) TailEnder [IMC 09]

  • 2. Adapt tail using Fast-dormancy

a) Based on application hints – TOP [ICNP 10] b) Based on client-side idle timers – Falaki et al. [IMC 10]

time prefetching batching

slide-4
SLIDE 4

Existing Radio-tail Optimizations

  • 1. Amortize tail overhead by

shaping traffic

a) TailEnder [IMC 09]

  • 2. Adapt tail using Fast-dormancy

a) Based on application hints – TOP [ICNP 10] b) Based on client-side idle timers – Falaki et al. [IMC 10]

time prefetching batching

Requires app changes Requires app changes + developer awareness Commonly used in many smartphones (3-5 sec timers)

slide-5
SLIDE 5

Fast Dormancy Woes

“Apple upset several operators last year when it implemented firmware 3.0

  • n the iPhone with a fast dormancy feature that prematurely requested a

network release only to follow on with a request to connect back to the network or by a request to re-establish a connection with the network …” What's really causing the capacity crunch? - FierceWireless

Disproportionate increase in signaling traffic caused due to increase in use of fast-dormancy

slide-6
SLIDE 6

Problem #1: Chatty Background Apps

  • No distinctive knee
  • High mispredictions for fixed inactivity timer

CDF of inter-packet times for Outlook application running in background

slide-7
SLIDE 7

Problem #2: Varying Network Conditions

  • Signal quality variations and handoffs cause

sudden latency spikes

  • Aggressive timers frequently misfire

CDF of inter-packet times for Lync application for different network conditions

slide-8
SLIDE 8

Objectives

  • Design a fast-dormancy policy for long-

standing background apps which

– Achieves energy savings – Without increasing signaling overhead – Without requiring app modifications

slide-9
SLIDE 9

When to Invoke Fast Dormancy?

time App traffic

Energy savings when 𝑢𝑡 ≥ 3 𝑡𝑓𝑑 and fast dormancy is invoked immediately after end of session

DCH fast dormancy Energy Profile

End of session - EOS

≥ 𝑢𝑡

Packets within session

DCH DCH IDLE Example 1 Example 2

slide-10
SLIDE 10

Problem: predict end of session (or onset of network inactivity) Idea: exploit unique application characteristics (if any) at end of sessions

Typical operations performed:

  • UI element update
  • Memory allocation or cleanup
  • Processing received data

System calls invoked by an app can provide insights into the operations being performed

slide-11
SLIDE 11

Time Network traffic System call trace

WaitForSingleObjectEx( ) CloseHandle( ) ReleaseMutex( ) DispatchMessageW( ) FreeLibrary( )

> 𝑢𝑡 secs

…( ) …( ) packet in session 2 Packets in Session 1 …( )

𝑢𝑥

EOS data-item ACTIVE data-item

𝑢𝑥

  • Technique: Supervised learning using C5.0 decision trees
  • Data item: system calls observed immediately after a packet

(encoded as bit-vector)

  • Label: ACTIVE or EOS

P1 P2 P3

𝑢𝑥

CloseHandle( ) FreeLibrary( ) …( ) …( ) …( ) EOS data-item

Predicting onset of network inactivity

slide-12
SLIDE 12

Decision tree example

Rules: (DispatchMessage & ! send) => EOS ! DispathcMessage => ACTIVE (DispatchMessage & send) => ACTIVE DispatchMessage send ACTIVE EOS ACTIVE 1 1 Application: gnotify

slide-13
SLIDE 13

RadioJockey System

13

System Calls + Network Traffic Training using C5.0

traces

Offline learning Runtime Engine

App System Calls + Packet timestamps Tree- matching (run-time) Cellular Radio Interface Fast Dormancy App 1 Rules App k Rules

slide-14
SLIDE 14

Evaluation Overview

  • 1. Trace driven simulations on traces from 14

applications (Windows and Android platform) on 3G network

– Feature set evaluation for training – variable workloads and network characteristics – 20-40% energy savings and 1-4% increase in signaling

  • ver 3 sec idle timer
  • 2. Runtime evaluation on 3 concurrent background

applications on Windows

slide-15
SLIDE 15

Energy drain and signaling overhead

Energy consumed normalized to a 3-second idle timer approach Signaling overhead normalized to a 3-second idle timer approach

slide-16
SLIDE 16

Runtime Evaluation with Concurrent Background Applications

  • 22-24% energy savings at a cost of 4-7 % signaling overhead
  • Marginal increase in signaling due to variance in packet timestamps
slide-17
SLIDE 17

Summary

  • RadioJockey predicts onset of network

inactivity using system calls invoked by background apps

  • Requires no modifications to existing apps –

legacy, native and managed apps

  • Achieves energy savings of 20-40% with

marginal increase in signaling overhead

slide-18
SLIDE 18

Backup Slides

slide-19
SLIDE 19

Predict using only network features

  • Features : IP, ports, TCP flags, HTTP headers
  • Performance:

– Energy savings only for simple apps – No good rules for complex apps(Outlook and Lync) – Cannot handle apps that use encryption

slide-20
SLIDE 20

Varying networks and workloads

Energy consumed normalized to a 3-second idle timer approach

slide-21
SLIDE 21

Feature Space Exploration and Choice of Window Size

  • PrevState feature captures temporal state information
  • Adding PrevState into learning boosted savings
  • 𝑢𝑥of 0.5 seconds sufficient for most applications
slide-22
SLIDE 22

Understanding Fast Dormancy Feature

  • Client controlled
  • Tail energy reduced to ~1.5J
  • Without network support

– RRC connection torn down – DCH/FACH to IDLE – Ramp-up costs up to 30 msgs

  • With network support

– Ramp-down to PCH instead of IDLE – Ramp-up to DCH incurs 12 msgs