DE112006001127T5 - Verfahren und Vorrichtung zum Bereitstellen eines dynamischen Routingprotokolls auf Anforderung - Google Patents
Verfahren und Vorrichtung zum Bereitstellen eines dynamischen Routingprotokolls auf Anforderung Download PDFInfo
- Publication number
- DE112006001127T5 DE112006001127T5 DE112006001127T DE112006001127T DE112006001127T5 DE 112006001127 T5 DE112006001127 T5 DE 112006001127T5 DE 112006001127 T DE112006001127 T DE 112006001127T DE 112006001127 T DE112006001127 T DE 112006001127T DE 112006001127 T5 DE112006001127 T5 DE 112006001127T5
- Authority
- DE
- Germany
- Prior art keywords
- node
- route
- rreq
- metric information
- metric
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/26—Route discovery packet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/28—Connectivity information management, e.g. connectivity discovery or connectivity update for reactive routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/34—Modification of an existing route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
Abstract
Verfahren,
das aufweist:
Identifizieren einer optimalen Route, die mit einem ersten Knoten und einem zweiten Knoten verknüpft ist, basierend auf erster metrischer Information über eine Vielzahl von Wegen, die mit dem ersten und dem zweiten Knoten verknüpft ist, wobei der erste und der zweite Knoten mit einem drahtlosen Kommunikationsnetzwerk verknüpft sind; und
Aufrechterhalten der optimalen Route, die mit dem ersten und dem zweiten Knoten verknüpft ist, basierend auf zweiter metrischer Information über die Vielzahl der Wege.
Identifizieren einer optimalen Route, die mit einem ersten Knoten und einem zweiten Knoten verknüpft ist, basierend auf erster metrischer Information über eine Vielzahl von Wegen, die mit dem ersten und dem zweiten Knoten verknüpft ist, wobei der erste und der zweite Knoten mit einem drahtlosen Kommunikationsnetzwerk verknüpft sind; und
Aufrechterhalten der optimalen Route, die mit dem ersten und dem zweiten Knoten verknüpft ist, basierend auf zweiter metrischer Information über die Vielzahl der Wege.
Description
- TECHNISCHES GEBIET
- Die vorliegende Offenbarung betrifft im allgemeinen drahtlose Kommunikationssysteme und genauer Verfahren und Vorrichtungen zum Bereitstellen eines dynamischen Routingprotokolls auf Anforderung, das mit einem drahtlosen vermaschten Netzwerk verknüpft ist.
- HINTERGRUND
- Da drahtlose Kommunikation in Büros, zu Hause, in Schulen usw. mehr und mehr beliebt wird, kann die Nachfrage nach Ressourcen Überlastung des Netzwerkes und Verlangsamung hervorrufen. Um die Güteverschlechterungen und/oder Überlastzustände zu verringern, kann in einem drahtlosen Kommunikationssystem ein drahtloses vermaschtes Netzwerk implementiert werden. Insbesondere kann ein drahtloses vermaschtes Netzwerk zwei oder mehr Knoten umfassen. Wenn ein Knoten nicht richtig arbeitet, können die verbleibenden Knoten eines drahtlosen vermaschten Netzwerkes weiter in der Lage sein, miteinander zu kommunizieren, entweder direkt oder durch einen oder mehrere zwischengeschaltete Knoten. Demgemäß kann ein drahtloses vermaschtes Netzwerk für mehrere Wege sorgen, damit sich eine Sendung von der Quelle zu dem Ziel fortpflanzt. Somit kann ein drahtloses vermaschtes Netzwerk eine zuverlässige Lösung sein, um die zunehmende Nachfrage nach drahtlosen Kommunikationsdienstenz zu unterstützen.
- KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist eine schematische Darstellung eines Schaubildes für ein beispielhaftes drahtloses Kommunikationssystem gemäß einer Ausführungsform der Verfahren und der Vorrichtungen, die hierin offenbart sind. -
2 ist die Darstellung eines Zeitdiagramms für eine Art, auf die das beispielhafte drahtlose vermaschte Netzwerk der1 arbeiten kann. -
3 ist eine Darstellung eines Zeitdiagramms für eine weitere Art, auf die das beispielhafte drahtlose vermaschte Netzwerk der1 arbeiten kann. -
4 ist eine Darstellung eines Zeitdiagramms noch einer weiteren Art, auf die das beispielhafte drahtlose vermaschte Netzwerk der1 arbeiten kann. -
5 ist eine Darstellung eines Zeitdiagramms noch einer weiteren Art, auf die das beispielhafte drahtlose vermaschte Netzwerk der1 arbeiten kann. -
6 ist die Darstellung eines Blockschaubildes für den beispielhaften Kommunikationsknoten der1 . -
7 ist eine Darstellung des Ablaufdiagramms einer Art, in der der beispielhafte Kommunikationsknoten der6 konfiguriert werden kann, um eine Routen-Anfrage zu bearbeiten. -
8 veranschaulicht eine Art, in der der beispielhafte Kommunikationsknoten der6 konfiguriert werden kann, um die Routen-Anfrage weiter zu bearbeiten. -
9 veranschaulicht eine Art, in der der beispielhafte Kommunikationsknoten der6 konfiguriert werden kann, um die Routen-Anfrage weiter zu bearbeiten. -
10 veranschaulicht eine Art, in der der beispielhafte Kommunikationsknoten der6 konfiguriert werden kann, um die Routen-Anfrage weiter zu bearbeiten. -
11 veranschaulicht eine Art, in der der beispielhafte Kommunikationsknoten der6 konfiguriert werden kann, um die Routen-Anfrage weiter zu bearbeiten. -
12 veranschaulicht eine Art, in der der beispielhafte Kommunikationsknoten der6 konfiguriert werden kann, um die Routen-Anfrage weiter zu bearbeiten. -
13 ist eine Darstellung eines Ablaufdiagramms einer Art, in der der beispielhafte Kommunikationsknoten der6 konfiguriert werden kann, um eine Routen-Antwort zu bearbeiten. -
14 ist eine Darstellung eines Blockschaubildes eines beispielhaften Prozessorsystems, das verwendet werden kann, um den beispielhaften Kommunikationsknoten der6 zu implementieren. - GENAUE BESCHREIBUNG
- Im allgemeinen werden hierin Verfahren und Vorrichtungen zum Bereitstellen eines dynamischen Routingprotokolls auf Anforderung beschrieben, die mit einem drahtlosen vermaschten Netzwerk verknüpft sind. Die hierin beschriebenen Verfahren und Vorrichtungen sind in dieser Hinsicht nicht beschränkt.
- Mit Bezug auf
1 wird hierin ein beispielhaftes drahtloses vermaschtes Netzwerk100 , das eine Vielzahl von Maschenknoten105 umfaßt, im allgemeinen als110 ,120 ,130 ,140 ,150 ,160 ,170 ,180 und190 gezeigt, beschrieben. Bei einem Beispiel kann das drahtlose vermaschte Netzwerk100 ein vermaschtes Netzwerk mit einem Verbund aus mehreren miteinander verknüpften Zugangspunkten (ESS – Extended Service Set) sein, das auf den Entwicklungen des Institute of Electrical and Electronic Engineers (IEEE) beruht. Obwohl1 neun Maschenknoten veranschaulicht, kann das drahtlose vermaschte Netzwerk100 zusätzliche oder weniger Maschenknoten umfassen. - Wie es in Einzelheiten hiernach beschrieben ist, kann die Vielzahl der Knoten
105 Zugangspunkte, Umverteilungspunkte, Endpunkte und/oder andere geeignete Verbindungspunkte für Verkehrsströme über Routen mit mehreren Sprüngen umfassen. Demgemäß kann das drahtlose vermaschte Netzwerk100 implementiert werden, um ein drahtloses Kurzstrecken-Funknetz (WPAN – Wireless Personal Area Network), ein drahtloses Nahbereichsnetzwerk (WLAN – Wireless Local Area Network), ein drahtloses Mittelbereichsnetzwerk (WMAN – Wireless Matropolitan Area Nework), ein drahtloses Fernbereichsnetzwerk (WWAN – Wireless Wide Area Network) und/oder andere geeignete drahtlose Kommunikationsnetzwerke zur Verfügung zu stellen. - Die Vielzahl der Maschenknoten
105 kann eine Vielfalt von Modulationstechniken verwenden, so wie Spreizspektrummodulation (z.B. Direktsequenz-Codemultiplexverfahren (DS-CDMA – Direct Sequence Code Division Multiple Access) und/oder Frequenzsprung-Codemultiplexverfahren (FH-CDMA – Frequency Hopping Code Division Multiple Access)), Zeitmultiplex (TDM – Time Division Multiplexing)-Modulation, Frequenzmultiplex (FDM – Frequency Division Multiplexing)-Modulation, orthogonale Frequenzmultiplex (OFDM – Orthogonal Frequency Division Multiplexing)-Modulation, Mehrträgermodulation (MCM – Multicarrier Modulation) und/oder andere geeignete Modulationstechniken, um miteinander und/oder einer anderen Station/Stationen (nicht gezeigt) zu kommunizieren, die mit dem drahtlosen vermaschten Netzwerk100 verknüpft sind. Zum Beispiel kann die Vielzahl der Maschenknoten105 OFDM-Modulation implementieren, um große Mengen digitaler Daten zu senden, indem ein Hochfrequenzsignal in mehrere kleine Untersignale aufgespalten wird, die wiederum gleichzeitig mit unterschiedlichen Frequenzen gesendet werden. Insbesondere kann die Vielzahl der Maschenknoten105 OFDM-Modulation verwenden, wie sie in der Familie 802.xx der Standards beschrieben ist, die von dem IEEE entwickelt worden sind, und/oder Variationen und Weiterentwicklungen dieser Standards (z.B. 802.11, 802.15, 802.16 usw.), um über drahtlose Verbindung(en) zu kommunizieren (z.B. Daten innerhalb des drahtlosen vermaschten Netzwerks100 zu verschicken). Die Vielzahl der Maschenknoten105 kann auch entsprechend anderen geeigneten drahtlosen Kommunikationsprotokollen arbeiten, die sehr wenig Leistung erfordern, so wie Bluetooth, Ultrabreitband (UWB – Ultra Wideband), und/oder Hochfrequenzidentifikation (RFID – Radio Frequency Identification), um über drahtlose Verbindung(en) zu kommunizieren. - Die Vielzahl der Knoten kann auch entsprechend einem oder mehrerer von mehreren drahtlosen Kommunikationsprotokollen arbeiten, um mit anderen drahtlosen Geräten zu kommunizieren (z.B. einem Laptop-Computer, einem tragbaren Computer, einem Notizblock-Computer, einem Mobiltelefon, einem drahtlosen Peripheriegerät usw.). Insbesondere können diese drahtlosen Kommunikationsprotokolle auf analogen, digitalen und/oder Dual-Modus-Kommunikationssystemstandards basieren, so wie dem Standard des globalen Systems für mobile Kommunikation (GSM – Global System for Mobile Communications), dem Standard Frequenzteilung mit Mehrfachzugriff (FDMA – Frequency Division Multiple Access), dem Standard Zeitteilung mit Mehrfachzugriff (CDMA – Code Division Multiple Access), dem Standard des Breitband-CDMA (WCDMA – Wideband CDMA), dem Standard der allgemeinen paketorientierten Funkdienste (GPRS – General Packet Radio Services), dem Standard der GSM-Umgebung mit verbesserten Daten (EDGE – Enhanced Data GSM Environment), dem Standard des universellen mobilen Telekommunikationssystems (UMTS – Universal Mobile Telecommunication System), Variationen und Weiterentwicklungen dieser Standards und/oder anderen geeigneten drahtlosen Kommunikationsstandards.
- Weiter kann die Vielzahl der Knoten
105 mit anderen Komponenten kommunizieren, die mit dem drahtlosen vermaschten Netzwerk100 verknüpft sind, so wie WPAN, WLAN, WMAN und/oder WWAN-Geräten (nicht gezeigt), einschließlich Netzwerk-Schnittstellenbauteilen und Peripheriebauteilen (z.B. Netzwerkschnittstellenkarten (NICs – Network Interface Cards)), Zugangspunkten (APs – Access Points), Gateways, Bridges, Hubs, usw., um ein Mobiltelefonsystem, ein Satellitensystem, ein persönliches Kommunikationssystem (PCS – Personal Communication System), ein Zweiwege-Funksystem, ein Einweg-Pagersystem, ein Zweiwege-Pagersystem, ein Personalcomputer (PC)-System, ein System eines persönlichen Datenassistenten (PDA – Personal Data Assistent), ein System für persönliches Computerzubehör (PCA – Personal Computing Accessory) und/oder irgendein anderes geeignetes Kommunikationssystem umfassen. - In einem Kommunikationsnetzwerk kann ein Routingprotokoll, so wie das Protokoll zum Weiterleiten von Daten durch ein mobiles Ad-Hoc-Netz auf Anforderung (AODV – Ad-Hoc On-Demand Distance Vector), entwickelt von der Internet Engineering Task Force (veröffentlicht 2003) verwendet werden, um hochleistungsfähige durchgehende Routen zwischen Knoten zu identifzieren. Typischerweise kann das AODV-Protokoll einen Weg mit der geringsten Latenz als die optimale Route zwischen zwei Knoten identifizieren (z.B. basierend auf der Zählung von Sprüngen). Zum Beispiel kann das AODV-Protokoll einen Weg mit der geringsten Anzahl von Sprüngen zwischen den beiden Knoten als die optimale Route identifizieren. Jedoch muß der kürzeste Weg zwischen zwei Knoten nicht die optimale Route sein. Weiter muß ein Weg, der zuvor als optimal ausgewählt worden ist, nicht optimal bleiben, da sich die Bedingungen einer drahtlosen Umgebung mit der Zeit ändern können (z.B. in einer dynamischen Umgebung). In dem drahtlosen vermaschten Netzwerk
100 zum Beispiel können sich Verbindungszustände eines Weges ändern, so daß der Weg die optimale Route zwischen zwei Knoten über eine Zeitdauer sein kann, jedoch für eine andere Zeitdauer ein anderer Weg die optimale Route sein kann. - Im allgemeinen können die hierin beschriebenen Verfahren und Vorrichtungen eine optimale Route zwischen zwei oder mehr Knoten identifizieren und die Route basierend auf metrischer Information von Wegen, die die Knoten verbinden, beibehalten, um die Gemeinkosten des Sendens zu verringern. Zum Beispiel kann metrische Information Information umfassen, die mit Eigenschaften und/oder Zuständen einer Verbindung zwischen zwei Knoten verknüpft ist, so wie dem Datendurchsatz, der Anzahl von Sendungen, Belastungen, Interferenz und/oder anderer geeigneter Verbindungsinformation. Um eine Route zu einem Zielknoten auf Anforderungsbasis zu bestimmen, kann ein Quellenknoten eine Routen-Anfrage (RREQ – Route Request) erzeugen, wenn der Quellenknoten keine zuvor vorliegende Route zu dem Zielknoten hat. Bei einem Beispiel kann der Maschenknoten
110 (z.B. der Quellenknoten) Daten haben, die zu dem Maschenknoten140 (z.B. dem Zielknoten) gesendet werden sollen. Wenn der Quellenknoten110 keine zuvor vorliegende Route zu dem Zielknoten104 hat, kann der Quel lenknoten110 eine RREQ an benachbarte Knoten120 ,150 und160 des Quellenknotens110 erzeugen und über eine Sammelrufsendung zur Zeit T0 senden, um eine Route zu identifizieren, wie in2 gezeigt. - Die RREQ kann einen oder mehrere Wege durchqueren, um den Zielknoten
140 von dem Quellenknoten110 her zu erreichen. Insbesondere kann der Zielknoten140 die RREQ über einen Weg durch den Maschenknoten150 empfangen (z.B. den Weg A, der Verbindungen umfaßt, die im allgemeinen als durchgezogene Linie gezeigt sind). Der Zielknoten140 kann die RREQ auch über einen Weg durch den Maschenknoten160 empfangen, der im allgemeinen als gestrichelte Linie gezeigt ist (z.B. der Weg B, der Verbindungen umfaßt, die im allgemeinen ein gestrichelten Linien gezeigt sind). Weiter kann der Zielknoten140 die RREQ über einen Weg durch die Maschenknoten120 und130 empfangen (z.B. den Weg C, der Verbindungen umfaßt, die im allgemeinen als gepunktete Linien gezeigt sind). - Bei einem Beispiel kann der Zielknoten
140 die RREQ über den Weg A zur Zeit T1 empfangen (RREQ_A). Der Weg A kann eine Verbindung zwischen dem Quellenknoten110 und dem Maschenknoten150 (z.B. Verbindung110 -150 ) und eine Verbindung zwischen dem Maschenknoten150 und dem Zielknoten140 (z.B. Verbindung150 -140 ) umfassen. Die Verbindung110 -150 kann einen metrischen Wert zwei (2) haben und die Verbindung150 -140 kann einen metrischen Wert drei (3) haben, mit einem metrischen Gesamtwert fünf (5) für den Weg A. Als Antwort auf den Empfang der RREQ über den Weg A kann der Zielknoten140 eine Route zu dem Quellenknoten110 durch den Maschenknoten150 erzeugen. Der Zielknoten140 kann eine Routen-Antwort (RREP – Route Reply) erzeugen und zu dem Quellenknoten110 über eine Punkt-zu-Punkt-Sendung durch den Maschenknoten150 senden, um die Route einzurichten. Als ein Ergebnis kann der Weg A die gegenwärtige Route von dem Zielknoten140 zu dem Quellenknoten110 sein. - Der Zielknoten
140 kann die RREQ über den Weg B zum Zeitpunkt T2 (RREQ_B) anschließend an den Empfang der RREQ über den Weg A zum Zeitpunkt T1 empfangen. Der Weg B kann eine Verbindung zwischen dem Quellenknoten110 und dem Maschenknoten160 (z.B. Verbindung110 -160 ) und eine Verbindung zwischen dem Maschenknoten160 und dem Zielknoten140 (z.B. Verbindung160 -140 ) umfassen. Sowohl die Verbindung110 -160 als auch die Verbindung160 -140 können einen metrischen Wert zwei (2) mit einem metrischen Gesamtwert vier (4) für den Weg B haben. Wenn der Zielknoten140 die RREQ über den Weg B empfängt, kann der Zielknoten140 die metrischen Gesamtwerte der Wege A und B vergleichen, um eine optimale Route zu dem Quellenknoten110 zu bestimmen (z.B. entweder den Weg A oder den Weg B). Basierend auf den metrischen Gesamtwerten der Wege A und B (z.B. einem jeweiligen metrischen Gesamtwert von fünf gegenüber einem metrischen Gesamtwert von vier) kann der Zielknoten140 bestimmen, daß der Weg B eine optimalere Route als der Weg A für eine bestimmte Zeitdauer sein mag. Demgemäß kann der Zielknoten140 eine RREP erzeugen und über eine Punkt-zu-Punkt-Verbindung durch den Maschenknoten160 senden. Als ein Ergebnis kann der Weg B den Weg A als die gegenwärtige Route von dem Zielknoten140 zu dem Quellenknoten110 ersetzen. - Der Zielknoten
140 kann die RREQ über den Weg C zum Zeitpunkt T3 (RREQ_C) anschließend an dem Empfang der RREQ über den Weg B zum Zeitpunkt T2 empfangen. Der Weg C kann eine Verbindung zwischen dem Quellenknoten110 und dem Maschenknoten120 (z.B. Verbindung110 -120 ), eine Verbindung zwischen den Maschenknoten120 und130 (z.B. Verbindung120 -130 ) und eine Verbindung zwischen dem Maschenknoten130 und dem Zielknoten140 (Verbindung130 -140 ) umfassen. Jede, die Verbindung110 -120 , die Verbindung120 -130 und die Verbindung130 -140 , kann einen metrischen Wert eins (1) haben, zu einem metrischen Gesamtwert drei (3) für den Weg C. Als Antwort auf den Empfang der RREQ_C kann der Zielknoten140 die metrischen Gesamtwerte der Wege B und C vergleichen, um die optimale Route zu dem Quellenknoten110 zu bestimmen (z.B. entweder den Weg B oder den Weg C). Basierend auf den metrischen Gesamtwerten der Wege B und C (z.B. einem jeweiligen metrischen Wert vier gegenüber einem metrischen Wert drei) kann der Zielknoten140 bestimmen, daß der Weg B für eine bestimmte Zeitdauer eine optimalere Route als der Weg B sein mag. Demgemäß kann der Zielknoten140 eine RREP erzeugen und über eine Punkt-zu-Punkt-Verbindung durch die Maschenknoten120 und130 an den Quellenknoten110 senden. Als ein Ergebnis kann der Weg C den Weg B als die gegenwärtige Route von dem Zielknoten140 zu dem Quellenknoten110 ersetzen. - Wie in den obigen Beispielen beschrieben, können die hierin beschriebenen Verfahren und Vorrichtungen die optimale Route basierend auf metrischer Information identifizieren, die mit dem drahtlosen vermaschten Netzwerk
100 verknüpft ist. Jedoch können sich Eigenschaften und/oder Zustände von Verbindungen im drahtlosen vermaschten Netzwerk100 über der Zeit ändern. Zum Beispiel kann ein bestimmter Weg anfangs die optimale Route zwischen dem Quellenknoten und dem Zielknoten sein, jedoch braucht derselbe Weg zu einem späteren Zeitpunkt nicht die optimale Route zwischen den beiden Knoten zu sein. Eine Vielfalt von Eigenschaften und/oder Zuständen der Drahtlos-Umgebung kann bewirken, daß sich der metrische Gesamtwert eines bestimmten Weges erhöht. Somit können die hierin beschriebenen Verfahren und Vorrichtungen auch die optimale Route zwischen dem Quellenknoten und dem Zielknoten basierend auf metrischer Information nachhalten, wenn sich die Drahtlos-Umgebung ändert. - Um eine optimale Route zwischen dem Quellenknoten
110 und dem Zielknoten140 zu halten, kann der Quellenknoten110 auf einer periodischen Basis eine RREQ erzeugen und senden (z.B. Wartungs-RREQs). Bei dem Beispiel der3 kann der Quellenknoten110 eine erste Wartungs-RREQ (M_RREQ1) an die Maschenknoten130 ,150 und160 mittels eines Sammelrufes zum Zeitpunkt T4 senden. Der Zielknoten140 kann die RREQ über einen Weg A zum Zeitpunkt T5 (M_RREQ1_A), über einen Weg B zu einem Zeitpunkt T6 (M_RREQ1_B) und über einen Weg C zu einem Zeitpunkt T7 (M_RREQ1_C) erhalten. - Als Antwort auf den Empfang der ersten Wartungs-RREQ über den Weg A zum Zeitpunkt T5 kann der Zielknoten
140 die Sequenzzahl der ersten Wartungs-RREQ, die zum Zeitpunkt T5 empfangen worden ist, mit der Sequenzzahl der RREQ, die zum Zeitpunkt T3 empfangen worden ist, vergleichen. Basierend auf dem Vergleich der Sequenzzahlen kann der Zielknoten140 feststellen, ob die gegenwärtige Route zu dem Quellenknoten110 (z.B. Weg C) basierend auf der Wartungs-RREQ über den Weg A zu modifizieren ist. Wenn die Sequenzzahl der ersten Wartungs-RREQ, die zum Zeitpunkt T5 empfangen worden ist, nicht um eine vordefinierte Verlustschwelle der RREQ größer ist als die Sequenzzahl der RREQ, die zum Zeitpunkt T3 empfangen worden ist, braucht der Zielknoten140 die gegenwärtige Route zu dem Quellenknoten110 nicht zu modifzieren. Der Zielknoten140 kann den Weg A als eine zu prüfende Route zu dem Quelleknoten110 identifizieren und einen RREQ-Alarm einleiten, um festzustellen, ob eine RREQ über die gegenwärtige Route verloren werden kann. Insbesondere kann die zu prüfende Route identifiziert und von dem Zielknoten140 als die optimale Route zu dem Quellenknoten110 gesendet werden, wenn die gegenwärtige Route möglicherweise nicht verfügbar ist. Der RREQ-Alarm kann nach einer Zeitschwelle für das Durchqueren ablaufen, die als eine Dauer für eine RREQ konfiguriert werden kann, um das drahtlose vermaschte Netzwerk100 zu durchlaufen, so daß der Zielknoten140 die RREQ von dem Quellenknoten110 über alle Wege empfangen kann. Zum Beispiel kann der Zeitschwellenwert für das Durchqueren so definiert werden, daß der Zielknoten140 die RREQ, die von dem Quellenknoten110 gesendet worden ist, zum Zeitpunkt T4 über die Wege A, B und C empfangen kann. Somit kann eine Zeitschwelle für das Durchqueren eine Dauer von wenigstens T7-T4 sein. - Als Antwort auf den Empfang der ersten Wartungs-RREQ über den Weg B zum Zeitpunkt T6 braucht der Zielknoten
140 die gegenwärtige Route mit dem Quellenknoten110 nicht zu modifizieren, da die Sequenzzahl der ersten Wartungs-RREQ, die zum Zeitpunkt T6 empfangen worden ist, nicht um die vordefinierte Verlustschwelle der RREQ größer als die Sequenzzahl der RREQ, die zum Zeitpunkt T3 empfangen worden ist. Jedoch kann der Zielknoten140 die zu prüfende Route zu dem Quellenknoten110 modifizieren. Demgemäß kann der Zielknoten140 den Weg A durch den Weg B als die zu prüfende Route ersetzen, da der Weg B eine optimalere Route als der Weg A zu dem Quellenknoten110 basierend auf den metrischen Gesamtwerten sein kann (z.B. einem jeweiligen metrischen Wert vier gegenüber einem metrischen Wert fünf). - Als Antwort auf den Empfang der ersten Wartungs-RREQ über den Weg C zum Zeitpunkt T7 kann der Zielknoten
140 den RREQ-Alarm für die erste Wartungs-RREQ, die von dem Knoten110 zum Zeitpunkt T4 ausgesendet worden ist, beenden, da der Zielknoten140 die erste Wartungs-RREQ über den gegenwärtigen optimalen Weg empfangen hat. Demgemäß kann der Zielknoten140 eine RREP erzeugen und über den Weg C an den Quellenknoten110 senden. - Bei dem Beispiel der
4 können sich die Zustände von Verbindungen der gegenwärtigen Route (z.B. über den Weg C) zum Zeitpunkt T8 verschlechtern, so daß der metrische Wert der Verbindung110 -120 sich von eins (1) auf vier (4) ändern kann (z.B. ein metrischer Gesamtwert fünf für den Weg C zum Zeitpunkt T8). Um die optimale Route von dem Zielknoten140 nachzuhalten, kann der Quellenknoten110 eine zweite Wartungs-RREQ erzeugen und an die benachbarten Knoten130 ,150 und160 über eine Sammelrufsendung zum Zeitpunkt T9 senden (M_RREQ2). Der Zielknoten140 kann die zweite Wartungs-RREQ über den Weg A zum Zeitpunkt T10 (M_RREQ2_A), über den Weg B zum Zeitpunkt T11 (M_RREQ2_B) und über den Weg C zum Zeitpunkt T12 (M_RREQ2_C) empfangen. - Der Zielknoten
140 kann die zweite Wartungs-RREQ, die über die Wege A und B zum Zeitpunkt T10 bzw. zum Zeitpunkt T11 empfangen worden sind, in einer ähnlichen Weise verarbeiten wie die erste Wartungs-RREQ, die über die Wege A und B zum Zeitpunkt T5 bzw. T6 empfangen worden sind, wie es oben beschrieben worden ist. Somit kann der Zielknoten140 den Weg B als eine zu prüfende Route verwenden. Als Antwort auf den Empfang der RREQ über den Weg C zum Zeitpunkt T12 kann der Zielknoten140 den RREQ-Alarm für die zweite Wartungs-RREQ, die vom Quellenknoten110 zum Zeitpunkt T9 gesendet worden ist, been den, da der Zielknoten140 die zweite Wartungs-RREQ über den gegenwärtigen optimalen Weg empfangen hat. - Weiter kann der Zielknoten
140 feststellen, daß sich die Zustände von Verbindungen der gegenwärtigen Route (z.B. dem Weg C) verschlechtert haben, wobei der metrische Gesamtwert von drei (3) auf sechs (6) angewachsen ist. Als ein Ergebnis kann der Zielknoten140 die gegenwärtige Route durch die zu prüfende Route (z.B. den Weg B) als die optimale Route zu dem Quellenknoten110 ersetzen, da der metrische Gesamtwert der zu prüfenden Route besser ist als der metrische Gesamtwert der gegenwärtigen Route. Insbesondere kann der Zielknoten140 den Weg C durch den Weg B als die optimale Route zu dem Quellenknoten110 ersetzen, da der metrische Gesamtwert des Weges B vier (4) ist, während der metrische Gesamtwert des Weges C sechs (6) ist. Demgemäß kann der Zielknoten140 eine RREP erzeugen und über den Weg B an den Quellenknoten110 senden. Somit kann der Weg B die optimale Route von dem Zielknoten140 zu dem Quellenknoten110 sein. - Bei einem weiteren Beispiel kann der Zielknoten
140 die zweite Wartungs-RREQ über die Wege A und B zum Zeitpunkt T10 bzw. T11 empfangen, jedoch wird die zweite Wartungs-RREQ über den Weg C nicht empfangen (z.B. sie geht verloren). Der Zielknoten140 kann die zweite Wartungs-RREQ über die Wege A und B zum Zeitpunkt T10 und zum Zeitpunkt T11 in derselben Weise wie oben beschrieben verarbeiten. Im Gegensatz zu dem obigen Beispiel beendet der Zielknoten140 den RREQ-Alarm für die zweite Wartungs-RREQ, die von dem Quellenknoten110 zum Zeitpunkt T9 gesendet worden ist, nicht, da der Zielknoten140 die zweite Wartungs-RREQ nicht über den gegenwärtig optimalen Weg empfangen hat (z.B. hat er sie nicht über den Weg C empfangen). Wenn der RREQ-Alarm abläuft (z.B. die Zeitschwelle für das Durchqueren übersteigt), kann der Zielknoten140 die RREQ zu anderen Knoten, so wie den Knoten170 ,180 und190 , schicken. Die geschickte RREQ kann die Knoten170 ,180 und190 mit aktualisierter Information versorgen, die für die gegenwärtige optimale Route zu dem Quellenknoten110 bezeichnend ist. Der Zielknoten140 kann auch eine RREP erzeugen und an den Quellenknoten110 über den Weg C senden. - Wie oben angegeben, kann die Verlustschwelle einer RREQ definiert werden, um festzustellen, ob ein bestimmter Weg zuverlässig als die optimale Route zwischen dem Quellenknoten
110 und dem Zielknoten140 arbeiten kann. Wenn der Unterschied zwischen den Sequenzzahlen der letzten beiden RREQs, die von dem Zielknoten140 über einen Weg empfangen worden sind, größer ist als die Verlustsschwelle der RREQ, kann es sein, daß der Weg nicht zuverlässig als die optimale Route zwischen dem Quellenknoten110 und dem Zielknoten140 arbeitet, weil zu viele Wartungs-RREQs entlang dem bestimmten Weg verlorengegangen sind. Bei dem Beispiel der5 kann die Verlustschwelle der RREQ als zwei vordefiniert werden, und der Zielknoten140 kann eine dritte Wartungs-RREQ (M_RREQ3) (z.B. eine Sequenzzahl drei) von dem Quellenknoten110 über den Weg C zum Zeitpunkt T14 empfangen, jedoch sind eine vierte Wartungs-RREQ (M_RREQ4) und eine fünfte Wartungs-RREQ (M_RREQ5) (z.B. Sequenzzahlen vier bzw. fünf), die von dem Quellenknoten110 zum Zeitpunkt T15 bzw. T16 erzeugt worden ist, über den Weg C verlorengegangen. Obwohl der Weg C eine optimalere Route sein kann als der Weg A (z.B. ist der metrische Gesamtwert des Weges C geringer als der metrische Gesamtwert des Weges A), kann der Zielknoten140 die optimale Route zu dem Quellenknoten110 von dem Weg C in den Weg A ändern, wenn der Zielknoten140 eine sechste Wartungs-RREQ (z.B. Sequenzzahl sechs) von dem Quellenknoten110 über den Weg A, jedoch nicht über den Weg C empfängt. Die Differenz zwischen den Sequenzzahlen der letzten Wartungs-RREQ (z.B. der sechsten Wartungs-RREQ), die von dem Zielknoten140 empfangen worden ist (z.B. die sechste Wartungs-RREQ) und der letzten Wartungs-RREQ, die von dem Zielknoten140 über den Weg C empfangen worden ist, ist größer als die Verlustschwelle der RREQ von zwei. - Um das Umschlagen der Route durch verfrühtes Inkrementieren der Sequenzzahl der Wartungs-RREQs zu vermeiden, kann der Quellenknoten
110 eine Zeitdauer (z.B. eine Zeitdauer für das Durchqueren) lang warten, bevor die Sequenzzahl inkrementiert wird, so daß der Zielknoten140 eine Gelegenheit haben kann, eine Wartungs-RREQ von dem Quellenknoten110 über alle Wege zu empfangen. Sonst kann der Zielknoten140 vor dem Empfang der metri schen Information, die mit allen Wegen verknüpft ist, um die optimale Route zu identifizieren, auf eine weniger optimale Route umschalten. Obwohl bestimmte Beispiele oben beschrieben worden sind, ist der Umfang der Deckung dieser Offenbarung nicht darauf beschränkt. - Der
6 zugewandt kann ein beispielhafter Kommunikationsknoten200 eine Kommunikationsschnittstelle210 , einen Identifizierer220 , einen Controller230 und einen Speicher2400 umfassen. Die Kommunikationsschnittstelle210 kann einen Empfänger212 und einen Sender214 umfassen. Die Kommunikationsschnittstelle210 kann Daten empfangen und/oder senden, die mit drahtlosen Kommunikationsnetzwerken verknüpft sind, einschließlich vermaschter Netzwerke (z.B. dem drahtlosen vermaschten Netzwerk100 der1 ) und/oder nicht vermaschter Netzwerke. Insbesondere kann der Empfänger212 Adressenanfragen/antworten von anderen Kommunikationsknoten innerhalb desselben drahtlosen Kommunikationsnetzwerks und/oder benachbarter drahtloser Kommunikationsnetzwerke empfangen. Der Sender214 kann Adressenanfragen/antworten zu anderen Kommunikationsknoten innerhalb desselben drahtlosen Kommunikationsnetzwerkes und/oder benachbarter drahtloser Kommunikationsnetzwerke senden. - Der Identifizierer
220 , der Controller230 und der Speicher240 können betrieblich mit der Kommunikationsschnittstelle210 gekoppelt sein. Wie es in Einzelheiten hiernach beschrieben ist, kann der Identifizierer220 so konfiguriert sein, daß er eine optimale Route identifiziert, die mit zwei oder mehr Knoten verknüpft ist, basierend auf metrischer Information über einen oder mehrere Wege, die mit den Knoten verknüpft sind. Der Controller230 kann so konfiguriert werden, daß er die optimale Route basierend auf metrischer Information über den einen oder die mehreren Wege, die mit den Knoten verknüpft sind, beibehält. - Der Speicher
240 kann so konfiguriert sein, daß er Information über Routen speichert. Bei einem Beispiel kann der Speicher240 eine Routen-Tabelle speichern, die einen oder mehrere Routen-Einträge umfaßt. Jeder Routen-Eintrag kann Information umfassen, die mit dem Kommunikationsknoten200 verknüpft ist. Insbesondere kann jeder Routen-Eintrag einen Zielknoten eines Weges, eine Sequenzzahl, die mit dem Zielknoten verknüpft ist, einen nächsten Sprung von dem Kommunikationsknoten200 zu dem Zielknoten über den Weg, die Metrik des Weges zu dem Zielknoten und eine zu prüfende Route von dem Kommunikationsknoten zu dem Zielknoten angeben. Der nächste Sprung kann ein benachbarter Knoten sein, zu dem ein Paket geschickt werden kann, um den Zielknoten zu erreichen. Der Speicher240 kann auch eine Routen-Anfrage (RREQ)-Warteschlage245 umfassen, um RREQs von unterschiedlichen Wegen zu speichern. -
7 veranschaulicht eine Art, in der die Maschenknoten der1 konfiguriert werden können, um ein dynamisches Routingprotokoll auf Anforderung zur Verfügung zu stellen, das mit dem drahtlosen vermaschten Netzwerk100 verknüpft ist. Der beispielhafte Prozeß300 der7 kann als durch eien Maschine zugreifbare Befehle implementiert werden, wobei irgendeiner aus vielen unterschiedlichen Programmiercodes verwendet werden kann, die auf irgendeiner Kombination von durch eine Maschine zugreifbare Medien gespeichert ist, so wie einem flüchtigen oder einem nicht flüchtigen Speicher oder einer anderen Massenspeichervorrichtung (z.B. einer Floppydisk, einer CD und einer DVD). Zum Beispiel können die durch eine Maschine zugreifbaren Befehle in einem durch eine Maschine zugreifbaren Medium verkörpert sein, so wie einer programmierbaren Gatteranordnung, einer anwendungsspezifischen integrierten Schaltung (ASIC – Application Specific Integrated Circuit), einem löschbaren programmierbaren Nur-Lese-Speicher (EPROM – Erasable Programmable Read Only Memory), einem Nur-Lese-Speicher (ROM – Read Only Memory), einem Speicher mit wahlfreiem Zugriff (RAM – Random Access Memory), einem magnetischen Medium, einem optischen Medium und/oder jedwedem anderen geeigneten Typ eines Mediums. - Weiter, obwohl eine bestimmte Reihenfolge von Aktionen in
7 veranschaulicht ist, können diese Aktionen in anderen zeitlichen Abfolgen durchgeführt werden. Wieder ist der beispielhafte Prozeß300 lediglich im Zusammenhang mit der Vorrichtung der1 und6 als ein Beispiel einer Art, den Kommunikationsknoten200 der6 zu konfigurieren, zur Ver fügung gestellt und beschrieben, um eine Routen-Anfrage (RREQ) von einem Quellenknoten zu verarbeiten. - Bei dem Beispiel der
7 kann der Prozeß300 damit beginnen, daß der Kommunikationsknoten200 (z.B. irgendeiner aus der Vielzahl der Maschenknoten105 der1 ) eine RREQ von einem benachbarten Knoten empfängt und feststellt, ob der vorangegangene Sprung der RREQ die Quelle der RREQ ist (Block310 ). Insbesondere kann der vorangegangene Sprung ein benachbarter Knoten sein, der die RREQ zu einem bestimmten Maschenknoten sendet (z.B. die RREQ verschickt). Zum Beispiel können die Maschenknoten130 ,150 und160 vorangegangene Sprünge einer RREQ sein, die von dem Quellenknoten110 in bezug auf den Zielknoten140 eingeleitet und erzeugt worden sind. Wenn der vorangegangene Sprung die Quelle der RREQ ist, kann der Kommunikationsknoten200 direkt zum Block320 weitergehen, um zu bestimmen, ob eine Route zu der Quelle der RREQ existiert, wie es weiter in Einzelheiten hiernach beschrieben ist. Andernfalls, wenn der vorangegangene Sprung der RREQ nicht die Quelle der RREQ ist, kann der Kommunikationsknoten200 feststellen, ob eine neue Route erzeugt oder eine gegenwärtige Route zu dem vorangegangene Sprung aktualisiert werden soll (Block330 ). Zum Beispiel kann der Zielknoten140 bestimmen, ob eine neue Route erzeugt oder eine gegenwärtige Route zu dem Maschenknoten130 aktualisiert werden soll. Wenn es eine vorliegende Route zu dem vorangegangenen Sprung gibt oder wenn keine Notwendigkeit besteht, die gegenwärtige Route zu aktualisieren, kann der Kommunikationsknoten200 die RREQ fallenlassen (Block340 ) und den Prozeß300 beenden. - Andernfalls, wenn der Kommunikationsknoten
200 im Block330 feststellt, daß es keine Route zu dem vorangegangenen Sprung gibt oder die Route aktualisiert werden muß, kann der Kommunikationsknoten200 eine neue Route erzeugen bzw. die gegenwärtige Route zu dem vorangegangenen Sprung aktualisieren (Block350 ). Demgemäß kann der Kommunikationsknoten200 feststellen, ob eine Route zu der Quelle der RREQ vorliegt (Block320 ). In einem Beispiel kann der Zielknoten140 bestimmen, ob es eine vorliegende Route zu dem Quellenknoten110 gibt. Wenn es keine Route zu der Quelle der RREQ gibt, kann der Kommunikati onsknoten200 die optimale Route zu der Quelle der RREQ basierend auf der RREQ identifizieren und/oder aktualisieren (Block360 ). - Demgemäß kann der Kommunikationsknoten
200 zu dem Prozeß400 der8 fortschreiten. In dem Beispiel der8 kann der Prozeß400 damit beginnen, daß der Kommunikationsknoten200 die RREQ an andere Maschenknoten des drahtlosen vermaschten Netzwerks100 schickt (Block410 ). Der Kommunikationsknoten200 kann feststellen, ob der Kommunikationsknoten200 der Zielknoten der RREQ (z.B. das Ziel der RREQ) ist (Block420 ). Insbesondere kann die RREQ ein Zielfeld umfassen, das die Internet Protocol (IP)-Adresse des Zielknotens angibt, zu dem eine Route von dem Quellenknoten gewünscht wird. Als Alternative kann das Zielfeld eine Mehrfachzugriffssteuerungs (MAC – Media Access Control)-Adresse und/oder irgendeine andere geeignete Protokolladresse des Zielknotens140 umfassen. Wenn der Kommunikationsknoten200 das Ziel der RREQ ist (z.B. der Zielknoten140 ), kann der Kommunikationsknoten200 eine Routen-Antwort (RREP) einleiten und die RREP an die Quelle der RREQ über eine Punkt-zu-Punkt-Sendung (Block430 ) senden (z.B. an den Quellenknoten110 ). Demgemäß kann der Kommunikationsknoten200 den Prozeß400 beenden, und die Steuerung kann zu dem Prozeß300 zurückkehren, der wiederum auch enden kann. - Mit Bezug zurück auf Block
420 kann, falls der Kommunikationsknoten200 nicht das Ziel der RREQ ist, der Kommunikationsknoten200 fortschreiten, um den Prozeß400 zu beenden. Wie oben angemerkt, kann die Steuerung zu dem Prozeß300 zurückkehren, so daß der Kommunikationsknoten200 auch den Prozeß300 beenden kann. - Zurück zum Block
320 der7 , wenn es eine vorliegende Route zu der Quelle der RREQ gibt (RTE), kann der Kommunikationsknoten200 zu dem Prozeß500 der9 fortschreiten. Bei dem Beispiel der9 kann der Prozeß500 damit beginnen, daß der Kommunikationsknoten200 feststellt, ob die gegenwärtige Route zu der Quelle der RREQ basierend auf der RREQ aktualisiert werden soll. Insbesondere kann der Kommunikationsknoten200 fest stellen, ob die Sequenzzahl der gegenwärtigen Route (RTE_SEQ) gleich Null ist (Block520 ). Wenn die RTE_SEQ gleich Null ist, kann der Kommunikationsknoten200 die gegenwärtige Route zu der Quelle der RREQ basierend auf der RREQ aktualisieren (Block530 ). Demgemäß kann der Kommunikationsknoten200 zu dem Prozeß400 der8 fortschreiten, wie es oben beschrieben ist. - Mit Bezug wieder auf den Block
520 , wenn die RTE_SEQ nicht gleich Null ist, kann der Kommunikationsknoten200 feststellen, ob die RREQ überholt ist. Insbesondere kann der Kommunikationsknoten200 feststellen, ob die Sequenzzahl der RREQ (RREQ_SEQ) kleiner oder gleich der Sequenzzahl der gegenwärtigen Route ist (Block540 ). Wenn die RREQ_SEQ kleiner ist als die RTE_SEQ, kann der Kommunikationsknoten200 den Prozeß500 beenden, und die Steuerung kann zum Block340 der6 zurückkehren, um die RREQ fallenzulassen. Andernfalls, wenn die RREQ_SEQ nicht kleiner ist als die RTE_SEQ (z.B. ist die RREQ frischer als die gegenwärtige Route), kann der Kommunikationsknoten200 feststellen, ob der metrische Wert einer Route basierend auf der RREQ (z.B. der Metrik der RREQ) kleiner ist als der metrische Wert der gegenwärtigen Route (z.B. der Metrik der RTE) (Block550 ). - Wenn im Block
550 die Metrik der RREQ kleiner ist als die Metrik der RTE, kann der Kommunikationsknoten200 die gegenwärtige Route zu der Quelle der RREQ basierend auf der RREQ aktualisieren (Block530 ) und zu dem Prozeß400 der8 fortschreiten, wie es oben beschrieben ist. Wenn im Block550 die Metrik der RREQ größer oder gleicher der Metrik der RTE ist, kann der Kommunikationsknoten200 bestimmen, ob die RREQ_SEQ größer ist als die RTE_SEQ (Block560 ). Wenn die RREQ_SEQ größer ist als die RTE_SEQ, kann der Kommunikationsknoten200 zum Prozeß600 der10 fortschreiten, wie es in Einzelheiten hiernach beschrieben wird. - In dem Beispiel der
10 kann der Prozeß600 damit beginnen, daß der Kommunikationsknoten200 bestimmt, ob die RREQ_SEQ um die Verlustschwelle der RREQ größer ist als die RTE_SEQ (Block610 ). Wenn die RREQ_SEQ um die Verlustschwelle der RREQ größer ist als die RTE_SEQ, kann der Kommunikationsknoten200 die gegenwärtige Route zu der Quelle der RREQ basierend auf der RREQ aktualisieren (Block620 ) und zu dem Prozeß400 der4 fortschreiten, wie es oben beschrieben ist. Andererseits, wenn die RREQ_SEQ nicht um die Verlustschwelle der RREQ größer ist als die RTE_SEQ, kann der Kommunikationsknoten200 bestimmen, ob der vorangegangene Sprung der nächste Sprung der gegenwärtigen Route zu der Quelle der RREQ ist (Block630 ). - Wenn der vorangegangene Sprung nicht der nächste Sprung der gegenwärtigen Route zur Quelle der RREQ ist, kann der Kommunikationsknoten
200 zum Prozeß700 der11 fortschreiten. In dem Beispiel der11 kann der Prozeß700 damit beginnen, daß der Kommunikationsknoten200 feststellt, ob eine gültige zu prüfende Route zu der Quelle der RREQ (CAN_RTE) vorliegt (Block710 ). Insbesondere kann der Kommunikationsknoten200 die metrischen Werte der RREQ und einer zu prüfenden Route (z.B. die Metrik der RREQ bzw. die Metrik der CAN_RTE) vergleichen. Wenn die Metrik der RREQ nicht kleiner ist als die Metrik der CAN_RTE, kann der Kommunikationsknoten200 direkt zum Block720 fortschreiten, wie es in Einzelheiten hiernach beschrieben ist. Andernfalls, wenn die Metrik der RREQ kleiner ist als die Metrik der CAN_RTE, kann der Kommunikationsknoten200 die zu prüfende Route zu der Quelle der RREQ basierend auf der RREQ aktualisieren (Block730 ). Das heißt, die gegenwärtige zu prüfende Route kann durch eine neue zu prüfende Route, basierend auf der RREQ, als die optimale zu prüfende Route zu der Quelle der RREQ ersetzt werden. - Demgemäß kann der Kommunikationsknoten
200 zum Block720 fortschreiten und feststellen, ob die RREQ in der RREQ-Warteschlange245 gespeichert ist. Wenn die RREQ in der RREQ-Warteschlange245 gespeichert ist, kann der Kommunikationsknoten200 direkt zum Block740 fortschreiten, wie es in Einzelheiten hiernach beschrieben ist. Andernfalls, wenn die RREQ nicht in der RREQ-Warteschlange245 gespeichert ist, kann der Kommunikationsknoten200 die RREQ in der RREQ-Warteschlange245 speichern (Block750 ) und zum Block740 fortschreiten. - Im Block
740 kann der Kommunikationsknoten200 feststellen, ob ein RREQ-Alarm für die RREQ aktiv ist. Wenn ein RREQ-Alarm für die RREQ aktiv ist, kann der Kommunikationsknoten200 direkt zum Block720 fortschreiten, um die RREQ fallenzulassen und den Prozeß700 zu beenden. Andernfalls, wenn im Block740 kein RREQ-Alarm für die RREQ aktiv ist, kann der Kommunikationsknoten200 einen RREQ-Alarm für die RREQ erzeugen (Block770 ) und zum Block760 fortschreiten. Demgemäß kann der Prozeß700 enden und die Steuerung kann zu dem Prozeß600 zurückkehren. - In dem Beispiel der
12 kann der Prozeß800 damit beginnen, daß der Kommunikationsknoten200 feststellt, ob die RREQ-Warteschlange245 leer ist (Block810 ). Wenn die RREQ-Warteschlange245 leer ist, kann der Kommunikationsknoten200 den Prozeß800 beenden. Andernfalls, wenn die RREQ-Warteschlange245 eine oder mehrere RREQs enthält, kann der Kommunikationsknoten200 eine RREQ aus der RREQ-Warteschlange245 in einer Weise „zuerst hinein, zuerst hinaus" (FIFO – First-In-First-Out) zum Verarbeiten herausnehmen (Block820 ). Demgemäß kann der Kommunikationsknoten200 die RREQ an andere Maschenknoten des drahtlosen vermaschten Netzwerks100 schicken (Block830 ). - Der Kommunikationsknoten
200 kann auch feststellen, ob der Kommunikationsknoten200 das Ziel der RREQ ist (Block840 ). Wenn der Kommunikationsknoten200 das Ziel der RREQ ist, kann der Kommunikationsknoten200 eine RREP veranlassen und die RREP an die Quelle der RREQ mittels einer Punkt-zu-Punkt-Sendung senden (Block850 ). Demgemäß kann der Kommunikationsknoten200 zum Block810 zurückkehren, um, wenn es welche gibt, weitere RREQs in der RREQ-Warteschlange245 zu verarbeiten. Andernfalls, wenn der Kommunikationsknoten200 im Block840 feststellt, daß der Kommunikationsknoten200 nicht das Ziel der RREQ ist, kann der Kommunikationsknoten200 direkt zum Block810 zurückkehren. - Zurück zum Block
630 der10 , wenn der vorangegangene Sprung der nächste Sprung der gegenwärtigen Route zu der Quelle der RREQ ist, kann der Kommunikationsknoten200 feststellen, ob die gegenwärtige zu prüfende Route zu der Quelle der RREQ gültig ist (Block640 ). Insbesondere kann der Kommunikationsknoten200 die metrischen Werte der RREQ und der gegenwärtigen zu prüfenden Route vergleichen (z.B. die Metrik der RREQ bzw. die Metrik der CAN_RTE). Wenn die Metrik der RREQ kleiner ist als die Metrik der CAN_RTE (z.B. die gegenwärtige zu prüfende Route ist ungültig), kann der Kommunikationsknoten200 die optimale Route zu der Quelle der RREQ basierend auf der RREQ aktualisieren (Block620 ) und zu dem Prozeß400 der4 fortschreiten, wie es oben beschrieben ist. Andernfalls, wenn die Metrik der RREQ nicht kleiner ist als die Metrik der CAN_RTE (z.B. die gegenwärtige zu prüfende Route gültig ist), kann der Kommunikationsknoten200 bestimmen, ob die Sequenzzahl der RREQ (RREQ_SEQ) größer ist als die Sequenzzahl der gegenwärtig zu prüfenden Route (CAN_RTE_SEQ) (Block650 ). - Wenn die RREQ_SEQ größer ist als die CAN_RTE_SEQ, kann der Kommunikationsknoten
200 die gegenwärtige Route zu der Quelle der RREQ basierend auf der RREQ aktualisieren (Block620 ) und zu dem Prozeß400 der4 fortschreiten, wie es oben beschrieben ist. Andernfalls, wenn die RREQ_SEQ nicht größer ist als die CAN_RTE_SEQ, kann der Kommunikationsknoten200 feststellen, ob die RREQ_SEQ gleich der CAN_RTE_SEQ ist (Block660 ). - Wenn die RREQ_SEQ nicht gleich der CAN_RTE_SEQ ist, kann er Kommunikationsknoten
200 den Prozeß600 beenden, und die Steuerung kann zu dem Prozeß500 zurückkehren. Wenn die RREQ_SEQ gleich der CAN_RTE_SEQ ist, kann der Kommunikationsknoten200 die metrischen Werte der RREQ und der gegenwärtigen zu prüfenden Route vergleichen (z.B. die Metrik der RREQ bzw. die Metrik der CAN_RTE_SEQ) (Block670 ). Wenn die Metrik der RREQ kleiner als oder gleich der Metrik der CAN_RTE_SEQ ist, kann der Kommunikationsknoten200 die gegenwärtige Route zu der Quelle der RREQ basierend auf der RREQ aktualisieren (Block620 ) und zu dem Prozeß400 der8 fortschreiten, wie es oben be schrieben ist. Andernfalls, wenn die Metrik der RREQ nicht kleiner oder gleich der Metrik der CAN_RTE_SEQ ist, kann der Kommunikationsknoten200 die gegenwärtige zu prüfende Route als die optimale Route zu der Quelle der RREQ identifizieren (Block680 ). Demgemäß kann der Kommunikationsknoten200 zu dem Prozeß400 der8 fortschreiten, wie es oben beschrieben ist. - Mit Bezug zurück auf Block
560 der9 kann, wenn die RREQ_SEQ nicht größer ist als die RTE_SEQ, der Kommunikationsknoten200 bestimmten, ob die RREQ zuvor gesendet worden war (Block570 ). Wenn die RREQ zuvor gesendet worden war, kann der Kommunikationsknoten200 den Prozeß500 beenden, und die Steuerung kann zum Block340 der3 zurückkehren, um die RREQ fallenzulassen. Andernfalls, wenn die RREQ zuvor nicht gesendet worden war, kann der Kommunikationsknoten200 zu dem Prozeß400 der8 fortschreiten, wie es oben beschrieben ist. - Zusätzlich zum Verarbeiten einer Routen-Anfrage (RREQ) kann der Kommunikationsknoten
200 auch eine Routen-Antwort (RREP) verarbeiten. Bei dem Beispiel der13 kann der Prozeß900 damit beginnen, daß der Kommunikationsknoten200 eine RREP empfängt und feststellt, ob es einen Route zu dem Ziel der RREQ gibt (z.B. zum Zielknoten140 ) (Block910 ). Wenn es keine Route zu dem Ziel der RREQ gibt, kann der Kommunikationsknoten200 direkt zu dem Block940 fortschreiten, wie es in Einzelheiten hiernach beschrieben wird. Wenn es eine gegenwärtige Route zu dem Ziel der RREQ gibt (RTE), kann der Kommunikationsknoten200 feststellen, ob die RREP neu ist (Block920 ). Zum Beispiel kann der Kommunikationsknoten200 feststellen, ob die Sequenzzahl der RREP (RREP_SEQ) größer als die Sequenzzahl der gegenwärtigen Route zu dem Zielknoten (RTE_SEQ) ist. Wenn die RREP_SEQ kleiner oder gleich der RTE_SEQ ist, kann der Kommunikationsknoten200 die RREP fallenlassen (Block930 ) und den Prozeß900 beenden. Andernfalls, wenn im Block920 die RREP_SEQ größer ist als die RTE_SEQ, kann der Kommunikationsknoten200 feststellen, ob der vorangegangene Knoten der Zielknoten ist (Block940 ). - Wenn der vorangegangene Sprung nicht das Ziel der RREQ ist, kann der Kommunikationsknoten
200 eine neue Route erzeugen oder eine vorliegende Route zu dem vorangegangenen Sprung aktualisieren (Block950 ). Der Kommunikationsknoten200 kann auch die Route zum Ziel der RREQ aktualisieren (Block960 ). Weiter kann der Kommunikationsknoten200 Information aktualisieren, die mit der RREP verknüpft ist, sowie Sprungzahlen und metrische Werte (Block970 ). Dem entsprechend kann der Kommunikationsknoten200 die RREP zu der Quelle der RREQ (z. B. dem Quellenknoten110 ) schicken (Block980 ). - Andernfalls, wenn im Block
940 der vorangegangene Sprung das Ziel der RREQ ist, kann der Kommunikationsknoten200 direkt zum Block960 fortschreiten. In einer ähnlichen Weise, wie es oben beschrieben ist, kann der Kommunikationsknoten200 die gegenwärtige Route zu dem Ziel der RREQ (Block960 ) und Information, die mit der RREP verknüpft ist (Block970 ), aktualisieren. Demgemäß kann der Kommunikationsknoten200 die RREP zur Quelle der RREQ schicken (Block980 ). -
14 ist ein Blockschaubild eines beispielhaften Prozessorsystems2000 , das dazu ausgelegt ist, die hierin offenbarten Verfahren und Vorrichtungen zu implementieren. Das Prozessorsystem2000 kann ein Desktop-Computer, ein Laptop-Computer, ein tragbarer Computer, ein Notizblock-Computer, ein PDA, ein Server, ein Internet-Hilfsgerät und/oder irgendein anderer Typ einer Rechenvorrichtung sein. - Das Prozessorsystem
2000 , das in14 veranschaulicht ist, umfaßt einen Chipsatz2010 , welcher einen Speichercontroller2012 und einen Eingabe/Ausgabe (I/O – Input/Output)-Controller2014 umfaßt. Der Chipsatz2010 kann Speicher- und I/O-Verwaltungsfunktionen ebenso wie eine Vielzahl universeller und/oder spezieller Register, Zeitgeber usw. zur Verfügung stellen, auf die von einem Prozessor2020 zugegriffen werden kann oder die von ihm verwendet werden können. Der Prozessor2020 kann implementiert werden, indem ein oder mehrere Prozessoren, WLAN-Komponenten, WMAN-Komponenten, WWAN-Komponenten und/oder andere geeignete Prozessorkomponenten verwendet werden. Zum Beispiel kann der Prozessor2020 implementiert werden, indem eine oder mehrere aus der Intel® Pentium®-Technologie, der Intel® Itanium®-Technologie, der Intel® CentrinoTM-Technologie, der Intel® XeonTM-Technologie und/oder der Intel® XScale®-Technologie verwendet werden. Als Alternative kann eine andere Prozessortechnologie eingesetzt werden, um den Prozessor2020 zu implementieren. Der Prozessor2020 kann einen Cache umfassen, der implementiert werden kann, indem ein einheitlicher Cache erster Ebene (L1), ein einheitlicher Cache zweiter Ebene (L2), ein einheitlicher Cache dritter Ebene (L3) und/oder jedwede andere geeignete Strukturen, um Daten zu speichern, verwendet werden. - Der Speichercontroller
2012 kann Funktionen durchführen, die es dem Prozessor2020 ermöglichen, auf einen Hauptspeicher2030 , der einen flüchtigen Speicher2032 und einen nicht flüchtigen Speicher2034 umfaßt, über einen Bus2040 zuzugreifen und mit ihm zu kommunizieren. Der flüchtige Speicher2032 kann durch einen synchronen dynamischen Speicher mit wahlfreiem Zugriff (SDRAM – Synchronous Dynamic Random Access Memory), einen dynamischen Speicher mit wahlfreiem Zugriff (DRAM – Dynamic Random Access Memory), einen dynamischen Speicher mit wahlfreiem Zugriff von RAMBUS (RDRAM – Dynamic Random Access Memory) und/oder irgendeinen anderen Typ einer Speichervorrichtung mit wahlfreiem Zugriff implementiert werden. Der nicht flüchtige Speicher2034 kann implementiert werden, indem ein Flash-Speicher, ein Nur-Lese-Speicher (ROM), ein elektrisch löschbarer programmierbarer Nur-Lese-Speicher (EEPROM – Electrically Erasable Programmable Read Only Memory) und/oder irgendein anderer gewünschter Typ einer Speichervorrichtung verwendet wird. - Das Prozessorsystem
2000 kann auch eine Schnittstellenschaltung2050 umfassen, die an den Bus2040 gekoppelt ist. Die Schnittstellenschaltung2050 kann implementiert werden, indem irgendein Typ eines Schnittstellenstandards verwendet wird, so wie eine Ethernet-Schnittstelle, ein universeller serieller Bus (USB), eine Eingabe/Ausgabe-Schnittstelle der dritten Generation (3GIO – Third Generation Input/Output Interface) und/oder irgendein anderer geeigneter Typ einer Schnittstelle. - Eine oder mehrere Eingabevorrichtungen
2060 können mit der Schnittstellenschaltung2050 verbunden werden. Die Eingabevorrichtung(en)2060 erlauben es einer Person, Daten und Befehle in den Prozessor2020 einzugeben. Zum Beispiel können die Eingabevorrichtung(en)2060 mit einer Tastatur, einer Maus, einer berührungsempfindlichen Anzeige, einem Trackpad, einer Rollkugel und/oder einem Spracherkennungssystem implementiert werden. - Eine oder mehrere Ausgabevorrichtungen
2070 können auch mit der Schnittstellenschaltung2050 verbunden sein. Zum Beispiel können die Ausgabevorrichtung(en)2070 durch Anzeigeeinrichtungen (z. B. eine lichtemittierende Anzeige (LED – Light Emitting Display), eine Flüssigkristallanzeige (LCD – Liquid Crystal Display), eine Kathodenstrahlröhre (CRT – Cathode Ray Tube)-Anzeige, einen Drucker und/oder Lautsprecher) implementiert werden. Die Schnittstellenschaltung2050 kann unter anderem eine Graphiktreiberkarte umfassen. - Das Prozessorsystem
2000 kann auch eine oder mehrere Massenspeichervorrichtungen2080 umfassen, um Software und Daten zu speichern. Beispiele solcher Massenspeichervorrichtung(en)2080 umfassen Floppy Disks und Laufwerke, Festplattenlaufwerke, Compact Disks und Laufwerke und digitale universelle Disks (DVD – Digital Versatile Disks) und Laufwerke. - Die Schnittstellenschaltung
2050 kann auch eine Kommunikationsvorrichtung umfassen, so wie ein Modem oder eine Netzwerkschnittstelle, um den Austausch von Daten mit externen Computer über ein Netzwerk zu vereinfachen. Die Kommunikationsverbindung zwischen dem Prozessorsystem2000 und dem Netzwerk kann irgendein Typ einer Netzwerkverbindung sein, so wie eine Ethernet-Verbindung, eine digitale Teilnehmerleitung (DSL – Digital Subscriber Line), eine Telefonleitung, ein Mobiltelefonsystem, ein Koaxialkabel usw. - Der Zugriff auf die Eingabevorrichtung(en)
2060 , die Ausgabevorrichtung(en)2070 , die Massenspeichervorrichtung(en)2080 und/oder das Netzwerk kann von dem I/O-Controller2014 gesteuert werden. Insbesondere kann der I/O-Controller2014 Funktionen durchführen, die es dem Prozessor2020 ermöglichen, mit den Eingabevorrichtung(en)2060 , den Ausgabevorrichtung(en)2070 , den Massenspeichervorrichtung(en)2080 und/oder dem Netzwerk über den Bus2040 und die Schnittstellenschaltung2050 zu kommunizieren. - Obwohl die Komponenten, die in
14 gezeigt sind, als getrennte Blöcke innerhalb des Prozessorsystems2000 veranschaulicht sind, können die Funktionen, die von einigen dieser Blöcke durchgeführt werden, in einer einzigen Halbleiterschaltung integriert werden, oder sie können implementiert werden, indem zwei oder mehr getrennte integrierte Schaltungen verwendet werden. Zum Beispiel, obwohl der Speichercontroller2012 und der I/O-Controller2014 innerhalb des Chipsatzes2010 als getrennte Blöcke veranschaulicht sind, können der Speichercontroller2012 und der I/O-Controller2014 innerhalb einer einzigen Halbleiterschaltung integriert sein. - Obwohl bestimmte beispielhafte Verfahren, Vorrichtungen und Herstellungsprodukte hierin beschrieben worden sind, ist der Umfang der Abdeckung dieser Offenbarung nicht darauf beschränkt. Im Gegenteil deckt diese Offenbarung alle Verfahren, Vorrichtungen und Herstellungsprodukte ab, die rechtmäßig in den Umfang der angefügten Ansprüche fallen, entweder wörtlich oder nach dem Äquivalenzprinzip. Zum Beispiel, obwohl die obigen offenbarten beispielhaften Systeme neben anderen Komponenten Software oder Firmware, die auf Hardware ausgeführt werden, umfassen, sollte angemerkt werden, daß solche Systeme lediglich veranschaulichend sind und snicht als beschränkend betrachtet werden ollten. Insbesondere wird in Betracht gezogen, daß jedwede oder die gesamten offenbarten Hardware-, Software- und/oder Firmwarekomponenten ausschließlich in Hardware, ausschließlich in Software, ausschließlich in Firmware oder in einer Kombination aus Hardware, Software und/oder Firmware verkörpert werden könnten.
- ZUSAMMENFASSUNG
- Ausführungsformen von Verfahren und Vorrichtungen zum Bereitstellen eines dynamischen Routingprotokolls auf Anforderung sind hierin allgemein beschrieben. Weitere Ausführungsformen können beschrieben und beansprucht werden.
Claims (20)
- Verfahren, das aufweist: Identifizieren einer optimalen Route, die mit einem ersten Knoten und einem zweiten Knoten verknüpft ist, basierend auf erster metrischer Information über eine Vielzahl von Wegen, die mit dem ersten und dem zweiten Knoten verknüpft ist, wobei der erste und der zweite Knoten mit einem drahtlosen Kommunikationsnetzwerk verknüpft sind; und Aufrechterhalten der optimalen Route, die mit dem ersten und dem zweiten Knoten verknüpft ist, basierend auf zweiter metrischer Information über die Vielzahl der Wege.
- Verfahren nach Anspruch 1, bei dem das Identifizieren der optimalen Route, die mit dem ersten Knoten und dem zweiten Knoten verknüpft ist, basierend auf der ersten metrischen Information, das Empfangen eines oder mehrerer Routen-Anfragen an den zweiten Knoten aufweist und bei dem jede der einen oder der mehreren Routen-Anfragen einen aus der Vielzahl der Wege durchquert und die erste metrische Information umfaßt, die mit dem einen aus der Vielzahl der Wege verknüpft ist.
- Verfahren nach Anspruch 1, bei dem das Identifizieren der optimalen Route, die mit dem ersten Knoten und dem zweiten Knoten verknüpft ist, basierend auf der ersten metrischen Information, das Vergleichen eines ersten metrischen Wertes, der mit einem ersten Weg verknüpft ist, mit einem zweiten metrischen Wert, der mit einem zweiten Weg verknüpft ist, und das Auswählen entweder des ersten Weges oder des zweiten Weges als der optimalen Route umfaßt.
- Verfahren nach Anspruch 1, bei dem das Aufrechterhalten der optimalen Route von dem Quellenknoten zu dem Zielknoten basierend auf der zweiten metrischen Information das Empfangen einer oder mehrerer Wartungs-Routen-Anfragen basierend auf einer Zeitdauer des Durchquerens aufweist und bei dem jede der einen oder der mehreren Wartungs-Routen-Anfragen einen aus der Vielzahl der Wege durchquert und die zweite metrische Information, die mit dem einen aus der Vielzahl der Wege verknüpft ist, umfaßt.
- Verfahren nach Anspruch 1, bei dem das Aufrechterhalten der optimalen Route, die mit dem ersten und dem zweiten Knoten verknüpft ist, basierend auf der zweiten metrischen Information des einen oder der mehreren Wege, die mit dem ersten und dem zweiten Knoten verknüpft sind, das Vergleichen eines ersten metrischen Wertes, der mit einem ersten Weg verknüpft ist, mit einem zweiten metrischen Wert, der mit einem zweiten Weg verknüpft ist, umfaßt.
- Verfahren nach Anspruch 1, das weiter das Identifizieren einer zu prüfenden Route, die mit dem ersten und dem zweiten Knoten verknüpft ist, basierend auf wenigstens der ersten metrischen Information oder der zweiten metrischen Information, die mit der Vielzahl der Wege verknüpft ist, aufweist.
- Verfahren nach Anspruch 1, das weiter das Erzeugen einer Routen-Antwort an dem zweiten Knoten und das Senden der Routen-Antwort an den ersten Knoten über eine Punkt-zu-Punkt-Sendung aufweist.
- Verfahren nach Anspruch 1, das weiter das Inkrementieren einer Sequenzzahl einer Wartungs-Routen-Anfrage basierend auf einer Zeitdauer des Durchquerens an dem ersten Knoten und das Senden der Wartungs-Routen-Anfrage an den zweiten Knoten über eine Sammelsendung aufweist.
- Herstellungsprodukt, das Inhalt umfaßt, welcher, wenn auf ihn zugegriffen wird, bewirkt, daß eine Maschine: eine optimale Route identifiziert, die mit einem ersten Knoten und einem zweiten Knoten verknüpft ist, basierend auf erster metrischer Information über eine Vielzahl von Wegen, die mit dem ersten und dem zweiten Knoten verknüpft sind, wobei der erste und der zweite Knoten mit einem drahtlosen Kommunikationsnetzwerk verknüpft sind; und die optimale Route aufrechterhält, die mit dem ersten und dem zweiten Knoten verknüpft ist, basierend auf zweiter metrischer Information über die Vielzahl der Wege.
- Herstellungsprodukt nach Anspruch 9, bei dem der Inhalt, wenn auf ihn zugegriffen wird, bewirkt, daß die Maschine die optimale Route, die mit dem ersten Knoten und dem zweiten Knoten verknüpft ist, basierend auf der ersten metrischen Information identifiziert, indem an dem zweiten Knoten eine oder mehrere Routen-Anfragen empfangen werden, und bei dem jede der einen oder mehreren Routen-Anfragen einen aus der Vielzahl der Wege durchquert und die erste metrische Information umfaßt, die mit dem einen aus der Vielzahl der Wege verknüpft ist.
- Herstellungsprodukt nach Anspruch 9, bei dem der Inhalt, wenn auf ihn zugegriffen wird, bewirkt, daß die Maschine die optimale Route, die mit dem ersten Knoten und dem zweiten Knoten verknüpft ist, basierend auf der ersten metrischen Information identifiziert, indem ein erster metrischer Wert, der mit einem ersten Weg verknüpft ist, mit einem zweiten metrischen Wert, der mit einem zweiten Weg verknüpft ist, verglichen wird und entweder der erste Weg oder der zweite Weg als die optimale Route ausgewählt wird.
- Herstellungsprodukt nach Anspruch 9, bei dem der Inhalt, wenn auf ihn zugegriffen wird, bewirkt, daß die Maschine die optimale Route von dem Quellenknoten zu dem Zielknoten basierend auf der zweiten metrischen Information aufrechterhält, indem eine oder mehreere Wartungs-Routen-Anfragen basierend auf einer Zeitdauer des Durchquerens empfangen werden und bei dem jede der einen oder mehreren Wartungs-Routen-Anfragen einen aus der Vielzahl der Wege durchquert und die zweite metrische Information umfaßt, die mit dem einen aus der Vielzahl der Wege verknüpft ist.
- Herstellungsprodukt nach Anspruch 9, bei dem der Inhalt, wenn auf ihn zugegriffen wird, bewirkt, daß die Maschine eine zu prüfende Route, die mit dem ersten und dem zweiten Knoten verknüpft ist, basierend auf wenigstens einer aus der ersten metrischen Information oder der zweiten metrischen Information, die mit der Vielzahl der Wege verknüpft ist, identifiziert.
- Herstellungsprodukt nach Anspruch 9, bei dem der Inhalt, wenn auf ihn zugegriffen wird, bewirkt, daß die Maschine an dem zweiten Knoten als Antwort auf den Empfang einer Routen-Anfrage, die einen aus der Vielzahl der Wege von dem ersten Knoten zu dem zweiten Knoten durchläuft, eine Routen-Antwort erzeugt.
- Vorrichtung, die aufweist: eine Kommunikationsschnittstelle; einen Identifizierer, der mit der Kommunikationsschnittstelle gekoppelt ist, um eine optimale Route, die mit einem ersten Knoten und einem zweiten Knoten verknüpft ist, basierend auf erster metrischer Information über eine Vielzahl von Wegen, die mit dem ersten und dem zweiten Knoten verknüpft ist, identifiziert, wobei der erste und der zweite Knoten mit einem drahtlosen Kommunikationsnetzwerk verknüpft sind; und einen Controller, der mit dem Identifizierer gekoppelt ist, um die optimale Route, die mit dem ersten und dem zweiten Knoten verknüpft ist, basierend auf zweiter metrischer Information über die Vielzahl der Wege aufrecht zu erhalten.
- Vorrichtung nach Anspruch 15, bei der die Kommunikationsschnittstelle so konfiguriert ist, daß sie eine oder mehrere Routen-Anfragen empfängt, und bei der jede aus der einen oder den mehren Routen-Anfragen einen aus der Vielzahl der Wege durchquert und die erste metrische Information, die mit dem einen aus der Vielzahl der Wege verknüpft ist, umfaßt.
- Vorrichtung nach Anspruch 15, bei der die Kommunikationsschnittstelle so konfiguriert ist, daß sie eine oder mehrere Routen-Anfragen empfängt, basierend auf einer Zeitdauer des Durchquerens, und bei der jede aus der einen oder den mehreren Wartungs-Routen-Anfragen einen aus der Vielzahl der Wege durchquert und die zweite metrische Information, die mit dem einen aus der Vielzahl der Wege verknüpft ist, umfaßt.
- Vorrichtung nach Anspruch 15, bei der der Identifizierer so konfiguriert ist, daß er einen ersten metrischen Wert, der mit einem ersten Weg verknüpft ist, mit einem zweiten metrischen Wert, der mit einem zweiten Wert verknüpft ist, vergleicht und entweder den ersten Weg oder den zweiten Weg als die optimale Route auswählt.
- Vorrichtung nach Anspruch 15, bei der der Identifizierer so konfiguriert ist, daß er eine zu prüfende Route, die mit dem ersten und dem zweiten Knoten verknüpft ist, basierend auf wenigstens einer aus der ersten metrischen Information oder der zweiten metrischen Information, die mit der Vielzahl der Wege verknüpft ist, identifiziert.
- Vorrichtung nach Anspruch 15, bei der der Controller so konfiguriert ist, daß er an dem zweiten Knoten in Antwort auf den Empfang einer Routen-Anfrage, die einen aus der Vielzahl der Wege von dem ersten Knoten zu dem zweiten Knoten durchquert, eine Routen-Antwort erzeugt.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/124,004 US7570628B2 (en) | 2005-05-06 | 2005-05-06 | Methods and apparatus for providing a dynamic on-demand routing protocol |
US11/124,004 | 2005-05-06 | ||
PCT/US2006/016672 WO2006121683A2 (en) | 2005-05-06 | 2006-04-28 | Methods and apparatus for providing a dynamic on-demand routing protocol |
Publications (1)
Publication Number | Publication Date |
---|---|
DE112006001127T5 true DE112006001127T5 (de) | 2008-04-30 |
Family
ID=36998248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112006001127T Withdrawn DE112006001127T5 (de) | 2005-05-06 | 2006-04-28 | Verfahren und Vorrichtung zum Bereitstellen eines dynamischen Routingprotokolls auf Anforderung |
Country Status (6)
Country | Link |
---|---|
US (1) | US7570628B2 (de) |
CN (1) | CN101171807B (de) |
DE (1) | DE112006001127T5 (de) |
GB (1) | GB2439699B (de) |
TW (1) | TWI325703B (de) |
WO (1) | WO2006121683A2 (de) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7142107B2 (en) | 2004-05-27 | 2006-11-28 | Lawrence Kates | Wireless sensor unit |
KR101123910B1 (ko) * | 2005-03-10 | 2012-03-26 | 톰슨 라이센싱 | 하이브리드 메쉬 라우팅 프로토콜 |
US8068507B2 (en) | 2005-06-14 | 2011-11-29 | Interdigital Technology Corporation | Method and system for conveying backhaul link information for intelligent selection of a mesh access point |
EP1905200A1 (de) * | 2005-07-01 | 2008-04-02 | Terahop Networks, Inc. | Nichtdeterministisches und deterministisches netzwerk-routing |
CA2616587C (en) * | 2005-07-20 | 2017-07-11 | Firetide, Inc. | Route optimization for on-demand routing protocols for mesh networks |
US20070041351A1 (en) * | 2005-08-17 | 2007-02-22 | Intel Corporation | Method and system effecting communications in a wireless communication network |
PL2296325T3 (pl) * | 2005-11-09 | 2014-08-29 | Thomson Licensing | Wybór trasy w sieciach bezprzewodowych |
US8243603B2 (en) * | 2005-12-07 | 2012-08-14 | Motorola Solutions, Inc. | Method and system for improving a wireless communication route |
CN101047660A (zh) * | 2006-03-28 | 2007-10-03 | 朗迅科技公司 | 发送数据的方法 |
US9014102B2 (en) * | 2006-04-20 | 2015-04-21 | Abb Inc. | Mobile access node channel selection within a mesh network |
KR101203461B1 (ko) * | 2006-11-10 | 2012-11-21 | 삼성전자주식회사 | 멀티홉 셀룰러 시스템에서의 라우팅 방법 및 상기 멀티홉셀룰러 시스템 |
US8861367B2 (en) * | 2006-12-13 | 2014-10-14 | Tropos Networks, Inc. | Deletion of routes of routing tables of a wireless mesh network |
US8417775B2 (en) * | 2008-02-27 | 2013-04-09 | Microsoft Corporation | Neighborhood maintenance in the federation |
WO2009140669A2 (en) | 2008-05-16 | 2009-11-19 | Terahop Networks, Inc. | Securing, monitoring and tracking shipping containers |
KR100970385B1 (ko) * | 2008-06-09 | 2010-07-15 | 한국전자통신연구원 | 무선 네트워크의 경로 설정 방법 및 장치 |
US8705450B2 (en) * | 2008-07-30 | 2014-04-22 | Koninklijke Philips N.V. | Method for discovering paths with sufficient medium time in wireless mesh networks |
US9077479B2 (en) * | 2008-09-08 | 2015-07-07 | Verizon Patent And Licensing Inc. | Method and system for adjusting network interface metrics |
US8391435B2 (en) | 2008-12-25 | 2013-03-05 | Google Inc. | Receiver state estimation in a duty cycled radio |
CN101772068B (zh) * | 2008-12-31 | 2014-02-26 | 安移通网络科技(中国)有限公司 | 一种无线网状网路由控制方法及路由设备 |
US8300551B2 (en) | 2009-01-28 | 2012-10-30 | Google Inc. | Ascertaining presence in wireless networks |
TWI381679B (zh) * | 2009-02-05 | 2013-01-01 | Handlink Technologies Inc | 無線網路架構、無線網路基地台及其通訊方法 |
US8429474B2 (en) * | 2009-03-30 | 2013-04-23 | Intel Corporation | Multiple protocol data transport |
US8861398B2 (en) * | 2009-06-30 | 2014-10-14 | Mitsubishi Electric Research Laboratories, Inc. | Method for discovering multiple routes in sensor networks |
US8867381B2 (en) * | 2009-09-23 | 2014-10-21 | Aerovironment, Inc. | Active multi-path network redundancy with performance monitoring |
US20110228696A1 (en) * | 2010-03-19 | 2011-09-22 | Navneet Agarwal | Dynamic directed acyclic graph (dag) topology reporting |
US8468268B2 (en) | 2010-08-26 | 2013-06-18 | Novell, Inc. | Techniques for identity and policy based routing |
US10230679B1 (en) | 2011-08-22 | 2019-03-12 | Star2Star Communications, LLC | Systems and methods for optimizing application data delivery over third party networks |
US9106511B1 (en) * | 2011-08-22 | 2015-08-11 | Star2Star Communications, LLC | Systems and methods for optimizing application data delivery over third party networks |
US10116709B1 (en) | 2011-08-22 | 2018-10-30 | Star2Star Communications, LLC | Systems and methods for optimizing application data delivery over third party networks |
CN102594703B (zh) * | 2012-03-19 | 2015-04-29 | 广州华多网络科技有限公司 | 基于中继节点的互联网通信系统和通信路径选择方法 |
US9647930B2 (en) * | 2012-11-26 | 2017-05-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Route determination in a multi-hop network using multiple routing metrics |
US10027586B2 (en) * | 2013-03-15 | 2018-07-17 | Star2Star Communications, LLC | Network address family translation method and system |
JP6206105B2 (ja) * | 2013-11-11 | 2017-10-04 | 富士通株式会社 | 通信システム、通信方法および通信プログラム |
US10110467B2 (en) | 2014-03-06 | 2018-10-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Routing path selection based on dynamical metric values |
GB2537657A (en) * | 2015-04-22 | 2016-10-26 | Ge Oil & Gas Uk Ltd | Subsea control system communication network |
US9866471B2 (en) * | 2015-06-17 | 2018-01-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Path setup in a mesh network |
EP3516902B1 (de) * | 2016-09-22 | 2022-08-10 | Telefonaktiebolaget LM Ericsson (publ) | Verfahren, vorrichtungen und drahtloses mesh-netzwerk zur herstellung einer route zwischen einem mesh-knoten eines routenoriginators, ro, und mesh-knoten einer routendestination, rd, in einem mesh-netzwerk |
CN106535137B (zh) * | 2016-10-13 | 2019-12-13 | 天津光电华典科技有限公司 | 无线网络中链路数据传输控制方法 |
US10263951B2 (en) * | 2017-01-09 | 2019-04-16 | Star2Star Communications, LLC | Network address family translation method and system |
CN106888493B (zh) * | 2017-02-13 | 2020-10-16 | 深圳市联骋科技有限公司 | 一种无线网状mesh网络的路由方法和装置 |
MX2019014376A (es) * | 2017-06-02 | 2020-07-27 | Atc Tech Llc | Dispositivos, métodos y sistemas con compartimiento de espectro dinámico. |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6954435B2 (en) * | 2002-04-29 | 2005-10-11 | Harris Corporation | Determining quality of service (QoS) routing for mobile ad hoc networks |
MXPA04004719A (es) * | 2003-05-19 | 2004-09-06 | Eaton Corp | Red ad-hoc y metodo de enrutar comunicaciones en una red de comunicaciones. |
WO2004114690A1 (en) * | 2003-06-05 | 2004-12-29 | Meshnetworks, Inc. | Optimal routing in ad hac wireless communication network |
WO2004109474A2 (en) * | 2003-06-06 | 2004-12-16 | Meshnetworks, Inc. | System and method for characterizing the quality of a link in a wireless network |
US7382734B2 (en) * | 2004-05-20 | 2008-06-03 | Hewlett-Packard Development Company, L.P. | Directing a path verification request along a specific path to a mesh network switch to test operability of the specific path |
US7616575B2 (en) * | 2004-06-23 | 2009-11-10 | Microsoft Corporation | System and method for link quality routing using a weighted cumulative expected transmission time metric |
US7554998B2 (en) * | 2005-01-11 | 2009-06-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Interference-based routing in a wireless mesh network |
-
2005
- 2005-05-06 US US11/124,004 patent/US7570628B2/en not_active Expired - Fee Related
-
2006
- 2006-04-20 TW TW095114132A patent/TWI325703B/zh not_active IP Right Cessation
- 2006-04-28 DE DE112006001127T patent/DE112006001127T5/de not_active Withdrawn
- 2006-04-28 WO PCT/US2006/016672 patent/WO2006121683A2/en active Application Filing
- 2006-04-28 GB GB0721279A patent/GB2439699B/en not_active Expired - Fee Related
- 2006-04-28 CN CN200680015470.9A patent/CN101171807B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7570628B2 (en) | 2009-08-04 |
TW200709613A (en) | 2007-03-01 |
WO2006121683A2 (en) | 2006-11-16 |
CN101171807B (zh) | 2016-01-20 |
GB2439699B (en) | 2009-07-01 |
GB2439699A (en) | 2008-01-02 |
US20060268727A1 (en) | 2006-11-30 |
CN101171807A (zh) | 2008-04-30 |
WO2006121683A3 (en) | 2007-01-18 |
TWI325703B (en) | 2010-06-01 |
GB0721279D0 (en) | 2007-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112006001127T5 (de) | Verfahren und Vorrichtung zum Bereitstellen eines dynamischen Routingprotokolls auf Anforderung | |
DE112006000145B4 (de) | Verfahren und Vorrichtung zum Identifizieren einer Distanz-Vektor-Route, die mit einem drahtlosen Mesh-Netzwerk assoziiert ist | |
DE112006000157B4 (de) | Verfahren und Vorrichtung zum Schaffen einer zu einem drahtlosen Mesh-Netzwerk gehörigen transparenten Brücke | |
DE112006002156B4 (de) | Verfahren und Vorrichtung zum Bereitstellen eines integrierten Systems mit Mehrsprung-Routing und kooperativer Diversität | |
DE60219932T2 (de) | Ssystgem und Verfahren zur Verwendung von Algorithmen und Protokollen zur optimierung von CSMA-Protokollen (Carrier Sense Multiple Access) in drahtlosen Netzwerken | |
DE60318428T2 (de) | Verfolgen von verkehr in einem mobil-ad-hoc-netzwerk | |
DE112010004607B4 (de) | Paket-Datenübertragungssystem, Datenübertragungsverfahren und Programm | |
AT500118B1 (de) | Mehrfach-funkgerät-vereinheitlichungsprotokoll | |
DE112006000134B4 (de) | Multikanal Mesh-Router und Verfahren zur Pfadauswahl in einem Multikanal-Mesh-Netzwerk | |
DE60221228T2 (de) | Verfahren und system zur anycast-wegleitung zwischen mehreren wirtsrechnern | |
DE112005003269T5 (de) | Verfahren und Vorrichtung zum Verteilen von Verbindungszustandsinformationen, die mit einem drahtlosen vermaschten Netzwerk verknüpft ist | |
DE602005001250T2 (de) | Paketübertragungssystem, drahtlose Basisstation und Verfahren zur Routen-Optimierung für die Paketübertragung | |
DE112006000662B4 (de) | Mobilgerätübergabe unter Einsatz von Multicast in einem Multi-Protocol-Label-Switching-(MPLS)-Netzwerk | |
DE102012213799B4 (de) | Verfahren zum Aufbauen eines Leitweglenkungspfades in einem drahtlosen Netz und mobiles drahtloses Netzsystem zum Identifizieren eines Leitweglenkungspfades | |
DE10393174B4 (de) | Dedizierter Hochprioritätszugriffskanal | |
DE112006001447B4 (de) | Verfahren, Vorrichtung und System zum Einrichten eines direkten Leitweges zwischen Agenten eines Senderknotens und eines Empfängerknotens | |
DE112005001537T5 (de) | System und Verfahren zum Verbessern der Leistungsfähigkeit eines On-Demand-Routing-Protokolls in einem drahtlosen Netzwerk | |
EP2304990B1 (de) | Verfahren und anordnung zum bestimmen einer routing-metrik | |
DE112020006828T5 (de) | Verbessern einer Ende-zu-Ende-Überlastungsreaktion unter Verwendung von adaptivem Routing und Überlastungshinweis-basierter Drosselung für IP-geroutete Rechenzentrumsnetzwerke | |
DE112005003403T5 (de) | Verfahren und Vorrichtung zum Reagieren auf Knotenanomalien innerhalb eines Ad-Hoc-Netzwerks | |
DE112006000135T5 (de) | Hop-By-Hop Fluss-Steuerung in drahtlosen Mesh-Netzwerken | |
DE60123398T2 (de) | Verfahren zur Datenkommunikation im selbstorganisierenden Netz mit Enscheidungsvorrichtung | |
DE112005001581T5 (de) | System und Verfahren zum Auswählen von stabilen Routen in drahtlosen Netzwerken | |
DE112012005907T5 (de) | Kommunikationssystem, Kommunikationsendgerät und Kommunikationsverfahren | |
DE112005002772T5 (de) | System und Verfahren zum Durchführen einer empfängerunterstützen Schlitzzuteilung in einem Multihop-Kommunikationsnetz |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
R016 | Response to examination communication | ||
R016 | Response to examination communication | ||
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: H04L0012560000 Ipc: H04L0012701000 |
|
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: H04L0012560000 Ipc: H04L0012701000 Effective date: 20121120 |
|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20131101 |