Automated Mobile App QoE Diagnosis with Cross-layer Analysis

 
QoE Doctor: Diagnosing Mobile App QoE 
with
Automated UI Control 
&
 
Cross-layer Analysis
 
Qi Alfred Chen
, Haokun Luo, Sanae Rosen, Z. Morley Mao,
Karthik Iyer†, Jie Hui†, Kranthi Sontineni†, Kevin Lau
University of Michigan
, 
T-Mobile USA Inc.
 
*The views presented in this talk are as individuals and do not necessarily reflect any position of T-Mobile.
Mobile app QoE
Mobile apps are increasingly important for
our daily lives
2
Mobile app QoE
Mobile apps are increasingly important for
our daily lives
3
 
Expect
 
Faster
 response
 
Less
 energy
 
Less
 mobile data
Quality of
Experience (QoE)
Challenges in studying QoE
 
Measurement methodology
Relying on user study
Costly
, 
hard to control
 
behavior
 
variations
Instrumenting the source code or binary
Hard to 
automate 
testing
Not applicable
 to 
popular apps
 like Facebook
Result analysis
Complicated by 
multi-layer dynamics
 & 
inter-
dependencies 
in system & network stacks
4
Our solution: QoE Doctor
 
Support more 
accurate
, 
systematic
, and
repeatable
 QoE measurements & analysis
Introduce 
UI automation
 into QoE
measurement
Automatically
 replay user behavior
Accurately
 measure UI layer QoE metrics
No need
 
to modify app source code or the system
5
Our solution: QoE Doctor
 
Result analysis
Support
 multi-layer diagnosis 
of QoE problems
Collect data across 
application
, 
transport
, 
network
,
and 
cellular radio link 
layers
Enable 
cross-layer analysis
6
Related work
7
 
QoE
 
Test
automation
 
Popular
apps
 
Cross-layer
analysis
 
Monkey, PUMA,
AMC, etc.
 
Joumblatt, et al.
Infocom’13, etc.
 
AppInsight,
Timecard, SIF, etc.
 
Prometheus
 
QoE Doctor
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
QoE metrics in focus
 
In this work, we focus on measuring
User-perceived latency
 
 
 
 
 
Mobile data consumption
Mobile energy consumption
Network energy
8
Design overview
9
UI
controller
App-specific
QoE-related
behavior
control
QoE-
related UI
logger
Network
logger
RRC/RLC
logger
Application layer
analyzer
Transport/network
layer analyzer
RRC/RLC layer
analyzer
 
QoE-aware UI controller
 
Multi-layer QoE analyzer
 
Cross-layer
analyzer
 
Cross-layer
analyzer
Design overview
10
UI
controller
App-specific
QoE-related
behavior
control
QoE-
related UI
logger
Network
logger
RRC/RLC
logger
Application layer
analyzer
Transport/network
layer analyzer
RRC/RLC layer
analyzer
QoE-aware UI controller
Multi-layer QoE analyzer
Cross-layer
analyzer
Cross-layer
analyzer
UI
controller
UI controller
 
Use Android 
built-in
 
UI testing APIs
Send UI events to the app
Designed for developer self-testing
Can be used to test any apps after 
re-signing the apk
Powerful
 in QoE study
Share app data, can 
directly
 access 
UI tree 
in real time
Important for 
user-perceived latency measurement
We are 
the first
 
to use this UI automation
technique for mobile app QoE measurement
11
UI controller
 
UI control paradigm:
12
See
Inter-
act
Wait
 
A
 unique 
feature due to
user-perceived latency
measurement:
Wait until 
the right UI
events
 instead of
using a heuristic timer
 
latency
Design overview
13
UI
controller
App-specific
QoE-related
behavior
control
QoE-
related UI
logger
Network
logger
RRC/RLC
logger
Application layer
analyzer
Transport/network
layer analyzer
RRC/RLC layer
analyzer
QoE-aware UI controller
Multi-layer QoE analyzer
Cross-layer
analyzer
Cross-layer
analyzer
App-specific
QoE-related
behavior
control
UI
controller
User behavior replay
 
Replay using UI control
:
Facebook:
Post status/check-in/photos
Pull-to-update
YouTube:
Watch videos
Web browsers
    (Chrome, Firefox, …)
Load web pages
14
 
Measure
 
Upload latency
 
Update latency
 
Initial loading time
 
Rebuffering ratio
 
