SlideShare a Scribd company logo
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
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
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
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
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
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/04/15 7
BitHoc Tracker
(Configuration, Dialog and UI )
10/04/15 8
BitHoc Tracker
(Configuration, Dialog and UI )
10/04/15 9
BitHoc Tracker
(Configuration, Dialog and UI )
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
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.
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.
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)
10/04/15 14
BitHoc Client Configuration Dialog
10/04/15 15
BitHoc Client Main Interface
10/04/15 16
BitHoc Client
Creating a new MetaInfo file
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
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.
10/04/15 19
BitHoc Search Engine Dialogs
10/04/15 20
Some Experimental Results
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.
 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

More Related Content

Similar to A Standalone Content Sharing Application for Spontaneous Communities of Mobile Handhelds

Pac sec2011 ruoando-nict-2011-11-09-01-eng
Pac sec2011 ruoando-nict-2011-11-09-01-engPac sec2011 ruoando-nict-2011-11-09-01-eng
Pac sec2011 ruoando-nict-2011-11-09-01-eng
Ruo Ando
 
Pac sec2011 ruoando-nict-2011-11-09-01-eng
Pac sec2011 ruoando-nict-2011-11-09-01-engPac sec2011 ruoando-nict-2011-11-09-01-eng
Pac sec2011 ruoando-nict-2011-11-09-01-eng
Ruo_Ando
 
Bit torrent documentation
Bit torrent documentationBit torrent documentation
Bit torrent documentation
Avula Jagadeesh
 
Bit Torrent presentation
Bit Torrent presentationBit Torrent presentation
Bit Torrent presentation
Avula Jagadeesh
 
Bit sync personal_cloud
Bit sync personal_cloudBit sync personal_cloud
Bit sync personal_cloud
Flavio Vit
 

Similar to A Standalone Content Sharing Application for Spontaneous Communities of Mobile Handhelds (20)

Pac sec2011 ruoando-nict-2011-11-09-01-eng
Pac sec2011 ruoando-nict-2011-11-09-01-engPac sec2011 ruoando-nict-2011-11-09-01-eng
Pac sec2011 ruoando-nict-2011-11-09-01-eng
 
Pac sec2011 ruoando-nict-2011-11-09-01-eng
Pac sec2011 ruoando-nict-2011-11-09-01-engPac sec2011 ruoando-nict-2011-11-09-01-eng
Pac sec2011 ruoando-nict-2011-11-09-01-eng
 
Bittorrent
BittorrentBittorrent
Bittorrent
 
Bittorrent
BittorrentBittorrent
Bittorrent
 
Bit torrent documentation
Bit torrent documentationBit torrent documentation
Bit torrent documentation
 
Copy Of Part 4
Copy Of Part 4Copy Of Part 4
Copy Of Part 4
 
Bit Torrent technology
Bit Torrent technology Bit Torrent technology
Bit Torrent technology
 
BitThief Report
BitThief ReportBitThief Report
BitThief Report
 
Bit Torrent presentation
Bit Torrent presentationBit Torrent presentation
Bit Torrent presentation
 
Bit torrent protocol by milan varia
Bit torrent protocol by milan variaBit torrent protocol by milan varia
Bit torrent protocol by milan varia
 
BitTorrent on iOS
BitTorrent on iOSBitTorrent on iOS
BitTorrent on iOS
 
Bit torrent-technology
Bit torrent-technologyBit torrent-technology
Bit torrent-technology
 
Webrtc and tokbox
Webrtc and tokboxWebrtc and tokbox
Webrtc and tokbox
 
Bit sync personal_cloud
Bit sync personal_cloudBit sync personal_cloud
Bit sync personal_cloud
 
(130316) #fitalk bit torrent protocol
(130316) #fitalk   bit torrent protocol(130316) #fitalk   bit torrent protocol
(130316) #fitalk bit torrent protocol
 
IntroJan14.ppt
IntroJan14.pptIntroJan14.ppt
IntroJan14.ppt
 
Bit torrent
Bit torrentBit torrent
Bit torrent
 
Day: Open Development
Day: Open DevelopmentDay: Open Development
Day: Open Development
 
WebRTC Standards & Implementation Q&A - The Future is Now2!
WebRTC Standards & Implementation Q&A - The Future is Now2!WebRTC Standards & Implementation Q&A - The Future is Now2!
WebRTC Standards & Implementation Q&A - The Future is Now2!
 
BitTorrent Protocol
BitTorrent ProtocolBitTorrent Protocol
BitTorrent Protocol
 

More from Amir Krifa (6)

Adaptive Traffic Sampling and Management Platform
Adaptive Traffic Sampling and Management PlatformAdaptive Traffic Sampling and Management Platform
Adaptive Traffic Sampling and Management Platform
 
Mobi trade node
Mobi trade nodeMobi trade node
Mobi trade node
 
Mobitrade
MobitradeMobitrade
Mobitrade
 
Hbsd router.ppt
Hbsd router.pptHbsd router.ppt
Hbsd router.ppt
 
Realistic simulations of delay tolerant networks
Realistic simulations of  delay tolerant networksRealistic simulations of  delay tolerant networks
Realistic simulations of delay tolerant networks
 
Towards efficient content dissemination over DTN
Towards efficient content dissemination over DTNTowards efficient content dissemination over DTN
Towards efficient content dissemination over DTN
 

Recently uploaded

Recently uploaded (20)

JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Introduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationIntroduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG Evaluation
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdf
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
The architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfThe architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdf
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 

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)
  • 14. 10/04/15 14 BitHoc Client Configuration Dialog
  • 15. 10/04/15 15 BitHoc Client Main Interface
  • 16. 10/04/15 16 BitHoc Client Creating a new MetaInfo file
  • 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.
  • 19. 10/04/15 19 BitHoc Search Engine Dialogs
  • 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