MobiTrade:
Trading Content in Disruption Tolerant Networks
|
·
Overview
·
Global Architecture
·
Implementation
·
Screenshots
·
Related Publications
·
Related Talks
·
People Involved
·
Contact
|
Design and Development of an utility driven
trading system for
Efficient content sharing on top of a DTN
Overview
Mobile
networking is quickly reaching a tipping point. While data has been a
second-class customer for cellular networks until recently, the wide spread
of smart phones, and the access these provide to existing and novel
applications, are generating unprecedented amounts of mobile data. The
capacity of current cellular infrastructures has already been pushed to the
limit. To support the increasing number of devices generating data at high
rates, ISPs will inevitably be pushed towards lowering bandwidth quotas,
adopting non flat rate plans, or deploying (expensive) next generation
equipment. This has leaded many researchers (and industry) to explore alternative
or hybrid architectural solutions. To this
end, direct mobile-to-mobile communication can be leveraged to harvest the
large amounts of unused bandwidth between wireless devices in proximity. Mobile
devices with multiple wireless interfaces (e.g. Bluetooth and Wi-Fi) allow two
users in range to exchange data at
much higher speeds, lower power consumption, and essentially no (direct)
monetary cost. A
significant share of research on opportunistic networks has focused on
unicast and multicast routing. However,
the increasing user demand for content is creating a shift in focus towards content
and data centric systems (e.g. the CCN project),
in both wired and wireless Internet. As a result, a number of content dissemination
systems have been recently proposed for mobile devices in the wild to
exchange content of interest in a peer-to-peer manner. MobiTrade fits within
the latter category and introduces the following new features:
Global Architecture
In a content dissemination architecture, mobile devices need
first to somehow express their interests for different (types of) content and
advertise these interests. To this end, we borrow the concept of channels,
introduced in the CCN project. Specifically, the MobiTrade
architecture relies on two data records: content and channel records (see Figure
below).
Channel Record: A user asks for a set of contents
by creating locally a channel record that encapsulates the set of keywords
the user thinks they better describe the contents she is looking for.
Channels can be added or deleted by the user, at any time. In contrast to the
CCN model, the channel record in MobiTrade is one-for-many (not one-for-one).
A desirable content is identified based on a match between the channel
keywords and the content description (also characterized by a set of
keywords). We think that such a match process is more appropriate for the
communication model we are proposing, where the user
might not know the exact content he is looking for, or might anyway be
interested in all contents matching the description (e.g. Madonna songs, photos
of Nice, sports tickets for sale). A lot more
can be said about this channel structure (e.g. hierarchies, merging and
splitting of channels, semantic content matching, etc.), but this is beyond
the scope of this work. Instead, we choose to use a simple channel structure
here and focus on the algorithmic part of the system. Finally, each channel record
contains a utility entry. This is a key quantity for MobiTrade, allowing our
system to optimize various important functions (scheduling, inventory
management, collaboration profiling, etc.). More details could be found
within MobiTrade related publications. Content Record: In addition to the content
description, a content record contains a number of additional fields. First,
we associate to each MobiTrade content a TTL (Time
to Live). By the end of this time, records can be removed. The cases requiring
this TTL field are many, for example someone could be
interested in selling something today. To ensure devices respect this TTL field,
MobiTrade devices do not reward each other for expired content. Furthermore,
to provide users with a full control over their privacy (i.e., the contents they publish and their center of
interests), we choose to keep anonymous any generated channel record (no user
or device ID are stored). Nevertheless, for contents, one still has the
possibility to associate to them a canonical source name that refers in some
way to the content publisher. This field does not correspond necessarily to
the user device address, but it can hold the publisher postal address or its
phone number, which can be used for distinguishing between contents, feedback
mechanisms on separate communication mediums or authentication purposes. Finally, to
provide for some MobiTrade security,
we choose to use a CCN like content-based security model. With this model,
protection and trust travel with the content itself, rather than being a
property of the connections over which it is transmitted. MobiTrade devices
authenticate via the signature field, the binding between the content source
ID, its description and some parts of its data. In addition to this signature,
each signed MobiTrade content carries with it the public
key necessary for its verification by other devices. The signature algorithm
can be selected to meet the performance requirements of that particular
published data. Next, we
give some more details of the MobiTrade architecture. The figure below is a
schematic of the core MobiTrade device, which has five building blocks. We have
already implemented this architecture on Android phones in order to conduct
small scale experiments. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Coming
soon :)