Networking Summit on Mobile and Cloud Services

Rover: A Framework for Context-Aware Applications

 

Ashok Agarwal

University of Maryland

 

Rover is a framework for integration of context-aware applications in which a number and variety of client devices such a smart phones, PDAs etc. may connect to its server using communication channels such as 2G, 3G, WiFi, WiMAX, etc., and obtain information and services appropriate for their context. The context for each client is maintained and managed by the server and is used to customize the information and services provided. MyeVyu is an application suite that has been implemented to show the capabilities of this framework for use by a campus community. This system can location a client anywhere on campus, indoors or outdoors, with an accuracy of 10’ or better. MyeVyu applications include: Campus and class information (Class schedule, Campus events, Assignments and exams, Grades, Campus Alerts), Weather, Transportation (Real time information about Washington Metro Trains, Washington Metro Buses, Campus Shuttle Buses, Parking location), Social Networking, Campus building and directory, Public Safety Access.

The public safety application, called V911, not only provides the identity of the client and the location to the Public Safety Answering Point (PSAP) but also opens an audio and a video stream from the client device so that the dispatcher can hear and see the incident scene. If there are any PTZ cameras in the area the video feeds from them are also provided to the dispatcher who can forward one or more of the feeds to a responder assigned to handle the situation. This way the responder has up to the minute information about the incident. Rover is a flexible integration platform on which a number of additional applications are being developed.

Context-awareness, Cloudlets and the Case for AP-embedded, Anonymous Computing

 

 

 

 

Anthony LaMarca

Intel Research, Seattle

 

Context-awareness and the ability of our computing devices to sense where we are, who we are with, and what we are doing is driving a new class of high-value, always-on applications and services. As the need for coverage, accuracy and detail increases, context-aware devices will increasingly rely on computationally intense vision-based approaches to inferring context. A promising solution to the efficient implementation of mobile context-awareness is the "cloudlet" model proposed by Satyanarayanan et al. I will outline why I think the trend towards vision-based context-awareness will drive demand for cloudlets and some of the challenges and market opportunities it will enable.

Towards Context-Aware Computing Via the Mobile Social Cloud

 

Rick Han

University of Colorado

The combination of mobile smartphones with social networks enables a new era of context-aware computing, which stimulates new thinking about what kind of cloud services and infrastructure are needed to support smart mobile-aware spaces. We will describe our initial research focused on creating context-aware applications using mobile social networks, namely our SocialFusion project. Some of the interesting issues addressed by SocialFusion so far include group-based context awareness, as well as privacy and anonymity concerns introduced by mobile social networks. We will describe some of our initial thinking on what kinds of common services and framework may be needed to enable context awareness via the mobile social cloud.

Leveraging Fast VM Fork for Next Generation Mobile Perception

 

Eyal de Lara

University of Toranto

Cloudlets, consisting of infrastructure accessible via a wireless LAN, are poised to enable a new generation of mobile applications that opportunistically leverage nearby computationally resources to augment human perception. We anticipate that cloudlets could be implemented as networks of computational enabled access points that lend their resources to nearby mobile users. The speed and local setting is necessary since most of the next generation perception (ESP) use cases require low latencies for responsiveness to human interaction. In this talk, I will describe early research that leverages fast virtual machine (VM) fork to migrate computation between a mobile device and a nearby cloudlet, and once on the cloudlet to enable parallel computation. VM fork is a novel abstraction that enables fast (hundreds of milliseconds) instantiation of computing elements in a cloud environment. While VM fork is conceptually a simple idea, the large size of VM memory images (which reaches hundreds of megabytes or even gigabytes) makes an efficient implementation challenging. Our VM fork implementation addresses this challenge with three key mechanisms: Lazy State Replication, which allows for extremely fast instantiation of VM clones by initially copying only metadata necessary to resume a VM, and transmitting the parent’s state that the clone actually accesses on demand; Avoidance Heuristics, which eliminate superfluous memory transfers for the common case of clones allocating new private state; and Multicast Distribution, a technique that provides scalability and pre-fetching by multicasting replies to memory page requests.

