Bluetooth Unleashed Wireless Netzwerke ohne Grenzen Lars Wernli Riccardo Semadeni Betreuer: Jan Beutel Professor: Lothar Thiele Sommersemester 2001 Inhalt • Theorie: – Problemstellung der Ad-Hoc Netzwerke – Routingmechanismus • Plattform: – Bluetooth als Standard – verwendete Netzwerksoftware (Axis) • Umsetzung: – – – – SS2001 Die Funktionen der Applikation Verbindungsaufbau im Detail Paketformate Performance-Abschätzung Bluetooth Unleashed 2 Wireless Ad-Hoc Netzwerke • • • • • dynamische Netzwerktopologie dezentrale Infrastruktur keine globale Koordination limitierte Reichweite Pfade über mehrere Hops • • • Knoten mit gleicher Netzwerkfunktionalität dynamischer Verbindungsaufbau limitierte Ressourcen spezielles Routingkonzept nötig SS2001 Bluetooth Unleashed 3 Ad-Hoc Netzwerke: Routing • Dynamic Source Routing (DSR) (IETF MANET Working Group, 2.2001) • Route wird bei Bedarf ermittelt – Tabelle – route request • ganze Route in jedem Paket enthalten – Grösse des Route-Cache anpassbar • geeignet für Bluetooth / Applikation – keine periodische Signalisierung – energiesparend – sleep mode möglich SS2001 Bluetooth Unleashed 4 Bluetooth • • • • • • Kommunikationsstandard für Daten- und AudioÜbertragung 2.4 GHz ISM Band 1 Mbit/s Bandbreite Master-Slave Betrieb Piconetze mit max. 7 aktiven Clients mehrere Piconetze bilden ein Scatternetz Piconetz SS2001 Bluetooth Unleashed Scatternetz 5 Axis OpenBT • Open Source Implementation für Linux • L2CAP implementiert Statemachine pro Verbindung Verbindungsmultiplex über L2CAP • • • Host Controller Interface (HCI) als Standardschnittstelle Device steuerbar mit asynchronen Events über HCI SS2001 Bluetooth Unleashed 6 Umsetzung – Applikation Endprodukt: Applikation mit Konsole-Interface Funktionalitäten der Applikation: inquiry BD-Adressen aller Knoten in Reichweite erfragen open_channel Kanal zu einem bestimmten Knoten öffnen send_buffer Datenbuffer an Nachbarknoten schicken xhop Datenpaket mittels multihop-Übertragung senden remote_command Befehl an einen entfernten Knoten zur Ausführung schicken remote_program Programm (aus remote-commands) aus Datei einlesen, und zur verteilten Ausführung verschicken time_measurement schickt mit einem Nachbarknoten Datenpakete hin und her, und misst die Zeit SS2001 Bluetooth Unleashed 7 Verbindungsaufbau SS2001 Bluetooth Unleashed 8 Paketformate xhop: verschickt Datenpaket über vorgegebene Route 1 remote_prog: 1 1 max ( 64 kB – header_len ) schickt Programm an entfernten Netzwerkknoten zur Ausführung 4 SS2001 Route_len * 6 4 1 1 Bluetooth Unleashed 9 Performance • Verbindungsaufbau langsam und teuer • Datenübertragung benötigt nur Bruchteil der Zeit für Verbindungsaufbau • Callbacks sind einfache und effiziente Lösung SS2001 Bluetooth Unleashed 10 Resultate Theorie: • • Recherche und Vergleich verschiedener Routingkonzepte Spezifikation einer reduzierten Version des DSR-Algorithmus Software: • • • • • • Drivers zur Initialisierung und Ansteuerung des BT Moduls singlehop und multihop Übertragung Remote Command Remote Program Funktionen zur Zeitmessung Steuerung durch Konsole-Applikation SS2001 Bluetooth Unleashed 11 Schwierigkeiten / Ausblick Schwierigkeiten: • • • Axis Stack nur sehr beschränkt dokumentiert Axis Stack nicht 100% Bluetooth-konform und noch Bugs Bluetooth Hardware nicht multipoint-fähig Ausblick: • • • DSR-Implementierung nur mit multipoint-Hardware sinnvoll um multipoint-Hardware zu nutzen, muss Applikation leicht angepasst werden (CID-Management) Axis Stack wird von vielen Entwicklern verwendet, Fortbestand wahrscheinlich SS2001 Bluetooth Unleashed 12 Demonstration SS2001 Bluetooth Unleashed 13 SS2001 Bluetooth Unleashed 14 Routingkonzepte SS2001 Bluetooth Unleashed 15 Dynamic Source Routing Eigenschaft Vorteile Nachteile ‚on demand‘ • kein Overhead durch periodische Signalisierung • weniger Speicherbedarf • einfache Implementierung • längere mittlere Reaktionszeit • Netzwerktopologie weniger aktuell • Gesamttopologie unbekannt ganze Routes werden gespeichert • Zwischenknoten müssen keine Routinginformation speichern • mehrere Routes pro Zielknoten möglich • Netzwerkinformation leichter extrahierbar • mehr Speicherbedarf pro Knoten • mehr Overhead in den Datenpaketen • Route Cache komplexer SS2001 Bluetooth Unleashed 16 Ericsson BT Modul • Entwicklungs-Prototyp • kein multichannel (broadcast) möglich kein multipoint • • Datentransfer über RS232Schnittstelle oder USB SS2001 Bluetooth Unleashed 17 Übermittlung eines Datenpaketes Übermittlungszeit (mikrosekunden) • Code fuer timing measuring vorbereitet SS2001 800 Nutzdatenlänge (bytes) Bluetooth Unleashed 18 Zeitmessung Verbindungsaufbau SS2001 Bluetooth Unleashed 19