Bluetooth® Mesh Gezielte Weiterleitung

Technischer Überblick

Freigabe : 1.0.0
Dokument Version :   1.0
Zuletzt aktualisiert : 19. September 2023
Die Autoren :   

Martin Woolley, Bluetooth SIG
Szymon Slupik und Piotr Winiarczyk, SILVAIR Inc.

Geschichte der Revision

Version

Date

Author

Changes

1.0.0

September 19, 2023

Martin Woolley, Bluetooth SIG
Szymon Slupik and Piotr Winiarczyk, SILVAIR Inc.

Initial version

 

Hinweis

Die Bluetooth Mesh Profilspezifikation wurde umbenannt und heißt jetzt Bluetooth Mesh Protokoll Spezifikation. Referenzen in diesem und verwandten Papieren werden diesen Namen verwenden, wenn sie sich auf die Spezifikation der Version 1.1 beziehen, aber weiterhin die Spezifikation der Version 1.0 als Bluetooth Mesh Profil Spezifikation.

 

1. Hintergrund

Die gerichtete Weiterleitung wurde in Version 1.1 der Bluetooth® Mesh Protokollspezifikation eingeführt. Um die Fähigkeiten und Vorteile von Bluetooth Mesh Directed Forwarding vollständig zu verstehen, ist es notwendig, einige Aspekte von Bluetooth Mesh Version 1.0 zu kennen. Dieser Abschnitt liefert Kontext und Hintergrundinformationen, die die Untersuchung der Bluetooth Mesh Directed Forwarding-Funktion unterstützen.

1.1 Nachrichtenübermittlung mit mehreren Zwischenstationen und mehreren Wegen

Eines der bestimmenden Merkmale eines Bluetooth® Mesh Netzwerks ist, dass Geräte auch dann kommunizieren können, wenn sie sich nicht in direkter Funkreichweite zueinander befinden. Die Geräte im Netz, die als Knoten bezeichnet werden, kommunizieren, indem sie Nachrichten an Zieladressen senden, und wenn nötig, springen die Nachrichten durch das Netz, bis sie ihr Ziel erreichen. Die Nachrichten können maximal 126 Mal weitergegeben werden, so dass die Netze einen großen Bereich in, um und zwischen Gebäuden abdecken können.

Kopien derselben Nachricht können gleichzeitig über verschiedene Pfade durch das Netz laufen, wobei die zuerst eintreffende Kopie verarbeitet und die später eintreffenden verworfen werden. Diese Mehrwegfähigkeit bietet den Netzen Redundanz, so dass Nachrichten auch dann noch zugestellt werden können, wenn ein oder mehrere erforderliche Relaisknoten (siehe 1.2) im Netz nicht verfügbar sind.

Ein gut konzipiertes Bluetooth Mesh Netz nutzt die Vorteile der Mehrwegzustellung als eine der Strategien, die verwendet werden können, um sicherzustellen, dass die Kommunikation im Netz zuverlässig ist.

1.2 Eigenschaften des Knotens

So können beispielsweise LED-Leuchten mit Modellen ausgestattet werden, die es ermöglichen, sie ein- oder auszuschalten und ihre Helligkeit oder Farben als Reaktion auf Meldungen von anderen Geräten wie Schaltern und Drehreglern zu ändern.

Unabhängig von der Art des Produkts kann ein Knoten auch verschiedene Sonderrollen im Netz spielen. Bluetooth Mesh definiert vier besondere Eigenschaften, die ein Knoten haben kann. Diese sind in Tabelle 1 dargestellt.

Tabelle 1 - Knoteneigenschaften

Merkmal

Beschreibung

Relais

Ein Knoten, der die Relay-Funktion aktiviert hat, kann Nachrichten, die er von anderen Geräten in seiner unmittelbaren Umgebung hört, weiterleiten. Relaying ist der Mechanismus, der es ermöglicht, dass Nachrichten über zwischengeschaltete Relaisgeräte zu ihrem Ziel gelangen. Die Mehrwegzustellung wird erreicht, indem sichergestellt wird, dass sich sendende Knoten in Reichweite von mehr als einem Relaisknoten befinden, so dass jeder von ihnen Nachrichten von benachbarten Knoten hört und diese weiterüberträgt.

Freund

Freunde sind in der Regel Geräte mit hohem Stromverbrauch. Sie bieten einen Speicher- und Weiterleitungsdienst für zugehörige Low-Power-Nodes (LPNs).

Low-Power-Knoten

LPNs sparen Strom, indem sie ihr Funkgerät nur gelegentlich aktivieren, um Nachrichten zu übermitteln oder mit einem assoziierten Freundesknoten zu kommunizieren, um zu erfragen, ob Nachrichten für die LPN von dem Freund zwischengespeichert wurden, und um solche zu empfangen.

Vollmacht

Proxy-Knoten ermöglichen Bluetooth® Low Energy (LE) Geräten, die den Bluetooth Mesh Werbeträger nicht nutzen können, das Senden und Empfangen von mesh Nachrichten unter Verwendung von GATT-Verfahren über eine Punkt-zu-Punkt-Verbindung mit dem Proxy. Proxy-Knoten werden häufig verwendet, damit speziell entwickelte Smartphone-Anwendungen als grafische Benutzeroberfläche für die Überwachung und Steuerung von Knoten in einem mesh Netzwerk fungieren können.

 

1.3 Bluetooth Mesh Verwaltete Überflutung

Unkontrolliertes Flooding ist eine Technik, die in einigen drahtlosen Netzwerktechnologien verwendet wird und bei der die Knoten jede empfangene Nachricht erneut senden, so dass sich die Nachrichten an jeden Knoten im Netzwerk ausbreiten. Dies ist ein einfacher Ansatz, der jedoch ineffizient sein kann, da er Funkspektrum, Knotenverarbeitungszeit und Energie verschwendet.

Der Mechanismus, den Bluetooth® Mesh 1.0 zur Weiterleitung von Nachrichten verwendet, heißt Bluetooth Mesh Managed Flooding. Nur ausgewählte Knoten dürfen die Weiterleitungsfunktion aktiviert haben. Darüber hinaus übertragen diese Knoten einige empfangene Nachrichten erneut, je nachdem, ob dieselbe Nachricht bereits erneut übertragen wurde oder nicht, was durch den Nachrichten-Cache des Knotens und den Wert eines PDU-Feldes (Protocol Data Unit) namens Time to Live (TTL) angezeigt wird.

TTL begrenzt die Anzahl der Sprünge, über die eine Nachricht weitergeleitet wird, oder die radiale Entfernung, die sie von der Quelle zurücklegt. Stellen Sie sich eine Reihe von Bluetooth Mesh Lichtschaltern in der Lobby eines Büros vor. Ein Schalter steuert alle Beleuchtungsknoten im Erdgeschoss, während einer der anderen Schalter nur die Beleuchtung in der Lobby selbst steuert. Wenn sich alle Beleuchtungsknoten in der Lobby in direkter Funkreichweite des Lichtschalters in der Lobby befinden, müssen diese Nachrichten überhaupt nicht weitergeleitet werden. Im Gegensatz dazu sind zum Erreichen anderer Leuchten auf dieser Etage, außerhalb der Lobby, vielleicht 2 Sprünge erforderlich. Der erste Schalter setzt die TTL in den von ihm gesendeten Nachrichten auf 0, was anzeigt, dass keine Weiterleitung erfolgen soll. Der zweite Schalter setzt sie auf 3, was sicherstellt, dass die Nachricht ausreichend oft weitergeleitet wird, um die weiter entfernten Leuchten außerhalb der Lobby zu erreichen. In jedem Fall optimiert TTL die Weiterleitungsfunktion, indem es sicherstellt, dass Nachrichten nicht in Bereiche des Gebäudes weitergeleitet werden, in denen sie nicht von Bedeutung sind, und dass sich Nachrichten von der Quelle ausbreiten, ähnlich wie die Wellen eines Steins, der ins Wasser fällt.

