Mobile devices are increasingly being relied on for a number of services that go beyond simple connectivity and require more complex processing. Such applications have become an indispensable part of everyday life. This has been made possible by two trends. First, truly portable mobile devices, such as smartphones and tablets, are increasingly capable devices with processing and storage capabilities that make significant step improvements with every generation. A second trend is the availability of improved connectivity options for mobile devices which have enabled applications that transcend an individual device's capabilities by making use of remote processing and storage.
The primary approach in wide-use today to enable such remote processing makes use of standard cloud computing resources to off-load the 'heavy lifting' that may be required in some mobile applications to specially designated servers or server clusters. Another technique for remote processing of mobile applications proposes the use of cloudlets which provide software instantiated in real-time on nearby computing resources using virtual machine technology. This previous work assumes the availability of infrastructure-based compute resources and additionally requires good, constant connectivity to such resources for the duration of a computational task. This leaves the important and challenging question of handling intermittent connectivity of mobile devices unaddressed.
This work will generalize the remote mobile computing paradigm to enable its operation in the presence of intermittent connectivity. This, in turn, provides the important ability to leverage more compute resources including those provided by intermittently-connected cloudlets and even those available in other mobile devices. Our work can be viewed as enabling a truly general vision of cyber foraging which envisions mobile applications 'living off the land' by exploiting nearby computational resources.
The research work will be conducted by an interdisciplinary team which includes researchers with expertise in mobile wireless networks, in program partitioning and execution in mobile environments, and in building applications that involve analysis and interpretation of rich multimedia data. The work will include efforts in 1) development of a remote execution framework for a number of scenarios with varying availability of remote compute resources and a diversity of intermittent connectivity features, 2) development of application profiling and partitioning tailored to intermittently-connected environments, 3) experimentation with sequential and embarrassingly parallel applications, and 4) evaluation through proof-of-concept prototypes as well as extensive emulation.
Intellectual Merit: This work generalizes the mobile computing paradigm to include full consideration of the increased computational power of mobile devices together with their inherent intermittent connectivity. In doing so, we draw upon and push forward recent advances in program analysis, networking in intermittently connected environments, and mobile multimedia applications. The unified framework developed within this research has conceptual and pragmatic value; it sets the stage for a future in which mobile applications can leverage and dynamically adapt to any and all available resources.
Broader Impacts: The work is multi-disciplinary, and the students working on the project will be exposed to problems that lie in the intersection of computer science disciplines such as networking, programming languages, and distributed processing. Our research will also enable applications that run at the edge of the network and without fixed infrastructure, thus empowering citizens where they are, with limited external dependencies.