Aalto University
School of
Electrical Engineering
Liberouter:
Towards Do-It-Yourself Networking
Jörg Ott
Teemu Kärkkäinen
http://www.netlab.tkk.fi/~jo/
24 January 2014
Aalto University
School of
Electrical Engineering
Down-to-Earth Neighborhood Networking:
Localizing Content Sharing
• Keeping content where is matters
• Preserving an intuitive understanding of the sharing
context: people in the same place (at the same time)
Aalto University
School of
Electrical Engineering
1) Networking platform
2) Sharing applications
Aalto University
School of
Electrical Engineering
Do-It-Yourself…
Aalto University
School of
Electrical Engineering
Opportunistic Networking
• Think messages, not packets
• Discover peers
• Exchange upon an encounter (“contact”)
WLAN
Bluetooth
…
Aalto University
School of
Electrical Engineering
Opportunistic Networking
• Think messages, not packets
• Discover peers
• Exchange upon an encounter (“contact”)
• Store (and carry), forward (replicate)
• Takes time, messages may disappear (best effort)
• Performance = f(node density, mobility, …)
WLAN
Bluetooth
…
Aalto University
School of
Electrical Engineering
Networking abstractions
• Direct device-to-device with low latency (IP)
• Direct and multi-hop Messaging (Bundles)
• Publish / subscribe mechanism – Applications register interest in content using metadata
– Matching content will be delivered
• Search – Enable complex message queries against stored content
– Based upon metadata description (generic matching)
• Floating content model – Spreading content in a limited area only [www.floating-content.net]
– Defined by (location, radius, content lifetime)
Aalto University
School of
Electrical Engineering
Applications: API and Distribution
SCAMPI Router
Search Unicast Pub/Sub
Storage
Peer Discovery Transport
Native API
TCP
Pla
tform
-independent
(needs J
VM
)
Native Apps
Pla
tform
-
specific
HTML5 Shim
HTML5
App
HTML5 App
Distribution
install install
Pla
tform
-
independent
Aalto University
School of
Electrical Engineering
Mobile devices alone may not be enough
• Device-to-device communication is tricky
– Mobile OSes and APIs designed for connecting to infrastructure
• How to bootstrap mobile devices?
– Want to avoid dependency on the web
• Just using people’s mobiles may not be very reliable
– Fluctuation in device density during the day, week, year
– Potentially shorter range, battery constraints
• More predictable storage locations desirable
– Apps need to keep their data somewhere
Aalto University
School of
Electrical Engineering
Liberouter
• Basic features – WLAN access point
– Captive portal
– SCAMPI router
– Storage node
– Can mesh with other liberouters
Raspberry Pi
WLAN i/f
USB flash drive
8 GB system SD card
Total: ~80 EUR
Aalto University
School of
Electrical Engineering
Liberouter
• Basic features – WLAN access point
– Captive portal
– SCAMPI router
– Storage node
– Can mesh with other liberouters
• Applications – Android liberouter distribution
– Native SCAMPI (Java) applications
– HTML5 SCAMPI-enabled
– HTML5 legacy
• Web Access – Local instance of the distributed app store
– Content interface: browsing (and interaction)
– Instrumenting non-SCAMPI nodes for forwarding
Aalto University
School of
Electrical Engineering
Component List - Raspberry Pi
- USB WiFi …
Software - SCAMPI Route
- Linux Distro
DIY Instructions - Building
- Configuring
Misc - 3D Printed Covers
- Power Options
EVERYTHING ONLINE
Aalto University
School of
Electrical Engineering
Aalto University
School of
Electrical Engineering
1) Networking platform
2) Sharing applications
Aalto University
School of
Electrical Engineering
Deploying applications
• Web Apps (HTML5)
– Limitations due to frameworks
– Require always-on Internet connectivity
• App Stores (native)
– Native apps: access to device features
– Store operator as a gatekeeper
+ quality control, trust
− Internet dependency, delay, potential censorship
• An app is nothing but a (signed) bag of bits
– Use messaging for distribution
Aalto University
School of
Electrical Engineering
SCAMPI Apps
Aalto University
School of
Electrical Engineering
SCAMPI Apps
Aalto University
School of
Electrical Engineering
Remember: This is NOT the Internet!
• Distance matters: focus on proximity
• Not necessarily instant feedback about success/failure
• Don’t try to compete with the Internet
– Emphasis is on different paradigms
• Applications operate invisibly in the background
• Respond immediately upon user attention
• Completeness, congruence & repeatability not essential
• Provide value-add with probabilistic operation
• Reflect this in the UI
Aalto University
School of
Electrical Engineering
Simple Messaging & Sharing Apps
Aalto University
School of
Electrical Engineering
Distributed “Google People Finder”
Aalto University
School of
Electrical Engineering
spacetimenetworks.com
Building infrastructure-free communication networks in challenging environments.
Aalto University
School of
Electrical Engineering
Conclusion
• Exploring less dependency on Internet services
• Building own networks of limited reach and scale
• Suitable for a range of information sharing applications
• Currently exploring
– More diverse (outdoor) applications
– Application authoring
– Mutable contents, distributed editing, and merging
– Limited real-time elements
• Do try this at home!
http://www.ict-scampi.eu/results/scampi-liberouter/
Top Related