Im Gegensatz zu Netzen, die mit unkontrolliertem Flooding arbeiten und eine beträchtliche Menge an unnötigem Verkehr erzeugen, ist es in einem Bluetooth® Mesh Netz üblich, dass nicht mehr als etwa fünf Prozent der Knoten als Relais fungieren.

1.4 Grenzen von Bluetooth Mesh Managed Flooding

Es gibt Szenarien, in denen eine genauere Kontrolle darüber, welche Knoten eine Nachricht weiterleiten, als Bluetooth Mesh Managed Flooding bieten kann, von Vorteil wäre. Betrachten Sie die folgenden Szenarien:

1.4.1 Angrenzende Stockwerke

2108 Jüngste Erweiterungen IMG Mesh

Funkübertragungen bewegen sich in drei Dimensionen. Eine Nachricht Bluetooth® Mesh kann daher von Knoten in Stockwerken über und unter dem Stockwerk, von dem sie ausgeht, empfangen werden, was unerwünscht sein kann, wenn die Nachricht nur an Knoten in demselben Stockwerk wie der sendende Knoten gerichtet ist. So wird beispielsweise ein Lichtschalter häufig nur zur Steuerung der Beleuchtung in derselben Etage verwendet, und es ist nicht sinnvoll, dass Nachrichten von diesem Schalter von Knoten in anderen Etagen gehört und möglicherweise von Relais in diesen angrenzenden Etagen weitergesendet werden.

1.4.2 Zielgeräte nur auf einer Seite des Raumes

Stellen Sie sich einen großen Konferenzsaal mit einer Reihe von Lichtschaltern an der Wand vor, die sich auf halbem Weg zwischen einem Ende des Raums und der Bühne am anderen Ende befinden. Ein Schalter steuert die Beleuchtung über der Bühne, und die Nachrichten müssen über einen Sprung weitergeleitet werden, damit sie alle erreichen.

In dem in Abbildung 1 dargestellten Netzwerk befinden sich zwei Relais in Reichweite des Schalters, was notwendig ist, damit andere Schalter in derselben Schalttafel alle Beleuchtungsknoten erreichen können, die sie steuern müssen. Wenn der Bühnenbeleuchtungsschalter verwendet wird, werden Nachrichten gesendet, von beiden Relais empfangen und erneut gesendet, so dass die Nachrichten durch das Netzwerk sowohl in Richtung der Zielbeleuchtung als auch von ihr weg laufen.

Abbildung 1

Abbildung 1 - Konferenzsaal mit Bühnenbeleuchtung und mehreren Relaisknoten

Abbildung2

Abbildung 2 - Der Lichtschalter sendet eine Ein/Aus-Meldung

Abbildung3

Abbildung 3 - Zwei Relais empfangen die Nachricht und beide senden sie weiter

Dies ist eine Verschwendung, da die am weitesten von der Bühne entfernten Relais nicht zur Übermittlung von Meldungen vom Schalter an die Bühnenbeleuchtung beitragen und daher im Idealfall nicht beteiligt sein sollten.

1.5 Messaging-Kapazität und Skalierbarkeit

Wenn ein Gerät eine Nachricht sendet, nutzt es einen Funkkanal für eine gewisse Zeit. Ein anderes Gerät, das sich in Reichweite dieses ersten Geräts befindet, verursacht eine Kollision, wenn es zur gleichen Zeit eine Nachricht auf demselben Kanal sendet. In einem Teil eines Netzes, in dem sich alle Geräte in Reichweite befinden, gibt es daher eine endliche Nachrichtenkapazität, da alle übertragenen Nachrichten einen Funkkanal für eine bestimmte Zeitspanne nutzen und jeweils nur eine Nachricht sicher übertragen werden kann.

Der Zeitaufwand pro Nachricht ist gering und Bluetooth® Mesh nutzt drei Funkkanäle. Die Kapazität ist jedoch endlich und stellt letztlich einen begrenzenden Faktor für die Skalierbarkeit des Netzes dar.

1.6 Eine Bewertung von Bluetooth Mesh Managed Flooding

Bluetooth Mesh Managed Flooding ist ein System zur Verbreitung von Nachrichten in einem Netz. Es bietet Reichweite und Flächendeckung durch seine Multi-Hop-Fähigkeit, und in einem entsprechend konzipierten Netz mit sorgfältig platzierten Relais bietet es Redundanz durch sein Mehrweg-Relaisverhalten.

Die Zwischenspeicherung von Nachrichten und die Verwendung des TTL-Parameters ermöglichen eine gewisse Kontrolle darüber, wie weit die Nachrichten laufen, was eine gewisse Optimierung ermöglicht. Die Relais sind völlig unabhängig voneinander, d. h. es gibt keine Abhängigkeiten oder Konfigurationseinstellungen, die beibehalten werden müssen, wenn sich etwas ändert, z. B. wenn ein Gerät verlegt wird. In den meisten Fällen ist Bluetooth Mesh Managed Flooding eine zweckmäßige Lösung, die sehr wenig Wartung erfordert.

Die TTL kann zwar die Anzahl der Sprünge einer Nachricht begrenzen, aber keine Kontrolle über die Richtung einer Nachricht durch das Netz bieten. Bluetooth Mesh Managed Flooding führt dazu, dass Nachrichten in alle Richtungen über das Netz verteilt werden, so dass die begrenzte Nachrichtenkapazität in Teilen des Netzes, für die eine Nachricht nicht relevant ist, verschwenderisch genutzt werden kann.

Es gibt Netzwerkdesignszenarien, in denen Bluetooth Mesh Managed Flooding nicht die effizienteste Netzwerkauslastung bietet, die wir uns wünschen, und in einigen Fällen wird dadurch die Skalierbarkeit eingeschränkt.

Dies war die Hauptmotivation für die Bluetooth Mesh Directed Forwarding-Funktion, die mit der Bluetooth Mesh Feature Enhancements Version 1.1 eingeführt wurde.

2. Über Bluetooth Mesh Gezielte Weiterleitung

In diesem Abschnitt wird die Funktion Bluetooth Mesh Directed Forwarding beschrieben.

2.1 Fähigkeiten und Vorteile

2.1.1 Größere Skalierbarkeit durch verbesserte Auslastung

Bluetooth Mesh Directed Forwarding ermöglicht es, ein Netz so einzurichten, dass nur die Knoten, die in der Lage sind, an der Weiterleitung einer Nachricht an ihr Ziel teilzunehmen, dies auch tun. Umgekehrt wird ein Knoten, der Bluetooth Mesh Directed Forwarding verwendet, jede Nachricht ignorieren, die er nicht weiterleiten kann.

Knoten, die in der Lage sind, Bluetooth Mesh Directed Forwarding zu verwenden, wenn sie Nachrichten absetzen oder weiterleiten, werden Bluetooth Mesh Directed Forwarding-Knoten genannt. Diejenigen, die Nachrichten mit Bluetooth Mesh Directed Forwarding weiterleiten können, werden Bluetooth Mesh Directed Forwarding relay genannt. Ein Bluetooth Mesh Directed Forwarding-Relais ist immer ein Bluetooth Mesh Directed Forwarding-Knoten, aber ein Bluetooth Mesh Directed Forwarding-Knoten kann auch ein Bluetooth Mesh Directed Forwarding-Relais sein oder nicht. Welcher Begriff verwendet wird, hängt in der Regel vom jeweiligen Kontext ab.

