User:TestAccount1234/Sandbox

Shortcuts: COM:SAND • COM:SB

Welcome to the Wikimedia Commons Sandbox. This page allows you to carry out experiments.
  1. Click this link to edit the sandbox and make your changes.
  2. Click the Publish changes button when finished.

IEEE 802.15.4 edit

 
ZigBee und IEEE 802.15.4

Der Standard IEEE 802.15.4 beschreibt ein Übertragungsprotokoll für drahtlose Sensornetze (WSN) und definiert hierfür den PHY- und MAC-Layer des ISO/OSI-Referenzmodells. ZigBee, ein Standard für Funknetzwerke, nutzt 802.15.4 und ergänzt alle darüber liegenden Schichten, so dass ein vollständiger Protokollstapel entsteht. Wesentliche Entwicklungsziele für das Protokoll sind geringer Stromverbrauch, damit Batteriebetrieb möglich ist, kostengünstige Hardware, Nutzung der lizenzfreien ISM-Bänder und Parallelbetrieb mit anderen Sendern auf diesen Frequenzen, insbesondere WLAN und Bluetooth.

Grundlegendes edit

Das Schichtenmodell unterteilt den Protokollstapel in abgegrenzte Ebenen, trotzdem existiert zwischen ihnen eine enge Bindung, da jede Schicht auf die Schnittstellen der darunter liegenden ausgelegt ist. Wesentliche Trennstellen sind der Übergang zwischen Hardware und Software zwischen 802.15.4 und ZigBee sowie zwischen ZigBee und der Anwendung.

Der Standard stellt sicher, dass die Kommunikation zwischen Geräten auch mit Implementierungen verschiedener Hersteller reibungslos funktioniert. Die Schnittstelle zur nächst höheren Schicht hat eine fest vorgeschriebene Funktionalität zur Verfügung zu stellen, kann aber je nach Implementierung unterschiedliche umgesetzt sein. IEEE 802.15.4 greift hier auf das abstrakte Konzept der Service-Primitives zurück, anstatt eine API mit strikt festgelegten Funktionsprototypen zu definieren.

 
Abfolge der Primitives


Für Datentypen die mehr als ein Byte umfassen, erfolgt die Byte-Reihenfolge nach dem Prinzip niederwertigstes Byte zuerst.

FFD und RFD edit

Für die Geräte sind zwei Komplexitätsstufen vorgesehen, FFD (Full Function Device) und RFD (Reduced Function Device). Ein FFD bietet spezielle Funktionen, damit ein Gerät als Coordinator agieren kann, zum Beispiel werden Beacons verschickt, die die Präsenz eines Coordinators signalisieren und legt Parameter für die Übertragung fest. Ein RFD kann nur mit einem FFD direkt kommunizieren, da es über eine begrenzte Funktionalität verfügt. Ein FFD dagegen kann mit einem anderen FFD kommunizieren. Dadurch kann es gleichzeitig Coordinator sein und gleichzeitig einem anderen Coordinator untergeordnet werden. Dies ermöglicht den darüberliegenden Schichten ein Baum-Netzwerk aufzubauen.

Indirekt, durch Routing, kann ein RFD mit einem anderen RFD kommunizieren. Die hierfür notwendige Funktionalität stellen höhere auf IEEE 802.15.4 aufbauende Schichten bereit.


PHY-Layer edit

Für die Funkübertragung stehen die ISM-Bänder 868/915 MHz (Europa bzw. USA) und 2,45 GHz (nahezu weltweit) zur Verfügung. Aufgrund der unterschiedlichen Frequenzen kann durch die Hardware jeweils nur ein Band genutzt werden. Die Verbreitung der Funkmodule für das 2,45 GHz ist sehr groß, nur wenige nutzen das 868/915 Mhz-Band.

2,45 GHz-Band edit

 
Modul ohne Antenne:
1: Schwingquarz
2: Balun
3: Linearregler
4: Schwingquarz
5: Transceiver
6: Mikrocontroller
 
Modul mit Antenne

Geräte im 2,45 GHz-Band nutzen Offset-QPSK als Modulationsverfahren, welches ein ausgewogenes Verhältnis zwischen Einfachheit und Robustheit aufweist. Zur Reduzierung der Störempfindlichkeit dient das Frequenzspreizverfahren DSSS, ein zu übertragendes Symbol enthält 4 Datenbits und wird in einen 32 Chips langen Code umgesetzt. Die Chiprate beträgt 2 Mchips/s und die Netto-Datenrate folglich 250kBits/s. Die Bandbreite des Signals umfasst 2 MHz und der Kanalabstand beträgt 5 MHz. Die Größe der Antenne im 2,45 GHz-Band kann sehr klein ausfallen, ein Moduls mit Antenne, Transceiver und Mikroprozessor hat etwa die Abmessungen von zwei Eineuromünzen. Die Nutzung der für WLAN entwickelten Knick-Antennen ist auch möglich.

