03.12.2012 Aufrufe

Studienarbeit - Bluetooth-Anwendungen

Studienarbeit - Bluetooth-Anwendungen

Studienarbeit - Bluetooth-Anwendungen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Studienarbeit</strong><br />

<strong>Bluetooth</strong>-<strong>Anwendungen</strong><br />

„unplug and connect“<br />

Bearbeiter Schwerpunkte<br />

Holger Hildebrandt 1.1, 1.2, 1.3, 2.1, 2.3, 3.1-4 , 4.<br />

Kay Pein 1.1, 1.2, 1.4, 2.1-3, 3.1-4


Inhalt<br />

KAPITEL 1 - DER FUNKSTANDARD BLUETOOTH<br />

1.1. EINLEITUNG: WAS IST BLUETOOTH?<br />

1.1.1. MOTIVATION<br />

1.1.2. URSPRUNG<br />

1.1.3. EINORDNUNG DES STANDARDS<br />

1.1.4. ABGRENZUNG ZU ANDEREN FUNKÜBERTRAGUNGSSTANDARDS<br />

1.1.5. VERWENDUNG DER BLUETOOTH-TECHNOLOGIE<br />

1.2. GRUNDLAGEN BLUETOOTH<br />

1.2.1. FAST FREQUENCY HOPPING - VERFAHREN<br />

1.2.2. LEISTUNGSKLASSEN<br />

1.2.3. NETZTOPOLOGIEN<br />

1.2.4. ADRESSIERUNG UND STATUSMODI<br />

1.2.5. KANALTYPEN<br />

1.2.5.1. Synchronous Connection-Orientated (SCO):<br />

1.2.5.2. Asynchronous Connection-Less (ACL)<br />

1.2.6. DIE SICHERHEIT BEI VERWENDUNG VON BLUETOOTH<br />

1.3. STANDARDS UND EVOLUTION<br />

1.3.1. EINLEITUNG<br />

1.3.1.1. Wozu sind Standards nötig?<br />

1.3.1.2. Wer macht die Standards bei <strong>Bluetooth</strong>?<br />

1.3.2. DIE STANDARDS IM ÜBERBLICK<br />

1.3.2.1. <strong>Bluetooth</strong> 1.0a und 1.0b<br />

1.3.2.2. <strong>Bluetooth</strong> 1.1<br />

1.3.2.3. <strong>Bluetooth</strong> 1.2<br />

1.3.2.3.1. eQoS<br />

1.3.2.3.2. Verbesserter Verbindungsaufbau<br />

1.3.2.3.3. Neuer Übertragungsmodus eSCO<br />

1.3.2.3.4. Interferenzminimierung durch AFH<br />

1.3.2.3.5. Abwärtskompatibilität zu <strong>Bluetooth</strong> 1.1<br />

1.3.2.3.6. Anlehnung der Wortwahl an IEEE<br />

1.3.2.3.7. Grundlegende Umstrukturierung<br />

1.3.2.3.8. Verabschiedung neuer Profile<br />

1.3.2.3.9. Anonymity Mode<br />

1.3.2.4. Ausblick auf <strong>Bluetooth</strong> 2.0<br />

1.3.3. BLUETOOTH IN DER IEEE<br />

1.4. BLUETOOTH-PROTOKOLLSTAPEL<br />

1.4.1. EINLEITUNG<br />

1.4.2. DIE PROTOKOLLE DER BLUETOOTH-ARCHITEKTUR<br />

1.4.2.1. <strong>Bluetooth</strong> Kernprotokolle<br />

1.4.2.1.1. <strong>Bluetooth</strong> Radio / Baseband<br />

1.4.2.1.2. Link Manager Protocol (LMP)<br />

1.4.2.1.3. Logical Link Control and Adaptation Protocol (L2CAP)<br />

1.4.2.1.4. Das Host Controller Interface (HCI)<br />

1.4.2.1.5. Service Discovery Protocol (SDP)<br />

1.4.2.1.6. Audio<br />

1.4.2.2. Cable Replacement Protocol<br />

1.4.2.2.1. RFCOMM (Radio Frequency Communication)<br />

1.4.2.3. Telefonie-Steuerungs-Protokolle<br />

1.4.2.3.1. Telephony Control – Binary<br />

1.4.2.3.2. Telephony Control – AT Commands<br />

1.4.2.4. Aufgesetzte Protokolle<br />

1.4.2.4.1. OBEX Protocol<br />

1.4.2.4.2. Content Formats vCard und vCalendar<br />

1.4.2.4.3. Internetprotokolle<br />

1.4.2.4.4. PPP (Point to Point Protocol)<br />

1.4.2.4.5. TCP/UDP/IP<br />

1.4.2.4.6. Wireless Application Protocol WAP


1.4.3. PAKETAUFBAU<br />

1.4.3.1. Adressierung<br />

1.4.3.2. Pakete<br />

KAPITEL 2 - VERBINDUNGSANALYSE<br />

2.1 VORSTELLUNG DES BLUETOOTH-PROTOKOLLTESTERS FTS<br />

2.1.1. FTS – AIRSNIFF (BASIC) TUTORIAL<br />

2.1.2. ANMERKUNG<br />

2.2 MSC EINER OBEX DATENÜBERTRAGUNG<br />

2.2.1. DARSTELLUNG<br />

2.2.2. ANMERKUNG<br />

2.3 BLUETOOTH IN DER PRAXIS<br />

2.3.1. KONFIGURATION UND BETRIEB<br />

2.3.2. REICHWEITEN<br />

2.3.3. KANALNUTZUNG IN FFH<br />

KAPITEL 3 - KOEXISTENZ IM ISM-BAND<br />

3.1 EINLEITUNG<br />

3.2 FTS-PAKETANALYSE<br />

3.2.1. STÖREINFLUSS VON WLAN<br />

3.2.2. STÖREINFLUSS EINER MIKROWELLE<br />

3.2.3. FAZIT<br />

3.3 DURCHSATZMESSUNGEN<br />

3.3.1. MOTIVATION<br />

3.3.2. WAHL EINES GEEIGNETEN PROGRAMMS<br />

3.3.3. VORBEREITUNG DES EXPERIMENTS<br />

3.3.4. MESSAUFBAU<br />

3.3.5. DURCHFÜHRUNG<br />

3.3.6. AUSWERTUNG<br />

3.3.7. FAZIT<br />

3.4 CROSS MEASUREMENTS<br />

3.4.1. EINFÜHRUNG<br />

3.4.2. VISUALISIERUNG<br />

3.4.3. FAZIT<br />

KAPITEL 4 - DIE FUNKTIONSWEISE VON AFH<br />

4.1 EINLEITUNG<br />

4.2 MOTIVATION<br />

4.3 KLASSIFIKATION DER FREQUENZKANÄLE<br />

4.3.1. CHANNEL-CLASSIFICATION<br />

4.3.2. CHANNEL-MAP<br />

4.3.2.1. Channel-Classification-Report<br />

4.4 CHANNEL-MAP-ÜBERMITTLUNG UND AKTIVIERUNG VON AFH<br />

4.4.1. FREQUENZAUSWAHL<br />

4.4.2. NICHT-ADAPTIVE SLAVES<br />

4.4.3. ANMERKUNG<br />

4.5 SAME CHANNEL METHOD<br />

4.6 ABWÄRTSKOMPATIBILITÄT ZU BLUETOOTH 1.1


Abkürzungen<br />

A<br />

ACK Acknowledge<br />

ACL Asynchron Connection-Less<br />

AFH Advanced Fequency Hopping<br />

AM_ADDR Active Member Address<br />

API Application Programming Interface<br />

ARQ Automatic Repeat Request<br />

ARQN Ackknowledge Request Number<br />

AT Attention (in Telephone Control Commands)<br />

B<br />

BD_ADDR <strong>Bluetooth</strong> Device Address<br />

BT <strong>Bluetooth</strong><br />

C<br />

CAC Channel Access Code<br />

CC Channel Classification<br />

CCR Channel Classification Report<br />

ChM Channel Map in AFH (eigene Abk)<br />

CRC Cyclic Redundancy Check<br />

CSMA/CD Carrier Sense Multiple Access w/ Collision Detection<br />

CTP Cordless Telephony Profile<br />

CTS Clear To Send<br />

CVSD Continuos Variable Slope Delta<br />

D<br />

DAC Device Access Code<br />

DH Data High-rate (Packettyp in ACL)<br />

DM Data Medium-rate (Packettyp in ACL)<br />

DSR Data Set Ready<br />

DTR Data Terminal Ready<br />

DUN-P Dial-Up Networking Profile<br />

DV Data Voice (Packettyp in SCO)<br />

E<br />

eQoS enhanced QoS<br />

eSCO enhanced SCO<br />

ETSI European Telecommunications Standardisation Institute<br />

EV Enhanced Variable (Packettyp in SCO)<br />

F<br />

FAX-P Fax-Profile<br />

FEC Forward Error Correction<br />

FFH Fast Frequency Hopping<br />

FTP File Transfer Protocol<br />

G<br />

GFSK Gaussian Frequency Shift Keying<br />

GSM Global System for Mobile Communication<br />

H<br />

HCI Host Controller Interface<br />

HEC Header Error Check


HF Hochfrequenz<br />

HTTP Hyper Text Transfer protocol<br />

HV High quality Voice (Packettyp in SCO)<br />

I<br />

IAC Inquiry Access Code<br />

ID Identification<br />

IEC International Electrotechnical Commission<br />

IEEE Institute of Electrical and Electronics Engineers<br />

IP Internet Protocol<br />

IrDA Infra-red Data Association<br />

IrMC Ir Mobile Communication<br />

ISDN Integrated Services Digital Network<br />

ISM Industrial, Science, Medical<br />

ISO International Standardization Organisation<br />

ITU-T International Telecommunication Union – Telecom Standardization<br />

L<br />

L2CAP Logical Link and Control Adaption Protocol<br />

LAN Local Area Network<br />

LAP Lower Address Part<br />

LC Link Controller<br />

LCP Link Control Protokol<br />

LLC Logical Link Controller<br />

LM Link Manager<br />

LMANSC LAN/MAN Standards Committee<br />

LMP Link Manager Protocol<br />

LSB Least Significant Bit<br />

M<br />

MAC Medium Access Control<br />

MAN Metropolitain Area Network<br />

MSB Most Significant Bit<br />

MSC Message Sequence Chart<br />

MTU Maximum Transfer Unit<br />

N<br />

NAK Negative Acknowledgement<br />

NAP Non-significant Address Part<br />

O<br />

OBEX Object Exchange Protocol<br />

OSI Open Systems Interconnection<br />

P<br />

PAN Personal Area Network<br />

PC Personal Computer<br />

PCI Peripheral Component Interconnect<br />

PCM Pulse Code Modulation<br />

PCMCIA Personal Computer Memory Card International Association (PC Card)<br />

PDA Personal Digital Assistent<br />

PDU Potocol Data Unit<br />

PER Packet Error Rate<br />

PIN Personal Indetification Number<br />

PM_ADDR Parked Member Address<br />

PPP Point-to-Point Protocol


Q<br />

QoS Quality of Service<br />

R<br />

RF Radio Frequency<br />

RFC Request for Comments<br />

RFCOMM Radio Frequency Communication<br />

RS232 COM-Schnittstellenstandard<br />

RSSI Received Signal Strength Indication<br />

RTS Ready To Send<br />

Rx Receiver<br />

S<br />

SAR Segmentation and Reassembly<br />

SCO Synchronous Connection-Orientated<br />

SDDB Services Discovery Data Base<br />

SDP Services Discovery Protocol<br />

SDU Service Data Unit<br />

SEQN Sequence Number<br />

SIG Special Interest Group<br />

SIM Subscriber Identy Module<br />

T<br />

TCP Transport Control Protocol<br />

TCS Telephony Control Services<br />

TCS-bin Telephony Control Services - binary<br />

TDD Time Division Duplex<br />

TG Task Group<br />

Tx Transmitter<br />

U<br />

UAP Upper Address Part<br />

UDP User Datagram Protocol<br />

USB Unversal Serial Bus<br />

UUID Universal Unique Identifier<br />

W<br />

WAE WAP Application Environment<br />

WAP Wireless Application protolcol<br />

WBMP WAP Bitmap<br />

WLAN Wireless LAN<br />

WML Wireless Meta Language<br />

WPAN Wireless Personal Area Network


Kapitel 1 - Der Funkstandard <strong>Bluetooth</strong><br />

1.1. Einleitung: Was ist <strong>Bluetooth</strong>?<br />

1.1.1. Motivation<br />

Ein hohes Kommunikationsaufkommen führt letztendlich zu einem größeren Verlangen nach<br />

Informationsaustausch zwischen verschiedenen Geräten. Dafür notwendige<br />

Kommunikationskanäle werden durch mechanisch anfällige und oft wenig komfortable<br />

Kabelverbindungen realisiert. Doch ist dieser auftretende „Kabelsalat“ für moderne mobile<br />

<strong>Anwendungen</strong> und auch bei anderen interagierenden Geräten teilweise überaus lästig. Eine<br />

der aufstrebenden Funkkommunikationslösungen, die dies im Nahbereich ohne Kabel<br />

möglich machen, ist <strong>Bluetooth</strong>.<br />

Weg und Ziel dieses Standards soll hier kurz beschreiben werden. Die inhaltlichen Fakten<br />

stützen ich dabei, bis auf wenige gekennzeichnete Ausnahmen, vollständig auf die<br />

Spezifikationen des <strong>Bluetooth</strong>-Standards [1, 2, 3]. Begründet ist diese Beschränkung der<br />

verwendeten Literatur durch sehr häufige und oft gravierende Widersprüche in verschiedenen<br />

Lektüren zum generellen Thema <strong>Bluetooth</strong>. Für Illustrationsmöglichkeiten und<br />

weiterführende Informationen wurden sehr begrenzt die unter [4] bis [19] aufgeführten<br />

Quellen als Vorlage verwendet. Bezogen auf Erfahrungsberichte, Marktneuheiten, Ausblicke<br />

und Interoperabilitätsprobleme, flossen zum Bearbeitungszeitpunkt aktuelle Informationen<br />

aus verfügbaren technischen Newstickern mit in die Ausarbeitung ein.<br />

1.1.2. Ursprung<br />

Die <strong>Bluetooth</strong>-Technologie geht zurück auf einen Entwurf, der bereits 1994 von der Firma<br />

Ericsson entwickelt wurde. Ericsson trat nach der grundsätzlichen Konzeption dieser<br />

Technologie an andere Hersteller von vorrangig tragbaren elektronischen Geräten heran. Ziel<br />

war dabei eine weltweite Standardisierung durchzusetzen.<br />

Im Jahr 1998 wurde von Ericsson gemeinsam mit Nokia, IBM, Toshiba und Intel die<br />

<strong>Bluetooth</strong> Special Interest Group (SIG) gegründet, die im Mai 1998 erstmals an die<br />

Öffentlichkeit trat und der sich mittlerweile weltweit mehr als 2100 Unternehmen durch eine<br />

<strong>Bluetooth</strong>-Anwender-Übereinkunft angeschlossen haben und aktiv die Entwicklung und<br />

Anpassung vorantreiben.<br />

Aufgrund der Vielzahl von Möglichkeiten, die dieser Standard zu verbinden versucht, wurde<br />

der Name <strong>Bluetooth</strong> (Blauzahn) gewählt. Dieser soll an den Dänischen König erinnern, der<br />

im zehnten Jahrhundert erstmals alle dänischen Provinzen unter seiner Krone vereinte. Dieser<br />

Vereinigungsgedanke soll in diesem Konzept des Datenaustausches weitergetragen werden.<br />

Um von Umgebungs- und Betriebsbedingungen möglichst unabhängig zu sein, wurde die<br />

Funktechnologie gegenüber der zu diesem Zeitpunkt bereits populäreren Infrarotübertragung<br />

favorisiert. Dadurch wurden Kurzstreckenfunkverbindungen auch ohne direkten Sichtkontakt<br />

möglich. Ferner ist dieser Standard eher anwendungsspezifisch gestaltet. Man kann ihn daher<br />

aus reiner Vermarktungssicht zwischen IrDA und WLAN ansiedeln.<br />

1


1.1.3. Einordnung des Standards<br />

Der Industriestandard <strong>Bluetooth</strong> wird von der IEEE unter dem Namen IEEE 802.15 in die<br />

bestehende Landschaft der IEEE-802-Normen eingereiht. Diese Klasse bezeichnet alle<br />

Benutzerszenarien, die durch ad-hoc-Konnektivität gekennzeichnet sind.<br />

Die <strong>Bluetooth</strong>-Technologie zeichnet sich durch die folgenden wesentlichen Designaspekte<br />

aus.<br />

Weltweite Nutzbarkeit<br />

Die drahtlose <strong>Bluetooth</strong>-Technologie verwendet das weltweit lizenzfrei verfügbare ISM-<br />

Funkfrequenzband. In den meisten Nationen liegt dieses Band im Frequenzbereich von 2400<br />

MHz bis 2483,5 MHz. Das ISM-Band (Industrial, Science, Medical) allgemein ist ein<br />

Frequenzbereich, der nicht der staatlichen Regulierung unterliegt und lizenzfrei für<br />

industrielle, wissenschaftliche und medizinische <strong>Anwendungen</strong> genutzt werden darf.<br />

Lediglich müssen Auflagen bezüglich der Sendeleistung und der Störung benachbarter<br />

Frequenzbereiche eingehalten werden. Somit dürfen <strong>Bluetooth</strong>-Geräte weltweit zulassungsfrei<br />

betrieben werden. Es muss aber mit Störungen durch andere Geräte gerechnet werden, die im<br />

gleichen Frequenzband arbeiten (z.B.: Mikrowellenherde, 802.11 WLANs, Medizinische<br />

Geräte, etc.). Diesen Störfaktoren wirken diverse Verfahren entgegen, sodass ein<br />

störungsfreier Betrieb gewährleistet ist bzw. genannte Störungen verkraftet werden.<br />

Sprach- und Datenunterstützung<br />

<strong>Bluetooth</strong> ist jeweils speziell für die Übertragung von Sprache und Daten konzipiert.<br />

Ad-hoc-Konnektivität<br />

Geräte sollen alleine andere Geräte in Reichweite finden und sich mit ihnen verbinden.<br />

Außerdem müssen mehrere Verbindungen gleichzeitig möglich sein.<br />

Sicherheit<br />

Mit Authentifizierung und Verschlüsselung soll derselbe Sicherheitsstandard wie bei<br />

Kabelverbindungen realisiert werden.<br />

Geringe Größe und kostengünstige Serienfertigung<br />

Im Vergleich zu anderen (Daten-) Funktechnologien, wie z.B. GSM, wird bei <strong>Bluetooth</strong> ein<br />

einfaches RF-Design verwendet, vergleichbar mit IrDA. Man ging beim Entwurf davon aus,<br />

dass sich ein <strong>Bluetooth</strong>-Sender/Empfänger fast immer in einem Mikroprozessor gesteuerten<br />

Endgerät befindet. Somit wurde die Steuerung und Fehlerkorrektur der Funkübertragung auf<br />

nachgeschaltete digitale Komponenten (Hardware und entsprechende Software) verlagert.<br />

Sehr geringe Leistungsaufnahme (und Sendeleistung)<br />

Um mobil zu werden, sollte die Leistungsaufnahme einer <strong>Bluetooth</strong>-Einheit, verglichen mit<br />

dem Host-Gerät, sehr klein sein um die Akkulaufzeit nicht unnötigerweise zu verringern. Dies<br />

wird durch die sehr geringe Sendeleistung im 2,4GHz-Band realisiert, wodurch der Einsatz in<br />

elektro-magnetisch-kritischen Umgebungen, wie z.B. in Kraftwerken, Krankenhäusern,<br />

Flugzeugen (Lufthansa), ermöglicht wird.<br />

1.1.4. Abgrenzung zu anderen Funkübertragungsstandards<br />

Im Bereich der drahtlosen Datenkommunikation gibt es mittlerweile diverse Standards,<br />

welche teilweise ein eigenes Einsatzgebiet besitzen und mit den anderen Standards nicht viel<br />

2


gemeinsam haben. In nachfolgender Tabelle wird eine Gegenüberstellung der vier wichtigsten<br />

Technologien <strong>Bluetooth</strong>, IrDA, IEE 802.11b und Home-RF gegenübergestellt.<br />

<strong>Bluetooth</strong> IrDA IEE802.11b Home RF<br />

Verbindungstyp Spread Spectrum Infrarot Spread Spectrum Spread Spectrum<br />

(Frequency<br />

(Freqency (Freqency<br />

Hopping) kleiner Hopping Hopping<br />

Winkel oder Direct oder Direct<br />

(max 30°) Seqence) Seqence)<br />

Spektrum<br />

Übertragungsleistung<br />

max. Datendurchsatz<br />

max. Reichweite<br />

(hindernisfrei)<br />

Sichtverbindung<br />

nötig<br />

Unterstütze<br />

Stationen<br />

Sprachkanäle<br />

Datensicherheit<br />

Adressierung<br />

ISM-Band<br />

1 mW<br />

1 Mb/s<br />

10 m<br />

Optisch, 850<br />

nm<br />

100 mW<br />

16 Mb/s<br />

(VFIR)<br />

0,7 m<br />

3<br />

ISM-Band<br />

100 mW<br />

11 Mb/s<br />

(bald 54 Mb/s bei<br />

802.11g)<br />

100 m<br />

ISM-Band<br />

100 mW<br />

2 Mb/s<br />

300 m<br />

nein ja nein nein<br />

8 pro Piko-Netz<br />

3<br />

Authentifizierung:<br />

128 Bit;<br />

(optional)<br />

Verschlüsselung:<br />

mit 8-128 Bit<br />

MAC-Adresse<br />

mit 48 Bit.<br />

AM_ADDR<br />

mit 3 Bit<br />

2<br />

1<br />

keine<br />

(enger<br />

Winkel,<br />

kleine<br />

Reichweite)<br />

Physikalische<br />

ID<br />

mit 32 Bit.<br />

Mehrere Geräte<br />

pro Access-Point;<br />

mehrere AP’s<br />

Netzwerk<br />

nur Voice over IP<br />

Authentifizierung:<br />

Challenge-<br />

Response<br />

über WEP;<br />

Verschlüsselung:<br />

standard 40 Bit,<br />

optional 128 Bit.<br />

MAC-Adresse<br />

mit 48 Bit.<br />

127 pro Netzwerk<br />

6<br />

Blowfish-<br />

Verschlüsselungsalgorithmus<br />

MAC-Adresse<br />

mit 48 Bit.<br />

Bemerkungen in Europa nicht<br />

durchgesetzt,<br />

in USA verbreitet<br />

Tabelle 1.1 – Vergleich Funkstandards<br />

Wie aus der Tabelle ersichtlich wird, steht der IrDA-Standard konkurrierend zum <strong>Bluetooth</strong>-<br />

Standard, doch hat dieser die „schlechteren Karten“, was durch die deutlich höhere<br />

Sendeleistung und den immer notwendigen Sichtkontakt, daraus resultierend nur eine Punktzu-Punkt-Verbindung<br />

möglich, begründet ist.


Im Gegensatz zu <strong>Bluetooth</strong> hat IEEE 802.11b (WLAN) grundsätzlich ein völlig anderes<br />

Einsatzgebiet. <strong>Bluetooth</strong>-Geräte verbrauchen weniger Strom und sind für die Übertragung<br />

geringer Datenmengen über kürzere Distanzen entwickelt worden -<br />

Kommunikationskabelersatz. WLAN dagegen bietet Verbindungen bis zu 54 Mb/s für<br />

breitbandige Kommunikation über Distanzen von mehreren hundert Metern.<br />

1.1.5. Verwendung der <strong>Bluetooth</strong>-Technologie<br />

Nutzbar ist <strong>Bluetooth</strong> für eine Vielzahl von Szenarien. So könnten z.B. alle Geräte im Büro<br />

ohne Kabelprobleme frei im Raum platziert werden. Sie bilden dann ad hoc ein so genanntes<br />

Piko-Netz. Das beschreibt die spontane Interaktion von bis zu 8 aktiven Geräten in der<br />

Reichweite eines dieser Geräte (dem Master).<br />

<strong>Bluetooth</strong> ist somit bereits heute eine etablierte Funktechnik für den Nahbereich, die die<br />

drahtlose Anbindung mobiler Endgeräte wie Notebooks, Drucker und Mobiltelefone<br />

ermöglicht, so dass sie untereinander Daten austauschen können. Aber auch andere Geräte,<br />

wie z.B. Headsets, Tastaturen und ähnliches, kann man mit dieser Technik ausstatten.<br />

Damit lassen sich künftig zwei der größten Hindernisse beseitigen, die gegenwärtig die<br />

Benutzerfreundlichkeit solcher Geräte für Kunden einschränken. Dies wären zum einen die<br />

herstellerspezifischen Anschlusskabel und zum anderen die notwendigen Einstellungen und<br />

Eingaben, die für den Aufbau der Kommunikation notwendig sind. Dies wird durch so zu<br />

nennende anwendungsspezifische Profile realisiert.<br />

1.2. Grundlagen <strong>Bluetooth</strong><br />

In diesem Kapitel wird ein Überblick über die grundlegende Funktionsweise von <strong>Bluetooth</strong><br />

anhand des Standard <strong>Bluetooth</strong> 1.1 gegeben. Auf Änderungen bezüglich des im November<br />

2003 veröffentlichten Standards 1.2 wird in einem späteren, hierauf aufbauenden Kapitel<br />

eingegangen.<br />

1.2.1. Fast Frequency Hopping - Verfahren<br />

Wie bereits einführend erwähnt wurde, arbeiten <strong>Bluetooth</strong>-Transceiver im lizenzfreien ISM-<br />

Frequenzband, dem ein Frequenzbereich von 2400 MHz bis 2483,5 MHz zugewiesen ist.<br />

Bei der Übertragung bedient man sich des Fast Frequency Hopping Verfahrens (FFH). Dabei<br />

wird das zur Verfügung stehende Frequenzband in 79 gleich große Kanäle à 1 MHz<br />

aufgeteilt, zwischen denen 1600 Mal pro Sekunde gewechselt wird.<br />

Abbildung 1.1 – <strong>Bluetooth</strong>-Kanäle im ISM-Band<br />

In wenigen Ländern z.B. Japan, Frankreich oder Spanien ist das verwendbare Band schmaler.<br />

Dieser Sonderfall ist im weltweiten <strong>Bluetooth</strong>-Standard berücksichtigt und führt zur Nutzung<br />

von nur 23 Kanälen.<br />

4


* with exceptions / mit Ausnahmen - Quelle: <strong>Bluetooth</strong> Core-Specification 1.1<br />

Abbildung 1.2 – nationale Frequenzbeschränkungen<br />

FFH bietet gegenüber anderen Verfahren drei entscheidende Vorteile:<br />

1. Größere Unempfindlichkeit gegenüber schmalbandiger Störstrahlung:<br />

Idealisiertes Beispielszenario: Ein Mikrowellenherd strahlt mit einer bestimmten Frequenz<br />

im 2,45Ghz-Bereich ab. Somit ist der Kanal mit dem entsprechenden Frequenzbereich<br />

durch die Mikrowelle gestört. Bei <strong>Bluetooth</strong> würde die Daten- oder Sprach-Übertragung<br />

nur für eine 1/1600 Sekunde (625µs) gestört bzw. unterbrochen sein, da es in 79 Kanälen<br />

das gesamte zur Verfügung stehende ISM-Band nutzt.<br />

Abbildung 1.3 – Schmalbandige Störung<br />

2. Höhere Datensicherheit:<br />

Die schnellen Frequenzwechsel und der dahinter stehende Algorithmus sind nur mit sehr<br />

aufwendiger Technik zu erfassen und schwer zu decodieren.<br />

3. Dominant gegenüber anderen Funkverbindungen:<br />

Da <strong>Bluetooth</strong> 1600 Mal pro Sekunde den Frequenzkanal wechselt, ist auch die<br />

Wahrscheinlichkeit, dass <strong>Bluetooth</strong> eine WLAN-Übertragung blockiert höher, als dass<br />

WLAN <strong>Bluetooth</strong> stört. Im praktischen Teil dieser Arbeit detailliert gezeigt.<br />

5


Als Modulationsverfahren kommt das Gaussian-Frequency-Shift-Keying (GFSK) zum<br />

Einsatz. Diese weiche, nebenwellenarme Frequenzumtastung erreicht durch das<br />

Zwischenschalten Gauss'scher Filter eine höhere spektrale Effizienz.<br />

<strong>Bluetooth</strong> unterstützt Voll-Duplex-Verbindungen durch Anwendung von Time Division<br />

Duplex (TDD). Die entstehenden Zeitfenster werden zyklisch von 0 bis 2 27 (Festlegung)<br />

durchnummeriert.<br />

Dabei ist festgelegt, dass der Master immer in den geraden (Master-to-Slave-Slot) und ein<br />

Slave in den ungeraden Zeitfenstern (Slave-to-Master-Slot) sendet.<br />

Der Informationsaustausch findet in Paketform statt, wobei jedes Paket hauptsächlich in<br />

einem eigenen Zeitschlitz, welcher genau zwischen zwei Frequenzsprüngen liegt, gesendet<br />

wird (single-slot packet).<br />

Abbildung 1.4 – Time Slots<br />

6<br />

Quelle: <strong>Bluetooth</strong> Core-Specification 1.1<br />

Große Pakete, zum Beispiel zum Datentransfer, können im ACL-Modus auch 3 oder 5 solcher<br />

Zeitschlitze einnehmen (multi-slot packet). In diesem Fall wird für das komplette Paket die im<br />

ersten Zeit-Slot festgelegte Frequenz zur Übertragung genutzt. Die Interferenz-<br />

Störanfälligkeit nimmt mit jedem Multi-Slot-Paket durch die resultierende Verringerung der<br />

Frequenzsprünge weiter zu.


1.2.2. Leistungsklassen<br />

Abbildung 1.5 – Multislot-Pakete<br />