The Role of Cloudlets in Mobile Computing

 

Mahadev Satyanarayanan

Carnegie Mellon University

Imagine Wi-Fi points augmented with computing, memory and storage resources that can be used by nearby mobile devices. How could the widespread deployment of such infrastructure fundamentally change mobile computing? Rather than relying on a distant cloud, a mobile user could rapidly instantiate and use a customized "cloudlet" that is just one wireless hop away. Crisp interactive response for immersive applications that augment human cognition is then much easier to achieve because the proximity of the cloudlet ensures low latency and jitter. A critical aspect of this vision, namely rapid customization of cloudlet infrastructure, is achievable through dynamic VM synthesis.

Programming Smartphones as Distributed Systems with Extreme Heterogeneity

 

Lin Zhong

Rice University

To enable creative services on smartphones-like mobile systems, researchers have sought help from two very different computing platforms. On one hand, sensors, either built in device or wireless body-worn, have been studied to enhance the “sense” of smartphones so that the latter can better infer about the user and their context. On the other extreme, the powerful cloud has been leveraged to enhance the “brain” of smartphones so that the latter can benefit sophisticated applications of pattern recognition, data mining, and artificial intelligence. As a result, the smartphone increasingly appears to be a distributed system with the cloud at one end and sensors at the other from the perspective of application developers. To help developers cope with such extreme heterogeneity, we have been studying programming and operating system support so that they can code applications for smartphones in a platform transparent way yet still benefit from the power and efficiency of programmable execution in the cloud and in the sensor. We will be able to share some early results from our Reflex project along this direction.

Future Challenges from FAWN

 

David Andersen

Carnegie Mellon University 

This talk will briefly describe our experiences building an energy-efficient cluster architecture for data-intensive computing, called FAWN: A Fast Array of Wimpy Nodes. FAWN makes use of an array of low-power, energy efficient nodes instead of more traditional high-performance computers. In the process, it drastically reduces power consumption, particularly for I/O bound workloads, but the constrained CPU and DRAM, and the performance quirks of flash memory impose substantial systems engineering challenges. I will overview the solutions we developed, and then discuss the ongoing systems and algorithmic challenges that sit between the fundamental efficiency of the architecture and its practical realization. I will conclude with a brief mention of a future, radically constrained, hardware platform that is guiding our upcoming research.

Centralize What You Can, Distribute What You Must: a Telco's View to the Cloud

 

Pablo Rodriguez

Telefonica

Over the last years, most networking research has focused on the "divide and conquer principle", with more and more distributed architectures where the goal was to achieve better scalability and reliability. However, with more distributed architectures also come higher operational costs (configuration, management, support, upgrades, etc). In fact, operational costs are often orders of magnitude higher than the costs of the infrastructure itself. As a result one may want to centralized most equipment to reduce operational costs, and distribute only those elements required for scalability and efficiency. In wireless, new smartphone devices are causing a number of operational costs in the network infrastructure that cause constant upgrades and expensive maintenance. In this talk, i will describe some of these problems, and delve into some potential solutions.

Networking as a Service: Cloud Centric Networking in a Federated Network Environment

 

Raj Jain

Washington University 

While cloud computing technology allows efficient sharing of compute resources, dynamically provisioning wide-area QoS links, interconnecting distributed application instances deployed over resources leased from multiple cloud providers, is still static and non-trivial. Therefore, customers are limited either to a single cloud service provider or to static links that cannot be easily allocated and de-allocated on demand. Here we are not talking about simple cloud service such as document sharing that can be easily be done using best effort low speed connections over the public Internet. We are concerned about applications requiring significant network bandwidth such as data intensive computing.

Elastic Pipes - an extension of our NSF funded Internet 3.0 architecture - extend the cloud computing concepts to networking and allow telecommunication service providers to advertise their transport capabilities. Clients can establish high-speed connections with desired quality of service by dynamically combining transport service objects from various carriers. This will allow cloud computing to grow into a "Cloud Market" where the clients can choose cloud computing resources from “Network as a service (NaaS)” offerings from different providers and interconnect them via elastic pipes using different telecommunication carriers.

