Thread - Jetzt bitte einmal richtig erklärt
Einleitung
Seit Monaten gibt es in der Welt des Smarthome kaum etwas anderes, als Thread… Geräte die Thread als Update erhalten sollen, Geräte die jetzt doch kein Update erhalten und Geräte die jetzt brand neu auf den Markt kommen… Jeder hat was zu Thread zu sagen, aber keiner schafft es, allgemeinverständlich zu sagen, was denn jetzt der wirkliche Vorteil von Thread sein soll. Klar es soll schneller und besser sein, aber das erwarte ich von einem “NEUEN” Standard auch, sonst könnte man sich diesen auch schenken. Ich möchte wissen, was genau macht Thread denn so anders? – Wieso ist Thread denn “das Protokoll der Zukunft” und wieso gibt es das bei den anderen nicht einfach als Update?
In diesem Beitrag möchte ich für mich alle Fragen klären. Dafür habe
ich mich durch knapp 30 verschiedene Webseiten gewühlt, 15 Seiten an
Informationen zusammengetragen, wovon sich teilweise etwas
wiederspricht, was meinen Unmut über diese ganze Hype Sitzuation
verständlich macht. Derzeit möchte anscheinend unbedingt jeder was zum
Thema Thread sagen, egal ob das Hand und Fuß hat oder nicht.
Hauptteil
Die kleinen Dinge zuerst
Zuersteinmal sollte geklärt werden, wie Thread funktioniert. Anders
als viele andere Netzwerkstandards, definiert Thread nicht den
kompletten OSI Stack, sondern setzt auf vorhandene technologien auf (802.15.4)
– definiert also Layer 3 – 5 und nutzt für die darunterliegenden
Schichten andere Technologien. Weiterhin definiert Thread auch nicht
Layer 6 und 7, dies wird zum Beispiel später durch Matter
umgesetzt. Und hier kommt für mich bereits ein sehr wichtiger Punkt zum
tragen: Thread Geräte werden nicht zwangsläufig miteinader sprechen
können (zumindest nicht so, dass diese mit den Daten etwas anfangen
können). Wenn ein Thread Gerät lizensiert werden sollte, welches kein
Matter verwendet, dann kann das Gerät in jedem Fall problemlos in das
Thread Netzwerk aufgenommen werden und die Daten dort auch senden,
jedoch werden diese Daten nicht ohne einen entsprechenden Borderrouter
inkl. Translator von anderen Threadfähigen Geräten verwendet werden
können.
Falls jedoch nur Thread Geräte zertifiziert werden, welche
auch Matter nutzen, dann wäre dies natürlich kein Problem. Davon gehe
ich aber derzeit nicht aus, da es dazu keine Aussagen gibt.
Wie erfolgt die Kommuniaktion?
Wie bereits im vorherigen Punkt erwähnt, stützt sich Thread aus 802.15.4. Dieser Standard definiert die ersten beiden Schichten des OSI Modells und baut ein sog. WPAN Netzwerk auf. Diese beiden Schichten definiere ich jetzt nicht genauer. Wer sich für diesen Teil der Kommunikation interessiert kann zum Beispiel hier nachschauen. Zusammengefasst, sorgt 802.15.4 jedoch dafür, dass Daten sehr effizient verschickt werden können und implementiert ebenfalls die P2P, Stern- und Meshfunktionalität. Weiterhin implementiert dieser Standard auch die Geräte Typen RFD (Reduced Function Devices) und FFD (Full Function Devices), diese nutzt Thread um zum Beispiel Senoren als RFD einzusetzen. Dadurch wird eine Menge an Energie bei diesen Geräten eingespart, da sie selber nur als Endgerät fungieren und nicht noch als Router. Diese Geräte übertragen Daten, wenn diese anfallen.
Thread baut zwischen den Geräten ein IPv6 gestütztes Netzwerk auf und
sorgt damit für die Übertragung. Um die Kommunikation zwischen den
Geräten zu ermöglichen, werden sogenannte “Border Router” verwendet.
Diese ersetzen sozusagen die Hubs und können innerhalb eines Netzwerks
mehrfach vorkommen. Dadurch sind unteranderem auch verteilte Netzwerke
innerhalb eines Thread Netzwerks möglich. Ein Thread Netzwerk kann damit
auch an verschiedenen aussenliegende IP Subnets angebunden werden, was
zum Beispiel das Problem von Auto Discovery über verschiedene Netzwerke
hinweg lösen kann.
Mesh und “Self healing”
Thread ist aufgrund von 802.15.4 fähig unter anderem mit der Mesh
Topologie zu arbeiten. Das heißt, dass FFD’s (Full Function Devices)
jeweils auch Daten von Geräten an andere Geräte schicken können und auch
selber als Zugangspunkte dienen. Dadurch ergibt sich die Möglichkeit
große physikalische Distanzen zu überbrücken und weiterhin, gerade in
engmaschigen Netzen, eine sehr gute Verbindungsdichte zu haben, was in
niedrigen Latenzen münden dürfte.
Weiterhin sagen viele Webseiten,
dass das Netzwerk “Self healing” ist, dies sehe ich persönlich nicht so.
Es gibt durch die Mesh funktionalität die Möglichkeit andere Geräte zur
Kommunikation zu verwenden, wenn ein spezieller Router ausfällt, an dem
ein RFD (Reduced Function Device) angeschlossen ist, ausfällt so wird
automatisch ein anderer Router (sofern es einen gibt) verwendet. Diese
funktionalität wird von vielen als Self healing bezeichnet. Es ist
jedoch wichtig zu sagen, dass dies nur funktioniert, wenn die anderen
Router die Möglichkeit haben in das Zielnetz zu kommen. Gerade bei
größeren Netzwerken und Border routern die in verschiedenen Netze
münden, muss dann Redundant gearbeitet werden, da das Netzwerk sonst
nicht self healing ist. Am Ende des Tages wird ganz klassisch Mesh
verwendet und Self Healing wird mehr oder weniger nur zutreffen, wenn
entweder einfache Installationen erstellt werden, oder die Border Router
redundant aufgestellt sind. Aber generell Self Healing wäre Thread nur,
wenn das kaputte Gerät auf magische Weise repariert bzw. wenn ein gerät
entfernt wird, dieses magisch neu auftaucht… Beides wird wohl nicht
passieren. Am Ende des Tages ist Thread auch nur ein Protokoll, welches
versucht alternative Strecken nutzen zu können.
Das einfachte
Beispiel ist das folgende: Ein Benutzer hat einen Borderrouter (z.B.
Alexa) und ansonsten nur RFD’s – Sensoren für Temperatur, Türen usw..
Wenn Alexa als Borderoruter nun ausfällt, dann gibt es nichts mehr zu
heilen, dann ist das Netzwerk nicht mehr funktional. Das selbe trifft
natürlich auf Borderrouter zu, die Automationen beinhalten.
Kommunikationssicherheit
Damit ein neuer Standard heutzutage eingeführt werden kann und dann
auch Erfolg am Markt hat, muss zwangsläufig auch die Kommunikation
gesichert sein. Um die Kommunikation innerhalb des Thread Netzwerks zu
verschlüsseln, setzt Thread auf AES. Einige Plattformen reden von
“Banking Class public Key cryptography”. Was das sein soll, weiß ich
nicht. Technisch gesehen, nutzt Thread einen Symetrischen Schlüssel,
welcher im gesamten Netzwerk gleich ist. Dieser wird periodisch
verändert, sodass falls ein Angreifer durch z.B. Brute Force den
Schlüssel erraten kann, nur Zugriff auf einen begrenzten zeitlichen
Datensatz hat.
Um neue Geräte in ein bestehendes Netzwerk zu
integrieren, wird eine Asymmetrische Verschlüsselung verwendet. Falls
jemand ganz genau wissen möchte, wie das funktioniert, der kann das auf der offiziellen Webseite von thread nachlesen.
Zuletzt wird auch noch CRC verwendet um die Integrität der Daten sicherzustellen.
Fazit
Damit haben wir nun einen kurzen technischen Einblich in das “neue” Thread Protokoll erhalten.
Es
ist klar, dass Thread in jedem Fall eine Bereicherung für die Smarthome
Welt sein wird. Jedoch ist Thread nur ein Netzwerkprotokoll von vielen
und anders als z.B. ZigBee benötigt Thread ein weiteres Protokoll für
die Nutzdaten.
Gerade für HomeKit Benutzer wird Thread wohl
interessant werden. Außerhalb von Apple wird Thread aber eher eine
Ergänzung sein und nicht “alles grundlegend verändern”.
Es gibt mittlerweile die ersten Geräte auf dem Markt, welche mehr
oder weniger stabil funktionieren, jedoch ist Thread im ersten Release
erschienen. Derzeit ist noch alles neu und die Feldnutzung wird die
Probleme zu tage fördern, welche dann behoben werden.
Ein klarer
Vorteil, welchen ich mir durch Thread verspreche ist die Möglichkeit für
nachhaltige Produkte. Updatemanagement ist durch Thread einfacher
geworden und Nutzer müssen nicht vie tun um die Geräte zu aktualisieren.
Weiterhin baut Thread den Weg zu einem einfachen Smarthome mit
universellen Protokollen auf, dies ist aber von den Herstellern
abhängig. Bereits jetzt gibt es einige Abwandlungen von dem eizigen
Protokoll, was aktiv auf Thread setzt (Matter). Wenn sich Hersteller
dazu entscheiden, Matter Router zu verkaufen, welche mit den eigenen
Geräten “mehr” können, dann hat das alles nicht viel Gebracht. Dann sind
wir da, wo ZigBee auch ist. Zum Beispiel bei Phillips Hue. Mit einem
generellen ZigBee Hub kann man die Leuchten bedienen, jedoch kann nur
die Hue Bridge alle Funktionalitäten einer Hue Leuchte abbilden.
Es
heißt dementsprechend abwarten. Wer bereits ein funktionierendes Smart
Home hat, braucht nicht losrennen um alles auf Thread umzustellen und
auch in Zukunft wird es ZigBee, ZWave und andere Funkgeräte geben,
welche verwendet werden. Dies wird sich in nächster Zeit nicht ändern.
Back…