-
Die
vorliegende Erfindung bezieht sich auf Netzwerksysteme, bestehend
aus einer Anzahl Anordnungen, gruppiert zum Austauschen von Daten
und Steuernachrichten, die entsprechend vorbestimmten Protokollen
formatiert sind, und insbesondere auf derartige Systeme, bei denen
Kommunikation zwischen Anordnungen eine drahtlose Verbindung ist.
Die vorliegende Erfindung bezieht sich weiterhin auf Anordnungen
zur Verwendung in Gruppen von Clustern zum Bilden derartiger Systeme.
-
Durch
ein Netzwerk gebildete Verbindung von Anordnungen untereinander
ist durchaus bekannt, beispielsweise in Hi-Fi-Systemen oder Sicherheitssystemen
mit Detektoren, einem Steuerfeld und einem oder mehreren Alarmanordnungen.
Eine Entwicklung ist das sog. Heim-Bus-System gewesen, wobei eine
ziemlich große
Varietät
an Produkten gekoppelt wurden mit der Absicht, eine bessere gesamte
Funktionalität
von beispielsweise Heim-Audio/Video-Apparatur zu erhalten, die mit
einem Heim-Sicherheitssystem gekoppelt waren, sowie der Verwendung
des Telefons. Ein Beispiel eines derartigen Heim-Bus-Systems ist der digitale Heim-Bus
(D2B), deren Kommunikationsprotokolle als Norm IEC 1030 von IEC
in Genf, Schweiz verabschiedet wurden. Das D2B-System schafft einen
Einzeldraht-Steuerbus, über
den alle Anordnungen mit Nachrichten versehen werden, die zwischen
den jeweiligen Anordnungen des Systems in einer standardisierten
Form von Datenpaketen ausgetauscht werden.
-
Sogar
mit einer Einzeldrahtverbindung von Anordnung zu Anordnung kann
der Aufwand an Verbindungen unhandlich werden, was zu Installationsproblemen
für den
Benutzer führt,
insbesondere wenn eine Gruppe von Anordnungen miteinander verbunden
werden soll, die über
zwei oder drei Räume
verteilt sind. Um einige dieser Probleme zu lösen wurde vorgeschlagen, dass
die Verwendung von Funkfrequenzkommunikation oder IR-Kommunikation
die Drahtverbindungen durch eine zentrale Basisstation ersetzt,
die Nachrichten von der einen Anordnung empfängt und diese zu der Zielanordnung
weiterleitet. Die Notwendigkeit einer Basisstation bringt wieder
eigene Probleme mit sich, von der das geringste Problem nicht die
Tatsache ist, dass jede Nachricht zweimal übertragen werden muss, und
zwar von der Quelle zu der Basisstation und von der Basisstation
zu dem Ziel. In Termen von Konsumentensystemen heißt das,
dass der Benutzer gezwungen ist, zunächst die Basisstation zu kaufen
und, da dies der meist komplexe Teil des Systems ist, wird es auch
der teuerste Teil sein. Es gibt auch das allgemeine Problem für alle derartigen
zentralen Systeme, und zwar, dass wenn die Basisstation fehlt, das
ganze System unbrauchbar wird.
-
Währen die
Verwendung von drahtlosen Kommunikationen einige der physikalischen
Begrenzungen bei der Systeminstallation verringert, schaffen Stelle
wie die Umgebung daheim nicht einen idealen Kommunikationsraum.
Dort, wo drahtlose Kommunikation zwischen Stationen über eine
IR-Verbindung erfolgt, braucht jede Kommunikationseinheit eine direkte
Sichtlinie zu den anderen Einheiten, und Daten können verloren gehen oder unakzeptabel
verzögert
werden, einfach dadurch, dass ein Benutzer in einem Raum umhergeht
und die Sichtlinie zwischen zwei kommunizierenden Anordnungen unterbricht.
Funkfrequenz (RF) Kommunikation ist in dieser Hinsicht eine Verbesserung,
und zwar derart, dass sie durch Wände, Türen und Decken hindurchgehen
kann: dies macht, dass RF Kommunikation besonders geeignet ist in
Gruppen von Anordnungen, die über
zwei oder drei Räume
verteilt sind. Während
RF Kommunikation weniger empfindlich für "Sichtliniensperrungen" ist als IR, hat
diese Art von Kommunikation eine größere Anfälligkeit für Signalreflexionen, was zu Mehrwegfehlern
und Verstümmelung
von Daten führt,
wenn diese empfangen werden.
-
In
der Europäischen
Patentanmeldung EP-A2-695058 wird ein Verfahren und Mittel beschrieben
zur Verwendung von einem oder mehreren Zugriffsstellen ("Access Points" APs) als Netzwerk-Knotenpunkte,
die ein verdrahtetes LAN und drahtlose Knotenpunkte innerhalb des
Bereichs jeder AP miteinander verbinden, und um zu ermitteln, wann
jede AP wirksam werden soll um Daten zwischen dem verdrahteten LAN
und drahtlosen Knotenpunkten zu übertragen.
Alle drahtlose Knotenpunkte verfolgen, welche Knotenpunkte, einschließlich APs,
in ihrem Bereich liegen. Der drahtlose Knotenpunkt bestimmt, mit
welcher AP er assoziiert sein möchte.
Der drahtlose Knotenpunkt bestimmt dann, ob er eine Nachricht unmittelbar
zu dem Zielknotenpunkt übertragen
kann, dadurch, dass er überprüft, ob der
Zielknotenpunkt sich in seinem Bereich befindet; sollte dies nicht
der Fall sein, so sendet der drahtlose Knotenpunkt die Nachricht
zu der AP, mit der er assoziiert ist und bittet die AP bei der Lieferung
der Nachricht zu dem Zielknotenpunkt behilflich zu sein. Ein Nachteil
des Systems ist ein Ausfall durch Sperrung der Kommunikation zwischen
dem drahtlosen Knotenpunkt und der assoziierten AP.
-
Deswegen
ist es u.a. eine Aufgabe der vorliegenden Erfindung, ein drahtloses
Kommunikationssystem zu schaffen und Anordnungen zur Verwendung
in diesem System, die eine verringerte Anfälligkeit für Signalverlust haben, der
durch Sichtlinienunterbrechung und/oder Signal-Mehrwegeffekte entsteht.
-
Nach
der vorliegenden Erfindung wird ein drahtloses Kommunikationssystem
mit einer Anzahl Knotenpunkte geschaffen, die gebündelt sind
zum Austauschen von Daten- und Steuernachrichtenpaketen, wobei jeder
Knotenpunkt eine einzigartige Adresse innerhalb des Systems hat,
und dazu vorgesehen ist, empfangene Nachrichten zu ignorieren, die
nicht ihre eigene Knotenpunktadresse haben, und wobei die Knotenpunkte
je dazu vorgesehen sind, eine Bestätigungsnachricht zu erzeugen
und unmittelbar zu dem Ursprungsknotenpunkt eines empfangenen Datenpakets
zu übertragen,
dadurch gekennzeichnet, dass jeder Knotenpunkt weiterhin einen Speicher
aufweist, der eine Knotenpunktadresse für jeden anderen Knotenpunkt
des Systems festhält,
wobei jeder Knotenpunkt dazu vorgesehen ist, beim Ermitteln eines
Empfangsmangels einer Bestätigungsnachricht
für ein
Nachrichtenpaket, das zu einem Zielknotenpunkt übertragen worden ist, zum Selektieren
einer weiteren Knotenpunktadresse aus dem Speicher und zum Übertragen
des genannten Nachrichtenpakets zu dem genannten weitern Knotenpunkt
als ein neu gelenktes Nachrichtenpaket, wobei jeder Knotenpunkt
derart konfiguriert ist, dass er das ursprüngliche Ziel eines empfangenen
neu gelenkten Nachrichtenpakets identifiziert und das genannte neu
gelenkte Nachrichtenpaket zu dem ursprünglichen Ziel sendet.
-
Durch
Verwendung der Knotenpunkttabelle, die (in kompletter oder in teilweiser
Form) von jeder der Anordnungen, die zu einem Cluster gehören, getragen
wird, können
alternative Wege von dem Ursprungsknotenpunkt zu dem Zielknotenpunkt
auf dynamische Weise selektiert werden, damit die Effekte von Kurzzeit-Kanalstreckenstörungen oder
-sperrungen minimiert werden. Eine derartige Umleitungsprozedur,
die nicht anwendbar ist auf Systeme, bei denen alle Nachrichten über eine
Basisstation geleitet werden, benutzt die physikalische Trennung
der Knotenpunkte oder Anordnungen zum Schaffen einer physikalischen
Umleitung um Sperrungen herum.
-
Auf
geeignete Weise ist jeder Knotenpunkt derart konfiguriert, dass
er eine Bestätigungsnachricht
erzeugt und diese dem sendenden Knotenpunkt eines erfolgreich empfangenen
umgeleiteten Nachrichtenpakts zusendet, wobei jeder Knotenpunkt
ein Nachrichtenpaket einige Male zurücksendet, wenn er innerhalb
einer erwarteten Periode keine Bestätigung empfängt. Umleitung braucht nicht
auf die Verwendung eines einzigen zwischen liegenden Knotenpunktes
begrenzt zu sein: jeder Knotenpunkt kann wirksam sein um bei der
Ermittlung des Mangels einer empfangenen Bestätigungsnachricht für ein umgeleitetes
Nachrichtenpaket, noch eine andere Knotenpunktadresse aus dem Speicher
zu selektieren, anders als diejenigen Adressen des Zielknotenpunktes
und des Ursprungsknotenpunktes, und um das Nachrichtenpaket zu noch
einem weiteren Knotenpunkt als eine umgeleitete Nachricht zu übertragen.
Auf diese Weise kann ein zwischen liegender Knotenpunkt, der nicht
imstande ist den Zielknotenpunkt zu kontaktieren, auf einfache Weise
das Nachrichtenpaket zu einem weiteren Knotenpunkt in der Cluster
weiterleiten um zu versuchen, das Ziel zu kontaktieren.
-
Wenn
Nachrichten mehr als nur einmal umgeleitet sollen, sind auf geeignete
Weise Mittel vorgesehen um die Anzahl umgeleitete Übertragungen
eines Nachrichtenpakets auf eine vorbestimmte Anzahl umgeleitete Übertragungen
zu begrenzen. Die kann dadurch erreicht werden, dass jedes Nachrichtenpaket
ein Datenfeld trägt,
reserviert zum Angeben einer erfolglosen Übertragung dieses Nachrichtenpakets
als ein umgeleitetes Paket, und wobei jeder Knotenpunkt Mittel aufweist
um das Datenfeld zu modifizieren um den Wert dadurch zu erhöhen, dass
bestimmt wird, dass keine Bestätigungsnachricht
folgend auf eine Übertragung
des Pakets als ein umgeleitetes Nachrichtenpaket empfangen worden
ist. Auf diese Weise werden die Anzahl erfolgloser umgeleiteter Übertragungen,
die eine Nachricht gehabt hat, innerhalb der Nachricht selber getragen
und eine Anordnung des Systems kann die Nachrichtenpaketentfernung
bewältigen
bei Detektion, dass das Datenfeld den maximalen Wert erreicht hat.
-
Die
vorliegende Erfindung schafft ebenfalls eine Anordnung zur Verwendung
als Knotenpunkt innerhalb des oben beschriebenen Systems, wobei
die Anordnung Steuermittel aufweist, die mit einem Adressdatenspeicher
und einem Transceiver gekoppelt sind, wobei die Steuermittel wirksam
sind um Datenpakete entsprechend einem vorbestimmten Protokoll zu
formatieren und diese Pakete über
den Transceiver zu übertragen
und Daten von derartigen über
den Transceiver empfangenen Pakete zu extrahieren, wobei die Anordnung
eine identifizierende Adresse hat und derart konfiguriert ist, dass
sie alle empfangenen Pakete, welche die genannte Adresse nicht enthalten,
ignoriert.
-
Weitere
Merkmale und Vorteile der vorliegenden Erfindung dürften aus
der Lektüre
der Beschreibung der bevorzugten RF Übertragungsausführung der
vorliegenden Erfindung hervorgehen, die nur als Beispiel gegeben
sind, und unter Hinweis auf die beiliegenden Figuren. Es zeigen:
-
1 eine
Gliederung von Anordnungen, die drei überlappende Cluster bilden,
-
2 ein
Blockdiagramm, das funktionelle Merkmale einer ersten Ausführungsform
der Clusteranordnung darstellt,
-
3 eine
schematische Darstellung verschiedener Pegel in einem Kommunikationsprotokoll,
unterstützt
durch die Cluster nach 1,
-
4 bis 7 verschiedene
Konfigurationen eines Datenpakets, wie dies für eine Kommunikation unter
Anordnungen in einem System nach der vorliegenden Erfindung verwendet
wird,
-
8 ein
Beispiel einer Knotenpunkttabelle, wie diese durch eine Anordnung
in einem Cluster eingehalten wird,
-
9 ein
Flussdiagramm, das eine Einhaltungsprozedur zum Aktualisieren der
Knotenpunkttabelle aus 8 illustriert,
-
10 bis 12 eine
Darstellung einer direkten und einer indirekten Kommunikation zwischen
Anordnungen eines Clusters entsprechend einer dynamischen Leitanordnung;
und
-
13 eine
Darstellung der Prozedur zur Steuerung der dynamischen Leitanordnung
nach den 10 bis 12.
-
1 zeigt
zwei aneinander grenzende Räume
A, B, die eine Anzahl Anordnungen oder Knotenpunkte enthalten, die
zu drei überlappenden
Clustern gebildet sind. Die kombinierte RF Deckung des ersten Clusters
(helle Knotenpunkte N1 in dem Raum A) wird durch die Linie RF1 dargestellt,
die des zweiten Clusters (dunkle Knotenpunkte N2 in dem Raum B)
durch die Linie RF2, und die des dritten Clusters (mit einem Kreuz versehene
Knotenpunkte N3 in dem Raum B) durch die Linie RF3. Wie ersichtlich
sind wenigstens einige der Knotenpunkte in jedem Cluster innerhalb
des RF-Bereichs der Knotenpunkte eines anderen Clusters. Da alle Knotenpunkte
einen gemeinsamen Satz von Kommunikationsprotokollen unterstützen und über eine
gemeinsame Frequenz übertragen,
gibt es höchstwahrscheinlich
eine Interferenz oder eine Fehlsteuerung zwischen Anordnungen benachbarter
Cluster, es sei denn, dass alle Kommunikationen auf spezielle Anordnungen
gezielt werden können.
-
Um
diese Probleme der Interferenz zu vermeiden, wird eine einfache
Netzwerkanordnungshierarchie vorgeschlagen. Alle Kommunikationen
enthalten eine Netzwerkadresse (Clusteradresse) und eine Knotenpunktadresse
(Anordnungsadresse) innerhalb dieses Netzwerkes. Anordnungen ignorieren
Kommunikationen, die weder die Netzwerkadresse, noch die Knotenpunktadresse
enthalten, oder deren Netzwerkadresse und eine globale Adresse,
die für
Funknachrichten verwendet werden, die von allen Anordnungen eines
Clusters empfangen werden sollen. Auf diese Weise gehören nicht
nur die Knotenpunkte zu Netzwerken, die unabhängig voneinander arbeiten,
aber jedes Produkt innerhalb eines Netzwerkes kann unter Verwendung
der Knotenpunktadresse einzeln adressiert werden.
-
Netzwerk-
und Knotenpunktadressen werden durch eine Installationsprozedur
gebildet, durchgeführt, wenn
die Anordnung zuerst eingeführt
wird. Die Installation ist automatisiert um den Benutzer möglichst
wenig zu belasten und dies eliminiert die Notwendigkeit, dass Benutzer über Systemkenntnisse
verfügen.
Die Prozedur vermeidet, dass Knotenpunkte sich mit dem falschen
Netzwerk verbinden und ermöglicht
es, dass der Benutzer das Netzwerk von einem einzigen Netzwerk expandiert.
Die Installationsprozedur ist in unserer Europäischen Patentanmeldung EP-A-0
928 527, veröffentlicht
am 14. Juli 1999 mit dem Titel: "Wireless
Networked Device Installation" beschrieben
worden.
-
2 zeigt
eine erste Ausführungsform
einer Knotenpunktanordnung mit einem Transceiver 10, der mit
einem Mikrocontroller 12 gekoppelt ist, der seinerseits
mit einem örtlichen
Speicher 14 gekoppelt ist, der Adressierungsdaten und andere
Daten enthält,
die nachher noch näher
beschrieben werden. Der Transceiver 10 schafft Übertragung
und Empfang von RF Nachrichten zu und von anderen Anordnungen eines
Clusters unter der Leitung des Mikrocontrollers 12. Ein
einfacher Benutzerregler 16, wie ein Druckknopf, ist mit
dem Mikrocontroller 14 gekoppelt, um ein Mittel zu schaffen
zum Auslösen
der Installationsprozedur, und der Mikrocontroller 12 ist
weiterhin mit einer Beliebigzahl-Generatorschaltung 18 gekoppelt
zur Verwendung in der Installationsprozedur.
-
Die
dargestellte Ausführungsform
hat die Elemente, die für
HF-Kommunikation
erforderlich sind, relativ anders verbunden als die funktionellen
Merkmale der Anordnung, dargestellt durch den Block 20,
wie dies der Fall sein kann, wenn die Elemente 10, 12, 14, 16 und 18 vorgesehen
sind um eine bestehende Anordnung derart umzuwandeln, dass sie als
Clusteranordnung funktioniert. Wie dargestellt, sind die Anordnungsfunktionen 20 über einen
Adress-und-Datenbus 22 der Anordnung mit dem Mikrocontroller 12 gekoppelt,
und zwar über
eine Schnittstellenschaltung 24, welche die erforderlichen
Merkmale, wie die Signalpegelumwandlung, durchführt.
-
Dem
Fachmann dürfte
es einleuchten, dass viele Abwandlungen der vorliegenden Anordnung
nach 2 möglich
sind. Wenn die Anordnungsfunktionen 20 relativ einfach
sind, beispielsweise die Anordnung ist ein einfacher Detektor für ein Sicherheitssystem,
braucht es keinen Systembus und keine Schnittstelle zu geben, wobei
die Anordnungsfunktionen 20 unmittelbar mit dem Mikrocontroller 12 gekoppelt
sind. Auf alternative Weise können,
wenn die Anordnungsfunktionen 20 verfügbare Verarbeitungskapazität und Speicherkapazität umfassen,
die hier beschriebenen Funktionen des Mikrocontrollers 12 und
des Speichers 14 in Tandem mit anderen Verarbeitungs- und
Speicherfunktionen der Anordnung erledigt werden.
-
3 stellt
die jeweiligen Pegel der Kommunikationsprotokolle dar, die von der
Anordnung nach 2 unterstützt werden. Auf dem niedrigsten
Pegel wird die physikalische Schicht durch die Funkmedia dargestellt. Darüber liegt
die Koppelschicht, welche die Fehlersteuerung und -detektion für übertragene
und empfangene Nachrichten sowie Mediazugriffssteuerung (MAC) aufweist.
Die Verwendung eines gemeinsamen MAC-Protokolls, das u.a. Signalpaketdauer
und Wiederholungszeiten spezifiziert, vermeidet physikalische Interferenz zwischen
Signalen in dem System. Über
der Koppelschicht liegt die Netzwerkschicht, welche die Adressenverwaltung
und das dynamische Routing erledigt, und darüber liegt die Transportschicht,
verantwortlich für
die Nachrichtenabhandlung. 4 stellt
die allgemeine Gliederung von Nachrichtenpaketen dar, die zwischen
Anordnungen eines Clusters übertragen
werden. Pakete aller Nachrichtentypen starten mit den gleichen vier
Feldern und enden mit dem gleichen Feld. Das erste Feld ist die
Netzwerkadresse NA, die eine 8-Bit Adresse ist, die das Netzwerk
adressiert, zu dem die Kommunikationsknotenpunkte gehören. Das
zweite Feld trägt
die Zielknotenpunktadresse TNA, die eine 8-Bit-Adresse ist, die
den Zielknotenpunkt oder die Zielanordnung identifiziert, für die das
Datenpaket bestimmt ist. Das dritte Feld trägt einen Nachrichtentypindikator
MT, der ein 8-Bit-Feld ist, das den Typ (oder den Zweck) und den
Zustand des Pakets identifiziert. Das Nachrichtentypfeld benutzt
6 Bits um anzugeben, entweder, dass das Paket eine Applikationsnachricht
ist, oder dass es eine von einer Anzahl spezifischer Netzwerknachrichten
ist, einschließlich
eines Nachrichtenfehlers MF, wie nachstehend näher erläutert wird. Die zwei restlichen
Bits werden als Toggle-Bit für
doppelte Paketdetektion (mit dem CRC-Feld) bzw. zur Markierung ob
das Paket über
einen anderen Knotenpunkt übertragen
worden ist.
-
Das
vierte Standardfeld des Nachrichtenpakts trägt die Ursprungsknotenpunktadresse
ONA, die eine 8-Bit-Adresse ist, die den Knotenpunkt oder die Anordnung
identifiziert, von dem bzw. der das Datenpaket herrührt. Für jedes
der Adressenfelder NA, TNA und ONA wird ein Wert gleich 0 verwendet
um anzugeben, dass es keine spezifische Adresse gibt (TNA = 0 für Sendenachrichten)
oder dass die Adresse unbekannt ist. Das nächste Feld MPD ist nachrichten/paketabhängig und
wird nachstehend näher
beschrieben.
-
Das
Endfeld CRC ist ein 16-Bit Wort, das zur zyklischen Redundanzüberprüfung verwendet
wird. Die Prüfsumme,
die zur Fehlerdetektion des Pakets verwendet wird, wird von den
Paketdaten von dem Start der Netzwerkadresse bis zum Ende des Datenfeldes
hergeleitet. Nach dem Empfang eines Pakets, wenn das Paket eine
Applikationsnachricht statt einer Netzwerknachricht trägt, wird
das CRC Feld neu berechnet und der neu berechnete Wert wird zu der
Quellenanordnung zurück übertragen
um eine Handshake-Antwort
zu schaffen. Wenn das empfangene Paket fehlerhaft war, wird das
am Ziel berechnete CRC weder mit dem in dem empfangenen Paket übereinstimmen,
noch wird die Handshake-Nachricht (das neu berechnete CRC) mit dem ursprünglich für die fehlerfreie
Nachricht vor der Übertragung
berechneten CRC überein
stimmen, wobei den Absender und der Empfänger des Fehlers alarmiert
werden. Wegen der Möglichkeit,
dass nur auf dem Rückweg
des Handshakes ein Fehler auftritt (d.h., das Datenpaket wurde sicher
empfangen), wird jeder Knotenpunkt derart Konfiguriert, dass er
erfolgreich empfangene Pakete überprüft, wie
diese von einem Knotenpunkt gesendet werden können, der keine Handshake-Antwort
auf ein erstes Nachrichtenpaket empfängt und Duplikate abzulegen.
Unter bestimmten Umständen
kann es notwendig sein, wirklich dieselben Daten in zwei aufeinander
folgenden Paketen zu senden; und zwar zur Vermeidung davon, dass
das zweite Paket als Duplikat weggeworfen wird, wobei bei der Sendung
des zweiten Pakets die Quelle das Toggle-Bit in dem MT-Feld umkehren
wird um einen anderen CRC-Wert für
das Paket als Ganzes zu erzeugen. Die empfangende Anordnung wird
beim Empfang aufeinander folgender Pakete, die identische Daten
tragen, das zweite Paket nicht als ein Duplikat wegwerfen, wenn
die CRCs der Pakete voneinander abweichen und gültig sind.
-
Für viele
der Netzwerknachrichten sind keine zusätzlichen Daten erforderlich
und folglich wird auf das MPD-Feld in dem Paket verzichtet. Für Applikationsnach richten
aber wird das Feld verwendet um Daten und eine Anzahl weiterer Indikatoren
zu tragen, wie nachstehend anhand der 5 bis 7 näher beschrieben wird.
-
5 zeigt
eine allgemeine Form eines Applikationsnachrichtenpakets mit den
NA, TNA, MT, ONA und CRC Feldern wie in 4, und wobei
das MPD Feld Felder für
Paketnummer PN, Datenlänge
Downlink, und Daten DA enthält.
Das Paketnummerfeld PN umfasst 8 Bits, welche die logische Position
des Pakets in der Nachricht (von 1 bis 255): wenn das Paket das
erste Paket einer Nachricht ist, (d.h. PN = 1) umfasst das Paket
ein zusätzliches
Feld unmittelbar vor den Daten DA, wobei das zusätzliche Feld die gesamte Anzahl
Pakete TNP in der Nachricht angibt, wie in 6 dargestellt.
-
Da
die gesamte Länge
des Pakets nicht unbedingt konstant ist, ist das Datenlängenfeld
DL als ein 8-Bitwert eingeschlossen, der die Länge des Datenfeldes DA in Bytes
angibt. Das Datenfeld DA ist eine ganze Zahl von Bytes lang (wie
durch das DL-Feld spezifiziert) und wird durch Systembegrenzungen,
durch das MAC-Protokoll begrenz, welches das maximale "Fenster" für eine Übertragung
und einen Empfang der entsprechenden Handshake eines Pakets gibt.
Ein typisches Fenster kann eine Dauer von 50 bis 60 ms sein, wobei
längere
Nachrichten aufgeteilt werden, wie durch die Verwendung von PN-
und TNP-Feldern angegeben.
-
In 7,
wobei das System eine dynamische Nachrichtenleitfunktionalität unterstützt (was
anhand der 10 bis 13 beschrieben
wird) umfasst das Paket drei weitere Felder zwischen dem Datenlängenfeld Downlink
und den Datenfeldern DA (oder DL und TNP, wenn PN = 1 ist) wenn
das oben genannte Markierungsbit in dem MT Feld gesetzt ist. Diese
drei 8 Bit Felder spezifizieren eine Bestimmungsknotenpunktadresse DANN,
eine Quellenknotenpunktadresse SNA und einen Sprungzählwert HC,
was nachher noch näher
beschrieben wird.
-
Neu
eingeführte
Anordnungen zu dem Cluster führen
eine Registrierroutine durch. Registrierung wird vorzugsweise periodisch
wiederholt, so dass Anordnungen eins Clusters aktuelle Information
darüber
haben, welche Anordnungen es gibt und welche Merkmale sie haben.
Das Registriersignal ist ein Paket wie in 4, wobei
das Nachrichtentyp-Byte MT die Registrierung angibt und den MPD-Teil,
der die Definitionsdaten für
die jeweiligen Merkmale trägt.
Diese Information wird in einer örtlich
eingehaltenen Knotenpunkttabelle gespeichert, wobei ein Beispiel
davon in 8 dargestellt ist. Eine Anordnung
wird die Eingabe einer anderen Anordnung aus der Knotenpunkttabelle
löschen,
und zwar nach einer vorbestimmten Periode (beispielsweise 15 Minuten),
wenn diese Anordnung nicht neu registriert worden ist. Dieses Merkmal
ist besonders nützlich
zur automatischen Detektion des Verlustes oder der Entfernung eines
Knotenpunktes.
-
Die
Knotenpunkttabelle führt
die Anordnungsadresse (Knotenpunktadresse) von wenigstens einigen der
anderen Anordnungen, zusammen mit einer Liste von Merkmalmarkierungen
für jede
dieser Anordnungen und einen Merkmalstand. Die Merkmalmarkierungen
geben allgemeine Merkmale der Anordnungen an: eine Klassifizierung
für Systemmerkmale
kann sein:
- 1. Wiedergabe (beispielsweise LCD,
Fernsehen, Monitor)
- 2. Eingabe (beispielsweise Tastenfeld, Fernbedienung)
- 3. Sensor (beispielsweise passiv IR, Thermostat)
- 4. Stellglied (beispielsweise Lichtschalter, Türverschluss)
- 5. Speicherung (beispielsweise Festplatte oder CD-ROM)
- 6. Kommunikation (beispielsweise Telefon oder IR)
-
Der
Merkmalstand ist spezifisch für
die Anordnung, welche die Tabelle führt und wird berechnet durch Summierung
der Anzahl Merkmale, die jede Anordnung besitzt, die für die die
Tabelle führende
Anordnung interessant sind. In dem Beispiel nach 8 braucht
die Führungsanordnung
eine Anordnung mit Merkmalen 1, 2 und 5 (Wiedergabe, Eingabe und
Speicherung) und identifiziert die Anordnung mit der Knotenpunktadresse 1
als die meist wahrscheinliche um diese Anforderungen zu erfüllen.
-
Die
Knotenpunkttabelle behält
Information über
alle Anordnungen in dem Netzwerkcluster (oder wenigstens über diejenigen,
die mit der Anordnung in Kommunikation sind, welche die Tabelle
führt)
oder einem selektierten Subsatz, wobei Merkmalstände verwendet werden um diejenigen
auszuschließen,
die wahrscheinlich am wenigstens nützlich sind, wenn das Netzwerk
einmal expandiert hat an der Stelle, wo die Knotenpunkttabelle sonst
den verfügbaren
Speicherraum überschreiten
würde. 9 stellt
die angewandte Prozedur dar, die als Vorfilter für die Applikation wirkt, wobei
Kenntnisse derjenigen Anordnungen beibehalten werden, mit denen
die Applikation wahrscheinlich kommuniziert, und zwar bevorzugt
gegenüber
den klassifizierten Knotenpunkten, und zwar wegen der Merkmalstände, da
diese weniger wahrscheinlich nützlich
sein werden. Es dürfte
einleuchten, dass die breite Gruppierung der allgemeinen Knotenpunktmerkmale
dazu führen
kann, dass einige Anordnungen einen Merkmalstand haben, der die
wirkliche Nützlichkeit
für die
die Tabelle führende Anordnung übersteigt
und folglich ist ein die Tabelle führende Anordnung übersteigt
und folglich ist ein Mechanismus vorgesehen, durch den Anordnungen,
die spezifisch als relevant identifiziert werden (beispielsweise diejenigen
Anordnungen, mit denen die betreffende Anordnung neulich kommuniziert
hat) "verriegelt" werden können um
zu vermeiden, dass sie aus der Knotenpunkttabelle entfernt werden,
wenn eine Anordnung mit einem höheren
Merkmalstand zu dem Cluster hinzugefügt wird.
-
Die
Einhaltungsprozedur beginnt bei dem Schritt 901, auf geeignete
Weise durch die detektierte Installation einer neuen Anordnung zu
dem Cluster getriggert. Bei Empfang des Registrierungsdatennachrichtenpakets
von der neuen Anordnung, werden die Merkmalmarkierungen für diese
Anordnung bemerkt und es wird ein neuer Merkmalstand berechnet (Schritt 902).
Bei dem Schritt 903 wird geprüft, um zu sehen, ob die Anordnungsknotenpunkttabelle
voll ist. Sollte dies nicht der Fall sein, so werden in dem Schritt 904 die
Knotenpunktadresse, die Merkmalmarkierungen und der Merkmalstand
für den
neuen Knotenpunkt zu der Tabelle hinzugefügt und die Prozedur endet (Schritt 905).
Wenn aber in dem Schritt 903 bestimmt wird, dass die Anordnung
bereits eine volle Knotenpunkttabelle hat, wird die bestehende Anordnung
in der Tabelle mit dem niedrigsten Merkmalstand (und die keine verriegelte
Anordnung ist), identifiziert. In dem Schritt 907 wird
der Merkmalstand der selektierten, bestehenden Tabelleneingabe mit
dem der neuen Anordnung verglichen, wenn die neue Anordnung einen
niedrigeren Merkmalstand hat als der der identifizierten Anordnung
aus der Tabelle, werden die Einzelheiten der neuen Anordnung weggeworfen
und die Prozedur endet (Schritt 905). Wenn andererseits
die neue Anordnung einen höheren
Merkmalstand hat als der niedrigste in der Tabelle, dann werden in
dem Schritt 908 die Knotenpunktadressenmerkmalmarkierungen
und Merkmalstand für
die neue Anordnung zu der Tabelle hinzugefügt, und zwar an die Stelle
der vorher identifizierten Tabelleneingabe. Nach dem Ersatz endet
die Prozedur wieder (Schritt 905). Es sei bemerkt, dass
zur Vermeidung mehrfacher Eingaben durch die periodische Neuregistrierungsanforderung
jede Anordnung derart konfiguriert ist, dass in der Tabelle nur
eine Eingabe von jeder Knotenpunktadresse beibehalten wird.
-
In
den 10 bis 12 versuchen
Knotenpunkte unmittelbar zu kommunizieren (wie in 10) aber,
wenn direkte Kommunikation fehlt, dann wird der sendende Knotenpunkt
beliebig einen anderen Knotenpunkt aus der Liste selektieren, die
in der Knotenpunkttabelle steht und wird das Paket stattdessen diesem Knotenpunkt
zusenden. Der Kno tenpunkt, der dieses Paket empfängt, wird versuchen dieses
Paket zu dem ursprünglichen
Bestimmungsknotenpunkt (Ziel) zu senden, und zwar unter Verwendung
anderer beliebig selektierter Knotenpunkte als "Zwischenstationen". Die Anzahl Versuche, die ein bestimmter
Knotenpunkt machen wird, bevor er versucht ein Paket über einen
anderen Knotenpunkt oder über
andere Knotenpunkte dynamisch umzuleiten, kann in einer einfachen
Implementierung ein voreingestellter Wert sein, wie drei oder vier Versuche:
in einem komplexeren System kann der Wert dynamisch bestimmt werden
durch Bezugnahme auf die Nachrichtenverkehrspegel und/oder die Anzahl
Knotenpunkte in einem Cluster.
-
Die
dynamische Umleitung benutzt die zwei zusätzlichen Datenfelder in der
Applikationsnachrichtenkonfiguration nach 7, und zwar
Zielknotenpunktadresse DNA und Quellenknotenpunktadresse SNA. DNA und
SNA werden verwendet, da ungeachtet, ob das Paket direkt oder über eine
Anzahl andere Knotenpunkte gesendet worden ist, in dem Feld TNA
behält
das System die Adresse für
den schlussendlichen Zielknotenpunkt und in ONA die Adresse für den Knotenpunkt,
von dem das Paket wirklich herrührt.
In dem Beispiel nach 10 wird das Paket direkt übertragen
und die Bestimmung und das Ziel sind dasselbe (TNA = DNA = B): gleichermaßen sind
die Ursprungsstelle und die Paketquelle dieselbe (ONA = SNA = A).
Dieses Beispiel ist rein zur Illustration; für direkte Nachrichten wäre keine
Anforderungen für
die Felder DNA und SNA, die paketabwesend sein würden.
-
Wenn
es notwendig ist, die Nachricht umzuleiten (wie über einen Knotenpunkt C, wie
in 11 dargestellt) gelangen die zusätzlichen
Felder DNA und SNA ins Licht. Wie dargestellt bleibt in dem ersten "Sprung" von dem Knotenpunkt
A zu dem Knotenpunkt C das Paketziel (TNA) der Knotenpunkt B aber
die Bestimmung (DNA) ist nun C. Für diesen Teil der Nachricht
ONA = SNA = A. Von dem Knotenpunkt C wird das Paket nun zu der ursprünglichen
Zielbestimmung des Knotenpunktes B weiter geleitet, also TNA = DNA
= B. Aber da der Knotenpunkt C nicht der Ursprung des Pakets ist,
ist ONA = A, während
SNA = C ist. 12 zeigt die Prozedur, erweitert
zum Umleiten über
zwei zwischen liegende Knotenpunkte C und D. Es sei bemerkt, dass
Bestätigungssignale
nach dem erfolgreichen Empfang eines Pakets durch einen Umleitungsknotenpunkt oder
einen Zielknotenpunkt derselben Strecke wie das Nachrichtenpaket
selber folgen; in dem Beispiel nach 12 folgt
die Bestätigungsnachricht
von C nach A dem erfolgreichen Paketempfang durch C (möglicherweise
nach einer Anzahl gescheiterter Versuche durch A). Wenn die Bestätigungsnachricht
einmal nach A gesendet worden ist, fängt der Knotenpunkt C damit
an, zu versuchen, die Nachricht nach D zu übertragen.
-
Wenn
Nachrichtenpakete umgeleitet werden ändert sich das Paket-Layout
nicht und folglich ist es notwendig für zwischen liegende Knotenpunkte,
dass sie Nachrichten empfangen, die als Zieladresse eine andere Knotenpunktadresse
haben, d.h. ein Knotenpunkt muss Nachrichten akzeptieren, deren
Adresse entweder in dem TNA Feld oder in dem Bestimmungsknotenpunktadressenfeld
DNA vorhanden ist. Stattdessen, dass es notwendig ist, dass jedes
Paket ein mögliches
redundantes DNA-Feld enthält,
wird das oben genannte Markierungsbit in dem Nachrichtentypfeld
MT verwendet um anzugeben, ob das Nachrichtenpaket ein umgeleitetes
Paket ist, wodurch auf diese Weise empfangende Anordnungen darauf
hingewiesen werden, das DNA Feld auf die Adresse zu überprüfen.
-
Die
Technik der dynamischen Umleitung basiert auf der Voraussetzung,
dass die Fehlerrate von Verbindungen zwischen Knotenpunkten niedrig
sein wird (ausgenommen Knotenpunktfehler oder Transceiver-Fehlausrichtungen
für IR-Applikationen).
Es wird deswegen eine geringe Wahrscheinlichkeit eines direkten Verbindungsfehlers
geben und eine noch geringere Wahrscheinlichkeit, dass eine alternative
(umgeleitete) Verbindung fehlen wird. Es dürfte einleuchten, dass der
dynamische Umleitungsmechanismus bedeutet, dass Pakete in einer
Datenübertragung
in falscher Reihenfolge bei dem Zielknotenpunkt anlangen können. Dies aber
kann bei dem Zielknotenpunkt durch Bezugnahme auf das Paketnummerfeld
PN innerhalb des Pakets korrigiert werden.
-
Wenn
der in einem bestimmten Paket spezifizierte Zielknotenpunkt nicht
existiert, und zwar wegen eines Fehlers oder wegen Entfernung, kann
es sein, dass dies für
den Ursprungsknotenpunkt nicht unmittelbar ersichtlich ist (wenigstens
bis zur nächsten
Runde von Registrierungsprozeduren) und der Ursprungsknotenpunkt
wird annehmen, dass der Zielknotenpunkt existiert, aber außerhalb
Kommunikation damit ist. Folglich wird der Ursprungsknotenpunkt
versuchen, Pakete über
einen oder mehrere zwischen liegende Knotenpunkte Pakete umzuleiten,
wie oben beschrieben. Weil jeder Knotenpunkt dazu vorgesehen ist,
zu versuchen, eine erfolglose Paketübertragung umzuleiten, könnte ein
Problem entstehen wenn Nachrichtenpakte zwischen Anordnungen eines
Clusters endlos umgeleitet werden.
-
Um
dieses Problem zu vermeiden wird die Anzahl Male, dass ein Nachrichtenpaket
umgeleitet werden kann (die Anzahl Nachrichten-Sprünge) begrenzt,
wobei eine aktuelle Zählung
der Anzahl Umleitungsvorgänge
innerhalb des Pakets selber in einem Sprungzählfeld HC festgehalten wird
(siehe 7). Jedes Mal, das ein Knotenpunkt ein Nachrichtenpaket
zu einem Knotenpunkt, anders als dem spezifizierten Ziel TNA befördert, inkrementiert
der Knotenpunkt den Sprungzählwert
HC um Eins. Wenn der Sprungzählwert
einen vorbestimmten Wert erreicht, wird der Knotenpunkt, der das
Paket zu dem betreffenden Zeitpunkt festhält, eine Nachrichtenfehler-MF-Netzwerknachricht
zu der Adresse des Ursprungsknotenpunktes des Pakets senden. Gleichzeitig
löscht
der Knotenpunkt das Paket. Es sei bemerkt, dass, weil die Fehlernachricht
MF eine Netzwerknachricht ist, der erzeugende Knotenpunkt die MF-Nachricht
direkt übertragen
wird, d.h. ohne Fehlerüberprüfung oder
erlaubte Umleitung.
-
13 stellt
eine Kommunikationssession dar, in der ein Ursprungsknotenpunkt
ON versucht, ein Paket zu einem nicht bestehenden oder nicht funktionierenden
Zielknotenpunkt (TN) mit Umleitung über einen oder mehrere zwischen
liegende Knotenpunkte IN1 bis IN5 zu übertragen. In der Figur sind
Nachrichtenübertragungen
durch M mit der eingeklammerten, den Sprungwert angebenden Zahl
bezeichnet. Zunächst
macht der Ursprungsknotenpunkt ON einen erfolglosen Versuch, direkt
zu dem Zielknotenpunkt TN zu übertragen. Nach
Zuwachs der Sprungzählung
auf 1, selektiert der Ursprungsknotenpunkt den zwischen liegenden
Knotenpunkt IN2 als eine Umleitungsstelle und überträgt das Nachrichtenpaket (erfolgreich)
zu diesem Knotenpunkt. Der Deutlichkeit halber sei bemerkt, dass
Handshake-Signale in dem Diagramm nach 13 nicht
dargestellt sind; auch ist nur eine einzige versuchte Übertragung
von jeder Quelle zu der Bestimmung dargestellt, obschon es in der
Praxis eine Anzahl Versuche gegen wird (beispielsweise drei oder
fünf),
bevor die Strecke als gesperrt betrachtet und das Paket umgeleitet
wird.
-
Wenn
das Nachrichtenpaket einmal empfangen worden ist, versucht der zwischen
liegende Knotenpunkt IN2 zu dem Zielknotenpunkt TN zu übertragen
und, sollte dies misslingen, inkrementiert der zwischen liegende
Knotenpunkt IN2 den Sprungzählwert
und leitet das Nachrichtenpaket zu einem anderen beliebig selektierten
zwischen liegenden Knotenpunkt, in diesem Fall zu dem Knotenpunkt
IN1. Nach weiteren erfolglosen Versuchen wird das Paket über den
zwischen liegenden Knotenpunkt IN4, dann IN5, und danach zurück zu IN2
umgeleitet, der das Paket mit dem Sprungszähler auf 5 empfängt – wobei
dieser Wert der als Grenzsprungwert selektiert wurde. Wenn der Versuch
der Übertragung
zu dem Zielknotenpunkt TN wieder scheitert, ermittelt der zwischen
liegende Knotenpunkt IN2 die Adresse des Ursprungsknotenpunktes
des Pakets und sendet eine Scheiterungsnachricht MF zu dem Ursprungsknotenpunkt
und löscht
das Paket. Wie bei der Anzahl Versuche vor der Umleitung kann der
maximal akzeptierte Sprungzählwert
entweder voreingestellt werden oder er kann durch Bezugnahme auf
beispielsweise die Anzahl Knotenpunkte dynamisch bestimmt werden.
-
Andere
Erwägungen
eines drahtlosen Kommunikationssystems, die nicht oben beschrieben
worden sind und sich nicht auf die Wirkung der vorliegenden Erfindung
beziehen, dürften
dem Fachmann einleuchten. So können
beispielsweise zum Reduzieren des Stromverbrauchs (insbesondere
wenn die Clusteranordnung tragbar und batteriegespeist ist) die
Transceiver im Allgemeinen abgeschaltet werden, aber periodisch
erwachen um zu Prüfen,
ob es Nachrichten gibt.
-
Oben
stehend wurde ein drahtloses Kommunikationssystem beschrieben, indem
man Verteilungssystemfunktionalität hat, die eine dynamische
Zuleitung (oder Umleitung) von Nachrichtenpaketen unterstützt um Probleme
durch Mehrwegfehler bei HF-Kommunikationen
und Sichtliniensperrung von IR-Verbindungen zu minimieren. Die Systemanordnung
hat eine breite Skala von Applikationen einschließlich Fernbedienung
von Konsumentenelektronik, wie einen Steuerkanal zur Bewältigung
drahtloser Audio/Videosignalübertragung, Hausautomatisierung
(auf gleiche Weise wie die eingangs erwähnten Heim-Bussysteme), Spielsteuerung,
Sicherheitsdetektoren, drahtlose Keyboards, Datenverbindungen (wie
zwischen einem PC und Handgeräten) und
Telemetrie (wie Fern-Messinstrumentauslesung). Die erforderlichen
Anordnungsmerkmale, damit ein Gerät nach der vorliegenden Erfindung
funktionieren wird, erfordern in vielen Fällen nur die Hinzufügung einer Transceiver-Anordnung
und das resultierende System erfordert nicht eine spezialisierte
Basisstation, wodurch die Aufstartkosten minimiert und die Anfälligkeit
des Systems für
Anordnungsfehler reduziert wird. Text
in der Zeichnung Fig.
3
Transportschicht | Nachrichtenabhandlung |
Netzwerkschicht | Adressenverwaltung
Dynamische
Umleitung |
Verbindungsschicht | Fehlerkontrolle
Fehlerdetektion
Mediazugriffssteuerung |
Physikalische
Schicht | Funkmedia |
-
-
9
-
- Anfang
- Berechnen
- Voll ?
- Niedrig
- Niedrig < Neu
- Hinzufügen
- Ersetzen
- Ende