Procrastinator: pacing mobile apps' usage of the network

Lenin Ravindranath, Sharad Agarwal, Jitu Padhye, and Chris Riederer

Abstract

Generations of computer programmers are taught to prefetch network objects in computer science classes. In practice, prefetching can be harmful to the user's wallet when she is on a limited or pay-per-byte cellular data plan. Many popular, professionally-written smartphone apps today prefetch large amounts of network data that the typical user may never use. We present Procrastinator, which automatically decides when to fetch each network object that an app requests. This decision is made based on whether the user is on Wi-Fi or cellular, how many bytes are remaining on the user's data plan, and whether the object is needed at the present time. Procrastinator does not require app developer effort, nor app source code, nor OS changes – it modifies the app binary to trap specific system calls and inject custom code. Our system can achieve as little as no savings to 4X savings in bytes transferred, depending on the user and the app.

Details

Publication typeProceedings
Published inACM MobiSys
PublisherACM International Conference on Mobile Systems, Applications, and Services

Previous versions

Lenin Ravindranath Sivalingam, Sharad Agarwal, Jitu Padhye, and Chris Reiderer. Give in to Procrastination and Stop Prefetching, ACM HotNets, 21 November 2013.

> Publications > Procrastinator: pacing mobile apps' usage of the network