7<br />

Quelle: <strong>Bluetooth</strong> Core-Specification 1.1<br />

Um unterschiedliche Senderadien für räumliche Netzstrukturen zu erzielen, wurden für<br />

<strong>Bluetooth</strong>-Geräte drei Leistungsklassen bezüglich ihrer Sendeleistung spezifiziert. Die für<br />

eine Verbindung zur Verfügung stehende maximale Senderate (von 1Mb/s) ist bei allen drei<br />

Leistungsklassen jedoch identisch.<br />

Folgende Übersicht stellt die drei spezifizierten Leistungsklassen, bezüglich der<br />

Sendeleistung und maximalen Reichweite, gegenüber:<br />

<strong>Bluetooth</strong>-Typ Sendeleistung max. Reichweite<br />

(optimale Bedingungen)<br />

Class 1 Geräte High 100 mW (20 dBm) 100 m<br />

Class 2 Geräte Medium 2.5 mW (4 dBm) 20 m<br />

Class 3 Geräte Low 1 mW (0 dBm) 10 m<br />

Tabelle 1.2 – Sendeleistungsklassen<br />

Die Class1-Version wird auch als „Long-Range-<strong>Bluetooth</strong>“ bezeichnet, doch die derzeit am<br />

meisten verbreitete Leistungsklasse ist die preiswertere und stromsparende Class3.<br />

1.2.3. Netztopologien<br />

Interagieren zwei <strong>Bluetooth</strong>-Systeme, kommunizieren sie in einer Punkt-zu-Punkt-<br />

Verbindung miteinander, indem ein Gerät die Rolle des Masters übernimmt.<br />

Sobald eine Interaktion von mehr als zwei Geräten erforderlich ist, spricht man von einem<br />

Piko-Netz. Dies wird ebenfalls von einem Master verwaltet bzw. kontrolliert, indem sich bis<br />

zu sieben aktive Slaves auf ihn synchronisieren (Sprungtakt und Sprungabfolge).<br />

Die maximale Anzahl an zusätzlich eingebuchten Slaves, inaktiv im so genannten Parkmodus,<br />

ist je Piko-Netz auf 255 technisch beschränkt.


Jedes <strong>Bluetooth</strong>-Gerät hat eine eindeutige Hardware-Adresse von 48 Bit Länge (MAC-<br />

Adresse), deren Aufbau nach dem IEEE 802 Standard geregelt ist. Durch die <strong>Bluetooth</strong>device-adress<br />

(BD_ADDR) des Masters wird die Frquenzsprung-Reihenfolge (frequency<br />

hopping sequence) und der channel access code abgeleitet, welcher ein Piko-Netz eindeutig<br />

identifiziert. Darüber hinaus bestimmt der Master anhand seiner hardwareinternen Systemuhr<br />

das Timing der Frequenzänderungen für die Sprungsequenz und kontrolliert den<br />

Datenverkehr auf dem Kanal mittels eines Polling-Verfahrens.<br />

Unbedingt erwähnt werden sollte, dass alle <strong>Bluetooth</strong>-Geräte identisch aufgebaut sind und<br />

lediglich ein Gerät als „Master“ bezeichnet wird, dass den Verbindungsaufbau zu einem bzw.<br />

mehreren anderen Geräten (dann Slaves genannt) initiiert hat. Im späteren Verlauf einer<br />

Kommunikation ist der Tausch der Master-Slave-Rollen theoretisch möglich, um zum<br />

Beispiel eine weggefallene Master-Einheit zu ersetzen und dessen Aufgaben zu übernehmen.<br />

Abbildung 1.6 – Vernetzungstopologien<br />

Ein Piko-Netz ist durch ein individuelles Hopping-Schema geprägt und stellt daher<br />

theoretisch die Möglichkeit der lokalen Überdeckung mehrerer Piko-Netze dar. Zwei<br />

wenigstens partiell überlagerte Piko-Netze können durch mindestens ein gemeinsam<br />

genutztes Gerät zu einem so genannten Scatter-Netz verbunden werden. Der Master eines<br />

Piko-Netzes kann also auch Slave eines anderen Masters des anderen Piko-Netzes. In diesem<br />

Falle muss er sich aber in Reichweite des anderen Masters befinden. Wiederum gibt es auch<br />

die Möglichkeit eines gemeinsamen Slaves beider Netze, wodurch es nicht zwingend<br />

notwendig ist, dass die beiden Master der zu verknüpfenden Netze direkt kommunizieren<br />

können. Es ist jedoch nicht ausführbar, dass ein Gerät die Master-Rolle mehrerer Piko-Netze<br />

übernimmt.<br />

Somit ist es unter anderem möglich:<br />

1. ein ausgelastetes Piko-Netz durch ein weiteres Teilnetz zu erweitern,<br />

2. zur Überbrückung von räumlichen Distanzen mehrere Netze zu kaskadieren, sowie<br />

3. mindestens ein Gerät von mehreren Netzen aus (mit deren Mastern in Reichweite)<br />

gemeinsam zu nutzen.<br />

Anwendungsszenarien zu den oben genannten möglichen Ausprägungen eines Scatter-Netzes<br />

wären:<br />

8


Zu 1.) In einem Büro sollen mehr als acht <strong>Bluetooth</strong>-Geräte miteinander<br />

kommunizieren (nicht im Parkmodus). Durch die Limitierung von maximal acht<br />

aktiven Teilnehmern pro Piko-Netz muss ein Slave für ein neues Piko-Netz, zur<br />

Integration der übrigen (maximal wiederum 7) Geräte, als Master bzw. Slave des<br />

neuen Netzwerkes fungieren.<br />

Zu 2.) Ein Scanner befindet sich außerhalb der maximalen Reichweite eines Piko-<br />

Netzes (sendeleistungsabhängige Distanz/Senderadius von Master zu Slaves), doch<br />

gibt es einen Slave dieses Netzes welcher in Reichweite zum Scanner liegt. In diesem<br />

Falle kann dieser Slave in einem neuen Piko-Netz als Master für den Scanner<br />

fungieren.<br />

Zu 3.) Zwei Büros, die ihre eigenen Piko-Netze betreiben, möchten auf einen<br />

gemeinsamen Drucker zugreifen. Das gemeinsam genutzte Gerät sollte für beide<br />

Parteien ein Slave sein, da es nicht zur Kommunikation zwischen zwei Netzen dienen<br />

soll, sondern lediglich von beiden Netzten aus verfügbar sein sollte.<br />

1.2.4. Adressierung und Statusmodi<br />

Einzelne <strong>Bluetooth</strong>-Geräte werden, wie in allen IEEE 802 kompatiblen Standards (Ethernet,<br />

Token Ring, WLAN), über eine weltweit eindeutige 48 Bit breite Adresse, die <strong>Bluetooth</strong>-<br />

Device Address (BD_ADDR) angesprochen. Weiterhin adressiert ein Master alle aktiven<br />

Einheiten eines Piko-Netzes über die Active Member Address (AM_ADDR) der Größe 3 Bit,<br />

wobei die „0“ dieses Adressraumes als Broadcast an alle aktiven Slaves verstanden wird. Alle<br />

nicht aktiven Geräte in einem Piko-Netz werden mit der 8 Bit breiten Parked Member<br />

Address (PM_ADDR) erreicht.<br />

Interessant ist noch, dass mehrere Betriebszustände für ein <strong>Bluetooth</strong>-Gerät existieren.<br />

Betriebsmodi<br />

Standby-Modus: Das Gerät ist nicht mit einem Piko-Netz verbunden. In diesem Modus<br />

ist der Energiebedarf des Gerätes äußerst gering, da nur der<br />

Mastertimer des Gerätes läuft. Der Standby-Modus wird nur durch ein<br />

Inquiry oder Paging eines anderen Masters aufgehoben oder durch die<br />

Station selber, wenn sie ein Inquiry einleitet, um andere Stationen zu<br />

finden.<br />

Inquire-Modus: Ein bisher nicht verbundenes Gerät ermittelt alle <strong>Bluetooth</strong>-Einheiten,<br />

die sich in Reichweite befinden. Dabei sendet es in vorgegebenen<br />

Zeitschritten seine Inquiry-Nachrichten aus und wartet auf Antwort.<br />

Page-Modus: In diesem Zustand befindliche Master will sich mit einem bestimmten,<br />

ihm bekannten (Device Access Code) Gerät verbinden. Ist er dann mit<br />

diesem Slave oder mehreren verbunden, begibt er sich in den<br />

Connected-Modus.<br />

Page Scan: Gerät horcht auf Paging eines Masters (in einem Scan Window nach<br />

eigenem Device Access Code).<br />

9


Zustände im Verbindungsmodus<br />

Connected-Modus: Ein Master hat eine Verbindung mit einem bzw. mehreren Slaves<br />

etabliert.<br />

Active-Modus: Ein Slave steht aktiv in Verbindung zum Master.<br />

Drei weitere Energiesparmodi stehen für den Fall zur Verfügung, dass ein Gerät die<br />

Verbindung zu einem Master bereits hergestellt hat, aber nicht mehr als aktives Gerät in der<br />

Verbindung benötigt wird. Der Hold-, der Sniff- und der Park-Modus unterscheiden sich<br />

beispielsweise hinsichtlich des Arbeitszyklus des Gerätes, d.h. in dem zeitlichen Abstand, in<br />

welchem das Gerät auf einen Masteraufruf "horcht". Damit lassen sich Erreichbarkeit und<br />

Stromverbrauch individuell beeinflussen.<br />

Sniff-Modus: Ein Slave lauscht in regelmäßigen Abständen, ob Aktivität im Piko-<br />

Netz vorhanden ist oder nicht, ob ein Paket für ihn ankommt oder nicht.<br />

Dies wird über folgende zwei Parameter kontrolliert:<br />

a) Sniff-Attempt (Sniff-Versuch) legt fest, wie viele Zeitschlitze der<br />

Slave belauschen muss, unabhängig davon, ob die Pakete für ihn<br />

bestimmt sind oder nicht.<br />

b) Sniff-Timeout bestimmt, wie viele Zeitschlitze noch zusätzlich<br />

belauscht werden müssen, wenn er ein Paket mit seiner Adresse<br />

im Header bekommen hat.<br />

Wenn ein Paket an seine Adresse adressiert wurde, dann antwortet das<br />

Slave-Gerät dem Master.<br />

In diesem Modus wird die zuvor zugewiesene Active Member Address<br />

beibehalten und der Stromverbrauch beläuft sich im Durchschnitt auf<br />

300 µA.<br />

Hold-Modus: Eine bestehende ACL-Verbindung zwischen 2 <strong>Bluetooth</strong>-Einheiten<br />

kann für eine bestimmte Zeit auf Hold gesetzt werden, wenn keine<br />

Notwendigkeit besteht Daten zu senden bzw. zu empfangen. Während<br />

dieser Zeit kann kein Paket empfangen werden. Die Datenübertragung<br />

kann bei Bedarf wieder aktiviert werden, indem der Slave von sich aus<br />

seinen Zustand wieder verlässt. Auch in diesem Modus bleibt die zuvor<br />

zugewiesene Active Member Adress bestehen und der Stromverbrauch<br />

liegt bei nur 60µA.<br />

Park-Modus: Ein Slave soll an einem Kanal nicht teilnehmen, aber immer noch über<br />

das Frequenzsprungverfahren synchronisiert bleiben. Wird ein Slave<br />

allerdings in den Park-Modus versetzt, so gibt er seine Active Member<br />

Address auf und eine eindeutige Parked Member Address wird ihm<br />

vom Master zugewiesen, die er benutzen wird, um den Slave wieder in<br />

den Active-Modus zu versetzen. Der Stromverbrauch liegt bei<br />

respektablen 30 µA.<br />

10


Die folgende Abbildung liefert einen zusammenfassenden Überblick über die bestehenden<br />

Betriebs-Modi eines Slaves, respektive Masters.<br />

Abbildung 1.7 – Betriebszustände<br />

Angemerkt sei, dass bis zum Inquiry noch keine Rollenvergabe stattgefunden hat. Wird ein<br />

aktiviertes Gerät Master, bleibt es immer im so genannten Connected Mode.<br />

1.2.5. Kanaltypen<br />

Die Verbindung zwischen dem Master und den Slaves kann, je nach Anwendung, in zwei<br />

verschiedenen Kanaltypen realisiert werden. Somit kann die mögliche Datenrate von 1 Mbit/s<br />

einer Verbindung zum Master auf bis zu 3 synchrone verbindungsorientierte Kanäle und<br />

einen asynchronen verbindungslosen Kommunikationskanal aufgeteilt werden:<br />

1.2.5.1. Synchronous Connection-Orientated (SCO):<br />

Dieser Übertragungs-Modus bietet eine symmetrische Punkt-zu-Punkt-Verbindung zwischen<br />

dem Master und einem ausgewählten Slave im Piko-Netz. Es erfolgt eine Reservierung von<br />

zwei Zeitschlitzen in regulären Zeitintervallen (einer für Vorwärts-, einer für Rückrichtung),<br />

wodurch eine leitungsvermittelte Verbindung zwischen Master und Slave ermöglicht wird.<br />

Die Spezifikation legt maximal 3 synchrone Kanäle mit je 64 kbit/s fest. Die Bandbreite für<br />

jeden Kanal ist fest reserviert und jeweils in Sende- und Empfangsrichtung gleich groß.<br />

SCO dient typischerweise der zeitkritischen Übertragung von isochronen Datenströmen wie<br />

zum Beispiel Sprache. Daher wird auf die Verwendung von Prüfsummen verzichtet. Es ist<br />

nicht sinnvoll verlorene oder fehlerbehaftete Segmente eines kontinuierlichen<br />

Sprachdatenstroms erneut zu senden.<br />

<strong>Bluetooth</strong> verwendet hierbei zwei verschiedene Arten von Sprachkodierung, mit denen es<br />

möglich ist, die menschliche Stimme zu digitalisieren: PCM (Pulse Code Modulation) und<br />

CVSD (Continuous Variable Slope Delta).<br />

Um die fixe Datenrate von 64kbit/s zu realisieren, werden unterschiedlich viel Information<br />

enthaltende Pakete in unterschiedlichen Zeitschlitz-Perioden gesendet.<br />

11


Type Audio-<br />

Information<br />

(Byte)<br />

Abbildung 1.8 – SCO-Paketperioden<br />

Payload<br />

(bit)<br />

FEC CRC Zeitschlitz-<br />

Periode<br />

HV1 10 240 1/3 no 2<br />

HV2 20 240 2/3 no 4<br />

HV3 30 240 no no 6<br />

DV 80 230 nur Datenfeld nur Datenfeld 16<br />

Tabelle 1.3 – SCO-Pakettypen<br />

Das DV-Paket kombiniert Daten und Sprache. Das Nutzdatenfeld ist in 80bit für Sprache und<br />

bis zu 150bit transparente Daten aufgeteilt, welches durch eine 16-bit-CRC und 2/3 FEC<br />

gesichert ist.<br />

1.2.5.2. Asynchronous Connection-Less (ACL)<br />

Dieser asynchrone verbindungslose Übertragungsmodus setzt auf eine paketorientierte Punktzu-Mehrpunkt-Verbindung<br />

auf. Dabei verfügt der ACL-Kanal über die Datenrate, die nach<br />

Abzug der maximal drei reservierbaren SCO-Datenraten von je 64 kbit/s verbleibt. Somit<br />

findet die ACL-Datenübertragung nur in den nicht für SCO reservierten Zeitschlitzen statt.<br />

12


Abbildung 1.9 – ACL-Pakete bei SCO-Verbindung<br />

Der Zugriff der Slaves auf den besagten Kanal wird vom Master durch ein implizites Polling-<br />

Verfahren kontrolliert. Empfängt ein Slave ein an ihn adressiertes Daten-Paket vom Master,<br />

dann wird er im nächsten freien Slave-to-Master-Slot das nächste Paket seiner anstehen Daten<br />

senden. Wenn ACL-Pakete nicht an einen dedizierten Slave adressiert sind, werden sie als<br />

Broadcast-Information für alle Slaves angesehen. Über den ACL-Kanal werden Nutzer- oder<br />

Steuerdaten übertragen. Folgende Pakettypen existieren:<br />

Abbildung 1.10 – ACL-Pakettypen<br />

13<br />

Quelle: <strong>Bluetooth</strong> Core-Specification 1.1


Abbildung 1.11 – ACL-Paketperioden<br />

1.2.6. Die Sicherheit bei Verwendung von <strong>Bluetooth</strong><br />

Wie bei allen Funktechnologien ist es auch bei diesem Verfahren möglich den Datenstrom<br />

zwischen den kommunizierenden Einheiten abzuhören oder gar zu stören. Allein schon um<br />

eine Zulassung für das ISM-Band zu bekommen, muss jede Funktechnik von ihrer<br />

Konzeption her eine Abdeckung dieses gesamten Frequenzbands sicherstellen. Dies hat den<br />

Vorteil, dass Störungen von anderen ISM-Funkstandards (wie WLAN) nicht zur einer<br />

Nichtverwendbarkeit bei Überlagerung führen. Bei <strong>Bluetooth</strong> ermöglicht das genannte<br />

Frequenzsprungverfahren einen Wechsel zwischen allen national möglichen Frequenzkanälen<br />

und ist somit unanfällig gegen schmalbandige Störer, wie z.B. Mikrowellenöfen.<br />

Diese Robustheit ist auch zur Abwehr von nicht autorisierten Zugriffen auf den Datenverkehr<br />

hilfreich, da nur auf den Master synchronisierte Geräte der eindeutigen und einmaligen<br />

Sprungsequenz durch das gesamte Frequenzband folgen. Dies erfordert natürlich eine<br />

Anmeldung über eine nur den beiden Kommunikationspartnern bekannte ausreichend sichere<br />

PIN bei jedem Verbindungswunsch zu einem bisher noch nicht autorisierten Partner –<br />

Gerätepaarung oder Pairing.<br />

14


Abbildung 1.12 – Gerätepaarung (Schema)<br />

Jedes <strong>Bluetooth</strong>-Gerät authentifiziert sich mit seiner öffentlich zugänglichen weltweit<br />

eindeutigen, aber nicht fälschungssicheren MAC und kann somit immer wieder zugeordnet<br />

werden.<br />

Weiterhin ist es erforderlich seine Daten gegenüber anderen Teilnehmern auf der aktuell<br />

genutzten Frequenz zu verschlüsseln. Dies wird in <strong>Bluetooth</strong> optional mittels eines<br />

nichtstandardisierten Zufallsalgorithmus angeboten, ist aber nur auf die in den ACL-Paketen<br />

verpackten Nutzdaten beschränkt. Die Paket-Header müssen aufgrund der Adressierung im<br />

Pico- bzw. Scatter-Netz allen Teilnehmern zugänglich sein.<br />

Insgesamt werden drei Sicherheitsklassen (low, medium, high) im <strong>Bluetooth</strong>-Standard<br />

genannt. In der Stufe geringster Sicherheit kann jedes <strong>Bluetooth</strong>-Gerät mit jedem anderen in<br />

Verbindung treten und auf die auf dem anderen Gerät bereitgestellten Services zugreifen. BT-<br />

Einheiten, die höhere Sicherheitsstufen verwenden, lassen nur spezifizierte Geräte zur<br />

Anmeldung respektive autorisierte Zugriffe auf die Dienste zu.<br />

Hieraus lassen sich einige Empfehlungen zur besseren Sicherheit beim Einsatz von <strong>Bluetooth</strong><br />

in der Datenkommunikation ableiten. Neben den allgemeinen Hinweisen, wie keine<br />

unsicheren Voreinstellungen oder zu erratende PINs zu verwenden und ähnliche Fehler zu<br />

begehen, sollte bei <strong>Bluetooth</strong> die Sendeleistung sowie die freigegebenen Dienste<br />

weitestgehend eingeschränkt werden. Gegen bekannte Sicherheitslücken, wie z.B.<br />

Bluejacking, einen Text auf das Display eines gefundenes Geräts in Reichweite senden, oder<br />

unbekannte Angriffe, z.B. durch manipulierte Geräteadressen (Spoofing), kann sich der<br />

Anwender, neben dem Abschalten der <strong>Bluetooth</strong>-Funktionen, nur schwer schützen.<br />

15


1.3. Standards und Evolution<br />

1.3.1. Einleitung<br />

In diesem Kapitel soll auf die allgemeine Standardisierung der <strong>Bluetooth</strong>-Technologie näher<br />

eingegangen werden. Dabei steht die Entwicklung der verschiedenen aufeinander folgenden<br />

<strong>Bluetooth</strong>-Kernspezifikationen im Mittelpunkt der Betrachtungen. Es sollen grundlegende<br />

Eigenschaften und Verbesserungen bzw. Anpassungen an neue Aufgaben vorgestellt werden.<br />

1.3.1.1. Wozu sind Standards nötig?<br />

Standards sind zwingend notwendig um eine Kompatibilität zwischen Produkten<br />

verschiedener Hersteller für einen sehr langen Zeitraum, und dies möglichst weltweit,<br />

herzustellen. Aus der Sicht der Käufer von standardisierten Produkten bedeuten diese<br />

Festlegungen eine Ungebundenheit an einen bestimmten Hersteller und somit die freie<br />

Auswahl von gleichartigen Produkten anderer Hersteller auf dem Markt.<br />

Kurz gesagt: Nur in einer standardisierten Form kann sich die <strong>Bluetooth</strong>-Technologie als ein<br />

drahtloser Kabelkiller etablieren bzw. gegenüber anderen „short-distance“-Funktechnologien<br />

durchsetzen.<br />

1.3.1.2. Wer macht die Standards bei <strong>Bluetooth</strong>?<br />

Allgemein werden folgende Typen von Standards unterschieden:<br />

• Internationale Standards<br />

• Nationale Standards<br />

• Empfehlungen (Recommendations)<br />

• Request for Comments (RFC)<br />

• Industriestandards (durch Herstellervereinigung)<br />

Der lizenzfreie <strong>Bluetooth</strong>-Standard reiht sich in die Gruppe der Industriestandards ein, da<br />

dessen Festlegungen in einem Zusammenschluss zahlreicher interessierter Firmen, in der<br />

sogenannten „<strong>Bluetooth</strong> Special Interest Group“ (<strong>Bluetooth</strong> SIG), getroffen werden.<br />

Diese Spezifikation schreibt nur vor, wie sich <strong>Bluetooth</strong>-Geräte verhalten sollen, wobei die<br />

konkrete Realisierung den Herstellern selbst überlassen ist.<br />

Die 1998 gegründete SIG hat inzwischen in vier Kategorien insgesamt über 2000 Mitglieder,<br />

darunter die fünf Initiatoren: Ericsson, Nokia, Toshiba, Intel und IBM.<br />

Im Rahmen der einheitlichen Entwicklung des Funkverbindungssystems und Bildung eines<br />

breiten Produktspektrums umfasst der Aufgabenbereich des <strong>Bluetooth</strong>-Konsortiums:<br />

• die Spezifizierung des Protocol-Stacks und der Anwendungsprofile,<br />

• die Veranstaltung von Entwicklertreffen,<br />

• das Marketing und<br />

• die Sicherstellung der Interaktion von Geräten verschiedener Hersteller (Certification)<br />

Letzterer Punkt wir durch eine Konformitätsprüfung, nach Kriterien der <strong>Bluetooth</strong>-SIG<br />

erzielt. Die so genannte <strong>Bluetooth</strong>-Qualification kann bei berechtigten Dienstleistern, wie<br />

beispielsweise in Deutschland der Firma 7layers, erfolgen. Somit darf ein Hersteller sein<br />

16


Produkt (Hardware bzw. Software) erst nach bestandener Prüfung mit dem geschützten<br />

<strong>Bluetooth</strong>-Logo versehen und als <strong>Bluetooth</strong>-zertifiziert ausgeben.<br />

Für tiefgründigere Informationen über die <strong>Bluetooth</strong>-SIG, deren Vorgehensweise bei der<br />

Standardisierung und die vier Mitgliederkategorien wird auf die Homepage des Konsortiums<br />

verwiesen: � https://www.bluetooth.org/admin/bluetooth2/faq/search_faq.php<br />

1.3.2. Die Standards im Überblick<br />

Vorweg sei angemerkt, dass die Gegenüberstellung der Entwicklungsstufen des Bluetoth-<br />

Standards sich trotz ausgedehnter Recherche in Detailfragen als sehr schwierig erwies, da<br />

speziell zu den Versionsunterschieden kaum detaillierte Informationen zu finden waren. In<br />

themenrelevanten Quellen fanden sich in Abschnitten zu eigentlich vergleichbaren Passagen<br />

teils starke Widersprüche. Außerdem war die Glaubwürdigkeit der meisten unabhängigen<br />

Ausarbeitungen zum Thema meist fragwürdig.<br />

Auch die Inhalte der Archive offizieller Informationsseiten sind in Bezug auf die Darstellung<br />

aufgetretener Probleme und deren Lösungen oft unzureichend dokumentiert. Es wird meist<br />

nur mit der Einführung des nachfolgenden verbesserten Standards durch Auflisten<br />

verkaufsfördernder Begriffe geworben. So konnte z.B. zu den bekannten anfänglichen<br />

Kompatibilitätsproblemen zwischen <strong>Bluetooth</strong>-Geräten unterschiedlicher Hersteller, kein<br />

direktes Statement oder gar eine Erörterung gefunden werden. In dem öffentlichen Online-<br />

Forum der SIG-Homepage konnte in der Zeit der Recherche leider auch keine Information<br />

dazu erworben werden. Nur durch zeitaufwendiges Vergleichen der detailreichen<br />

Spezifikationsbeschreibungen könnten spezifische Änderungen identifiziert werden. Erst in<br />

der Dokumentation zum Standard 1.2 findet sich ein Abschnitt über die aktuellen technischen<br />

Neuerungen.<br />

1.3.2.1. <strong>Bluetooth</strong> 1.0a und 1.0b<br />

Nach der Gründung der <strong>Bluetooth</strong> Special Interest Group im Februar 1998 folgte im Mai des<br />

gleichen Jahres die offizielle Bekanntgabe des <strong>Bluetooth</strong>-Projekts. Diese viel versprechende<br />

Ankündigung führte in ihrer Art und Weise zu entsprechend hohen Erwartungen an den<br />

Kabelkiller. Am 26. Juli 1999 wurde auf der Homepage der SIG die Spezifikation des ersten<br />

offiziellen Standards, <strong>Bluetooth</strong> 1.0a, veröffentlicht.<br />

Diese Gesamtspezifikation ist in zwei Teilabschnitte unterteilt:<br />

„Core Specification (Volume I)“ In der Kernspezifikation werden die Grundfunktionen<br />

der <strong>Bluetooth</strong>-Geräte und deren Kommunikation über<br />

Protokolle, sowie die Anbindung an Hosts und<br />

einheitliches Fachvokabular festgelegt.<br />

„Profile Definitions (Volume II)“ Hier werden Festlegungen für die Profile getroffen,<br />

welche in dieser Arbeit nicht näher erläutert werden.<br />

Der <strong>Bluetooth</strong>-Standard 1.0a wird durch folgende Basis-Eigenschaften (Kernspezifikation),<br />

auf welche bereits im Kapitel Funktionsweise näher eingegangen wurde, charakterisiert:<br />

• FFH mit 1600 Sprüngen je Sekunde und TDD<br />

• Bruttotransferrate von 1 Mbit/s<br />

• ACL/ SCO-Übertragungen<br />

17


• Drei Sendeleistungsklassen (1mW, 2,5mW und 100mW)<br />

• Piko-Netz- (Master mit bis zu 7 Slaves) und Scatter-Netz-Topologie<br />

• zusätzliche Sicherheitsmaßnahmen<br />

Die Erwartungen der Interessenten wurden bei weitem nicht erfüllt, da zum Zeitpunkt der<br />

Vermarktung die Entwicklungen noch nicht weit genug gediehen waren. Hauptursachen<br />

waren Fehler bei der Kompatibilität, der Implementierung von Piko-Netzen bzw. Scatter-<br />

Netzen, sowie einer eindeutigen Master-Slave-Zuweisung zwischen den Geräten.<br />

Man konnte nicht von marktreifen Produkten sprechen, da es kaum Geräte verschiedener<br />

Hersteller auf dem Markt gab, die miteinander kommunizieren konnten.<br />

Nach nur sechs Monaten folgte am 1. Dezember 1999 ein überarbeiteter <strong>Bluetooth</strong>-Standard<br />

der Version 1.0b, welcher leider auch die grundlegenden Probleme der ersten offiziellen<br />

Version nicht lösen konnte.<br />

1.3.2.2. <strong>Bluetooth</strong> 1.1<br />

Durch die teils schwerwiegenden Probleme von <strong>Bluetooth</strong> 1.0a und 1.0b blieb der ersehnte<br />

Durchbruch dieser „short-distance“-Funktechnologie aus. Die ganze Hoffnung der <strong>Bluetooth</strong>-<br />

SIG lag nun auf dem neu überarbeiteten Standard <strong>Bluetooth</strong> 1.1, welcher genau ein Jahr<br />

später, am 1. Dezember 2000 veröffentlicht wurde. Dieser ist nicht abwärtskompatibel zu den<br />

Vorgängerversionen 1.0a und 1.0b, obwohl die bereits erwähnten Basis-Eigenschaften<br />

beibehalten wurden. Die besagten Probleme der Vorgängerversionen wurden weitestgehend<br />

behoben, doch die Implementierung der Scatter-Netze ist noch nicht fehlerfrei bzw. nicht<br />

vollständig spezifiziert.<br />

Es wurden auch weitere Profile festgelegt. Die Vorgänger-Standards von <strong>Bluetooth</strong> 1.1<br />

waren, in Bezug auf die Profile, lediglich als Kabelersatz, z.B. zwischen PC und<br />

Peripheriegeräten, gedacht. Die erweiterten Profile waren weitestgehend für die Übertragung<br />

von Bildern, Video-Clips oder HiFi-Audio-Signalen gedacht, die das Anwendungsspektrum<br />

