Timecard: Controlling User-Perceived Delays in Server-Based Mobile Applications Lenin Ravindranath, Jitu Padhye, Ratul Mahajan, Hari Balakrishnan.

Slides:



Advertisements
Similar presentations
Staying in Sync with Cloud 2 Device Messaging. About Me Chris Risner Twitter: chrisrisner.
Advertisements

BreadCrumbs: Forecasting Mobile Connectivity Anthony Nicholson and Brian Noble University of Michigan Presented by: Scott Winkleman.
VTrack: Energy-Aware Traffic Delay Estimation Using Mobile Phones Lenin Ravindranath, Arvind Thiagarajan, Katrina LaCurts, Sivan Toledo, Jacob Eriksson,
My first computer: The Apple ][ It wanted to be programmed.
CS 443 Advanced OS Fabián E. Bustamante, Spring 2005 Resource Containers: A new Facility for Resource Management in Server Systems G. Banga, P. Druschel,
VTrack: Accurate, Energy-Aware Road Traffic Delay Estimation Using Mobile Phones Arvind Thiagarajan, Lenin Ravindranath, Katrina LaCurts, Sivan Toledo,
University of Michigan Electrical Engineering and Computer Science Anatomizing Application Performance Differences on Smartphones Junxian Huang, Qiang.
Trace Analysis Chunxu Tang. The Mystery Machine: End-to-end performance analysis of large-scale Internet services.
AppInsight: Mobile App Performance Monitoring in the Wild
Minimizing Energy for Wireless Web Access with Bounded Slowdown Ronny Krashinsky and Hari Balakrishnan MIT Laboratory for Computer Science {ronny,
VanarSena: Automated App Testing. App Testing Test the app for – performance problems – crashes Testing app in the cloud – Upload app to a service – App.
Green Computing Energy in Location-Based Mobile Value-Added Services Maziar Goudarzi.
Automatic and Scalable Fault Detection for Mobile Applications Lenin Ravindranath, Suman Nath, Jitu Padhye, Hari Balakrishnan.
Dynamic Adaptive Streaming over HTTP2.0. What’s in store ▪ All about – MPEG DASH, pipelining, persistent connections and caching ▪ Google SPDY - Past,
A Context Aware Framework Mark Assad Supervisor: Bob Kummerfeld.
Location based social networking on Android phones – integrated with Facebook. Simple and easy to use.
Albert Greenberg, Cheng Huang, Randy Kern, Dave Maltz, Jitu Padhye, Parveen Patel, Lihua Yuan *with help from MurariS and others in COSD.
Available bandwidth measurement as simple as running wget D. Antoniades, M. Athanatos, A. Papadogiannakis, P. Markatos Institute of Computer Science (ICS),
Internet and Intranet Protocols and Applications Section V: Network Application Performance Lecture 11: Why the World Wide Wait? 4/11/2000 Arthur P. Goldberg.
Microsoft Research Shujaat Hussain. Cloud Faster! Low latency web transactions …. especially important to our key online properties.
5/12/05CS118/Spring051 A Day in the Life of an HTTP Query 1.HTTP Brower application Socket interface 3.TCP 4.IP 5.Ethernet 2.DNS query 6.IP router 7.Running.
Cabernet: Vehicular Content Delivery Using WiFi Jakob Eriksson, Hari Balakrishnan, Samuel Madden MIT CSAIL MOBICOM '08 Network Reading Group, NRL, UCLA.
Reducing Flow-Completion Time for Small Flows by Modifying Slow-Start Affan Rauf ( )
Junxian Huang 1 Feng Qian 2 Yihua Guo 1 Yuanyuan Zhou 1 Qiang Xu 1 Z. Morley Mao 1 Subhabrata Sen 2 Oliver Spatscheck 2 1 University of Michigan 2 AT&T.
Augmenting Mobile 3G Using WiFi Aruna Balasubramanian Ratul Mahajan Arun Venkataramani University of Massachusetts Microsoft Research.
Niranjan Balasubramanian Aruna Balasubramanian Arun Venkataramani University of Massachusetts Amherst Energy Consumption in Mobile Phones: A Measurement.
Presented by Tao HUANG Lingzhi XU. Context Mobile devices need exploit variety of connectivity options as they travel. Operating systems manage wireless.
Christopher Bednarz Justin Jones Prof. Xiang ECE 4986 Fall Department of Electrical and Computer Engineering University.
A measurement study of vehicular internet access using in situ Wi-Fi networks Vladimir Bychkovsky, Bret Hull, Allen Miu, Hari Balakrishnan, and Samuel.
 Zhichun Li  The Robust and Secure Systems group at NEC Research Labs  Northwestern University  Tsinghua University 2.
Multimedia and Mobile communications Laboratory Augmenting Mobile 3G Using WiFi Aruna Balasubramanian, Ratul Mahajan, Arun Venkataramani Jimin.
Characterizing and Modeling the Impact of Wireless Signal Strength on Smartphone Battery Drain Ning Ding Xiaomeng Chen Abhinav Pathak Y. Charlie Hu 1 Daniel.
Web Overview The birth of Web: 1989 Now Web is about everything – Business (HR systems, e.g. NUHR) – Online Shopping (Amazon), Banking (Citibank, Chase)
Best-Case WiBro Performance for a Single Flow 1 MICNET 2009 Shinae Woo †, Keon Jang †, Sangman Kim † Soohyun Cho *, Jaehwa Lee *, Youngseok Lee ‡, Sue.
A First Look at Traffic on Smartphones Hossein Falaki Dimitrios Lymberopoulos Ratul Mahajan Srikanth Kandula Deborah Estrin.
Protocol(TCP/IP, HTTP) 송준화 조경민 2001/03/13. Network Computing Lab.2 Layering of TCP/IP-based protocols.
Informed Mobile Prefetching T.J. Giuli † Christopher Peplin † David Watson †‡ Brett Higgins Jason Flinn Brian Noble †‡
C3: Cutting Tail Latency in Cloud Data Stores via Adaptive Replica Selection Marco Canini (UCL) with Lalith Suresh, Stefan Schmid, Anja Feldmann (TU Berlin)
3: Transport Layer3-1 Where we are in chapter 3 Last time: r TCP m Reliable transfer m Flow control m Connection management r principles of congestion.
ErdOS Narseo Vallina-Rodríguez + Jon Crowcroft NETOS Talket - 25th May 2010.
Timecard: Controlling User-Perceived Delays in Server-Based Mobile Applications Lenin Ravindranath, Jitu Padhye, Ratul Mahajan, Hari Balakrishnan.
OPERETTA: An Optimal Energy Efficient Bandwidth Aggregation System Karim Habak†, Khaled A. Harras‡, and Moustafa Youssef† †Egypt-Japan University of Sc.
AppInsight: Mobile App Performance Monitoring In The Wild Lenin Ravindranath, Jitu Padhye, Sharad Agarwal, Ratul Mahajan, Ian Obermiller, Shahin Shayandeh.
The Future of Transport Hari Balakrishnan LCS and EECS Massachusetts Institute of Technology
An Introduction to UDT Internet2 Spring Meeting Yunhong Gu Robert L. Grossman (Advisor) National Center for Data Mining University.
Suman Nath, Microsoft Research Felix Xiaozhu Lin, Rice University Lenin Ravindranath, MIT Jitu Padhye, Microsoft Research.
End-to-End Performance Analytics For Mobile Apps Lenin Ravindranath, Jitu Padhye, Ratul Mahajan Microsoft Research 1.
Improving TCP Performance over Wireless Networks
© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property.
FCM Workflow using GCM.
Improving and Controlling User-Perceived Delays in Mobile Apps Lenin Ravindranath By the time it loads, the church service is over. Too slow!!! Slow responsiveness,
Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published.
Adaptive Sleep Scheduling for Energy-efficient Movement-predicted Wireless Communication David K. Y. Yau Purdue University Department of Computer Science.
Emir Halepovic, Jeffrey Pang, Oliver Spatscheck AT&T Labs - Research
Improving and Controlling User-Perceived Delays in Mobile Apps Lenin Ravindranath By the time it loads, the church service is over. Too slow!!! Slow responsiveness,
© 2010 AT&T Intellectual Property. All rights reserved. AT&T and the AT&T logo are trademarks of AT&T Intellectual Property. TOP: Tail Optimization Protocol.
Development of a QoE Model Himadeepa Karlapudi 03/07/03.
KAIS T Location-Aided Flooding: An Energy-Efficient Data Dissemination Protocol for Wireless Sensor Networks Harshavardhan Sabbineni and Krishnendu Chakrabarty.
Exploring Cross-Application Cellular Traffic Optimization with Baidu TrafficGuard Zhenhua Li, Weiwei Wang, Tianyin Xu, Xin Zhong, Xiang-Yang Li, Yunhao.
1 Three ways to (ab)use Multipath Congestion Control Costin Raiciu University Politehnica of Bucharest.
A Software Energy Analysis Method using Executable UML for Smartphones Kenji Hisazumi System LSI Research Center Kyushu University.
Distributed Systems Lecture 5 Time and synchronization 1.
Open Data-Kit Sensors.
SmartAds: Bringing Contextual Ads to Mobile Apps
AppInsight: Mobile App Performance Monitoring in the Wild
Install and Run the Kronos Mobile App
Sentio: Distributed Sensor Virtualization for Mobile Apps
ECF: an MPTCP Scheduler to Manage Heterogeneous Paths
PredictRemainingTime
Kronos Mobile User Guide – CST Drivers
Presentation transcript:

Timecard: Controlling User-Perceived Delays in Server-Based Mobile Applications Lenin Ravindranath, Jitu Padhye, Ratul Mahajan, Hari Balakrishnan

Cloud Services Mobile Apps

Cloud Services Users are impatient – 100ms delay can cost substantial drop in revenue at Amazon – Similar observations from Google and Bing Response Time Matters

Control Variability in Response Times Request Response Fixed deadlines Trade-off quality for response time – More time to compute, better quality results – Flexible Services Deadline Server processing

The elephant is outside the room Request Response Server processing

The elephant is outside the room User click Server processing App Server Request Response Reading sensors Radio State (Radio wakeup) DNS and TCP connect Link quality (3G, HSPA+, LTE, Wifi) TCP state Datasize Phone model Parsing and Rendering UplinkDownlink Phone model User perceived delay Highly variable

No visibility into delays outside the service User click Server processing App Server Request Response Reading sensors Radio State (Radio wakeup) DNS and TCP connect Link quality (3G, HSPA+, LTE, Wifi) TCP state Datasize Phone model Parsing and Rendering UplinkDownlink Phone model User perceived delay Highly variable Unaware of end-to-end delays Clients with non-trivial external delays – Poor end-to-end response times Client with minimal external delays – Do not produce the best quality result Could adapt differently for different users

Timecard GetElapsedTime(); PredictDownstreamTime ( responseSize ); Time elapsed since user request Predicted downlink + app processing delay App Server

Timecard App Server Desired end-to-end delay App GetElapsedTime(); PredictDownstreamTime ( responseSize ); Adapt Processing Time

Timecard App Server Desired end-to-end delay App GetElapsedTime(); PredictDownstreamTime ( responseSize ); Adapt Response

Timecard App Server Desired end-to-end delay App GetElapsedTime(); PredictDownstreamTime ( responseSize );

Timecard GetElapsedTime(); PredictDownstreamDelay ( responseSize ); App Server

UI Thread Background Thread Server Threads UI dispatcher Thread start GPS start Web request GPS callback Event handler Spawn workers Request handler Send response Web callback App Server Challenges

UI Thread Background Thread App Server Challenges Transaction GetElapsedTime(); PredictDownstreamDelay ( responseSize ); No single reference clock Automatically collect data and learn

Online Transaction Tracking Time Synchronization Downstream Delay Predictor – Downlink delay – App processing delay Timecard

UI Thread Background Thread Server Threads App Server Transaction Tracking TC Transaction Context - Timestamps, transaction/device/network information TC GetTransaction(). GetStartTime();

Periodic time sync probes from app to server – Find drift and offset between clocks Use server clock as reference clock – Client maps local time to server time Synchronizing Time Efficient technique for probing – Aware of the radio state and traffic – Minimal extra delays – Energy efficient

Predicting Downstream Time App Server Downlink time App processing time PredictDownstreamTime ( responseSize );

Predicting Downlink Time Data size 1 KB to 40 KB of data RTT matters than throughput – Predict RTT TCP window state matters – Multiple RTTs – Estimate TCP Window & number of RTTs Complicated by middleboxes Middlebox Read TCP state Estimate TCP state

Predicting Downlink Time Data size Model downlink delay – Recent RTT – Bytes already transferred – Response size – Network provider – Client OS Middlebox Estimate TCP state Error in cellular network – median 17 ms – 90 th percentile 86ms

Predicting App Processing Time Parsing and rendering depends on data size Model processing time as a function of – Response data size – Phone model 4.6% (8ms) median error, 10% in 90 th percentile

Timecard Implementation App Server Transaction Tracking Transaction Tracking Transaction Tracking Transaction Tracking Logging Predictor Time Sync Data Collection Automatic Instrumentation WP Apps ASP.NET services APIs

Timecard can help control end-to-end delay Modified two services (and two apps) to use timecard Mobile Ads Service

0.1% runtime overhead Less than 1% memory overhead – Garbage collection in idle time Less than 1% network overhead Negligible battery overhead Timecard Overhead

Timecard GetElapsedTime(); PredictDownstreamDelay ( responseSize ); App Server Adapt Processing Time Adapt Response Desired end-to-end delay

Apply Timecard to Timecard SOSP Deadline GetElapsedTime(); Adapt quality and scope of the paper PredictDownstreamTime ( scope );