09:00-10:00
Opening Remarks and Keynote
10:30-12:15
Mobile Video and Clouds
MARS: Adaptive Remote Execution for Multi-threaded Mobile Devices
Mobile devices face a growing demand to support computationally
intensive applications like 3D graphics and computer
vision. However, these devices are inherently limited
by processor power density and device battery life. Dynamic
remote execution addresses this problem, by enabling mobile
devices to opportunistically offload computations to a remote
server. We envision remote execution as a new type of
cloud-based heterogeneous computing resource, or a
“Cloud-on-Chip”, which would be managed as a system resource as
if it were a local CPU, with a highly variable wireless interconnect.
To realize this vision, we introduce MARS, the
first adaptive, online and lightweight RPC-based remote execution
scheduler supporting multi-threaded and multi-core
systems. MARS uses a novel efficient offloading decision algorithm
that takes into account the inherent trade-offs between
communication and computation delays and power
consumption. Due to its lightweight design, MARS runs
on the device itself, instantly adapts its decisions to changing
wireless resources, and supports any number of threads
and cores. We evaluated MARS using a trace-based simulator
driven by real world measurements on augmented reality,
face recognition and video game applications. MARS
achieves an average speedup of 57% and 33% higher energy
savings over the best static client-server partitions.
Jupiter: Transparent Augmentation of Smartphone Capabilities through Cloud Computing
Smartphones have become more and more popular,
however the storage and computation limitation
remains a big obstacle. With cloud computing and data
centers capable of providing almost unlimited storage
space and computing capability, we believe that it is
possible to augment the smartphone capabilities with
the support of cloud computing. This paper proposes
Jupiter, a framework to augment the smartphone
capabilities with the support of cloud computing. Jupiter
can provide transparent user experiences to mobile
users in application management and data storage.
With the help of virtual machine technology, Jupiter is
also able to launch desktop applications on smartphones
when necessary. We have implemented a prototype
of Jupiter on Android phones and demonstrated its
feasibility through a couple of case studies.
Designing Real-Time Multimedia Applications on Mobile Devices
This paper explores the challenge of real-time
image search and registration on mobile devices. We
propose using the histogram of oriented gradients
(HOG) features for characterizing image regions,
and propose an algorithm based on the entropy of
HOG to select “good” regions for image matching
and registration. We also propose a novel
implementation of a dual-mode mobile system based on
a hybrid tracking and visual matching algorithm.
We apply the algorithms to several mobile applications,
including image matching for mobile visual
search and panorama on mobile phones. The
effectiveness of our approach is demonstrated on a large
dataset.
Avoiding Nostril-cam and Postage-stamp People in Mobile Video Conferences
We would like to provide high-quality video conferencing so that
people can communicate comfortably with each other anywhere,
anytime. This is not a new goal, and there are now several
applications such as Skype™ and FaceTime™ on mobile
platforms that bring us closer to achieving anywhere, anytime
video communications. Alas, these mobile conferences are often
of poor quality due to the many challenges presented by mobile
devices, such as constrained networks, limited processing power,
small displays, and uncontrolled view angles and lighting. These
challenges mean that simply porting existing desktop video
conferencing solutions to portable devices does not provide the
best user experience. Fortunately, these mobile devices also have
many advantages that we can exploit to enable better-quality
portable video conferences. In this paper we describe how we
exploit the devices’ mobility and embedded sensors to detect and
fix two problems that are often ignored but that adversely affect
user experience: bad view angles and too-tiny views of people
and content, especially in multi-party conferences. Please note
that what we describe is very much an experimental prototype and
not a finished project
13:30-15:00
Mobile Storage and Security
The Swiss Army Smartphone: Cloud-Based Delivery of USB Services
A smartphone can be configured to look like any Universal
Serial Bus (USB) peripheral and can be managed remotely
through its wireless data connection. By virtue of these
features, smartphones are ideal vehicles for the delivery of a
variety of brand-new, USB-powered services that support the
management and troubleshooting of mobile laptops. We
provide examples of such USB services and describe a
general architecture for their implementation. The services
are easy to deploy, because they can be extended to remote
laptops without prior installation of new software, and well-suited
for delivery through virtualization in a cloud
infrastructure. While our examples target mostly the
enterprise, USB services, especially virtualized ones, can
easily be tailored to suit a broad set of consumer applications.
Examining Storage Performance on Mobile Devices
Conventional wisdom holds that storage is not a big contributor
to application performance or energy consumption
on mobile devices. Flash storage (the type most
commonly used today) draws little power, and its performance
is thought to exceed that of the network subsystem.
In this paper we present initial evidence to the contrary
even for common applications such as web browsing
or application install. We find that just by varying
the underlying flash storage, performance of web browsing
over WiFi can vary roughly by 500%, and of application
install by 300%. With a faster network (setup
over USB), storage is taxed even more and the performance
variation rose to roughly 700% for web browsing!
The performance variation can be attributed to the
characteristics of the storage device, the workload pattern
(random or sequential), and the operating system itself.
We also find that lower storage performance leads
to increased CPU consumption, thus having an indirect
impact on energy.
The Modeling and Comparison of Wireless Network Denial of Service Attacks
Mobile handhelds with wireless access are used in
numerous safety critical applications. The wireless
network protocols in use are vulnerable to a wide
array of denial of service attacks. We propose a
formal method for modeling semantic denial of service
attacks against wireless network protocols. We then
use our proposed model to find a new deadlock
vulnerability in IEEE 802.11. The history of published
denial of service attacks against wireless protocols
indicates that formal methods can contribute to the
construction of robust protocols.
15:30-17:15
Context and Location Awareness
Predicting Handoffs in 3G Networks
Consumers all over the world are increasingly using their
smartphones on the go and expect consistent, high quality
connectivity at all times. A key network primitive that
enables continuous connectivity in cellular networks is handoff.
Although handoffs are necessary for mobile devices to
maintain connectivity, they can also cause short-term disruptions
in application performance. Thus, applications could
benefit from the ability to predict impending handoffs with
reasonable accuracy, and modify their behavior to counter the
performance degradation that accompanies handoffs. In this
paper, we study whether attributes relating to the cellular
network conditions measured at handsets can accurately
predict handoffs. In particular, we develop a machine learning
framework to predict handoffs in the near future. An
evaluation on handoff traces from a large US cellular carrier shows
that our approach can achieve 80% accuracy — 27% better
than a naive predictor.
Searchlight: Helping Mobile Devices find their Neighbors
The rapid deployment of millions of handheld communication
devices has resulted in a demand for physical proximity-based
opportunistic networking. However, the success of
these emerging ad hoc networks requires that a device should
be able to search and find other devices in its vicinity without
infrastructure support, without consuming too much
battery power, and preferably without requiring clock synchronization.
While approaches exist to solve this problem
of energy-efficient asynchronous neighbor discovery, they present
an unpleasant trade-off between good average-case performance
(probabilistic approaches) and strict bound on worst-case
discovery latency (deterministic approaches). In response
to these limitations, we present Searchlight, an asynchronous
neighbor discovery protocol that has both deterministic
and probabilistic components, a novel combination
that enables it to have both good average-case performance
and the best worst-case bound for any given energy budget.
Context-aware Apps with the Zonezz Platform
Current smart phones can easily detect the geographic location,
but very often applications are more interested in the meaning of
the location for the user. In this paper we present the Zonezz
platform that identifies meaningful locations such as ‘home’ or
‘work’. It provides an easy to understand context model and fully
runs on a mobile device without the need for a central service.
Other apps can use this platform to create context-awareness. We
show the benefits of this platform with the help of a context-aware
calendar tool.
Traffic Backfilling: Subsidizing Lunch for Delay-Tolerant Applications in UMTS Networks
Mobile application developers pay little attention to the interactions
between applications and the cellular network carrying their traffic.
This results in waste of device energy and network signaling resources.
We place part of the blame on mobile OSes: they do not
expose adequate interfaces through which applications can interact
with the network. We propose traffic backfilling, a technique
in which delay-tolerant traffic is opportunistically transmitted by
the OS using resources left over by the naturally occurring bursts
caused by interactive traffic. Backfilling presents a simple interface
with two classes of traffic, and grants the OS and network
large flexibility to maximize the use of network resources and reduce
device energy consumption. Using device traces and network
data from a major US carrier, we demonstrate a large opportunity
for traffic backfilling.