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