Abbildung 4 zeigt, dass Nachrichten vom Lichtschalter für die Bühnenbeleuchtung im Beispiel des Konferenzsaals nur von einem der Bluetooth Mesh Directed Forwarding-Relais weitergeleitet werden, da es in der Lage ist, diese Nachrichten an ihr beabsichtigtes Ziel zu übermitteln. Im Gegensatz dazu ignoriert der andere Directed Forwarding Relay-Knoten in Reichweite des Schalters diese Nachrichten. Beachten Sie, dass der Lichtschalter in diesem Szenario als Bluetooth Mesh Directed Forwarding-Knoten fungiert.

Abbildung 4

Abbildung 4 - Bluetooth Mesh Gerichtete Weiterleitung

2.1.2 Leichtere Netzgestaltung und -inbetriebnahme

Der Entwurf und die Einrichtung(Inbetriebnahme) größerer Bluetooth® Mesh Netze, die Bluetooth Mesh Managed Flooding allein für die Nachrichtenausbreitung nutzen, kann sorgfältige Überlegungen darüber erfordern, wie viele Knoten als Relais konfiguriert und wo sie platziert werden sollen. Wenn zu viele Knoten als Relais fungieren, wird im Netz mehr Verkehr als nötig erzeugt, das Risiko von Kollisionen ist höher und die Skalierbarkeit eingeschränkt. Wenn zu wenige Knoten als Relais fungieren, kann es zu Kommunikationsproblemen kommen, da einige Knoten unerreichbar sind oder es an Redundanz im Entwurf mangelt.

Die Aktivierung der Verwendung von Bluetooth Mesh Directed Forwarding erfordert bei der Inbetriebnahme des Netzes nur wenig Aufwand. Alle Knoten können für die Verwendung von Bluetooth Mesh Directed Forwarding konfiguriert werden und müssen lediglich eine Reihe von Bluetooth Mesh Directed Forwarding-Richtlinienparametern einstellen, woraufhin das System die erforderlichen Kommunikationspfade selbst verwaltet und optimiert.

2.2 Technische Highlights

2.2.1 Das Bluetooth Mesh Directed Forwarding Configuration Server-Modell

Es wurde ein neues Basismodell mit der Bezeichnung Bluetooth Mesh Directed Forwarding Configuration Server-Modell eingeführt. Es enthält einen zusammengesetzten Zustand namens Directed Control, der eine Reihe von Unterzuständen wie den Bluetooth Mesh Directed Forwarding-Status und den Directed Relay-Status umfasst. Diese Zustände zeigen an und steuern, ob Bluetooth Mesh Directed Forwarding bzw. die Directed Relay-Funktionalität aktiviert ist oder nicht. In Anbetracht der Beziehung zwischen diesen beiden Funktionen ist der Zustand "Directed Relay" an den Zustand " Bluetooth Mesh Directed Forwarding" gebunden, so dass, wenn die Funktion "Directed Forwarding" deaktiviert ist, dies auch für die Funktion "Directed Relay" gilt.

Das Vorhandensein oder Fehlen des Bluetooth Mesh Directed Forwarding Configuration Server-Modells bestimmt, ob ein Knoten das Potenzial hat, Bluetooth Mesh Directed Forwarding zu verwenden. Der Wert des Status " Directed Control " bestimmt, welche Bluetooth Mesh Directed-Forwarding-Funktionen aktiviert oder deaktiviert sind.

2.2.2 Pfade

Die selektive Beteiligung von Bluetooth Mesh Directed Forwarding-Relais-Knoten an der Weiterleitung nur bestimmter Nachrichten und nicht anderer, beinhaltet die Konzepte von Pfaden und Fahrspuren. Es ist anzumerken, dass in Version 1.0 des Bluetooth® Mesh Profils der Begriff Pfad informell verwendet wurde. Wenn er im Zusammenhang mit Bluetooth Mesh Directed Forwarding verwendet wird, hat Pfad eine spezifischere Bedeutung:

Ein Pfad ist ein Satz von Knoten, die an der Weiterleitung einer Nachricht von einer Quelladresse zu einer Zieladresse über ein bestimmtes Subnetz mit Bluetooth Mesh Directed Forwarding teilnehmen können.

Die Quelle eines Pfades ist immer ein einzelner Knoten, der durch eine Unicast-Adresse identifiziert wird. Im Kontext von Bluetooth Mesh Directed Forwarding wird der Quellknoten als Pfadursprung bezeichnet.

Das Ziel eines Pfades ist ein Satz von einem oder mehreren Knoten, je nachdem, welcher Adresstyp verwendet wird. Unicast-Adressen, Gruppenadressen und virtuelle Adressen sind alle gültige Bezeichner für das Ziel eines Pfades. Wenn das Ziel durch eine Gruppen- oder virtuelle Adresse identifiziert wird, dann wird ein Knoten, der diese Adresse abonniert, als Pfadziel bezeichnet. In der Sprache von Bluetooth Mesh Directed Forwarding hat ein Pfad also einen einzelnen Pfadursprungsknoten und einen oder mehrere Pfadzielknoten.

Ein Bluetooth Mesh Directed Forwarding-Knoten weiß, zu welchen Pfaden er gehört, aber er weiß nichts anderes über andere Knoten, die denselben Pfad bedienen, einschließlich der Knoten, die ihm in der Reihenfolge der Nachrichtenweiterleitung vorausgehen oder folgen könnten. Dadurch wird sichergestellt, dass das System komplizierte Konfigurationsabhängigkeiten vermeidet, die die Wartung des Netzes schwierig, zeitaufwändig oder kostspielig machen würden, und als solches behält Bluetooth Mesh Directed Forwarding einen der Vorteile der einfacheren Bluetooth Mesh Managed Flooding-Methode bei.

Es folgt eine Reihe von Abbildungen. Abbildung 5 enthält einen Schlüssel zu den verwendeten Symbolen.

Abbildung5

Abbildung 5 - Schlüssel zu den Illustrationen

Abbildung 6 zeigt einen einfachen Bluetooth Mesh gerichteten Weiterleitungspfad, bei dem ein Lichtschalter als Pfadursprung und eine einzelne Leuchte als einziger Pfadzielknoten fungiert.

Bild6

Abbildung 6 - Pfad mit einem einzigen Zielknoten

Die roten Symbole in Abbildung 6 stellen Bluetooth Mesh gerichtete Weiterleitungsrelais dar, die Teil des Pfades vom Schalterknoten zum Beleuchtungsknoten sind, der die vom Schalter verwendete Veröffentlichungsadresse abonniert hat. Wenn der Schalter seine Ein-/Aus-Nachricht veröffentlicht, wird sie sowohl von dem roten Knoten, der sich auf dem Pfad befindet, als auch von den benachbarten Directed-Relay-Knoten (lila), die sich nicht auf dem Pfad befinden, empfangen. Der rote Knoten weiß, dass er sich auf dem erforderlichen Pfad befindet, und leitet die Nachricht daher über Bluetooth Mesh Directed Forwarding weiter. Die violetten Knoten wissen, dass sie nicht Teil dieses Pfades sind und verwerfen daher sofort die Ein/Aus-Nachricht. Dadurch wird verhindert, dass die Nachricht weiter in Teile des Netzes gelangt, für die sie nicht relevant ist.

Gruppenadressen und virtuelle Adressen können und werden normalerweise von mehr als einem Knoten abonniert. Ein Pfad, dessen Ziel eine Gruppenadresse ist, hat in der Regel mehr als einen Pfadzielknoten. Abbildung 7 zeigt ein Beispiel für einen Pfad, der die Kommunikation zwischen einem Lichtschalter und einer Reihe von Leuchten entlang einer Ecke einer großen Halle abwickelt, die alle die Gruppenadresse des Pfades abonniert haben.

Bild7

Abbildung 7 - Pfad mit mehreren Zielknoten