Page loading time
Design overview
15
UI
controller
App-specific
QoE-related
behavior
control
QoE-
related UI
logger
Network
logger
RRC/RLC
logger
Application layer
analyzer
Transport/network
layer analyzer
RRC/RLC layer
analyzer
QoE-aware UI controller
Multi-layer QoE analyzer
Cross-layer
analyzer
Cross-layer
analyzer
App-specific
QoE-related
behavior
control
QoE-
related UI
logger
Network
logger
RRC/RLC
logger
Application layer
analyzer
Transport/network
layer analyzer
RRC/RLC layer
analyzer
Wait
TCPDUMP
QxDM
User-perceived
latency
Mobile data
consumption
Mobile energy
consumption
Network
logger
Design overview
16
UI
controller
App-specific
QoE-related
behavior
control
QoE-
related UI
logger
Network
logger
RRC/RLC
logger
Application layer
analyzer
Transport/network
layer analyzer
RRC/RLC layer
analyzer
QoE-aware UI controller
Multi-layer QoE analyzer
Cross-layer
analyzer
Cross-layer
analyzer
 
Cross-layer
analyzer
 
Cross-layer
analyzer
Help diagnose
 
root
cause
 
of QoE problems
Cross-layer analyzer
17
 
Application
layer
 
Network layer
 
Cellular radio
link  layer
 
Transport  layer
TCP flow
IP packet
IP packet
IP packet
PDU
PDU
PDU
PDU
PDU
PDU
PDU
 
User-perceived latency
Experiments: study app QoE
 
Quantify factors that may impact QoE of
popular apps
Various factors we studied
:
Network
 
type
 and 
quality
Design & configuration in 
apps
Design & implementation on 
carrier side
18
YouTube: carrier throttling impact
 
A carrier policy
: traffic throttled after
exceeding the data limit
How much does it affect 
QoE
?
Compare throttled vs. unthrottled for
YouTube videos
Throttle to ~
120 kbps
 in 
3G
 & 
LTE 
by the carrier
100 random YouTube videos (total length ~ 35 hrs)
Diverse
 in both the 
video length
 (1 min to 0.5 hr) and
video popularity 
(1000 – 10 billion views)
 
19
YouTube: carrier throttling impact
20
Throttling causes 
>
 
30 sec (15×)
 
more
 
initial
loading time
 and increases 
the rebuffering
ratio 
from ~ 
0% 
to
 50% 
on average
.
YouTube: carrier throttling impact
21
Better
 
initial loading time 
and
rebuffering ratio 
in 
3G
 than in 
LTE
under throttling. 
Why?
YouTube: carrier throttling impact
 
Locally control bandwidth
repeat the bandwidth limits of 100, 200, 300, 400,
and 500 kbps
22
From cross-layer analyzer, in
 LTE
around 
96.6% (40 MB) 
more data
 is
downloaded than in 
3G 
for 
~90 s videos
!
Default video resolution is 
HQ
 
for 
3G
and 
HD
 
for 
LTE
Should
 
not
 adapt video quality
simply based on network type!
Fixed!
Facebook: post upload time breakdown
Measure 
device
 and 
network latency 
when
posting a status, a check-in, and 2 photos
23
 
Sometimes
no
 
network
latency
, 
why
?
 
[Finding]
: network
delay 
not
 always
on the critical path!
Facebook: post upload time breakdown
Measure 
device
 and 
network latency 
when
posting a status, a check-in, and 2 photos
24
 
Big difference
 in
network latency
between 
3G
 and
LTE
, 
why
?
 
Let’s
 further
breakdown !
Facebook: post upload time breakdown
Measure 
device
 and 
network latency 
when
posting a status, a check-in, and 2 photos
25
 
[Finding]
: 
Much
longer 
transmission
delay
 in 3G,
likely caused by
smaller transmitting
segments in 3G.
Other results
 
App design & configuration impact
Changing one 
Facebook default configuration 
can
reduce 
≥ 20% 
of 
data
 & 
energy
 consumption
Compared to WebView, ListView  version Facebook
reduces
 
≥ 67% 
device latency
,
 ≥ 30% 
network
latency
, 
≥ 77%
 
downlink data consumption
YouTube ads 
reduce
 the 
initial loading time
 of the
main video, but 
doubling 
the 
total loading 
on cellular
networks.
Carrier side design
Simplifying the 3G RRC state machine can 
reduce
web page loading time
 by 
22%
 for web browsing
26
 
Summary
 
QoE Doctor
 for systematic mobile app QoE
