2024: Domino Containers - The Next Step. News from the Domino Container commu...
A Standalone Content Sharing Application for Spontaneous Communities of Mobile Handhelds
1. 10/04/15 1
A Standalone Content Sharing
Application for Spontaneous
Communities of Mobile Handhelds
Authors:
Amir Krifa – Amir.Krifa@sophia.inria.fr
Mohamed Karim Sbai – mksbai@sophia.inria.fr
Chadi Barakat – Chadi.Barakat@sophia.inria.fr
Thierry Turletti – turletti@sophia.inria.fr
2. 10/04/15 2
Design of the P2P networking architecture for
content sharing. (P2P file sharing, Peer lookup and membership
management, content publishing and discovery)
It’s an adapted version of BitTorrent for wireless
ad-hoc networks.
Change neighborhood definition (choking algorithm) and
piece selection strategy in the BitTorrent classical client.
Replace the tracker by a distributed peer lookup and
membership management service. (A distributed ad hoc
tracker).
Provide a Content Publishing and Discovery mechanism.
Objectives
3. 10/04/15 3
Data Sharing Ovelay
OLSR Routing
Daemon
BitHoc Tracker
List of peers
List of
torrents
Routing
Table
Membershi
p Overlay
Sharing Sessions
Status Data Base
BitHoc
Client
BitHoc
Torrent
Files
Finder
Http Messages
Torrent
Files Data
Base
Distributed
DHT
Daemon
BitHoc Architecture
XML-RPC
4. 10/04/15 4
Data Sharing Ovelay
OLSR Routing
Daemon
BitHoc Tracker
List of peers
List of
torrents
Routing
Table
Membershi
p Overlay
Sharing Sessions
Status Data Base
BitHoc
Client
BitHoc
Torrent
Files
Finder
Http Messages
Torrent
Files Data
Base
Distributed
DHT
Daemon
BitHoc Architecture
XML-RPC
5. 10/04/15 5
BitHoc Tracker is Written in C++ using Visual Studio 2008
The main functionalities are:
Maintaining the membership of the distributed overlays of different
Torrents.
Based on the HTTP messages received from the BitHoc client and
the other trackers.
Updates the trackers’ overlay map each time the OLSR routing
daemon modifies the routing table.
Maintaining the distributed .torrent files database.
BitHoc Tracker
6. 10/04/15 6
BitHoc Tracker
Other Features:
Detecting the 1-Hop neighbors and updating the
trackers overlay based on that (The OLSR routing
daemon does not detect the 1-hop neighbors).
A configuration wizard that enables specifying specific
parameters (e.g. Http listening port, Broadcasting port,
Broadcast address, Tracker Client Poll Interval,
Activating trace functionalities)
A dialog that shows the current device routing table.
A dialog that shows the list of peers.
A dialog that shows the list of torrents.
10. 10/04/15 10
Data Sharing Ovelay
OLSR Routing
Daemon
BitHoc Tracker
List of peers
List of
torrents
Routing
Table
Membershi
p Overlay
Sharing Sessions
Status Data Base
BitHoc
Client
BitHoc
Torrent
Files
Finder
Http Messages
Torrent
Files Data
Base
Distributed
DHT
Daemon
Architecture
XML-RPC
11. 10/04/15 11
BitHoc Client
BitHoc Client is written in C++ using visual studio 2008, based
on the Multiplatform socket and OpenSSL libraries adapted to
Windows Mobile 6.
Startting from Btpeer, core bittorrent client functionality
implemented in C++
Via a configuration dialog the user can choose between:
The Basic Internet bittorrent version.
Bittorrent version adapted to AdHoc mobile networks.
12. 10/04/15 12
BitHoc Client
Other features:
Create torrent wizard that enables you to create a MetaInfo file
from your mobile device.
Leech, Seed torrent from within the application.
Pause and resume download.
Organize all torrents that have been processed into one single
hierarchical directory based on the hash associated to each
torrent.
13. 10/04/15 13
BitHoc Client
Show each torrent downloading status ( File name, Size,
Downloaded bytes, Elapsed Time, Number and list of peers included in the
downloading process, Number of uploaded bytes in case of seeding).
Details Dialog showing more details about the file one is
currently downloading ( absolute path, Number of pieces, Tracker
announce URL, Piece Size, Slice Size,...).
Configure BitTorrent client wizard that enables specifying
the following parameters ( Listen port, Torrents directory, where
downloaded torrents will be store, Choke Timer, Min Peers, Max Peers, Max
Downloader and Max Active Torrents)
17. 10/04/15 17
Data Sharing Ovelay
OLSR Routing
Daemon
BitHoc Tracker
List of peers
List of
torrents
Routing
Table
Membershi
p Overlay
Sharing Sessions
Status Data Base
BitHoc
Client
BitHoc
Torrent
Files
Finder
Http Messages
Torrent
Files Data
Base
Distributed
DHT
Daemon
Architecture
XML-RPC
18. 10/04/15 18
BitHoc Search Engine
BitHoc Search Engine is written in C# using visual studio 2008
Compact .NET framework 2.0
PocketXML-RPC library.
BitHoc Search Engine is a multi-tab application that presents
the following features:
Publishing a new .Torrent file either via the local tracker of the
remote DHT service.
Retrieving a .Torrent file by specifying a set of keywords.
Download on point-to-point the retrieved .Torrent files from the
remote host.
21. 10/04/15 21
Proposed Demo Scenario
Create a torrent file from an already existing data file,
Using BitHoc Search Engine, the seeder has to associate a
description to the torrent file and to publish it,
Using BitHoc Client, the seeder has to start seeding the
published torrent file,
Using BitHoc Search Engine, the other leechers has look for the
published torrent file using keywords related to the published
description,
Once they have downloaded the torrent file leechers could join
the sharing session, using BitHoc Client.
22. Bithoc website: http://planete.inria.fr/bithoc/
Mohamed Karim Sbai, Chadi Barakat, Jaeyoung Choi, Anwar Al Hamra, Thierry Turletti,
"Adapting BitTorrent to wireless ad hoc networks" In proceedings of 7th International
conference on ad hoc networks and wireless 2008 (AD-HOC NOW), Sophia Antipolis,
France, September 2008.
Amir KRIFA, Mohamed Karim SBAI, Chadi BARAKAT, Thierry TURLETTI, "A standalone
content sharing application for spontaneous communities of mobile handhelds", demo
description in proceedings of the ACM SIGCOMM MobiHeld Workshop, Barcelona, Aug
2009.
Amir KRIFA, Mohamed Karim SBAI, Chadi BARAKAT, Thierry TURLETTI, "BitHoc: A
content sharing application for Wireless Ad hoc Networks", demo description to appear in
proceedings of the IEEE Percom conference, Galveston, Texas, March 2009.
10/04/15 22
References