Wiederum veröffentlicht der Vermittlungsknoten eine Ein/Aus-Nachricht, die von allen Bluetooth Mesh Directed Forwarding-Relais, die sich in Reichweite befinden, empfangen wird. Nur diejenigen, die wissen, dass sie sich auf dem Pfad von der Unicast-Adresse des Vermittlungsknotens (dem Pfadursprung) zu Knoten befinden, die die Gruppenzieladresse des Pfades abonniert haben (Pfadzielknoten), senden die Nachricht erneut. Andere Bluetooth Mesh Directed Forwarding-Knoten, die nicht auf diesem Pfad liegen, verwerfen die Nachricht. Es ist klar, dass Bluetooth Mesh Directed Forwarding in Szenarien wie diesen erhebliche Effizienzsteigerungen bietet.

Wie Pfade erstellt und gepflegt werden, wird in späteren Abschnitten behandelt.

Im Gegensatz dazu zeigt Abbildung 8 dieselbe Nachricht, die vom Switch an eine Gruppenadresse veröffentlicht wurde, aber über Bluetooth Mesh Managed Flooding-Relais mit einem TTL-Wert von 4 zugestellt wird, um sicherzustellen, dass die Nachricht über genügend Hops alle vorgesehenen Knoten erreicht.

Bild8

Abbildung 8 - Bluetooth Mesh Verwaltete Überflutung

Zum einfachen Vergleich sind die Abbildungen 7 und 8 hier nebeneinander dargestellt:

Bild7

Bluetooth Mesh Gezielte Weiterleitung

Bild8

Bluetooth Mesh Gesteuerte Überflutung

 

2.2.3 Verlässlichkeit

Ein Pfad wurde bereits als eine Gruppe von Knoten beschrieben, die einen Bluetooth Mesh gerichteten Weiterleitungsdienst für eine Quelladresse, eine Zieladresse und ein Teilnetz bereitstellen. Anhand der Abbildungen 6 und 7 wird deutlich, dass ein Pfad bei der Zustellung einer Nachricht im Allgemeinen aus einer Reihe von Knotensequenzen besteht, über die Kopien der Nachricht auf ihrem Weg zu den verschiedenen Zielknoten in unterschiedlichen Teilen des Netzes weitergeleitet werden.

Was aber, wenn es in einer oder mehreren dieser Knotenfolgen eine Unterbrechung gibt? Wenn einer der gerichteten Relaisknoten in einer der Knotensequenzen in einem Pfad aus irgendeinem Grund eine Nachricht nicht verarbeitet, wäre dieser Teil des Pfades natürlich nicht in der Lage, Nachrichten an eine Teilmenge der Zielknoten zu übermitteln. In einem Szenario wie dem in Abbildung 7 dargestellten würde dies bedeuten, dass die Lampen in einem Teil des Raums nicht auf die vom Schalter gesendete Nachricht reagieren würden.

Alle Bluetooth® Mesh Knoten verbringen einen Teil ihrer Zeit mit dem Senden von Nachrichten, einen Teil ihrer Zeit mit dem Warten auf den Empfang von Übertragungen anderer Knoten (Mithören auf jeweils einem Funkkanal) und die restliche Zeit im Ruhezustand. Wenn ein Knoten sendet oder sich im Leerlauf befindet, kann er keine Nachrichten empfangen, die von benachbarten Knoten während dieser Zeitspanne gesendet werden. Wenn er einen anderen Funkkanal abhört als den, auf dem eine PDU übertragen wurde, kann er die Nachricht ebenfalls nicht empfangen.

Der Anteil der Zeit, in der ein Knoten für den Empfang von Nachrichten zur Verfügung steht, wird als RX-Tastverhältnis bezeichnet und in Prozent ausgedrückt. Es wird empfohlen, die Produkte von mesh so zu konzipieren und zu konfigurieren, dass der RX-Duty-Cycle so hoch wie möglich ist, aber er wird nie 100 Prozent betragen. Daher besteht immer die Möglichkeit, dass ein Knoten eine PDU nicht empfängt. Dies ist ein erwarteter Aspekt des Betriebs eines Bluetooth Mesh Netzwerks und ein grundlegendes Merkmal des stochastischen Ansatzes, auf den die Bluetooth Mesh Technologie ausgelegt ist.

Bluetooth Mesh Die Knoten übertragen in der Regel Kopien von Nachrichten auf drei verschiedenen Funkkanälen, einen nach dem anderen, in schneller Folge. Darüber hinaus ist es üblich, dass die Knoten so konfiguriert sind, dass sie den Übertragungsvorgang über mehrere Kanäle mehrmals wiederholen. Die Verwendung mehrerer Funkkanäle trägt dazu bei, das Risiko von Paketkollisionen zu vermindern, und die mehrfache Wiederholung der Nachrichtenübertragung verringert die Wahrscheinlichkeit, dass die beabsichtigten Empfänger eine Nachricht verpassen, auf eine sehr geringe Wahrscheinlichkeit. Auf diese Weise bietet Bluetooth Mesh durch die Nutzung einer Reihe von Variablen, die sich auf die Wahrscheinlichkeit einer erfolgreichen Kommunikation zwischen Knoten auswirken, eine zuverlässige Kommunikation ohne die Belastung durch die Komplexität der Protokolle und der Konfiguration, unter der andere Ansätze im Allgemeinen leiden.

Bluetooth Mesh Directed Forwarding verwendet mehrere Funkkanäle und die erneute Übertragung von PDUs auf der Netzwerkebene auf die gleiche Weise wie andere Nachrichtenszenarien und genießt daher die gleichen Zuverlässigkeitsvorteile. Es kann aber auch andere Gründe dafür geben, dass eine Knotenfolge nicht verfügbar ist oder nicht funktioniert. So können Knoten beispielsweise ausgeschaltet oder an einen anderen Standort verlegt werden. Bluetooth Mesh Directed Forwarding bietet den Entwicklern von mesh eine zusätzliche Funktion, mit der die Zuverlässigkeit des Netzwerks gewährleistet werden kann. Diese Funktion ist der mehrspurige Bluetooth Mesh Directed Forwarding-Pfad.

2.2.4 Bluetooth Mesh Directed Forwarding Path Resilience and Lanes

Die Funktion Bluetooth Mesh Directed Forwarding definiert das Konzept einer Lane. Ein Bluetooth Mesh Directed Forwarding-Pfad besteht aus einer oder mehreren Lanes.

Eine Lane ist eine Gruppe von Knoten, die einen Bluetooth Mesh gerichteten Weiterleitungsdienst für eine Quelladresse, eine Zieladresse und ein Subnetz anbieten können.

Diese informelle Definition sollte bereits aus 2 bekannt sein, wo sie zur Beschreibung eines Pfades verwendet wurde. Dies ist kein Fehler. Oft wird es eine Auswahl verschiedener Knotenfolgen geben, über die eine Nachricht von ihrer Quelle zu ihrem Ziel weitergeleitet werden kann. Eine Lane ist ein bestimmter Satz von Knotenfolgen, die diesen Bluetooth Mesh gerichteten Weiterleitungsdienst bereitstellen können. Um die Zuverlässigkeit des Pfades zu maximieren, kann ein Knoten so konfiguriert werden, dass bei der Erstellung eines Pfades mit ihm als Pfadursprung ein Pfad mit mehr als einer Lane eingerichtet wird.

Betrachten Sie Abbildung 6, die unten neben Abbildung 9 wiederholt wird.

Bild6Abbildung 6 - Trasse mit einer Fahrspur

Abbildung9

Abbildung 9 - Die gleiche Strecke mit zwei Fahrspuren

 

