DE102014014429B4 - Verfahren zur Begrenzung einer Anzahl von Routern in einem vermaschten Netzwerk - Google Patents

Verfahren zur Begrenzung einer Anzahl von Routern in einem vermaschten Netzwerk Download PDF

Info

Publication number
DE102014014429B4
DE102014014429B4 DE102014014429.1A DE102014014429A DE102014014429B4 DE 102014014429 B4 DE102014014429 B4 DE 102014014429B4 DE 102014014429 A DE102014014429 A DE 102014014429A DE 102014014429 B4 DE102014014429 B4 DE 102014014429B4
Authority
DE
Germany
Prior art keywords
node
routers
nodes
network
router
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.)
Active
Application number
DE102014014429.1A
Other languages
English (en)
Other versions
DE102014014429A1 (de
Inventor
Richard Kelsey
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Silicon Laboratories Inc
Original Assignee
Silicon Laboratories Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Silicon Laboratories Inc filed Critical Silicon Laboratories Inc
Publication of DE102014014429A1 publication Critical patent/DE102014014429A1/de
Application granted granted Critical
Publication of DE102014014429B4 publication Critical patent/DE102014014429B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery

Abstract

Verfahren zur Begrenzung der Anzahl (N) von Routern in einem vermaschten Netzwerk, wobei das vermaschte Netzwerk eine Vielzahl von Knoten (A, B, C, D, E, F, G, X) aufweist und das Verfahren von jedem der Vielzahl von Knoten ausgeführt wird, wobei das Verfahren aufweist:
Bestimmen (110) einer Anzahl von Routern, die sich gegenwärtig in dem vermaschten Netzwerk befinden,
Aktivieren (120) einer Routingfähigkeit eines Knotens, wenn eine Anzahl von Routern, die sich gegenwärtig in dem vermaschten Netzwerk befinden, geringer als eine vorbestimmte Schwelle ist,
Überwachen (130) von Netzwerkverkehr, um ein Konnektivitätsproblem zu identifizieren, und
Aktivieren (120) einer Routingfähigkeit des Knotens, wenn das Konnektivitätsproblem detektiert wird und der Knoten das Konnektivitätsproblem lösen kann.

Description

  • Diese Offenbarung beschreibt Verfahren zur Begrenzung der Anzahl von Routern in einem vermaschten Netzwerk.
  • Hintergrund
  • Vermaschte Netzwerke sind eine Art von Netzwerk, bei der Knoten häufig mehrere Funktionen haben. Zusätzlich zu ihrer primären Funktion als ein Sensor, Aktuator oder eine andere Vorrichtung dienen diese Knoten auch als Router, die helfen, Verkehr zwischen zwei anderen Knoten in dem Netzwerk zu bewegen. Vermaschte Netzwerke können auf eine relativ große Größe anwachsen, wobei sie häufig über 100 oder in manchen Fällen über 1000 Knoten haben, von denen viele oder die meisten auch Router sind.
  • Während vermaschte Netzwerke tendenziell robust sind, da es häufig mehrere Pfade zwischen jeden zwei Knoten gibt, gibt es auch Nachteile. Bei einer derart großen Anzahl von Knoten wird es zum Beispiel unzweckmäßig, dass jeder Knoten den effizientesten Pfad zu jedem anderen Knoten in dem Netzwerk kennt. Vermaschte Netzwerke verwenden typischerweise ein oder mehrere Weg- bzw. Pfadentdeckungsprotokolle. Wenn die Anzahl von Routern in dem vermaschten Netzwerk zunimmt, nimmt unabhängig von dem verwendeten Protokoll auch die Menge an Routingdaten zu, die vorgehalten und in dem gesamten Netzwerk kommuniziert werden müssen.
  • Durch diese erhöhte Menge an Routerdaten kann es erforderlich sein, dass die einzelnen Knoten teurer werden, da die Speichermenge, die erforderlich ist, um diese Informationen zu speichern, anwächst. Dies zwingt zu einem Designkompromiss. Entweder muss die Speichermenge in jedem Router erhöht werden, was die Kosten erhöht, oder die Router sind dazu gezwungen, jeweils eine Teilmenge aller Routinginformation zu speichern. Mit anderen Worten kann es sein, dass ein Zwischenrouter nur den nächsten Sprung zu einer vorbestimmten Anzahl von anderen Routern speichert, anstatt den nächsten Sprung zu jedem anderen Knoten zu speichern. Diese Option spart Speicherplatz, aber dient auch dazu, die Anzahl von Wegentdeckungsnachrichten zu erhöhen, da manche zuvor erhaltenen Netzwerktopologieinformationen notwendigerweise gelöscht werden müssen. In anderen Ausführungsformen kann es sein, dass diese erhöhte Menge an Routerdaten mehr Verwaltungsnachrichten (Overheadnachrichten) in dem Netzwerk erzeugt, was effektiv die Bandbreite verringert, die für nützlichen Verkehr verfügbar ist. Ein übliches Verfahren zur Verringerung der Routinginformationen besteht darin, Quellenrouting zu verwenden, bei dem eine zentrale Vorrichtung Routinginformationen vorhält und diese Informationen in dem Paketkopf (Paketheader) verwendet werden. Dieses Verfahren verringert Speicheranforderungen an den Knoten in dem Netzwerk, aber erhöht die Speicheranforderungen an der zentralen Vorrichtung, erfordert, dass sich alle Nachrichten durch die zentrale Vorrichtung bewegen, und erhöht die Nachrichtengröße über die Luft (und daher den Energieverbrauch der Vorrichtung), um die Routinginformationen aufzunehmen.
  • Es wäre daher vorteilhaft, wenn es ein Verfahren gäbe, um die Anzahl von Routern in einem vermaschten Netzwerk zu begrenzen, da dies die Anzahl von Wegentdeckungsnachrichten und anderem Verwaltungsverkehr (Overheadverkehr) verringern würde, die bzw. der sich durch das vermaschte Netzwerk bewegt. Es würde auch die Speichermenge verringern, die in jedem Knoten erforderlich ist, um die Routinginformationen zu speichern.
  • Die vorstehend genannten Nachteile werden gelöst durch ein Verfahren zur Begrenzung der Anzahl von Routern in einem vermaschten Netzwerk nach den unabhängigen Ansprüchen 1, 13 und 14. Bevorzugte Ausführungen sind in den abhängigen Ansprüchen definiert.
  • Die US 2010/0303005 A1 offenbart ein Verfahren, das die Unterscheidung von Nutzungsberechtigungen zwischen verschiedenen Kategorien des Kommunikationsverkehrs innerhalb eines bestimmten Netzwerks ermöglicht. Das Verfahren umfasst das Gewährleisten, dass eine oder mehrere Kategorien von Verkehr niemals durch Kommunikationsfunkeinrichtungen, Links und/oder Spektren übertragen werden, die einer anderen Kategorie von Verkehr zugeordnet sind.
  • Die US 2013/0028143 A1 betrifft gemeinsam genutzte Kommunikationsnetzwerke. In einer Ausführungsform bestimmt ein bestimmter Knoten in einem gemeinsam genutzten Kommunikationsnetzwerk die aktuellen Pfadkosten in einer Routing-Topologie von sich selbst über einen aktuellen Vater-Knoten zu einem Stamm-Knoten. Durch den speziellen Knoten bestimmen sich auch die jeweiligen Pfadkosten von jedem erreichbaren potenziellen Vater-Knoten des speziellen Knotens zum Wurzelknoten über jeden potenziellen Vater-Knoten und eine entsprechende Link-Metrik zu jedem potenziellen Vater-Knoten.
  • In der US 7,720,037 B2 ist beschrieben, dass eine erste Vorrichtung kommunizieren kann durch Beitritt in ein drahtloses vermaschtes Netzwerk, das mindestens eine drahtlose Vorrichtung beinhaltet, die zum Betreiben eines drahtlosen Routing-Protokolls konfiguriert ist, Erkennen einer Gruppe von anderen drahtlosen Vorrichtungen, die zur Teilnahme in dem drahtlosen vermaschten Netzwerk konfiguriert sind, und Zugreifen auf eine Interest-Metrik für eine zweite drahtlose Vorrichtung in der Gruppe von anderen drahtlosen Vorrichtung. Die Interest-Metrik basiert teilweise auf einer Netzwerk-Topologie von dem drahtlosen vermaschten Netzwerk.
  • In manchen Fällen kann es wünschenswert sein, die Anzahl von Routern in einem vermaschten Netzwerk zu begrenzen. Es werden verschiedene Techniken offenbart, um die Anzahl von Routern zu begrenzen, ohne die Konnektivität zu beeinträchtigen. In manchen Ausführungsformen aktiviert ein Knoten seine Routerfähigkeit, wenn bereits weniger als eine vorbestimmte Anzahl von Routern in dem Netzwerk vorhanden sind. In anderen Ausführungsformen aktiviert ein Knoten seine Routingfähigkeit nur dann, wenn es notwendig ist, um ein Konnektivitätsproblem oder ein Bikonnektivitätsproblem zu lösen. In manchen Fällen kann es sein, dass ein Knoten, der zuvor seine Routerfähigkeit aktiviert hatte, nicht mehr ein Router sein muss. In manchen Ausführungsformen deaktiviert dieser Knoten auf diese Feststellung hin seine Routingfähigkeit.
  • Gemäß einer Ausführungsform wird ein Verfahren zur Begrenzung der Anzahl von Routern in einem vermaschten Netzwerk offenbart, wobei das vermaschte Netzwerk eine Vielzahl von Knoten aufweist. Das Verfahren, das von jeder der Vielzahl von Knoten ausgeführt wird, weist auf, eine Anzahl von Routern zu bestimmen, die sich gegenwärtig in dem vermaschten Netzwerk befinden, eine Routingfähigkeit eines Knotens zu aktivieren, wenn eine Anzahl von Routern, die sich gegenwärtig in dem vermaschten Netzwerk befinden, geringer als eine vorbestimmte Schwelle ist, Netzwerkverkehr zu überwachen, um ein Konnektivitätsproblem zu identifizieren, und eine Routingfähigkeit des Knotens zu aktivieren, wenn das Konnektivitätsproblem detektiert wird und der Knoten das Konnektivitätsproblem lösen kann.
  • Gemäß einer anderen Ausführungsform wird ein Verfahren zur Erzeugung eines vermaschten Netzwerks mit Bikonnektivität offenbart, wobei das vermaschte Netzwerk eine Vielzahl von Knoten aufweist. Das Verfahren, das von jedem Knoten ausgeführt wird, weist auf, Netzwerkverkehr zu überwachen, um Nachbarn eines Knotens zu bestimmen, jeden der Nachbarn abzufragen, um Nachbarn der Nachbarn zu bestimmen, festzustellen, dass mindestens einer der Nachbarn Teil einer ersten Gruppe ist und mindestens ein zweiter der Nachbarn Teil einer zweiten Gruppe ist, wobei es keine Knoten gibt, die der ersten Gruppe und der zweiten Gruppe gemein sind, und eine Anforderung von dem Knoten zu senden, um einen anderen Knoten zu finden, der mit der ersten Gruppe und der zweiten Gruppe in Kommunikation steht.
  • Gemäß einer dritten Ausführungsform wird ein Verfahren zur Begrenzung der Anzahl von Routern in einem vermaschten Netzwerk offenbart, wobei das vermaschte Netzwerk eine Vielzahl von Knoten aufweist. Das Verfahren, das von jedem der Vielzahl von Knoten ausgeführt wird, weist auf, an einem Knoten Netzwerkverkehr zu überwachen, ein Konnektivitätsproblem zu identifizieren und eine Routingfähigkeit des Knotens zu aktivieren, wenn der Knoten das Konnektivitätsproblem lösen kann.
  • Figurenliste
  • Für ein besseres Verständnis der vorliegenden Offenbarung wird auf die beigefügten Zeichnungen Bezug genommen, in denen gleiche Elemente durch gleiche Bezugszeichen bezeichnet werden und in denen:
    • 1 ein Blockdiagramm eines Knotens in einem vermaschten Netzwerk ist,
    • 2 eine Netzwerktopologie ist, die ein Konnektivitätsproblem zeigt,
    • 3 eine Netzwerktopologie ist, die ein Bikonnektivitätsproblem zeigt,
    • 4 ein Flussdiagramm ist, das Entscheidungen zeigt, die vor dem Senden einer Routeranforderung getroffen werden, und
    • 5 eine Netzwerktopologie ist, die einen redundanten Router zeigt.
  • Detaillierte Beschreibung
  • Vorrichtungen, die in vermaschten Netzwerken verwendet werden, sind typischerweise klein und häufig batteriebetrieben. 1 zeigt ein Blockdiagramm einer repräsentativen Vorrichtung 10. Die Vorrichtung 10 weist eine Verarbeitungseinheit 20 und eine zugehörige Speichervorrichtung 30 auf. Diese Speichervorrichtung 30 enthält die Anweisung, die, wenn sie durch die Verarbeitungseinheit ausgeführt wird, die Vorrichtung 10 in die Lage versetzt, die hierin beschriebenen Funktionen auszuführen. Diese Speichervorrichtung 30 kann ein nicht flüchtiger Speicher sein, wie etwa ein FLASH ROM, elektrisch löschbares ROM oder andere geeignete Vorrichtungen. In anderen Ausführungsformen kann die Speichervorrichtung 30 ein flüchtiger Speicher sein, wie etwa ein RAM oder DRAM. Die Vorrichtung weist auch eine Netzwerkschnittstelle 40 auf, die typischerweise eine drahtlose Schnittstelle ist, die eine Antenne 41 aufweist. Darüber hinaus kann die Netzwerkschnittstelle eine Funkeinrichtung 42 aufweisen, die die Basisbandverarbeitung und die MAC-Niveau-Verarbeitung aufweist. Die Vorrichtung 10 kann eine zweite Speichervorrichtung 50 aufweisen, in der Daten, die von der Netzwerkschnittstelle 40 empfangen werden, und Daten gespeichert werden, die von der Netzwerkschnittstelle 40 zu übertragen sind. Diese zweite Speichervorrichtung 50 ist traditionell ein flüchtiger Speicher. Die Verarbeitungseinheit 20 besitzt die Fähigkeit, von der zweiten Speichervorrichtung 50 zu lesen und in diese zu schreiben, um mit den anderen Knoten in dem Netzwerk zu kommunizieren. Auch wenn es nicht gezeigt ist, weist jede Vorrichtung 10 auch eine Energieversorgung auf, die eine Batterie oder eine Verbindung zu einer permanenten Energiequelle sein kann, wie etwa einer Wandsteckdose.
  • Wie oben beschrieben worden ist, besteht eines der Probleme im Zusammenhang mit vermaschten Netzwerken in der Menge an Verwaltungsverkehr, der insbesondere durch Wegentdeckungsnachrichten erzeugt wird. Wenn die Anzahl an Routern zunimmt, nimmt auch die Anzahl von diesen Wegentdeckungsnachrichten zu. Tatsächlich wächst der Verwaltungsverkehr aus mehreren Gründen schneller als die Anzahl von Routern. Erstens bedeuten mehr Router notwendigerweise, dass es in dem vermaschten Netzwerk allgemein mehr Wege bzw. Pfade gibt. Zweitens speichert jeder Knoten, wie oben beschrieben, typischerweise nur einen Teil der Routinginformationen, wobei dieser Teil auf Basis von Speichergröße bestimmt wird. Wenn die Anzahl von Routern ansteigt, nimmt somit notwendigerweise die Anzahl bekannter und gespeicherter Wege als ein prozentualer Anteil der Gesamtzahl möglicher Wege ab.
  • Ein Weg, dieses Problem zu berücksichtigen, besteht darin, die Anzahl von Routern in dem vermaschten Netzwerk zu begrenzen. Es wäre vorteilhafter, wenn diese Anzahl durch die Knoten selbst begrenzt würde anstatt unter Verwendung manueller Intervention. Mit anderen Worten haben die meisten Vorrichtungen in einem vermaschten Netzwerk die Fähigkeit, Router zu werden. Gegenwärtig aktivieren in den meisten vermaschten Netzwerken Vorrichtungen, die die Fähigkeit haben, Router zu werden, diese Funktionalität standardmäßig bzw. automatisch. Wenn es in einem vermaschten Netzwerk N Vorrichtungen gibt, die Router werden können, werden somit häufig alle oder fast alle der N Vorrichtungen Router sein. In kleinen Netzwerken ist diese Operation nicht schädlich, da die anderen Knoten leicht Informationen über alle N Router kommunizieren und halten können.
  • Wenn der Wert von N anwächst, nehmen jedoch die Kosten des Kommunizierens und Haltens der Routinginformationen zu. Große Netzwerke erfordern mehr Speicher und leistungsfähigere Kommunikationsverbindungen oder begrenzen Routinginformationen auf eine kleine Teilmenge von Knoten, typischerweise einen oder höchstens einige wenige.
  • Die Praxis, Routerfunktionalität standardmäßig zu aktivieren, führt dadurch zu einem robusten Netzwerk, dass es ein Maximum an verschiedenen Wegen zwischen jeden zwei Knoten in dem vermaschten Netzwerk gibt. Einiges dieser Robustheit kann jedoch unnötig sein. Zum Beispiel kann ein Konferenzraum, der 15 Fuß breit und 20 Fuß lang sein kann, ein Beleuchtungssystem aufweisen, das durch ein vermaschtes Netzwerk gesteuert wird. Jedem Licht kann ein Knoten zugeordnet sein, so dass es zig Knoten in dem Konferenzraum gibt. Wie oben erläutert worden ist, werden standardmäßig die meisten dieser Knoten Router sein, wodurch eine große Anzahl von möglichen Wegen zwischen jeden zwei Knoten erzeugt wird. In einem Raum dieser Größe ist der Übertragungsbereich jedes Knotens jedoch derart, dass er von jedem anderen Knoten in dem Raum empfangen werden kann. Daher ist es unnötig, dass jeder Knoten ein Router ist. Es kann ausreichend sein, dass nur ein Router existiert. Verkehr zwischen jeden zwei Knoten kann direkt geschehen, ohne jede Notwendigkeit, Zwischensprünge zu verwenden. Falls notwendig, ist ein Router verfügbar, um Kommunikationen zu erleichtern und einen redundanten Weg zwischen jeden zwei Knoten bereitzustellen.
  • Außerdem betrachte man das Beispiel, in dem zig Router in einem einzelnen Konferenzraum enthalten sind. Während dies in dieser beschränkten Umgebung akzeptabel sein kann, kann ein Netzwerkwachstum problematisch sein. Man nehme zum Beispiel an, dass der Benutzer wünscht, dieses Beleuchtungssystem zu erweitern, um ein gesamtes Gebäude mit vielen Konferenzräumen und Büroflächen abzudecken. Wenn jeder Knoten ein Router wird, kann es Hunderte von Routern in dem Gebäude geben. Wie oben beschrieben worden ist, ist jedoch auf Basis des Übertragungsbereichs jedes Knotens und der Größe des Gebäudes vielleicht nur eine Handvoll von Routern wirklich erforderlich.
  • Das folgende beschreibt einen Satz von Algorithmen, die verwendet werden können, um es einem Knoten in einem vermaschten Netzwerk zu ermöglichen, festzustellen bzw. zu bestimmen, ob er seine Routerfähigkeit aktivieren sollte. Es wird auch ein zweiter Satz von Algorithmen definiert, der es einem Knoten ermöglicht, festzustellen bzw. zu bestimmen, ob er seine aktuell aktivierte Routerfunktionalität deaktivieren sollte. Diese Kombination von Algorithmen kann verwendet werden, um ein vermaschtes Netzwerk zu erzeugen, das robust ist und eine geeignete Anzahl von Routern enthält.
  • In der gesamten vorliegenden Offenbarung wird auf einen Führerknoten Bezug genommen. In manchen Ausführungsformen ist ein Führerknoten dafür verantwortlich, eine Liste aller Router in einem Netzwerk zu führen. In diesen Ausführungsformen kann der Führerknoten auch dafür verantwortlich sein, Routernummern zuzuweisen.
  • In anderen Ausführungsformen kann ein Führerknoten jedoch fehlen. In manchen Ausführungsformen ist zum Beispiel jeder Router dafür verantwortlich, seine eigene Liste von Routern zu führen, die unter Verwendung verfügbarer Routingalgorithmen bestimmt werden kann. In dieser Ausführungsform kann jeder Router auf Basis seiner MAC-Adresse eine Routeridentifikationsnummer wählen, um zu gewährleisten, dass alle Routernummern einzigartig sind. Es können jedoch auch andere Benennungsregeln verwendet werden.
  • Es ist wichtig, darauf hinzuweisen, dass ein Knoten typischerweise die Feststellung bzw. Bestimmung durchführt, seine Routerfähigkeit zu aktivieren, wenn er zuerst einem Netzwerk beitritt. In einer Ausführungsform sendet er eine Anforderung an einen Führerknoten, die eine Erlaubnis anfordert, seine Routingfunktionalitäten zu aktivieren. In dieser Ausführungsform ist der Führerknoten ein Knoten, der dafür verantwortlich ist, Routeranforderungen zu akzeptieren oder abzulehnen. Wenn der Führerknoten die Anforderung akzeptiert, weist er dem neuesten Router eine Router-ID zu. In einer anderen Ausführungsform aktiviert der Knoten seine Routingfähigkeit autonom. Wie oben beschrieben worden ist, kann der Knoten in dieser Ausführungsform eine Router-ID auf Basis seiner MAC-Adresse auswählen. Somit führt der Knoten in beiden Ausführungsformen eine Bestimmung dahingehend durch, ob er seine Routerfähigkeit aktivieren soll. In der ersten Ausführungsform muss der Knoten diese Anforderung an einen Führerknoten schicken, während er in der zweiten Ausführungsform einfach diese Fähigkeit aktiviert.
  • Gemäß einem ersten Algorithmus wartet ein neuer Knoten A, der einem vermaschten Netzwerk beitritt, bevor er bestimmt, ob er ein Router werden soll. Das erste Kriterium, das verwendet wird, um zu bestimmen, ob Knoten A ein Router werden sollte, ist die Anzahl von Routern, die sich gegenwärtig in dem Netzwerk befinden. Wenn diese Anzahl geringer als eine vorbestimmte Anzahl ist, dann kann der neu beigetretene Knoten A wählen, seine Routerfunktionalität zu aktivieren. Wie oben beschrieben worden ist, kann dies in manchen Ausführungsformen durch Senden einer Routeranforderung an den Führerknoten geschehen. Wenn die Anzahl von Routern in dem vermaschten Netzwerk diese vorbestimmte Grenze überschreitet, wird der neu beigetretene Knoten A nicht automatisch bestimmen, dass er ein Router werden sollte. Wie unten detaillierter beschrieben werden wird, können jedoch andere Kriterien verwendet werden, um später zu bestimmen, dass es vorteilhaft ist, dass dieser Knoten A ein Router wird. Dieser neu beigetretene Knoten A kann die Anzahl existierender Router in dem Netzwerk auf eine Anzahl von Wegen bestimmen.
  • In einer Ausführungsform kann er eine Anforderung für diese. Information an den Führerknoten senden, der mit der gewünschten Anzahl antwortet. In einer anderen Ausführungsform kann der neue beigetretene Knoten A den gesamten Netzwerkverkehr abhören und auf Basis des Verkehrs, den er hören kann, die Anzahl aktiver Router in dem Netzwerk bestimmen. In noch einer anderen Ausführungsform kann diese Information durch andere Knoten in dem vermaschten Netzwerk geführt werden, so dass der neue beigetretene Knoten A einfach einen anderen Knoten in dem Netzwerk abfragt, um diese Information zu erhalten. Dieser Knoten kann jeder Knoten in dem Netzwerk sein oder kann ein Router sein. Natürlich sind auch andere Verfahren zur Bestimmung der Anzahl von Routern in einem vermaschten Netzwerk möglich und liegen innerhalb des Fachwissens.
  • Wenn der neu beigetretene Knoten A bestimmt hat, dass er nicht ein Router werden wird, können andere Faktoren gegebenenfalls diese Feststellung ändern. Man nehme zum Beispiel an, dass ein anderer Knoten B versucht, beizutreten, nachdem dieser Knoten A dem vermaschten Netzwerk beigetreten ist. Der Knoten B befindet sich in dem Hörbereich des Knotens A, so dass der Knoten A dazu in der Lage ist, seine Anforderung zu hören, dem Netzwerk beizutreten. Wenn dieser Anforderung von dem Knoten B nicht geantwortet wird, kann der Knoten A bestimmen, dass er der einzige Knoten in dem vermaschten Netzwerk sein könnte, der sich innerhalb des Hörbereichs des Knotens B befindet. Wenn der Knoten B dazu in der Lage ist, diesem vermaschten Netzwerk beizutreten, muss er es somit durch Kommunikation über den Knoten A tun. Dieses Szenario tritt typischerweise auf, während das Netzwerk erzeugt wird. Somit kann der Knoten A in diesem Fall eine Bestimmung bzw. Feststellung vornehmen, dass er auf Basis der Unfähigkeit des Knotens B, dem Netzwerk beizutreten, ein Router werden sollte. In manchen Ausführungsformen sendet er dann diese Anforderung an den Führerknoten. Sobald diese Anforderung gewährt worden ist, ist er nun dazu in der Lage, die Anforderungen des Knotens B, dem Netzwerk beizutreten, an andere Knoten in dem vermaschten Netzwerk weiterzuleiten und es dadurch dem Knoten B zu ermöglichen, beizutreten. In anderen Ausführungsformen aktiviert der Knoten A einfach seine Routerfähigkeit und kommuniziert diese an seine Nachbarn. In noch anderen Ausführungsformen nimmt der Knoten A alleine keine Bestimmung vor, sondern informiert stattdessen den Knoten B, dass er (Knoten A) vorläufig bzw. provisorisch als ein Router verfügbar ist. Wenn der Knoten B keine Antwort von anderen Routern empfängt, aber eine oder mehrere provisorische Antworten empfängt, kann er eine von ihnen wählen und eine Anforderung zurück an den Sender senden, ein Router zu werden.
  • Wie oben beschrieben worden ist, kann ein Mangel an Konnektivität für einen neuen Knoten, der wünscht, dem vermaschten Netzwerk beizutreten, ein Faktor sein, der dazu führt, dass der Knoten A anfordert, ein Router zu werden. Konnektivitätsprobleme können sich jedoch auch in anderen Szenarien ergeben.
  • Man nehme eine Netzwerktopologie an, wie sie in 2 gezeigt ist. In dieser Topologie ist der Knoten A kein Router, da die Knoten C und D mit dem Rest des Netzwerks verbunden sind, einschließlich dem Knoten F über den Knoten E. Mit anderen Worten musste der Knoten A nicht ein Router werden, damit der Knoten C und der Knoten D dem Netzwerk beitreten konnten. Man nehme jedoch an, dass zu einem späteren Zeitpunkt der Knoten E nicht mehr verfügbar ist. Da der Knoten E die Leitung bzw. Strecke war, über die der Knoten C und der Knoten D in dem Netzwerk kommunizierten, sind sie nun nicht dazu in der Lage, mit irgendwelchen anderen Knoten zu kommunizieren. Somit wird eine Übertragung, die durch den Knoten C oder den Knoten D an den Knoten F gesendet wird, nicht weitergeleitet. In ähnlicher Weise kann eine Übertragung an den Knoten C oder den Knoten D von dem Knoten F in dem vermaschten Netzwerk nicht zugestellt werden. Somit kann der Knoten A, der sich innerhalb des Hörbereichs des Knotens C, des Knotens D und des Knotens F befindet, feststellen, dass diese Knoten nicht aufeinander zugreifen können. Da der Knoten A dazu in der Lage ist, als eine Brücke zwischen diesen Knoten zu dienen, versucht er, ein Router zu werden. Sobald der Knoten A ein Router wird, können der Knoten C und der Knoten D unter Verwendung des Knotens A als ein Router wieder mit dem Knoten F kommunizieren.
  • Somit ist ein erstes Kriterium, durch das ein Knoten, der zuvor kein Router war, bestimmen kann, dass er seine Routerfähigkeit aktivieren sollte, Konnektivität. Der Knoten A kann feststellen, dass zwei andere Knoten, die sich beide innerhalb des Hörbereichs des Knotens A befinden, nicht miteinander kommunizieren können. Dies kann sich während eines Netzwerkauf- bzw. -ausbaus (d.h. bei einer anfänglichen Aufzählung des Netzwerks) oder während einer Topologieänderung ereignen. In beiden Szenarien wird der Knoten A versuchen, seine Routerfähigkeit zu aktivieren, entweder automatisch oder durch Senden einer Routeranforderung an den Führerknoten.
  • Der vorstehende Algorithmus ist dabei nützlich, zu gewährleisten, dass ein vermaschtes Netzwerk Konnektivität zwischen all seinen Mitgliedsknoten beibehält. In dem Fall, dass ein Knoten plötzlich seine Verfügbarkeit verliert, wie etwa in dem in 1 gezeigten Szenario, gibt es jedoch eine messbare Verzögerung, bis ein neuer Router aktiviert ist und die neuen Wege erzeugt worden sind.
  • Ein zweiter Algorithmus kann dazu verwendet werden, zu gewährleisten, dass es im gesamten Netzwerk Bikonnektivität gibt. Bikonnektivität ist als die Fähigkeit definiert, zwischen jeden zwei Knoten über zwei unterschiedliche Wege zu kommunizieren. Knoten in dem Netzwerk können proaktiv agieren, um sicherzustellen, dass Bikonnektivität existiert. Man nehme zum Beispiel eine Netzwerktopologie an, die in 3 gezeigt ist. In dieser Topologie ist der Knoten A ein Router, der mit den Knoten B, C, D und E direkt kommunizieren kann. Der Knoten F kann mit dem Knoten C kommunizieren, aber kann den Knoten A nicht erreichen. In ähnlicher Weise kann der Knoten G mit dem Knoten E kommunizieren, aber kann den Knoten A nicht erreichen. Der Knoten X kann mit zumindest dem Knoten C und dem Knoten E kommunizieren. Der Knoten F kann in der Lage sein, mit dem Knoten G zu kommunizieren.
  • Jeder Router in dem Netzwerk kann einen gewissen Status an andere in dem Netzwerk kommunizieren. Zum Beispiel kann jeder Router den anderen Routern mitteilen, dass er erreicht werden kann, und seine direkt benachbarten Router. Wenn der Knoten A diese Information für seine unmittelbaren Nachbarn (d.h. Knoten B, C, D und E) empfängt, stellt er fest, dass es auf einer Seite eine Gruppierung von BCF gibt, da der Knoten B berichtet, dass seine Nachbarn A und C sind, und der Knoten C berichtet, dass seine Nachbarn B und F sind. In ähnlicher Weise lernt er, dass es auf seiner anderen Seite eine zweite Gruppe von DEG gibt. Man beachte, dass diese zwei Gruppierungen keine gemeinsamen Knoten aufweisen. Da der Knoten A die Knoten F und G nicht sehen kann, kann er nicht feststellen, ob sich diese Knoten in Kommunikation befinden.
  • Auf Basis der gesammelten Informationen glaubt der Knoten A, dass es eine einzelne Schwachstelle zwischen der Gruppierung BCF und der Gruppierung DEG gibt. Somit kann er eine Anforderung aussenden, die fragt, ob es einen Knoten gibt, der dazu in der Lage ist, diese zwei Gruppen zu verbinden. Diese Anforderung kann gegebenenfalls nur an seine Nachbarn gesendet werden oder kann über das gesamte Netzwerk verteilt werden.
  • Der Knoten X, der gegenwärtig kein Router ist, empfängt diese Anforderung von dem Knoten A. Da sich der Knoten C und der Knoten E beide innerhalb seines Hörbereichs befinden, stellt er fest, dass er dazu in der Lage ist, diese zwei Gruppierungen miteinander zu verbinden. Daher antwortet er in einer Ausführungsform an den Knoten A, dass er dazu in der Lage ist, diese Gruppierungen zu verbinden. In einer weiteren Ausführungsform berichtet er auch seine Kosten, die mit jedem Knoten in diesen Gruppierungen in Zusammenhang stehen. Auf diese Weise kann der Knoten A den besten Knoten bestimmen, um als ein redundanter Weg zwischen diesen Gruppierungen zu dienen. Der Knoten A benachrichtigt dann den Knoten X, dass er ausgewählt worden ist, um als die redundante Verbindung zu dienen. Nach Empfang dieser Nachricht aktiviert der Knoten X seine Routerfähigkeit oder sendet in anderen Ausführungsformen eine Routeranforderung an den Führerknoten. Gemäß einer zweiten Ausführungsform antwortet der Knoten X dem Knoten A nicht. Vielmehr aktiviert er unmittelbar seine Routerfähigkeit oder sendet in einer anderen Ausführungsform die Routeranforderung an den Führerknoten, sobald er festgestellt hat, dass er als eine redundante Verbindung zwischen den Gruppierungen BCF und DEG dienen kann.
  • Es ist darauf hinzuweisen, dass der Knoten A nicht die einzige Schwachstelle in 3 gewesen sein könnte, da zwischen dem Knoten F und dem Knoten G ein Weg existiert. Die Verwendung dieser Verbindung als die redundante Verbindung würde jedoch einen Weg zwischen dem Knoten B und den Knoten D erzeugen, der fünf Sprünge lang ist. In manchen Ausführungsformen kann dies nicht akzeptabel sein. Daher kann die Wahl des Knotens X als die redundante Verbindung die Entfernung zwischen dem Knoten B und dem Knoten D reduzieren.
  • Somit kann der Wunsch, zu gewährleisten, dass das gesamte Netzwerk Bikonnektivität hat, ein zweites Kriterium sein, das verwendet wird, um zu bestimmen, dass ein Knoten eine Erlaubnis anfordert, ein Router zu werden.
  • Der vorstehende Satz von Algorithmen kann verwendet werden, um zu bestimmen, wie ein Knoten bestimmt bzw. feststellt, dass er ein Router werden sollte. Wie oben beschrieben worden ist, kann ein Knoten zum Beispiel bei bzw. nach der Initialisierung einfach deshalb entscheiden, ein Router zu werden, weil es gegenwärtig wenige andere Router in dem Netzwerk gibt. Wenn das Netzwerk wächst kann diese Entscheidung jedoch ggf. im Rückblick suboptimal gewesen sein.
  • Man betrachte das frühere Beispiel des Beleuchtungssystems für den Konferenzraum. Da das Netzwerk in dem Konferenzraum aufgezählt ist, kann jeder Knoten gegebenenfalls alleine auf Basis der begrenzten Anzahl von Routern in dem Netzwerk bestimmen, dass er ein Router sein kann. Wenn das Netzwerk weiter wächst, wie etwa durch den Einschluss anderer Konferenzräume oder Büroflächen, sind diese Knoten jedoch nun unnötig. Wenn es wünschenswert ist, eine maximale Anzahl von Routern in einem Netzwerk zu haben, verbrauchen diese Knoten außerdem wertvolle Ressourcen in dem Netzwerk.
  • Somit kann in einer Ausführungsform ein System mit mehreren Schwellen verwendet werden. Wenn zum Beispiel die gewünschte maximale Anzahl von Routern 25 ist, kann eine erste vorbestimmte Grenze auf eine kleinere Zahl gesetzt werden, wie etwa 10. Wenn es weniger als diese vorbestimmte Anzahl von Routern gibt, dann wird der Knoten versuchen, ein Router zu werden. Wenn die Anzahl existierender Router diese Schwelle überschreitet, kann der Knoten nur dann ein Router werden, wenn eines der anderen Kriterien erfüllt ist. Dies ermöglicht es dem Netzwerk, schnell aufgezählt zu werden, während es auch die Möglichkeit verringert, dass die maximale Anzahl von Routern überschritten wird.
  • Daher gibt es in einer Ausführungsform mindestens zwei Grenzen bzw. Grenzwerte. Erstens gibt es die maximale Anzahl von Routern (Nmax), die in dem Netzwerk erlaubt sind. Es kann eine andere vorbestimmte Schwelle, Ninit, geben, die geringer als Nmax ist. Wenn die Anzahl existierender Router geringer als Ninit ist, dann aktiviert ein neu beigetretener Knoten automatisch seine Routerfähigkeit oder sendet in einer anderen Ausführungsform unmittelbar eine Routeranforderung an den Führerknoten. Wenn die Anzahl existierender Router größer als Ninit ist, dann kann der neu beigetretene Knoten nur dann ein Router werden, wenn es als eine Folge der Konnektivitäts- oder Bikonnektivitätsalgorithmen erforderlich ist. Die Beziehung zwischen Nmax und Ninit ist ein Designparameter, und es ist keine feste Beziehung geboten. In manchen Ausführungsformen kann Ninit zum Beispiel 50% von Nmax sein. In anderen Ausführungsformen kann Ninit um einen festen Wert geringer als Nmax sein, wie etwa 10 weniger als Nmax.
  • 4 zeigt ein Flussdiagramm, das die verschiedenen Entscheidungen illustriert, die von einem Knoten in dem vermaschten Netzwerk getroffen werden können. Wie in Schritt 100 gezeigt ist, fordert der Knoten A zuerst bei der Energieinitialisierung an, einem Maschenknoten beizutreten. Diese Anforderung kann an den Führerknoten gesendet werden, der die Anforderung typischerweise gewähren wird. Nachdem der Knoten A dem Netzwerk beigetreten ist, bestimmt er, wie viele Router gegenwärtig existieren, wie es in Schritt 110 gezeigt ist. Wie oben beschrieben worden ist, können zahlreiche Verfahren verwendet werden, damit der Knoten A die Anzahl aktiver Router bestimmt, einschließlich des Abfragens des Führerknotens, des Abfragens eines Nachbarknotens oder des Überwachens von Netzwerkverkehr. Wenn die Anzahl aktiver Router geringer als eine vorbestimmte Schwelle ist, wie etwa Ninit, aktiviert der Knoten A seine Routerfähigkeit, wie es in Schritt 120 gezeigt ist. Wie oben beschrieben worden ist, kann dies automatisch geschehen, oder der Knoten kann eine Routeranforderung an den Führerknoten senden. Wenn die Anzahl von Routern diese vorbestimmte Schwelle überschreitet, aktiviert der Knoten A seine Routerfähigkeit nicht. Stattdessen beginnt er damit, Netzwerkverkehr zu überwachen, um zu bestimmen, ob andere Kriterien existieren, die es erfordern, dass er als ein Router dient. Wie es in Schritt 130 gezeigt ist, kann der Knoten A zum Beispiel durch Überwachung von Netzwerkverkehr bestimmen, dass er zwei Nachbarn hat, die sich beide innerhalb seines Hörbereichs befinden und die nicht miteinander kommunizieren können. Dies kann beim Start geschehen, wenn der Knoten A der einzige Knoten ist, der dazu in der Lage ist, einen neuen Knoten zu hören, der versucht, dem Netzwerk beizutreten. Alternativ kann dies während des normalen Betriebs aufgrund einer Topologieänderung geschehen, wie etwa der Eliminierung eines zuvor aktivierten Routers. Wenn der Knoten A feststellt, dass ein Konnektivitätsproblem existiert und dass er dazu in der Lage ist, dieses Problem zu lösen, wird er seine Routerfähigkeit aktivieren, wie es in Schritt 120 gezeigt ist. Wenn kein solches Konnektivitätsproblem existiert, erhält die Vorrichtung einfach ihren Nicht-Router-Status bei. Schließlich kann es in manchen Ausführungsformen erforderlich sein, dass in dem Netzwerk Bikonnektivität existiert. Zum Beispiel kann der Knoten A eine Nachricht von einem anderen Knoten in dem Netzwerk empfangen, die fragt, ob er dazu in der Lage ist, eine redundante Verbindung bereitzustellen, die zwei Gruppen von Knoten verbindet, wie es in Schritt 140 gezeigt ist. Wenn der Knoten A dazu in der Lage ist, die zwei angegebenen Gruppen von Knoten zu verbinden, kann er seine Routerfähigkeit aktivieren, wie es in Schritt 120 gezeigt ist.
  • Die vorstehende Offenbarung beschreibt verschiedene Algorithmen, durch die ein Knoten feststellen kann, dass er seine Routerfähigkeit aktivieren sollte. Darüber hinaus kann es auch notwendig sein, dass Knoten feststellen, dass sie ihre Routerfähigkeit aufgeben sollten. Dies kann geschehen, wenn sich die gesamte Anzahl von Routern in dem System Nmax nähert, oder kann auf einer kontinuierlichen Basis durchgeführt werden. Somit ermöglichen es die Algorithmen in einer Ausführungsform einem Knoten, eine Anforderung an den Führerknoten zu senden, von der Liste von Routern entfernt zu werden. In anderen Ausführungsformen deaktiviert der Knoten einfach seine Routerfähigkeit und kann dies gegebenenfalls an seine Nachbarn kommunizieren. Es gibt verschiedene Szenarien, in denen ein Knoten wünschen kann, seinen Routerstatus wie unten beschrieben aufzugeben.
  • Man betrachte die Netzwerktopologie in 5. In diesem Netzwerk befindet sich der Knoten D in Hörentfernung von drei Routern, Knoten A, Knoten B und Knoten C. In ähnlicher Weise befindet sich auch der Knoten E in Hörentfernung von diesen drei Routern. In dieser Topologie gibt es drei mögliche Wege zwischen dem Knoten D und den Knoten E (d.h. durch den Knoten A, durch den Knoten B und durch den Knoten C). Offensichtlich gibt es in dieser Topologie keine Konnektivitätsprobleme, noch gibt es irgendwelche Bikonnektivitätsprobleme. Tatsächlich gibt es mehr Router als erforderlich sind, um beide dieser Kriterien zu erfüllen. In dieser Ausführungsform können der Knoten A, der Knoten B und der Knoten C ggf. ihre Routinginformationen teilen, die jeweils seine Nachbarn und die Kosten von ihm selbst zu jedem dieser Nachbarn identifizieren. Jeder dieser Knoten kann dann seine Kosten mit denjenigen vergleichen, die durch die anderen Knoten berichtet werden. Wenn die Kosten für einen Knoten größer als die Kosten oder gleich den Kosten für einen zweiten Knoten sind, kann dieser Knoten dazu in der Lage sein, seine Routerfähigkeit aufzugeben. Wenn zum Beispiel die berichteten Routingkosten für den Knoten B geringer als die Kosten oder gleich den Kosten für den Knoten A sind, kann ohne jede Verschlechterung der Netzwerkleistung der Knoten A aufhören, ein Router zu sein.
  • In einer Ausführungsform kann der Knoten A, wenn er feststellt, dass geringere oder gleiche Kosten unter Verwendung des Knotens B oder des Knotens C verfügbar sind, eine Anforderung an den Führerknoten senden, seine Routerfähigkeit aufzugeben. In einer anderen Ausführungsform deaktiviert der Knoten A einfach seine Routerfähigkeit und kommuniziert dies an seine Nachbarn.
  • In einer anderen Ausführungsform können die fraglichen Knoten zuerst untereinander bestimmen, welcher seine Routerfähigkeit aufgeben wird, bevor irgendeiner der Knoten seine Routerfähigkeit deaktiviert. Zum Beispiel kann der Knoten A höhere oder gleiche Kosten im Vergleich zu dem Knoten B haben, der höhere oder gleiche Kosten im Vergleich zu dem Knoten C hat. Der Knoten B kann seine Kosten mit dem Knoten C vergleichen und feststellen, dass er seinen Routerstatus beenden sollte, während der Knoten A sich selbst mit jedem der anderen Knoten vergleicht und eine ähnliche Feststellung trifft. Wenn die Kosten von diesen drei alle gleich sind, dann kann darüber hinaus jeder glauben, dass er seinen Routerstatus beenden sollte. Wenn der Knoten A feststellt, dass er ein Kandidat ist, um seinen Routerstatus aufzugeben, kommuniziert er daher diese Absicht zuerst an die anderen Knoten, Knoten B und C. Diese Knoten werden verifizieren, dass der Kandidatenknoten A in der Tat Routingkosten hat, die gleich oder größer als ihre eigenen sind. Wenn diese Verifizierung erfolgreich ist, wird jeder dem Knoten A seine Billigung dieser Entscheidung anzeigen. Wenn jedoch einer der anderen Knoten glaubt, dass seine Kosten tatsächlich schlechter als Knoten A sind, kann er mit seiner eigenen Kommunikation antworten, die seine Intention angibt, sich als ein Router zurückzuziehen. Um eine Blockade zu vermeiden, können sich die Kriterien, die verwendet werden, um zu bestimmen, dass ein Knoten ein Kandidat zum Zurückziehen ist, von den Kriterien unterscheiden, die es einem anderen Knoten ermöglichen, sich über die Intention dieses Knotens zum Zurückziehen hinwegzusetzen.
  • In diesem Beispiel hat der Knoten A die höchsten Kosten, und daher werden letztendlich die Knoten B und C seine Entscheidung billigen, sich als ein Router zurückzuziehen. Diese Änderung in der Topologie hat einen Router weniger in dem Netzwerk und keine Änderung in der Routingleistung durch das Netzwerk zur Folge. Wenn zu einem späteren Zeitpunkt der Knoten B oder der Knoten C seine Verfügbarkeit verliert, kann der oben beschriebene Bikonnektivitätsalgorithmus verwendet werden, um den Knoten A wieder als einen Router einzusetzen.
  • Das obige Beispiel nimmt an, dass es notwendig war, Bikonnektivität in dem Netzwerk beizubehalten. In manchen Netzwerken, wie etwa sehr großen Netzwerken, kann es jedoch gegebenenfalls unmöglich sein, Bikonnektivität beizubehalten und die Anzahl von Routern auf eine gegebene Anzahl zu begrenzen. In diesen Netzwerken kann auf das Erfordernis von Bikonnektivität verzichtet werden. Unter Bezugnahme auf 5 können in diesem Szenario beide Knoten A und B feststellen bzw. bestimmen, dass sie ihre Routerfähigkeit aufgeben sollten. In diesem Fall werden in einer Ausführungsform beide dieser Knoten eine Anforderung an den Führerknoten senden, sie von der Liste von Routern zu entfernen. In einer anderen Ausführungsform werden beide dieser Knoten einfach ihre Routingfähigkeit deaktivieren. Diese Änderung in der Topologie hat keinen unmittelbaren Einfluss auf die Netzwerkleistung, da der Knoten C die besten Kosten zwischen den Knoten D und E bereitstellt. Das Netzwerk kann gegebenenfalls jedoch länger benötigen, um sich zu erholen, wenn der Knoten C zu einem späteren Zeitpunkt versagt. Die oben beschriebenen Algorithmen werden jedoch effektiv sein, dieses Konnektivitätsproblem zu identifizieren. Sobald dieses Konnektivitätsproblem identifiziert wird, wird der Knoten A oder der Knoten B seine Routerfähigkeit aktivieren und dadurch dieses Problem lösen.
  • Somit kann der hierin beschriebene Satz von Algorithmen verwendet werden, um ein vermaschtes Netzwerk automatisch zu konfigurieren, um die Anzahl von Routern zu begrenzen. Diese Algorithmen sind in den Speichervorrichtungen der Knoten gespeichert und können von diesen Knoten ausgeführt werden. Da diese Algorithmen von jedem Knoten ausgeführt werden, kann das Netzwerk darüber hinaus schnell und effizient auf Änderungen in der Netzwerktopologie reagieren. Darüber hinaus können die Algorithmen verwendet werden, um bestimmte Netzwerkeigenschaften zu garantieren. Wenn sie entsprechend programmiert sind, können die Algorithmen zum Beispiel verwendet werden, um ohne jegliche Benutzerintervention Bikonnektivität in dem gesamten Netzwerk zu gewährleisten. Darüber hinaus ermöglichen es diese Algorithmen dem vermaschten Netzwerk, selbstheilend zu sein. Mit anderen Worten können die Knoten dann, wgkenn das Versagen eines Knotens ein Konnektivitätsproblem in dem Netzwerk erzeugt, durch Ausführen dieser Algorithmen das Konnektivitätsproblem identifizieren und Abhilfemaßnahmen durchführen. In manchen Ausführungsformen weist die Abhilfemaßnahme das Hinzufügen eines anderen Routers zu dem Netzwerk auf.
  • Zusammenfassend benötigt ein Knoten somit die folgenden Informationen, um alle der hierin beschriebenen Merkmale zu implementieren:
    1. (A) die Anzahl von Routern in dem Netzwerk,
    2. (B) von jedem Nachbar eine Liste der Router, mit denen dieser Nachbar verbunden ist,
    3. (C) eine Länge oder Wegkosten für die Router in den Listen in (B) und
    4. (D) von jedem Nachbar eine Liste seiner benachbarten Router.
  • Diese Informationen können normalerweise unter Verwendung eines traditionellen Routingalgorithmus erhalten werden. Vorrichtungen, die ihre Routerfähigkeit nicht aktiviert haben, können diese Informationen durch Mithören von Wegentdeckungsnachrichten erhalten, die durch benachbarte Router übertragen werden.
  • Die Anzahl von Routern (d.h. die in (A) beschriebene Information) wird verwendet, um die Anzahl von Routern in kleinen Netzwerken zu erhöhen und die Anzahl in großen Netzwerken zu verringern.
  • Das Gewährleisten von Konnektivität wird unter Verwendung der Informationen aus (B) durchgeführt. Wenn ein Knoten zwei Nachbarn hat, die unterschiedliche Listen erreichbarer Router berichten, dann sind sie insbesondere nicht verbunden, und der Knoten sollte ein Router werden.
  • Die Information aus (C) wird zur Detektion redundanter Router verwendet. Wenn ein Router zwei Nachbarn hat, von denen beide berichten, dass sie dieselben oder geringere Kosten gegenüber allen Routern haben, dann ist dieser Router redundant und deaktiviert seine Routerfähigkeit.
  • Die Information aus (D) wird für Bikonnektivität verwendet. Wenn ein Knoten zwei Sätze von Nachbarn hat, die keine Nachbarverbindungen teilen, dann ist es wahrscheinlich, dass der Graph nicht biverbunden ist.
  • Die vorliegende Offenbarung soll in ihrem Bereich nicht auf die speziellen hierin beschriebenen Ausführungsformen beschränkt werden. Tatsächlich werden zusätzlich zu denjenigen, die hierin beschrieben sind, andere verschiedene Ausführungsformen von und Modifikationen an der vorliegenden Offenbarung für Fachleute aus der vorhergehenden Beschreibung und den beigefügten Zeichnungen ersichtlich sein. Somit ist es beabsichtigt, dass derartige andere Ausführungsformen und Modifikationen in den Bereich der vorliegenden Offenbarung fallen. Auch wenn die vorliegende Offenbarung hierin in dem Kontext einer bestimmten Implementierung in einer bestimmten Umgebung für einen bestimmten Zweck beschrieben worden ist, werden Fachleute erkennen, dass ihre Nützlichkeit nicht darauf beschränkt ist und dass die vorliegende Offenbarung vorteilhaft in jeder Anzahl von Umgebungen für jede Anzahl von Zwecken implementiert werden kann. Dementsprechend sollten die unten angegebenen Ansprüche im Hinblick auf die volle Breite und den Geist der vorliegenden Offenbarung interpretiert werden, wie sie hierin beschrieben sind.

Claims (14)

  1. Verfahren zur Begrenzung der Anzahl (N) von Routern in einem vermaschten Netzwerk, wobei das vermaschte Netzwerk eine Vielzahl von Knoten (A, B, C, D, E, F, G, X) aufweist und das Verfahren von jedem der Vielzahl von Knoten ausgeführt wird, wobei das Verfahren aufweist: Bestimmen (110) einer Anzahl von Routern, die sich gegenwärtig in dem vermaschten Netzwerk befinden, Aktivieren (120) einer Routingfähigkeit eines Knotens, wenn eine Anzahl von Routern, die sich gegenwärtig in dem vermaschten Netzwerk befinden, geringer als eine vorbestimmte Schwelle ist, Überwachen (130) von Netzwerkverkehr, um ein Konnektivitätsproblem zu identifizieren, und Aktivieren (120) einer Routingfähigkeit des Knotens, wenn das Konnektivitätsproblem detektiert wird und der Knoten das Konnektivitätsproblem lösen kann.
  2. Verfahren nach Anspruch 1, das ferner aufweist: Überwachen (140) von Netzwerkverkehr auf eine Nachricht hin, die eine redundante Verbindung zwischen zwei Gruppen von Knoten anfordert, und Aktivieren (120) einer Routingfähigkeit des Knotens, wenn der Knoten als die redundante Verbindung dienen kann.
  3. Verfahren nach Anspruch 1, bei dem die Anzahl von Routern durch Abfragen eines Führerknotens bestimmt wird.
  4. Verfahren nach Anspruch 1, bei dem die Anzahl von Routern durch Überwachen von Netzwerkverkehr bestimmt wird.
  5. Verfahren nach Anspruch 1, bei dem die Anzahl von Routern durch Abfragen von einem der Vielzahl von Knoten in dem vermaschten Netzwerk bestimmt wird.
  6. Verfahren nach Anspruch 1, bei dem die Anzahl von Routern auf einen ersten Wert beschränkt ist und die vorbestimmte Schwelle geringer als der erste Wert ist.
  7. Verfahren nach Anspruch 1, bei dem das Identifizieren des Konnektivitätsproblems aufweist: Überwachen des Netzwerkverkehrs, um eine Anforderung von einem Knoten zu hören, dem vermaschten Netzwerk beizutreten, und Nicht-Hören einer Antwort auf die Anforderung.
  8. Verfahren nach Anspruch 1, bei dem das Identifizieren des Konnektivitätsproblems aufweist: Überwachen des Netzwerkverkehrs, um festzustellen, dass zwei Knoten, die beide innerhalb des Hörbereichs des Knotens liegen, nicht aufeinander zugreifen können.
  9. Verfahren nach Anspruch 1, bei dem der Knoten seine Routerfähigkeit deaktiviert.
  10. Verfahren nach Anspruch 9, bei dem die Routerfähigkeit deaktiviert wird, nachdem eine Feststellung getroffen worden ist, dass der Knoten redundant ist.
  11. Verfahren nach Anspruch 10, bei dem die Feststellung aufweist, mindestens einen weiteren Router in dem Netzwerk zu identifizieren, der Nachbarn des Knotens bei gleichen oder geringeren Kosten verbinden kann.
  12. Verfahren nach Anspruch 10, bei dem die Feststellung aufweist, mindestens zwei andere Router in dem Netzwerk zu identifizieren, die Nachbarn des Knotens bei gleichen oder geringeren Kosten verbinden können.
  13. Verfahren zur Begrenzung der Anzahl (N) von Routern in einem vermaschten Netzwerk, wobei das vermaschte Netzwerk eine Vielzahl von Knoten (A, B, C, D, E, F, G, X) aufweist und das Verfahren von jedem der Vielzahl von Knoten ausgeführt wird, wobei das Verfahren aufweist: Überwachen von Netzwerkverkehr an einem Knoten, Identifizieren eines Konnektivitätsproblems und Aktivieren einer Routingfähigkeit des Knotens, wenn der Knoten das Konnektivitätsproblem lösen kann, wobei das Identifizieren des Konnektivitätsproblems aufweist: Überwachen des Netzwerkverkehrs, um eine Anforderung von einem zweiten Knoten zu hören, dem vermaschten Netzwerk beizutreten, und Nicht-Hören einer Antwort auf die Anforderung, und wobei das Verfahren ferner aufweist: Senden einer Nachricht an den zweiten Knoten, nachdem keine Antwort auf die Anforderung gehört worden ist, dem vermaschten Netzwerk beizutreten, wobei die Nachricht den zweiten Knoten von seiner Nutzbarkeit informiert, als ein Router zu dienen, und Empfangen einer Antwort von dem zweiten Knoten, die den Knoten auffordert, als ein Router zu dienen, wobei die Aktivierung einer Routingfähigkeit stattfindet, nachdem die Antwort von dem zweiten Knoten empfangen worden ist.
  14. Verfahren zur Begrenzung der Anzahl (N) von Routern in einem vermaschten Netzwerk, wobei das vermaschte Netzwerk eine Vielzahl von Knoten (A, B, C, D, E, F, G, X) aufweist und das Verfahren von jedem der Vielzahl von Knoten ausgeführt wird, wobei das Verfahren aufweist: Überwachen von Netzwerkverkehr an einem Knoten, Identifizieren eines Konnektivitätsproblems und Aktivieren einer Routingfähigkeit des Knotens, wenn der Knoten das Konnektivitätsproblem lösen kann, wobei das Identifizieren des Konnektivitätsproblems aufweist: Überwachen von Netzwerkverkehr, um Nachbarn des Knotens zu bestimmen, Abfragen von jedem der Nachbarn, um Nachbarn der Nachbarn zu bestimmen, Feststellen, dass mindestens einer der Nachbarn Teil einer ersten Gruppe und mindestens ein zweiter der Nachbarn Teil einer zweiten Gruppe ist, wobei es keine Knoten gibt, die der ersten Gruppe und der zweiten Gruppe gemein sind.
DE102014014429.1A 2013-09-30 2014-09-29 Verfahren zur Begrenzung einer Anzahl von Routern in einem vermaschten Netzwerk Active DE102014014429B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/041,056 US9077652B2 (en) 2013-09-30 2013-09-30 Methods for limiting number of routers in a mesh network
US14/041,056 2013-09-30

Publications (2)

Publication Number Publication Date
DE102014014429A1 DE102014014429A1 (de) 2015-04-02
DE102014014429B4 true DE102014014429B4 (de) 2022-10-06

Family

ID=52673234

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014014429.1A Active DE102014014429B4 (de) 2013-09-30 2014-09-29 Verfahren zur Begrenzung einer Anzahl von Routern in einem vermaschten Netzwerk

Country Status (3)

Country Link
US (2) US9077652B2 (de)
CN (1) CN104518971B (de)
DE (1) DE102014014429B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210204204A1 (en) * 2018-08-23 2021-07-01 Lg Electronics Inc. Method and device for obtaining information about communication entity operating in new band in wireless lan system

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9077652B2 (en) 2013-09-30 2015-07-07 Silicon Laboratories Inc. Methods for limiting number of routers in a mesh network
KR102038571B1 (ko) 2014-06-24 2019-11-26 구글 엘엘씨 메쉬 네트워크 커미셔닝
US9385953B1 (en) 2015-02-03 2016-07-05 Google Inc. Mesh network addressing
EP3751875A1 (de) 2015-04-02 2020-12-16 Google LLC Effizienter netzwerkstapel für drahtlosanwendungsprotokolle
US10484257B1 (en) * 2015-07-15 2019-11-19 Amazon Technologies, Inc. Network event automatic remediation service
US11038715B2 (en) 2018-02-07 2021-06-15 Gooee Limited System and method for identifying specific/best path in a mesh network
US10917254B2 (en) 2018-02-07 2021-02-09 Gooee Limited System and method of utilizing an interference mitigating protocol in mesh networks
US10841201B2 (en) 2018-02-07 2020-11-17 Gooee Limited System and method for managing and controlling a dynamic tunneling protocol in a mesh network
JP6997378B2 (ja) * 2018-10-26 2022-01-17 日本電信電話株式会社 推定方法、推定装置及び推定プログラム
US11575739B1 (en) 2021-11-15 2023-02-07 Itron, Inc. Peer selection for data distribution in a mesh network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7720037B2 (en) 2006-08-03 2010-05-18 Aol Inc. Wireless social networking
US20100303005A1 (en) 2009-05-29 2010-12-02 Motorola, Inc. System and method to provide differentiated routing in multi-hop multi-radio wireless networks
US20130028143A1 (en) 2011-07-27 2013-01-31 Cisco Technology, Inc. Reduced topology routing in shared media communication networks

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6931356B2 (en) * 2002-03-21 2005-08-16 International Business Machines Corporation System for dynamically adjusting performance measurements according to provided service level
JP4674502B2 (ja) * 2005-07-22 2011-04-20 ソニー株式会社 情報通信システム、情報通信装置及び情報通信方法、並びにコンピュータ・プログラム
US7697516B2 (en) * 2005-08-02 2010-04-13 Trilliant Networks, Inc. Method and apparatus for pre-admitting a node to a mesh network
US8479241B2 (en) * 2007-05-10 2013-07-02 At&T Intellectual Property I, Lp System and method to control communication of data
US9077652B2 (en) 2013-09-30 2015-07-07 Silicon Laboratories Inc. Methods for limiting number of routers in a mesh network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7720037B2 (en) 2006-08-03 2010-05-18 Aol Inc. Wireless social networking
US20100303005A1 (en) 2009-05-29 2010-12-02 Motorola, Inc. System and method to provide differentiated routing in multi-hop multi-radio wireless networks
US20130028143A1 (en) 2011-07-27 2013-01-31 Cisco Technology, Inc. Reduced topology routing in shared media communication networks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210204204A1 (en) * 2018-08-23 2021-07-01 Lg Electronics Inc. Method and device for obtaining information about communication entity operating in new band in wireless lan system

Also Published As

Publication number Publication date
US20150256411A1 (en) 2015-09-10
DE102014014429A1 (de) 2015-04-02
CN104518971A (zh) 2015-04-15
US9565065B2 (en) 2017-02-07
CN104518971B (zh) 2018-02-06
US9077652B2 (en) 2015-07-07
US20150092535A1 (en) 2015-04-02

Similar Documents

Publication Publication Date Title
DE102014014429B4 (de) Verfahren zur Begrenzung einer Anzahl von Routern in einem vermaschten Netzwerk
DE102015102871B4 (de) Technologien für verteilten Leitweglenkungstabellennachschlag
DE60305676T2 (de) Drahtloses lan mit dynamischer kanalzugriffsverwaltung
DE602005004047T2 (de) Methode zur Zuordnung von Adressen zu einer Vielzahl von Geräten in einem Netzwerk und entsprechendes System
DE602004011579T2 (de) Adress-Selbstkonfiguration in Ad-hoc Netzen
DE60318428T2 (de) Verfolgen von verkehr in einem mobil-ad-hoc-netzwerk
DE112019007229T5 (de) Heuristische sd-wan-routen-neukonfiguration
DE69530543T2 (de) Brücke zwischen einem drahtlosen und einem drahtgebundenen lokalen Netz
DE202005010770U1 (de) Logische und physikalische Maschennetztrennung
DE112005003403T5 (de) Verfahren und Vorrichtung zum Reagieren auf Knotenanomalien innerhalb eines Ad-Hoc-Netzwerks
DE112018006037T5 (de) Lastausgleich für automobil-wi-fi-steuereinheiten mit dualschnittstelle für p2p-vorrichtungen
DE112014006431T5 (de) Gruppenneubildungs-Mechanismus zum Reduzieren von Disruptionszeit in drahtlosen Peer-to-Peer-Netzwerken
EP1881650B1 (de) Aufbau eines drahtlosen selbstorganisierenden Kommunikationsnetzwerkes
EP1800457B1 (de) Verfahren zur bestimmung eines leitenden teilnehmers in einem netzwerk
DE102015111405A1 (de) Beacon und Verfahren zum Aufbau und zur Aufrechterhaltung eines Netzwerkes
DE102021110225A1 (de) Erkennung von netzwerkdiensten
EP1187397B1 (de) Neukonfigurierung eines Adhoc-Netzwerks
EP1860830B1 (de) Verfahren zur Installation eines hierarchischen Netzwerkes
DE102021109230A1 (de) Falsch konfigurierte uplink-identifikation
WO2005043822A1 (de) Verfahren zur übertragung von informationen in einem kommunikationssystem unter verwendung eines pfades
DE112014006061B4 (de) Verbindungssteuerverfahren durch ein Kommunikationsendgerät
WO2000041471A2 (de) Datenzugriffs- und -verwaltungssystem sowie verfahren zum datenzugriff und zur datenverwaltung für ein rechnersystem
DE112017003386B4 (de) Kommunikationssystem und Kommunikationsverfahren
DE102018103097B3 (de) Verfahren zur Topologiebestimmung in einer Mobilfunk-Site, ein Computerprogramm, ein Computerprogramm-Produkt und eine entsprechende Mobilfunk-Site
EP1602205A1 (de) Verfahren und netzseitige einrichtung zur ermittlung eines pfades in einem adhoc funkkommunikationssystem

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: UEXKUELL & STOLBERG PARTNERSCHAFT VON PATENT- , DE

Representative=s name: BIRD & BIRD LLP, DE

R082 Change of representative

Representative=s name: UEXKUELL & STOLBERG PARTNERSCHAFT VON PATENT- , DE

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012803000

Ipc: H04L0012751000

R016 Response to examination communication
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012751000

Ipc: H04L0045020000

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final