dieser viel versprechenden Übertragungstechnologie deutlich vergrößerten.<br />

Durch die von der SIG verbesserte Interoperabilität zwischen Geräten verschiedener<br />

Hersteller und die nun erweiterte multimediale Anwendungsvielfalt, konnte sich <strong>Bluetooth</strong> als<br />

Funk-Übertragungstechnologie allmählich etablieren. Auf dem Markt konnte man zunehmend<br />

Produkte von Herstellern finden, die nun auf diese Technologie setzten.<br />

Ein Meilenstein für die Akzeptanz dieses Funk-Übertragungsstandards war der Ende März<br />

2002 vereinbarte Lizenzvertrag zwischen der <strong>Bluetooth</strong>-SIG und dem IEEE, welcher auf der<br />

Kernspezifikation der Version 1.1 beruht. Die Arbeitsgruppe 802.15 des Institute of Electrical<br />

and Electronics Engineers (IEEE) erkannte dieser Technik den Rang eines IEEE-Standards<br />

zu, der in so genannten Wireless Personal Area Networks (WPAN) zum Zuge kommen soll.<br />

Von diesem Zeitpunkt an kann man von einer Zusammenarbeit der beiden Einrichtungen,<br />

bezüglich der Weiterentwicklung des WPAN-Standards, sprechen.<br />

1.3.2.3. <strong>Bluetooth</strong> 1.2<br />

Am 5. November 2003 ist nun der durchaus als robust zu bezeichnende Standard <strong>Bluetooth</strong><br />

v1.1 durch die derzeit aktuelle Version 1.2 abgelöst worden. Die neue Spezifikation führt<br />

vorwiegend neue Features bzw. Verbesserungen vorhandener mit sich, welche den Betrieb in<br />

der Praxis reibungsloser gestalten. Bei der Entwicklung dieser Nachfolgergeneration flossen<br />

etliche Empfehlungen des Institute of Electrical and Electronics Engineers (IEEE) ein.<br />

18


Folgend aufgeführte neue Merkmale sind prägend für <strong>Bluetooth</strong> 1.2 und werden anschließend<br />

näher erläutert:<br />

• Enhanced Quality of Service (eQoS)<br />

• Verbesserter Verbindungsaufbau<br />

• Neuer Übertragungsmodus eSCO<br />

• Interferenzminimierung durch AFH<br />

• Abwärtskompatibilität zu <strong>Bluetooth</strong> 1.1<br />

• Anlehnung der Wortwahl an IEEE<br />

• Grundlegende Umstrukturierung/Umpartitionierung des Inhalts der Spezifikation<br />

(um Übersicht/Änderbarkeit/Protocols and Core)<br />

• Zeitgleiche Verabschiedung und Streichung nicht benötigter Profile<br />

• Anonymity Mode<br />

1.3.2.3.1. eQoS<br />

Mit „Enhanced Quality of Service“ soll, laut der SIG, eine leistungsfähigere Punkt-zu-<br />

Multipunkt-Anwendung ermöglicht werden.<br />

Im Gegensatz zu dem implementierten QoS der Vorgängerversionen können nun zwischen<br />

dem Master und mehreren Geräten Prioritäten zugewiesen werden. Somit wird die<br />

gleichzeitige Bedienung mehrerer Clients, durch ein besseres Verkehrs-Management,<br />

optimiert.<br />

Sind beispielsweise ein Drucker und ein Lautsprechersystem via <strong>Bluetooth</strong> mit einem PC<br />

(Master) verbunden, kann durch eine Prioritätenvergabe eine unterbrechungsfreie<br />

Musikwiedergabe erfolgen, während der Drucker kurzfristig auf Daten verzichten muss.<br />

1.3.2.3.2. Verbesserter Verbindungsaufbau<br />

Laut der Vorgängerspezifikation v1.1 mussten innerhalb von 4 Sekunden 80 Prozent aller<br />

Geräte gefunden werden, die sich in Reichweite des suchenden Geräts befinden. Mit der<br />

Version <strong>Bluetooth</strong> 1.2 sollen nun alle im Umkreis befindlichen Geräte innerhalb von ca. 2<br />

Sekunden entdeckt werden.<br />

Weiterhin hat man den Zeitbedarf des Verbindungsaufbaus zwischen zwei Geräten von 1<br />

Sekunde auf eine 1/10-Sekunde reduziert - Enhanced Synchronization Capability.<br />

Weiterhin wurden Flusskontrolle und Fehlererkennungsmechanismen durch verschiedene<br />

Maßnahmen verbessert. In der Spezifikation werden nur Begriffe wie „Enhanced Error<br />

Detection and Flow Control“ sowie „Enhanced Flow Specification“ genannt.<br />

1.3.2.3.3. Neuer Übertragungsmodus eSCO<br />

Mit eSCO (Extended Connection Orientated) ist nun, neben dem normalen SCO, ein zweiter<br />

verbindungsorientierter Übertragungsmodus spezifiziert worden. Beide Modi zeichnen sich<br />

durch eine logische Punkt-zu-Punkt-Verbindung zwischen einem Master und einem<br />

bestimmten Slave aus.<br />

Die Verbindung kann ebenfalls als leitungsvermittelt angesehen werden, da ähnlich dem<br />

SCO-Übertragungsmodus eine Reservierung von Zeitschlitzen erfolgt. Doch im Gegensatz<br />

zur normalen SCO-Übertragung bietet eSCO zusätzlich eine begrenzte Retransmission<br />

defekter oder nicht angekommener eSCO-Pakete.<br />

19


Ist eine Retransmission erforderlich, findet diese in einem so genannten Retransmissions-<br />

Fenster statt (mehrere Zeitschlitze), welches sich unmittelbar hinter den reservierten<br />

Zeitschlitzen befindet. Innerhalb des Retransmissions-Fensters wird das gleichartige Polling-<br />

Verfahren verwendet, wie es auf dem ACL-Kanal Anwendung findet: ein Slave darf erst auf<br />

dem eSCO-Kanal (im Slave-zu-Master-Zeitschlitz) sein Paket senden, wenn er unmittelbar<br />

zuvor ein an ihn adressiertes Paket vom Master (Master-zu-Slave-Zeitschlitz) erhalten hat.<br />

Sollten Zeitschlitze eines Retransmissions-Fensters nicht für die erneute Versendung von<br />

eSCO-Paketen benötigt werden, stehen sie für den anderen Daten-Verkehr zur Verfügung.<br />

Darüber hinaus bietet das erweiterte SCO gegenüber dem normalen SCO eine flexiblere<br />

Kombination von Pakettypen und Dateninhalten, des Weiteren wählbare Perioden für die<br />

reservierten Zeitschlitze, wodurch eine Unterstützung diverser synchroner Bitraten erfolgen<br />

kann.<br />

Folgende eSCO-Pakete sind definiert und können sowohl für die 64kbit/s-Sprachübertragung<br />

als auch für den transparenten Datentransport mit 64kbit/s oder einer anderen Bitrate genutzt<br />

werden:<br />

EV3 - variable Paketgröße zwischen 1 und 30 Byte und zusätzlich 16 Bit CRC<br />

- keine FEC<br />

- Paket darf maximal einen Zeitschlitz einnehmen<br />

EV4 - variable Paketgröße zwischen 1 und 120 Byte und zusätzlich 16 Bit CRC<br />

- 2/3 FEC<br />

- Paket darf maximal drei Zeitschlitze einnehmen<br />

EV5 - variable Paketgröße zwischen 1 und 180 Byte und zusätzlich 16 Bit CRC<br />

- keine FEC<br />

- Paket darf maximal drei Zeitschlitze einnehmen<br />

Angemerkt sei, dass bei den herkömmlichen SCO Datenpaketen grundsätzlich fixe<br />

Paketgrößen definiert sind, welche auch nur einen Zeitschlitz einnehmen dürfen und auch<br />

keine CRC-Fehlererkennung beinhalten.<br />

Die beim Verbindungsaufbau ausgehandelte Bandbreite eines eSCO-Kanals ist fest reserviert<br />

und kann in Sende- und Empfangsrichtung entweder gleich groß (symmetrisch) oder<br />

unterschiedlich groß (asymmetrisch) ausfallen. Letzteres wird vom bekannten SCO nicht<br />

unterstützt.<br />

20<br />

Quelle: <strong>Bluetooth</strong> Core Specification 1.2<br />

Abbildung 1.13 – Symmetrischer Datenverkehr


21<br />

Quelle: <strong>Bluetooth</strong> Core Specification 1.2<br />

Abbildung 1.14 – Asymmetrischer Datenverkehr<br />

Fazit:<br />

In der Praxis bedeutet der neu spezifizierte Übertragungsmodus eSCO eine verbesserte und<br />

flexiblere Übertragung, welche (begrenzte) Retransmissionen mit einem sehr geringen<br />

„Echtzeit-Verlust“ bietet.<br />

1.3.2.3.4. Interferenzminimierung durch AFH<br />

Die Zunahme von Funkfrequenztechniken, welche sich des gemeinsam genutzten ISM-Bands<br />

(2,4GHz) bedienen, führt zu einem Problem – Interferenzen zwischen parallel eingesetzten<br />

Techniken.<br />

<strong>Bluetooth</strong>-Geräte, die das herkömmliche Frequenzsprung-Verfahren (Frequency Hopping)<br />

nutzen, merken aufgrund ihrer robusten Modulation wenig vom benachbarten Funkverkehr,<br />

aber beeinträchtigen diesen spürbar. In diesem Zusammenhang sollte der Funkstandard<br />

WLAN (IEEE 802.11b) genannt sein, welcher teils starke Leistungseinbußen durch <strong>Bluetooth</strong><br />

hinnehmen muss. Häufig findet dieser seinen Einsatz in Umgebungen, wo auch <strong>Bluetooth</strong>-<br />

Geräte parallel kommunizieren. Ein Beispielszenario wäre ein Laptop, der mittels WLAN<br />

eine Internetverbindung herstellt und Druckaufträge via <strong>Bluetooth</strong> an einen Drucker sendet.<br />

Neben dem Aspekt, dass diese <strong>Bluetooth</strong>-Übertragungen Interferenzen verursachen, werden<br />

auch sie durch Interferenzen gestört. Daraus folgt beispielsweise ein Einbruch des<br />

Datendurchsatzes im ACL-Modus, verursacht durch die häufige Retransmission von verloren<br />

gegangenen oder defekten Datenpaketen. Ein weiteres Beispiel ist die Audio-Übertragung<br />

(SCO) über ein <strong>Bluetooth</strong>-Headset. Hierbei machen sich Interferenzen durch ein teilweise<br />

unangenehmes Rauschen im Kopfhörer bemerkbar.


Quelle: „carmeq - Introduction to <strong>Bluetooth</strong>“ 12.06.2003 [19]<br />

Abbildung 1.15 – Beispiel: WLAN und BT v1.1 Interferenzen<br />

Auf diese Problematik hat das Herstellerkonsortium reagiert und stellte ein Verfahren namens<br />

Adaptive Frequency Hopping AFH vor, worauf am Ende dieser Arbeit in einem gesonderten<br />

Kapitel eingegangen wird. Mit AFH soll eine Kommunikation von <strong>Bluetooth</strong>-Geräten<br />

erfolgen, welche Rücksicht auf andere benachbarte Funktechnologien nimmt und fest<br />

genutzten Frequenzbändern von schmalbandigen Störungen ausweicht.<br />

1.3.2.3.5. Abwärtskompatibilität zu <strong>Bluetooth</strong> v1.1<br />

Der neue Standard soll abwärtskompatibel zu <strong>Bluetooth</strong> 1.1 sein, verspricht das <strong>Bluetooth</strong>-<br />

Herstellerkonsortium. Doch kann ein Gerät der Version 1.1 nicht in einem Piko-Netz der<br />

neuen Generation als Master agieren. Diese Einschränkung ist durch das neue adaptive<br />

Frequenzsprungverfahren begründet.<br />

1.3.2.3.6. Anlehnung der Wortwahl an IEEE<br />

Viele Teilabschnitte von vorangegangenen <strong>Bluetooth</strong>-Spezifikationen erschwerten den<br />

Lesern, durch eine unpräzise oder inakkurate Wortwahl, das Herauslesen wichtiger<br />

Informationen. Durch die Anlehnung der Wortwahl an die Empfehlungen der IEEE kann nun<br />

deutlich vereinfacht zwischen zwingend notwendigen Implementierungsinformationen und<br />

Hintergrundinformationen differenziert werden.<br />

Nähere Informationen dazu können<br />

- in der <strong>Bluetooth</strong> 1.2 Core-Specification auf Seite 149<br />

22