Abbildung 6 zeigt einen Pfad mit einer einzigen Spur, die die gerichtete Weiterleitung von Nachrichten vom Switch zu einem Beleuchtungsknoten ermöglicht. Abbildung 9 zeigt einen äquivalenten Pfad, der eine gerichtete Weiterleitung an dieselbe Quell- und Zieladresse bietet, für den jedoch zwei Fahrspuren eingerichtet wurden. Das in Abbildung 9 dargestellte Netz ist zuverlässiger als das in Abbildung 6 gezeigte, da es Redundanz in Form mehrerer möglicher Reihenfolgen von Bluetooth Mesh Directed Forwarding-Relais enthält, die eine Nachricht an ihr Ziel zustellen können. Es wird jedoch insgesamt mehr Verkehr im Netz erzeugen.

2.2.5 Trassenmetriken und Fahrspurauswahl

Oft gibt es mehr als eine Sequenz von Bluetooth Mesh Directed Forwarding-Relais, die einen Pfad bedienen könnten. Daher wird eine Methode definiert, die auf einem System von Pfadmetriken basiert, um die verfügbaren Knotensequenzen während der Pfaderstellung einzustufen.

In Version 1.1 der Bluetooth® Mesh Protokollspezifikation ist eine Art von Pfadmetrik definiert, aber es wurde die Möglichkeit vorgesehen, dem System in Zukunft weitere Arten von Metriken hinzuzufügen. In dieser Version wird die Pfadmetrik, die definiert ist, als Knotenzählungsmetrik bezeichnet. Dies ist ein einfaches, aber effektives Verfahren zur Messung der Attraktivität einer bestimmten Knotenfolge als Teil eines Pfades im Vergleich zu alternativen Knotenfolgen.

Die Knotenanzahlmetrik misst die Anzahl der Sprünge, die eine Nachricht durchlaufen muss, um einen Zwischenrelais- oder Zielknoten zu erreichen, addiert mit einer Zählung der Anzahl der Lanes (die zu diesem Pfad gehören), zu denen der Knoten gehört. Auf diese Weise verlieren die bestehenden Pfade bei jeder Iteration des Verfahrens an Attraktivität, so dass neue Pfade geschaffen werden.

Pfadmetriken werden bei der Erstellung von Pfaden und Fahrspuren verwendet, nicht aber bei der Weiterleitung von mesh Zugangsmeldungen durch das Netz unter Verwendung von Bluetooth Mesh Directed Forwarding. Wie Pfade und Fahrspuren erstellt werden und welche Rolle die Pfadmetriken dabei spielen, wird im Folgenden untersucht.

2.2.6 Wege und Fahrspuren anlegen

Pfade werden entweder manuell mit einem Configuration Manager Tool erstellt oder dynamisch durch die Ausführung einer Reihe automatisierter Verfahren ermittelt und eingerichtet. Manuell erstellte Pfade werden als feste Pfade und dynamisch erstellte Pfade als nicht feste Pfade bezeichnet.

Das Bluetooth Mesh Directed Forwarding Configuration Server-Modell enthält einen wichtigen Status, die sogenannte Weiterleitungstabelle. Einträge in der Weiterleitungstabelle zeigen die Pfade an, zu denen der Knoten gehört, und es ist die Weiterleitungstabelle, die beim Erstellen fester Pfade manuell aktualisiert wird.

Jeder Bluetooth Mesh Directed Forwarding-Knoten verfügt außerdem über eine Datenstruktur, die so genannte Discovery Table. In dieser Tabelle werden während des automatischen Pfadermittlungsprozesses temporäre Einträge erstellt, die bei der Identifizierung der Knotenfolgen helfen, die eine Fahrspur eines Pfades bilden werden.

Nicht festgelegte Pfade werden zunächst erstellt, wenn Bluetooth Mesh gerichtete Weiterleitung verwendet werden soll, um eine Nachricht von einer Quelladresse zu einer Zieladresse zuzustellen, für die der Quellknoten jedoch keinen Eintrag in seiner Weiterleitungstabelle hat.

Drei Prozeduren namens Bluetooth Mesh Directed Forwarding Initialization, Bluetooth Mesh Directed Forwarding Discovery und Bluetooth Mesh Directed Forwarding Establishment müssen ausgeführt werden, damit ein Pfad erstellt werden kann.

Die Trassenerstellung und -pflege wird durch eine Reihe von Zeitgebern und Zustandswerten in Übereinstimmung mit einer Zustandsmaschine, der Path Origin State Machine, gesteuert. Wie der Name schon sagt, wird dieser wichtige zusammengesetzte Zustand während der Bluetooth Mesh Directed Forwarding-Initialisierung durch den Ursprungspfadknoten erstellt. Ein Identifikator, die so genannte Weiterleitungsnummer, wird ebenfalls während der Bluetooth Mesh Directed Forwarding-Initialisierung zugewiesen, und alle Kontrollnachrichten, die sich auf eine Reihe von Initialisierungs-, Ermittlungs- und Einrichtungsprozeduren beziehen, haben denselben Weiterleitungsnummernwert.

Nach der Erstellung des Zustandsautomaten für den Trassenursprung und dem Start des Zeitgebers für die Trassenfindung sendet der Trassenursprung eine Kontrollmeldung PATH_REQUEST. Diese Meldung wird mit einem DST-Feld (Zieladresse) gesendet, das auf eine neue feste Gruppenadresse ( all-directed-forwarding-nodes) eingestellt ist. Die PATH_REQUEST-Meldung enthält ein weiteres Feld namens Destination (Ziel), das auf die Adresse des Trassenziels eingestellt ist und eine Unicast-, Gruppen- oder virtuelle Adresse sein kann.

Bluetooth Mesh Die Erkennung der gerichteten Weiterleitung läuft so ab, dass die PATH_REQUEST-Nachricht vom Trassenursprung übertragen und dann von jedem Bluetooth Mesh gerichteten Weiterleitungsrelais, das sie empfängt, neu generiert und erneut gesendet wird. Auf diese Weise wird die PATH_REQUEST-Nachricht letztendlich von allen Directed Forwarding-Relais im Netz empfangen.

Knoten, die eine PATH_REQUEST empfangen, bei der der Indikator für die empfangene Signalstärke (RSSI) niedriger ist als ein konfigurierter Schwellenwert, verwerfen die Nachricht. Dadurch wird sichergestellt, dass keine Pfade über schwache Funkverbindungen erstellt werden.

Da die Kopien der PATH_REQUEST-Nachricht die verschiedenen Knotensequenzen durchlaufen, wird ein metrischer Pfadwert in der Nachricht beibehalten, so dass die Kosten für das Erreichen jedes Knotens im Verlauf des Entdeckungsverfahrens verfolgt werden können.

Das erste Mal, wenn ein Knoten eine PATH_REQUEST-Nachricht für eine Weiterleitungsnummer empfängt, wird ein Eintrag in seiner Discovery-Tabelle erstellt. Der Eintrag enthält die Identität des zu erstellenden Pfades und die Pfadmetrik, die die mit der Knotenfolge verbundenen Kosten darstellt, die bei dieser Gelegenheit vom Pfadursprung zu diesem Knoten genommen wird. Darüber hinaus - und das ist wichtig für das Verfahren zur Einrichtung der gerichteten WeiterleitungBluetooth Mesh - wird die Unicast-Adresse des Knotens, der diesem Knoten in dieser bestimmten Knotenfolge vorausging, in einem Feld namens Next_Toward_Path_Origin gespeichert.