measurement
Automated
 replay of QoE-related user behavior
Accurate
 measurement  of QoE metric at UI layer
Multi-layer 
diagnosis
 
of QoE problems
Applicable
 to popular apps
Systematically quantify various factors that
impact QoE of popular apps
 
27
 
 
Questions?
 
28
Slide Note
Embed
Share

This work presents the QoE Doctor, a solution for accurate and repeatable QoE measurements and analysis in mobile apps. By introducing UI automation, it enables the replay of user behavior to measure UI layer QoE metrics without modifying app source code. The QoE Doctor also supports multi-layer diagnosis of QoE problems by collecting data across application, transport, network, and cellular layers for cross-layer analysis. It addresses challenges such as costly user studies and complex result analysis, focusing on metrics like user-perceived latency, mobile data consumption, and energy usage.

  • QoE Diagnosis
  • Mobile Apps
  • UI Automation
  • Cross-layer Analysis
  • User Experience

Uploaded on Mar 20, 2024 | 3 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. QoE Doctor: Diagnosing Mobile App QoE with Automated UI Control & Cross-layer Analysis Qi Alfred Chen, Haokun Luo, Sanae Rosen, Z. Morley Mao, Karthik Iyer , Jie Hui , Kranthi Sontineni , Kevin Lau University of Michigan, T-Mobile USA Inc. *The views presented in this talk are as individuals and do not necessarily reflect any position of T-Mobile.

  2. Mobile app QoE Mobile apps are increasingly important for our daily lives 2

  3. Mobile app QoE Mobile apps are increasingly important for our daily lives Faster response Expect Less energy Less mobile data 3

  4. Challenges in studying QoE Measurement methodology Relying on user study Costly, hard to control behaviorvariations Instrumenting the source code or binary Hard to automate testing Not applicable to popular apps like Facebook Result analysis Complicated by multi-layer dynamics & inter- dependencies in system & network stacks 4

  5. Our solution: QoE Doctor Support more accurate, systematic, and repeatable QoE measurements & analysis Introduce UI automation into QoE measurement Automatically replay user behavior Accurately measure UI layer QoE metrics No need to modify app source code or the system 5

  6. Our solution: QoE Doctor Result analysis Support multi-layer diagnosis of QoE problems Collect data across application, transport, network, and cellular radio link layers Enable cross-layer analysis 6

  7. Related work Test automation Popular apps Cross-layer analysis QoE Monkey, PUMA, AMC, etc. Joumblatt, et al. Infocom 13, etc. AppInsight, Timecard, SIF, etc. Prometheus QoE Doctor 7

  8. QoE metrics in focus In this work, we focus on measuring User-perceived latency Mobile data consumption Mobile energy consumption Network energy 8

  9. Design overview QoE-aware UI controller Multi-layer QoE analyzer QoE- related UI logger Application layer analyzer UI controller Cross-layer analyzer Network logger Transport/network layer analyzer Cross-layer analyzer App-specific QoE-related behavior control RRC/RLC logger RRC/RLC layer analyzer 9

  10. Design overview QoE-aware UI controller Multi-layer QoE analyzer QoE- related UI logger UI UI Application layer analyzer controller controller Cross-layer analyzer Network logger Transport/network layer analyzer Cross-layer analyzer App-specific QoE-related behavior control RRC/RLC logger RRC/RLC layer analyzer 10

  11. UI controller Use Android built-inUI testing APIs Send UI events to the app Designed for developer self-testing Can be used to test any apps after re-signing the apk Powerful in QoE study Share app data, can directly access UI tree in real time Important for user-perceived latency measurement We are the firstto use this UI automation technique for mobile app QoE measurement 11

  12. UI controller A unique feature due to user-perceived latency measurement: Wait until the right UI events instead of using a heuristic timer UI control paradigm: See Inter- act Wait latency 12

  13. Design overview QoE-aware UI controller Multi-layer QoE analyzer QoE- related UI logger UI UI Application layer analyzer controller controller Cross-layer analyzer Network logger Transport/network layer analyzer Cross-layer analyzer App-specific QoE-related behavior App-specific QoE-related behavior control control RRC/RLC logger RRC/RLC layer analyzer 13

  14. User behavior replay Replay using UI control: Facebook: Post status/check-in/photos Pull-to-update YouTube: Watch videos Web browsers (Chrome, Firefox, ) Load web pages Measure Upload latency Update latency Initial loading time Rebuffering ratio Page loading time 14

  15. Design overview QoE-aware UI controller Multi-layer QoE analyzer QoE- related UI logger logger QoE- related UI Application layer analyzer analyzer User-perceived latency Application layer UI controller Wait Cross-layer analyzer Network Transport/network layer analyzer Mobile data consumption Network logger logger Transport/network layer analyzer Cross-layer analyzer RRC/RLC layer analyzer Mobile energy consumption App-specific QoE-related behavior App-specific QoE-related behavior control control TCPDUMP RRC/RLC logger logger RRC/RLC RRC/RLC layer analyzer QxDM 15

  16. Design overview QoE-aware UI controller Multi-layer QoE analyzer Help diagnoseroot causeof QoE problems QoE- related UI logger Application layer analyzer UI controller Cross-layer analyzer analyzer Cross-layer Network logger logger Network Transport/network layer analyzer Cross-layer analyzer analyzer App-specific QoE-related behavior control Cross-layer RRC/RLC logger RRC/RLC layer analyzer 16

  17. Cross-layer analyzer User-perceived latency Application layer Transport layer TCP flow IP packet IP packet IP packet Network layer Cellular radio link layer PDU PDU PDU PDU PDU PDU PDU 17

  18. Experiments: study app QoE Quantify factors that may impact QoE of popular apps Various factors we studied: Network type and quality Design & configuration in apps Design & implementation on carrier side 18

  19. YouTube: carrier throttling impact A carrier policy: traffic throttled after exceeding the data limit How much does it affect QoE? Compare throttled vs. unthrottled for YouTube videos Throttle to ~120 kbps in 3G & LTE by the carrier 100 random YouTube videos (total length ~ 35 hrs) Diverse in both the video length (1 min to 0.5 hr) and video popularity (1000 10 billion views) 19

  20. YouTube: carrier throttling impact Throttling causes >30 sec (15 loading time and increases the rebuffering ratio from ~ 0% to 50% on average. ) more initial 20

  21. YouTube: carrier throttling impact Better initial loading time and rebuffering ratio in 3G than in LTE under throttling. Why? 21

  22. YouTube: carrier throttling impact QoE-aware UI controller Multi-layer QoE analyzer Locally control bandwidth repeat the bandwidth limits of 100, 200, 300, 400, and 500 kbps around 96.6% (40 MB) more data is downloaded than in 3G for ~90 s videos! Default video resolution is HQ for 3G and HD for LTE Should not adapt video quality simply based on network type! QoE-related behavior control RRC/RLC logger QoE- Application layer Application layer analyzer analyzer UI From cross-layer analyzer, in LTE related UI logger controller Cross-layer Cross-layer analyzer analyzer Transport/network Network logger Transport/network layer analyzer layer analyzer App-specific Cross-layer analyzer RRC/RLC layer analyzer 22

  23. Facebook: post upload time breakdown Measure device and network latency when posting a status, a check-in, and 2 photos Sometimes nonetwork latency, why? [Finding]: network delay not always on the critical path! 23

  24. Facebook: post upload time breakdown QoE-aware UI controller Multi-layer QoE analyzer Measure device and network latency when posting a status, a check-in, and 2 photos controller logger QoE- related UI Application layer analyzer UI Big difference in network latency between 3G and LTE, why? layer analyzer layer analyzer Cross-layer analyzer Transport/network Transport/network Network logger App-specific QoE-related behavior control Cross-layer analyzer RRC/RLC layer Cross-layer analyzer Let s further breakdown ! RRC/RLC layer analyzer analyzer RRC/RLC logger 24

  25. Facebook: post upload time breakdown Measure device and network latency when posting a status, a check-in, and 2 photos [Finding]: Much longer transmission delay in 3G, likely caused by smaller transmitting segments in 3G. 25

  26. Other results App design & configuration impact Changing one Facebook default configuration can reduce 20% of data & energy consumption Compared to WebView, ListView version Facebook reduces 67% device latency, 30% network latency, 77%downlink data consumption YouTube ads reduce the initial loading time of the main video, but doubling the total loading on cellular networks. Carrier side design Simplifying the 3G RRC state machine can reduce web page loading time by 22% for web browsing 26

  27. Summary QoE Doctor for systematic mobile app QoE measurement Automated replay of QoE-related user behavior Accurate measurement of QoE metric at UI layer Multi-layer diagnosis of QoE problems Applicable to popular apps Systematically quantify various factors that impact QoE of popular apps 27

  28. Questions? 28

Related


More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#