Die typische Sendeleistung eines Transceivers beträgt 0 dBm (=1mW) und die Empfindlichkeit liegt unter -90 dBm. Auch wenn das Vorgegeben Modell der Pfadverluste für Gebäude gilt, zeigt die Praxis, das oft nur ein Drittel der angegebenen Reichweite möglich ist.

 

IEEE 802.15.4 wurde für den Parallelbetrieb mit WLAN und Bluetooth ausgelegt. Praxis-Tests zeigten im 2,45 GHz-Band Probleme bei der Koexistenz von IEEE 802.15.4 mit WLAN und Bluetooth. Bei Bluetooth erweist sich das seit der Version 1.2 eingeführte adaptive Frequenzhopping, das WLAN ausweicht aber dafür die verbleibenden Frequenzen häufiger belegt, als Störer. WLAN macht durch den stark gewachsenen Datenverkehr Probleme. Die Aussagekraft dieser Ergebnisse wird von der ZigBee-Alliance angezweifelt und durch eine Verträglichkeitsstudie ein Gegenbeweis angetreten.

Die unterstehende Grafik zeigt das Blockschaltbild eines Transceiver-Chips, dem die Hardware der meisten Hersteller entspricht. Lediglich das Heruntersetzen auf die Zwischenfrequenz erfolgt mit analogen Bauteilen, die De-/Modulation geschieht digital. Die Übertragung erfolgt in Paketen und ein Puffer speichert eingehende oder zu sendende Daten. Es sind nahezu keine externen Bauteile erforderlich abgesehen von einem Schwingquarz und Stützkondensatoren.

 
Blockdiagramm eines Transceivers


Die Symbol-Period stellt die Basis für alle Zeitangaben, im 2,45 GHz-Band beträgt diese 16 µs. Die Werte für den MAC-Layer beziehen sich alle auf die Vorgaben für das 2,45 GHz-Band.

MAC-Layer edit

Der MAC-Layer bildet das obere Ende von IEEE 802.15.4 und wird im wesentlichen durch Software definiert. Der MAC bestimmt das Zugriffsverfahren, z. B. CSMA/CA und weitere für eine Funkschnittstelle wichtige Methoden. Der folgende Abschnitt erläutert welche Funktionen der MAC-Layer zur Verfügung stellt.

CSMA/CA edit

Für die Kollisionsvermeidung kommt ein CSMA/CA-Algorithmus zur Anwendung. Vor dem Senden prüft der Transmitter, ob ein anderes Gerät auf dem Kanal gerade sendet, in dem die Signalstärke von der Antenne gemessen wird. Ist der Kanal frei beginnt die Datenübertragung, andernfalls wartet das Geräte eine zufällige Zeitperiode und führt einen erneuten Kanalfrei-Test durch. Schlägt der Kanalfrei-Test mehrmals fehl, bricht der Algorithmus die Übertragung mit der Fehlermeldung „Kanal belegt“ ab. Zur Übertragungssicherung kann vom Sender ein ACK-Paket gefordert werden. Bleibt die Bestätigung auf eine Nachricht aus, bedeutet das einen Übertragungsfehler, das Paket wird erneut gesendet. Geschieht dies mehrfach endet der Sendeversuch mit dem Fehler „NOACK“, der Empfänger ist nicht erreichbar. Für das Senden ACK-Paket ist kein CSMA/CA-Algorithmus erforderlich, sondern wird direkt nach dem Empfang einer Nachricht abgeschickt.

Aus der Fehlermeldungen nach einem erfolglosen Übertragungsversuch kann die darüberliegende Schicht mehrere Schlüsse ziehen. „NOACK“ bedeutet, die Gegenstelle ist nicht mehr im Empfangsbereich. Aus „Kanal belegt“ folgt der genutzte Kanal ist überlastet und sollte ggf. gewechselt werden.

Der CSMA/CA-Algorithmus legt fest, das der Random-Backoff bereits vor dem ersten Kanalfrei-Test erfolgt, somit sinkt die effektive Datenrate erheblich. Die Wartezeit vor einem Übertragungsversuch beträgt zwischen 2 und 10 ms. Hinzu kommen weitere Verzögerungen, wenn der Kanal belegt ist oder vom Empfänger kein ACK kommt. Die folgende Formel basiert auf den Vorgaben des Standards und berechnet die Backoff-Zeit.

 
 
 

Das Timeout für das ACK-Paket beträgt 864 µs (Symbol period · macAckWaitDuration) und darf frühestens 192 µs nach Erhalt der vollständigen Nachricht erfolgen.

Beacons edit

Beacons (dt. Signalfeuer) zeigen die Präsenz eines Coordinator an. Bei IEEE 802.15.4 werden die Beacons in festgelegten Intervallen (ohne CSMA/CA) übertragen und bilden somit den Superframe. Desweiteren enthalten sie zusätzliche Informationen zum Status des Netzwerks. Der Parameter BI (Beacon-Intervall) bestimmt den zeitlichen Abstand zwischen den Beacons und hat einen Wert von 0 bis 14, 15 bedeutet er wird kein Beacon ausgesendet.

 
 

Übertragungsarten edit