Wenn PATH_REQUEST-Nachrichten von Knoten empfangen werden, die während desselben Entdeckungsverfahrens bereits über eine andere Knotenfolge besucht wurden, wird die Entdeckungstabelle konsultiert, um festzustellen, ob die von der PATH_REQUEST-Nachricht bei dieser Gelegenheit genommene Knotenfolge besser ist als die bisher beste gefundene oder nicht. Ist die Pfadmetrik für die Sequenz, die diese PATH_REQUEST-Instanz genommen hat, niedriger als der in der Entdeckungstabelle aufgezeichnete Wert, wird der Eintrag in der Entdeckungstabelle aktualisiert, um die Unicast-Adresse des vorherigen Knotens in dieser neuen Sequenz in Next_Toward_Path_Origin und den neuen und niedrigeren Pfadmetrikwert aufzunehmen. Auf diese Weise wird in der Entdeckungstabelle jedes Knotens, der während der Entdeckung besucht wird, eine Aufzeichnung der besten Knotensequenz, ausgedrückt durch den Pfadidentifikator, die Pfadmetrik und die Unicast-Adresse des vorherigen Knotens in der Sequenz, geführt.

Erreicht eine PATH_REQUEST-Nachricht einen Pfad-Zielknoten (einen Knoten, der die Adresse im Feld Destination abonniert hat), wird ein Timer, der sogenannte Path Reply Timer, gestartet. Wenn dieser Timer abläuft, beginnt das Verfahren zur Einrichtung der gerichteten WeiterleitungBluetooth Mesh . Diese Prozedur ergänzt oder aktualisiert einen Eintrag in der Weiterleitungstabelle, um die Tatsache festzuhalten, dass dieser Knoten Teil der neu entdeckten Spur dieses Pfades ist. Eine PATH_REPLY-Nachricht wird dann an den Knoten gesendet, dessen Unicast-Adresse im Feld Next_Toward_Path_Origin des Entdeckungstabelleneintrags enthalten ist. PATH_REPLY-Nachrichten hüpfen über die Zwischenrelais in der ausgewählten Knotenfolge zurück zum Ursprungspfadknoten, wobei sie Weiterleitungstabelleneinträge erstellen oder aktualisieren, bis die Nachricht am Ursprungspfad selbst ankommt.

Eine Instanz des Zeitgebers für die Trassenermittlung, die auf jedem besuchten Knoten läuft, läuft ab, bevor der Vorgang der Trassenermittlung abgeschlossen ist, und wenn dies geschieht, wird der zugehörige Eintrag in der Ermittlungstabelle jedes Knotens gelöscht. Die Weiterleitungstabellen jedes ausgewählten Knotens enthalten nun einen Eintrag für den eingerichteten Pfad, der lediglich anzeigt, daß jeder dieser Knoten diesen Pfad bedient. Es ist zu beachten, daß die Weiterleitungstabelle keine Daten enthält, die den nächsten oder vorherigen Knoten in der Sequenz angeben. Die Adresse des vorherigen Knotens wurde nur für die Einrichtung des Pfades benötigt und daher nur vorübergehend in der Entdeckungstabelle gespeichert.

Abbildung 10

Abbildung 10 - Bluetooth Mesh Directed Forwarding Discovery and Establishment

Zusammenfassend lässt sich sagen, dass bei der Pfadermittlung PATH_REQUEST-Nachrichten jede mögliche Folge von Bluetooth Mesh Directed Forwarding-Knoten im Netz durchlaufen, beginnend mit dem Pfadursprung. Die metrischen Pfadwerte der besten bisher entdeckten Sequenzen werden in der Entdeckungstabelle jedes Knotens notiert, während das Verfahren ausgeführt wird. Ausgehend von Pfadzielknoten wird die Knotenfolge, die zu diesem Knoten führt und den besten Pfadmetrikwert ergab, durch PATH_REPLY-Nachrichten zurückverfolgt, die entlang der Knoten in dieser Folge nur unter Verwendung der in den Entdeckungstabellen gespeicherten Unicast-Adresse Next_Toward_Path_Origin hüpfen, bis sie den Pfadursprungknoten erreichen, an dem eine einzelne Spur des gewünschten Pfades als eingerichtet gelten kann.

Abbildung 11 veranschaulicht die Entdeckungs- und Einrichtungsverfahren in Form der Reisen von PATH_REQUEST- und PATH_REPLY-Nachrichten durch das Netz bei der Erstellung eines Pfades von einem Switch (als grünes Symbol dargestellt) und einem einzelnen Lichtknoten (als gelbes Symbol dargestellt).

Ein als "Wanted Lanes" bezeichneter Konfigurationsstatus gibt an, wie viele Fahrspuren ein Pfad haben sollte. Wenn der Zeitgeber für die Trassenermittlung am Ursprungsknoten abläuft, wird die Anzahl der gewünschten Fahrspuren mit der Anzahl der bisher eingerichteten Fahrspuren verglichen, und erforderlichenfalls werden die Ermittlungs- und Einrichtungsverfahren erneut ausgeführt. Bei jeder nachfolgenden Iteration dieser Prozeduren wird ein als Lane Counter bezeichnetes Feld inkrementiert, und wenn eine PATH_REQUEST-Nachricht von einem Knoten verarbeitet wird, der bereits einen Eintrag in der Forwarding Table für diesen Pfad hat, wird der Lane Counter zum Wert der Pfadmetrik hinzugefügt. Auf diese Weise werden zuvor eingerichtete Fahrspuren, die erneut besucht werden, bei jeder Iteration der Pfadermittlung mit progressiv höheren Metrikwerten belegt. Dies führt dazu, dass andere Knotensequenzen im Vergleich zu den etablierten Fahrspuren attraktiver werden und schließlich ausgewählt werden. Darüber hinaus werden aufgrund der Funktionsweise des Systems der Pfadmetrik disjunkte Fahrspuren im Allgemeinen bevorzugt.

2.2.7 Überwachung und Instandhaltung der Trassen

Die Netze ändern sich, so dass die Pfade und ihre Fahrspuren gepflegt werden müssen. Zu diesem Zweck werden mehrere Verfahren und Zeitgeber für die automatische Pfadpflege eingesetzt.

Alle nicht fixierten Pfade haben eine endliche Lebensdauer, die in einem Konfigurationsstatus definiert ist. Unterstützte Werte sind 12 Minuten, 2 Stunden, 24 Stunden und 10 Tage. Die Standardlebensdauer für einen Pfad beträgt 24 Stunden.

Festgelegte Pfade bleiben so lange bestehen, bis sie mit Hilfe der Anwendung Konfigurationsmanager entfernt werden.

Pfad Lebenszeit

Die Lebensdauer nicht fester Pfade wird über einen Zeitgeber, den so genannten Path Lifetime Timer, verwaltet, der auf den konfigurierten Pfadlebensdauer-Statuswert gesetzt und auf jedem Knoten während der Pfadeinrichtung initialisiert wird. Wenn der Timer abläuft, wird der Eintrag in der Weiterleitungstabelle für den Pfad an jedem Knoten auf dem Pfad gelöscht. Der Pfad wird neu erstellt, wenn er das nächste Mal benötigt wird.

Trassenüberwachung

Die Path Origin State Machine ist mit einem bestimmten Bluetooth Mesh Directed Forwarding-Ziel verbunden und definiert eine Reihe von Zeitgebern und Zuständen, einschließlich des Zeitgebers für die Trassenüberwachung und des Zustands " Path Needed". Der Zustand " Pfad benötigt" wird verwendet, um zu verfolgen, ob ein Pfad von einem Pfadursprung verwendet wird oder nicht.

Die Trassenüberwachung erfolgt für einen bestimmten Zeitraum in bestimmten, konfigurierten Abständen.

Wenn der Zeitgeber für die Trassenüberwachung abläuft und die Trassenüberwachung ergeben hat, dass die Trasse noch benötigt wird, wird die Initialisierungsprozedur Bluetooth Mesh Directed Forwarding durchgeführt, so dass die Trasse entsprechend dem aktuellen Zustand des Netzes aufgefrischt wird. Ist dies nicht der Fall, wird der Pfad gelöscht, wenn der Timer für die Lebensdauer des Pfades abläuft.

