Conference PaperPDF Available

Network Memory Among Mobile Devices

Authors:

Abstract and Figures

In a community of mobile devices, resource pooling and resource sharing can be an effective means of improving the utilization and availability of the unique resources. This paper presents a peer to peer approach to device and resource discovery, resource pooling and resource management in mobile device communities. A peer to peer resource discovery and resource sharing algorithm that pools memory on mobile devices and presents it to the mobile device community as network memory is developed. The cost of uniform and nonuniform memory access in mobile device communities is explored and presented.
Content may be subject to copyright.
Network Memory Among Mobile Devices
Veena Sambasivan*, Yusuf Ozturk**
San Diego State University
Electrical and Computer Engineering
San Diego, CA 92182-1309
veenasambasivan@yahoo.com*, yozturk@mail.sdsu.edu**
Abstract - In a community of mobile devices, resource pooling
and resource sharing can be an effective means of improving the
utilization and availability of the unique resources. This paper
presents a peer to peer approach to device and resource
discovery, resource pooling and resource management in mobile
device communities. A peer to peer resource discovery and
resource sharing algorithm that pools memory on mobile
devices and presents it to the mobile device community as
network memory is developed. The cost of uniform and non-
uniform memory access in mobile device communities is
explored and presented.
I. INTRODUCTION
Recent innovations in mobile computing and communications
resulted in mobile devices with higher processing power,
storage space and improved communication capabilities.
Converged mobile computer/cellular phones are equipped
with improved features such as embedded cameras, GPS
receivers, video and audio players , RFID and more. As
mobile devices become more powerful in terms of the
features they offer, an increasing need for mobile devices to
access services and information on other mobile devices
emerges. Remote mobile resource access can be very
important for other moving users and mobile devices,
providing significant opportunities for creation of new
applications[1].
Most high end devices provide 802.11 and Bluetooth
interfaces, which enable devices to discover other devices
and communicate with them without the need for a central
server or other existing infrastructure. The combination of
mobile devices and ad-hoc networking can pave the way for
creation of highly dynamic, self-organizing, mobile peer-to-
peer systems. In such systems, the mobile hosts can discover
each other dynamically based on proximity and establish peer
to peer relationships. Peer to peer (P2P) services are about
sharing: giving to and obtaining from a peer community. In a
P2P network, a peer node gives some resources and obtains
other resources in return. P2P technology also enables
decentralized operation of systems. Peers are autonomous
and depend on other autonomous peers for extending their
capabilities. Peers depend on each other not only for getting
information and computing resources, but also for forwarding
requests in multi hop scenarios. “In its purest form, the peer
to peer model has no concept of server; rather all participants
are peers” [3].
The P2P model may provide the basis for interacting peers to
aggregate resources available on their systems. A wide
variety of resources may be aggregated across peers.
Resources may be soft items including files or other content
residing on a node as well as hardware resources such as
processing power, bandwidth, and disk space. The
applications such as distributed file systems and
computationally intensive simulations benefit from huge
amounts of these resources and therefore there is a tendency
to lean towards a peer to peer structure to aggregate these
resources.
The ad-hoc nature of connectivity has a strong effect on peer
to peer systems. In P2P systems application dynamism need
to be able to handle situations where devices can dynamically
join and withdraw from the pool. Users must be able to
access content intermittently, subject to the connectivity of
the content providers. In systems with higher guarantees, the
ad-hoc nature is reduced by having proxies delegated on
networks to receive messages, or by having other sorts of
relays somewhere in the network that will temporarily hold
communication for an unavailable system. Furthermore, ad-
hoc groups of people should be able to form ad-hoc networks
in order to collaborate in the absence of Internet.
One can design applications for mobile devices similar to
Napster and other file sharing applications which will make
use of device and resource discovery in the neighborhood to
share and manage files, particularly music and video files..
Symella ,for example, is a Gnutella client for Symbian smart
phones. Symella supports multi-threaded downloads which
means that if multiple users have a particular file then
Symella can download the file from several locations
simultaneously[5].
This study extends P2P computing into mobile computing
for resource pooling and resource sharing among mobile peer
nodes. Each mobile device has a set of resources and offers to
share one or more of its resources at some capacity. We will
limit our discussion to mobile P2P computing, where each
device should be able to discover other devices and resources
offered, form an ad hoc network and share the resources to
2
accomplish a given task. In direct mode P2P systems
network nodes takes advantage of resources provided by
other mobile peers that are physically close. So, for mobile
devices, the main objective of peer hood is to know the
immediate neighborhood of the personal trusted device. A
peer must be able to detect the presence of neighboring peers,
share configuration and service information with those peers,
and notice when peers become unavailable. Resource
discovery must be timely in order to detect moving peers and
it must be efficient so as not to overload the network. In
contrast to peer to peer systems that are targeted at fixed
networks, decentralization is not a mere option for mobile
peer to peer networks, but a necessity [4]. In direct mode P2P
systems, mobile hosts may change their physical location and
establish peering relationships among each other based on
proximity. Such an environment creates opportunities for a
range of novel and interesting applications involving
interaction between people who are co-located in an ad hoc
way [2].
Fig.1. Direct peer to peer communication
In the model given in Fig. 1, each mobile device hosts a
resource manager which maintains a repository of the
resources it is willing to share. When a mobile device is
discovered and queried for a resource, it will search through
its repository to determine if that particular resource is listed
as a shared resource. If the resource is in the list, the device
will return a positive response to the query.
The devices that are willing to share resources can enable a
device based access control mechanism where access to
resources is granted on the basis of the device address. Since
there is no centralized server in this model, the access
permissions are maintained by each individual mobile device.
II. NETWORK MEMORY ON MOBILE DEVICES
In this study, as a specific resource, memory on mobile peer
nodes is pooled and offered to cooperating nodes as network
memory thus extending the amount of memory accessible to
each mobile node. Cost of uniform and non-uniform memory
access is investigated. In this context, the mobile devices that
have sufficient memory space can advertise storage or disk
space as the resource they are willing to share.
Mobile network memory is developed with the following
assumptions.
1. There is no server involved and the goal is to allow
mobile devices to directly communicate with each other
just as in direct peer to peer communication.
2. Communication among the mobile devices is restricted
to Bluetooth
3. The devices will be accessible within the Bluetooth range
until such time the entire image transfer and retrieval is
completed
The software architecture for both the peer requesting
resource and the peer offering resource is given in Fig. 2.
Fig. 2. System Architecture
In Fig. 2, the client module on the peer requesting resource is
responsible for performing all the operations related to
resource management. The server module on the peer
offering resource, is responsible for performing all operations
related to resource management. The client and server
modules also make use of other packages such as Bluetooth,
image capture and file system, which provide classes and
functions for Bluetooth, image capture and file read/write
respectively.
Network memory is implemented under Symbian operating
3
1
2
2
2
3
3
1
1
Dynamic discovery and resource query
Response to query
Collaboration and resource sharing
1
2
3
Mode of Communication: Bluetooth
Mobile device
3
system. An active object framework has been used in the
message client and message server classes to implement
asynchronous event processing. Active object framework is a
paradigm for non-preemptive multitasking within a single
threaded application. The active object framework removes
from the programmer the burden of guarding against many of
the pitfalls of wait loop programming.
The mobile device requesting a resource needs to save meta
data information in order to retrieve information from the
other peer devices offering the resource. The meta data
information may be saved in tables, in a relational database or
in a flat file. Maintaining metadata information at the peer
offering resource is optional but will be handy in order to
clean up the file fragment that have been saved and not used
over a period of time. The advantage of using a data base
instead of a file especially in the peer offering resource is that
it would be easier to design an agent that could be run as a
background job to clean up the unused image fragment files
based on the last access date and time of the file segments.
The network memory is implemented using Nokia’s Series
60 SDK under Symbian operating system. Three mobile
devices (Nokia 6600, 6630, 7610 mobile phones) equipped
with Bluetooth are used to realize the resource management
application.
III. PERFORMANCE ANALYSIS
The main motivation for the resource sharing framework
presented in this study is the availability of a pool of
resources. Although the design and the discussions of peer to
peer resource sharing have been more general, the
implementation in this study specifically pools memory on
each device and presents it to all devices as network memory.
The advantage of this model is the availability of extended
storage space which comes at the cost of increased access
time to memory units shared over the network. The process of
resource sharing involves certain overheads and additional
delays which impact the amount of time required for
transferring data to/from remote memory units either as a
whole or as data fragments. In the rest of this paper we will
discuss the performance of an application using network
memory for image storage. The term image in the following
pages can later be generalized to data if needed to generalize
the usage of the networked memory model analyzed.
In this section, an attempt has been made to understand the
key parameters and overheads associated with the network
memory model presented and later measure and evaluate the
performance by varying the key parameters.
The network memory implementation disc allows splitting of
an image file into multiple segments and storing of the
individual image fragments or segments in peer phones,
therefore one of the key parameters that could impact
performance is the image segment size. The model allows for
an image to be saved on other phones in the network in
addition to the source phone, hence the image transfer time
needs to be studied for different image segment sizes.
For each image stored on the network memory, there is a
need to keep an associated meta data record. This meta data
information will enable the source phone to retrieve the image
afterwards. The number of entries in the meta data file will be
based on the number of image fragments to be stored on
network memory. Hence, the size of the metadata file can be
treated as another important factor in determining cost of
network memory. The implementation in this study uses
Bluetooth as the backbone short range communication
technology. Bluetooth requires additional time for connection
and disconnection and thus adds to the total image transfer
time. Apart from this, the delays involved in saving a
metadata file and any additional processing delays will be
accounted for under system delays.
The network memory agents have been implemented on
Symbian platform and deployed on three Nokia series 60
smart phones for testing. To measure image segment transfer
time the requestor mobile device was programmed to capture
an image and transfer only one segment to a second device
via Bluetooth. This procedure was repeated for different
segment sizes and the image segment transfer time was noted
for each segment size. The experiment was repeated for each
segment time several times and the most frequent transfer
time was chosen for each image segment size to be reported
here.
We have conducted a number of experiments to determine the
total image transfer time for storing image segments on the
different phones. In these experiments to determine total
image segment transfer time, we have considered the systems
delays. System delay, Tt is given as
Tt = Tb + Tm + Tproc (1)
where Tb is Bluetooth connection and tear down time, Tm is
the time delay associated with saving an entry into the meta
data file and Tproc is the processing delay
The processing delay ‘Tproc is the amount of delay introduced
by the sender after sending the image segments and before
issuing the disconnect event to the receiver. This delay was
added in order to ensure that the packets sent by the sender
have reached the receiver and that the disconnect event was
not sent while the receiver was receiving the packets. This
was required to ensure integrity of data. Therefore the overall
time to transfer the entire image, Ts is given as
Ts = n* (Ti + Tt) (2)
where Ti is the segment transfer time and ’n’ is the number
4
of image segments.
In order to estimate average system delay, twenty trials were
conducted to get the range and average values for the time to
establish a Bluetooth connection and tear down the
connection. Two mobile phones were used for this
experiment in which one mobile phone discovered the other
mobile device using Bluetooth and established connection to
it. The time for establishing the connection and similarly the
time for tearing down the connection was noted. The average
time for Bluetooth connection and disconnection was around
2.5 seconds.
In Figure 3, we present the image transfer time for
transferring an image of size equal to 10KBytes or 10240
bytes. The values have been computed by varying the image
segment sizes and by considering a constant system delay of
3.0 seconds. The system delay is not constant, but for ease of
calculations, a constant system delay has been considered.
Fig. 3. Plot of overall image transfer time versus image
segment size
In Fig. 3, as the image segment size increases, the overall
image transfer time decreases. The reason is that the system
delays, particularly the total time required for establishing a
Bluetooth connection and tear down will be less when the
number of image segments is less.
TABLE 1
IMAGE TRANSFER TIMES FOR DIFFERENT IMAGE SIZES
Experiment
Image
Segment
Size( in
bytes)
Total
Number
of
segments
Overall image
transfer time (
in milliseconds)
1 13822 1 6500.000
2 13739 2 13312.500
3 21578 1 7000.000
4 19291 2 13937.500
Experiments were also conducted to capture actual image
transfer times. A test bed of three mobile phones was used
for total image transfer time experiments . Experiments were
conducted by capturing an image using a source mobile
phone and saving the image as a whole on the second mobile
phone. The time required for image transfer including
system delays was noted for each trial. A number of trials
were conducted by capturing an image using the source
mobile phone, splitting the image into two segments and
saving the two segments in the other two mobile phones. The
time required for the total image transfer including the
system delays was noted for each trial. Since images are
dynamically captured, the image sizes are random due to
variable rate compression of images and not fixed. The
results are shown in Table 1.
The results presented here reveals that there is a cost
associated with storing an image on network memory versus
on local memory. This cost includes processing overhead
involved in discovery and collaboration and this impacts the
overall image transfer time. A number of experiments were
conducted to measure the amount of time required to save an
image that is of size close to 10KBytes and it was found that
on an average it takes around 1.5625 seconds to save an
image of size 10 Kbytes directly on the source phone. The
best numbers obtained for storing the same size image on
network memory are around 3.5 seconds.
ACKNOWLEDGEMENT
This work in part has been supported by the Nokia Inc.
University Program.
REFERENCES
[1] Chen Y., Huang H., Wei B., Chen M., Rao H., “iMobile
ME– A Lightweight Mobile Service Platform for Peer-to-
Peer Mobile Computing”, Internet Technologies,
Applications and Social Impace (WITASI 2002),
October 2002.
[2] Kortuem G.,“Proem: a peer-to-peer computing platform
for mobile ad-hoc networks”, Proceedings of the
International Conference (UbiComp2001), Atlanta,
Georgia, Oct. 2001.
[3] Milojicic D.S., Kalogeraki V., Lukose R., Nagaraja K.,
Pruyne J., Richard B., Rollins S., Xu Z., “Peer-to-Peer
Computing”, Technical Report HPL-2002-57, HP Lab,
2002.
[4] Porras J., Hiirsalmi P., Valtaoja A., ”Peer-to-peer
Communication Approach for a Mobile Environment”,
Proceedings of the 37th Annual Hawaii International
Conference on System Sciences (HICSS’04) – Track 9,
2004.
[5] http://symella.aut.bme.hu , Last visited 11/2/2006.
Overall image transfer time versus image segment size
0
2000
4000
6000
8000
10000
12000
14000
16000
18000
20000
22000
24000
26000
28000
30000
32000
0 2000 4000 6000 8000 10000 12000
Image Segment Size (in bytes)
Overall image transfer time (in
mill seconds)
... Sambasivan and Ozturk [43] present a mobile peer-to-peer application that allows mobile peers to share contents of their memory, e.g., pictures, between each other. They present an application that is based on Symbian platform. ...
... We achieved speed of 100kbit/s with the limiting factor being the bandwidth from the mobile device towards the network. Compared to peer-topeer transfer speeds over Bluetooth in [43], where the best measured performance for transmitting a 10 kilobyte image was 3.5 seconds, resulting in the average transfer speed just below 23kbit/s, we can note that the 3G transfer speeds were over four times faster than those of Bluetooth. In addition, we are not limited to the proximity of Bluetooth connectivity with 3G. ...
Article
This work continues on my Master's Thesis work done between July 2005 and January 2006. In my Master's Thesis, we presented how a mobile peer-to-peer file-sharing application can be implemented using the Session Initiation Protocol (SIP) as the underlying signaling protocol. The main objective of this thesis is to evaluate what kind of special requirements mobile environment poses for peer-to-peer application design, and present how peer-to-peer based services can be efficiently realized in next-generation mobile networks by using SIP with some enhancements as the peer-to-peer signaling protocol. This thesis is divided into two parts. In the first part, we present different peer-to-peer architectures and search algorithms, and evaluate their suitability for mobile use. We also review some mobile peer-to-peer middleware and file-sharing applications. Then, in the second part, we present our hybrid mobile peer-to-peer architecture consisting of a Symbian based mobile client and a SIP Application Server based super-peer. Key findings of this thesis are that the mobile peer-to-peer application based on SIP signaling and hybrid peer-to-peer architecture is suitable for mobile use as it minimizes overhead in mobile nodes and allows mobile operator to have control on its users in multi-operator environment. Also, the performance of the application satisfies user requirements.
Article
Full-text available
This paper describes Proem, a mobile computing platform that provides a complete solution for developing and deploying peer-to-peer systems for mobile ad-hoc networks.
Conference Paper
Full-text available
In this paper an approach to the peer-to-peer communication in a mobile environment is presented. This approach is based on the concept of personal trusted device that constantly monitors its neighborhood and collects information for the use of different applications. The reference implementation is built on top of iPaq PDAs running the Linux operating system. Class diagrams are presented for the main elements of the environment and the properties of the prototype are presented. Although this approach is not limited to any particular communication technology only Bluetooth technology is considered and presented in this paper.
Article
Full-text available
The term "peer-to-peer" (P2P) refers to a class of systems and applications that employ distributed resources to perform a critical function in a decentralized manner. With the pervasive deployment of computers, P2P is increasingly receiving attention in research, product development, and investment circles. This interest ranges from enthusiasm, through hype, to disbelief in its potential. Some of the benefits of a P2P approach include: improving scalability by avoiding dependency on centralized points; eliminating the need for costly infrastructure by enabling direct communication among clients; and enabling resource aggregation.
Chapter
As mobile devices become increasingly more powerful in storage, computation power, and communication capabilities, we anticipate an emerging need for a mobile device to access information or services on other mobile devices. A mobile device, however, may still be limited by its physical size, battery power, and intermittent communication capabilities. To facilitate information exchanges among these mobile devices, we propose a lightweight service platform on each mobile device and a network-based, always connected proxy that routes requests and responses among these devices. The lightweight platform adopts the notions of devlets and infolets in iMobile Standard Edition (SE), a proxy-based mobile service platform, to provide communication and information access interfaces on each mobile device. We call this lightweight platform iMobile Micro Edition (ME). ME devlets allow the local user and remote devices to communicate with the ME dispatcher through various communication protocols. ME infolets provide access to resources available on the mobile device. The ME dispatcher arbitrates communications among the front-end devlets and the backend infolets. To handle intermittent connections and varying bandwidths, each devlet or infolet with remote access is extended with an inbox queue that accumulates incoming messages and an outbox queue that accumulates outgoing messages — until a synchronization request with the network-based proxy (iMobile SE) is activated. The iMobile SE proxy synchronizes its message queues with those of mobile devices that attempt to communicate with each other. The collaboration of iMobile ME platforms and an SE proxy provides a lightweight infrastructure that enables new peer-to-peer mobile applications to be developed quickly for various mobile devices.