-
TECHNISCHES GEBIET
-
Die vorliegende Erfindung betrifft allgemein drahtlose Kommunikationssysteme und insbesondere ein Verfahren und eine Vorrichtung zum Schaffen einer transparenten Daten-Verbindungsbrücke, die zu einem drahtlosen Maschennetzwerk gehört.
-
HINTERGRUND
-
Eine Brücke ist eine Datenverbindungsverbindungs-Ebene (engl. layer) (Schicht 2) einer internetarbeitenden Einrichtung, die zwei lokale Netzwerke (LANs), wie zum Beispiel Ethernet-Netzwerke verbindet. Typischerweise kann die Brücke transparent für End-Knoten-Netzwerkgeräte sein, da die End-Knoten-Netzwerkgeräte sich der Brücke nicht gewahr sind. Zum Beispiel kann die Brücke eine transparente Brücke sein, die im 802.1D Standard beschrieben sein ist, der vom IEEE (Institute of Electrical and Electronic Engineers) entwickelt wurde (zum Beispiel der IEEE Standard 802.1D, 9. Juni 2004).
-
Insbesondere kann die transparente Brücke Quell- und Zieladresse in Paketen (oder Rahmen (engl. frames)) lesen und die Pakete auf ein anderes LAN Segment abhängig von den Adressen weiterleiten. Eine Brückentabelle kann genutzt werden, um einen oder mehrere Brückenanschlüsse nachzuverfolgen, durch die jedes Ziel erreicht werden kann (zum Beispiel ein Ausgangsanschluss). Zum Beispiel kann die Brückentabelle eine Zieladresse eines Paketes umfassen und wenn der entsprechende abgehende Anschluss ein beliebiger Brückenanschluss außer dem eingehenden Anschluß ist, durch den die transparente Brücke das Paket erhält, kann die transparente Brücke das Paket an das Ziel über den abgehenden Anschluss weiterleiten. Andererseits kann, wenn die Brückentabelle nicht die Zieladresse des Paketes umfasst, die Brückentabelle das Paket über alle Brückenanschlüsse außer dem, durch den das Paket eingegangen ist, weiterleiten.
-
Die
US 2004/0 190 454 A1 offenbart ein Verfahren zum Schaffen einer transparenten Brücke, die zu einem drahtlosen Maschennetzwerk gehört, wobei ein Brückenknoten als eine transparente Datenverbindungs-(Schicht 2)-Brücke betrieben wird, und der Brückenknoten einer von einer Vielzahl von Maschenknoten ist, die zu dem drahtlosen Maschennetzwerk gehören, und der Portalknoten das drahtlose Maschennetzwerk mit einem oder mehreren Kommunikationsnetzwerken koppelt. Im Brückenknoten erfolgt Identifizieren von Brückeninformation, die zu einem Ziel eines Paketes gehört, das an einem Brückenknoten empfangen wird, wobei die Brückeninformation aus einer Brückentabelle entnommen wird und einen Anschluss des Brückenknotens identifiziert, durch den ein Paket an ein Ziel geliefert werden kann, und Verarbeiten des Paketes basierend auf dieser Brückeninformation an einem oder mehreren einer Vielzahl von Maschenknoten.
-
Die
WO 03/069855 A1 betrifft ein Verfahren und eine Vorrichtung zum Verbinden von Gruppen von Geräten.
-
KURZE BESCHREIBUNG DER ZEICHNUNG
-
1 ist eine schematische Darstellung eines Beispiels eines drahtlosen Kommunikationssystems nach einem Ausführungsbeispiel der Methoden und Verfahren, die hierin offenbart sind.
-
2 zeigt ein Beispiel eines drahtlosen Maschennetzwerkes des drahtlosen Kommunikationssystems des Beispiels der 1.
-
3 zeigt eine beispielhafte Brückentabelle, die dazu genutzt werden kann, das drahtlose Maschennetzwerk der 2 zu implementieren.
-
4 zeigt ein Beispiel einer Routingtabelle, die dazu genutzt werden kann, das drahtlose Maschennetzwerk der 2 zu implementieren.
-
5 ist eine Blockdiagramm-Darstellung eines Beispiels eines Brückenknotens des beispielhaften drahtlosen Maschennetzwerkes der 2.
-
6 zeigt eine Art und Weise, in der der Brückenknoten der 5 des Beispiels konfiguriert werden kann, um eine transparente Brücke zu schaffen und die Brückentabelle zu managen.
-
7 zeigt eine Darstellung, in der der beispielhafte Brückenknoten der 5 konfiguriert werden kann, um Unicast-Datenpakete zu verarbeiten und eine Brückentabelle anzulegen.
-
8 zeigt eine Art und Weise, in der ein Nicht-Brückenknoten des drahtlosen Maschennetzwerk es der 2 konfiguriert werden kann, um mit einer transparenten Brücke zu kommunizieren und eine Routingtabelle zu managen.
-
9 zeigt eine Art und Weise, in der ein Maschenknoten des beispielhaften drahtlosen Maschennetzwerk der 2 konfiguriert werden kann, um Unicast-Mitteilungen zu konfigurieren und eine Routingtabelle basierend auf einem reaktiven Maschen-Routingprozess zu bestücken.
-
10 zeigt eine Art und Weise, in der ein Maschenknoten des beispielhaften drahtlosen Maschennetzwerkes der 2 konfiguriert werden kann, um Brückentyp-Routingeinträge in einer Routingtabelle zu konfigurieren.
-
11 zeigt ein Beispiel, in dem ein Maschenknoten des drahtlosen des Beispiels der 2 konfiguriert werden kann, um Unicast-Mitteilungen zu verarbeiten und eine Routingtabelle basierend auf proaktiven Maschen-Routingprozessen zu bestücken.
-
12 ist eine Blockdiagramm-Darstellung eines beispielhaften Prozessorsystems, das benutzt werden kann, um den beispielhaften Brückenknoten der 5 zu implementieren.
-
DETAILLIERTE BESCHREIBUNG
-
Im Allgemeinen werden ein Verfahren und Vorrichtungen zum Schaffen einer transparenten Brücke, die zu einem drahtlosen Maschennetzwerk gehört, hierin beschrieben. Nach einer beispielhaften Ausführung kann ein Brückenknoten Brückeninformation zu dem Ziel eines Paketes identifizieren. Der Brückenknoten kann einer Vielzahl von Maschenknoten sein, die zu einem drahtlosen Maschennetzwerk gehören. Das drahtlose Maschennetzwerk kann kommunikativ zu einem oder mehreren Kommunikationsnetzwerken über den Brückenknoten verkoppelt sein. In einem Beispiel kann der Brückenknoten Brückeninformation zu einem der Vielzahl von Maschenknoten des drahtlosen Maschennetzwerkes identifizieren. Der Brückenknoten kann auch Brückeninformation zu einem Knoten eines Kommunikationsnetzwerkes identifizieren, die mit dem drahtlosen Maschennetzwerk über den Brückenknoten gekoppelt sind. In einem anderen Beispiel kann der Brückenknoten Brückeninformation identifizieren, die einen Fehler anzeigt, das Ziel durch den Brückenknoten zu erreichen.
-
Dementsprechend kann einer oder mehrere der Vielzahl von Maschenknoten (zum Beispiel der Brückenknoten oder ein Nicht-Brückenknoten) das Paket basierend auf der Brückeninformation verarbeiten. In einem Beispiel kann ein Maschenknoten das Paket an das Ziel über eine Route durch einen bestimmten Brückenknoten weiterleiten, wenn die Routingtabelle des Maschenknotens mit einer Brückentabelle des Brückenknotens korrespondiert, die anzeigt, dass das Ziel durch einen nach außen gerichteten Anschluss einen anderen als den Anschluss, der mit dem drahtlosen Maschennetzwerk verbunden ist, erreicht werden kann. In einem anderen Beispiel kann der Maschenknoten die Pakete an alle Brückenknoten des drahtlosen Maschennetzwerkes weiterleiten, wenn die Routingtabelle des Maschenknotens scheitert, einen brückentypischen Eintrag mit dem Ziel des Paketes zu finden. In wieder einem anderen Beispiel kann der Maschenknoten das Paket an ein Ziel innerhalb des drahtlosen Maschennetzwerkes weiterleiten, wenn die Routingtabelle des Maschenknotens eine Route zum Ziel umfasst. Das Verfahren und die Vorrichtungen, die hierin beschrieben sind, sind nicht in dieser Beziehung beschränkt.
-
Bezugnehmend auf 1 wird ein drahtloses Kommunikationssystem 100 als Beispiel inklusive eines Maschennetzwerkes 110 beschrieben. Das drahtlose Maschennetzwerk 110 kann eine Vielzahl von Maschenknoten 120 umfassen, die allgemein als 121, 122, 123, 124 und 125 dargestellt sind.
-
Obwohl 1 fünf Maschenknoten zeigt, kann das drahtlose Maschennetzwerk 110 zusätzliche oder eine geringere Anzahl von Maschenknoten umfassen. Wie im Detail im Folgenden beschrieben, kann die Vielzahl von Maschenknoten 120 Access-Punkte, Neuverteilungspunkte, Endpunkte und/oder geeignete Verbindungspunkte für Verkehr schaffen, der über Maschen-Routen fließt, die vielfache Sprünge (hops) haben. Dementsprechend kann das drahtlose Maschennetzwerk 110 dazu in die Lage gesetzt werden, ein WPAN (Wireless Personal Area Network), ein WLAN (Wireless Local Area Network), ein WMAN (Wireless Metropolitan Area Network), ein WWAN (Wireless Wide Area Network) und/oder andere geeignete drahtlose Kommunikationsnetzwerke zu schaffen.
-
Das drahtlose Kommunikationssystem 100 kann auch andere Kommunikationsnetzwerke umfassen, die im Allgemeinen als 130 und 140 dargestellt sind. In einem Beispiel wird die Vielzahl der Maschenknoten 120 mit dem Kommunikationsnetzwerk 130 (zum Beispiel einem Ethernet LAN) über eine drahtgebundene Verbindung 135 kommunizieren können. In einem anderen Beispiel kann die Vielzahl von Maschenknoten 120 mit dem Kommunikationsnetzwerk 140 (zum Beispiel einem anderen drahtlosen Maschennetzwerk) über eine drahtlose Verbindung 145 kommunizieren. Die Vielzahl der Maschenknoten 120 kann in Übereinstimmung mit einem oder mehreren von verschiedenen drahtlosen Kommunikationsprotokollen arbeiten, um miteinander und/oder dem Kommunikationsnetzwerk 140 zu kommunizieren. Insbesondere können diese drahtlosen Kommunikationsprotokolle auf analogen, digitalen und/oder Dual-Modus Kommunikationssystem-Standards wie zum Beispiel dem Global System for Mobile Communications (GSM) Standard, dem FDMA (Frequency Division Multiple Access Standard), dem TDMA Standard (Time Division Multiple Access Standard), dem CDMA Standard (Code Division Multiple Access Standard), dem WCDMA Standard (Wideband CDMA Standard), dem GPRS Standard (General Packet Radio Services Standard), dem EDGE (Enhanced Data GSM Environment Standard), dem UTMS Standard (Universal Mobile Telecommunications System Standard), Variationen und Weiterentwicklungen dieser Standards und/oder anderen geeigneten drahtlosen Kommunikationsstandards basieren.
-
Die Vielzahl der Maschenknoten 120 kann eine Bandbreite von Modulationstechniken wie zum Beispiel das Breitspektrum modulieren (zum Beispiel DS-CDMA (Direct Sequence Code Division Multiple Access) und/oder FH-CDMA (Frequency Hopping Code Division Multiple Access), TDM Modulation (Time-Division Multiplexing Modulation), FDM (Frequency-Division Multiplexing Modulation), OFDM Modulation (Orthogonal Frequency-Division Multiplexing Modulation), MCM (Multi-Carrier Modulation) und/oder jede andere geeignete Technik zum Kommunizieren miteinander nutzen.
-
Insbesondere können die Maschenknoten 120 OFDM-Modulation nutzen, wie in der 802.xx Familie von Standards vom IEEE Institute of Electrical and Electronic Engineers und/oder Variationen und Weiterentwicklung dieser Standards beschrieben, (zum Beispiel 802.11x, 802.15, 802.16x, etc), um die über die drahtlose Kommunikationsverbindung miteinander zu kommunizieren. Die Vielzahl der Maschenknoten 120 kann auch nach anderen geeigneten drahtlosen Kommunikationsprotokollen arbeiten, die sehr niedrige Leistung benötigen, wie zum Beispiel Bluetooth, UWB (Ultra Wideband) und/oder RFID (Radio Frequency Identification), um miteinander zu kommunizieren.
-
Die Vielzahl der Maschenknoten 120 kann auch mit anderen Komponenten kommunizieren, die mit dem drahtlosen Maschennetzwerk kommunizieren. In einem Beispiel kann die Vielzahl der Maschenknoten 120 mit WLAN und/oder WWAN Geräten (nicht dargestellt) kommunizieren inklusive Netzwerk Interface Geräten und Peripheriegeräten (zum Beispiel Netzwerk-Interface-Karten (NICs), Zugriffspunkten (APs), Gateways, Brücken, Hubs, etc., um ein Mobilfunksystem zu implementieren, ein Satellitensystem, ein PCS (Personal Communication System), ein Zweiweg-Funksystem, ein Einweg-Pagersystem, ein Zweiweg-Pagersystem, ein PC-System, ein PDA(Personal Data Assistant)-System, ein PCA(Personal Computing Accessory)-System und/oder ein beliebiges anderes geeignetes Kommunikationssystem. Das Verfahren und die Vorrichtungen, die hierin beschrieben sind, sind in dieser Hinsicht nicht beschränkt.
-
In 2 kann ein Beispiel eines drahtlosen Kommunikationssystems 100 ein drahtloses Maschennetzwerk 210 umfassen. Das drahtlose Maschennetzwerk 210 kann eine Vielzahl von Maschenknoten 220 umfassen. Insbesondere kann die Vielzahl der Maschenknoten 220 einen oder mehrere Nicht-Brückenknoten, generell als 221, 222, 223, 224, 225, 226, 227, 228, 229, 230 und 231 dargestellt, umfassen. Das drahtlose Maschennetzwerk 210 kann auch einen oder mehrere Brückenknoten umfassen, die allgemein als 240 und 250 dargestellt sind.
-
Jeder der Brückenknoten 240 und 250 kann als eine transparente Datenverbindungs(Schicht 2)-Brücke betrieben werden, um das drahtlose Maschennetzwerk 210 an andere Kommunikationsnetzwerke zu koppeln. Zum Beispiel kann das drahtlose Maschennetzwerk 210 mit anderen Kommunikationsnetzwerken kommunikativ verkoppelt sein, die im Allgemeinen als 260 und 270 dargestellt sind, über jeweils die Brückenknoten 240 und 250. Jedes der Kommunikationsnetzwerke 260 und 270 kann in Bezug auf das drahtlose Maschennetzwerk 210 einen oder mehrere externe Knoten umfassen, die im Allgemeinen als 262, 272 und 274 dargestellt sind. Die externen Knoten 262 können mit dem Brückenknoten 240 über eine drahtgebundene und/oder drahtlose Verbindung kommunizieren. Auf gleiche Art und Weise können die externen Knoten 272 und 274 mit den Brückenknoten 250 über eine drahtgebundene und/oder drahtlose Verbindung kommunizieren. Jeder der Kommunikationsnetzwerke 260 und 270 kann ein drahtloses Maschennetzwerk, ein Ethernet Netzwerk und/oder ein anderer geeigneter Typ eines Kommunikationsnetzwerkes sein.
-
Das Ziel des Paketes, das von einem der Brückenknoten 240 und 250 gesendet oder weitergeleitet wurde, kann einer aus der Vielzahl der Maschenknoten 220 sein, die zum drahtlosen Maschennetzwerk 210 gehören. Zum Beispiel kann das Ziel eines Paketes, das von dem Brückenknoten 240 gesendet oder weitergeleitet wurde, ein Knoten innerhalb des drahtlosen Maschennetzwerkes 210 wie zum Beispiel ein Nicht-Brückenknoten 227 sein. Alternativ kann das Ziel eines Paketes, das von dem Brückenknoten 240 gesendet oder weitergeleitet wurde, ein Knoten sein, der mit einem Netzwerk kommunikativ an das drahtlose Maschennetzwerk gekoppelt ist (zum Beispiel ein Knoten außerhalb des drahtlosen Maschennetzwerk 210). Das bedeutet, dass der Knoten außerhalb des drahtlosen Maschennetzwerk 210 durch eine Vielzahl von Maschenknoten 220 über einen oder mehrere der Brückenknoten 240 und 250 zugänglich ist. In einem Beispiel kann der Brückenknoten 240 den externen Knoten 272 und 274 über einen Pfad durch den Maschenknoten 223, 226 und 250 erreichen. Ein Knoten außerhalb des drahtlosen Maschennetzwerkes 210 kann auch ohne Durchqueren des drahtlosen Maschennetzwerkes 210 zugänglich sein. Zum Beispiel kann der Brückenknoten 240 Zugriff auf den externen Knoten 262 ohne Durchqueren einer Vielzahl von Maschenknoten 220 haben.
-
Das Ziel eines Paketes, das von einem beliebigen der Nicht-Brückenknoten der Vielzahl der Maschenknoten gesendet oder weitergeleitet wurde, kann ebenfalls einer der Vielzahl der Maschenknoten 220 sein. Zum Beispiel kann das Ziel eines Paketes, das von einem Maschenknoten 231 gesendet oder weitergeleitet wurde, ein Knoten innerhalb des drahtlosen Maschennetzwerkes 210 wie zum Beispiel der Nicht-Brückenknoten 227 sein. Alternativ kann das Ziel eines Paketes, das von dem Maschenknoten 231 gesendet oder weitergeleitet wurde, ein Knoten sein, der mit einem Netzwerk kommunikativ zum drahtlosen Maschennetzwerk 210 verkoppelt ist (zum Beispiel ein Knoten außerhalb des drahtlosen Netzwerkes 210). Das bedeutet, dass der Knoten außerhalb des drahtlosen Maschennetzwerkes 210 an die Vielzahl der Maschenknoten 220 über einen oder mehrere der Brückenknoten 240 und 250 zugänglich ist. In einem Beispiel kann der Maschenknoten 231 die Außenknoten 272 und 274 über einen Pfad durch die Maschenknoten 227, 229 und 250 erreichen.
-
Um ein Paket an ein Ziel zu senden oder weiterzuleiten, kann jeder der Brückenknoten 240 und 250 das Paket basierend auf der Brücken- und Weiterleitinformation des drahtlosen Maschennetzwerkes 210 bearbeiten. Jeder der Verteilknoten 240 und 250 kann eine Brückentabelle (zum Beispiel die, die als 300 in 3 dargestellt ist) umfassen, die Brückeninformation aufweist, um einen nach außen abgehenden Anschluss zu identifizieren, durch den ein Paket an ein Ziel geliefert werden kann. Wie im Detail in Verbindung mit dem Verfahren 600 der 6 dargestellt, kann der Brückenanschluss basierend auf Kommunikation der Vielzahl von Maschenknoten 220 bestückt werden, die zum drahtlosen Maschennetzwerk 210 gehören.
-
Jeder der Vielzahl der Maschenknoten 220 kann eine Routingtabelle (zum Beispiel die, die als Bezugszeichen 400 in 4 dargestellt ist) umfassen, die Routing Mr. McGinnity-Information aufweist. Die Routingtabelle kann von einem reaktiven Maschen-Routing-Protokoll angelegt sein, wie zum Beispiel einem AODV (Ad-Hoc On-Demand Distance Vector) Routing-Protokoll und/oder einem proaktiven Maschen-Routing-Protokoll wie zum Beispiel einem DSDV (Destination-Sequenced Distance-Vector) Routing-Protokoll. In einem Beispiel kann der Nicht-Brückenknoten 231 des drahtlosen Maschennetzwerkes 210 eine korrespondierende Routingtabelle nutzen, die lokal gespeichert wird, um eine Route zu identifizieren, um eine Mitteilung an den Nicht-Brückenknoten 226 des drahtlosen Maschennetzwerkes 210 (zum Beispiel eine Intra-Netzwerk-Übertragung) zu senden. Wenn der Nicht-Brückenknoten 231 scheitert, eine Route in der Routingtabelle zu identifizieren, kann der Nicht-Brückenknoten 231 eine Routenanfrage initiieren. Die Brückenknoten 240 und 250 können Brückeneinträge zu ihren entsprechenden Brückentabellen zufügen, die zu dem Nicht-Brückenknoten 231 gehören. Der Nicht-Brückenknoten 226 kann eine Routenantwort erzeugen und durch das drahtlose Maschennetzwerk 210 übertragen. Die Routingtabelle des Nicht-Brückenknotens 231 kann zur Identifizierung einer Route zwischen den Nicht-Brückenknoten 226 und 231 Einträge erhalten. Der Brückenknoten 250 kann auch die Routenantwort erhalten und einen Brückeneintrag für seinen Brückentabelle für jeden Knoten entlang der Route erzeugen. Als Antwort auf den Empfang der Routenantwort kann der Nicht-Brückenknoten 231 das Paket zum Nicht-Brückenknoten 226 über einen Unicast-Liefermechanismus senden.
-
In einem anderen Beispiel kann der Brückenknoten 240 als transparente Brücke für ein Paket dienen, das von dem externen Knoten 262 des Kommunikationsnetzwerkes 260 an den Nicht-Brückenknoten 222 des drahtlosen Maschennetzwerkes 210 gesendet wurde (zum Beispiel eine Inter-Netzwerk-Übertragung). Der Brückenknoten 240 kann eine entsprechende Routingtabelle nutzen, die lokal beim Brückenknoten 240 gespeichert ist, um eine Route zu identifizieren, das Paket an den Nicht-Brückenknoten weiterzuleiten. Wenn die Routingtabelle des Brückenknotens 240 daran scheitert, eine Route an den Nicht-Brückenknoten 222 zu finden, kann der Brückenknoten 240 eine Pfadanforderung starten. Der Brückenknoten 250 kann die Pfadanforderung von dem Brückenknoten 240 empfangen. Entsprechend kann der Knoten 250 einen Brückeneintrag hinzufügen, der anzeigt, dass der Brückenknoten 240 mit dem drahtlosen Maschennetzwerk 210 zu einer korrespondierenden Brückentabelle gehört, die lokal beim Brückenknoten 240 gespeichert ist. Als Antwort auf den Empfang der Routenanforderung von Brückenknoten 240 kann der Nicht-Brückenknoten 222 eine Routenantwort erzeugen und übertragen. Der Brückenknoten 240 kann die Routenantwort erhalten und einen Routeneintrag in die entsprechende Routingtabelle für jeden Knoten entlang der Route erzeugen. Als Ergebnis werden die laufenden Datenpakete und andere Pakete, die von dem Brückenknoten 240 empfangen werden, der für den Nicht-Brückenknoten 222 bestimmt ist, die Route nutzen können, die von der Routingtabelle des Brückenknotens 240 angezeigt ist.
-
In wieder einem anderen Ausführungsbeispiel, wie es im Zusammenhang mit 3 und 4 beschrieben ist, wird der Nicht-Brückenknoten 223 des drahtlosen Maschennetzwerks 210 eine korrespondierende Routingtabelle 400 nutzen, die lokal beim Nicht-Brückenknoten 223 gespeichert werden kann, um eine Route zur Übertragung eines Paketes zu dem externen Knoten 272 des Kommunikationsnetzwerkes 270 zu übertragen (zum Beispiel eine Inter-Netzwerk-Übertragung). Wenn der Nicht-Brückenknoten 223 scheitert, einen Routing-eintrag zu der Route zum externen Knoten 272 in der Routingtabelle 400 zu finden, kann der Nicht-Brückenknoten 223 eine Pfadanforderung beginnen. Die Brückenknoten 240 und 250 können die Routinganforderung von Nicht-Brückenknoten 223 empfangen und einen Brückeneintrag in Übereinstimmung mit dem Nicht-Brückenknoten 223 in ihren entsprechenden Brückentabellen hinzufügen (zum Beispiel einen, der als Brückentabelle 300 in 3 dargestellt ist). Zum Beispiel kann der Brückenknoten 250 zusätzliche einen Brückeneintrag 310 an die Brückentabelle 300 hinzufügen. Die Brückentabelle 300 kann einen oder mehrere Brückeneinträge umfassen. Jeder Brückeneintrag kann eine Zieladresse und einen abgehenden Anschluss umfassen. Insbesondere kann der Brückeneintrag 310 eine Zieladresse umfassen, die mit dem Nicht-Brückenknoten 223 übereinstimmt. Der Brückeneintrag 310 kann auch einen Maschen-Anschluss als einen abgehenden Anschluss umfassen, da der Nicht-Brückenknoten 223 innerhalb des drahtlosen Maschennetzwerkes 210 ist.
-
Wenn die Routing-Anforderung vor dem Nicht-Brückenknoten 223, der eine Routing-Antwort von dem externen Knoten 272 empfängt, endet, kann der Nicht-Brückenknoten 223 einen Routingeintrag 410 in der korrespondierenden Routingtabelle 400 mit einer Broadcast-Adresse als nächster Sprung-Adresse für den externen Knoten 272 hinzufügen. Entsprechend kann der Nicht-Brückenknoten 223 das Paket an alle Brückenknoten des drahtlosen Maschennetzwerkes 210 mit dem externen Knoten 272 als Endpunkt übermitteln.
-
Zum Beispiel kann ein Flutungs(flooding)-Lieferungs-Mechanismus benutzt werden, alle Brückenknoten des drahtlosen Maschennetzwerkes 210 zu erreichen (engl. flood delivery). Die Brückenknoten 240 und 250 können eine Flutungsmitteilung (engl. flood message) empfangen und das Paket an die Kommunikationsnetzwerke 260 und 270 jeweils weiterleiten. Als Ergebnis kann der externe Knoten 272 das Paket durch den Brückenknoten 250 empfangen.
-
Zu einem späteren Zeitpunkt kann zum Beispiel der externe Knoten 272 ein Paket zurück zum Nicht-Brückenknoten 223 senden. Der Brückenknoten 250 kann auch das Paket empfangen und einen anderen Brückeneintrag 223 in der Brückentabelle 300 erzeugen. Zum Beispiel kann der Brückenknoten 250 einen Brückenanschluss als ausgehenden Anschluss zugehörig zu dem ausgehenden Knoten 272 identifizieren, da der externe Knoten 272 außerhalb des drahtlosen Maschennetzwerkes 210 ist. Entsprechend kann der Brückenknoten 250 eine Update-Mitteilung durch das drahtlose Maschennetzwerk 210 übersenden, so dass die Vielzahl der Maschenknoten 220 lernen kann, dass der Brückenknoten 250 der richtige Brückenknoten für den Zugriff auf den externen Knoten 272 des Kommunikationsnetzwerkes 270 ist. Jeder der Vielzahl der Maschenknoten 220 kann einen Routingeintrag zum externen Knoten 272 in seine jeweilige korrespondierende Routingtabelle hinzufügen. Zum Beispiel kann der Nicht-Brückenknoten 223 die Routingtabelle 400 mit einem Routingeintrag 420 erneuern. Insbesondere kann der Routingeintrag 420 die Adresse des Brückenknotens 250 als nächster Sprungadresse umfassen, um das Endziel des externen Knotens 272 zu erreichen. Weiter kann der Nicht-Brückenknoten 223 einen Routingeintrag 422 für den Brückenknoten 250 hinzufügen. Der Rou-tingeintrag 422 kann eine Knotenadresse des Nicht-Brückenknotens 226 als nächster Sprungadresse umfassen und eine Maschen-Route als Routentyp, da der Nicht-Brückenknoten 223 den Brückenknoten 250 über den Nicht-Brückenknoten 226 erreichen kann. Basierend auf der Routingtabelle 400 kann der Nicht-Brückenknoten 223 den Brückenknoten 250 identifizieren, wenn der Nicht-Brückenknoten 223 nach einem Weg sucht, um den externen Knoten 272 zu erreichen. Entsprechend kann der Nicht-Brückenknoten 223 eine Pfadanforderung an den Brückenknoten 250 erzeugen und übertragen, um einen Pfad zum Außenknoten 272 zu etablieren. Jeder Pfadknoten entlang einer Route zwischen den Nicht-Brückenknoten 223 und den Brückenknoten 250 kann wissen, dass der Brückenknoten 250 der richtige Brückenknoten für den externen Knoten 273 ist und eine optimale Route für den Brückenknoten 250 entdecken. Als Ergebnis kann jeder der Vielzahl der Maschenknoten 220 ein Paket an den externen Knoten 272 als Endziel über einen Unicast-Auslieferungsmechanismus senden. Das Verfahren und die Vorrichtungen, die hierin beschrieben sind, sind aber nicht hierauf beschränkt.
-
Bezugnehmend auf 5 wird zum Beispiel ein Brückenknoten 500 (zum Beispiel Brückenknoten 240 und 250 der 2) die erste Kommunikationsschnittstelle 510, eine zweite Kommunikationsschnittstelle 520, einen Controller 530 und einen Speicher 540 umfassen. Jeder der ersten und zweiten Kommunikationsschnittstellen 510 und 520 kann einen Empfänger umfassen, der allgemein als 512 bzw. 522 dargestellt ist, und einen Sender 514, der allgemeinen als 514 bzw. 524 dargestellt ist. Die ersten und zweiten Kommunikationsschnittstellen 510 und 520 können operativ mit dem Controller 530 gekoppelt sein. Der Controller 530 kann einen Maschen-Routing-Handler 532, einen Brücken-Update-Mitteilungs-Handler 534, einen Brücken-Mitteilungs-Handler 536 und einen Daten-Mitteilungs-Handler 538 umfassen. Der Controller 530 kann operativ mit dem Speicher 540 gekoppelt sein. Der Speicher 540 kann eine Brückentabelle 542 und eine Routingtabelle 544 umfassen.
-
Die erste Kommunikationsschnittstelle kann eine drahtlose Kommunikationsschnittstelle sein, die dazu eingerichtet ist, ein Paket oder mehrere Pakete von anderen Knoten über eine drahtlose Kommunikationsverbindung zu empfangen. Zum Beispiel kann die erste Kommunikationsschnittstelle 510 mit einem oder mehreren einer Vielzahl von Maschenknoten 220 des drahtlosen Maschennetzwerkes 210 kommunizieren (2). Die zweite Kommunikationsschnittstelle 520 kann eine drahtgebundene oder drahtlose Kommunikationsschnittstelle sein, die dazu konfiguriert ist, ein Paket oder mehrere Pakete von Knoten in anderen Kommunikationsnetzwerken (zum Beispiel ein Ethernet Netzwerk oder Maschennetzwerken) zu empfangen. Zum Beispiel kann die zweite Kommunikationsschnittstelle 520 mit den externen Knoten 272 und/oder 274 des Kommunikationsnetzwerkes 270 kommunizieren. Die ersten und zweiten Kommunikationsschnittstellen 510 und 520 können eines oder mehrere Unicast-, Broadcast- und/oder Multicast-Pakete empfangen.
-
Der Controller 530 kann konfiguriert werden, um die Pakete, die von den ersten und/oder zweiten Kommunikationsschnittstellen 510 und 520 empfangen werden, zu verarbeiten. Insbesondere kann der Maschen-Routing-Handler 532 konfiguriert werden, ein Paket an ein Ziel zu liefern, das zu einem drahtlosen Netzwerk 210 gehört. Zum Beispiel kann der Maschen-Routing-Handler 532 nach einem Maschen-Routing-Protokoll, wie zum Beispiel dem AODV-Routing-Protokoll, und/oder einem DSDV-Routing-Protokoll arbeiten, um ein Paket an einen der Vielzahl der Maschenknoten 220 weiterzuleiten. Der Brücken-Update-Mitteilungs-Handler 534 kann konfiguriert werden, um eine Brücken-Update-Mitteilung auszusenden, um andere Maschenknoten des drahtlosen Maschennetzwerkes 210 von Änderungen in der Brückentabelle 542 zu informieren. Zum Beispiel kann die Brücken-Update-Mitteilung Information im Zusammenhang mit dem Ort eines neuen Knotens, dem Auslaufen eines unbenutzten Brückeneintrages, der Mobilität eines Knotens, und/oder weitere Änderungen in der Brückentabelle 542 umfassen. Der Brücken-Mitteilungs-Handler 536 kann dazu konfiguriert werden, die Brückentabelle 542 durch Hinzufügen, Löschen und/oder Modifizieren eines oder mehrerer Brückeneinträge zu den Zielen zu erneuern. Der Daten-Mitteilungs-Handler 538 kann konfiguriert werden, um die Pakete, wie im Detail im weiteren beschrieben, zu verarbeiten.
-
Die Brückentabelle 542 und die Routingtabelle 544 können als Antwort auf Routinganforderungen an und/oder von anderen Knoten zu dem drahtlosen Maschennetzwerk des Brückenknotens 500 bestückt werden. Die Brückentabelle 542 kann einen oder mehrere Brückeneinträge umfassen, um einen oder mehrere Brückenanschlüsse nachzuverfolgen, durch die jedes Ziel erreicht werden kann. Die Routingtabelle 544 kann einen Routingeintrag zu jedem Ziel umfassen, der dem Brückenknoten 500 bekannt ist. Jeder Routingeintrag kann eine Zieladresse und eine Nächst-Sprungadresse umfassen. Die Zieladresse kann mit dem Ziel eines Paketes zusammengehören. Für eine Maschen-Route kann eine Nächst-Sprungadresse die Adresse des nächsten Sprungs (hop) entlang einer Route zum Ziel des Paketes sein (zum Beispiel kann das Ziel ein Knoten innerhalb des drahtlosen Maschennetzwerkes 210 oder ein Knoten außerhalb des Maschennetzwerkes 210 sein).
-
Obwohl 5 zwei Kommunikationsschnittstellen zeigt, kann der Brückenknoten 500 zusätzliche Kommunikationsschnittstellen umfassen. Auch können während die Komponenten, die in 5 als separate Blöcke innerhalb des Brückenknotens 500 dargestellt sind, die Funktionen von einigen dieser Blöcke innerhalb eines einzigen Halbleiterschaltkreises integriert werden oder unter Benutzung von zwei oder mehr separaten integrierten Schaltkreisen implementiert werden. Zum Beispiel kann, obwohl der Empfänger 512 und der Sender 514 als separate Blöcke innerhalb des ersten Kommunikationsinterfaces 510 gezeigt sind, der Empfänger 512 in den Sender 514 integriert werden (zum Beispiel als ein Transceiver). In einer ähnlichen Weise kann der Empfänger 522 und der Sender 524 in eine einzige Komponente integriert werden. Weiter kann, obwohl das erste Kommunikationsinterface 510 und das zweite Kommunikationsinterface 520 als separate Blöcke dargestellt sind, das erste und zweite Kommunikationsinterface 510 und 520 in eine einzige Komponente integriert werden.
-
6–11 zeigen eine Art und Weise, in der eine Vielzahl von Maschenknoten 220 konfiguriert werden kann, um eine transparente Datenverbindungsbrücke zu schaffen, die mit dem drahtlosen Maschennetzwerk 210 in Verbindung steht. Die Beispielprozesse 600, 700, 800, 900, 1000 und 1100 der 6, 7, 8, 9, 10 und 11 können jeweils als maschinenlesbare Befehle implementiert werden, die einen beliebigen von vielen verschiedenen Programmcodes nutzten, die auf einer Kombination von maschinenlesbaren Medien wie zum Beispiel flüchtigen oder nichtflüchtigen Speichern oder anderen Massenspeichergeräten (zum Beispiel Floppy Disk, einer CD und einer DVD) gespeichert sind. Zum Beispiel können die maschinenlesbaren Befehle in einem maschinenlesbaren Medium, wie zum Beispiel einem PGA (Programmable Gate Array) einem ASIC (Application Specific Integrated Ciruit), einem EPROM (Erasable Programmable Read Only Memory), einem ROM (Read Only Memory), RAM (Random Access Memory), einem magnetischen Medium, einem optischen Medium und/oder anderen geeigneten Typen und Medien verkörpert sein.
-
Weiterhin können, obwohl eine bestimmte Reihenfolge von Schritten in jeder der 6, 7, 8, 9 10 und 11 beschrieben ist, diese Befehle in anderer zeitlicher Reihenfolge durchgeführt werden. Wieder werden die Beispielprozesse 600, 700, 800, 900, 1000 und 1100 lediglich angeführt und beschrieben als Beispiele in Übereinstimmung mit den Vorrichtungen der 2 und 5, um die Vielzahl der Maschenknoten 220 zu konfigurieren, um eine transparente Daten-Verbindungsbrücke im Zusammenhang mit dem drahtlosen Netzwerk 210 zu schaffen.
-
In dem Beispiel der 6 kann das Verfahren 600 mit einem Brückenknoten beginnen (zum Beispiel dem Brückenknoten 500), der auf den Empfang eines Paketes überwacht (Block 610). Wenn der Brückenknoten 500 ein Paket nicht empfängt, kann der Brückenknoten 500 weiter auf den Empfang eines Paketes überwachen. Andererseits wird, wenn der Brückenknoten 500 ein Paket empfängt, der Brückenknoten 500 eine Quelladresse zu dem Paket in einer dritten Tabelle, zum Beispiel der Brückentabelle 300 hinzufügen (Block 620).
-
Der Brückenknoten 500 kann feststellen, ob das Paket eine Hinzufügungsmitteilung umfasst (Block 630). Wenn das Paket eine Hinzufügungsmitteilung (Ad-Message) umfasst, kann der Verteilknoten 500 einen Brückeneintrag hinzufügen, der Brückeninformation für eine korrespondierende Brückentabelle (zum Beispiel die Brückentabelle 542) umfasst und einen Brückentypeintrag für ein bestimmtes Ziel zu einer korrespondierenden Routingtabelle (zum Beispiel Routingtabelle 544) (Block 635). Wie oben beschrieben, wird jeder Brückenknoten eine korrespondierende Brückentabelle und eine korrespondierende Routingtabelle umfassen, die lokal am Brückenknoten gespeichert werden kann. Entsprechend kann der Brückenknoten 500 das Paket an andere Maschenknoten weiterleiten, die zu dem drahtlosen Maschennetzwerk 210 gehören (Block 640).
-
Andererseits kann, wenn das Paket keine Hinzufügungsmitteilung umfasst, der Brückenknoten 500 feststellen, ob das Paket eine Löschen-Mitteilung umfasst (Block 650). Wenn das Paket eine Löschen-Mitteilung umfasst, kann der Brückenknoten 500 einen Brückeneintrag aus der Brückentabelle 542 entfernen und einen Brückeneintrag aus der Routingtabelle 544 (Block 655) entfernen. Der Brückenknoten 500 kann das Paket an andere Maschenknoten weiterleiten, die zu dem drahtlosen Maschennetzwerk 210 gehören (Block 640).
-
Wenn das Paket keine Löschen-Mitteilung an Block 650 umfasst, kann der Brückenknoten 500 feststellen, ob das Paket eine Entwerte-Mitteilung umfasst (Block 660). Wenn das Paket eine Entwerte-Mitteilung umfasst, kann der Brückenknoten 500 alle Brückentyp-Einträge aus der Routingtabelle 544 entfernen (Block 655). Brückenknoten 500 kann das Paket weiterleiten an andere Maschenknoten, die zu dem drahtlosen Maschennetzwerk 210 gehören (Block 640).
-
Wenn das Paket keine Entwerte-Mitteilung an Block 660 umfasst, kann der Brückenknoten 500 bestimmen, ob das Paket eine Unicast-Datenmitteilung umfasst (Block 670). Wenn das Paket eine Unicast-Datenmitteilung umfasst, kann der -Brückenknoten 500 ein Unicast-Datenpaket, das zu der Unicast-Datenmitteilung gehört, wie im Folgenden zum Prozess 700 der 7 beschrieben, verarbeiten.
-
In 7 kann das Verfahren 700 mit dem Brückenknoten 500 beginnen (zum Beispiel über den Controller 530), der nach Unicast-Paketen überwacht, um die Brückentabelle 542 zu bestücken (Block 710). Zum Beispiel kann der Brückenknoten 500 ein Unicast Paket über die erste Kommunikationsschnittstelle 510 und/oder die zweite Kommunikationsschnittstelle 520 empfangen. Wenn der-Brückenknoten 500 kein Unicast-Paket empfängt, kann der Brückenknoten 500 weiter nach Unicast-Paketen überwachen. Andererseits kann, wenn der Brückenknoten 500 ein Unicast-Paket empfängt, der Brückenknoten 500 einen Brückeneintrag zur Quelladresse des Paketes zur Brückentabelle 542 hinzufügen oder erneuern (Block 715).
-
Der Brückenknoten 500 kann feststellen, ob der Brückenknoten 500 das Ziel des Unicast-Paketes ist (Block 720). Wenn der Brückenknoten 500 das Ziel des Unicast-Paketes ist, kann der Brückenknoten 500 das Unicast-Paket an einen lokalen Daten-Mitteilungs-Handler zur Weiterverarbeitung abgeben (zum Beispiel den Daten-Mitteilungs-Handler 538) (Block 725). Andererseits kann, wenn der Brückenknoten 500 nicht das Ziel des Unicast-Paketes ist, der Brückenknoten 500 feststellen, ob die Brückentabelle 542 einen Brückeneintrag zu dem Ziel des Unicast-Paketes umfasst (Block 730). Zum Beispiel kann der Brückeneintrag Adressen des Ziels und des ausgehenden Anschlusses umfassen, durch den das Ziel erreicht wird.
-
Wenn die Brückentabelle 542 keinen Brückeneintrag umfasst, der zum Ziel gehört, wird der Brückenknoten 500 das Paket an alle aktiven Brückenanschlüsse des Brückenknotens 500 weiterleiten können (Block 735). Basierend auf einem Spanning Tree, um Schleifen zu vermeiden, kann der Brückenknoten 500 das Paket an alle unblockierten Brückenanschlüsse weiterleiten. Der Spanning Tree kann unter Benutzung zum Beispiel der IEEE Standards 802.1D, 802.1W, und/oder 802.1s. bestimmt werden. Um ein Paket an einen Anschluss weiterzuleiten, der mit einem drahtlosen Maschennetzwerk in Verbindung steht, kann der Brückenknoten 5000 einen Maschen-Routing-Vorgang implementieren (zum Beispiel den Vorgang 900 der 9 oder den Vorgang 1100 der 11), um das Paket an das Ziel zu liefern (zum Beispiel einen Brückenknoten oder einen Nicht-Brückenknoten). Andererseits, wird, wenn die Brückentabelle einen Brückeneintrag zu dem Ziel an Block 730 umfasst, der Brückenknoten 500 feststellen, ob der Brückeneintrag einen Brückenanschluss identifiziert, der zu einem (Maschennetzwerk zugehört (zum Beispiel ein Maschen-Anschluss) (Block 740).
-
Wenn der Brückeneintrag einen Maschen-Anschluss identifiziert, kann der Brückenknoten 500 feststellen, ob der Brückenknoten 500 das Paket über den besonderen Maschen-Anschluss empfangen hat (Block 750). Wenn der Brückenknoten 500 das Paket nicht über den Maschen-Anschluss empfangen hat, kann der Brückenknoten 500 das Paket über den besonderen Maschen-Anschluss weiterleiten durch Implementieren eines Maschen-Routing-Vorganges (zum Beispiel des Vorganges 900 der 9 oder des Vorgangs 1100 der 11). Der Brückenknoten 500 kann das Paket über den Brückenanschluss weiterleiten, der von dem Brückeneintrag identifiziert wurde, wenn der Brückenknoten 500 das Paket von einem Brückenanschluss anders als von dem Brückenanschluss, der durch den Brückeneintrag in Block 750 identifiziert ist, empfängt. Andererseits kann, wenn der Brückenknoten 500 das Paket über den Brückenanschluss empfängt, der Brückenknoten 500 das Paket verwerfen (Block 760). Das bedeutet, dass, falls der eingehende Anschluss, durch den der Brückenknoten 500 das Paket empfängt, der gleiche ist, wie der ausgehende Anschluss, der von dem Brückeneintrag der Brückentabelle 542 identifiziert wurde, dann der Brückenknoten 500 das Paket verwerfen kann.
-
Bezugnehmend auf Block 740 wird, wenn der Brückeneintrag einen Nicht-Maschen-Anschluss identifiziert, der Brückenknoten 500 feststellen, ob der Brückenknoten 500 das Paket über einen Flutungs(Flooding)lieferungsmechanismus an alle Maschenknoten empfangen hat, die zu dem drahtlosen Maschennetzwerk gehören (Block 770). Wenn der Brückenknoten 500 das Paket über einen Flutungslieferungsmechanismus erhalten hat, kann der Brückenknoten 500 eine Hinzufügungsmitteilung an die anderen Brückenknoten, die zum drahtlosen Maschennetzwerk gehören, aussenden, um eine oder mehrere Brückentabellen entsprechend zu jedem der anderen Brückenknoten auf den neuesten Stand zu bringen (Block 780). Entsprechend kann der Brückenknoten 500 das Paket über einen ausgehenden Anschluss, wie durch den Brückeneintrag angezeigt, weiterleiten (Block 790). Zum Beispiel kann der Brückeneintrag einen ausgehenden Anschluss, der zu einem Knoten gehört, der zu einem Netzwerk gehört, das kommunikativ an das drahtlosen Netzwerk des Brückenknotens 500 gekoppelt ist (zum Beispiel außerhalb des drahtlosen Maschennetzwerkes) identifizieren. Andererseits kann, wenn der Brückenknoten 500 das Paket nicht durch einen Flutungslieferungsmechanismus bei Block 770 erhalten hat, der Brückenknoten direkt zu Block 790 voranschreiten.
-
Bezugnehmend auf Block 670 der 6 kann, wenn das Paket keine Unicast-Datenmitteilung enthält, der Brückenknoten 500 feststellen, ob das Paket eine BDM (Broadcast-Datenmitteilung) umfasst (Block 680). Wenn das Paket keine BDM umfasst, kann die Steuerung zurück zu Block 610 gehen, so dass der Brückenknoten 500 auf andere Pakete überwachen kann. Wenn das Paket eine BDM umfasst, kann der-Brückenknoten 500 feststellen, ob der Brückenknoten 500 das Paket zuvor erhalten hat (Block 685). Wenn der Brückenknoten 500 das Paket zuvor erhalten hat, kann der Brückenknoten das Paket verwerfen (Block 690). Wenn der Brückenknoten 500 das Paket nicht zuvor erhalten hat, kann der Brückenknoten 500 das Paket an andere Maschenknoten des drahtlosen Maschennetzwerkes 210 weiterleiten (Block 640) und das Paket an alle aktiven Anschlüsse aussenden. Das Verfahren und die Vorrichtungen, die hierin beschrieben sind, sind aber nicht in dieser Hinsicht beschränkt.
-
In dem Beispiel der 8 kann der Vorgang 800 mit einem Nicht-Brückenknoten beginnen, der auf ein Paket überwacht (Block 805). Wenn der Nicht-Brückenknoten kein Paket empfängt, kann der Nicht-Brückenknoten weiterhin auf ein Paket überwachen. Wenn der Nicht-Brückenknoten ein Paket empfängt, kann der Nicht-Brückenknoten entscheiden, ob das Paket eine Hinzufügungsmitteilung umfasst (Block 810). Wenn das Paket eine Hinzufügungsmitteilung umfasst, kann der Nicht-Brückenknoten einen portaltypischen Routingeintrag in eine entsprechende Routingtabelle einfügen, die lokal beim Nicht-Brückenknoten gespeichert sein kann (Block 815). Der portaltypische Routingeintrag kann Adressen des Zielknotens und einen Brückenknoten umfassen. Entsprechend kann der Nicht-Brückenknoten das Paket an andere Maschenknoten weiterleiten, die zum drahtlosen Maschennetzwerk 110 gehören (Block 820).
-
Andererseits kann, wenn das Paket keine Hinzufügungsmitteilung umfasst, der Nicht-Brückenknoten entscheiden, ob das Paket eine Löschen-Mitteilung umfasst (Block 830). Wenn das Paket eine Löschen-Mitteilung umfasst, kann der Nicht-Brückenknoten einen portalspezifischen Routingeintrag aus der korrespondierenden Routingtabelle entfernen (Block 835). Der Nicht-Brückenknoten kann das Paket an die anderen Maschenknoten weiterleiten, die zu dem drahtlosen Maschennetzwerk 310 gehören (Block 820).
-
Wenn das Paket keine Löschen-Mitteilung an Block 830 enthält, kann der Nicht-Brückenknoten feststellen, ob das Paket eine Entwerte-Mitteilung umfasst (Block 840). Wenn das Paket eine Entwerte-Mitteilung umfasst, kann der Nicht-Brückenknoten alle portaltypischen Routingeinträge aus der korrespondierenden Routingtabelle entfernen (Block 845). Der Nicht-Brückenknoten kann das Paket an andere Maschenknoten weiterleiten, die zum drahtlosen Maschennetzwerk 210 gehören (Block 820).
-
Wenn das Paket keine Entwerte-Mitteilung an Block 840 umfasst, kann der Nicht-Brückenknoten feststellen, ob das Paket eine Unicast-Datenmitteilung umfasst (Block 850). Wenn das Paket eine Unicast-Datenmitteilung umfasst, kann der Nicht-Brückenknoten ein Unicast-Datenpaket verarbeiten, das zu der Unicast-Datenmitteilung gehört, die unten beschrieben ist, in Verbindung mit entweder dem Verfahren 900 der 9 oder dem Verfahren 1100 der 11. Der Nicht-Brückenknoten kann das Unicast-Datenpaket basierend auf dem Typ des Maschen-Routing verarbeiten. Zum Beispiel kann, wenn der Nicht-Brückenknoten dazu eingerichtet ist, ein Paket reaktiv zu routen, der Nicht-Brückenknoten zum Vorgang 900 voranschreiten. Andererseits kann, wenn der Nicht-Brückenknoten dazu konfiguriert ist, ein Paket pro-aktiv zu routen, der Nicht-Brückenknoten zum Vorgang 1100 voranschreiten.
-
Wenn das Paket keine Unicast-Datenmitteilung umfasst, kann der Nicht-Brückenknoten feststellen, ob das Paket eine BDM (Broadcast-Datenmitteilung) umfasst (Block 860). Wenn das Paket keine BDM umfasst, kann die Steuerung zu Block 805 zurückkehren, so dass der Nicht-Brückenknoten für ein anderes Paket überwachen kann. Andererseits kann, wenn das Paket eine BDM umfasst, der Nicht-Brückenknoten entscheiden, ob der Nicht-Brückenknoten das Paket zuvor erhalten hat (Block 865). Wenn der Nicht-Brückenknoten das Paket zuvor erhalten hat, kann der Nicht-Brückenknoten das Paket verwerfen (Block 870). Wenn der Nicht-Brückenknoten das Paket nicht zuvor erhalten hat, kann der Nicht-Brückenknoten das Paket zu anderen Netzknoten des drahtlosen Maschennetzwerk 210 weiterleiten (Block 820).
-
Wie oben beschrieben, kann das Liefern eines Paketes, das zu einem drahtlosen Maschennetzwerk gehört, die Benutzung einer Routingtabelle umfassen, bestückt in einem Maschen-Routing-Vorgang, wie zum Beispiel einem reaktiven Maschen-Routing-Vorgang 900 der 9 oder einem pro-aktiven Maschen-Routing-Vorgang 1100 der 11. Bezugnehmend auf 9 kann zum Beispiel das reaktive Maschen-Routing-Verfahren 900 mit einem der Vielzahl der Maschenknoten 220 beginnen, die zu dem drahtlosen Maschennetzwerk 210 gehören (zum Beispiel einem Brückenknoten oder einem Nicht-Brückenknoten), wobei auf ein Unicast-Paket überwacht wird (Block 910). Wenn der Maschenknoten kein Unicast-Paket empfängt, kann die Steuerung zurück zu Block 910, um auf ein Unicast-Paket zu überwachen. Andererseits kann, wenn der Maschenknoten ein Unicast-Paket bei Block 910 empfängt, der Maschenknoten bestimmen, ob der Maschenknoten das Ziel des Unicast-Paketes ist (Block 920).
-
Wenn der Maschenknoten das Ziel des Unicast-Paketes ist, kann der Maschenknoten das Unicast-Paket an den lokalen Mitteilungs-Handler zur Weiterverarbeitung liefern (zum Beispiel dem Mitteilungs-Handler (Data Message Handler) 538 der 5) (Block 925). Andererseits kann, wenn der Maschenknoten nicht das Ziel des Unicast-Paketes ist, der Maschenknoten feststellen, ob eine korrespondierende Routingtabelle einen Routingeintrag umfasst, der zu dem Ziel gehört (Block 930).
-
Wenn die Routingtabelle keinen Routingeintrag aufweist, der zu dem Ziel gehört, kann der Maschenknoten einen Routensuchlauf beginnen, um eine Route zum Ziel zu finden (Block 940 und 945). Wenn der Maschenknoten eine Route zu dem Ziel findet, kann der Maschenknoten einen Routingeintrag mit einem Nächst-Sprung zur Knotenadresse entlang der Route zum Ziel in der Routingtabelle einfügen (Block 950). Entsprechend kann der Maschenknoten den Nächst-Sprung des Unicast-Paketes zum Ziel festlegen (Block 955). Der Maschenknoten kann das Unicast-Paket an das Ziel über einen Unicast-Lieferungsmechanismus weiterleiten (Block 960). Andererseits kann, wenn der Maschenknoten eine Route zum Ziel am Block 945 nicht entdeckt, der Maschenknoten einen Routingeintrag mit einem Nächst-Sprung in die Routingtabelle einfügen, der zum Beispiel gleich einer Broadcast-Adresse ist. Das Paket kann an alle Brückenknoten innerhalb des drahtlosen Maschennetzwerks geliefert werden unter Benutzung zum Beispiel eines Flutungslieferungsmechanismus (Block 975).
-
Bezugnehmend auf Block 930 kann, wenn die Routingtabelle einen Routingeintrag zu dem Ziel umfasst, der Maschenknoten festlegen, ob der Routingeintrag mit einer Route zu einem Brückenknoten zugehörig ist (auf zum Beispiel einem Portaltyp Routing Entry) (Block 980). Wenn der Routingeintrag zu einer Route zu einem Brückenknoten gehört, kann der Maschenknoten zu einem Portaltyp Routingeintrag-Vorgang 1000 voranschreiten.
-
Bezugnehmend auf 10 kann zum Beispiel der portal-typische Routingeintragvorgang 1000 mit einem Maschenknoten beginnen, der feststellt, ob die Routingtabelle einen Eintrag für einen Brückenknoten aufweist, der in dem portal-typischen Routingeintrag anzeigt, dass der portal-typische Routingeintrag-Vorgang 1000 (Block 1010) eingeleitet wurde. Wenn die Routingtabelle einen Eintrag für den Brückenknoten nicht umfasst, kann der Maschenknoten einen Routensuchvorgang starten, um eine Route zu dem Brückenknoten zu finden (Block 1020). Der Maschenknoten kann auf eine Routenantwort in einem Brückenknoten überwachen (Block 1030). Wenn der Maschenknoten keine Route zu dem Brückenknoten findet, kann der Maschenknoten einen Routingeintrag mit einem Nächstsprung zu zum Beispiel einer Broadcastadresse in der Routingtabelle einfügen (Block 1040). Entsprechend kann der Maschenknoten das Unicast-Paket an alle Brückenknoten des drahtlosen Maschen-Netzwerkes über einen Flutungslieferungsmechanismus weiterleiten (Block 1045).
-
Andererseits wird, wenn der Maschenknoten eine Route zu dem Brückenknoten an dem Block 1030 findet, der Maschenknoten einen Routingeintrag für den Brückenknoten in die Routingtabelle einfügen (Block 1060). Der Maschenknoten kann den Nächstsprung des Unicast-Paketes zu dem Nächstsprungknoten zu dem Brückenknoten setzen (Block 1065). Entsprechend kann der Maschenknoten das Unicast-Paket zu dem Brückenknoten über einen Unicastliefermechanismus weiterleiten (Block 1050).
-
Wenn die Routingtabelle den Portaltypeintrag am Block 1010 umfasst, kann die Steuerung direkt am Block 1065 voranschreiten, um den Nächstsprung des Unicast-Paketes zu dem Nächstsprungknoten zum Brückenknoten zu setzen. Der Maschenknoten kann das Unicast-Paket zu dem Brückenknoten über einen Unicastliefermechanismus weiterleiten (Block 1050). Entsprechend kann der portalhafte Routingeintragevorgang 1000 enden.
-
Bezugnehmend auf Block 980 in 9 kann, wenn der Routingeintrag nicht mit einer Route zu einem Brückenknoten zugehörig ist, der Maschenknoten feststellen, dass der Routingeintrag mit einer Route zu einem Maschenknoten zugehörig ist (zum Beispiel einem Maschen-Typ-Routingeintrag) (Block 985). Wenn der Routingeintrag zu einer Route zu einem Maschenknoten gehörig ist, kann der Maschenknoten den Nächstsprung des Unicast-Paketes zum Nächstsprungknoten zum Ziel setzen (Block 955). Entsprechend kann der Maschenknoten das Unicast-Paket zum Ziel über einen Unicast-Lieferngsmechanismus weiterleiten (Block 960). Andererseits kann, wenn der Routingeintrag nicht zu einer Route zum Maschenknoten am Block 985 gehört, der Maschenknoten das Unicastpaket zu allen Brückenknoten, die zu dem drahtlosen Maschennetzwerk gehören, über einen Flutungslieferungsmechanismus weiterleiten (Block 990).
-
Die Unicastlieferung eines Paketes in einem drahtlosen Maschennetzwerk kann einen proaktiven Maschen-Routingvorgang 1100 wie in 11 benutzen. Der beispielhafte Vorgang 1100 kann mit einem Maschenknoten beginnen (zum Beispiel dem Brückenknoten 500 und/oder einem anderen aus der Vielzahl der Maschenknoten 220, die mit dem drahtlosen Maschennetzwerk 210 in Verbindung stehen), der nach einem Unicast-Paket Ausschau hält (Block 1110). Wenn der Maschenknoten kein Unicast-Paket empfängt, kann die Steuerung zum Block 1100 zurückkehren, um weiter auf ein Unicastpaket zu überwachen. Andererseits wird, wenn der Maschenknoten ein Unicast-Paket empfängt, der Maschenknoten feststellen können, ob der Maschenknoten Ziel des Unicast Datenpaketes ist (Block 1120).
-
Wenn der Maschenknoten das Ziel des Unicast-Paketes ist, kann der Maschenknoten das Unicast-Paket an einen lokalen Datenmitteilungs-Handler (local data message handler) zum Verarbeiten liefern (Block 1125). Andererseits kann, wenn der Machenknoten nicht das Ziel des Unicastpaketes ist, der Maschenknoten feststellen, ob eine lokal abgespeicherte Routingtabelle einen Routingeintrag umfasst, der zu dem Ziel gehört (Block 1130).
-
Wenn die Routingtabelle keinen Routingeintrag zu dem Ziel umfasst, kann der Maschenknoten das Unicast-Paket an alle-Brückenknoten senden, die zu dem drahtlosen Maschennetzwerk gehören, zum Beispiel über einen Flutlieferungsmechanismus (Block 1135). Andererseits kann, wenn die Routingtabelle einen Routingeintrag umfasst, der zu dem Ziel gehört, der Maschenknoten feststellen, ob der Routingeintrag zu einem portaltypischen Routingeintrag gehört (Block 1140).
-
Wenn der Routingeintrag mit einem Brückenknoten verknüpft ist (zum Beispiel einem portaltypischen Eintrag), kann der Maschenknoten feststellen, ob die Routingtabelle einen Routingeintrag zu dem Brückenknoten umfasst (Block 1150). Wenn die Routingtabelle keinen Routingeintrag zu dem Brückenknoten umfasst, kann der Maschenknoten das Unicast-Paket an alle Brückenknoten weiterleiten, die mit dem drahtlosen Maschennetzwerk in Verbindung stehen, zum Beispiel über einen Flutungslieferungsmechanismus (Block 1135). Andererseits kann, wenn die Routingtabelle einen Routingeintrag zu dem Brückenknoten umfasst, der Maschenknoten den Nächstsprung des Unicast-Paketes zum Nächstsprungknoten zu dem Brückenknoten setzen (Block 1155). Der Maschenknoten kann das Unicast-Paket zum Brückenknoten über einen Unicast-Lieferungsmechanismus (Block 1165) weiterleiten.
-
Bezugnehmend wiederum auf Block 1140 kann der Maschenknoten, wenn der Routingeintrag nicht mit einem Brückenknoten verbunden ist (zum Beispiel ein MAschen-typischer Routingeintrag) den Nächstsprung des Unicast-Paketes zum Nächstsprungknoten zum Ziel festsetzen (Block 1160). Entsprechend kann der Maschenknoten das Unicast-Paket zum Ziel über einen Unicast-Lieferungsmechanismus weiterleiten (Block 1165).
-
Während das Verfahren und die Vorrichtungen, die hierin beschrieben sind, in Bezug auf Unicast- und Broadcast-Pakete beschrieben sind, werden Verfahren und Vorrichtungen, wie hierin leicht auf andere Typen von Paketen wie zum Beispiel Multicast-Pakete anwendbar sein. Zusätzlich können sowohl das Verfahren und die Vorrichtungen, die hierin beschrieben sind und in Bezug auf Pakete offenbart wurden, leicht auf andere Typen von Datenformaten, wie zum Beispiel Rahmen, anwendbar sein. Weiter können, während das Verfahren und die Vorrichtungen, die hierin beschrieben in Bezug auf drahtlose Maschennetzwerke offenbart sind, leicht auf andere geeignete Typen von drahtlosen Kommunikationsnetzwerken anwendbar sein. Zum Beispiel können die hierin beschriebenen Verfahren und Vorrichtungen zu WLANs, WPANs, WMANs und/oder WWANs angewendet werden.
-
12 ist ein Blockdiagramm eines beispielhaften Prozessorsystems 2000, das dazu in der Lage ist, das Verfahren und die Vorrichtungen, die hierin offenbart sind, anzuwenden. Das Prozessorsystem 2000 kann ein Desktopcomputer, ein Laptopcomputer, ein Handheldcomputer, ein Tablettcomputer, ein PDA, ein Server, eine Internetzugangseinrichtung und/oder andere Typen von Recheneinrichtungen sein.
-
Das Prozessorsystem 2000, das in 12 beschrieben ist, umfasst einen Chipsatz 2010, der einen Speicher-Controller 2012 und einen I/O (Input/Output) Controller 2014 umfasst. Der Chipsatz 2010 kann einen Speicher und I/O Managementfunktion wie auch eine Vielzahl von allgemeinen Registern oder Registern für spezielle Zwecke, Timer usw. umfassen, die von einem Prozessor 2020 aus zugänglich sind oder von einem Prozessor 2020 benutzt werden. Der Prozessor 2020 kann unter Benutzung eines oder mehrerer Prozessoren, WLAN Komponenten, WMAN Komponenten, WWAN Komponenten und/oder anderen geeigneten Recheneinrichtungen implementiert werden. Zum Beispiel kann der Prozessor 2020 unter Benutzung einer oder mehrerer der Intel® Pentium®-Technologien, der Intel® Itanium®-Technologie, der Intel® Centrino®-Technologie, der Intel® XeonTM-Technologie und/oder der Intel® XScale®-Technologie implementiert werden. Alternative können andere Verfahrenstechnologien genutzt werden, um den Prozessor 2020 zu implementieren. Der Prozessor 2020 kann einen Cache 2022 umfassen, der implementiert werden kann unter Benutzung einer First-Level-unified-Caches (L1), eines Second-Level-unified-Caches (L2) eines Third-Level-unified-Caches (L3) und/oder anderer geeigneter Strukturen, um Daten zu speichern.
-
Der Speichercontroller 2012 kann Funktionen durchführen, die es dem Prozessor 2020 erlauben, mit einem Hauptspeicher 2030 inklusive einem flüchtigen Speicher 2032 und einem nicht-flüchtigen Speicher 2034 zu kommunizieren und auf ihn über einen Bus 2040. Der flüchtige Speicher 2032 kann als synchrondynamischer Random Access Memory (SDRAM) implementiert werden, als DRAM (Dynamic Random Access Memory) als RAMBUS-DRAM (RAMBUS Dynamic Random Access Memory) und/oder andere Typen von Random Access-Memory. Der nicht-flüchtige Speicher 2034 kann unter der Benutzung von Flashmemory, ROM (Read Only Memory), EEPROM (Electrically Erasable Programmable Read Only Memory) oder jeder anderen gewünschten Art von Speichereinrichtung implementiert werden.
-
Das Prozessorsystem 2000 kann auch eine Schnittstellenschaltung 2050 umfassen, die mit dem Bus 2040 gekoppelt ist. Die Schnittstellenschaltung 2050 kann unter Benutzung einer beliebigen Standardschnittstelle, wie zum Beispiel einer Ethernet-Schnittstelle, eines USB (Universal Serial Bus), einer 3GIO(Third Generation Input/Output Interface)-Schnittstelle und/oder einer anderen geeigneten Art von Schnittstelle implementiert werden.
-
Eine oder mehrere Eingabeeinrichtungen 2060 können mit der Schnittstellenschaltung 2050 gekoppelt werden. Die Eingabeeinrichtung 2060 kann es einem Nutzer erlauben, Daten und Kommandos in den Prozessor 2020 einzugeben. Zum Beispiel kann die Eingabeeinrichtung 2060 durch eine Tastatur, eine Maus, ein Touchpad, ein Trackpad, einen Trackball, einen Isopoint und/oder ein Spracherkennungssystem implementiert werden.
-
Eine oder mehrere Ausgabeeinrichtungen 2070 können ebenfalls an die Schnittstellenschaltung 2050 gekoppelt werden. Zum Beispiel kann die Ausgabeeinrichtung 2070 durch eine Anzeigeeinrichtung (zum Beispiel eine lichtemittierende Anzeige (LED), eine Flüssigkristallanzeige (LCD), eine Kathodenstrahlröhre (CRT), einen Drucker und/oder einen Lautsprecher implementiert werden). Die Schnittstellenschaltung 2050 kann unter anderem eine Graphiktreiberkarte umfassen.
-
Das Prozessorsystem 2000 kann auch eine oder mehrere Massenspeichereinrichtungen 2080 umfassen, um Software oder Daten zu speichern. Beispiele solcher Massenspeichereinrichtungen 2080 umfassen Disketten, und deren Laufwerke, Festplatten, Kompaktdisks und deren Laufwerke und DVDs und deren Laufwerke.
-
Die Schnittstellenschaltung 2050 kann auch eine Kommunikationseinrichtung, wie zum Beispiel ein Modem oder eine Netzwerkschnittstellenkarte umfassen, um den Austausch von Daten mit externen Computer über ein Netzwerk zu erlauben. Die Kommunikationsverbindung zwischen dem Prozessorsystem 2000 im Netzwerk kann eine beliebige Art von Netzwerkverbindungen, wie zum Beispiel eine Ethernet Verbindung, eine DSL-Anbindung (Digital Subscriber Line), eine Telefonleitung, ein Mobilfunktelefonsystem, ein Koaxialkabel, etc. sein.
-
Zugriff auf die Eingabeeinrichtungen 2060, die Ausgabeeinrichtungen 2070, die Massenspeichereinrichtungen 2080 und/oder das Netzwerk kann durch einen I/O Controller 2014 gesteuert werden. Insbesondere kann der I/O Controller 2014 Funktionen durchführen, die es dem Prozessor 2020 erlauben, mit den Eingabegeräten 2060, den Ausgabegeräten 2070, den Massenspeichergeräten 2080 und/oder dem Netzwerk über den Bus 2040 und die Schnittstellenschaltung 2050 zu kommunizieren.
-
Während die Komponenten in 12 als separate Blöcke innerhalb des Prozessorsystems 2000 dargestellt sind, können die Funktionen, die von einigen dieser Blöcke durchgeführt werden, in einem einzigen Halbleiterschaltkreis implementiert werden oder unter der Benutzung von zwei oder mehreren separaten integrierten Schaltkreisen implementiert werden. Zum Beispiel können, obwohl der Speichercontroller 2012 und der I/O Controller 2014 als separate Blöcke innerhalb des Chipsets 2010 dargestellt sind, der Speichercontroller 2012 und der I/O Controller 2014 in einem einzigen Halbleiterschaltkreis integriert sein.
-
Obwohl bestimmte beispielhafte Verfahren, Vorrichtungen und Computerprogrammprodukte hierin beschrieben sind, ist der Schutzbereich dieser Offenbarung nicht dadurch beschränkt. Ganz im Gegenteil deckt die Offenbarung alle Verfahren, Vorrichtungen und hergestellten Gegenstände ab, die in fairer Weise in den Schutzbereich der beigefügten Ansprüche entweder wörtlich oder unter der Äquivalenzlehre fallen. Zum Beispiel sollte es erkannt werden, dass, obwohl die obigen Beispiele Systeme offenbaren, die unter anderen Komponenten Software oder Firmware, die auf Hardware ausgeführt wird, umfassen solche Systeme nur illustrativ dargestellt sind und nicht als einschränkend gewertet werden. Insbesondere wird darauf hingewiesen, dass jegliche oder alle der offenbarten Hardware, Software und/oder Firmware Komponenten auch exklusive als Hardware, exklusive in Software oder exklusive in Firmware oder in einer Kombination von Hardware, Software und/oder Firmware verkörpert sein können.