- und im IEEE Style Guide ( http://standards.ieee.org/guides/style/ ), welcher als<br />

Grundlage für die Verbesserung der Wortwahl diente,<br />

nachgeschlagen werden.<br />

1.3.2.3.7. Grundlegende Umstrukturierung<br />

Die grundlegende Umstrukturierung der Gesamtspezifikation besteht aus zwei wesentlichen<br />

Punkten:<br />

1. Flexiblere Spezifizierung von Profilen und Protokollen<br />

Wie bereits im entsprechenden Abschnitt erwähnt, bestand die <strong>Bluetooth</strong>-<br />

Gesamtspezifikationen der Versionen 1.0x und 1.1 aus zwei Hauptteilen, Core-<br />

Specification (Volume I) und Profile Definitions (Volume II), welche immer gleichzeitig<br />

und zusammenhängend publiziert wurden.<br />

Nach der Veröffentlichung von <strong>Bluetooth</strong> 1.1 bestand die Notwendigkeit einer flexibleren<br />

Spezifizierung und Veröffentlichung neuer bzw. verbesserter Profile und Protokolle,<br />

welche zeitlich unabhängig von der Publikation der Core-Specification erfolgen kann.<br />

Man beschloss die Profile und die Protokolle (welche nicht Bestandteil der<br />

Kernspezifikation sind) als jeweils einzelne Teilspezifikationen zu führen, welche mit<br />

einer Versionsnummer versehen sind, die mit jeder Änderung erhöht wird. Mit diesem<br />

Schritt ermöglicht die SIG ein Hinzufügen und Abändern von Profilen und Protokollen zu<br />

jeder Zeit.<br />

2. Restrukturierung der <strong>Bluetooth</strong>-Core-Specification 1.2<br />

Der Inhalt dieser derzeit aktuellen Kernspezifikation ist in einer deutlich veränderten<br />

Struktur dargestellt, welche eine bessere Folgerichtigkeit und Lesbarkeit sicherstellen soll.<br />

Die wichtigsten Umstrukturierungen fanden im Bereich Baseband, LMP, HCI und L2CAP<br />

statt, wobei die Information in einer logischeren Reihenfolge präsentiert wird, als es bei<br />

den Vorgängerversionen der Fall war. Diese Restrukturierung fiel uns bei unserer<br />

Recherche als sehr positiv auf.<br />

1.3.2.3.8. Verabschiedung neuer Profile<br />

Zum Zeitpunkt der Veröffentlichung der <strong>Bluetooth</strong>-1.2-Kernspezifikation wurden fast<br />

zeitgleich eine Reihe weiterer Profile definiert, welche der Funktechnik neuen Schub<br />

verleihen könnte. Drei neue Profile, darunter das „Advanced Audio Distribution Profile“<br />

(A2DP), gelten der Verbesserung von Audioanwendungen. Damit sowie mit Hilfe von<br />

Kompression lassen sich Stereosignale mit hoher Qualität übertragen. Des Weiteren<br />

verabschiedete die SIG das „Audio/Video Remote Control Profile“, das für die<br />

Fernsteuerung von Audio- und Videogeräten ausgelegt ist.<br />

Neu sind auch das „Hands Free Profile“ (HFP) und das „SIM Access Profile (SAP)“, die auf<br />

den Automarkt zielen: Damit können Fahrzeug-Freisprecheinrichtungen Handys kontrollieren<br />

bzw. Profile und Adressen eines Mobiltelefons an das Autotelefon überwiesen werden, ohne<br />

dass hierzu die SIM-Karte gewechselt werden muss.<br />

1.3.2.3.9. Anonymity Mode<br />

In der Version 1.2 gibt es die Möglichkeit, ein <strong>Bluetooth</strong>-Gerät im so genannten Anonymity<br />

Mode zu betreiben. Dieser ist ein optionales Sicherheitsmerkmal, welches vom Hersteller<br />

angeboten werden kann, und verbirgt die eigentliche MAC-Adresse. Es wird, z.B. zum<br />

23


paarweisen Datenaustausch, eine zufällig ermittelte fiktive Adresse gleichen Formats<br />

verwendet, welche dann auch periodisch neu generiert wird. Da die Kern-Spezifikation keine<br />

Festlegungen hierzu trifft, ist es den Herstellern überlassen wie diese Möglichkeit<br />

implementiert wird.<br />

1.3.2.4. Ausblick auf <strong>Bluetooth</strong> 2.0<br />

Im Rahmen eines <strong>Bluetooth</strong>-Kongresses, welcher Mitte Juni 2003 stattfand, sickerten erste<br />

Details zu den bislang sorgsam gehüteten Spezifikationen der <strong>Bluetooth</strong>-Version 2.0 durch.<br />

Es wird erwartet, dass <strong>Bluetooth</strong> 2.0 mit Bruttotransferraten von bis zu 4, 8 und 12 Mb/s, bei<br />

gleich bleibender Reichweite, operieren soll, was ihm den Beinamen Highrate einbringt.<br />

Die neue Spezifikation 2.0 bietet ebenfalls neue Kommunikationsmodi, welche auf dem<br />

derzeit verwendeten System aufbauen. Sie ermöglichen, durch Nutzung eines<br />

Schmalbandkanals unter Verzicht auf Bandspreizung sowie von verteilten MAC-Protokollen,<br />

schnellere Antwortzeiten und eine integrierte QoS. Dieses neuartige verteilte Protokoll dient<br />

der Verminderung derzeit bestehender Probleme hinsichtlich der Master/Slave-basierten Piko-<br />

Netze, wobei aus dem Verlust des Masters ein Zusammenbruch des Piko-Netzes resultiert.<br />

<strong>Bluetooth</strong> 2.0 verzichtet auf die Master-Rolle und erhebt jede Einheit zum so genannten<br />

Supervisor, wodurch eine kontinuierliche Kommunikation innerhalb des Piko-Netzes<br />

ermöglicht wird. Des Weiteren soll es eine Broadcast- bzw. Multicast-Unterstützung bieten.<br />

Die neuen Fähigkeiten sind allerdings mit einer gegenüber <strong>Bluetooth</strong> 1.0 verdoppelten<br />

Stromaufnahme zu bezahlen. Bei der Entwicklung wird die Kompatibilität bzw. paralleler<br />

Einsatz zu den „low-rate“-Versionen ab 1.1 angestrebt.<br />

1.3.3. <strong>Bluetooth</strong> in der IEEE<br />

Das 1963 gegründete Institute of Electrical and Electronics Engineers (IEEE) ist ein Gremium<br />

für Normungen in elektrischen und elektronischen Verfahren, deren weltweit mehr als<br />

360.000 Mitglieder sich in erster Linie ebenfalls aus Herstellern sowie<br />

Forschungseinrichtungen rekrutieren.<br />

In diversen Arbeitsgruppen ist das IEEE eine der führenden Organisationen bezüglich der<br />

Standardisierung auf dem Gebiet der Raumfahrt, Computer und Telekommunikation,<br />

biomedizinischen Ingenieurstechnik, elektrischen Energie und elektronischen Geräten.<br />

Einer der bekanntesten und wichtigsten Interessenbereiche des IEEE ist das IEEE 802<br />

LAN/MAN Standards Committee, auch LMANSC genannt, welches sich mit der<br />

Standardisierung für Kommunikations-Netzwerke beschäftigt. Es wurde um 1980 aus der<br />

Notwendigkeit gegründet, die Vielfalt aller möglichen Netzwerk-Systeme, z. B. in der<br />

Verkabelung, der Übertragungsgeschwindigkeit und -technik zu standardisieren. Seine Arbeit<br />

beschränkt sich zum größten Teil auf die zwei untersten Schichten des bekannten ISO/OSI-<br />

Modells.<br />

Die IEEE 802 ist hierarchisch in Arbeitsgruppen unterteilt. Einige wichtige seien hier<br />

genannt:<br />

• IEEE 802.3 Ethernet / CSMA/CD-Zugriffsverfahren<br />

• IEEE 802.11 WLAN – Wireless Local Area Network<br />

• IEEE 802.15 WPAN – Wireless Personal Area Network<br />

Letzt genannte Arbeitsgruppe befasst sich mit kabelloser Nahbereichskommunikation, z.B.<br />

für portable Geräte wie PDAs. Das Ziel ist auch hier, Standards, Empfehlungen und<br />

Anleitungen auszuarbeiten, welche die Gesichtspunkte der Interoperabilität und Koexistenz<br />

24


zu anderen Datenübertragungs-Standards sicherstellen sollen. In den Bereich von WPAN<br />

reiht sich neben anderen die <strong>Bluetooth</strong>-Technologie ein. Sie wurde, aufgrund eines<br />

Lizenzabkommens zur Kompatibilität zwischen <strong>Bluetooth</strong>-SIG und IEEE, im März 2002 mit<br />

dem Standard 1.1 in den Rang eines IEEE-Standards erhoben. Diese Zusammenarbeit teilt<br />

sich generell in die Aufgabenfelder technische Weiterentwicklung und Integration der<br />

<strong>Bluetooth</strong>-Technologie seitens der <strong>Bluetooth</strong>-SIG und Prüfung nach eigenen Kriterien und<br />

Entwicklung von Änderungsempfehlungen seitens der zuständigen IEEE 802.15 Task Groups<br />

(TG). Die TGs bearbeiten jeweils eine spezielle Aufgabe.<br />

Die TG IEEE 802.15.1 hat den <strong>Bluetooth</strong>-Standard 1.1 geprüft und in die IEEE-<br />

Spezifizierungen übernommen. Die Übernahme erfolgte auf Basis der Kernspezifikation,<br />

welche die physikalische Schicht, in diesem Fall RF, und die MAC-Layer, die das Baseband,<br />

das L2CAP sowie das LMP umfasst. Weiterhin wurde ein Satz von allgemeinen SAPs<br />

entwickelt, welche das auf die MAC-Schicht aufsetzende ISO/IEC 8802-2 LLC ermöglicht.<br />

Der bereits von der <strong>Bluetooth</strong>-SIG verabschiede Standard 1.2 soll durch die TG IEEE<br />

802.15.1a eingegliedert werden.<br />

Mit der Sicherstellung der Koexistenz von IEEE 802.15 WPAN und IEEE 802.11 WLAN<br />

befasst sich die TG IEEE 802.15.2. Diese Expertengruppe entwickelt Koexistenz-<br />

Mechanismen für Transceiver, wodurch gegenseitige Interferenzen von WLAN und WPAN<br />

ausgeschlossen werden sollen. Bei Entwicklung eines Interferenz-minimierenden<br />

Übertragungsverfahrens (AFH) für <strong>Bluetooth</strong> 1.2, durch die <strong>Bluetooth</strong>-SIG, flossen<br />

Empfehlungen von dieser Task-Group mit ein.<br />

1.4. <strong>Bluetooth</strong>-Protokollstapel<br />

1.4.1. Einleitung<br />

Der Aufbau der Protokollarchitektur des <strong>Bluetooth</strong>-Standards folgt der Grundidee der<br />

kabelersetzenden Funkdatenübertragung und orientiert sich auch am bekannten ISO/OSI<br />

Schichtenmodell. Daher wurden die verwendeten Protokolle nach der besten Verwendbarkeit<br />

für eben diese Aufgabe entworfen bzw. übernommen. Der gesamte Protokollstapel für<br />

<strong>Bluetooth</strong>-Verbindungen kann in vier Hauptgruppen nach ihren allgemeinen Aufgaben<br />

eingeteilt werden. Diese sind, wie auch in folgender Tabelle verdeutlicht, die <strong>Bluetooth</strong>-Kern-<br />

das Kabelersatz-, die Telefonie-Steurungs- und weitere aufgesetzte anwendungsspezifische<br />

Protokolle.<br />

Schicht Protokoll<br />

<strong>Bluetooth</strong> Kernprotokolle Baseband, LMP, L2CAP, SDP<br />

Cable Replacement<br />

Protocol<br />

RFCOMM<br />

Telefonie TCS-bin, AT-Kommandos<br />

Aufgesetzte Protokolle PPP, UDP/TCP/IP, OBEX, WAP, vCard, vCal, IrMC, WAE<br />

Tabelle 1.4 – Die Protokolle und Schichten im <strong>Bluetooth</strong>-Protokoll-Stapel<br />

25


Der der komplette Stapel enthält zwei Kategorien von Protokollen. Zum einen die <strong>Bluetooth</strong>spezifischen<br />

wie LMP (Link Manager Protocol) und L2CAP (Logical Link and Control<br />

Adaption Protocol), und zum anderen die nichtspezifischen wie OBEX (Object Exchange<br />

Protocol) und UDP (User Datagram Protocol). Um einen einfachen und wenig aufwendigen<br />

Standard zu schaffen, wurden für die höheren Schichten bereits vorhandene und erprobte<br />

Protokolllösungen verwendet. Diese Wiederverwendung existierender Protokolle hilft vor<br />

allen Dingen den bereits existierenden Applikationen die <strong>Bluetooth</strong>-Technologie einzubinden.<br />

Der Integrationsaufwand wird damit erheblich verringert. Da die Spezifiktion von <strong>Bluetooth</strong><br />

offen und allen frei zugänglich ist, steht es allen Entwicklern frei, sie zu verwenden.<br />

1.4.2. Die Protokolle der <strong>Bluetooth</strong>-Architektur<br />

Die <strong>Bluetooth</strong>-Kernprotokolle (Core) umfassen alle <strong>Bluetooth</strong>-spezifischen Protokolle, die<br />

von der <strong>Bluetooth</strong> SIG entwickelt wurden. RFCOMM und TCS wurden auch von dieser SIG<br />

entwickelt, basieren aber auf ETSI TS 07.10 und der ITU-T Recommendation Q.931. Diese<br />

Protokolle und <strong>Bluetooth</strong>-Radio, als physikaliche Realisierung, sind die wichtigsten und somit<br />

der Kern des Standards. Sie sind in allen <strong>Bluetooth</strong> Geräten gleichermaßen integriert. Der<br />

Rest der Protokolle wird nur verwendet, wenn die Verwendung für bestimmte <strong>Anwendungen</strong><br />

dies verlangt. Wie schon vorhin erwähnt, ist die <strong>Bluetooth</strong>technologie eine offene<br />

Technologie. Somit ist es den Entwicklern möglich eigene Zusatzprotokolle zu entwerfen<br />

(wie etwa HTTP oder FTP). Diese werden dann hierarchisch gesehen auf den Stapel<br />

aufgesetzt. Entsprechende typische Kombinationen werden in den <strong>Bluetooth</strong>-Profilen<br />

vorgeschlagen.<br />

vCard/vCal<br />

OBEX<br />

WAE<br />

WAP<br />

TCP UDP<br />

IP<br />

PPP<br />

<strong>Anwendungen</strong><br />

AT-<br />

Commands<br />

Kabelersatzprotokoll (RFCOMM)<br />

Audio<br />

SCO<br />

L2CAP<br />

HCI<br />

LMP<br />

Basisband & Link Control<br />

<strong>Bluetooth</strong> Radio<br />

26<br />

TCS-bin SDP<br />

ACL<br />

Abbildung 1.16 – Die Protokollarchitektur<br />

Software<br />

Hardware


1.4.2.1. <strong>Bluetooth</strong> Kernprotokolle<br />

1.4.2.1.1. <strong>Bluetooth</strong> Radio / Baseband<br />

Die physikalische Schicht repräsentiert sich durch die Hardware (<strong>Bluetooth</strong> RF -<br />

Funktechnik) und das darauf aufsetzende Basisband (Baseband/Link Control). Die zu<br />

nutzenden Funkfrequenzen werden zur Verfügung gestellt und alle physikalischen Kanäle<br />

sowie Verbindungen hiermit verwaltet.<br />

Die Funktechnik stellt die Kompatibilität zwischen allen <strong>Bluetooth</strong>-Transceivern sicher, da<br />

der Aufbau aller Geräte einer Standardversion gleich ist. Sie realisiert die 79 bzw. 23<br />

möglichen Funkkanäle im vorgegebenen Frequenzband, die Modulation und Übertragung des<br />

eigentlichen Signals, sowie die erforderliche Signalstärke in den bereits genannten<br />

Sendeleistungsklassen. Bei dem verwendeten sehr einfachen und somit preisgünstigen<br />

Gaussian Frequency Shift Keying (GFSK)-Verfahren wird eine negative<br />

Frequenzabweichung von der jeweiligen Trägerfrequenz als eine "0" und demnach eine<br />

positive Frequenzabweichung als eine "1" interpretiert.<br />

Die Baseband-Spezifikation definiert die Paketformate, die physikalischen und logischen<br />

Kanäle, die Fehlerkorrektur, die Synchronisation zwischen Sender und Empfänger, die<br />

unterschiedlichen Operationsmodi und Zustände, die den Daten- und Sprachtransport<br />

ermöglichen.<br />

Es ist Aufgabe des Basisbandes, die zu verwendende Frequenz für die aktuelle Übertragung<br />

einzustellen und die quasi-zufällige Frequenzsprungfolge (Pseudo Random Frequency<br />

Hopping) im Zeitfenster-Duplex-Betrieb (Time Division Duplex TDD) über das spezifizierte<br />

Master-Gerät zu steuern. So wird es ermöglicht, die Verbindung in dedizierte Zeitschlitze von<br />

625 Mikrosekunden und einer bis zu 1600mal pro Sekunde wechselnden<br />

Übertragungsfrequenz einzuteilen und abwechselnd dem Master selbst oder einem der<br />

verbundenen Slave zum Senden zur Verfügung zu stellen. Die so genannten timeslots werden<br />

zur synchronisierten Übermittlung von leitungs- sowie paketvermittelten<br />

Übertragungskanälen genutzt. Dies kann unter Einbeziehung der möglichen<br />

Vorwärtsfehlerkorrektur (Forward Error Correction FEC) und Prüfsummen (CRC) geschehen.<br />

Somit ist die unterste Schicht des Standards in ihrer Gesamtheit für die Bereitstellung sowie<br />

Sicherung und Sicherheit der Verbindung zuständig.<br />

Es können daraus resultierend nur bis zu fünf Kanäle in einer aktiven Verbindung seitens<br />

eines <strong>Bluetooth</strong>-Gerätes bestehen. Die Verbindungssteuerung (Link Control LC) belegt einen<br />

Kanal zum L2CAP und das Verbindungsmanagement (Link Management) mit bis zu drei<br />

Sprachkanälen und dem Datenkanal, zum Link Manager Protocol (LMP), die restlichen vier<br />

möglich.<br />

Die folgenden Protokolle arbeiten parallel:<br />

• LMP, das Link Manager Protocol koordiniert Verbindungsauf- und -abbau,<br />

Sicherheitsfunktionen, Packetgrößensteuerung.<br />

• L2CAP - Logical Link Control and Adaptation Protocol - eigentliche<br />

Datenübertragung, außer bei reinen Sprachanwendungen.<br />

• Audio - reine Sprachübertragung wird direkt implementiert<br />

• HCI ist Schnittstelle zwischen Host und <strong>Bluetooth</strong>-Gerät.<br />

• RFCOMM emuliert serielles Kabel nach RS-232-Standard und dient der<br />

modemähnlichen Datenübertragung.<br />

• TCS, Steuerungsschicht für Telefonieanwendungen.<br />

• SDP, Service Discovery Protocol, fragt die von anderen Geräten angebotenen Dienste<br />

ab.<br />

27


• OBEX ist ein Modell zum Austausch digitaler Objekte (z.B. virtuelle Visitenkarten).<br />

• AT-Befehle werden von Applikationen benutzt, die Telefon- oder Faxfunktionen<br />

bieten.<br />

• PPP ermöglicht den Internetzugriff über das <strong>Bluetooth</strong>-Interface.<br />

1.4.2.1.2. Link Manager Protocol (LMP)<br />

Das LMP kann auch als im L2CAP integriert betrachtet werden, jedoch sind die Aufgaben<br />

beider Protokolle trennbar. Der Link Manager (LM) ist verantwortlich für den<br />

Verbindungsaufbau und die Sicherheit von <strong>Bluetooth</strong>-Links. Es wird eine Authentifizierung<br />

und Verschlüsselung mittels Sicherheitscodes durchgeführt. Ebenso ist er verantwortlich für<br />

die Kontrolle und Aushandlung der Basisband-Paketgröße. Weiterhin regelt das LMP die<br />

benötigte Sendeleistung der HF und verwaltet die angemeldeten Stationen eines Piconetzes.<br />

Das Link-Manager-Protocol koordiniert die zur Verfügung gestellten Dateneinheiten und<br />

verwaltet die Links. Sämtliche Aktivitäten zum Verbindungsaufbau und zur Verwaltung des<br />

Piconets werden durch das LMP behandelt. Zur Verwaltung des Piconets gehören das<br />

Einstellen der Verbindungsgüte, der mögliche Tausch der Master/Slave-Rollen sowie der<br />

Uhrenabgleich. Weitere Aufgaben des LMPs sind die Authentifizierung und die<br />

Verschlüsselung zur Gewährleitung der Sicherheit. LMP-Daten haben eine höhere Priorität<br />

als Nutzerdaten und erreichen niemals höhere Schichten auf Empfängerseite.<br />

Der LM behandelt die Autentifizierung einer Verbindung und die Verschlüsselung, das<br />

Management eines Piconetzes (synchrone/asynchrone Verbindung, Steuerung der<br />

Übertragungsqualität), das Aufsetzen einer Verbindung (asynchrone/synchrone Pakettypen,<br />

Namen/ID-Austausch), den Einsatz von Multislot-Paketen und die Zustands- und<br />

Moduswechsel eines Gerätes (active/hold/sniff/park).<br />

1.4.2.1.3. Logical Link Control and Adaptation Protocol (L2CAP)<br />

L2CAP unterstützt sowohl verbindungsorientierte als auch verbindungslose (loopback)<br />

Datendienste für die höheren aufsetzbaren Protokollschichten. Zum weiteren<br />

Funktionsumfang dieser Protokollschicht gehören die Segmentierung und das<br />

Zusammensetzen von Telegrammen. Es zerlegt Pakete von bis zu 64kByte und fügt sie am<br />

Empfänger wieder zusammen. Weiterhin ermöglicht sie das Multiplexen von Verbindungen<br />

(gleichzeitige Benutzung mehrere Protokolle und Verbindungen) und erlaubt den Austausch<br />

von Qualitätsinformationen zwischen zwei Geräten.<br />

L2CAP kann bis zu 64 kByte große Datenpakete entgegennehmen und diese in geeignete<br />

kleinere Datenpakete für die Basisband-Schicht umsetzen. Die Größe der Datenpakete ist<br />

dahingehend von Bedeutung, dass sich unmittelbar oberhalb der L2CAP-Schicht die<br />

Netzwerk-Schicht befindet. Hier werden 64 kByte große Datenpakete verwendet, um die<br />

Kompatibilität zu IP-Paketen zu gewährleisten.<br />

Das L2CAP bietet eine abstrakte Schnittstelle für die Datenkommunikation. Es ist für<br />

aufgesetzte Protokolle irrelevant, wie die übergeben Daten übertragen werden bzw. wurden.<br />

Dieses Protokoll verbindet die höher liegenden Schichten des Stapels mit dem darunter<br />

liegenden Basisband. Es arbeitet wenn nötig parallel zum LMP und stellt den aufgesetzten<br />

Schichten Dienste zur Verfügung, die nicht durch LMP-Nachrichten realisiert werden können.<br />

Weitere wesentliche Aufgaben dieser Schicht sind die Bereitstellung definierter Dienstgüten<br />

(Paketrate, Paketgröße, Latenz, Verzögerungsschwankungen, maximale Verbindungsrate),<br />

sowie die Verwaltung von Nutzergruppen. Ein paar Einschränkungen des Funktionsumfanges<br />

dieser Schicht sollen allerdings nicht ungenannt bleiben. Die L2CAP-Schicht ermöglicht<br />

28


keinen Transport von Audiosignalen, d.h. von Daten synchroner Übertragungskanäle.<br />

Weiterhin ist eine Kommunikation mit Gruppen nur mit einem Broadcast möglich, eine<br />

Multicast-Verbindung ist hingegen bislang noch nicht verfügbar, wird aber voraussichtlich<br />

zum Funktionsumfang von <strong>Bluetooth</strong> 2.0 gehören.<br />

1.4.2.1.4. Das Host Controller Interface (HCI)<br />

Zusätzlich zu den obigen Protokollen existiert noch ein Host Controller Interface (HCI).<br />

Dieses Interface entspricht einem Kommando-Interface für den Baseband Controller, Link<br />

Manager, und zu den Hardware-Status- und Kontrollregistern.<br />

Das Host Controller Interface (HCI) liefert einen gemeinsamen standardisierten Übergang<br />

zwischen einem Host und einem <strong>Bluetooth</strong>-Gerät, spezifiziert für verschiedene Schnittstellen,<br />

wie USB, RS232, PCI u.a. .<br />

Das bedeutet für den Anwender, wenn eine PC-Card als <strong>Bluetooth</strong> Adapter-Card verwendet<br />

wird, dass er damit auch an entsprechende Sende-/Empfangsmodule dieses Herstellers<br />

gebunden ist, da hier die Schnittstelle zwischen Adapter und BT-Modul vom Hersteller<br />

spezifiziert werden kann. Entscheidet man sich aber für eine serielle Lösung, so kann man<br />

sich dank des standardisierten HCI den Hersteller aussuchen.<br />

Die folgende Abbildung zeigt noch einmal die verschiedenen Anschlussarten der <strong>Bluetooth</strong>-<br />

Module. Man sieht deutlich wie vom Betriebsystem des Hosts über die verschiedenen<br />

Interfaces (USB, RS232 oder PC-Card) ein Anschluss an die <strong>Bluetooth</strong>-Module erfolgt.<br />

Abbildung 1.17 – Anschluss an einen Host<br />

29


1.4.2.1.5. Service Discovery Protocol (SDP)<br />

Das Service Discovery Protocol (SDP) erlaubt es <strong>Anwendungen</strong>, die Dienste und<br />

Eigenschaften anderer <strong>Bluetooth</strong>-Geräte zu erkennen. Diese Dienste können dann durch<br />

andere Protokolle genutzt werden.<br />

Das SDP ist Basis aller Verbindungsmöglichkeiten höherer Verbindungen. Es stellt in einer<br />

Services Discovery Datenbank (SDDB) die Dienste-Struktur eines <strong>Bluetooth</strong>-Gerätes bereit,<br />

wodurch Ad-hoc-Netzwerke überhaupt erst ermöglicht werden. Eine zentrale Verwaltung von<br />

Dienstleistungsinformationen auf einem oder mehreren Kommunikationseinheiten<br />

widerspricht dem Gedanken eines dynamischen Ad-hoc-Netzwerkes. Deshalb geht kein Weg<br />

daran vorbei, dass jedes <strong>Bluetooth</strong>-Gerät selbst Informationen darüber verwaltet, welche<br />

Dienste es zur Verfügung stellt.<br />

Nachdem das <strong>Bluetooth</strong>-Gerät die Dienste, welche von anderen (verbundenen) <strong>Bluetooth</strong>-<br />

Geräten in seiner direkten Umgebung angeboten werden, entdeckt hat, kann eine Auswahl der<br />

gewünschten Dienste getroffen werden. Danach kommt es zum Verbindungsaufbau mit einem<br />

oder mehreren <strong>Bluetooth</strong>-Geräten, um den ausgewählten Dienst zu nutzen. Die weitere<br />

Kommunikation läuft dann ohne Beteiligung des SDPs.<br />

Dieser Service stellt die Grundlage aller <strong>Bluetooth</strong>-Nutzermodelle dar und ist der wichtigste<br />

Teil des gesamten Protokoll-Rahmenwerks. Über SDP werden alle für die Datenübertragung<br />

nötigen Informationen ausgetauscht, um dann eine Verbindung zwischen zwei oder mehreren<br />

<strong>Bluetooth</strong>-Projekten einzurichten.<br />

1.4.2.1.6. Audio<br />

Die Audio-Spezifikation definiert die Sprachübertragung, speziell die Kodierung und<br />

Dekodierung. Audiodaten können zwischen mehreren Geräten direkt übertragen werden.<br />

Dabei werden die Daten nicht erst durch die L2CAP-Schicht geschickt. Audiotransfers sind<br />

im Allgemeinen recht einfach realisierbar.<br />

Für Kopfhöreranwendungen gibt es ein PCM-Rohdatenformat, welches im Direktmodus an<br />

allen Protokollen vorbeigeführt werden kann (SCO). Diese Audiodaten können parallel zu<br />

anderen Daten verschickt werden und mit verschieden Fehlerkorrekturverfahren behandelt<br />

werden. Durch Öffnen eines Audio-Links kann jede Station zu einer anderen "Sprache"<br />

übertragen. Die resultierenden Paketformate werden später näher vorgestellt.<br />

1.4.2.2. Cable Replacement Protocol<br />

1.4.2.2.1. RFCOMM (Radio Frequency Communication)<br />

Als Schnittstelle zur realen Applikation ist das Kabelersatzprotokoll RFCOMM von<br />

besonderer Bedeutung. Es stellt der Hostseite virtuelle serielle Verbindungen bereit. Dazu<br />

simuliert RFCOMM bis zu 60 virtuelle serielle Schnittstellen nach dem RS-232-Standard mit<br />

einer maximalen Geschwindigkeit von 115 kbps, wodurch eine breite Unterstützung<br />

beliebiger höherer Protokollschichten erreicht wird. Dabei wird allerdings nur eine<br />

Untermenge der möglichen Features des abgewandelten ETSI-Standards TS 07.10 durch<br />

<strong>Bluetooth</strong> verwendet.<br />

Die Ablaufsteuerung zur Steuerung der Verbindung erfolgt entweder durch Software in Form<br />

von XON/XOFF-Steuerzeichen oder über einen Hardwarehandshake wie RTS/CTS oder<br />

DTR/DSR. (RTS: "Ready To Send", CTS: "Clear To Send", DTR: "Data Terminal Ready",<br />

DSR: "Data Set Ready")<br />

Durch BENP (<strong>Bluetooth</strong> Encapsulation Network Protocol) um direkt PPP zu ersetzen und<br />

HID-Profile zur Emulation von USB-Schnittstellen, sowie der direkten Anbindung von<br />

30


Peripherie-Geräten über Hardcopy Replacement Protocol (HCRP) wird RFCOMM im<br />

Standard 1.2 erheblich entlastet.<br />

Über den Schnittstellen RFCOMM und L2CAP sitzen dann Protokolle wie IP, WAP oder<br />

Kartenterminalanwendungen, um mittels spezieller <strong>Anwendungen</strong> Daten über die<br />

Funkschnittstelle auszutauschen. Dabei laufen die <strong>Anwendungen</strong> über eine oder mehrere<br />

vertikale Kanäle des Protokoll-Stapels. Der Grund-Stapel bis RFCOMM wurde, wie bereits<br />

erwähnt, so konzipiert, dass bereits vorhandene und bewährte Protokolle darauf aufsetzen<br />

können, um maximale Kompatibilität zu erreichen. Durch die Offenheit des Standards ist<br />

vorauszusehen, dass eine Menge verschiedener <strong>Anwendungen</strong> den Markt erobern werden,<br />

welche die Möglichkeiten der <strong>Bluetooth</strong>-Technologie voll ausnutzen können. In sogenannten<br />

Profilen werden die zu verwendenden Protokolle je nach Anwendungsfall empfohlen.<br />

1.4.2.3. Telefonie-Steuerungs-Protokolle<br />

Die Telephony-API (Application Programming Interface) ermöglicht die Verwendung der<br />

Telefon-Funktionen innerhalb der <strong>Bluetooth</strong>-Umgebung. Damit konnte der Zielstellung<br />

Rechnung getragen werden, dass <strong>Bluetooth</strong> nicht nur im Bereich der Netzwerk- und<br />

Computertechnik sondern auch bei den Telefonanwendungen Anklang finden soll. Die<br />

Abwicklung der Telefonie-Dienste wurde durch zwei verschiedene Protokollarten umgesetzt.<br />

1.4.2.3.1. Telephony Control – Binary<br />

TCS-BIN stellt ein bitorientiertes Protokoll zum Auf- und Abbau von Sprach- und<br />

Datendiensten zwischen zwei Geräten zur Verfügung. TCS-BIN baut auf Q.931 der ITU-T<br />

auf und enthält Rufkontrolle, Verbindungsaufbau, Sprachübertragung und Datenübertragung.<br />

Q.931 ist auch Grundlage für die Rufsteuerung bei ISDN. Die Telephony Control Protocol<br />

Specification (TCS) ermöglicht die Signalisierung für die Herstellung und Unterhaltung von<br />

Daten- und Sprachverbindungen (Terminal, Gateway, Lautstärke, Auflegen/Abheben,...).<br />

1.4.2.3.2. Telephony Control – AT Commands<br />

AT-Befehle nutzen zu ihrer Übertragung in der Regel eine serielle Port-Emulation über das<br />

RFCOMM-Protokoll. Die AT-Befehle, basierend auf V.250 und ETS 300 916 der ITU-T,<br />

wurden von der <strong>Bluetooth</strong>-SIG erweitert und ermöglichen verschiedene Varianten zur<br />

Nutzung von Mobiltelefonen und Modems. Ein Beispiel ist die Nutzung eines Faxdienstes.<br />

1.4.2.4. Aufgesetzte Protokolle<br />

Eine Vielzahl von Protokollen sind auf die beschriebenen Basisdienste aufgesetzt. Es sei hier<br />

eine Auswahl genannt:<br />

• OBEX (Object Exchange Protocol) wird zum Dateitransfer und zur<br />

Datensynchronisation benutzt.<br />

• TCP/IP wird in Internet-<strong>Anwendungen</strong> eingesetzt.<br />

• Eine Menge von AT-Kommandos ermöglicht die Steuerung über eine Terminal-<br />

Verbindung.<br />

• WAP unterstützt mobile <strong>Anwendungen</strong><br />

Die so genannten angepassten Protokolle werden unverändert vom Industriestandard<br />

übernommen. Sie führen zur eigentlichen Applikation, womit sie die Interoperabilität mit<br />

31


isherigen Systemen sicherstellen. Dabei lassen sich prinzipiell zwei Gruppen dieser<br />

Anwendungsprotokolle unterscheiden. Die erste Gruppe umfasst die Internet-Welt, die zweite<br />

Gruppe die Anwendungsprotokolle für den (direkten) Datei- und Objektaustausch.<br />

1.4.2.4.1. OBEX Protocol<br />

OBEX ist das Object Exchange Protocol und spielt für den Datei- und Objektaustausch bei<br />

<strong>Bluetooth</strong> eine wichtige Rolle. Es handelt sich dabei um eine Sitzungsschicht ähnlich dem<br />

HTTP (HyperText Transfer Protocol) nach dem Client-Server Modell, unabhängig von der<br />

Transportart und der Transport-API, die umfangreich und effizient zugleich ist. Es ermöglicht<br />

Objekte und Verzeichnisse mit anderen Objekten darin auszutauschen, und auch<br />

Verzeichnislistings sind möglich, um alle Objekte zu erreichen. Da OBEX bereits im<br />

Zusammenhang mit der IrDA-Schnittstelle verwendet wurde, greift <strong>Bluetooth</strong> zum einen auf<br />

bisherige Erfahrungen zurück und kann zum anderen OBEX-basierte Applikationen aus dem<br />

IrDA-Umfeld direkt integrieren.<br />

Aktuell wird OBEX im Protokollstapel oberhalb von RFCOMM verwendet. Zukünftig sollen<br />

OBEX-Dienste aber auch direkt auf TCP aufsetzen können.<br />

1.4.2.4.2. Content Formats vCard und vCalendar<br />

vCard und vCalendar sind offene Spezifikationen von Internet Mail Consortium und<br />

definieren nicht den Transportmechanismus, sondern das Format, welches übertragen wird.<br />

Andere über OBEX laufende Formate sind vMessage und vNote. Diese sind offene<br />

Spezifikationen und bereits in der IrMC Spezifikation definiert. IrMC definert auch eine Art<br />

Log-File-Format.<br />

1.4.2.4.3. Internetprotokolle<br />

Unter Internetprotokollen versteht man heute eigentlich eine große Vielfalt von<br />

unterschiedlichen Protokollen auf diversen Kommunikationsebenen. Die folgenden<br />

Ausführungen sollen einen kurzen Überblick geben.<br />

1.4.2.4.4. PPP (Point to Point Protocol)<br />

Das PPP ist ein im Internet benutztes Sicherungsprotokoll. Es wird beispielsweise implizit<br />

verwendet, wenn man sich mit dem Computer oder dem PDA per Modem ins Internet<br />

einwählt. Hierbei wird über die serielle Modemverbindung eine Punkt-zu-Punkt-Verbindung<br />

aufgebaut. Es setzt ebenfalls auf der RFCOMM auf und ist für die Tunnelung von IP Packeten<br />

gedacht (wie auch bei Modems üblich).<br />

1.4.2.4.5. TCP/UDP/IP<br />

Die weit verbreitete Protokoll-Kombination TCP/IP wird oft in Verbindung mit PPP zur<br />

Kommunikation im Internet verwendet und ermöglicht Einbindung von <strong>Bluetooth</strong>-Geräten in<br />

LANs oder WANs. Mit dem IP werden Datagramme zwischen verschiedenen Endsystemen<br />

transportiert, wobei die Vermittlung durch IP-Router erfolgt. Das TCP gewährleistet die<br />

Datenintegrität und die Korrektheit der Reihenfolge der IP-Datenpakete. Das TCP ist ein<br />

verbindungsorientiertes, zuverlässiges Ende-zu-Ende-Protokoll. Das User Datagramm<br />

Protocol UDP realisiert die IP-Kommunikation verbindungslos und als transaktionsorientierte<br />

Datagramme.<br />

32


1.4.2.4.6. Wireless Application Protocol WAP<br />

Das WAP wurde für verschiedene kabellose WANs entwickelt und stellt eine<br />

Anwendungsumgebung für Kleinstgeräte wie beispielsweise Mobiltelefone oder PDAs dar.<br />

Dabei wird innerhalb von WAP frei definiert, wie Informationen aus dem Internet (von Server<br />

abgerufen) auf den Kleinstgeräten angezeigt werden und somit sind auch versteckte<br />

Funktionen wie z.B. remote control möglich. WML wird als universelles Software Kit<br />

verwendet. Weitere direkt unterstützte Formate sind WAP-BitMaP WBMP, vCard, vCal.<br />

Spezielle Eigenschaften der Kleinstgeräte wie ein eingeschränktes Display, geringe<br />

Verarbeitungsleistung und Kanalbandbreite werden bei der Umsetzung in besonderem Maße<br />

berücksichtigt. Alle Erweiterungen und Subformate zusammen sind das WAP Application<br />

Environment (WAE)<br />

1.4.3. Paketaufbau<br />

1.4.3.1. Adressierung<br />

Abbildung 1.18 – Aufbau <strong>Bluetooth</strong> Device Adresse<br />

Die <strong>Bluetooth</strong> Device Address (BD_ADDR) ist in die folgenden 3 Bereiche eingeteilt:<br />

• LAP lower address part – unterer Adressbereich (Herstellerimplementation)<br />

UAP upper address part – oberer Adressbereich (1.Teil Herstellerkennung)<br />

• NAP non-significant address part – nichtsignifikanter Adressbereich (2.Teil<br />

Herstellerkennung)<br />

1.4.3.2. Pakete<br />

Abbildung 1.19 – allgemeiner Aufbau der Pakete in <strong>Bluetooth</strong><br />

33


Jedes Paket beginnt mit einem Zugangscode (Access Code) zur Signalisierung, bestehend aus<br />

4-Bit-Preamble zum Gleichstromausgleich, 64-Bit-Synchronisationsword, welches je nach<br />

Signalisierungstyp von der verwendeten <strong>Bluetooth</strong> Device Address abgeleitet wird, und<br />

einem 4-Bit-Trailer, ebenfalls zur Gleichstromkompensation, insofern ein Paketheader folgt.<br />

Dieser Code insgesamt dient somit der Zuordnung eines Pakettypes, der Synchronisation und<br />

der Offset-Kompensation bei der Übertragung eines Pakets zwischen zwei <strong>Bluetooth</strong>-<br />

Transceivern.<br />

Ein Paket besteht also immer aus dem Zugangscode (wenn allein, dann als shortened Access<br />

Code zur Synchronisation in Paging-, Inquiry- und Park-Modi) und kann weiterhin nur einen<br />

Paketheader oder Header und Payload enthalten.<br />

Man unterscheidet bei der Signalisierung folgende drei Typen des Access Codes:<br />

• Channel Access Code (CAC)<br />

o identifiziert eindeutig ein Pico-Netz<br />

o LAP-Teil der Masteradresse verwendet<br />

• Device Access Code (DAC)<br />

o Signalisierung für ein bestimmtes Gerät<br />

o LAP-Teil der Adresse des angesprochenen Gerätes verwendet<br />

• Inquiry Access Code (IAC)<br />

o Ermittlung aller erreichbaren Geräte (Global-IAC) oder<br />

o Ansprechen von Gruppen (Dedicated-IAC)<br />

o für den globalen Rundruf reservierter Wert als LAP verwendet<br />

o bei einem der 63 möglichen dedizierten Aufrufe der dedizierte LAP-Wert<br />

Im Header befindet sich die Information zur Paketnummerierung und -bestätigung, für den<br />

Automatic Repeat Request (ARQ) zur erneuten Anforderung bei fehlerhafter Übertragung,<br />

sowie die Geräteadressierung, Flusskontrolle und weitere Fehlerkorrekturmaßnahmen wie<br />

Forward Error Correction FEC – hier 1/3 FEC wodurch aus den in der Skizze aufgezählten<br />

18Bits 54Bits werden.<br />

Die verwendeten Bezeichnungen bedeuten:<br />

• AM_ADDR - Active Member Address<br />

• Type - Pakettyp<br />

• Flow - Flusskontrolle<br />

• ARQN - Acknowledge Indication - Bestätigung<br />

• SEQN - Sequenznummer<br />

• HEC - Header Error Check – Fehlerkontrolle des Paketkopfes<br />

Die folgenden, bis zu 2745 Bit Payload enthalten die transportierten, vom Pakettyp<br />

unabhängigen Nutzdaten. Sie entsprechen entweder Daten oder Sprache und können ebenfalls<br />

durch ein 16bit Cycling Redundancy Check CRC gesichert werden.<br />

34


Kapitel 2 - Verbindungsanalyse<br />

2.1 Vorstellung des <strong>Bluetooth</strong>-Protokolltesters FTS<br />

Zur Visualisierung der Kommunikation von <strong>Bluetooth</strong>-Geräten wurde das Frontline Test<br />

System „FTS for <strong>Bluetooth</strong>“ von Frontline Test Equipment verwendet. Diese weit verbreitete<br />

Software wird vorwiegend zur Entwicklung und Zertifizierung von <strong>Bluetooth</strong>-<strong>Anwendungen</strong><br />

und -Geräten herangezogen. Es findet daher auch im sogenannten BQB <strong>Bluetooth</strong><br />

Qualification Process Anwendung.<br />

FTS bietet grundsätzlich zwei verschiedene Möglichkeiten des Mitschneidens der<br />

Kommunikation zwischen <strong>Bluetooth</strong>-Transceivern. Es handelt sich dabei immer um<br />

Kommunikationspaare bestehend aus Master und Slave.<br />

• Airsniff:<br />

Das Monitoring der Luftschnittstelle erfolgt berührungsfrei über eine spezielle Hardware –<br />

Comprobe am USB-Port des überwachenden Rechners.<br />

• via HCI:<br />

Hierbei findet ein Mitschnitt des Verlaufs aller Informationen durch Überwachung des Host<br />

Controllers statt. Dies kann einerseits durch Verbindung beider beteiligter Host mit dem<br />

überwachenden Rechner mittels serieller Kabel oder der direkten Erfassung der<br />

Kommunikation über Host Controller eines beteiligen <strong>Bluetooth</strong>-USB-Gerätes.<br />

Auf Grund von gravierenden Treiberproblemen für die programmspezifische Ansteuerung der<br />

COM-Schnittstellen war die Realisierung des HCI serial sniff nicht möglich. Die Wahl fiel<br />

somit auf das erstgenannte Verfahren – Airsniff.<br />

2.1.1. FTS – Airsniff (basic) Tutorial<br />

Ein PC überwacht mit Hilfe des Comprobes und des installierten FTS die Luftschnittstelle<br />

(Baseband) des Kommunikationspaares. Der Comprobe ist als ein nicht vollwertiges<br />

<strong>Bluetooth</strong>-Gerät zu verstehen. Dieser findet alle aktiven Geräte der Umgebung, wobei er<br />

selbst für diese „unsichtbar“ bleibt, synchronisiert sich auf das zu kontrollierende Master-<br />

Slave-Paar ein und protokolliert alle empfangenen Pakete. Dabei beteiligt er sich an jeglicher<br />

<strong>Bluetooth</strong>-Kommunikation nicht.<br />

Der Comprobe sollte möglichst zwischen den beiden Kommunikationspartnern positioniert<br />

werden, um das Problem der Nichtregistrierung von Paketen zu vermeiden.<br />

35


Abbildung 2.1 – Messanordnung Airsniff<br />

Ebenso kann es vorkommen, dass bei ungünstiger Konstellation (Distanz, Interferenzen) eines<br />

der überwachten Geräte ein vom Comprobe korrekt empfangenes Paket gestört oder gar nicht<br />

empfängt.<br />

Ist das Verhalten eines Kommunikationsteilnehmers von speziellem Interesse, so sollte der<br />

Comprobe in dessen unmittelbarer Nähe aufgestellt werden.<br />

Zur Überwachung mehrerer Gerätepaare ist die Verwendung ebenso vieler Comprobes<br />

erforderlich. Dadurch ist ab der FTS for <strong>Bluetooth</strong> Version 3.20 die Überwachung von Pico-<br />

respektive Scatter-Netzen, sowie Mixed Pico-Netzen (v1.1 und v1.2-Geräte mit aktiviertem<br />

AFH) möglich.<br />

Auch an die gesetzten Systemvoraussetzungen sollte man sich streng halten, da sonst der<br />

Mess-PC nicht in einer tolerierbaren Performance oder sogar mit Fehlern arbeitet. Es hat sich<br />

ebenso als günstig erwiesen, so weit möglich einen nicht an der zu überwachenden<br />

Kommunikation beteiligten PC als Mess-PC einzusetzen.<br />

Nach der erfolgreichen Installation der Software FTS for <strong>Bluetooth</strong> und der folgenden<br />

Hardwareinstallation des Comprobe, sollte man sich die Zeit nehmen, sich mit den Bedien-<br />

und Ausgabefenstern der Software vertraut zu machen. Folgende kurze Erläuterungen sollen<br />

dabei helfen die Produktvariante FTS for <strong>Bluetooth</strong> air sniffer (basic) und darauf aufbauende<br />

schnell effektiv bedienen zu können.<br />

FTS wird von einem Hauptfenster aus organisiert und greift auf ein weiteres Fenster mit der<br />

Datenquelle (Datasource window), im beschriebenen Fall verwaltet dieses den Comprobe, zu.<br />

Vom genannten Hauptfenster aus kontrolliert man die gesamte Datenerfassung und hat<br />

Zugriff auf alle Darstellungsvarianten. Die beiden Erfassungsmethoden, in Arbeitsspeicher<br />

oder in Datei schreiben, unterscheiden sich nicht wesentlich, da sich bei Wahl der Pufferung<br />

im Speicher das Ergebnis auch anschließend noch, sogar beim Schließen der gesamten<br />

Anwendung automatisch erfragt, in eine Datei exportieren lässt. Lediglich die<br />

Kapazitätseinschränkung seitens des vorhandenen Arbeitsspeichers gegenüber dem sofortigen<br />

Schreiben auf Festplatte kann sich bei großen Datenmengen nachteilig auswirken. Die<br />

Nutzung der Speichervariante ist daher, bei mehrmaligen kurzen Tests, aufgrund des weit<br />

geringeren Datei-Management-Aufwandes zu bevorzugen. Man kann am Ende einer Messung<br />

entscheiden, ob sich die Speicherung der Protokollierung lohnt.<br />

36


Bevor man Daten erfassen kann, muss die Datenquelle mit allen möglichen Parametern<br />

eingestellt und der Comprobe mit dem überwachten Pico-Netz synchronisiert werden. Dies<br />

geschieht natürlich direkt im „Datasource“-Fenster. Der Button „Hardware Settings“ erlaubt<br />

die Auswahl eines aus der List aller angesteckten Test-Devices, sollte sich aber im Normalfall<br />

auf den eingesteckten Comprobe beschränken. Es kann zu Problemen mit der Erkennung<br />

eines Coprobes kommen, sobald dieser seit dem letzten Systembootvorgang neu eingesteckt<br />

wurde. Hier empfiehlt sich die manuelle Erkennung mit Hilfe der Listenauswahl. Ist ein<br />

Comprobe erkannt, so können über den Button „Set I/O Parameters“ die Einstellungen zur<br />

Synchronisationsmethode mit dem Pico-Netz, Filterung bestimmter Elemente des<br />

Datenstromes und Entschlüsselung vorgenommen werden. Weiterhin sind hier das Auffinden<br />

von aktiven Geräten und die Auswahl des zu überwachenden Mast-Slave-Paares auszuführen.<br />

Die Button „Resync“ und „Reset“ sind bei Problemen mit der Synchronisation behilflich. Die<br />

Taste „Channel Map“ zeigt die Kanalliste der verwendeten Frequenzkanäle und ist daher nur<br />

bei Verwendung von <strong>Bluetooth</strong>-v1.2-Geräten und Aktivierung von AFH sinnvoll. Zum<br />

Starten bzw. Stoppen des Comprobes sind die entsprechend benannten Tasten zu drücken.<br />

Der Comprobe wird allerdings noch nicht gestartet, da erst die Erfassung der Daten aktiviert<br />

werden sollte.<br />

Zur Erfassung von Daten ist nur das Hauptfenster mit seinen Steuerknöpfen und dem darunter<br />

befindlichen Statusbereich erforderlich. So wählt man mit [start capture to buffer] oder<br />

[start capture to disk] den Beginn der Erfassung in den Speicher oder in eine gleich darauf<br />

neu angelegte Datei. Daraufhin sollte der Comprobe im „Datasource“-Fenster gestartet<br />

werden. Das Symbol in diesem Fenster zeigt dabei den Status der Synchronisation mit dem<br />

Pico-Netz an. Hierbei bedeutet das durchgestrichene rote das der Comprobe nicht aktiv ist, rot<br />

die Initialisierung, gelb einen Resynchronisationsversuch und grün den Stand-by-Zustand des<br />

aktiven Comprobe, also die Zeit innerhalb welcher der Start der <strong>Bluetooth</strong>-Kommunikation<br />

erfolgen sollte. Ist dies rechtzeitig geschehen, erkennt man das Mitschneiden einer laufenden<br />

Kommunikation des vorher ausgewählten Master-Slave-Paares respektive die korrekte<br />

Synchronisierung am blauen Symbol.<br />

Das Anhalten der Erfassung und gleichzeitige Löschen des Speicherpuffers geschieht mit<br />

[Clear], respektive Schließen der Datei mit [Close]. Zum Anhalten der Datenerfassung,<br />

um beispielsweise den Mitschnitt vorläufig zu beenden oder nur den Inhalt des Puffers nun zu<br />

speichern, bedient man [Pause/Resume] und setzt sie durch erneutes Drücken fort. Die<br />

Anzeige über den Füllstand des Puffers/der Datei im unteren Status-Teil des Hauptfensters<br />

sollte man immer im Auge behalten, da bei Überschreiten der Maximalkapazität entweder die<br />

ältesten Daten mit den neuen überschrieben werden oder bei Nichtaktivierung dieser Funktion<br />

(Options -> System Settings -> Wrap Buffer/File) keine weiteren Daten mehr erfasst werden.<br />

Zur Auswertung aktuell erfasster oder aus einer, mit Hilfe von [Open file] geöffneten,<br />

existierenden Datei geladenen Daten, stehen mehrere Fenster mit verschiedenen<br />

Darstellungsformen zur Verfügung. Bei Bedarf können diese auch live zur Auswertung<br />

herangezogen werden, was in gegebenem Fall zur Entscheidung des Abbruchs der<br />

Registrierung oder zumindest der Kenntnis über den Verlauf des Tests behilflich sein kann.<br />

Statistics Display – statistische Informationen zu Datenfluss-Parametern<br />

Frame Display – textbasierte Informationen einzelner Frames<br />

Protocol Navigator – textbasierte Informationen mehrerer Frames<br />

Event Display – Analyse auf Byte-Ebene<br />

37


Statistics Display<br />

Es gibt eine Übersicht der angefallenen Datenmengen, verwendeten Framegrössen,<br />

Kanalnutzung, Übertragunsraten und Frameraten auf Master und Slave aufgeschlüsselt. Des<br />

Weiteren ist die Gesamtzahl der fehlerhaften und der erneut übertragenen Pakete ersichtlich.<br />

Abbildung 2.2 – Screenshot FTS-Statistics Display<br />

Die drei verschiedenen Karteikarten haben folgende Verwendung:<br />

Session – Statistik über die komplette Sitzung bis Programmende<br />

Resetable – manuelles Rücksetzen der Statistik durch [reset] jederzeit möglich<br />

Buffer – Statistik über aktuell gepufferten Daten<br />

Zusätzlich lassen sich die Frame-Größen auch graphisch in einem extra Fenster darstellen,<br />

welches über den Button erreichbar ist. Vor Beginn eines Capturings kann auch Einfluss<br />

auf die Frame-Grössen-Bereiche der Statistik genommen werden (Options -> Set Frame<br />

Size Ranges).<br />

Frame Display<br />

Die enthaltene Information eines in der oberen Fensterhälfte ausgewählten Frames, auch nach<br />

den enthaltenen Protokollen gefiltert, kann hier eingesehen werden. Es gibt 3 spezielle<br />

Anzeige-Filtermöglichkeiten:<br />

38


- alle Pakete mit generellen Informationen anzuzeigen,<br />

- in der Menge aller nur die relevanten eines Protokolls markiert und ausgewertet zu<br />

haben (Summary Layer)<br />

- nur die Frames eines Protokolls über die Karteikarten auszuwählen<br />

Es hat sich als vorteilhaft erwiesen, im Bereich der dekodierten Information (Decode Pane)<br />

entsprechende Teilbäume mit Details zu Protokollen, welche nicht von Interesse sind, einfach<br />

zu reduzieren und nicht unbedingt über die fensteransichtspezifische Filterfunktion<br />

auszublenden.<br />

Abbildung 2.3 – Screenshot FTS-Frame Display<br />

Die optional im unteren Fensterbereich gezeigten Informationen lassen sich beliebig aus<br />

mehren Ansichtsbereichen (Panes), z.B. die dekodierte Information in Textform oder die<br />

Ausgabe des Frame-Inhalts in binär, hex oder ASCII-Format, zusammenstellen und<br />

einblenden.<br />

Protocol Navigator<br />

39


Der Vergleich protokollbezogener Information kompletter Frames oder auf der Ebene eines<br />

gemeinsam verwendeten Protokolls ist hier effizient möglich. Eine spezielle Filterung wird<br />

ebenfalls durch gleichzeitige Auswahl anzuzeigender und zu verbergender Protokolle oder<br />

Verwendung der Liste vordefinierter Filter (Named Filters), welche durch eigene Filter<br />

beliebig erweitert werden kann, unterstützt.<br />

Event Display<br />

Abbildung 2.4 – Screenshot FTS-Protocol Navigator<br />

Der in einem Fenster der anderen beiden Darstellungsformen ausgewählte Frame(-Ausschnitt)<br />

kann in nicht decodierter Form unter anderem in hex oder ASCII angezeigt werden. Hier sind<br />

ebenfalls die Zuordnung der fortlaufenden Frame-Nummerierung und die Rollenverteilung<br />

klar ersichtlich. Eine Zusammenfassung des Ausgewählten Bytes ist in der Statuszeile<br />

dargestellt.<br />

40


Abbildung 2.5 – Screenshot FTS-Event Display<br />

Die Suchoption erleichtert in allen drei genannten Darstellungsfenstern das gezielte<br />

Auffinden spezifischer Informationen. Die Live-Betrachtung der Daten eines aktuellen<br />

Capturings wird durch die Einfriersteuerung von lästigem Zurückscrollen zur<br />

gewünschten Stelle im Fenster befreit.<br />

Filteregeln bezüglich des Protokolls und der allgemeinen [Apply Filters] Liste<br />

vordefinierter Filter werden nur in den Fenstern des Frame Displays und Protocol Navigator<br />

der ersten Instanz fensterübergreifend zugewiesen. Dies gilt nicht für das jeweils<br />

fenstereigene Verbergen von Detailinformationen (Protocol to Hide / Hidden From View).<br />

Weitere Instanzen der drei Darstellungsfenster können mit [Duplicate] erzeugt und<br />

beliebig zur Anzeige spezifischer Informationen gefiltert werden. Eine neue Fensterinstanz<br />

mit abweichender Filterung kann auf Wunsch („Apply to: New Frame Display“ – verwirrend,<br />

denn auch auf Protocol Navigator anwendbar!) auch bei direktem Zuweisen eines<br />

vordefinierten Filters erstellt werden.<br />

FTS bietet Window Synchronisation. Dies bedeutet, dass die zu der in einem der drei<br />

Darstellungsfenster - ebenfalls erster Instanz - markierten Information die zugehörigen<br />

Informationen in den beiden anderen gleichzeitig angezeigt werden.<br />

2.1.2. Anmerkung<br />

Es ist zu empfehlen, schon vor der Installation von FTS for <strong>Bluetooth</strong> oder SerialBlue sich<br />

mit dem „Quick Start Guide“ von FTS vertraut zu machen. Dies erleichtert den Umgang mit<br />

41


Fragen hinsichtlich der Zuordnung von Bezeichnungen der verschiedenen Produktvarianten<br />

und den entsprechenden Verwendungen, sowie den Ablauf des Installationsvorganges selbst.<br />

Weiterhin bietet sich der Besuch der Homepage von FTE (fte.com/blu01.asp) an, um einige<br />

nützliche Hintergrundinformationen zu Änderungen und vor allem die neuste Version der<br />

Software oder Updates zu erhalten und zur Installation zu nutzen.<br />

Neue Produkte wie <strong>Bluetooth</strong>-Geräte oder Software auf dem Mess-PC können auch nur von<br />

einer neuen Version von FTS und dementsprechend der neuesten Firmware des Comprobe<br />

unterstützt werden.<br />

Bei der Änderung der seriellen Treiber zur Anwendung von HCI serial sniff oder SerialBlue<br />

ist auf jeden Fall die aktuellste Version dieser FTS-eigenen Treiber zu verwenden, da mit den<br />

bis zum Testzeitpunkt verfügbaren keine erfolgreiche Ersetzung der MS Windows-eigenen<br />

seriellen Treiber bei verschiedenen MS Windows-Versionen (ohne weiteren Aufwand)<br />

erreicht werden konnten.<br />

2.2 MSC einer OBEX Datenübertragung<br />

2.2.1. Darstellung<br />

Für den Transfer von digitalen Daten zwischen zwei <strong>Bluetooth</strong>-fähigen Hosts ist eine<br />

Verbindung der <strong>Bluetooth</strong>-Geräte und der Aufbau der Kommunikation aller verwendeten<br />

Protokolle notwendig. Im folgenden Kapitel soll der Ablauf einer <strong>Bluetooth</strong>-Verbindung zum<br />

Versand einer 1kB-Datei gezeigt werden.<br />

Wie schon genannt, sucht der Dateisender – folgend Master – in seiner Umgebung nach<br />

aktiven <strong>Bluetooth</strong>-Geräten. Es erfolgt bei diesem Inquiry im Link Manager Protocol die<br />

Anfrage nach dem zugewiesenen Gerätenamen an alle gefundenen Geräte unter Verwendung<br />

der MAC-Adressen. In der folgenden Abbildung ist dieser Abruf am späteren Dateiempfänger<br />

– folgend Slave genannt – dargestellt.<br />

1<br />

2<br />

3<br />

4<br />

5<br />

6<br />

Master Slave<br />

LMP_name_req(offset=0)<br />

LMP_name_res(offset=0,Len=20,"TU-Laptop_Expl")<br />

Abbildung 2.6 – MSC-Frame 1-6<br />

BB_retransmitted_LMP_packet<br />

LMP_name_req(offset=14)<br />

LMP_name_res(offset=14,Len=20,"orer_B")<br />

LMP_detach<br />

42<br />

Abruf des Gerätenamens<br />

mit Überlänge<br />

LM-Verbindungsabbau<br />

Die Aufzeichnung der Kommunikation beginnt mit dem LMP-Request nach dem Namen des<br />

Slaves. Es folgt eine Wiederholung desselben Paketinhaltes bevor der adressierte Slave mit<br />

einem LMP-Name-Response, welches den Beginn des Namens (Offset=0) kennzeichnet,<br />

seine gesamte Länge und die ersten maximal möglichen 14Byte dieses angibt. Wie ersichtlich<br />

wird handelt es sich im verwendeten Beispiel um einen Namen, der aufgeteilt werden muss.<br />

Folglich sendet der Master erneut einen LMP-Name-Request mit dem einzigen Unterschied<br />

des Name-Offset, notwendigerweise 14, da ab hier der Name fortgesetzt werden soll. Unter<br />

Berücksichtigung dieses Offset sendet der Slave erneut ein Response mit den Parametern<br />

Beginn (Offset=14), selber Gesamtlänge und dem zweiten Teil des Namens. Hat der Master-


Host der MAC-Adresse des Slave den Namen zugeordnet so beendet er diese LMP-<br />

Verbindung vorerst mit dem LMP-Detach. Es folgt noch die gegenseitige Information über<br />

die verwendete Version des LM-Protokolls mit Hilfe von einem Master-Request und dem<br />

entsprechenden Slave-Response.<br />

Erfolgt nun der Verbindungswunsch durch den Master-Host (Host-Connection-Reqest),<br />

sobald der Datentransfer gestartet wird, so sendet der Master dieses als LMP- Host-<br />

Connection-Reqest an den Slave. Dieser akzeptiert und bestätigt genau diese Anfrage mit<br />

einer LMP-Accepted-Antwort. Hierauf folgt die Abfrage der Zeitmessgenauigkeit des<br />

Masters an den Slave, welcher mit dem entsprechenden Response und den erfragten<br />

Parametern Abweichung (drift) und Zittern (jitter) antwortet. Der Master sowie der Slave<br />

senden sich nun nacheinander die Initialisierungsende-Information zu.<br />

7<br />

8<br />

9<br />

10<br />

11<br />

12<br />

13<br />

14<br />

LMP_version_req(vers=1.1-215,compID="Digianswer A/S")<br />

LMP_version_res(vers=1.1-215,compID="Digianswer A/S")<br />

LMP_host_connection_req<br />

LMP_accepted (LMP_host_connection_req)<br />

LMP_timing_accuracy_req<br />

LMP_timing_accuracy_res(drift=20ppm,jitter=1µs)<br />

Abbildung 2.7 – MSC-Frame 7-14<br />

LMP_setup_complete<br />

LMP_setup_complete<br />

43<br />

LMP-Versionsaustausch<br />

Host-Verbindungsaufbau<br />

Vergleich der Zeitmessung<br />

Ende der Initialisierung<br />

Da die Verwendung von mehreren Zeitschlitzen für ein Paket von der restlichen<br />

Kommunikation und der Verwendung von möglichen SCO-Kanälen abhängig ist, muss der<br />

Master seinen hieraus resultierenden Maximalwert – hier 5 da keine weitere Kommunikation<br />

mit anderen Slaves oder SCO-Verbindungen existierten – als gewünschte Einstellung mittels<br />

eines LMP-Max-Slot-Request(5) an den Slave senden. Dieser bestätigt nur den Erhalt dieses<br />

Requests erneut mit einem LMP-Accepted, woraufhin der Master den LMP-Befehl, dass die<br />

Maximalzahl an Slots ist für beide Kommunikationspartner bis zur nächsten Änderung 5 ist,<br />

sendet. Die LM-Einstellungen sind damit auf beiden Seiten gleich und abgeschlossen.<br />

15<br />

16<br />

17<br />

Abbildung 2.8 – MSC-Frame 15-17<br />

LMP_max_slot_req(5)<br />

LMP_accepted (LMP_max_slot_req)<br />

LMP_max_slot(5)<br />

max. Zeitschlitze f. ein Paket<br />

Für einen OBEX-Datentransfer benötigt man nun eine Verbindung der OBEX-Dienste beider<br />

Seiten. Dies erfolgt, wie aus dem Protokollstapel von <strong>Bluetooth</strong> ersichtlich wird, unter<br />

Verwendung mehrerer untergeordneter Protokolle angefangen beim Logical Link Control &<br />

Adaption Protocol (L2CAP). Dieses baut für jedes aufsetzende Protokoll einen eigen<br />

logischen Kanal auf.<br />

Bevor die für den Dateiversand erforderlichen Dienste des verbundenen Geräts genutzt<br />

werden können, müssen sie dem versendenden Gerät auch als angebotene Dienste bekannt<br />

sein. Dieser Vorgang des Dienstauffindens ist bekanntlich durch das Service Discovery<br />

Protocol (SDP) realisiert.<br />

Durch ein L2CAP-Connection-Request(SDP) wird dem Slave der Wunsch nach einer L2CAP<br />

Verbindung für eine folgende SDP-Verbindung angezeigt, worauf dieser mit dem<br />

zugehörigen L2CAP-Connection-Response und einer Verbindung-erfolgreich-Meldung


antwortet. Für diesen entstandenen logischen Kanal zu SDP wird in den folgenden 4 Paketen<br />

zuerst masterseitig dann slaveseitig die Einstellung der Parameter Maximal Transfer Unit<br />

(MTU) und Puffer-Verwurf-Zeit (Flush Timeout) mit L2CAP-Configure-Requests gesendet<br />

und jeweils durch L2CAP-Configure-Responses bestätigt.<br />

18<br />

19<br />

20<br />

21<br />

22<br />

23<br />

L2CAP_connection_req(SDP)<br />

L2CAP_connection_res(connection_successful)<br />

L2CAP_cofigure_req(MTU=65535,FlushTimeout=65535)<br />

L2CAP_configure_res(success)<br />

L2CAP_cofigure_req(MTU=65535,FlushTimeout=65535)<br />

Abbildung 2.9 – MSC-Frame 18-23<br />

L2CAP_configure_res(success)<br />

44<br />

SDP Verbindungswunsch<br />

L2CAP Init f. SDP<br />

Zur optimalen Einstellung des Stromverbrauchs sendet jedes kommunizierende <strong>Bluetooth</strong>-<br />

Gerät – ob mobil oder nicht – , gesteuert durch seinen Link Manager, Anfragen zur<br />

Verringerung der Sendeleistung an den Kommunikationspartner. Dies geschieht im Beispiel<br />

zum ersten Mal im folgend abgebildeten Frame und wiederholt sich bis beide Seiten ihr<br />

Minimum oder eine zur gesicherten Übertragung mindest notwendigen Sendeleistung erreicht<br />

haben. Im weiteren Verlauf wird dieses Wissen über die unbestätigten LMP-Power-Decrease-<br />

Requests vorausgesetzt.<br />

LMP_power_decr_req<br />

24 Sendeleistungverminderung<br />

Abbildung 2.10 – MSC-Frame 24<br />

Die zuvor über einen logischen L2CAP-Kanal aufgebaute SDP-Verbindung wird nun zur<br />

Abfrage der notwendigen Dienste genutzt. Dies geschieht bei unterschiedlichen Herstellern zu<br />

unterschiedlichen Zeitpunkten. In Frage kommen dabei zu Beispiel zum Ersten der Moment<br />

nach dem Auffinden eines aktiven und bisher unbekannten Geräts, zum Zweiten erst bei<br />

manueller Auswahl aus der Host-Liste aller bekannten und aktiven <strong>Bluetooth</strong>-Geräte im<br />

Umfeld zur Verwendung eines unterstützten Dienstes oder zum Dritten wie hier auch<br />

dargestellt bei Verwendung einer dienstspezifischen Software (hier nur OBEX) beim Zugriff<br />

auf diese Dienste. Unter Verwendung von SDP-Service-Search-Attribute-Requests nach den<br />

Diensten OBEX-Push, OBEX File Transfer und Imaging Responder seitens des Masters und<br />

SDP-Service-Search-Attribute-Responses seitens des Slaves werden die jeweiligen<br />

Protokollreihenfolgen und der zugeordnete logische RFCOMM-Kanal zugewiesen.<br />

25<br />

26<br />

27<br />

28<br />

29<br />

30<br />

SDP_SSARequest(OBEXPush)<br />

SDP_SSAResponse(L2CAP,RFCOMM(2),OBEX)<br />

SDP_SSARequest(OBEX File Trans)<br />

SDP_SSAResponse(L2CAP,RFCOMM(3),OBEX)<br />

SDP_SSARequest(Imaging Responder)<br />

SDP_SSAResponse(L2CAP,RFCOMM(4),OBEX)<br />

31<br />

32<br />

LMP_power_decr_req<br />

LMP_power_decr_req<br />

Abbildung 2.11 – MSC-Frame 25-32<br />

Abfrage v. OBEX-Diensten<br />

SSA .. ServiceSearchAttribute


Nachdem die zu verwendenden Services logischen RFCOMM-Kanälen zugewiesen sind,<br />

erfolgt der masterseitige Verbindungswunsch nach einem L2CAP-Kanal zum RFCOMM<br />

(Kabelersatzprotokoll) erneut mittels eines L2CAP-Connection-Request, welches wieder mit<br />

dem zugehörigen Response und der Erfolgsmitteilung beantwortet wird. Hierauf folgt<br />

ebenfalls wieder die gegenseitige Initialisierung dieses logischen Kanals durch L2CAP-<br />

Configure-Requests & -Responses.<br />

33<br />

34<br />

35<br />

36<br />

37<br />

38<br />

39<br />

L2CAP_connection_req(RFCOMM)<br />

L2CAP_connection_res(connection_successful)<br />

L2CAP_cofigure_req()<br />

L2CAP_configure_res(success)<br />

Abbildung 2.12 – MSC-Frame 33-39<br />

LMP_power_decr_req<br />

L2CAP_cofigure_req()<br />

L2CAP_configure_res(success)<br />

45<br />

RFCOMM Verbdg.-wunsch<br />

L2CAP Init f. RFCOMM<br />

Parameter wie SDP (siehe oben)<br />

Der Start des RFCOMM-Multiplexers erfolgt durch Senden eines RFCOMM-Set-<br />

Asynchronous-Balanced-Mode-Frames auf dem Kontrollkanal (CH 0), welches von einem<br />

RFCOMM-Unnumbered-Acknoledgement für diesen Kanal bestätigt wird. Es folgen weitere<br />

<strong>Bluetooth</strong>-spezifische RFCOMM-Parameter-Einstellungen mittels RFCOMM-Unnumbered-<br />

Information-with-Header-Check-Commands. Zu diesen gehören das ausschließliche Nutzen<br />

von UI mit Header Check, da die Fehlerkorrektur des ETSI TS 07.10-Protokolls im<br />

<strong>Bluetooth</strong>-RFCOMM nicht verwendet wird, Antwortzeiten für Kontroll- wie Datenkanal, die<br />

Unterstützung kreditrahmenbasierter Flusskontrolle (CFC Credit based Flow Control) und<br />

Maximale Frame-Größe.<br />

40<br />

41<br />

42<br />

43<br />

Abbildung 2.13 – MSC-Frame 40-43<br />

RFCOMM_SABM (CH 0)<br />

RFCOMM_UA (CH 0)<br />

RFCOMM_UIH(CMD(Param.Negot.))<br />

RFCOMM_UIH(CMD(Param.Negot.))<br />

SABM .. SetAsyncBalanceMode<br />

UA .. UnnumberedACK<br />

UIH .. UnnumberedInfo +<br />

HeaderCheck<br />

Es folgt nun der Aufbau des RFCOMM-Datenkanals (CH 2) in der selben Art und Weise wie<br />

schon der Kontrollkanal erstellt wurde. In den folgenden Frames werden die Modem Status<br />

Commands und respektive Responses dazu genutzt die Kontrollsignale sowie das Break-<br />

Signal der emulierten RS-232 Schnittstelle durchzureichen. Gefolgt wird dies von einer<br />

gegenseitigen Zusendung der ersten Kreditrahmen für CFC und weiteren Modem Status<br />

Commands.


44<br />

45<br />

46<br />

47<br />

48<br />

49<br />

50<br />

51<br />

52<br />

53<br />

54<br />

55<br />

56<br />

Abbildung 2.14 – MSC-Frame 44-56<br />

RFCOMM_SABM (CH 2)<br />

RFCOMM_UA (CH 2)<br />

RFCOMM_UIH(CMD(ModemStatus))<br />

RFCOMM_UIH(CMD(ModemStatus))<br />

RFCOMM_UIH(RESP(ModemStatus))<br />

RFCOMM_UIH(RESP(ModemStatus))<br />

RFCOMM_UIH(Credits(30))<br />

RFCOMM_UIH(Credits(30))<br />

RFCOMM_UIH(CMD(ModemStatus))<br />

RFCOMM_UIH(CMD(ModemStatus))<br />

RFCOMM_UIH(RESP(ModemStatus))<br />

RFCOMM_UIH(RESP(ModemStatus))<br />

LMP_power_decr_req<br />

46<br />

RS232-Signalemulation<br />

Erst nach Abschluss dieser vorbereitenden Protokollverbindungen kann der Master seinen<br />

OBEX-Verbindungswunch zum Datentransfer (FTP File Tranfer Protokol) an den Slave<br />

mittels OBEX-Connect(FTP) senden. Dies wird durch eine Erfolgsmeldung und Bestätigung<br />

des gewählten Protokolls FTP beantwortet. Darauf folgend erfragt der Master den Inhalt des<br />

Zielordners auf dem Slave-Host durch OBEX-Get(FolderListing) was ihn aus Sicht des FTP<br />

zum anfragenden Client macht. Somit ist der Slave hier FTP-Server welcher den erfragten<br />

Inhalt, im Beispiel leerer Ordner, als Erfolgsmeldung OBEX-Success(FTP-Server(Folder<br />

Listing) zurücksendet. Nun folgen die eigentlichen Daten. also der Inhalt der 1kB-Datei sowie<br />

ihre Attribute und Parameter in den nächsten Multislot-Paketen, was wiederum durch OBEX-<br />

Success(FTP) bestätigt wird und nun auf dem Slave-Host als Datei im eingestellten Standard-<br />

Datenaustausch-Ordner zu finden ist. Es folgt eine erneute Abfrage des Ordnerinhalts seitens<br />

des Masters und die gewohnte Bestätigung das Slave, welche jetzt einen nichtleeren<br />

Ordnerinhalt auflistet. Die Datei ist erfolgreich kopiert worden.<br />

OBEX_Conn(FTP)<br />

57<br />

OBEX_Sucess(FTP)<br />

58<br />

OBEX_Get(FolderListing)<br />

59<br />

OBEX_Sucess(FTP_Server(FolderListing))<br />

60<br />

OBEX_Put(FTP_Client(Data))<br />

61/62<br />

OBEX_Put(FTP_Client(Data))<br />

63/64<br />

OBEX_Sucess(FTP)<br />

65<br />

OBEX_Get(FolderListing)<br />

66<br />

OBEX_Sucess(FTP_Server(FolderListing))<br />

67<br />

Abbildung 2.15 – MSC-Frame 57-67<br />

OBEX Verbindung m. FTP<br />

Auf der Masterseite wird nun kein Zugriff mehr auf das SDP benötigt, was sich im Abbau des<br />

zugehörigen L2CAP-Kanals mittels L2CAP-Disconnection-Request und –Response<br />

wiederspiegelt.


68<br />

69<br />

Abbildung 2.16 – MSC-Frame 68/69<br />

L2CAP_disconnection_req()<br />

L2CAP_disconnection_res(success)<br />

47<br />

L2CAP Verbindungsabbau 1<br />

Nun wird das OBEX-Protokoll ebenfalls durch OBEX-Disconnect und bestätigende OBEX-<br />

Success-Meldung getrennt.<br />

70<br />

71<br />

Abbildung 2.17 – MSC-Frame 70/71<br />

OBEX_Disconnect<br />

OBEX_Sucess<br />

OBEX Verbindungsabbau<br />

Auf der RFCOMM-Ebene muss nur der Datenkanal abgebaut werden, was durch RFCOMM-<br />

Disconnect(CH 2) und die entsprechende Bestätigung mittels Unnumbered Acknowledgement<br />

realisiert wird.<br />

72<br />

73<br />

Abbildung 2.18 – MSC-Frame 72/73<br />

RFCOMM_Disconnect (CH 2)<br />

RFCOMM_UA (CH 2)<br />

RFCOMM Verbindungsabbau<br />

Beim Aufruf zum Abbau des verbliebenen L2CAP-Kanals für RFCOMM ist im<br />

Nutzdatenbereich des gesendeten Pakets ein Fehler aufgetreten, wobei allerdings die<br />

beinhalteten Informationen nachweislich wiederhergestellt werden konnten. Der L2CAP-<br />

Disconnection-Request wurde erneut durch das entsprechende Response vom Slave bestätigt.<br />

74<br />

75<br />

L2CAP_disconnection_req() Payload Error<br />

L2CAP_disconnection_res(success)<br />

Abbildung 2.19 – MSC-Frame 74/75<br />

L2CAP Verbindungsabbau 2<br />

Erst jetzt wurde nach weiteren Anfragen nach Sendeleistungsverminderung seitens des Slaves<br />

das Minimum der Leistung erreicht was mit der ebenfalls unbestätigten LMP-Min-Power-<br />

Meldung dem Master angezeigt wird. Selber sendet der Slave aber weiterhin noch eine<br />

Anfrage seinerseits. Diese Verbindung wird nach Lösen aller Verbindungen der anderen<br />

Protokolle auch auf Link Manager-Ebene durch das endgültige LMP-Detach geschlossen.<br />

76<br />

77<br />

78<br />

LMP_decr_power_req<br />

LMP_min_power<br />

LMP_decr_power_req<br />

79<br />

LMP_detach<br />

Abbildung 2.20 – MSC-Frame 76-79<br />

2.2.2. Anmerkung<br />

Sendeleistungsmin. erreicht<br />

LMP Verbindungsende<br />

Aufgrund der bereits genannten Schwierigkeiten mit dem Einsatz der seriellen Sniff-Variante<br />

und den daraus resultierenden Beschränken auf die Luftschnittstelle, konnten nur korrekt oder<br />

fehlerhaft empfangene Pakete in die Auswertung einfließen. Daher ist es nicht möglich, die


genaue Anzahl verlorener Pakete einer gestörten Übertragung zu bestimmen. Weiterhin sei<br />

angemerkt, dass FTS nicht vorrangig zur Visualisierung von überwachten <strong>Bluetooth</strong>-<br />

Verbindungen geeignet ist, sondern zum Testen verschiedenster Geräte oder<br />

Kommunikationsprotokolle im Entwurf, sowie zur <strong>Bluetooth</strong>-Zertifizierung von<br />

Neuentwicklungen dient. Dementsprechend umfangreich und somit komplex fällt dieses<br />

Programm und dessen Entwicklungsumgebung (freiprogrammierbar) aus.<br />

Zum Zwecke der schnellen visuellen Darstellung eignen sich Protocol Analyzer mit der<br />

Ausrichtung auf den Endanwender, wie Kontrolle und Monitoring, erheblich besser. Eines<br />

dieser Werkzeuge ist der BlueAnalyzer der Firma IVT mit seinen Unter-Varianten BlueTester<br />

und BlueUnitTesting. Diese stellen die aufgenommenen Daten in Echtzeit direkt in Message-<br />

Sequenz-Charts und ebenfalls detaillierte Informationen in weiteren Fenstern geordnet dar.<br />

Daraus lassen sich dann einfach detailreiche, an die eigenen Wünsche angepasste Reporte<br />

erstellen. Natürlich sind diese Funktionen im selben Maße wie FTS zum Testen von<br />

Protokollen geeignet. Somit sollte ein Vergleich der angebotenen Sniffer-Software<br />

hinsichtlich der Hauptverwendung und dem Erfüllen daraus resultierender Anforderungen<br />

genau geführt werden.<br />

Zur Erstellung eines solchen MSC wäre ein o.g. Monitoring-Programm mit automatischen<br />

Visualisierungsfunktionen hilfreich gewesen. Bei Anwendung von FTS for <strong>Bluetooth</strong> ist dies<br />

nur mittels aufwendiger Exportierung und Aufbereitung durch eine weitere Software (Visio<br />

und Grafikprogramm) manuell möglich.<br />

2.3 <strong>Bluetooth</strong> in der Praxis<br />

Im folgenden Kapitel soll der <strong>Bluetooth</strong>-Standard und seine Verwendung in der Praxis näher<br />

beleuchtet werden. Hierbei soll im ersten Teil auf die Konfiguration, herstellerspezifische<br />

Unterschiede, Probleme bei alltäglichen <strong>Anwendungen</strong> und Optimierungsempfehlungen<br />

eingegangen werden. Darauf folgen die Ermittlung resultierender Reichweiten ausgewählter<br />

Sendeleistungsklassen und eine Veranschaulichung der Kanalnutzung einer<br />

Beispielverbindung.<br />

Folgende Geräte wurden unter Windows 2000/XP getestet:<br />

- ACER BT500 USB, Class 2<br />

- ComOne <strong>Bluetooth</strong> PC-Card MC310, Class 1<br />

- D-Link DBT 120 USB, Class 3<br />

- Sony-Ericsson T-610 Mobiltelefon, <strong>Bluetooth</strong> Class 3 integriert<br />

- Toshiba BT-PC-Card PA3053, Class 1<br />

- Toshiba Portegé3500 Laptop, <strong>Bluetooth</strong> Class 2 integriert<br />

<strong>Bluetooth</strong>-Anwender-Software:<br />

- jeweils im Lieferumfang enthaltene Original-Software<br />

- Widcomm Vers 1.4.3.4 (weit verbreitet)<br />

- BlueSoleil Vers 1.4.7 (weit verbreitet)<br />

- Toshiba Vers 3.00.12 (nur für Toshiba-Geräte)<br />

2.3.1. Konfiguration und Betrieb<br />

Bei der Installation, der Einstellung und dem Einsatz der zur Verfügung gestandenen<br />

<strong>Bluetooth</strong>-Endgeräte wurde ein ansehnlicher Erfahrungsschatz zusammengetragen. Aus<br />

diesem seien nur einige generelle Resultate vorgestellt.<br />

48


Um einen störungsfreien Betrieb der Funk-Hardware zu gewährleisten, sollten nach<br />

Möglichkeit folgende Punkt beachtet werden:<br />

- Störung durch interferierenden Funk (Im folgenden Kapitel näher untersucht)<br />

- kein gleichzeitiges Inquiry der beiden Kommunikationspartner<br />

- unnötige USB-Geräte vom Laptop trennen (Problem der Stromversorgung)<br />

- ungeschirmte USB-Verlängerung<br />

- Abschirmungen und Reflexionen verringern Reichweite (Signalleistung)<br />

Ist mit Vermeidung dieser physikalischen Fehlerquellen die Interaktion der Geräte auch dann<br />

noch nicht einwandfrei möglich, so ist die Ursache meist in der eingesetzten Software (inkl.<br />

Treiber) zu suchen.<br />

In erster Linie ist das spürbare Problem der Interoperabilität verschiedener <strong>Bluetooth</strong>-Geräte<br />

zu nennen. Obwohl alle eingesetzten Geräte dem derzeit neuesten generell verfügbaren<br />

Standard v1.1 entsprechen, kam es jeweils in mindestens einem Fall zu Inkompatibilitäten,<br />

sobald diese Produkte verschiedener Hersteller waren. Beispielsweise waren beidseitig<br />

unterstützte Dienste nicht oder nur in eine Richtung verwendbar, da sie entweder nicht<br />

gefunden oder zur Verbindung gebracht werden konnten. Dies kann u. a. auch auf gravierende<br />

Unterschiede in der Realisierung der eigentlichen Dienste zwischen den Herstellern<br />

entsprechender Komplettpakete (Treiber, Anwendersoftware) zurückgeführt werden.<br />

Ähnliche Probleme waren auch bei der Verwendung identischer Hardware desselben<br />

Herstellers, aber unterschiedlicher Original-Treiber- bzw. -Software-Versionen zu<br />

beobachten.<br />

Darüber hinaus kam es häufig während Treiber-Tests zu Systemabstürzen.<br />

Für all die oben aufgeführten Probleme sind vorrangig alte Versionen der eingesetzten<br />

Treiber, Soft- und Firmware verantwortlich zu machen. Es empfiehlt sich daher, die<br />

<strong>Bluetooth</strong>-Geräte immer mit den aktuellsten Treibern zu betreiben und die gleiche<br />

Anwendersoftware zu verwenden. Leider kann teilweise ein einfaches Update dieser<br />

Versionen durch fehlende produktspezifische Lizenzvereinbarungen verhindert werden. Dies<br />

war bei einem Aktualisierungsversuch der Widcomm-Software für den ACER BT500 der<br />

Fall. Durch Ausweichen auf eine herstellerunabhängige Software, wie beispielsweise die<br />

lizenzfreien BlueSoleil (IVT Systems) sowie die für spezifische Produkte lizenzierte<br />

Widcomm-Software, oder nach Möglichkeit ein Upgrade auf die neueste Firmware kann eine<br />

Lösung herbeigeführt werden. Ein Firmwareupgrade kann das Problem einer fehlenden<br />

Lizenz, zur Nutzung der aktualisierten Software, beheben. Leider wurde im Falle des ACER<br />

BT500 keine neue Firmware angeboten und BlueSoleil unterstützte den Chipsatz nicht.<br />

Eine uneinheitliche Bedienbarkeit der Anwendungssoftware begründet sich aus sehr<br />

unterschiedlicher Strukturierung ihrer Komponenten und Darstellung der<br />

Anwendermöglichkeiten. So realisiert die Software von Toshiba jeden Dienst in einzelnen<br />

Graphical User Interfaces (GUIs), die genannte lizenzfreie Software BlueSoleil alles in einem<br />

Applikationsfenster und die ebenfalls getestete Widcomm-Software die unterstützten Dienste<br />

durch direkte Einbindung ins Betriebssystem.<br />

Es wurde festgestellt, dass bei allen getesteten <strong>Anwendungen</strong> nur die Änderung elementarer<br />

Verbindungseinstellungen, wie zum Beispiel Sicherheitslevel, Com-Ports, sowie IP-Adresse,<br />

möglich war. Doch es konnte keine Einflussnahme auf weiterführende<br />

Übertragungsparameter getätigt werden. Wünschenswert wäre u. a. die Wahl zu<br />

verwendender Pakettypen, und somit die direkte Beeinflussung der ACL Datenraten<br />

(symmetrisch/asymmetrisch).<br />

49


Darüber hinaus erschwerten zumeist der Verlust manueller Einstellungen und wenig<br />

aussagekräftige Fehlermeldungen seitens der gestesteten <strong>Bluetooth</strong>-Software die<br />

Konfiguration und Verwendung dieser.<br />

2.3.2. Reichweiten<br />

Zur Untersuchung der Auswirkungen der bekannten unterschiedlichen Sendeleistungsklassen<br />

und die jederzeitige Minimierung der Sendeleistung von <strong>Bluetooth</strong>-Endgeräten auf die<br />

mögliche Reichweite der Übertragung, wurden die bereits erwähnten Geräte-Paare ACER<br />

BT500 USB und Toshiba BT-PC-Card PA3053, welche Class 2 respektive Class 1<br />

zuzuordnen sind, verwendet. Dies wurde im Rahmen eines Freifeldversuchs durchgeführt, um<br />

etwaigen Störungen und Interferenzen auszuweichen. Hierfür kamen ebenfalls die beiden<br />

bereits aufgeführten Laptops HP Omnibook zum Einsatz.<br />

Mit Hilfe des Software-Tools „iPerf“ (im folgenden Kaptitel näher vorgestellt), welches in<br />

Verkehrsmessungen IP-basierter Netzwerke Anwendung findet, wurde der maximale<br />

durchschnittliche Durchsatz in Abhängigkeit von der Entfernung zweier <strong>Bluetooth</strong>-<br />

Tranceiver ermittelt. Als Übertragungsprotokoll wurde UDP verwendet, da es die beste<br />

Möglichkeit für einen Rückschluss auf die maximal erreichbare Bandbreite einer<br />

Datenübertragung bietet. Als ausreichende Messdauer und somit die Mittlungszeit der<br />

Datenrate wurden 20 Sekunden ermittelt und entsprechend angewendet.<br />

Je nach verwendeter Literatur werden für die beiden eingesetzten Klassen 10 bis 20 Meter<br />

bzw. 100 Meter als erreichbare Distanz unter optimalen Bedingungen dargestellt. Auf<br />

Grundlage dieser Erwartungswerte wurden die Schrittweiten der Messung zum besseren<br />

Vergleich der Ergebnisse angepasst. So sollten die ersten zehn bis zwanzig Meter in beiden<br />

Messungen mit den unterschiedlichen Geräte-Paaren in Ein-Meter-Schritten erfolgen und<br />

darüber hinaus für die Klasse 1 aller 10 Meter bzw. ab 100 Meter aller 20 Meter ein Messwert<br />

bestimmt werden. Aufgrund der in den folgenden Diagrammen gezeigten Abweichungen von<br />

diesen genannten Erwartungen, wurden die Messwertanzahl und auch die Distanz der<br />

Einzelmessungen während des Experiments angepasst.<br />

50


Abbildung 2.21 – Reichweitenvergleich 1<br />

Bei Betrachtung des Vergleichs auf den ersten 10 Metern des Übertragungsweges fällt leicht<br />

die Konstanz der Durchsatz-Beträge der Class-1-Toshiba PC-Cards auf. Unerwarteter Weise<br />

hat das ACER USB-Paar schon bei den geringeren Distanzen mit starken<br />

Durchsatzeinbrüchen zu kämpfen und bereits bei 9 Meter konnte keine Verbindung mehr<br />

aufrecht erhalten werden. Dabei wurden die Erwatungen bei Weitem unterschritten, da nicht<br />

einmal das Kriterium für Class-3-Geräte mit geforderter Optimal-Reichweite von bis zu 10<br />

Meter erfüllt wurde.<br />

Abbildung 2.22 – Reichweitenvergleich 2<br />

51


Demgegenüber sehr positiv überraschend war das hier dargestellte Ergebnis der Toshiba PC-<br />

Cards. Es wurde nicht nur spielend die angestrebte Distanz erreicht, sie wurde auch mit fast<br />

gleich bleibender Übertragungsqualität überschritten. Erstaunlicherweise erst weit nach<br />

Überschreiten der doppelten zu erwartenden Reichweite ist die Verbindung endgültig<br />

zusammengebrochen.<br />

Generell war festzustellen, dass sich eine Sichtverbindung der kommunizierenden Geräte<br />

günstig auf die resultierende Reichweite, welche schon durch die geringere<br />

Sendeleistungsklasse beider eingesetzten Transceiver begrenzt wird, auswirkt.<br />

2.3.3. Kanalnutzung in FFH<br />

Um den Einfluss schmalbandiger Störquellen auf eine <strong>Bluetooth</strong>-Verbindung so gering wie<br />

möglich zu halten, muss sich das bis Version 1.1 alleinig angewandte Fast Frequency<br />

Hopping über das gesamte ISM-Band erstrecken. Dieser Aspekt der Frequenzwahl wurde<br />

untersucht und im folgenden Kapitel dargestellt.<br />

Zur Visualisierung dieser pseudozufälligen Sprungsequenz, wurde eine<br />

Beispielkommunikation zweier Geräte in ungestörter Umgebung mit Hilfe der vorgestellten<br />

Software FTS for <strong>Bluetooth</strong> aufgezeichnet. Aus der resultierenden Log-Datei wurden die<br />

Pakete mit den zugehörigen Kanalnummern, Paketindex und Zeitstempeln extrahiert. Es<br />

bestanden dadurch grundsätzlich zwei Möglichkeiten der Darstellung des<br />

Kanalnutzungsverlaufs. Das Auftragen der Kanalnutzung in Abhängigkeit vom Paketindex<br />

hätte allgemein für diese Untersuchung ausgereicht, doch wurde die Darstellung über der<br />

Zeitachse gewählt, um den zeitlichen Verlauf der Verbindung sichtbar zu machen.<br />

Die im Hex-Format vorliegende Zeitangabe wurde mittels eines zuvor bestimmten<br />

Korrekturfaktors in Millisekunden umgerechnet. (Das genaue Vorgehen wird im folgenden<br />

Kapitel näher beschrieben.)<br />

Abbildung 2.23 – Kanalnutzung, Verlauf<br />

52


In diesem Diagramm wird die Verteilung über das gesamte Band zu jedem Zeitpunkt deutlich.<br />

Somit ist die Wahrscheinlichkeit der Interferenz mit einem potentiellen Störer fast so gering<br />

wie mit der Nutzung von 79 Kanälen möglich. Es besteht also für jedes Paket immer wieder<br />

nahezu die gleiche Chance auf einem bestimmten Kanal gesendet zu werden.<br />

Ausgehend von der Kanalsprungsequenz, wurden, zur näheren Untersuchung der<br />

resultierenden Häufigkeiten der Verwendung jedes Frequenzkanals, diese in folgendem<br />

Histogramm aufgetragen, welches allerdings nicht den Zeitpunkt der Nutzung der Kanäle<br />

widerspiegelt. Es kann annähernd eine Gleichverteilung interpretiert werden, welche bei<br />

größeren Paketzahlen deutlicher wird. Hier wurde jedoch zum Zwecke einer überschaubaren<br />

Sprungsequenz darauf verzichtet.<br />

Abbildung 2.24 – Kanalnutzung, Histogramm<br />

53


Kapitel 3 - Koexistenz im ISM-Band<br />

3.1 Einleitung<br />

<strong>Bluetooth</strong> agiert bekanntermaßen im lizenzfreien ISM-Band. Somit wird es gestört und ist<br />

gleichzeitig auch ein Störer für andere Funktechnologien, welche die gleichen Frequenzen<br />

beanspruchen.<br />

Die Beeinflussung durch Interferenzen äußert sich grundsätzlich in mehr oder weniger starken<br />

Durchsatzeinbrüchen und höheren Latenzzeiten, respektive bei Audio-Übertragungen in der<br />

Tonqualität durch ein unangenehmes Knacken und Rauschen. Diese Auswirkungen werden in<br />

der <strong>Bluetooth</strong>-Technologie bis Version 1.1, im Falle schmalbandiger Störung, durch Fast<br />

Frequency Hopping weitest möglich minimiert. Dabei wird das komplette, zur Verfügung<br />

stehende Frequenzband nahezu gleichmäßig für die pseudo-zufällige Kanalsprungreihenfolge<br />

ausgenutzt.<br />

In diesem Kapitel sollen die Konsequenzen gegenseitiger Interferenzen für <strong>Bluetooth</strong> und<br />

anderen schmalbandigen ISM-Funk aufgezeigt werden. Vorrangig soll dabei der gleichzeitige<br />

Betrieb von WLAN (IEEE 802.11b) und <strong>Bluetooth</strong> als Beispiel betrachtet werden.<br />

Für die Visualisierung der gegenseitigen Einflüsse wurden zwei verschiedene Ansätze<br />

gewählt:<br />

1. Paketanalyse mittels „FTS for <strong>Bluetooth</strong>“<br />

2. Durchsatzmessungen unter Zuhilfenahme von iPerf<br />

3.2 FTS-Paketanalyse<br />

Aufgrund von Interferenzen mit anderem Funk kommt es zur Verfälschung oder gar zum<br />

Verlust der im empfangenen Signal enthaltenen Information. Dies hat das fehlerhafte Erfassen<br />

oder Nichterkennen von gesendeten Paketen am Empfänger zur Folge.<br />

Als Beispiel für diese Tatsache sei die nachstehende Darstellung paralleler <strong>Bluetooth</strong>- und<br />

WLAN-Kommunikation gezeigt.<br />

54


Quelle: „carmeq - Introduction to <strong>Bluetooth</strong>“ 12.06.2003<br />

Abbildung 3.1 – Beispiel: WLAN und BT v1.1 Interferenzen<br />

Während auf der Abszisse die laufende Nummer eines Pakets aufgetragen ist, zeigt die<br />

Ordinate den Frequenz-Kanal, auf dem das Paket gesendet wurde. Dabei stellen ein grünes<br />

Kreuz ein korrekt empfangenes und ein blauer Stern respektive ein rotes Dreieck ein defektes<br />

Paket dar. Es ist der Interferenz-Bereich der beiden konkurrierenden<br />

Funkübertragungstechnologien in diesem Mitschnitt auf der Ebene des Basisbandes sehr gut<br />

ersichtlich.<br />

Mittels des bereits vorgestellten Protokollanalysators FTS for <strong>Bluetooth</strong> wurde versucht, den<br />

oben dargestellten Zusammenhang in einem eigenen Versuch nachzustellen. Es wurde dafür<br />

eine durch WLAN, respektive eine Mikrowelle gestörte <strong>Bluetooth</strong>-Datenübertragung<br />

aufgezeichnet.<br />

Aufbauend auf umfangreiche Tests im Vorfeld sind folgende Anforderungen an<br />

Messanordnung und –umgebung ermittelt worden, um aussagekräftige Ergebnisse zu erzielen:<br />

- Positionierung der Geräte für einen gut sichtbaren Effekt der gewünschten Einflüsse<br />

- Sichtkontakt und Vermeidung von Reflektion zwischen Sendern und Empfängern<br />

- weitestgehend anderen Funk vermeiden<br />

- statischer Aufbau (keine Bewegung der Aktoren während Messung)<br />

Im Falle von Interferenzen besteht ein Problem, sobald ein Comprobe einen räumlichen<br />

Abstand zu einem überwachten Gerät hat, da er empfangene bzw. gesendete Pakete<br />

abweichend von diesem registriert. Um ein möglichst unverändertes Aufzeichnen der<br />

empfangen Pakete eines Gerätes zu gewährleisten, muss der Comprobe unmittelbar neben<br />

dem überwachten <strong>Bluetooth</strong>-Gerät positioniert werden. Doch umgekehrt vergrößert sich die<br />

Wahrscheinlichkeit der Abweichung zu den vom anderen Gerät des Kommunikationspaares<br />

empfangenen Paketen.<br />

55


Somit wurde im betrachteten Fall ein besonderer Messaufbau verwendet, welcher nur eine<br />

unidirektionale Überwachung der Master-Slave-Kommunikation zulässt. Durch die<br />

entsprechende Positionierung des Comprobe wurden für ihn die geforderten gleichen<br />

Empfangsvorrausetzungen wie für den Datei-Empfänger erzielt und es wurde nur die gestörte<br />

Empfangssituation für den Datei-Empfänger betrachtet.<br />

Die Daten über alle registrierten Pakete mussten dann exportiert und aufbereitet werden. Der<br />

Export wurde, ohne Umwege über weitere Dateien, mittels der Kopieren-in-die-<br />

Zwischenablage-Funktion von Microsoft Windows zu Microsoft Excel realisiert. Die<br />

Datensätze bestanden, auch auf Grund der Unterschiede zwischen deutscher und englischer<br />

Zahlennotation, zum größten Teil aus Text. Um die Information in Form von Zahlen zurück<br />

zu gewinnen, waren verschiedene Manipulationen und Umrechnungen, z.B. der Zeit von Hex-<br />

in dezimales Format, sowie die Korrektur der verwendeten Einheit zu Millisekunden,<br />

notwendig.<br />

Die gezeigten Darstellungen sind also keine direkten Extrakte von FTS, sondern bauen<br />

lediglich auf die mit dieser Software gesammelten Daten auf.<br />

In diesen Informationen von FTS ist auch, neben Paketindex und Zeitstempel, die Kanalzahl<br />

in Verbindung mit der resultierenden Frequenz enthalten. Es ist bei dieser Basisband-<br />

Überwachung wenig von Interesse welche Protokolle verwendet wurden. Um eine Aussage<br />

über den Zustand der Verbindung machen zu können, ist lediglich der so genannte Paketstatus<br />

– bei Empfang – auszuwerten. Die möglichen Angaben sind dabei OK, Payload Error und<br />

Length Error. Die beiden letztgenannten wurden zu „Status: error“ zusammengefasst. Nach<br />

diesen Merkmalen und der Senderichtung wurden die Datensätze sortiert und wie auch im<br />

folgenden Diagramm in Abhängigkeit von der betrachteten Übertragungsrichtung dargestellt.<br />

3.2.1. Störeinfluss von WLAN<br />

Diese Messung des Störeinflusses von WLAN auf eine <strong>Bluetooth</strong>-Verbindung wurde mit<br />

folgenden Geräten realisiert.<br />

Für <strong>Bluetooth</strong>-Kommunikation, Abstand 2m:<br />

- Acer BT500 (Class 2) USB an Toshiba Portegé3500<br />

- Acer BT500 (Class 2) USB an Fujitsu Siemens CELSIUS Mobile<br />

Für WLAN (IEEE802.11b)-Kommunikation, Abstand 5m:<br />

- 3com Airconnect PC-Card an HP OmniBook 4000series<br />

- Roamabout PC-Card an HP OmniBook 4000series<br />

FTS-Airsniff wurde auf dem Toshiba Portegé3500, an dem somit der Comprobe<br />

angeschlossen war, betrieben.<br />

56


Abbildung 3.2 – Messaufbau WLAN-Einfluss<br />

Zur Messung wurde auf beiden gekreuzten Kommunikationssystemen gezielt IP-Traffic<br />

erzeugt und die gerichtete <strong>Bluetooth</strong>-Übertragung, wie einleitend beschrieben, am Daten-<br />

Empfänger überwacht.<br />

In folgendem Diagramm ist ein Verbindungsausschnitt mit 7923 der registrierten Pakete und<br />

deren Empfangsstatus, in Abhängigkeit von Frequenz-Kanal und Zeit, aufgetragen.<br />

Abbildung 3.3 – zeitlicher Verlauf der WLAN-Störung<br />

Die Interferenzen im 20MHZ-Band des benutzten WLAN-Kanals sind sehr gut zu erkennen.<br />

In diesem Bereich ist ebenfalls das Herausbilden von Lücken, also weniger Pakete, sichtbar.<br />

57


Dies ist im Nichtregistrieren von gesendeten Paketen seitens der beiden Empfänger –<br />

überwachtes <strong>Bluetooth</strong>-Gerät und Comprobe – zu begründen. Zu diesem Paketverlust kommt<br />

es aufgrund nichtdetektierbarer verfälschter Signale oder Pakete, die vom Empfänger nicht als<br />

an ihn adressiert interpretiert werden.<br />

Das anschließende Histogramm soll die Mengen der korrekt oder fehlerhaft empfangenen und<br />

nicht registrierten Pakete näher verdeutlichen.<br />

Abbildung 3.4 – Histogramm der WLAN-Störung<br />

Im Interferenzbereich ist ein Verlust je Kanal bis zu 50 Prozent der zu erwartenden<br />

Paketmenge deutlich zu erkennen. Die restlichen, registrierten Pakete sind zudem größtenteils<br />

fehlerbehaftet. Die Fehler außerhalb des beschriebenen Bereichs sind auf Reflektionen im<br />

Raum zurückzuführen.<br />

3.2.2. Störeinfluss einer Mikrowelle<br />

Die Mikrowelle ist ein weiterer praktischer Störer, welcher eine <strong>Bluetooth</strong>-Verbindung<br />

beeinträchtigen könnte, da ihr Frequenz-Spektrum ebenfalls im ISM-Band angesiedelt ist.<br />

Der Grad der möglichen Beeinflussung soll hier untersucht werden.<br />

Umfangreiche Vorversuche haben gezeigt, dass aufgrund der geforderten hochgradigen<br />

Schirmung der Mikrowelle, nur in unmittelbarer Nähe messbare Einflüsse auf eine <strong>Bluetooth</strong>-<br />

Kommunikation nachzuweisen waren. Dementsprechend wurde folgender Messaufbau<br />

gewählt:<br />

Für <strong>Bluetooth</strong>-Kommunikation, Abstand 4m:<br />

- jeweils ein Acer BT500 (Class 2) USB an HP OmniBook 4000series<br />

Mikrowelle: Moulinex B85, 750 Watt, 2,450GHz<br />

58


FTS-Airsniff wurde weiterhin auf dem nun eigenständigen Toshiba Portegé3500<br />

durchgeführt.<br />

Abbildung 3.5 – Messaufbau Mikrowelle<br />

Die in einen Meter Abstand platzierte Mikrowelle wurde für die Dauer der OBEX-<br />

Übertragung einer 512kB großen Datei auf maximaler Leistungsstufe betrieben. Der<br />

Sichtkontakt der <strong>Bluetooth</strong>-Transceiver war jederzeit gewährleistet.<br />

Wie bereits aus dem WLAN-Versuch bekannt, ist der jeweilige Paketstatus in Abhängigkeit<br />

von Zeit respektive Häufigkeit auf dem zugehörigen Kanal dargestellt.<br />

Abbildung 3.6 – zeitlicher Verlauf Mikrowellenstörung<br />

59


Wiederum ist der beschriebene Paketverlust durch den Volllastbetrieb bis ca. 9.000ms gut<br />

sichtbar. Anschließend wurde die <strong>Bluetooth</strong>-Verbindung weniger behindert. Unerwarteter<br />

Weise ist die registrierte Störung verteilt und verschoben. Wie sehr gut im folgenden<br />

Histogramm ersichtlich, ist die maximale Paketauslöschung etwa bei Kanal 8 (2,410GHz), die<br />

größte Zahl fehlerhaft empfangener Pakete um Kanal 28 (2,430GHz) und ein geringeres<br />

lokales Extremum beim erwarteten Kanal 48 (2,450GHz) angesiedelt, welcher vom Hersteller<br />

der Mikrowelle als Arbeitsfrequenz angegeben wird.<br />

Abbildung 3.7 – Histogramm Mikrowellenstörung<br />

Die Verteilung der Störeinflüsse ist auf eine schlechte Frequenzfiltercharakteristik und die<br />

20MHz-Abstände der Störungsmaxima auf die Frequenzquelle der Mikrowelle<br />

zurückzuführen.<br />

3.2.3. Fazit<br />

Die Interferenz-Störeinflüsse wurden mittels Paketanalyse gut visualisiert, doch konnte durch<br />

die Anwendung der einzig verfügbaren Monitoring-Methode Airsniffing auftretenden<br />

Paketverluste kein eindeutiger Zusammenhang zwischen den Anzahlen der gesendeten und<br />

empfangenen Pakete dargestellt werden.<br />

Der einleitend beschriebene Weg der Datenaufbereitung kann durch Verwendung einer<br />

Scriptsprache, wie Perl, für große Datenmengen optimiert werden, da eine begrenzte<br />

Datensatzkapazität von 65536 je Mappe in Microsoft Excel besteht und gegebenenfalls<br />

umfangreiche Datenmanipulationen große Rechenzeiten verursachen können.<br />

3.3 Durchsatzmessungen<br />

60


3.3.1. Motivation<br />

Aufgrund von Störungen durch Interferenzen, wie im vorangegangenen Kapitel<br />

veranschaulicht, kommt es generell bei einer Funkübertragung zur Verringerung der effektiv<br />

nutzbaren Bandbreite, da Information in verfälschten oder verlorenen Paketen nicht verwertet<br />

werden kann. Somit ist der unter gegebenen Bedingungen erreichbare Durchsatz ein<br />

Nachweis und Maß des Störeinflusses. Die nähere Untersuchung dieses Zusammenhangs<br />

stellt einen wichtigen Teil dieser Arbeit dar.<br />

Als interferierende Funktechnologie zu <strong>Bluetooth</strong> wurde WLAN gewählt, da eine Zunahme<br />

der parallelen Verwendung beider Standards in der Praxis zu verzeichnen ist. Die Wahl<br />

dieses, mindestens ebenso weit verbreiteten, Vertreters begründet sich im praktischen Bezug<br />

dieser Ausarbeitung. Ein oft zu findendes Beispielszenario ist hierfür ein Laptop mit<br />

Internetzugang mittels WLAN und gleichzeitige Datensynchronisation mit einem Handheld<br />

oder Versenden eines Druckauftrages an den kabellosen Office-Drucker über <strong>Bluetooth</strong>.<br />

Es soll in diesem Kapitel der Grad der gegenseitigen Beeinflussung beider<br />

Übertragungsverfahren betrachtet werden.<br />

3.3.2. Wahl eines geeigneten Programms<br />

Für die Durchsatzmessung ist ein spezielles Programm nötig, welches folgenden Ansprüchen<br />

genügt:<br />

- Darstellung des aktuellen Datendurchsatzes<br />

- Unterstützung der Transportprotokolle TCP und UDP<br />

- Festlegung von Durchsatzraten bei Verkehrserzeugung<br />

- Unterstützung der verwendeten Betriebssysteme<br />

- effektive Bedienbarkeit<br />

Eine Recherche nach diesen genannten Kriterien lieferte drei Programme in der näheren<br />

Auswahl, wobei die Wahl auf das letztgenannte fiel:<br />

- Qcheck von IXIA, http://www.ixiacom.com<br />

- Shareware-Version, somit erheblich eingeschränkte Funktionen (einige Funktionen<br />

komplett gesperrt, zeitlich begrenzter Stream, wertbegrenzte Traffic-Erzeugung)<br />

- keine direkte Erzeugung von Logfiles<br />

- primitive Bedienung<br />

- IPTraffic von ZTI, http://www.zti-telecom.com<br />

- Shareware-Version, begrenzte, zu kurze Nutzungsdauer von 14 Tagen<br />

- umfangreiches Funktionsspektrum mit vielen Einstellmöglichkeiten<br />

- übersichtliche Bedienung<br />

- Grafische Auswertung möglich<br />

- iPerf von NLANR, http://dast.nlanr.net/Projects/Iperf<br />

- Freeware<br />

- MS-DOS-Anwendung<br />

- sehr umfangreiches Funktionsangebot<br />

- sehr gute Dokumentation<br />

- einfache und effektive Bedienung<br />

61


Die Entscheidung fiel, aufgrund der genannten Beschränkungen, gegen die beiden<br />

erstgenannten Programme. Neben dem Aspekt, dass iPerf ein Freeware-Tool ist, spricht die<br />

flexible Anwendung als Terminal-Programm sehr für diese Wahl. Zur Messung stand die<br />

Version 1.7.0 zur Verfügung.<br />

Die Funktionsweise ist erwartungsgemäß einfach. iPerf arbeitet nach dem bekannten Client-<br />

Server-Modell. Ein Client erzeugt Traffic in Richtung des Servers, welcher lediglich<br />

Empfangsinformationen zurücksendet. Zuvor muss iPerf auf dem Empfangs-Rechner als<br />

Serverdienst gestartet werden.<br />

Das gesamte Funktionsangebot wird über Kommandozeilen erreicht. Hierbei ist unter<br />

anderem die einfache Parametereinstellung, das mögliche Zusammenfassen in Batchdateien,<br />

freie Namensgebung für die Aufzeichnungsdateien und optionale direkte Überwachung im<br />

Terminalfenster von großem Vorteil. Die hauptsächlich benutzten Einstellungs-Parameter<br />

waren:<br />

- gewünschtes Transportprotokoll (TCP/UDP)<br />

- Zuweisung der Server-/Client-Rolle<br />

- Überwachungsintervall im Log (Bildschirm wie Datei)<br />

- Ziel- und bei Bedarf (mehrere Netz-Adapter) Quell-IP<br />

- Bandbreite und Dauer des erzeugten Verkehrs<br />

Abbildung 3.8 – Parameter des iPerf-Aufrufs<br />

3.3.3. Vorbereitung des Experiments<br />

62


Folgende Geräte standen unter Windows 2000/XP zur Verfügung:<br />

- ACER BT500 USB (Class 2), <strong>Bluetooth</strong> (v1.1) (2 Stück)<br />

- ComOne <strong>Bluetooth</strong> PC-Card (Class 1), <strong>Bluetooth</strong> (v1.1)<br />

- D-Link DBT120 USB (Class 3), <strong>Bluetooth</strong> (v1.1)<br />

- Toshiba BT-PC-Card PA3053 (Class 1), <strong>Bluetooth</strong> (v1.1) (2 Stück)<br />

- Toshiba Portegé3500 Laptop (Class 2), <strong>Bluetooth</strong> (v1.1)/WLAN (IEEE802.11b) integr.<br />

- 3com Airconnect WLAN PC-Card (IEEE802.11b)<br />

- HP OmniBook 4000series (2 Stück)<br />

<strong>Bluetooth</strong>-Anwender-Software:<br />

- Widcomm Vers 1.4.3.4 (weit verbreitet)<br />

- Toshiba Vers 3.00.12 (nur für Toshiba-Geräte)<br />

- ComOne Treiber und Zugangssoftware<br />

Ausgehend vom zitierten Beispiel zur parallelen Kommunikation von WLAN und <strong>Bluetooth</strong>,<br />

wurde der als praxisnah angestrebte Aufbau mit drei Laptops festgelegt. Dabei musste der<br />

leistungsstärkste (CPU- und Batteriekapazität) der drei zur Verfügung gestandenen Laptops,<br />

somit der Toshiba, beide Übertragungen über WLAN und <strong>Bluetooth</strong> durchführen.<br />

Dementsprechend war die Rollenverteilung der Laptops festgelegt, wobei der interne WLAN-<br />

Adapter des Toshiba-Laptops problemlos zur Kommunikation mit der 3com-PC-Card<br />

eingesetzt werden konnte. Aus den verbliebenen <strong>Bluetooth</strong>-Geräten mussten die<br />

verlässlichsten ausgewählt werden. Von der weiteren Verwendung der Adapter von ComOne<br />

und D-Link wurde aufgrund von Kompatibilitätsproblemen und, bereits durch FTS-Messung<br />

festgestellten, hohen Fehlerraten, auch bei ungestörter Umgebung, abgesehen. Des Weiteren<br />

wurden die <strong>Bluetooth</strong>-Adapter-Sets aufgrund der durch den selbigen Hersteller und die<br />

gleiche Treiberversionen garantierten Interoperabilität favorisiert. Aufbauend auf<br />

vorangegangene Tests war die schlechte Performance, hinsichtlich Reichweite und Durchsatz,<br />

der ACER BT500 USB bereits bekannt. Somit wurde das Toshiba PA3053 PC-Card-Set für<br />

den Versuch verwendet.<br />

Nachdem die Festlegung der Aktoren erfolgt war, mussten Überlegungen zu einer<br />

aussagekräftigen Konstellation gemacht werden. Für einen praxisnahen Anwendungsfall<br />

sollte der Abstand der <strong>Bluetooth</strong>-Geräte vorwiegend geringer als der der WLAN-Geräte sein.<br />

Da hier aber <strong>Bluetooth</strong>-Class-1-Geräte verwendet wurden, sollte auch die Kommunikation<br />

über eine größere Distanz gewählt werden, um überhaupt eine gewisse Signalabschwächung<br />

zu erreichen. Es müssen die Senderichtungen in Bezug auf die sich störenden Verbindungen<br />

betrachtet werden, da beispielsweise ein sendendes Gerät den gleichzeitigen Empfang mittels<br />

der anderen interferierenden Übertragungstechnik stören kann. Demzufolge mussten<br />

signifikante Positionen der Geräte für den Freifeldversuch gefunden werden.<br />

Die Wahl des Übertragungsprotokolls fiel mit Blick auf den Praxisbezug, entgegen der<br />

üblichen Verwendung von UDP in Netzwerkdurchsatzmessungen, schnell auf TCP. Die<br />

Messdauer sollte für eine gute Messwertmittlung entsprechend lang sein, da verschieden<br />

starke Schwankungen in den umfangreichen Testmessungen zu registrieren waren.<br />

3.3.4. Messaufbau<br />

Die aufgeführten Vorüberlegungen bestimmten die folgenden, für das Experiment unter<br />

Windows 2000/XP verwendeten Geräte.<br />

Für die <strong>Bluetooth</strong>-Kommunikation:<br />

- HP OmniBook 4000series mit Toshiba PA3053 PC-Card (<strong>Bluetooth</strong> v1.1, Class 1)<br />

63


- Toshiba Portegé3500 mit Toshiba PA3053 PC-Card (<strong>Bluetooth</strong> v1.1, Class 1)<br />

- Toshiba <strong>Bluetooth</strong>-Software Vers 3.00.12<br />

Für die WLAN-Kommunikation:<br />

- Toshiba Portegé3500 mit integriertem WLAN-Adapter (IEEE 802.11b)<br />

- HP OmniBook 4000series mit 3com AirConnect PC-Card WLAN (IEEE 802.11b)<br />

Abbildung 3.9 – Anordnung (Schema)<br />

Repräsentative Distanzen, welche von den beiden Tranceivern der jeweiligen<br />

Übertragungstechnologie im gestörten Fall überbrückt werden müssen, wurden in den<br />

Vorraustests ermittelt. Bei WLAN handelt es sich um die beiden Entfernungsstufen 20 und 40<br />

Meter, welche in den vorbereitenden Tests zu den Störeinflüssen kaum überschritten wurden.<br />

Für <strong>Bluetooth</strong> sind drei praxisnahe Stufen mit 1, 20 und 40 Meter festgelegt worden. Da es<br />

sich beim <strong>Bluetooth</strong>-Kommunikationspaar um die sendeleistungsstärkste Geräteklasse<br />

handelt, stellt dies die ungünstigste Störung von WLAN dar.<br />

Die beiden Übertragungstechniken sind richtungsabhängig zu betrachten und somit ergeben<br />

sich mit je zwei Richtungen vier Kombinationen.<br />

Der Richtungssinn des erzeugten Datenverkehrs wurde dabei auf den Toshiba-Laptop,<br />

welcher beide Technologien nutzt, bezogen. Somit stellt dieser für alle weiteren<br />

Betrachtungen den einzigen Bezugspunkt dar, woraus folgendes Bezeichnungsformat<br />

resultiert:<br />

- <strong>Bluetooth</strong> in – <strong>Bluetooth</strong>-Verkehr zum Toshiba-Laptop hin, kurz: Bi<br />

- <strong>Bluetooth</strong> out – <strong>Bluetooth</strong>-Verkehr vom Toshiba-Laptop weg, kurz: Bo<br />

- WLAN in – WLAN-Verkehr zum Toshiba-Laptop hin, kurz: Wi<br />

- WLAN out – WLAN-Verkehr vom Toshiba-Laptop weg, kurz: Wo<br />

Abbildung 3.10 – Konstellationen bei Durchsatzmessung<br />

Zusammengefasst ergaben sich aus daraus folgende Bezeichnungen der vier Kombinationen<br />

gleichzeitiger Kommunikation:<br />

- Bi/Wi<br />

- Bi/Wo<br />

- Bo/Wi (Toshiba-Laptop sendet über <strong>Bluetooth</strong> und empfängt mittels WLAN)<br />

- Bo/Wo<br />

64


In jeder dieser Senderichtungskombinationen müssen jeweils die 6 möglichen Distanz-<br />

Kombinationen realisiert werden. Zusätzlich wurde der Messaufbau in der Positionierung der<br />

beiden HP-Laptops zueinander verändert. Befanden sich diese beiden Laptops aus Sicht des<br />

Toshiba-Laptops in der gleichen Himmelsrichtung, entsprach dies dem eingeführten Winkel<br />

α=0 Grad zwischen ihnen. Der umgekehrte Fall mit α=180 Grad entsprach der Anordnung in<br />

entgegen gesetzten Himmelsrichtungen. Bei α=0 Grad waren die größten und entsprechend<br />

bei α=180 Grad die geringsten Interferenzen zu erwarten.<br />

Die aus diesen Vereinbarungen resultierenden Einzelmessungen charakterisieren sich also<br />

durch:<br />

- die jeweilige Entfernungsstufe der beiden Übertragungstechnologien,<br />

- die Kombination der Senderichtungen und<br />

- die Ausrichtung der beiden HP-Laptops zueinander (Winkel α).<br />

Dies entspricht einer Summe von 48 Einzelmessungen. Da weiterhin zum Vergleich jeweils<br />

die ungestörten, maximal erreichbaren Durchsatzraten in den 5 jeweiligen Stufen der<br />

Reichweiten ermittelt werden müssen, erhöht sich die Gesamtzahl der verschiedenen<br />

Einzelmessergebnisse auf 53, die mindestens durchgeführt werden müssen.<br />

Entsprechend der vorausgegangenen Tests, fielen die Erwartungen an die erreichbaren<br />

Durchsätze unterschiedlich aus. Es hatte sich hierbei schon gezeigt, dass <strong>Bluetooth</strong> weniger<br />

stark von einer parallelen WLAN-Verbindung beeindruckt wird.<br />

3.3.5. Durchführung<br />

Zum eigentlichen Experiment wurde sich, entsprechend der o. g. Charakterisierung, auf eine<br />

tabellarische Übersicht der Einzelmessungen geeinigt. Diese war ebenfalls Grundlage für eine<br />

einheitliche Namensgebung für die Aufzeichnungsdateien.<br />

Für die Durchsatzmessung sollte IP-Traffic generiert werden, welcher in Falle von <strong>Bluetooth</strong><br />

über eine Netzwerkverbindung des Kommunikationspaares (Dienst: Netzwerkzugang)<br />

verwirklicht wurde.<br />

Dementsprechend lag die weitere Vorbereitung in der Erstellung von Batchdateien. Diese<br />

wurden für jedes einzelne Messszenario und jeden der drei Laptops spezifisch vorgefertigt,<br />

um am Messort effektiv und mit weniger Fehlerquellen arbeiten zu können. Sie enthielten die<br />

iPerf-Kommandozeile mit den charakteristischen Parametern wie Rollenzuweisung<br />

(Client/Server), Ziel- sowie bei Bedarf Quelladresse, Transportprotokoll, Wert zu erzeugender<br />

Bandbreite, Messintervall von 0,5 Sekunden, den Namen der Log-Datei und Dauer der<br />

Messung. Letztere wurde auf 60 Sekunden festgelegt, da dies der Forderung nach<br />

repräsentativen Mittelwerten genügt.<br />

Beispiel-Kommandozeile <strong>Bluetooth</strong>-Client:<br />

iperf -c 192.168.81.2 -B 192.168.81.1 -i 0.5 -t 60 > TCP_Bi1_Wi20_bt.txt<br />

Im oben abgebildeten Beispiel ist der iPerf-Aufruf mit der Client-Option und dazugehöriger<br />

Zieladresse des Servers (-c 192.168.81.2), Bindung auf einen Ausgangs-Netzwerkadapter (-B<br />

192.168.81.1), Intervall der Darstellung der Messwerte (-i 0.5), Dauer der Verkehrserzeugung<br />

und –messung (-t 60) und der Export in eine benannte Aufzeichnungsdatei<br />

(>TCP_Bi1_Wi20_bt.txt) zu sehen.<br />

65


Beispiel-Kommandozeile <strong>Bluetooth</strong>-Server:<br />

iperf -s -B 192.168.81.2<br />

Auf der Gegenseite wird der entsprechende Server, wie gezeigt, durch die Server-Option (-s)<br />

und der Bindung an den überwachten Ausgangs-Netzwerkadapter (-B 192.168.81.2) initiiert.<br />

Die möglichen Störeinflüsse der Umgebung, wie z.B. anderer ISM-Funk, wurden bei der<br />

Ortswahl für die Freifeldmessung weitestgehend minimiert. Um die Affinität der Ergebnisse<br />

zu gewährleisten wurden die Messbedingungen so weit durchführbar konstant gehalten. So<br />

blieb z.B. der Bodenabstand der kommunizierenden Komponenten bei einem Meter und die<br />

Aufstellung der Geräte wurde jeweils auf den, immer an selbiger Position aufgestellten,<br />

Bezugslaptop ausgerichtet.<br />

Jede, etwa 2 Minuten durch Umpositionierung und Messzeit in Anspruch nehmende,<br />

Einzelmessung wurde mindestens dreimal, aber auch bis zu zehnmal durchgeführt, was die<br />

Anzahl der gesamt durchgeführten einzelnen Messungen auf wenigstens 159 brachte, damit<br />

immer mehrfach bestätigte Ergebnisse verwendet werden konnten. Durch den<br />

ausschließlichen Batterie-Betrieb der Laptops im Freifeld war ein Messzyklus auf etwa 2<br />

Stunden beschränkt. Hierdurch erklärt sich die Verteilung auf mehrere Messtage. Somit<br />

mussten die Tageszeit und Wetterbedingungen zum Messzeitpunkt für alle einzelnen<br />

Messungen ähnlich realisiert werden.<br />

3.3.6. Auswertung<br />

Nachdem alle Messungen abgeschlossen waren, wurde mit der Auswertung der Ergebnisse<br />

begonnen. Aus den entsprechenden Log-Dateien wurden, mit jeweils 5 Sekunden Toleranz an<br />

Anfang und Ende, nur 50 Sekunden der Aufzeichnung aufbereitet, um den nicht immer<br />

gleichzeitigen Start der parallelen Kommunikationen zu berücksichtigen. Die von der<br />

jeweiligen Übertragungstechnik erreichten Durchsätze sind anteilmäßig an der ungestörten<br />

Verbindung aufgetragen worden. Diese Darstellung wurde zweckmäßig für eine<br />

übersichtliche und prägnante Präsentation der Ergebnisse bestimmt.<br />

Es gab zur Darstellung der Resultate natürlich alternative Wege, welche allerdings unter<br />

anderem aufgrund von eingeschränkten Vergleichsmöglichkeiten einzelner Zusammenhänge<br />

und zu aufwendigem Gesamtvolumen nicht zur Anwendung kamen.<br />

66


Abbildung 3.11 – Auswertungstabelle zu α = 180°<br />

Abbildung 3.12 – Auswertungstabelle zu α = 0°<br />

Hier dargestellt ist der relative Durchsatz beider Übertragungstechniken in Bezug auf die<br />

distanzabhängig jeweils ermittelte maximal erreichbare ungestörte Datenrate in kbit/s. Die<br />

Messergebnisse sind aufgrund des verwendeten Überwachungstools iPerf in gewisser Weise<br />

quantisiert und wurden bei Werten größer als 1000kbit/s in Mbit/s ausgegeben und<br />

entsprechend gerundet. Eine erzwungene Ausgabe in kbit/s hätte keine größere Genauigkeit<br />

erzielt, da im Programm nur nachträglich in die entsprechende Einheit umgewandelt worden<br />

wäre. Eine ausreichende Messgenauigkeit für die Darstellung der gefundenen<br />

Zusammenhänge ist durch diesen Fakt nicht gefährdet.<br />

67


Zur besseren Veranschaulichung der einzelnen Spalten der tabellarischen Darstellung der<br />

Messergebnisse in Abhängigkeit der beiden Ausrichtungen der äußeren Laptops seien hier<br />

noch einmal die vier Senderichtungskonstellationen mit den jeweils eingenommenen<br />

Entfernungsstufen und Ausrichtungswinkeln schematisch illustriert.<br />

Bo/Wi:<br />

oder<br />

Abbildung 3.14 – Messwerte in Bo/Wi<br />

68<br />

Abbildung 3.13 – Konstellation Bo/Wi<br />

Wie den obigen Tabellen zu entnehmen, ist in dieser Konstellation der Senderichtungen der<br />

ungünstigste Fall für die WLAN-Kommunikation eingetreten, da der Bezugs-Laptop WLAN<br />

empfängt und gleichzeitig <strong>Bluetooth</strong> sendet. Sobald WLAN zusammenbrach, konnte<br />

<strong>Bluetooth</strong> nahezu ungestört senden. Gerade in der gleichrichtigen Anordnung der äußeren<br />

Laptops ist die Unterdrückung durch das robuste Bluetoth-Sprungverfahren sehr gut zu<br />

erkennen. Die <strong>Bluetooth</strong>-Durchsatzeinbrüche bei geringerer oder gleicher Weite mit WLAN<br />

sind einerseits durch größere Störanfälligkeit bei größerer Weite und andererseits bei α = 180<br />

Grad mit dem weiteren Abstand zum sonst stärker unterdrückten WLAN zu erklären.<br />

Bi/Wi:<br />

oder<br />

Abbildung 3.16 – Messwerte Bi/Wi<br />

Abbildung 3.15 – Konstellation Bi/Wi


Der WLAN-Verkehr hat bei dieser direkten Konkurrenz der Signale kaum eine Chance zu<br />

bestehen. Im Falle ankommenden Funks beider Standards sind die direkte Abschwächung bei<br />

größeren Entfernungen und der geringere Einfluss der Winkelausrichtung klar ersichtlich. Die<br />

dennoch besseren <strong>Bluetooth</strong>-Ergebnisse für α = 0 Grad sind mit öfter aussetzenden WLAN-<br />

Funk zu begründen.<br />

Bo/Wo:<br />

oder<br />

Abbildung 3.18 – Messwerte Bo/Wo<br />

69<br />

Abbildung 3.17 – Konstellation Bo/Wo<br />

In dieser Konstellation ebenfalls übereinstimmender Senderichtungen ist die, gegenüber den<br />

beiden anderen genannten stärkere Schwächung von <strong>Bluetooth</strong> sichtbar. Dies ist darin<br />

begründet, dass beide <strong>Bluetooth</strong>-Transceiver vor dem Beginn der Taffic-Generierung und -<br />

Messung die bei geringem Abstand minimal mögliche Sendeleistung, zum Zwecke der<br />

Stromverbrauchsoptimierung, ausgehandelt haben, da weit weniger störender WLAN-Einfluss<br />

bestand. Nichtsdestoweniger war der Anteil an den möglichen Durchsätzen bei <strong>Bluetooth</strong> in<br />

allen entsprechenden Einzelmessungen (teilweise noch erheblich) größer als beim<br />

konkurrierenden WLAN.<br />

Bi/Wo:<br />

oder<br />

Abbildung 3.20 – Messwerte Bi/Wo<br />

Abbildung 3.19 – Konstellation Bi/Wo


Diese vierte und letzte betrachtete Konstellation stellt, wie schon in den<br />

Gesamtergebnistabellen zu erkennen, den ungünstigsten Fall für die <strong>Bluetooth</strong>-Übertragung<br />

dar. Hier wirkt sich ebenfalls die vor dem jeweiligen Test verringerte <strong>Bluetooth</strong>-<br />

Sendeleistung negativ aus. Das vom gleichzeitigen <strong>Bluetooth</strong>-Empfänger gesendete WLAN-<br />

Signal kann daher bei geringen Abständen der <strong>Bluetooth</strong>- und WLAN-Geräte das<br />

ankommende Signal des <strong>Bluetooth</strong>-Senders erheblich mehr stören. Hierfür wirkt sich die<br />

gleichrichtige Aufstellung der äußeren Laptops in allen Entfernungskombinationen ebenfalls<br />

WLAN-günstig aus.<br />

3.3.7. Fazit<br />

In erster Linie ist zusammenfassend die erschreckend starke Durchsatzeinbuße von WLAN in<br />

allen Tests zu erkennen. Gerade in den Fällen ankommenden WLAN-Verkehrs (Wi) am<br />

Bezugs-Laptop ist mit dem nahezu totalen Verlust der hierüber gesendeten Daten zu rechnen.<br />

Ebenso leicht ist die erwartungsgemäße Abhängigkeit der Störanfälligkeit der WLAN-<br />

Transceiver von ihrer Entfernung zueinander in allen Senderichtungs-Konstellationen<br />

ersichtlich. Auch die verwendeten Winkelanordnungen erfüllten mit den erreichten Werten<br />

die gesetzten Erwartungen, dass gleiche Ausrichtung zum gemeinsamen<br />

Kommunikationspartner, also schlimmste gegenseitige Störung, die „Überlegenheit“ der<br />

<strong>Bluetooth</strong>-Übertragung hervorhebt. Die geringeren <strong>Bluetooth</strong>-Durchsatzraten bei gleichen<br />

Konstellationen und entgegen gesetzter Ausrichtung sind daher durch geringer gestörten<br />

WLAN-Verkehr zu begründen. Die Dominanz von <strong>Bluetooth</strong> verdeutlicht sich auch in dem<br />

Aspekt, dass diese Technologie, entgegen WLAN, in nahezu allen Einzelmessungen<br />

mindestens halben und sogar in mehr als der Hälfte aller Tests wenigstens drei viertel des<br />

möglichen Durchsatzes erreicht hat.<br />

Dieses teilweise überraschend extreme Ergebnis unterstreicht die Forderung nach einer für<br />

anderen ISM-Funk verträglicheren <strong>Bluetooth</strong>-Funktechnologie. Folgend soll dieser<br />

Zusammenhang noch einmal kurz in einer Gegenüberstellung von Parallelbetrieb gestörtem<br />

und ungestörtem Datenverkehr zusammengefasst werden.<br />

3.4 Cross Measurements<br />

3.4.1. Einführung<br />

Als kleine eigenständige Verdeutlichung des im obigen, sehr komplexen Versuch<br />

dargestellten Zusammenhangs von Durchsatz der beiden ISM-Übertragungstechniken<br />

<strong>Bluetooth</strong> und WLAN und ihrer gegenseitigen Beeinflussung soll in diesem Abschnitt der<br />

direkte Vergleich von ungestörtem und parallelen Betrieb dieser kurz gezeigt werden.<br />

Es wurden die Konsequenzen für den aktuellen Durchsatz beider Technologien in zwei aus<br />

dem Ergebnis des Hauptexperiments ausgewählten Konstellationen untersucht. Hierfür<br />

wurden die verwendete Hardware und die weiteren Messparameter beibehalten.<br />

Die Entfernungsstufen 1 Meter für <strong>Bluetooth</strong> und 20 Meter für WLAN, sowie TCP als<br />

Transportprotokoll wurden aufgrund des schon erwähnten geforderten Praxisbezugs<br />

festgelegt. Es fand die Analyse in zwei unterschiedlichen Senderichtungskonstellationen,<br />

wobei je eine die ungünstigste für einen der beiden Funktechnologien darstellt.<br />

70


1. Fall - ungünstigste Senderichtungskonstellation für <strong>Bluetooth</strong>:<br />

Über <strong>Bluetooth</strong> wird vom Bezugs-Laptop empfangen und über WLAN gesendet.<br />

Abbildung 3.21 – Anordnung Cross Measurement 1<br />

2. Fall - ungünstigste Senderichtungskonstellation für WLAN:<br />

Der Bezug-Laptop sendet <strong>Bluetooth</strong> und empfängt WLAN.<br />

3.4.2. Visualisierung<br />

Abbildung 3.22 – Anordnung Cross Measurement 2<br />

Über eine Gesamtmesszeit von 90 Sekunden wurde in beiden Messungen erneut über beide<br />

Verbindungen 60 Sekunden lang Datenverkehr erzeugt und der Durchsatz in 0,5-Sekunden-<br />

Intervallen überwacht. Hierbei wurde jeweils die am meisten durch eine Parallelübertragung<br />

gehinderte Funktechnologie 30 Sekunden vor der anderen, als begünstigt erwarteten, gestartet.<br />

Wie in den folgenden Darstellungen gut zu erkennen ist, erfüllte sich hierbei ebenfalls die<br />

Aussicht auf den mit <strong>Bluetooth</strong> verglichen stärkeren Zusammenbruch des WLAN-<br />

Durchsatzes.<br />

Abbildung 3.23 – Darstellung Fall 1<br />

71


3.4.3. Fazit<br />

Abbildung 3.24 – Darstellung Fall 2<br />

<strong>Bluetooth</strong> hatte erwartungsgemäß erheblich geringeren Einbruch der Datenrate aufgrund<br />

seines robusten Übertragungsverfahrens zu verzeichnen. Dagegen ist der WLAN-Durchsatz<br />

überraschend deutlicherer als erwartet eingebrochen, sowie ein Verbindungsverlust auch in<br />

der für <strong>Bluetooth</strong> ungünstigeren Anordnung eingetreten. Dies bestätigt die Aussage zum<br />

generellen Problem der Koexistenz von BT mit anderen ISM-Funkstandards, welche kein<br />

ähnliches Frequenzsprungverfahren anwenden.<br />

Eine Lösung bietet das AFH (Adaptive Frequency Hopping). Hierbei erkennen die <strong>Bluetooth</strong>-<br />

Transceiver gestörte/belegte Frequenzen. Dies geschieht mittels der Einführung einer Pico-<br />

Netz-spezifischen Kanalliste, welche vom Master verwaltet wird und gegebenenfalls durch<br />

Anfordung lokaler Statusreporte aller AFH-fähigen aktiven Slaves die von der Sprungsequenz<br />

auszuschließenden sowie alle als ungestört erkannten Kanäle mit der entsprechenden<br />

Kennzeichnung speichert.<br />

Die Konsequenz der Anwendung dieser Kanalliste ist das Ausweichen auf die offensichtlich<br />

ungestörten Frequenzen und die Meidung dieser für die Sprungsequenz, welche in Form von<br />

gleichem Kanal für Hin- und Rückslot eines Master-Slave-Master-Paketaustauschs – Same-<br />

Channel-Method – abgeändert wird.<br />

Dieses erweiterte Sprungverfahren ist in der im November 2003 von der <strong>Bluetooth</strong>-SIG<br />

verabschiedeten Version 1.2 enthalten. Zum Zeitpunkt dieser Arbeit waren erstaunlicherweise<br />

noch keine entsprechenden Geräte oder Firmwareupdates für weitere Tests verfügbar.<br />

Im folgenden, letzten Kapitel wird detailliert auf die Funktionsweise dieses<br />

interferenzvermeidenden Verfahrens eingegangen.<br />

72


Kapitel 4 - Die Funktionsweise von AFH<br />

4.1 Einleitung<br />

In diesem Kapitel soll die allgemeine Funktionsweise dieses neuen, adaptiven<br />

Frequenzsprung-Verfahrens erläutert und am Beispiel der verbesserten Koexistenz von<br />

<strong>Bluetooth</strong> und WLAN verdeutlicht werden.<br />

4.2 Motivation<br />

<strong>Bluetooth</strong>-Geräte der Vorgängerversionen, welche das konventionelle Frequenzsprung-<br />

Verfahren (FFH) anwenden, nutzen immer alle 79 festgelegten Kanäle des 2,4GHz-ISM-<br />

Bandes (Ausnahme Frankreich, Japan usw.). Dabei wird der Kanal 1600 Mal pro Sekunde in<br />

einer zufälligen Sprung-Reihenfolge gewechselt.<br />

Sobald ein anderer Funkverkehr, wie WLAN, in der Umgebung vorhanden ist, führt diese Art<br />

des Frequenzsprunges unweigerlich zu unregelmäßigen Kollisionen. Ohne AFH war bisher<br />

keine Möglichkeit gegeben, sich der Umgebung anzupassen und somit diese Konflikte zu<br />

verhindern. Die folgende Illustration offenbart die resultierenden Interferenzen. Hierbei sei<br />

kurz angemerkt, dass WLAN (IEEE 802.11b) eine Bandbreite von 20MHz vereinnahmt und<br />

kein Frequenzsprung-Verfahren anwendet.<br />

Abbildung 4.1 – Überlagerung BT und WLAN<br />

73


Im Gegensatz zur obigen, findet in der folgenden Illustration eine <strong>Bluetooth</strong>-Kommunikation<br />

der neuen Generation statt. Das in <strong>Bluetooth</strong> v1.2 verwendete Adaptive Frequency Hopping<br />

ermöglicht nun eine Anpassung an die Umgebung. Hierbei werden die Kanäle, welche durch<br />

andere Interferenz-Quellen belegt sind, im Frequenzsprung-Verfahren ausgeschlossen. Dieser<br />

Prozess des „Re-Mappings“ beinhaltet somit auch eine Reduzierung der Anzahl der vom<br />

Kabelkiller nutzbaren Kanäle. Dabei ist die Mindestzahl dieser Kanäle durch die<br />

Spezifikation auf 20 beschränkt. Während der Verwendung von AFH ist die Same-Channel-<br />

Method, worin ein Slave-to-Master-Slot im selben Frequenzkanal wie der vorangegangene<br />

Master-to-Slave-Slot liegt, vorgeschrieben. Es wird am Ende dieses Kapitels näher darauf<br />

eingegangen.<br />

Abbildung 4.2 – Ausweichen vor WLAN durch AFH<br />

4.3 Klassifikation der Frequenzkanäle<br />

4.3.1. Channel-Classification<br />

Jedes AFH-fähige <strong>Bluetooth</strong>-Gerät kann individuell eine so genannte Channel-Classification<br />

durchführen. Es findet hierbei eine Klassifikation statt, welche jeden einzelnen Kanal als<br />

„unknown“, „good“ oder als „bad“ einstuft. Diese Entscheidung wird anhand der lokalen<br />

Information möglicher Interferenzen getroffen, welche auf folgende Weise erworben werden<br />

kann:<br />

Kanal-Einschätzung (Channel-Assessment):<br />

Alle 79 spezifizierten Kanäle (Kanal = 1MHz) werden auf mögliche Interferenz-Quellen<br />

abgesucht. Zwei häufig genutzte Detektionsmethoden sind:<br />

- RSSI (Received Signal Strength Indication), aktiv<br />

74


- PER (Packet Error rate), passiv<br />

Ausschluss belegter Kanäle durch Host-Controller:<br />

Beispielsweise bei einem Laptop mit WLAN und <strong>Bluetooth</strong> parallel in Betrieb, kann der Host-<br />

Controller dieses Gerätes via HCI-Befehl das Auslassen der von WLAN belegten Frequenzen<br />

anordnen. (Host-Controller weiß, ob WLAN in Nutzung ist und welche Frequenzen es belegt)<br />

� AFH-Host-Channel-Classification<br />

Die bereits erwähnte Klassifikation jedes einzelnen Kanals erfolgt nach bestimmten Kriterien:<br />

Unknown: Die Messungen der Kanal-Einschätzung (Channel-Assessment) sind nicht<br />

ausreichend, um eine verlässliche Einstufung des Kanals zu gewährleisten.<br />

Bad: Das Channel-Assessment detektiert Interferenzquellen oder es erfolgte ein<br />

Ausschluss des Kanals durch Host-Controller des Geräts.<br />

Good: Der Kanal ist weder als „unknown“ noch als „bad“ eingestuft.<br />

4.3.2. Channel-Map<br />

Der Master eines Piko-Netzes, in dem das adaptive Frequenzsprung-Verfahren eingesetzt<br />

wird, muss eine AFH-Channel-Map erstellen, welche eine Aufstellung von Kanälen enthält,<br />

die bei der adaptierten Sprungsequenz genutzt werden dürfen oder ausgelassen werden<br />

müssen. Diese Liste kann er anhand der Kombination folgender Informationsquellen erstellen:<br />

• Lokal, mittels seiner eigenen Channel Classification (Channel-Assessment oder HC)<br />

• Von ausgewählten aktiven Slaves, die im verwalteten Netz AFH nutzen, via LMP-<br />

Kommandos angeforderter Channel-Classification-Reports (CCR)<br />

Die Anforderung der CCR eines bestimmten AFH-Slaves erfolgt durch die vom Master<br />

gesendete LMP_channel_classification_req-PDU, welche folgende drei Parameter beinhaltet:<br />

• AFH_Reporting_Mode Aktivierung fortlaufender CCR oder Deaktivierung CCR<br />

• AFH_Min_Interval Wert für die Mindestzeit zwischen zwei CCR<br />

• AFH_Max_Interval Wert für die Maximalzeit zwischen zwei CCR<br />

4.3.2.1. Channel-Classification-Report<br />

Ein Channel-Classification-Report des Slaves erfolgt in einer LMP_channel_classification-<br />

PDU, in der die erworbene Information in folgender Weise dem Master übermittelt wird.<br />

Die 79 spezifizierten Frequenzkanäle sind von 0 bis 78 durchnummeriert. Im Rahmen der<br />

Channel-Classification wird jedem Kanal n ein binärer Wert zugeordnet, welcher die<br />

Kanaleinstufung definiert:<br />

„unknown“ � 00 „bad“ � 11<br />

„good“ � 01 (10 ist reserviert)<br />

Die besagte PDU verfügt nur über 40 2-Bit-Felder, welche mit 0 bis 39 indexiert sind. Ein<br />

Feld mit dem Index n definiert die Klassifikation der Kanäle 2n und 2n+1. Eine Ausnahme<br />

75


ildet das Feld 39, welches nur die Einstufung des Kanals Nr.78 beinhaltet. Dies bedeutet (mit<br />

Ausnahme Feld 39) eine Kombinierung der Kanaleinstufungen eines „geraden“ und dem<br />

unmittelbar folgenden „ungeraden“ Kanals. Dabei sind folgende Festlegungen getroffen:<br />

„good“ (01) und „good“ (01) � „good“ (01)<br />

„good“ (01) und „unknown“ (00) � „good“ (01)<br />

„bad“ (11) und „bad“ (11) � „bad“ (11)<br />

„bad“ (11) und „unknown“ (00) � „bad“ (11)<br />

„unknown“ (00) und „unknown“ (00) � „unknown“ (00)<br />

„good“ (01) und „bad“ (11) � Implementierungsache<br />

Ein Slave, welcher sich in einem aktivierten AFH-Reporting-Mode befindet, übermittelt<br />

fortlaufend dem Master, in seinem vorgegebenen Zeitintervall, seine Channel-Classification<br />

(PDU). Dies tut er solange, bis der Master das CC-Reporting deaktiviert.<br />

Abbildung 4.3 – LMP Channel Classification Befehle<br />

Wann und ob ein Master überhaupt die regionalen Kanaleinstufungen von Slaves, bei seiner<br />

Erstellung der AFH-Channel-Map, in Anspruch nimmt, ist von der Spezifikation nicht<br />

vorgeschrieben und somit ist die Implementierung dem Hersteller überlassen. Darüber hinaus<br />

sind auch keine Festlegungen für den Algorithmus der AFH-Channel-Map-Generierung<br />

getroffen, doch darf die Mindestzahl von 20 erlaubten Kanälen nicht unterschritten werden.<br />

4.4 Channel-Map-Übermittlung und Aktivierung von AFH<br />

Die fertig generierte AFH-Channel-Map (ChM) besteht aus 79 1-Bit-Feldern wobei jedes Feld<br />

den Wert „0“ für entsprechender Kanal ist erlaubt (used) oder „1“ für verboten (unused)<br />

enthält. Diese wird anschließend vom Master über den LMP-Befehl „LMP_set_AFH“-PDU<br />

einzeln an alle AFH-tauglichen Slaves seines Piko-Netzes gesendet. Diese Slave-spezifische<br />

PDU enthält folgende Kommandos:<br />

• AFH_Instant: Wert für den Zeitpunkt der Übernahme der neuen ChM<br />

(welche zeitgleich im gesamten Piko-Netz erfolgen muss)<br />

76


• AFH_Mode: AFH-Aktivierung oder -Deaktivierung für diesen Slave<br />

(Verbindungsaufbau mit v1.1-Frequnzauswahl und<br />

anschließende Aktivierung von AFH möglich);<br />

• AFH_Channel_Map: enthält aktuelle ChM;<br />

Nachdem alle AFH-aktivierten Transceiver nun über die aktualisierte Kanalliste verfügen,<br />

muss jeder einzelne seine Sprungreihenfolge zum vorgegebenen Zeitpunkt so abändern, dass<br />

die verbotenen Kanäle ausgelassen werden (Hop Sequence Modification).<br />

Diese Modifikation erfolgt nach einem bestimmten Algorithmus, wodurch sichergestellt wird,<br />

dass alle Teilnehmer in Zeit und Frequenz synchronisiert bleiben.<br />

4.4.1. Frequenzauswahl<br />

Der so genannte Adapted-Hop-Selection-Kernel, welcher die Frequenz (Kanal) für den<br />

nächsten Zeitschlitz bestimmt, basiert auf dem bewährten Kernel von <strong>Bluetooth</strong> 1.1<br />

(unverändert übernommen), welcher durch eine Re-Mapping-Funktion ergänzt wurde. Alle<br />

Inputs des adaptiven Sprung-Auswahl-Kernels, mit Ausnahme der hinzugefügten Kanalliste,<br />

sind identisch mit dem nicht-adaptiven der Version 1.1. Die folgende Abbildung zeigt den<br />

Ablaufplan, wie dieser neue Kernel, unter Berücksichtigung der AFH-Channel-Map, die<br />

Auswahl des nächsten zu nutzenden Kanals trifft.<br />

Quelle: <strong>Bluetooth</strong> 1.2 Core Specification<br />

Abbildung 4.4 – Frequenzwahl bei AFH<br />

Der Ablauf der Bestimmung eines Frequenz-Kanals ist wie folgt:<br />

Der grundlegende Hop-Selection-Kernel 1.1 wählt pseudo-zufällig (aus Geräte-<br />

Adresse des Masters abgeleitet) einen Kanal fk. Dieser wird anschließend einer<br />

Abfrage unterzogen, ob er zu dem gegebenen Satz von nutzbaren Kanälen in der<br />

AFH-Channel-Map zählt. Das Ergebnis entscheidet ob die Re-Mapping-Funktion<br />

angewendet werden muss:<br />

fk ist ein zulässiger Kanal � fk wird für den nächsten Zeitschlitz genutzt<br />

77


fk ist ein verbotener Kanal� durch einen bestimmten Algorithmus (<strong>Bluetooth</strong><br />

1.2 Core Specification Vol 2 Part B Seite 78)<br />

wird aus dem gegebenen Satz erlaubter Kanäle<br />

ein alternativer Kanal fk’ gewählt, der für den<br />

nächsten Zeitschlitz verwendet wird.<br />

4.4.2. Nicht-adaptive Slaves<br />

Aus den vorangegangenen Ausführungen wird ersichtlich, dass die nicht-adaptive<br />

Sprungsequenz immer mit der adaptiven identisch ist, sobald erlaubte Kanäle durch den 1.1er<br />

Hopping-Kernel generiert werden. Diese Eigenschaft ermöglicht es nicht-adaptiven Slaves<br />

eines Piko-Netzes synchronisiert zu bleiben, wobei die restlichen Slaves die adaptive<br />

Sprungsequenz nutzen. (Das Piko-Netz ist nun durch eine adaptive und eine nichtadaptive<br />

Sprungsequenz charakterisiert.)<br />

4.4.3. Anmerkung<br />

Es ist von bedeutender Notwendigkeit, dass ein Master die Channel-Map in bestimmten<br />

Zeitabständen aktualisiert. Dadurch wird erst eine adaptive Abänderung der Sprungsequenz<br />

eines Piko-Netzes, als Reaktion auf Veränderungen in dessen Einsatzumgebung<br />

(Interferenzquellen hinzu oder weg), möglich.<br />

Nationale Restriktionen bezüglich des ISM-Frequenzbandes werden bereits über den Host-<br />

Controller in die Kanalklassifikation übernommen. Für diesen Zweck existiert der HCI-Befehl<br />

HCI_Read_Country_Code. Dieser definiert in welchem Bereich des Frequenzbandes im<br />

jeweiligen Land <strong>Bluetooth</strong> operieren darf. Die bisherige Forderung nach einer 23-Kanal-<br />

Sprungsequenz in Ländern wie z.B. Frankreich und Japan konnte somit verworfen werden,<br />

wobei Japan zwischenzeitlich (in der <strong>Bluetooth</strong>-Spezifikation) nicht mehr als Land mit<br />

Frequenzbeschränkungen genannt wird.<br />

4.5 Same Channel Method<br />

Während des Einsatzes von AFH wird von der <strong>Bluetooth</strong>-Spezifikation 1.2 eine<br />

Gerätekommunikation nach der Same-Channel-Method zwingend vorgeschrieben.<br />

Hierbei findet die Übertragung eines Master-zu-Slave-Paketes und dessen unmittelbar<br />

folgenden Slave-zu-Master-Paketes auf demselben Kanal (gleiche Frequenz), und nicht wie<br />

gewohnt auf verschiedenen Kanälen, statt. Folgende Illustration soll diesen Sachverhalt näher<br />

verdeutlichen.<br />

78


Quelle: <strong>Bluetooth</strong> 1.2 Core Specification<br />

Abbildung 4.5 – Paketsequenz mit gleichen Frequenzen<br />

Durch Anwendung der Same-Channel-Methode reduzieren sich die Frequenzsprünge um 50<br />

Prozent in Bezug auf Single-Slot-Pakete, von ehemals 1600 auf 800 pro Sekunde. Bei<br />

Verwendung von Multi-Slot-Paketen verringert sich die Sprunganzahl je Zeiteinheit noch<br />

zusätzlich. Durch diese Abnahme der Frequenzwechsel wird die Anfälligkeit gegenüber<br />

zufälligen Störern erhöht, wobei der Gewinn dieses Verfahrens zum Ausweichen vor<br />

schmalbandigen permanenten Störungen diesen kleinen Nachteil überwiegt.<br />

Diverse Quellen begründen den Einsatz dieser Kommunikations-Methode mit: „Es soll der<br />

Fall vermieden werden, in dem der Master auf einer ‚guten’ Frequenz gesendet hat und die<br />

Antwort des Slaves auf einer gestörten Frequenz erfolgt, da dies zu zahlreichen<br />

Retransmissionen führt“, was allerdings bereits bei der Kanalauswahl auf Basis der ChM<br />

vermieden werden sollte. Diese Methode kann zur Klassifizirung der Kanäle genutzt werden.<br />

Erhält ein Slave kein oder ein fehlerhaftes Paket auf der ihm (durch die Sprungsequenz)<br />

bekannten Frequenz, kann er diese als gestört in seiner Channel-Classification einordnen<br />

(Packet-Error-Rate). Ebenso verhält es sich mit dem Master, welcher bei einem fehlenden<br />

oder fehlerhaften Antwortpaket des Slaves die verwendete Frequenz ebenfalls als gestört<br />

einstuften und gegebenenfalls auf Channel-Classification-Reports durch die Slaves verzichten<br />

kann.<br />

4.6 Abwärtskompatibilität zu <strong>Bluetooth</strong> 1.1<br />

Der neue Standard soll zu <strong>Bluetooth</strong> 1.1 abwärtskompatibel sein. Beispielsweise kann auch<br />

ein <strong>Bluetooth</strong>-1.1-Gerät, mit seiner nichtadaptiven Sprungsequenz, in einem Piko-Netz<br />

eingebucht sein, wo das rücksichtsvolle Adaptive Frequenzsprung-Verfahren in Benutzung<br />

ist, doch kann es darin nur als Slave agieren. Dies ist dadurch begründet, dass AFH zwingend<br />

einen AFH-fähigen Master voraussetzt, welcher die erlaubten bzw. verbotenen Frequenzen<br />

für die adaptive Sprungsequenz festlegt. Soll ein <strong>Bluetooth</strong>-1.1-Transceiver als Master eins<br />

Piko-Netzes agieren, kann kein AFH aktiviert werden und Slaves, die AFH unterstützen<br />

könnten, müssen das nichtadaptive Frequenzsprungverfahren anwenden.<br />

79


Abbildungen<br />

ABBILDUNG 1.1 – BLUETOOTH-KANÄLE IM ISM-BAND<br />

ABBILDUNG 1.2 – NATIONALE FREQUENZBESCHRÄNKUNGEN<br />

ABBILDUNG 1.3 – SCHMALBANDIGE STÖRUNG<br />

ABBILDUNG 1.4 – TIME SLOTS<br />

ABBILDUNG 1.5 – MULTISLOT-PAKETE<br />

ABBILDUNG 1.6 – VERNETZUNGSTOPOLOGIEN<br />

ABBILDUNG 1.7 – BETRIEBSMODI<br />

ABBILDUNG 1.8 – SCO-PAKETPERIODEN<br />

ABBILDUNG 1.9 – ACL-PAKETE BEI SCO-VERBINDUNG<br />

ABBILDUNG 1.10 – ACL-PAKETTYPEN<br />

ABBILDUNG 1.11 – ACL-PAKETPERIODEN<br />

ABBILDUNG 1.12 – GERÄTEPAARUNG (SCHEMA)<br />

ABBILDUNG 1.13 – SYMMETRISCHER DATENVERKEHR<br />

ABBILDUNG 1.14 – ASYMMETRISCHER DATENVERKEHR<br />

ABBILDUNG 1.15 – BEISPIEL: WLAN UND BT V1.1 INTERFERENZEN<br />

ABBILDUNG 1.16 – DIE PROTOKOLLARCHITEKTUR<br />

ABBILDUNG 1.17 – ANSCHLUSS AN EINEN HOST<br />

ABBILDUNG 1.18 – AUFBAU BLUETOOTH DEVICE ADRESSE<br />

ABBILDUNG 1.19 – ALLGEMEINER AUFBAU DER PAKETE IN BLUETOOTH<br />

ABBILDUNG 2.1 – MESSANORDNUNG AIRSNIFF<br />

ABBILDUNG 2.2 – SCREENSHOT FTS-STATISTICS DISPLAY<br />

ABBILDUNG 2.3 – SCREENSHOT FTS-FRAME DISPLAY<br />

ABBILDUNG 2.4 – SCREENSHOT FTS-PROTOCOL NAVIGATOR<br />

ABBILDUNG 2.5 – SCREENSHOT FTS-EVENT DISPLAY<br />

ABBILDUNG 2.6 – MSC-FRAME 1-6<br />

ABBILDUNG 2.7 – MSC-FRAME 7-14<br />

ABBILDUNG 2.8 – MSC-FRAME 15-17<br />

ABBILDUNG 2.9 – MSC-FRAME 18-23<br />

ABBILDUNG 2.10 – MSC-FRAME 24<br />

ABBILDUNG 2.11 – MSC-FRAME 25-32<br />

ABBILDUNG 2.12 – MSC-FRAME 33-39<br />

ABBILDUNG 2.13 – MSC-FRAME 40-43<br />

ABBILDUNG 2.14 – MSC-FRAME 44-56<br />

ABBILDUNG 2.15 – MSC-FRAME 57-67<br />

ABBILDUNG 2.16 – MSC-FRAME 68/69<br />

ABBILDUNG 2.17 – MSC-FRAME 70/71<br />

ABBILDUNG 2.18 – MSC-FRAME 72/73<br />

ABBILDUNG 2.19 – MSC-FRAME 74/75<br />

ABBILDUNG 2.20 – MSC-FRAME 76-79<br />

ABBILDUNG 2.21 – REICHWEITENVERGLEICH 1<br />

ABBILDUNG 2.22 – REICHWEITENVERGLEICH 2<br />

ABBILDUNG 2.23 – KANALNUTZUNG, VERLAUF<br />

ABBILDUNG 2.24 – KANALNUTZUNG, HISTOGRAMM<br />

ABBILDUNG 3.1 – BEISPIEL: WLAN UND BT V1.1 INTERFERENZEN<br />

ABBILDUNG 3.2 – MESSAUFBAU WLAN-EINFLUSS<br />

ABBILDUNG 3.3 – ZEITLICHER VERLAUF DER WLAN-STÖRUNG<br />

ABBILDUNG 3.4 – HISTOGRAMM DER WLAN-STÖRUNG<br />

ABBILDUNG 3.5 – MESSAUFBAU MIKROWELLE<br />

ABBILDUNG 3.6 – ZEITLICHER VERLAUF MIKROWELLENSTÖRUNG<br />

ABBILDUNG 3.7 – HISTOGRAMM MIKROWELLENSTÖRUNG<br />

ABBILDUNG 3.8 – PARAMETER DES IPERF-AUFRUFS<br />

ABBILDUNG 3.9 – ANORDNUNG (SCHEMA)<br />

ABBILDUNG 3.10 – KONSTELLATIONEN BEI DURCHSATZMESSUNG<br />

ABBILDUNG 3.11 – AUSWERTUNGSTABELLE ZU α = 180°<br />

ABBILDUNG 3.12 – AUSWERTUNGSTABELLE ZU α = 0°<br />

ABBILDUNG 3.13 – KONSTELLATION BO/WI<br />

ABBILDUNG 3.14 – MESSWERTE IN BO/WI<br />

ABBILDUNG 3.15 – KONSTELLATION BI/WI<br />

ABBILDUNG 3.16 – MESSWERTE BI/WI


ABBILDUNG 3.17 – KONSTELLATION BO/WO<br />

ABBILDUNG 3.18 – MESSWERTE BO/WO<br />

ABBILDUNG 3.19 – KONSTELLATION BI/WO<br />

ABBILDUNG 3.20 – MESSWERTE BI/WO<br />

ABBILDUNG 3.21 – ANORDNUNG CROSS MEASUREMENT 1<br />

ABBILDUNG 3.22 – ANORDNUNG CROSS MEASUREMENT 2<br />

ABBILDUNG 3.23 – DARSTELLUNG FALL 1<br />

ABBILDUNG 3.24 – DARSTELLUNG FALL 2<br />

ABBILDUNG 4.1 – ÜBERLAGERUNG BT UND WLAN<br />

ABBILDUNG 4.2 – AUSWEICHEN VOR WLAN DURCH AFH<br />

ABBILDUNG 4.3 – LMP CHANNEL CLASSIFICATION BEFEHLE<br />

ABBILDUNG 4.4 – FREQUENZWAHL BEI AFH<br />

ABBILDUNG 4.5 – PAKETSEQUENZ MIT GLEICHEN FREQUENZEN


QUELLEN<br />

[1] <strong>Bluetooth</strong> Specification - Core Specification v1.0B, 12-1999<br />

www.bluetooth.org/spec/<br />

[2] <strong>Bluetooth</strong> Specification - Core Specification v1.1 vol 1, 02-2001<br />

www.bluetooth.org/spec/<br />

[3] Specification of the <strong>Bluetooth</strong> System - Core Specification v1.2 vol 0-3, 11-2003<br />

www.bluetooth.org/spec/<br />

[4] Vertiefungsarbeit <strong>Bluetooth</strong>, Tobias Stumpp<br />

wi.ba-loerrach.de/~karguti/Arbeiten/Vertiefung/4_VT_<strong>Bluetooth</strong>_Stumpp.pdf<br />

[5] „Eingebettete Systeme – <strong>Bluetooth</strong>“ - Lothar Thiele, Jan Beutel<br />

www.tik.ee.ethz.ch/tik/education/lectures/ES/WS00/<strong>Bluetooth</strong>.pdf<br />

[6] „<strong>Bluetooth</strong>”, Martin Pradella<br />

www.uni-weimar.de/~pradella/mymobile/mm_bluetooth.htm<br />

[7] „Was ist <strong>Bluetooth</strong>?“ Jörn Stuphorn<br />

www.holtmann.org/lecture/bluetooth/<br />

[8] <strong>Bluetooth</strong> - Universelle Funktechnologie zur Kommunikation<br />

www.avm.de<br />

[9] „Enhancing ISM Band Performance Using AFH”, Eric Meihofer<br />

www.motorola.com/semiconductors/<br />

[10] „Adaptive Frequency Hopping for Reduced Interference between <strong>Bluetooth</strong>® and<br />

Wireless LAN” – white paper, Charles Hodgdon, Fa. Ericsson<br />

[11] The <strong>Bluetooth</strong> Special Interest Group (SIG): BLUETOOTH SPECIFICATIONS<br />

www.bluetooth.com<br />

[12] „<strong>Bluetooth</strong> - Connect Without Cables”, Jennifer Bray, Charles F. Sturman<br />

[13] „<strong>Bluetooth</strong> - Überblick über Techniken, Gerätespektrum, Zukunftsaussichten“,<br />

Ayhan Cil<br />

[14] „<strong>Bluetooth</strong> Protocol Architecture”, Sachin Garg – VLSI-EDA<br />

[15] „Mobile Systeme und drahtlose Netzwerke“, Frank Golatowki – Vorlesung an<br />

Universität Rostock<br />

wiss.informatik.uni-rostock.de/standard/ieee802.15.html<br />

[16] „<strong>Bluetooth</strong> - Gefährdungen und Sicherheitsmaßnahmen“, Bundesamt für Sicherheit<br />

in der Informationstechnik, Projektgruppe "Local Wireless Communication"<br />

www.bsi.de/literat/doc/bluetooth/


[17] Ausarbeitung zum Proseminar IBM-PC (SS 2000), Martin Kirst - Technische<br />

Universität Chemnitz, Fakultät für Informatik<br />

www-user.tu-chemnitz.de/~kirst/prosem/docs/main.htm<br />

[18] Informationen zum Standard <strong>Bluetooth</strong> und der Arbeit der IEEE802.15-Taskgroups<br />

grouper.ieee.org/groups/802/15/<br />

[19] Carmeq Software & Systems – Introduction to <strong>Bluetooth</strong>, Kirsten Metheus, 06-2003<br />

www.dcl.hpi.uni-potsdam.de/teaching/ mobilitySem03/slides/<strong>Bluetooth</strong>Tutorial.pdf<br />

Weiterführende Informationen rund um den Standard <strong>Bluetooth</strong> und seine Auswirkungen:<br />

http://www.tecchannel.de/hardware/724/index.html<br />

http://www.de.tomshardware.com/network/20030319/bluetooth-ueberblick-01.html<br />

http://www.allesklar.de/l.php?xref_path=100-532-1014-28316-84135<br />

http://www.tecchannel.de/hardware/477/index.html<br />

http://www.tecchannel.de/netzwerk/networkworld/technologyupdate/174/<br />

http://www.embeddedstar.com/press/content/2003/6/embedded9078.html<br />

http://www.eetimesnetwork.com/<br />

http://www.bluetooth.com/news/releases.asp?A=2&PID=995&ARC=1<br />

http://www.bluetooth.com/news/releases.asp?A=2&PID=870&ARC=1&ofs=<br />

http://www.dslweb.de/<strong>Bluetooth</strong>-1-20-gestartet--news.htm<br />

http://www.heise.de/mobil/newsticker/meldung/print/37364<br />

http://www.tecchannel.de/news/20020613/thema20020613-7813.html<br />

http://www.geek.com/news/geeknews/2002Jul/bpd20020708015276.htm<br />

http://www.mwee.com/printableArticle/?doc_id=OEG20020611S0033<br />

http://internet.motlabs.com/pipermail/bluetooth/2001-February/000031.html<br />

http://www.802wirelessworld.com/index.jsp

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!