Die Pfadüberwachung identifiziert und löscht Pfade, die nicht mehr benötigt werden.

Pfad-Validierung

Das Echo-Verfahren Bluetooth Mesh Directed Forwarding ist ein weiteres zeitgesteuertes Verfahren. Der Pfad-Echo-Timer wird am Pfad-Ursprungs-Knoten eingerichtet, wenn ein Pfad eingerichtet worden ist. Wenn dieser Zeitgeber abläuft, sendet der Ursprungspfad eine PATH_ECHO_REQUEST-Nachricht an die Zieladresse des Pfades. Die PATH_ECHO_REQUEST wird an die Trassenzielknoten weitergeleitet. Beim Empfang einer PATH_ECHO_REQUEST an einem Zielknoten wird eine PATH_ECHO_REPLY an den Trassenursprung zurückgesendet. Der Empfang dieser Nachricht am Trassenursprung innerhalb eines konfigurierten Zeitlimits validiert die Trasse. Wird am Ursprungspfad keine Echoantwort empfangen, wird der Pfad ungültig und aus der Weiterleitungstabelle des Ursprungspfads gelöscht.

Die Pfadvalidierung mit dem Echo-Verfahren Bluetooth Mesh Directed Forwarding prüft, ob ein Pfad noch funktionsfähig ist.

Änderungen im Abonnement

Wenn ein Bluetooth Mesh Directed Forwarding-Knoten eine neue Adresse abonniert oder wenn ein abhängiger Knoten (siehe ), z. B. ein Knoten mit geringer Leistung, eine neue Adresse abonniert, wird das Bluetooth Mesh Directed Forwarding-Aufforderungsverfahren durchgeführt. Dieses Verfahren bewirkt, dass ein Pfad aktualisiert wird, um diesen Knoten einzuschließen, der zu einem zusätzlichen Zielknoten im Pfad wird.

Selbst-Organisation und Optimierung

Die Überwachungs- und Wartungsverfahren sorgen dafür, dass unterbrochene Pfade automatisch erkannt und wiederhergestellt werden. Dies ist ein Beispiel für selbstorganisierendes Verhalten in einem Bluetooth® Mesh Netzwerk.

Metriken werden verwendet, um bei der Einrichtung von Pfaden die besten verfügbaren Knotenfolgen auszuwählen. Je mehr Fahrspuren ein Knoten einnimmt, desto weniger kann er die beste Option für einen oder mehrere der von ihm unterstützten Pfade sein. Die periodische Entfernung von Pfaden am Ende ihrer Lebensdauer und ihre anschließende Wiederherstellung bedeutet, dass die Pfade und ihre Fahrspuren immer die besten verfügbaren Pfadmetriken darstellen. Bluetooth Mesh Directed Forwarding-Pfade sind selbstorganisierend und selbstoptimierend

2.2.8 Zugriffsnachrichten

Zugangsnachrichten sind Nachrichtentypen, die als Teil von Client- und Servermodellen definiert sind und auf die Statuswerte des Modells einwirken. Zugriffsnachrichten können entweder durch Bluetooth Mesh Managed Flooding oder durch Bluetooth Mesh Directed Forwarding über das Netz übermittelt werden. Der Zustand der Directed Publish Policy gibt an, welche der beiden Methoden verwendet werden soll.

Alle Zugangsnachrichten werden auf der Netzebene durch Sicherheitsmaterial gesichert, das aus einem Verschlüsselungsschlüssel und einem Geheimhaltungsschlüssel besteht. Das verwendete Sicherheitsmaterial wird durch das NID-Feld identifiziert. Aus demselben NetKey kann eine Reihe verschiedener Sicherheitsmaterialien unter Verwendung unterschiedlicher Parameter für die Sicherheitsfunktion k2 erzeugt werden. Diese Sicherheitsmaterialien werden für unterschiedliche Zwecke verwendet. Das Material Bluetooth Mesh Managed Flooding wird für alle Nachrichten verwendet, die über das mit seinem NetKey verbundene Subnetz gesendet werden, mit Ausnahme einiger Sonderfälle. Das Friendship-Sicherheitsmaterial wird beispielsweise zur Sicherung von PDUs verwendet, die von befreundeten Knoten und ihren abhängigen Low-Power-Knoten ausgetauscht werden.

Um den Relaisknoten anzuzeigen, dass Bluetooth Mesh Directed Forwarding verwendet werden soll, werden Netzwerk-PDUs durch den Pfadursprung mit Sicherheitsmaterial gesichert, das als gerichtetes Sicherheitsmaterial bekannt ist .

Die Formeln zur Berechnung der Sicherheitsmaterialien Bluetooth Mesh Managed Flooding und Bluetooth Mesh Directed Forwarding lauten wie folgt:

verwaltetes Hochwassersicherheitsmaterial

NID || EncryptionKey || PrivacyKey = k2(NetKey, 0x00)

gerichtete Weiterleitung von Sicherheitsmaterial

NID || EncryptionKey || PrivacyKey = k2(NetKey, 0x02)

Wie man sieht, unterscheiden sich die beiden Formeln nur im Wert des zweiten Parameters. Die Funktion k2 ist in der Protokollspezifikation Bluetooth® Mesh definiert.

2.2.9 Bildung von Fahrspuren vs. Nutzung von Fahrspuren

Wenn eine Zugangsnachricht veröffentlicht und Bluetooth Mesh Directed Forwarding als Zustellungsmethode gewählt wird, können alle Knoten in allen Lanes des Pfades verwendet werden. Die Nachricht wird vom Pfadursprung gesendet und von jedem Bluetooth Mesh Directed Forwarding-Relais-Knoten, der sich auf dem Pfad und in Reichweite befindet, weitergeleitet, unabhängig von der Lane, in der er sich während der Pfadermittlung und -einrichtung befunden hat. Durch die Hinzufügung von Fahrspuren werden der Gruppe von Knoten, die den Pfad bilden und bedienen, lediglich zusätzliche Knoten hinzugefügt, und bei der Übermittlung von Zugangsnachrichten spielt die Unterscheidung zwischen Fahrspuren keine Rolle mehr. Dies hat eine positive Folge.

Bei den Verfahren zur Trassenerstellung werden Sequenzen von Knoten identifiziert, die die Zustellung von Nachrichten von einem Trassenausgangsknoten zu einem oder mehreren Trassenzielknoten übernehmen können. Knotenfolgen werden in einer oder mehreren Iterationen der Entdeckungs- und Einrichtungsverfahren identifiziert, die jeweils sequentiell ausgeführt werden. Wir können uns vorstellen, dass jede Bahn verschiedene Sätze von Knotenfolgen enthält, die dieselbe Quelle und dasselbe Ziel bedienen. Doch wie bereits erwähnt, wird diese Unterscheidung hinfällig, wenn Bluetooth Mesh Directed Forwarding zur Übermittlung einer Zugangsnachricht verwendet wird. Die Fahrspuren des Pfades arbeiten als eine einzige, größere Gruppe von Knoten, die eine Nachricht an ihr Ziel weiterleiten können. Folglich kann es mehr verschiedene Sequenzen von Knoten geben, die bei der Zustellung einer Zugangsnachricht zur Verfügung stehen, als bei der Ermittlung und Einrichtung des Pfades explizit festgelegt wurden.

Abbildung11

Abbildung 11 - Trassennutzung bei der Zustellung von Zugangsmeldungen

