File Sharing

advertisement
Gruppepresentasjon
Virtual Transparent Directory with
Mobile Ad-Hoc Networking
Henning Berg
Jon Oldevik
Lars Kristian Snellingen Bye
Mansur Ali Abbasi
Sven Jørgen Karlsen
Virtual Transparent Directory with
Mobile Ad-Hoc Networking
• Objectives
– Learning to ”ad-hoc”
– Implementing a simple solution to ad-hoc file sharing
• Approach
– Reading theory; books and articles
– Defining a prototype
• File Sharing on a virtual ad-hoc network
– Analysing usage areas
– Implementing the prototype
• Expected results
– Knowledge on mobile ad-hoc networking and bluetooth…
• Technology: J2ME, Bluetooth
• Usage
– An implemented prototype
– Documentation of results
Mobile Ad-Hoc Networking
• About ad-hoc
MANET
– Latin phrase: for this purpose
– Also: refer to an improvised and often impromptu event or solution
• In computer networking
–
–
–
–
–
–
Ad-hoc is mostly associated with wireless devices.
Requires no base station.
Devices discover others within range to form a network
Connections are possible over multiple nodes
Devices out of range can be found by forwarding
Routing protocols provide stable connections even if nodes are
moving around.
• Example: Sony's PlayStation Portable
uses Ad-Hoc connection for wireless
multiplayer gaming.
More about MANETs
•
Self-configuring network of mobile terminals
connected by wireless links
–
Which form an arbitrary topology.
•
The terminals are free to move randomly
and organise themselves arbitrarily;
•
May operate standalone or be connected to
a larger (Inter)net.
•
Minimal configuration and quick deployment
–
•
Natural or human-induced disasters, military conflicts,
emergency medical situations etc.
Earliest MANETs were called packet radio
networks
–
Sponsored by DARPA in the early 1970s..
a short range alternative for ad-hoc
HiMoNN (Highly Mobile
Network Node)
• Example of ad-hoc
application for tactical and
rescue services etc.
Prototypeapplikasjon –
Transparent Virtual Directory (TVD)
• Fildelingstjeneste der alle nodene i et ”tilfeldig” nett
skal kunne dele filer med hverandre ved bruk av
Bluetooth-kompatible enheter
• Skal brukes som grunnlag for resonnering om adhoc nettverk
• Flere problemområder knyttet til ”spontane” nettverk.
Blant annet:
–
–
–
–
–
Master/slave-problematikk (server/klient)
Ruting
Filreplikering og eierskap av filer
Lastbalansering
Filforwarding
Virkemåte til TVD
Tre scenarioer som kan beskrive de fleste situasjoner (ved å kombinere disse):
1.
To noder i et nett hvor ‘node A’ ønsker å laste ned to filer som befinner seg
fysisk på ’node B’
Tre noder i et nett hvor ‘node A’ ønsker å laste ned en fil fra ‘node B’ og en fil fra
‘node C’
Tre noder i et nett hvor ’node A’ og ’node B’ er innenfor rekkevidde av hverandre,
og ’node B’ og ’node C’ er innenfor rekkevidde av hverandre. ’Node A’ ønsker å
laste ned en fil fra ’node C’.
Scenario 1:
To noder, ’node A’ ønsker å laste ned to filer fra ’node B’
Scenario 2:
Tre noder, ’node A’ ønsker å laste ned en fil fra hver av de to andre
nodene i nettet
Scenario 3:
Tre noder, ’node A’ ønsker å laste ned en fil fra en node som ikke er
direkte tilgjengelig for ’node A’
Problemområder:
-
Master/slave-problematikk, ruting, lastbalansering og filforwarding:
- JSR82 som spesifiserer bruken av Bluetooth i J2ME-applikasjoner indikerer
en master/slave-kategorisering av enheter
- Mange noder i et nett kan føre til at mye av båndbredden blir brukt til
kontrollpakker
- Mobiler og PDAer har begrenset med prosessorkapasitet og minne, og
store, tunge rutingsprotokoller kan bli et problem
Vi tror en reaktiv point-to-point (hop-by-hop) rutingprotokoll vil være best for
TVD. En gitt rute blir funnet når den trengs
Vil trolig benytte JBAN – et rammeverk som fjerner master/slaveproblematikken, lastbalansering og har innebygd ruting
Problemområder:
Filreplikering og eierskap av filer
- Vil begrense oss til at kun én node i et nett kan dele ut en fil med et gitt
filnavn. Andre noder som laster ned denne filen vil ikke uten videre dele
denne ut
Usage areas of Ad Hoc networking
• Social services
– Dating, chatting
• Work related / ”useful” areas
– Emergency areas
– Military operations
– Sensor Networks
• Entertainment
– Gameplay
• Information sharing
– File sharing
– Streaming media services
– Commercial and sales
Usage areas of TVD
• Sharing of image and music files
• Comercials / product information
• Work situasions
– Document sharing
– Collecting data from nodes
Example usage scenario of TVD
• Document sharing between coworkers at a meeting:
– No papers
– No possibility to forget / loose links
– Don’t need to bring a big laptop, the cell phone is enough.
BEDD (Bringing People Together)
• BEDDmates
• BEDDpic
• BEDDbay
• BEDDtalk
• BEDDfish
• BEDDbuddies
http://www.bedd.com
Other Related Ad-Hoc Bluetooth Applications
• Mobiluck (http://www.mobiluck.com/)
– Sending messages and photos other to bluetooth
users
• ProximityMail (http://www.inventop.com/index.htm)
– Group-based message sending / subscription
• MeetingPoint (http://www.net-cell.com/MP/index.html)
– Channel-based contact application (messaging)
• Freejack and sMan
– ”Bluejacking” software
Bluetooth - background
• Bluetooth is a wireless standard for interconnecting devices, using
short -range, low-power, inexpensive radios.
– Radio: 2.4 Ghz ISM band, license-free. 79 (23) channels of 1 Mhz. Gross rate <= 1
Mbits
– Original idea: To get rid of the cables between devices (similar to infrared
networks)
Soon expands in scope and overlaps with WLAN and IR networks.
– 13 profiles (applications) built on stacks of more than 9 protocols.
• History:
– 1994: Ericsson initiated a SIG (special interest group) together with IBM, Intel,
Nokia and Toshiba, to std. connecting mobile phones with other devices without
cables.
• Named after Harald Blåtann II (940-981), a danish Viking king who unified
Denmark and Norway (a brief period, between Harald Hårfagre and Olav the
Saint).
– 1999: V1.0 released in 1500 pages (!).
Triggers a parallell effort in IEEE 802.15, which looks at WPANs, but only std. the
physical and data link layers. Purpose: Open std. managed by a neutral body.
– 2002: 802.15.1 approved by IEEE.
– 2004: V2.0 Core spec. with EDR (up to 3 Mbits speed) released.
– Present/Future: The two stds. will converge?
Bluetooth - architecture
•
Piconet: basic building block of a Bluetooth system
–
–
–
•
One master node, and up to7 active slave nodes (up to 255 parked nodes), <= 10 meters apart.
All communication goes through the master, direct slave-slave is not possible. The slaves are fairly dumb,
basically just doing doing whatever their master tells them to do.
Technical note: a piconet is a centralized TDM system, with the master controlling the clock and allocating time
slots.
Scatternet: interconnected piconets, via bridge nodes.
Bluetooth – protocol stack
•
Service Discovery Protocol (SDP): Inquire about services, find out how to access
Object exchange (OBEX)
Support “object exhanges”, basis for Synchronization Profile and File Transfer Profile.
● Radio Frequency Communication (RFComm): Emulates the std. serial port (RS-232) on
PCs for
integration with legacy devices.
● Logical link control adaptation protocol (L2CAP)
Packet intf. to higher layers (m/s roles hidden at this layer), packet segmentation and
reassembly.
Multiplexes several logical channels over one physical link.
●
J2ME – Java Platform, Micro Edition
• What is it?
– A set of technologies and specifications for small devices
– Small-footprint subsets of Java SE components
– Smaller virtual machine and leaner APIs targeted at consumer and
embedded devices
• Why suitable for us?
– Java Bluetooth API
– Open, non-proprietary standard for
bluetooth application development
– Hides complexity of Bluetooth and
allows focus on application development
J2ME – Java Platform, Micro Edition
Not so MICRO after all…?
JBAN – A potential pain reliever?
•
Pain:
–
–
–
•
Pain relief:
–
–
–
–
–
•
JBAN: a open source Java library for Bluetooth networking
Provides a new way to form an ad-hoc network at the Java application level
Allows unlimited devices to form a network dynamically
More robust networks, no distinction between master and slave nodes
Routing and network management is performed at high level
Possible pitfalls:
–
–
–
•
The process of forming a scatternet out of piconets is usually not dynamic and practical
The scatternets formed are not robust
Routing and network management causes a lot of headache for the developer
JBAN is relatively new (more or less a bundle of code in jar-file)
“Released” February 2006, no documentation, no reported experiences
May require some “hacking” to make it work the way we want it to
To use or not to use?
–
–
No pain no gain…JBAN may help increase the gain and reduce the pain
Decision: Let’s try it out!
Project status
• So far so good:
– Focused on background reading and understanding the
technology and tools
– Evaluated and abandoned several ideas before TVD:
• Triangular positioning of Bluetooth nodes
• Solutions for crisis management / emergency warnings
– Now have a well elaborated, feasible idea: TVD
– No external collaboration = free, independent development
• The path forward:
– Ready to embark on coding / implementation
• Work in smaller subgroups, iterative
• Testing in a Bluetooth network simulator?
– Will result in greater theoretical and practical insight into Mobile
Ad-Hoc Networking and especially Bluetooth+J2ME
– If successful in implementation and testing, further development
may be interesting (perhaps as a open source project)
Future of Bluetooth
• Advancements in progress
–
–
–
–
Larger range
Higher transfer speeds
QoS improvements
Will become more feasible for more sophisticated use
Download