This is somewhat of a “paradigm shift” from current practice but is inevitable given the current success of “software as a service (SaaS)” and "Infrastructure as a Service(IaaS)" service offerings of commercial cloud platforms that is expected to enable feasible deployment of high end distributed applications and services.

 Vanish: Self Destructing Digital Data

 

Yoshi Kohno

University of Washington 

Computing and communicating through the web make it virtually impossible to leave the past behind. College Facebook posts or pictures can resurface during a job interview; a lost or stolen laptop can expose personal photos or messages; or a legal investigation can subpoena the entire contents of a home or work computer, uncovering incriminating or just embarrassing details from the past.

Our research seeks to protect the privacy of past, archived data — such as copies of emails maintained by an email provider — against accidental, malicious, and legal attacks. Specifically, we wish to ensure that all copies of certain data become unreadable after a user-specified time, without any specific action on the part of a user, without needing to trust any single third party to perform the deletion, and even if an attacker obtains both a cached copy of that data and the user's cryptographic keys and passwords.

Intentional Networking

 

Brian Noble

University of Michigan 

Mobile devices face a diverse and dynamic set of networking options. Using those options to the fullest requires knowledge of application intent. This talk introduces Intentional Networking, a simple but powerful mechanism for handling network diversity. Applications supply a declarative label for network transmissions, and the system matches transmissions to the most appropriate network. The system may also defer and re-order opportunistic transmissions subject to application-supplied mutual exclusion and ordering constraints. We have modified three applications to use Intentional Networking: BlueFS, a distributed file system for pervasive computing, Mozilla's Thunderbird e-mail client, and a vehicular participatory sensing application. Compared to an idealized solution that makes optimal use of all aggregated available networks but without knowledge of application intent, Intentional Networking improves the latency of interactive messages from 42% to 13x, while adding only 1-8% throughput overhead.

Cloudlets on Phones

 

Gaetano Borriello

university of Washington 

Entrepreneurial people in developing regions have many ideas for mobile applications that will provide useful services in their local context. However, they are faced with a large barrier to developing and deploying those applications because they usually require external experts to help them harness cloud services. From our experiences in this space, we have reached the conclusion that a series of stepping stones are needed that allow applications to progress from simple implementations running on a user's own phone to full-fledged cloud-hosted applications. Communication constraints are quite different than the developed world, for example, data plans are very uncommon and most communication is through voice and SMS with specific costs associated with each call or message, often paid via pay-as-you-go plans. Applications must be built on simple communication technology with a clear migration path as GPRS and Internet connectivity become more available in the developing world.

In this talk, we propose a set of steps for both the development and deployment of mobile applications that we believe are applicable in many parts of the world, especially given the increasing availability of high-end phones that can serve as hosting sites themselves. We highlight the challenges given some simple mechanisms on which many applications can be built. Our ultimate goal is to make it easy for entrepreneurs in developing regions to enable their ideas for mobile applications, generate their own content, and have the pride of ownership that will sustain their efforts.

Experiences with a Vehicular Cloud Computing Platform

 

Jason Flinn

University of Michigan 

In this talk, I’ll describe the experiences and lessons learned from teaching a class called “Cloud Computing in the Commute” with Brian Noble and TJ Giuli at the University of Michigan last semester. In this project-based course, student teams designed, built, and demonstrated applications that leveraged an in-vehicle mobile sensing platform connected via wireless networks with cloud services. During the semester, students road-tested their applications on a computing platform built into a Ford Fiesta. At the end of the semester, a contest was held in which students demoed their applications; the winning team drove their project to Maker Faire in California. While our focus in this class was educational in nature, our experiences nevertheless illuminated several important research issues to consider in the design of mobile/cloud applications, especially those intended for vehicular environments.