Abbildung 11 zeigt einen Pfad von Knoten A zu Knoten J. Es waren zwei Spuren erforderlich, und die Verfahren zur Ermittlung und Einrichtung identifizierten die Knotenfolgen A/D/E/J und A/X/W/F/G/J. Die Knoten D und X befinden sich jedoch in gegenseitiger Reichweite, so dass, wenn A eine an J adressierte Nachricht veröffentlicht und Bluetooth Mesh Directed Forwarding verwendet, Kopien der Nachricht entweder über A/D/X/W/F/G/J oder A/X/D/E/J. Dies bedeutet, dass ein mehrspuriger Pfad eine noch größere Redundanz und damit eine noch größere Zuverlässigkeit bietet, als es auf den ersten Blick den Anschein haben mag.

2.2.10 Abhängigkeit von Knotenpunkten

Das Konzept der Knotenabhängigkeit beschreibt eine Beziehung zwischen Knoten unterschiedlicher Art, bei der ein Knoten als unterstützender Knoten fungiert und einen Dienst für einen oder mehrere andere abhängige Knoten bereitstellt. So fungieren z. B. Freundschaftsknoten als unterstützende Knoten für Knoten mit geringer Leistung, die in dieser Beziehung abhängige Knoten sind. Ein Freundschaftsknoten erbringt einen Dienst für abhängige Knoten mit geringer Leistung, indem er als Zwischenspeicher für an ihn gerichtete Nachrichten fungiert. Die energiearmen Knoten holen diese Nachrichten vom Freund ab, wenn sie es für richtig halten, und sparen so Energie durch reduzierte Funkaktivität.

In Version 1.1 der Bluetooth® Mesh Protokollspezifikation ist die Knotenabhängigkeit zu einem breiter anwendbaren Konzept geworden und kann für Bluetooth Mesh Directed Forwarding in einer Reihe von Szenarien gelten. Im Wesentlichen stellt ein unterstützender Knoten, der einem abhängigen Knoten einen gerichteten Weiterleitungsdienst zur Verfügung stellt, sicher, dass alle Nachrichten von dem abhängigen Knoten mit dem gerichteten Sicherheitsmaterial gesichert sind, wenn sie weitergeleitet werden, und führt die erforderlichen gerichteten Weiterleitungsverfahren im Namen des abhängigen Knotens durch.

Die Weiterleitungstabelle des unterstützenden Knotens enthält eine Liste der Adressen abhängiger Knotenelemente und fungiert als Pfadursprung in allen Bluetooth Mesh Directed Forwarding-Operationen, die im Namen der abhängigen Knoten durchgeführt werden, einschließlich der Ausführung von Bluetooth Mesh Directed Forwarding-Prozeduren.

Proxy-Knoten und Bluetooth Mesh Gezielte Weiterleitung

Die Proxy-Funktion beinhaltet einen Proxy-Client und einen Proxy-Server. Der Proxy-Client verwendet typischerweise das Proxy-Protokoll über den GATT-Träger, um mesh PDUs an und von anderen Knoten im Netzwerk über den Proxy-Server zu senden und zu empfangen. Proxy-Clients sind häufig Smartphone-, Desktop- oder Web-Anwendungen.

Der Proxy-Server implementiert einen GATT-Dienst, der zwei GATT-Merkmale enthält: mesh proxy data in, und mesh proxy data out. Der Proxy-Client schreibt Proxy-PDUs in das Merkmal mesh proxy data in und empfängt PDUs als GATT-Benachrichtigungen.

Ein Proxyserver kann Bluetooth Mesh Directed Forwarding unterstützen. Wenn dies der Fall ist, wird dies durch das Vorhandensein des Status Directed Proxy mit dem Wert " enabled" angezeigt.

Wie sich der Proxyserver verhält, kann von Verbindung zu Verbindung unterschiedlich sein und hängt von einer Reihe von Parametern ab. Wenn ein Proxy-Client zum ersten Mal eine Verbindung zu einem gerichteten Proxy-Server herstellt, erhält er eine Proxy-Konfigurationsnachricht, die DIRECTED_PROXY_CAPABILITIES_STATUS-Nachricht. Diese Nachricht gibt die Bluetooth Mesh Directed Forwarding-Parameter an, die derzeit für die Verbindung gelten, und besteht aus zwei Feldern. Directed_Proxy gibt an, ob die gerichtete Proxyfunktion für den Proxyserver aktiviert ist oder nicht. Use_Directed gibt an, ob Bluetooth Mesh Directed Forwarding für Proxy-Client-Nachrichten über diese Verbindung verwendet wird oder nicht.

Proxy-Clients können eine gewisse Kontrolle über das Verhalten eines gerichteten Proxy-Servers ausüben, indem sie eine DIRECTED_PROXY_CONTROL-Nachricht senden. Sie enthält das Feld Use_Directed, so dass der Proxy-Client dem Proxy-Server mitteilen kann, dass er Bluetooth Mesh Directed Forwarding für Nachrichten verwenden soll, die dieser Client sendet. Wenn das Feld Use_Directed den Wert enabled hat, muss die Nachricht auch ein optionales Feld namens Proxy_Client_Unicast_Addr_Range enthalten. Dieses Feld enthält einen Unicast-Adressbereich, für den Bluetooth Mesh Directed Forwarding vom Proxy-Server verwendet werden muss.

Proxy-Clients können Bluetooth Mesh Directed Forwarding direkt oder indirekt verwenden.

Um Bluetooth Mesh Directed Forwarding direkt zu verwenden, sichert der Proxy-Client Nachrichten mit dem gerichteten Sicherheitsmaterial und zeigt dem Proxy-Server an, dass er als gerichteter Relay-Knoten fungieren muss.

Für die indirekte Nutzung nutzt der Client den Dienst, der von seinem unterstützenden Directed-Proxy-Server bereitgestellt wird. Die Nachrichten werden mit dem Material Bluetooth Mesh Managed Flooding gesichert, und sofern die gerichtete Weiterleitung auf dem Proxy-Server aktiviert ist und ein Pfad zur Zieladresse existiert, wird Bluetooth Mesh Directed Forwarding vom Proxy-Server für die Nachricht im Namen des abhängigen Clients verwendet.

Freundschaft und Bluetooth Mesh Gezielte Weiterleitung

Freundschaftsknoten können als gerichtete Freunde fungieren und in ähnlicher Weise wie bei den Proxy-Knoten beschrieben einen Bluetooth Mesh Directed Forwarding-Dienst für zugehörige Low-Power-Knoten bereitstellen. Ein Freund agiert als gerichteter Freund, wenn diese Funktion im Zustand der gerichteten Steuerung aktiviert ist. Ist dies der Fall, verwendet der Freundschaftsknoten Bluetooth Mesh Directed Forwarding, um Nachrichten von seinen leistungsschwachen Knoten weiterzuleiten, wenn dies möglich ist, und führt Bluetooth Mesh Directed Forwarding-Prozeduren aus, wenn dies erforderlich ist. Wenn beispielsweise ein Knoten mit geringer Leistung eine Nachricht an eine Adresse senden möchte, für die derzeit kein Pfad in der Weiterleitungstabelle des Freundes aufgelistet ist, erstellt der Freund eine Instanz des Pfadursprungs-Zustandsautomaten und initiiert die Bluetooth Mesh Directed Forwarding Initialisierungsprozedur. Um diese Funktion nutzen zu können, muss der Knoten mit geringer Leistung das Sicherheitsmaterial der Freundschaft für den Ursprung von Nachrichten verwenden.

3. Schließen Sie

Die Funktion Bluetooth® Mesh Directed Forwarding verbessert die Effizienz, mit der das gemeinsam genutzte Funkspektrum innerhalb eines Netzes genutzt wird, und erhöht damit die allgemeine Skalierbarkeit des Netzes. Die automatische Erstellung und Pflege von Bluetooth Mesh Directed Forwarding-Pfaden erleichtert die Netzwerkplanung und -konfiguration erheblich.

Hilfe erhalten