Lenin Ravindranath, Sharad Agarwal, Jitu Padhye, and Chris Riederer
16 June 2014
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.
|Published in||ACM MobiSys|
|Publisher||ACM International Conference on Mobile Systems, Applications, and Services|
Lenin Ravindranath Sivalingam, Sharad Agarwal, Jitu Padhye, and Chris Reiderer. Give in to Procrastination and Stop Prefetching, ACM HotNets, 21 November 2013.