Cloudy with a Chance of Mobile Social Computing

 

Maria Ebling

IBM Research 

How does one bring information technology to people living on the margins of contemporary society? Whether in the U.S. or in the developing world, can a lack of computer access be overcome instead with inexpensive mobile phones? How might one go about addressing this need? In this talk, I will present some work we have been doing to support the homeless here in the U.S. and farmers in developing nations. One project, MobiSMD (aka PictureTalk), supports asynchronous conversations anchored by pictures. Another, CRM (joint with Chris Le Dantec of GaTech), focuses on supporting homeless clients and their case workers through mobile messaging and information dissemination. I will present an overview of the scenarios and discuss the requirements such applications place on a cloud infrastructure.

Understanding the Behavior of a Large-Scale, Multi-Player, Mobile Game in the Wild

 

Suman Banerjee

University of Wisconsin 

This talk describes a large-scale, long-term measurement study of a popular mobile Massively Multiplayer Online Role Playing Game (MMORPG), called Parallel Kingdom, with over 100,000 users distributed across 70 countries. Our study covers various aspects of the game including (i) characteristics of its players population, (ii) player behavior, (iii) network-level characteristics observed between game servers and player devices that connect through WiFi and cellular networks world-wide, (iv) money spending behavior of players and how network phenomenon affects such behavior, and (v) player mobility patterns. Our measurement study spans almost the entire life of the game staring from its inception on October 31, 2008 to until May 8, 2010 (555 days in total).

Remembering What Matters

 

Romit Roy Choudhury

Duke University

Sensor networks have been conventionally defined as a network of sensor motes that collaboratively detect important events from their surroundings. We make an attempt to extend this notion to the social context by using mobile phones as a replacement for motes. We envision a system in which mobile phones collaboratively sense their ambience, recognize socially "interesting" events, and record short video clips of those events. At the end of the day, the video clips from different phones are "stitched" together, thereby creating an automatic video highlights of the occasion. We have built in early (offline) prototype of such a system using Nokia phones and iPod Nanos, and have experimented in real-life social gatherings. Results show that automatically generated video highlights are quite similar to those created manually, (i.e., by painstakingly editing the entire video of the occasion). In that sense, our system may be viewed as a collaborative information-distillation tool, capable of "remembering what matters".

MAUI: enabling fine-grained code offload for resource-intensive applications

 

Alec Wolman

Microsoft Research

MAUI is a system that enables fine-grained energy-aware offload of mobile code to the infrastructure. Previous approaches to these problems either relied heavily on programmer support to partition an application, or they were coarse-grained requiring full process (or full VM) migration. MAUI uses the benefits of a managed code environment to offer the best of both worlds: it supports fine-grained code offload to maximize energy savings with minimal burden on the programmer. MAUI decides at run-time which methods should be remotely executed, driven by an optimization engine that achieves the best energy savings possible under the mobile device’s current connectivity constrains. Using MAUI, we have developed: 1) a resource-intensive face recognition application that consumes an order of magnitude less energy, 2) a latency-sensitive arcade game application that doubles its refresh rate, and 3) a voice-based language translation application that bypasses the limitations of the smartphone environment by executing unsupported components remotely.

Trusted Sensors

 

Stefan Saroiu

Microsoft Research

Despite the popularity of adding sensors to mobile devices, the readings provided by these sensors cannot be trusted. Users can fabricate sensor readings with relatively little effort. This lack of trust discourages the emergence of applications where users have an incentive to lie about their sensor readings, such as falsifying a location or altering a photo taken by the camera. In this talk, we will present a broad range of applications that would benefit from the deployment of trusted sensors, from participatory sensing to monitoring energy consumption. We describe two design alternatives for making sensor readings trustworthy. Although both designs rely on the presence of a trusted platform module (TPM), they trade-off security guarantees for hardware requirements. While our first design is less secure, it requires no additional hardware beyond a TPM, unlike our second design. Finally, we present the privacy issues arising from the deployment of trusted sensors and we discuss protocols that can overcome them.