Damit das Ziel des stromsparenden Batteriebetriebs erreicht wird, muss nicht nur die Hardware entsprechend konzipiert sein, sondern auch die Übertragungstechniken angepasst werden. Neben der Standardmethode einer sendet alle anderen horchen, existieren weitere Verfahren. Die Technik der Indirect-Transmission stellt ein wesentliches Konzept dar, hinzu kommt eine Aufteilung des Superframes in mehrere Phasen. Für spezielle Anwendungen existieren noch die nur von wenigen Anbietern unterstützen Guaranteed-Timeslots (GTS).

Die indirekte Übertragung ermöglicht einem Gerät den Transceiver möglichst oft und lange in den Standby zu schalten. Der Coordinator überträgt Daten erst nachdem es vom Empfänger abgefragt wurde. Damit der Empfänger nicht permanent seinen Coordinator pollen muss, kann die Information über wartende Daten im Beacon untergebracht sein. Die Beacons werden in festen Zeitabständen verschickt, ein Transceiver wacht in weniger als einer Millisekunde aus dem Standby auf, somit kann sehr viel Energie eingespart werden. Wurde ein Coordinator gepollt, obwohl der MAC-Layer keine wartenden Daten für das Gerät verfügt, wird ein Datenpaket mit der Länge Null verschickt. Auf diese Weise kann der Empfänger die Einschaltdauer seines Transceiver verkürzen, anstatt bis zum Timeout für die Poll-Anfrage zu warten. Zusätzlich kann im ACK-Paket einer vorangegangenen Übertragung das Frame-Pending-Bit gesetzt sein, womit signalisiert wird das weiter Daten warten, das allerdings nur wenige Hersteller unterstützen.

Damit die an den MAC-Layer übergeben Daten nicht unendlich lange in der Warteschlange bleiben, wurde deren Lebensdauer (TransactionPersistenceTime) beschränkt. Der Standardwert beträgt 7,68 Sekunden und kann bis auf ca. 16 Minuten erhöht werden.

 
Indirekte Übertragung ohne Beacon
 
Indirekte Übertragung mit Beacon

Energiesparend, gilt bei der indirekten Übertragung nur für eine Seite, der Coordinator muss immer für eingehende Daten empfangsbereit sein. Abhilfe schafft ein Superframe, bei dem nur für eine definierte Dauer nach versenden des Beacons das Netzwerk als aktiv gilt (active Period) und in der restlichen Zeit kann auch der Coordinator seinen Transceiver in den Schlaf-Modus schicken.

 
Superframestruktur, die aktive Periode besteht aus CAP (Contention-Access-Period) und CFP (Contention-Free-Period)


Bei Guaranteed-Timeslots (GTS) erhält ein Teilnehmer innerhalb eines Superframes einen fest zugeordneten Zeitabschnitt, andere dürfen nicht senden (CFP). GTS bedeutet nicht, dass ein bestimmter Datendurchsatz garantiert wird oder Echtzeitbedingungen eingehalten werden. Der CSMA/CA-Algorithmus wird trotz allem angewendet und kann durch Störung dritter scheitern. GTS regelt nur die Verteilung der Übertragungskapazität innerhalb eines Netzwerks. Ein Timeslot wird für einen beschränkten Zeitraum zugewiesen, dadurch werden reservierte Plätze auch nach unvorhergesehenem Ausscheiden eines Teilnehmers frei.

Verbindungsaufbau edit

Bevor ein Gerät mit einem anderen Kommunizieren kann, muss ein Kanal dafür gewählt werden. Der Coordinator wählt möglichst einen Kanal ohne Konkurrenzsender, hierzu dient der ED-Scan (Energy-Detect), bei dem die Signalstärke gemessen wird oder Active-Scan, bei dem alle anderen als Coordinator aktiven Geräte durch einen Beacon-Request aufgefordert werden einen Beacon zu versenden. Sucht ein Gerät Anschluss zu einem Coordinator geschieht dies mit einem Active-Scan (nur FFD) oder einem Passiv-Scan (Kanäle auf Beacons abhören).

Damit der Aufbau eines Netzwerks geregelt abläuft, melden sich Endgeräte mit einem Associate-Request bei einem Coordinator an und mit der Zuweisung einer Short-Address bestätigt. Die Wahl der Short-Address ist Aufgabe der höheren Schichten.

 
Associate-Request erfolgt durch indirekte Übertragung


Verschlüsselung und Sicherheit edit

Der Standard IEEE 802.15.4 bietet Sicherheitsmaßnahmen auf MAC-Ebene durch Message-Integrity-Check und symmetrische Verschlüsselung. Es kann zwischen mehreren Verfahren gewählt werden, die auf CCM und AES basieren. Die Schlüssel werden durch die darüberliegende Schicht festgelegt und anschließend durch den MAC-Layer verwaltet. Die Verschlüsselung wird für jeden Kommunikationspartner separat festgelegt und Automatisch vom MAC-Layer angewendet. War ein empfangenes Paket verschlüsselt zeigt dies ein Parameter in der Indication-Primitve an.

Die Umsetzung der Verschlüsselung variiert leicht zwischen der Version 2003 und 2006.

Weblinks edit