-
HINTERGRUND
-
Drahtlose
Netzwerke, wie zum Beispiel drahtlose lokale Netzwerke (WLANs),
sind bekannt. In einem WLAN sind Stationen (STAB) in der Lage, drahtlos
innerhalb eines lokalen Netzwerks zu kommunizieren. In einem Infrastruktur-Netzwerk
erfolgt die gesamte Kommunikation über einen Zugriffspunkt (AP),
der als eine Basisstation agiert. Jede Entität in dem WLAN kann auch mit
einem Knoten in einem anderen drahtgebundenen oder drahtlosen Netzwerk
kommunizieren, das mit dem WLAN z.B. über den Zugriffspunkt verbunden
ist.
-
Das
Mobile IP ist eine bekannte Erweiterung des Internet Protocol (IP),
das einen Knoten in einem IP-basierten Netzwerk in die Lage versetzt,
seinen physikalischen Anschlusspunkt in dem Netzwerk, z.B. dem Internet,
zu ändern,
während
er die gleiche IP-Adresse beibehält,
durch die er in seinem Ausgangsnetzwerk identifiziert wird. Agenten
wie zum Beispiel Home Agents und Foreign Agents (kollektiv "Mobility Agents" genannt), die Mobile
IP Dienste bereitstellen, senden IP-Pakete, die Ankündigungen
der Dienste umfassen, die sie bereitstellen. Infolgedessen ist das
Bestimmen der Verfügbarkeit
von Mobile IP Diensten ein Prozess, der in der Netzwerk Layer (L3)
des Kommunikationsprotokolls stattfindet.
-
Die
Verbindung einer drahtlosen Station mit einem Zugriffspunkt findet
in der Data Link Layer (L2) statt, d.h., bei einer niedrigeren Protokollschicht
als die Mobile IP Dienste. Somit findet in dem Stand der Technik
die Verbindung zwischen einem AP und einer Station in einer Protokollschicht
statt, bei der eine Unkenntnis bezüglich Mobile IP Diensten vorliegt,
und somit findet sie statt, ohne dass berücksichtigt wird, ob der AP
in Kommunikation mit irgendwelchen Mobility Agents steht.
-
Die
US-Patentanmeldung mit der Veröffentlichungsnummer
2004066757 von Molteni, et. al., mit dem Titel AN L2 METHOD FOR
A WIRELESS STATION TO LOCATE AND ASSOCIATE TO LOCATE AND ASSOCIATE
WITH A WIRELESS NETWORK IN COMMUNICATION WITH A MOBILE IP AGENT
(nachfolgend die "Haupterfindung" genannt) beschreibt,
wie eine drahtlose Station eine Datenbank von WLAN-Zugriffspunkten erschaf fen
kann, die die Station hören
kann, die in der vorliegenden Beschreibung die WLAN Datenbank genannt
wird. Die WLAN Datenbank umfasst für jedes WLAN, dessen AP die
Station hören
kann, L2 Informationen wie etwa den Service Set Identifier (SSID)
des drahtlosen Netzwerks, der eindeutig das WLAN identifiziert, und
die Signalstärke
der L2 Frames von dem AP des WLAN. Die WLAN Datenbank umfasst auch
L3 Informationen, wie etwa irgendwelche Ankündigungen von Mobility Agents,
die der AP des WLAN überträgt. Solche L3
Informationen werden bei L2 gesammelt, bevor sich die Station mit
irgendeinem AP verbindet.
-
Die
Haupterfindung stellt ein Verfahren und eine Vorrichtung bereit,
die eine Station eines WLAN in die Lage versetzen, vor der Verbindung
zu entdecken, ob ein oder mehrere Kandidaten-APs für die Verbindung
in Kommunikation mit Mobility Agents, z.B. mit Home Agents und/oder
Foreign Agents, steht/stehen oder nicht. Die Haupterfindung beschreibt
auch das Auswählen
für die
Verbindung eines WLAN aus der WLAN Datenbank, dessen AP in Kommunikation
mit einem Mobility Agent steht, so dass die drahtlose Station aus
Mobile IP Diensten Nutzen ziehen kann und/oder Mobile IP Dienste
bereitstellen kann. Wenn die Station in Kommunikation mit einem
Foreign Agent (IPv4) oder einem Access Router (IPv6) steht, kann
die drahtlose Station ein mobiler Knoten werden. Ein mobiler Knoten
ist ein Knoten eines Netzwerks, der seinen Anschlusspunkt ändern kann.
-
Eine
Ausführungsform
der Haupterfindung ist, wenn die Station ein Router ist. Durch das
Gewährleisten,
dass sich der Router mit einem WLAN verbindet, dessen AP eine Foreign
Agent Ankündigung
von einem Foreign Agent (in dem Fall von IPv4) oder von einem Access
Router (in dem Fall von IPv6) gesendet hat, wird der Router auch
ein mobiler Knoten, indem er sich mit einem WLAN verbindet, das
in Kommunikation mit dem Foreign Agent (oder dem Access Router)
steht. Ein Router, der ein mobiler Knoten ist, wird ein Mobile Router genannt.
-
Obwohl
die WLAN Datenbank Informationen bezüglich der Signalstärke des
drahtlosen Link (Verknüpfung)
zwischen der Station und den APs der WLANs in der WLAN Datenbank
bereitstellen kann, sind keine Latenzzeitinformationen bezüglich der
Kommunikation zwischen der Station und dem AP des WLAN bereitgestellt.
Außerdem
gibt es keine Informationen, die bezüglich den Kommunikations-Verknüpfungen über den
AP des WLAN hinaus bereitgestellt wären. Es wäre vorteilhaft für die Station,
auch andere Netzwerkleistungsmetriken wie etwa die Ansprechzeit
zur Verfügung
zu haben, die z.B. als Dienstgüte-(QoS;
Quality of Service)-Parameter nützlich
sind, und zwar nicht nur für
den drahtlosen Link (Verknüpfung)
zu dem AP, sondern auch für den
Link zu dem Mobility Agent (in dem Fall von Mobile IP Diensten)
oder für
den Link zu irgendeinem anderen Service Provider in dem allgemeinen
Fall.
-
Solche
Dienstgüteinformationen
sind zum Beispiel dann nützlich,
wenn die Station an Voice over IP (VoIP) oder an anderen Diensten
teilnehmen soll, bei denen solche Netzwerkleistungsmetriken wie
eine oder mehrere aus der Ansprechzeit, der Verfügbarkeit, dem Jitter (Interpaket-Verzögerungsvarianz),
der Dauer der Verbindung, dem Durchsatz und dem Paketverlust wichtig
sind.
-
Die
WO-A-01/37517 beschreibt die Art und Weise, wie ein tragbares Datenverarbeitungsgerät eines Benutzers
(PCD; portable computing device) an einem Netzwerk angeschlossen
werden kann. In einem System ist das PCD ein drahtloses Gerät, das sich
an dem Netzwerk durch einen Zugriffspunkt anschließen kann. Wenn
es angeschlossen ist, stellt das PCD dem Netzwerk verschiedene Informationen
bereit, was erlaubt, dass der geeignete Netzwerk Provider identifiziert
werden kann.
-
Die
US-A-5970544 beschreibt ein Computernetzwerk, in dem eine Anzahl
von Zugriffspunkten (die einer Anzahl von drahtlosen Benutzergeräten den
Zugriff auf das Netzwerk bereitstellen) von einem zentralen Verteiler-Controller gesteuert
werden. Das System, das in diesem Dokument beschrieben ist, befasst
sich hauptsächlich
mit der Operation des Verteiler-Controllers, um Übertragungen zu und von den
Zugriffspunkten zu planen, um Kollisionen bei Kommunikationen zwischen
den drahtlosen Stationen und den verschiedenen Zugriffspunkten zu
vermeiden. Das mobile Gerät
des Benutzers wählt
auf der Basis der Signalstärke
bei den Zugriffspunkten aus, mit welchem Zugriffspunkt es sich verbindet.
-
ZUSAMMENFASSUNG
-
Gemäß einer
ersten Ausführungsform
der Haupterfindung ist ein Verfahren in einer drahtlosen Station, die
ein drahtloses Netzwerkgerät
aufweist, vorgesehen, wobei das Gerät fähig ist, eine Link Layer (L2)
Schnittstelle zu einem drahtlosen Netzwerk bereitzustellen, wobei
das Verfahren umfasst: vor der Verbindung der Station mit einem
drahtlosen Netzwerk über
das drahtlose Netzwerkgerät,
drahtloses Empfangen von Link Layer (L2) Dateneinheiten, die von
einem oder mehreren drahtlosen Zugriffspunkten (APs; Access Points)
eines oder mehrerer drahtloser Netzwerke, mit denen die Station
drahtlos kommunizieren kann, übertragen
werden; vor der Verbindung der Station mit einem drahtlosen Netzwerk über das
drahtlose Netzwerkgerät,
Sammeln von Informationen über
die empfangenen L2 Dateneinheiten einschließlich L2 Informationen und
Netzwerk Layer (L3) Informationen; und für einen oder mehrere Zugriffspunkte
von Interesse, von denen eine oder mehrere L2 Dateneinheiten empfangen
werden, Senden von Versuchspaketen (Testpaketen) von der Station über den
Zugriffspunkt von Interesse, um eine oder mehrere Netzwerkleistungsmetriken
zu bestimmen, so dass sich die Station gemäß einem oder mehreren Auswahlkriterien
mit einem drahtlosen Netzwerk verbinden kann, wobei die Auswahlkriterien
die Netzwerkleistungsmetriken und die bei L2 gesammelten L3 Informationen
umfassen.
-
Das
Verfahren kann das Halten der gesammelten Informationen im Speicher
in der Form einer drahtlosen Netzwerkdatenbank umfassen. Die drahtlose
Netzwerkdatenbank enthält
für jedes
drahtlose Netzwerk, mit dessen Zugriffspunkt die Station drahtlos
kommunizieren kann, die gesammelten L2 Informationen und die gesammelten
L3 Informationen. In einem Ausführungsbeispiel
umfasst die drahtlose Netzwerkdatenbank für jedes drahtlose Netzwerk,
mit dessen Zugriffspunkt die Station drahtlos kommunizieren kann:
eine eindeutige Kennung (Identifizierungsmerkmal) des drahtlosen
Netzwerks; eine Angabe über
die Qualität
der Kommunikation zwischen der Station und dem AP des drahtlosen
Netzwerks; und eine oder mehrere L3 Ankündigungen von einem oder mehreren
IP-fähigen
Service Providern, die der AP des drahtlosen Netzwerks übermittelt.
-
In
einem Ausführungsbeispiel
umfasst die Angabe über
die Qualität
der Kommunikation zwischen dem AP des drahtlosen Netzwerks eine
oder mehrere Netzwerkleistungsmetriken, die durch temporäres Verbinden mit
dem AP, Senden eines oder mehrerer Versuchspakete an den AP und
Sammeln der einen oder mehreren Netzwerkleistungsmetriken erhalten
werden.
-
In
einem Ausführungsbeispiel
umfassen die eine oder mehreren Netzwerkleistungsmetriken eines oder
mehrere des Satzes von Metriken bestehend aus Ansprechzeit, Einwegverzögerung,
Jitter, Paketverluststatistiken, Data Link Switching Peer Tunnel
Leistung und eine oder mehrere Webseiten-Leistungsmetriken wie DNS Lookup, TCP
Connect und HTTP Transaktionszeit.
-
Gemäß einer
Ausführungsform
der Erfindung sind einer oder mehrere der IP-fähigen Service Provider Mobility
Agents, so dass ein L3 Prozess einen AP aus der drahtlosen Netzwerkdatenbank
zur Verbindung auswählen
kann, basierend auf einem oder mehreren davon, ob der AP in Kommunikation
mit einem Mobility Agent steht oder nicht, und der Angabe über die
Qualität
der Kommunikation.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 zeigt
in einer vereinfachten Form ein Beispiel einer Netzwerk-Topologie, in der
Ausführungsbeispiele
der vorliegenden Erfindung arbeiten können.
-
2A zeigt
ein vereinfachtes Ablaufdiagramm einer Ausführungsform der Erfindung, gemäß der eine Station
in einem Überwachungsmodus
bei L2 den gesamten L2 Netzwerkverkehr von allen APs in ihrem Funkbereich
abhört
und eine Datenbank aufbaut, die L2 Informationen, L3 Informationen
und in einem Ausführungsbeispiel
eine oder mehrere Netzwerkleistungsmetriken enthält, die unter Verwendung von
Versuchspaketen erhalten worden sind.
-
2B zeigt
ein Ausführungsbeispiel
eines Prozesses zur Aktualisierung der WLAN Datenbank, der das Senden
von Versuchspaketen umfasst, um eine oder mehrere Netzwerkleistungsmetriken
für abgelaufene oder "nicht aufwendige" Datenbankeinträge zu erhalten.
-
3A zeigt
ein vereinfachtes Blockdiagramm eines Ausführungsbeispiels einer drahtlosen
Station.
-
3B zeigt
die STA von 3A ausführlicher. Zusätzlich zu
einem herkömmlichen
Protokoll-Stack 311 umfasst die STA in ihrem Speicher eine
Datenbank, die die "WLAN
Datenbank" genannt
wird. Eine Ausführungsform der
Erfindung stellt einen Satz von Floating Interfaces zwischen dem
Protokoll-Stack,
der IP-Pakete sendet und empfängt,
und einem oder mehreren drahtlosen Netzwerken bereit, selbst wenn
eventuell noch keine Verbindung mit den drahtlosen Netzwerken besteht.
-
4 zeigt
eine STA, die ein erstes drahtloses Netzwerkgerät und ein drahtloses Netzwerkgerät in einem
RF-Überwachungsmodus
umfasst, so dass sich die STA gemäß einer Ausführungsform
der Erfindung schnell wiederverbinden bzw. neu verbinden kann.
-
5A zeigt
ein Ausführungsbeispiel
einer WLAN Datenbank, die L2 Informationen und L3 Informationen
umfasst. 5B zeigt ein anderes Ausführungsbeispiel
einer WLAN Datenbank, die auch eine oder mehrere Netzwerkleistungsmetriken
umfasst.
-
6 zeigt
ein vereinfachtes Ablaufdiagramm eines Ausführungsbeispiels eines Prozesses
gemäß einem
Ausführungsbeispiel
der Erfindung zur Verbindung mit einer Schnittstelle, die ein Floating
Interface sein kann, das in der WLAN Datenbank bereitgestellt ist.
-
7 zeigt
ein vereinfachtes Ablaufdiagramm eines Ausführungsbeispiels eines Prozesses
zur Wiederverbindung.
-
AUSFÜHRLICHE
BESCHREIBUNG
-
Eine
Ausführungsform
der Erfindung ist das Sammeln von Informationen bei einer drahtlosen
Station über
die drahtlosen Netzwerke, die die Station hören kann, bevor sich die Station
mit einem drahtlosen Netzwerk verbindet. In einem Ausführungsbeispiel
ist das drahtlose Netzwerk ein Infrastruktur-Netzwerk, das einen Zugriffspunkt umfasst.
Die gesammelten Informationen umfassen Link Layer (L2) Informationen
und Netzwerk Layer (L3) Informationen, wie zum Beispiel ob der Zugriffspunkt
der drahtlosen Station in Kommunikation mit einem Mobility Agent
wie etwa einem Foreign Agent steht oder nicht. Die gesammelten Informationen
umfassen des Weiteren eine oder mehrere Netzwerkleistungsmetriken,
wie etwa die Latenzzeit zwischen der Station und dem AP oder zwischen
der Station und einem Zielknoten in Kommunikation mit dem Zugriffspunkt.
-
Mit
Verbindung ist die Prozedur gemeint, die verwendet wird, um ein
Binding zwischen einem Zugriffspunkt eines drahtlosen Infrastruktur-Netzwerks und
einer Station zu errichten, um die Station zu einem Teil des drahtlosen
Netzwerks zu machen, das von dem AP verwaltet wird.
-
Das
Sammeln von Informationen stellt für einen Prozess – z.B. einen
L3 Prozess an der Station – ein oder
mehrere Auswahlkriterien für
das Auswählen,
mit welchem WLAN sich die Station verbinden soll, bereit.
-
Eine
weitere Ausführungsform
der Erfindung ist das Bereitstellen an einem Zugriffspunkt eines
drahtlosen Netzwerks eines Responders für Versuchspakete, die von einer
drahtlosen Station gesendet werden, um eine oder mehrere Netzwerkleistungsmetriken
zu bestimmen, so dass die Station auswählen kann, mit welchem WLAN
sie sich verbinden soll, indem sie Versuchspakete zu dem AP sendet.
Der Responder des Zugriffspunkts antwortet auf die Versuchspakete,
um die Station mit einer oder mehreren Netzwerkleistungsmetriken
zwischen der Station und dem Zugangspunkt zu versorgen.
-
1 zeigt
eine Netzwerkkonfiguration, in der Ausführungsbeispiele der Erfindung
arbeiten können. Ein
Netzwerk 101 steht in Kommunikation mit einem Zugriffspunkt 103 (AP1)
eines ersten drahtlosen lokalen Infrastruktur-Netzwerks (WLAN). Das Netzwerk 101 kann
ein Verbundnetzwerk sein, d.h., ein Netzwerk von Netzwerken, und
kann privat oder öffentlich
sein. Ein Beispiel eines Netzwerks 101, das öffentlich
ist und ein Verbundnetzwerk ist, ist das Netzwerk 101,
das das Internet ist. Der AP1 steht über das Netzwerk 101 z.
B. in Kommunikation mit einem Mobile IP Foreign Agent 105,
mit einem Mobile IP Home Agent 107, mit einem Access Router 115 und
auch mit einem Server 117, der einige Dienste (Dienst X
genannt) bereitstellt. Der Foreign Agent stellt Mobile IP Dienste
unter IPv4 bereit und sendet periodisch Foreign Agent Ankündigungen.
Der Access Router stellt Mobile IP Dienste unter IPv6 bereit und
sendet periodisch Router Ankündigungen.
Es sei angemerkt, dass im Mobile IP für IPv4 der Foreign Agent eine
c/o-Adresse für
einen mobilen Knoten bereitstellt, während im Mobile IPv6 kein Foreign
Agent verwendet wird. Die IP-Pakete selber umfassen die c/o-Adresse,
so dass alles, was für
Mobile IP unter IPv6 benötigt
wird, die Kommunikation zu einem Access Router ist, der in der Lage
ist, Pakete zu der Heimatadresse des Mobile IP Knotens zu routen.
-
Eine
drahtlose Station STA 111 wird als ein mobiler Knoten agieren,
indem sie sich mit einem Zugriffspunkt eines drahtlosen Netzwerks
verbindet, der in Kommunikation mit einem Foreign Agent steht. Die
drahtlose Station kann drahtlos innerhalb eines Bereichs kommunizieren,
der als 113 gezeigt ist. Somit ist die STA 111 in
der Lage, mit dem Zugriffspunkt AP1 103 und mit einem zweiten
Zugriffspunkt 109 eines zweiten drahtlosen Infrastruktur-Netzwerks zu kommunizieren.
In dem Beispiel von 1 steht der AP2 109 nicht
in Kommunikation mit dem Foreign Agent 105, dem Access
Router 115, dem Home Agent 107 oder dem Server 117.
-
In
einem Ausführungsbeispiel
arbeiten das erste WLAN und das zweite WLAN gemäß einem der IEEE 802.11 Standards
für WLANs.
Gemäß diesem
Standard rundsendet ein Zugriffspunkt wie der AP1 oder AP2 jeweils
einen Beacon-Signal-Frame von Zeit zu Zeit in der Form eines Beacon
MAC (L2), der Informationen bereitstellt, die von den Stationen
zur Errichtung und Aufrechterhaltung einer Verbindung mit dem AP
benötigt werden.
Der Beacon enthält
eine eindeutige Kennung des WLAN (und des AP des WLAN), genannt
die Service Set Kennung (SSID; Service Set Identifier). Der Beacon
enthält
auch andere Informationen, wie etwa Informationen über die
Datenraten, die von dem AP unterstützt werden.
-
Vor
der Verbindung mit einem WLAN kann eine Station, wie zum Beispiel
die STA 111, in einen Modus gesetzt werden, der RF-Überwachungsmodus genannt wird,
während
dem die Station alle MAC-Frame-Typen (Steuerung,
Verwaltung und Daten) ungeachtet des AP abhört, von dem die Frames stammen
oder zu dem sie gehören.
Der Zweck dieses Modus liegt vor allem darin, eine drahtlose Station
in die Lage zu versetzen, ein "Scannen" bezüglich Rundsendungen
von den APs durchzuführen,
z.B. die Rundsendung von Beacons, um einen AP mit einer ausreichend
guten Signalstärke
zu lokalisieren, mit sie sich verbinden kann. Dieser Prozess des
Achtens auf Beacons wird in dem IEEE 802.11 Standard "passives Scannen" genannt.
-
In
einem normalen IEEE 802.11 Scan-Vorgang stellt das drahtlose Netzwerkgerät einer
drahtlosen Station die L2 Informationen von allen APs, die sie hören kann,
zusammen mit der Signalstärke
bereit, um Zugriffspunkte zu vergleichen und darüber zu entscheiden, mit welchem
sie sich verbinden wird. Ein drahtloses Netzwerkgerät im RF-Überwachungsmodus
kann von mehr als einem AP empfangen, aber kann keine Informationen übertragen.
Andere IEEE 802.11 Modi umfassen einen Sende-Empfangs-Modus, der
auch Stationsmodus genannt wird.
-
Ohne
den Nutzen der vorliegenden Erfindung wird eine STA, wie etwa die
STA 111, in dem RF-Überwachungsmodus
Beacons von allen APs empfangen, die sie hören kann, in diesem Fall sowohl
von dem AP1 als auch dem AP2. Die STA wird sich mit dem ersten AP
verbinden, dessen Signalstärke
gut genug ist. Es kann sein, dass die Signalstärken von Beacons von dem AP2
stärker
als diejenigen von Beacons von dem AP1 sind. In einem solchen Fall
wird sich die Station 111 mit dem WLAN des AP2 verbinden
und wird somit nicht in Kommunikation mit dem Foreign Agent 105,
dem Access Router 115, dem Home Agent 107 oder
dem Server 117 stehen.
-
Es
ist für
die Station 111 erwünscht,
dass sie sich vorzugsweise mit einem WLAN nicht nur auf der Basis
von L2 Informationen wie etwa Signalstärke verbindet, sondern auch
auf der Basis von zusätzlichen
Informationen, wie etwa die Funkverbindung, die gute Netzwerkleistungsmetriken
aufweist, z.B. eine niedrige Latenzzeit, oder wie etwa das Wissen,
dass der AP in Kommunikation mit bestimmten Typen von Diensten steht,
wie etwa mit einem Foreign Agent, so dass die Station ein mobiler
Knoten unter Mobile IP sein kann. Solche Informationen sind für eine Station
vor der Verbindung der Station mit einem WLAN normalerweise nicht
verfügbar.
-
Während eine
Netzwerkkonfiguration, wie sie in 1 gezeigt
ist, Stand der Technik ist, ist die Konfiguration von 1 dann,
wenn die Station und/oder die Zugriffspunkte Ausführungsformen
der vorliegenden Erfindung umfassen, kein Stand der Technik.
-
3A zeigt
ein vereinfachtes Blockdiagramm eines Ausführungsbeispiels einer drahtlosen
Station 111, die ein drahtloses Netzwerkgerät 303 umfasst,
das einen drahtlosen Transceiver umfasst, und die IEEE 802.11 MAC
Frames zu/von einem Protokoll-Stack in einem Host-Prozessor 307 bereitstellt
und akzeptiert. Wenn die STA 111 mit einem AP eines WLAN
verbunden ist, stellt das drahtlose Netzwerkgerät 303 eine (tatsächliche)
bidirektionale Schnittstelle zu dem WLAN bereit, d.h., einen Verbindungspunkt
zu dem AP bei der Station 111. Der Prozessor 307 der
drahtlosen Station umfasst einen Speicher 305, der einen
flüchtigen
und einen nichtflüchtigen
Speicher umfassen kann. Die Ausführungsbeispiele
der Prozesse, die hier beschrieben werden, arbeiten mit dem Prozessor
und verwenden den Speicher. Einige Ausführungsbeispiele der Erfindung liegen
in der Form eines Trägermediums
vor, das ein oder mehrere computerlesbare Codesegmente trägt, die den
Prozessor instruieren, einen oder mehrere der Prozesse, d.h., der
Verfahren, die hier beschrieben sind, zu implementieren. Das Trägermedium
ist in einem Ausführungsbeispiel
im Speicher 305 und gezeigt in 3A als
der Satz von Codesegmenten 301. Die Fachleute auf diesem
Gebiet werden verstehen, dass das Trägermedium in unterschiedlichen
Formen bereitgestellt werden kann, z.B. auf magnetischen oder optischen Medien.
Somit bildet das Trägermedium
ein Software-Produkt.
-
Sammeln von
Informationen vor der Verbindung mit einem AP
-
Ein
Ausführungsbeispiel
der Erfindung umfasst die drahtlose Station 111 in einem
Modus, der RF-Überwachungsmodus
genannt wird, der alle Frames überprüft, die
die Station hören
kann, die Beacons untersucht, die die SSID des AP enthalten, eine
Messung der Signalstärke
aus der PHY Sublayer extrahiert, in einem Ausführungsbeispiel in der Form
des RSSI (Received Signal Strength Indicator), und eine Liste der verfügbaren APs
aufbaut. In einem Ausführungsbeispiel
wird dieses Überprüfen als
ein Modul des Protokoll-Stack, das für das drahtlose Netzwerkgerät arbeitet,
und in einem anderen Ausführungsbeispiel
durch ein Computerprogramm auf Benutzerebene implementiert. Das
Programm greift auf den Protokoll-Stack zu und konfiguriert diesen über eine
Befehlszeilenschnittstelle (CLI; command line interface). In einem
Ausführungsbeispiel
arbeitet die Station zum Beispiel unter einem vernetzten Betriebssystem
(networked operating system). Das vernetzte Betriebssystem ist das
Cisco Internetworking Operating System (IOS®) (Cisco
Systems, Inc., San Jose, Kalifornien). Das IOS stellt eine Befehlszeilenschnittstelle
(CLI) für
die Durchführung
vieler Netzwerkmanagementfunktionen bereit.
-
Das
Programm oder Modul arbeitet hauptsächlich bei L2. Zum Beispiel
in dem Fall, wenn der Prozess Teil der L2 Lager des Stack bildet,
liest der Prozess L3 Pakete in den L2 Frames und kann die L3 Inhalte
von MAC Level Rundsendungen, wie etwa IP IRDP Pakete, die verwendet
werden, um einen Foreign Agent anzukündigen, zu der L3 Layer weiterleiten.
Eine Ausführungsform
der Erfindung umfasst, dass die Station Versuchspakete sendet, um
eine oder mehrere Netzwerkleistungsstatistiken zu erhalten. Für diese
Ausführungsform
verbindet sich die Station temporär mit einem AP vor dem Senden
der Versuchspakete und kehrt dann zu dem RF-Überwachungsmodus zurück, d.h.,
sie löst
die Verbindung auf.
-
Somit
ist ein Ausführungsbeispiel
der Erfindung ein Verfahren für
eine Station zur Identifizierung und Sammlung von Informationen über die
APs, die ihr drahtloses Netzwerkgerät in dem WLAN hören kann,
bevor sie sich mit einem AP verbindet. In einem Ausführungsbeispiel
stehen die Informationen jedem Prozess an der Station, z.B. L3 an
der Station, zur Verfügung.
In einem Ausführungsbeispiel
umfassen die Informationen IP Mobilitätsinformationen, z.B. ob der
AP eine Mobility Agent Ankündigung
sendet. In einem Ausführungsbeispiel
umfassen die Informationen des Weiteren eine oder mehrere Netzwerkleistungsstatistiken.
In einem Ausführungsbeispiel
werden die Informationen dazu verwendet, einen Satz von einem oder
mehreren Floating Interfaces zu verfügbaren WLANs in der Form von
APs für
die Verbindung aufzubauen. Ein L3 Prozess kann dann aus den verfügbaren APs
unter Verwendung von einem oder mehreren Kriterien auswählen. Zum
Beispiel kann der L3 Prozess dann einen AP auswählen, der in Kommunikation
mit einem oder mehreren Mobility Agents oder einem AP steht, der
einige Netzwerkleistungsmetriken, z.B. eine Latenzzeit, die gering
genug ist, oder eine Kombination aus diesen Kriterien erfüllt.
-
2A zeigt
ein vereinfachtes Ablaufdiagramm eines L2 Prozesses 200,
der in einem Ausführungsbeispiel
mit dem Prozessor 307 arbeitet. Gemäß einer Ausführungsform
der Erfindung umfasst der Prozess 200, dass die Station
in dem RF-Überwachungsmodus
den gesamten Netzwerkverkehr von allen APs in ihrem Funkbereich
abhört,
um AP-Informationen einschließlich
Mobility Agent Informationen zu sammeln. Es wird angenommen, dass
die Station nicht mit einem AP verbunden ist. In einem Schritt 201 bewirkt
ein gerätespezifischer
Befehl von dem Programm oder dem Modul dann, wenn sich die Station
nicht in dem Überwachungsmodus
befindet, dass die Station das drahtlose Netzwerkgerät 303 in
den RF-Überwachungsmodus
versetzt. Der Zustand 203 ist ein Wartezustand, der auf
ein Ereignis wie etwa die Ankunft eines neuen Link Lager (MAC) Frame
wartet, der an dem drahtlosen Netzwerkgerät 303 ankommt. In
einem Schritt 207 wird festgestellt, ob das Ereignis in
der Tat ein MAC Frame ist, der ankommt. Falls nicht, und in einem
Ausführungsbeispiel
dann, wenn ein Ereignis-Timer nicht abgelaufen ist (209),
bleibt der Prozess weiterhin in dem Wartezustand 203, bis ein
Ereignis auftritt.
-
Falls
das Ereignis ein neuer Frame ist, der ankommt, wird der neue MAC
Frame, der ankommt, bei L2 in einem Schritt 211 gelesen.
-
In
jedem MAC Frame sind zusätzliche
Informationen enthalten, wie zum Beispiel die SSID des WLAN, d.h.,
die Kennung des AP, von dem das Paket stammt. Ebenfalls bereitgestellt,
zum Beispiel von dem drahtlosen Netzwerkgerät als zusätzliche Information, ist eine
Angabe über
die Qualität
des drahtlosen Signals zu dem Zeitpunkt, an dem der MAC Frame empfangen
wurde. Die L2 Frames können
außerdem
darin eingekapselte L3 Informationen aufweisen, z.B. in der Form
von IP-Paketen. Zum Beispiel kann das IP-Paket eine Mobility Agent
Ankündigung
enthalten, wie etwa eine Foreign Agent Ankündigung oder eine Home Agent
Ankündigung.
-
In
einem Ausführungsbeispiel
der Erfindung werden Informationen über den AP, der das empfangene L2
Paket gesendet hat, als eine Aufzeichnung in einer Datenstruktur
gespeichert, die in dem Speicher 405 der STA gespeichert
wird und hier die "WLAN
Datenbank" genannt
wird. Die WLAN Datenbank 409 umfasst somit Informationen über die
APs, die die Station in dem RF-Überwachungsmodus
hört. Eine
STA, die einen AP hört, bedeutet,
dass das Signal an der Station, das von dem AP empfangen wurde,
von einer ausreichenden Stärke für den AP
und die STA ist, damit diese drahtlos kommunizieren können.
-
Ein
Ausführungsbeispiel
einer WLAN Datenbank ist in Form eines Diagramms in 5A als
eine Tabelle 501 gezeigt. Ein anderes Tabellen-Ausführungsbeispiel 511 ist
in 5B gezeigt. Jede Aufzeichnung in der WLAN Datenbank
(501 und 511) umfasst einen Satz von Feldern an
Informationen über
einen AP, von dem ein L2 Frame empfangen worden ist. In einem Ausführungsbeispiel
umfasst die Information in der Aufzeichnung eine Ken nung des WLAN,
von dem der Frame empfangen wurde, in der Form der SSID (jeweils 503, 513 in
den WLAN Datenbanken 501, 511). Jede der WLAN
Datenbanken 501 und 511 zeigt eine gewisse Anzahl N
an Einträgen
mit SSIDs, die als SSID-1, SSID-2, ..., SSID-N bezeichnet werden.
Jeder Eintrag umfasst L2 Informationen (jeweils 505, 515 in
den WLAN Datenbanken 501, 511), wie etwa die Signalstärke. Wie
in der Haupterfindung beschrieben ist, kann jeder Eintrag auch L3
Informationen (jeweils 507, 517 in den WLAN Datenbanken 501, 511)
umfassen, die normalerweise bis zu dem Zeitpunkt, nachdem sich die
Station mit dem AP verbunden hat, nicht zur Verfügung stehen würden. Die
L3 Informationen umfassen Informationen bezüglich der Mobility Agents und/oder
der Access Routers (ARs) und/oder anderen Service Providern, mit
denen das WLAN in Kommunikation steht (siehe unten). In einem Ausführungsbeispiel
sind solche anderen Service Provider IP-fähig. In einem Ausführungsbeispiel
umfasst jede Aufzeichnung der WLAN Datenbank jegliche(s) IP-Paket(e) aus dem/den
empfangenen L2 Frame(s) und einen Zeitstempel von dem Zeitpunkt,
an dem jeder Frame von dem AP des WLAN empfangen wurde. In einem
Ausführungsbeispiel
umfasst jede Aufzeichnung auch eine Angabe jeder Mobilitätsinformation,
die in irgendeinem IP-Paket in dem empfangenen L2 Frame enthalten
ist, z.B. eine Mobility Ankündigung
von einem Mobility Agent.
-
Das
Ausführungsbeispiel
der WLAN Datenbank 511 von 5B umfasst
des Weiteren für
jeden Eintrag eine oder mehrere Netzwerkleistungsmetriken, die erhalten
werden, indem ein oder mehrere Versuchspakete gesendet werden (siehe
unten).
-
In
einem Ausführungsbeispiel
umfasst jede Aufzeichnung in der WLAN Datenbank auch ein Flag-Feld, das
dann, wenn es gesetzt ist, anzeigt, dass die Aufzeichnung die Aufzeichnung
der jüngst
verwendeten Verbindung (MRUA; Most-Recently-Used-Association) ist.
Die MRUA enthält
immer die Aufzeichnung für
den AP, der für
die allerjüngste
Verbindung oder Wiederverbindung verwendet wurde. Die MRUA-Aufzeichnung
wird niemals aus der WLAN Datenbank entfernt, um zum Beispiel Platz
für weitere
Aufzeichnungen zu schaffen.
-
In
einem alternativen Ausführungsbeispiel
umfasst die WLAN Datenbank ein Feld, das die N letzten Verbindungen
mit APs anzeigt, die drahtlos Mobilitätsinformationen von den unterschiedlichen
Mobility Agents übertragen
haben.
-
Die
WLAN Datenbank kann nach einem oder mehreren Feldern, die den Zeitstempel
und einen oder mehrere der Header in dem gespeicherten L2 Frame
umfassen, durchsucht und angeordnet werden.
-
Jede
Aufzeichnung in der WLAN Datenbank stellt somit ein Floating Interface
zu dem WLAN über
einen der APs bereit, den die Station hören kann. Verbunden mit jedem
Floating Interface ist das WLAN und das drahtlose Netzwerkgerät der Station,
das die Schnittstelle verwenden kann, um eine tatsächliche
Schnittstelle zu dem WLAN herzustellen. Das Floating Interface kann
der Netzwerk Layer (L3) an der Station bereitgestellt werden, als
ob es eine tatsächliche
Schnittstelle zu einem WLAN wäre,
selbst wenn es vielleicht keine Verbindung zu diesem WLAN gibt.
-
In
einem Ausführungsbeispiel
umfasst jede Aufzeichnung eine Angabe über den Zustand des Floating Interface
aus den Zuständen,
die unten in Tabelle 1 gezeigt sind. Tabelle
1
-
4B zeigt eine STA, die zusätzlich zu
einem herkömmlichen
Protokoll-Stack eine WLAN Datenbank umfasst, die einen Satz von
Floating Interfaces 409 der WLANs bereitstellt, die ein
drahtloses Netzwerkgerät 403 hören kann.
Die Floating Interfaces werden der Netzwerk Layer 411 des
Protokoll-Stacks
bereitgestellt.
-
In
einem Ausführungsbeispiel
umfasst der Speicher 405 der STA einen flüchtigen
Speicher und die WLAN Datenbank befindet sich in dem flüchtigen
Speicher, z.B. einem DRAM. In einem anderen Ausführungsbeispiel umfasst der
Speicher 405 der STA einen nichtflüchtigen Speicher, z.B. ein
SRAM, und die WLAN Datenbank befindet sich in dem nichtflüchtigen
Speicher. In einem Ausführungsbeispiel
kann auf die WLAN Datenbank von anderen Prozessen, die in der STA
arbeiten, oder von anderen Prozessen in anderen Prozessoren in dem
Netzwerk zugegriffen werden.
-
Ein
Ausführungsbeispiel
der Station umfasst mehr als ein drahtloses Gerät (oder ein Gerät mit mehreren
Kanälen,
die simultan Schnittstellen zu verschiedenen WLANs bereitstellen
können),
die jeweils zu einer Verbindung mit einem WLAN in der Lage sind,
so dass jedes fähig
ist, eine Schnittstelle zu einem WLAN bereitzustellen. In einem
solchen Ausführungsbeispiel
umfasst jede Aufzeichnung in der WLAN Datenbank des Weiteren eine
Kennung des drahtlosen Geräts,
das die tatsächliche
Schnittstelle nach der Verbindung mit dem WLAN des Floating Interface
bereitstellen würde,
und Informationen über
eine oder mehrere Leistungsfähigkeiten
der tatsächlichen
Schnittstelle zu dem WLAN, wie etwa die Geschwindigkeit, eine oder
mehrere Netzwerkleistungsmetriken, und so weiter.
-
In
dem Ausführungsbeispiel,
das dem Ablaufdiagramm von 2A entspricht,
umfasst die WLAN Datenbank Aufzeichnungen, d.h., stellt Floating
Interfaces für
die APs bereit, die die Station hören kann, egal ob der AP ein
oder mehrere L2 Frames sendet oder nicht, die Mobility Agent Informationen
enthalten. In einem alternativen Ausführungsbeispiel (nicht in 2A gezeigt)
enthält
die WLAN Datenbank Aufzeichnungen nur für die APs, die die Station
hören kann
und die Mobility Agent Informationen übertragen haben. In einem solchen
alternativen Ausführungsbeispiel
kehrt der Ablauf zurück
zu 203, um einen anderen L2 Frame anzunehmen, wenn bei
der Prüfung
herausgefunden wird, dass der L2 Frame kein IP-Paket von einem Mobility
Agent enthält.
-
Nun
wird zurück
zu 2A gegangen. In einem Schritt 213 wird
festgestellt, ob der gelesene MAC Frame ein Beacon ist oder nicht.
Wenn er ein Beacon ist, wird die WLAN Datenbank in einem Schritt 217 aktualisiert.
Wenn kein Eintrag für
das WLAN mit der SSID in dem Beacon enthalten ist, wird ein neuer
Eintrag geschaffen. Wenn bereits ein Eintrag existiert, wird der
Eintrag zum Beispiel mit der Signalstärkeninformation aktualisiert.
-
In
einem Schritt 219 wird festgestellt, ob der Eintrag eine
neue SSID ist. Wenn nicht, kehrt der Prozess zurück zu dem Wartezustand 203,
um auf ein anderes Ereignis zu warten.
-
Ohne
den Nutzen der vorliegenden Erfindung würde sich die Link Layer vor
der Verbindung der Station, z.B. während diese in dem RF-Überwachungsmodus ist, nicht
mit irgendeiner eingekapselten L3 Information, wie etwa einer Mobile
IP Information, oder mit irgendwelchen tatsächlichen Netzwerkleistungsmetriken befassen.
-
In
einer Ausführungsform
der Erfindung verbindet sich die Station temporär mit dem AP des WLAN und sendet
ein oder mehrere Versuchspakete, um eine oder mehrere Netzwerkleistungsmetriken
zu bestimmen.
-
Somit
verbindet sich die STA mit dem WLAN in einem Schritt 221,
wenn im Schritt 219 festgestellt wird, dass der Beacon
von einem neuen WLAN stammt. Ein Schritt 223 prüft, ob die
Verbindung tatsächlich
erfolgreich war. Wenn nicht, dann wird in einem Schritt 227 das
Floating Interface zu diesem WLAN als "Schnittstelle eingeschaltet, Protokoll
ausgeschaltet" gekennzeichnet,
um anzuzeigen, dass mit dem AP des WLAN keine Verbindung eingerichtet
werden kann. Der Prozess kehrt dann zurück zu dem Wartezustand 213,
um auf ein anderes Ereignis zu warten.
-
Wenn
sich die Station erfolgreich mit dem AP des WLAN verbindet, sendet
die Station in einem Schritt 225 ein oder mehrere Versuchspakete,
um eine oder mehrere Netzwerkleistungsstatistiken zu bestimmen.
In einem Aus führungsbeispiel
der Erfindung arbeitet die Station unter IOS (Cisco Systems, Inc.,
San Jose, Kalifornien). Die eine oder mehreren Netzwerkleistungsmetriken
werden unter Verwendung des Cisco Service Assurance Agent (SAA)
(Cisco Systems, Inc., San Jose, Kalifornien), der frührer als
der Cisco Response Time Reporter (RTR) bekannt war, erhalten. Der
SAA ist ein anwendungssensitiver Agent, der die Netzwerkleistung überwacht,
indem er die Netzwerkleistungsmetriken, einschließlich eines
oder mehrere aus Ansprechzeit, Verfügbarkeit, Jitter (Interpaketverzögerungsvarianz),
Verbindungsdauer, Durchsatz und Paketverlust misst. Der SAA erhält solche
Metriken, indem er ein oder mehrere Versuchspakete sendet. In einem
Ausführungsbeispiel arbeitet
der SAA unter einem vernetzten Betriebssystem, wie etwa dem Cisco
Internetworking Operating System (IOS®) (Cisco
Systems, Inc., San Jose, Kalifornien). Das IOS stellt eine Befehlszeilenschnittstelle
(CLI; command line interface) zur Durchführung vieler Netzwerkmanagementfunktionen
bereit. Der SAA umfasst die Unterstützung für Voice over IP (VoIP), Dienstgüte (QoS)
und das World Wide Web (WWW). Der SAA ist verfügbar für alle Plattformen, die mit
IOS Release 12.0(5)T oder später
laufen. Er kann über
die CLI benutzt werden, wenn die Cisco Response Time Monitoring
(RTTMON) MIB für
einen Router zur Verfügung
steht. Auf den SAA kann auch unter Verwendung von SNMP zugegriffen
werden.
-
Es
sei angemerkt, dass, obwohl die hier beschriebenen Ausführungsbeispiele
SAA verwenden, die Erfindung nicht von SAA oder RTR abhängt oder
diese erfordert. Andere Ausführungsbeispiele
verwenden andere Tools, um das eine oder die mehreren Versuchspakete
für eine
oder mehrere Netzwerkleistungsmetriken zu senden.
-
Für die Beschreibungen
von unterschiedlichen Netzwerkleistungsmetriken, die unterschiedliche
Ausführungsbeispiele
der Erfindung sammeln, siehe weiter unten.
-
Somit
sendet die Station in einem Ausführungsbeispiel,
nachdem sich die Station temporär
mit einem AP in dem Schritt 221 verbindet, ein oder mehrere
Versuchspakete über
den AP. In einem Ausführungsbeispiel der
Erfindung umfasst der AP einen Test-Responder (probe responder),
der bestimmte Versuchspakete erkennt und auf der Funkverknüpfung zu
der Station, die jedes Versuchspaket sendet, antwortet, selbst wenn der
AP noch nicht "richtig" mit der Station
verbunden ist, sondern nur temporär nur zu dem Zweck verbunden ist,
dass der AP Versuchspakete annimmt. Es sei angemerkt, dass normalerweise,
wenn ein AP Pakete empfängt,
die von einem damit verbundenen mobilen Knoten stammen, der AP die
Pakete je nach Bedarf weiterleitet. Wenn der AP einen Test-Responder
umfasst, antwortet der AP auf die erkannten bestimmten Versuchspakete.
In einem Ausführungsbeispiel
ist der Test-Responder der SAA Responder von Cisco (Cisco Systems, Inc.,
San Jose, Kalifornien).
-
In
einem Ausführungsbeispiel
der Erfindung sind die Versuchspakete auf eine Ziel-IP-Adresse abgezielt,
z.B. die Adresse eines Foreign Agent, eines Access Router, oder
irgendeines anderen Netzwerkknotens, der unter Verwendung von IP
kommuniziert, und der gewisse Dienste bereitstellt, z.B. den Dienst
X.
-
Der
Schritt 225 sammelt somit eine oder mehrere Leistungsmetriken,
entweder zu dem AP oder zu einen IP-fähigen Service Provider. Wenn
es zum Beispiel aus den L3 Informationen in der WLAN Datenbank bekannt
ist, dass der AP in Kommunikation mit einem Foreign Agent steht,
können
die Netzwerkleistungsmetriken zwischen der Station und dem Foreign
Agent über
den AP des WLAN sein.
-
In
einem Ausführungsbeispiel
umfassen die gesammelten Netzwerkleistungsmetriken eine oder mehrere
Metriken zwischen der Station und einem als Ziel dienenden IP-fähigen Service
Provider, die für
den Service Provider, der als Ziel dient, spezifisch sind. In dem
Fall, dass der Service Provider, der das Ziel bildet, ein Mobility
Agent ist, z.B. ein Foreign Agent, können die eine oder mehreren
Metriken Mobility Agent-spezifische Informationen wie etwa die Anzahl
an Endpunkten, die mit dem Agenten registriert sind, die Anzahl
an Tunneln, die der Mobility Agent unterstützt, und so weiter umfassen.
-
Der
Schritt 225 umfasst des Weiteren das Aktualisieren der
WLAN Datenbank mit den Leistungsmetrikinformationen. In einem Ausführungsbeispiel
umfasst die Einfügung
der Leistungsmetrikinformationen das Anordnen – z.B. das Sortieren – der Aufzeichnungen
gemäß einem
oder mehreren Anordnungskriterien. In einem Ausführungsbeispiel liegt der Zweck
des Anordnens darin, die Informationen für L3 in einer gewünschten Reihenfolge
bereitzustellen, so dass L3 automatisch ein Floating Interface für die Verbindung
gemäß einem oder
mehreren Auswahlkriterien auswählt.
In einem solchen Fall mappen die Anordnungskriterien zu den Auswahlkriterien.
In einem Ausführungsbeispiel
umfassen die Anordnungskriterien (und/oder die Schnittstellenauswahlkriterien)
das Anordnen (und/oder Auswählen)
gemäß einer
oder mehreren anwendungsbezogenen Erfordernissen. Zum Beispiel kann
eine Anwendung einen Satz von SSIDs aufweisen, den sie aus einem
oder mehreren Gründen
bevorzugt, wie etwa: Sicherheitscharakteristiken der WLANs, Dienstgüte, die
jedes WLAN bereitstellt, Zugriffskosten, und so weiter.
-
In
einem Ausführungsbeispiel
umfassen die Anordnungskriterien (und/oder Schnittstellenauswahlkriterien)
das Anordnen (und/oder Auswählen)
gemäß einem
oder mehreren Dienstgüteparametern,
wie etwa die benötigte
Dienstgüte.
Die Dienstgüteerfordernisse
wiederum können
zu einer oder mehreren der gesammelten Netzwerkleistungsmetriken
in Bezug stehen.
-
Eine
Ausführungsform
der Erfindung ist, dass die Anordnungskriterien (und/oder Schnittstellenauswahlkriterien)
L3 Informationen umfassen, wie zum Beispiel, welche Mobility Agent
Informationen enthalten sind. In einem Ausführungsbeispiel, das des Weiteren
mehr als ein drahtloses Gerät
umfasst, umfassen die Anordnungskriterien (und/oder Schnittstellenauswahlkriterien)
die Leistungsfähigkeiten
der physikalischen Schnittstelle zu dem WLAN, wie etwa die Geschwindigkeit,
Netzwerkleistungsmetriken und so weiter.
-
Somit
wird in einem Ausführungsbeispiel
den Aufzeichnungen, die eine Mobility Agent Ankündigung enthalten, der Vorrang
gegeben. In einem Ausführungsbeispiel
umfassen die Anordnungskriterien die Anordnung gemäß einer
oder mehreren Netzwerkleistungsmetriken. Ein Ausführungsbeispiel
ordnet gemäß einer Kombination
aus mehr als einer Sorte von Anordnungskriterien an, wie etwa dass
es denjenigen Aufzeichnungen den Vorrang gibt, die Mobility Agent
Informationen enthalten, und des Weiteren solche priorisierten Aufzeichnungen,
d.h., auf die Mobility Agent bezogenen Aufzeichnungen, gemäß einer
oder mehreren Netzwerkleistungsmetriken anordnet.
-
Ein
Ausführungsbeispiel
des Schrittes 225 des Aktualisierens der WLAN Datenbank
umfasst das Verwerfen derjenigen Aufzeichnungen, die ein oder mehrere
Annahmekriterien nicht erfüllen.
In einem Ausführungsbeispiel
umfassen die Annahmekriterien eine oder mehrere Netzwerkleistungskriterien,
die ein vordefiniertes Niveau an Qualität erfüllen oder überschreiten. In einem anderen
Ausführungsbeispiel,
in dem der Mobility Agent ein Foreign Agent ist, umfassen die Annahmekriterien
nur das Annehmen von IP-Paketen, die von Foreign Agent Ankündigungen
stammen, die anzeigen, dass der Foreign Agent nicht "beschäftigt" ist, d.h., dass
der Foreign Agent Registrierungen annimmt.
-
Wenn
beim Schritt 213 festgestellt wird, dass der MAC Frame
kein Beacon ist, dann wird der Prozess in einem Schritt 215 in
den MAC Frame hinein schauen, um festzustellen, ob der MAC eine
Mobility Agent Ankündigung
enthält
oder nicht. Wenn nicht, dann kehrt der Prozess zurück zu dem
Wartezustand 203, um auf ein anderes Ereignis zu warten,
wie etwa einen neuen MAC Frame, der an der Station 111 ankommt.
-
Wenn
festgestellt wird, dass ein empfangener MAC Frame Mobility Agent
Informationen enthält,
wird die WLAN Datenbank mit dieser Information aktualisiert (Schritt 231).
In einem Ausführungsbeispiel
umfasst das Einfügen
der neuen L3 Informationen in dem Schritt 231 das Anordnen – z.B. das
Sortieren – der
Aufzeichnungen gemäß einem
oder mehreren Anordnungskriterien. In einem Ausführungsbeispiel liegt der Zweck
des Anordnens darin, die Informationen für L3 in einer gewünschten
Reihenfolge zu präsentieren,
so dass L3 automatisch ein Floating Interface für die Verbindung gemäß einem
oder mehreren Auswahlkriterien auswählt. In einem solchen Fall
mappen die Anordnungskriterien zu den Auswahlkriterien. In einem
Ausführungsbeispiel umfassen
die Anordnungskriterien (und/oder Schnittstellenauswahlkriterien)
das Anordnen (und/oder Auswählen)
gemäß einer
oder mehreren anwendungsbezogenen Erfordernissen. Zum Beispiel kann
eine Anwendung einen Satz von SSIDs aufweisen, den sie aus einem
oder mehreren Gründen
bevorzugt, wie etwa: Sicherheitscharakteristiken der WLANs, Dienstgüte, die
jedes WLAN bereitstellt, Zugriffskosten, und so weiter.
-
In
einem Ausführungsbeispiel
umfassen die Anordnungskriterien (und/oder Schnittstellenauswahlkriterien)
das Anordnen (und/oder Auswählen)
ge mäß einem
oder mehreren Dienstgüteparametern,
wie etwa die benötigte
Dienstgüte.
Eine Ausführungsform
der vorliegenden Erfindung ist, dass die Anordnungskriterien (und/oder
Schnittstellenauswahlkriterien) L3 Informationen umfassen, wie etwa
welche Mobility Agent Informationen enthalten sind. In einem Ausführungsbeispiel,
das des Weiteren mehr als ein drahtloses Gerät umfasst, umfassen die Anordnungskriterien
(und/oder Schnittstellenauswahlkriterien) die Leistungsfähigkeiten
der physikalischen Schnittstelle zu dem WLAN, wie etwa Geschwindigkeit,
eine oder mehrere Leistungsmetriken, und so weiter.
-
Somit
wird in einem Ausführungsbeispiel
den Aufzeichnungen, die eine Mobility Agent Ankündigung enthalten, der Vorrang
gegeben. In einem Ausführungsbeispiel
umfassen die Anordnungskriterien das Anordnen gemäß den gesammelten
Netzwerkleistungsmetriken, und wenn keine zur Verfügung stehen,
gemäß der empfangenen
Signalqualität.
Ein Ausführungsbeispiel
ordnet gemäß einer
Kombination aus mehr als einem Satz von Anordnungskriterien, wie
etwa dass es denjenigen Aufzeichnungen den Vorrang gibt, die Mobility Agent
Informationen enthalten, und diese priorisierten, d.h., auf einen
Mobility Agent bezogenen Aufzeichnungen gemäß einer oder mehreren gesammelten
Netzwerkleistungsmetriken weiter ordnet.
-
Ein
Ausführungsbeispiel
des Schrittes 231 des Aktualisierens der WLAN Datenbank
umfasst das Verwerfen derjenigen Aufzeichnungen, die ein oder mehrere
Annahmekriterien nicht erfüllen.
In einem Ausführungsbeispiel
umfassen die Annahmekriterien die gesammelten Leistungsmetriken,
die ein vordefiniertes Niveau an Qualität erfüllen oder überschreiten. In einem anderen
Ausführungsbeispiel,
bei dem der Mobility Agent ein Foreign Agent ist, umfassen die Annahmekriterien
das Annehmen nur von IP-Paketen, die von Foreign Agent Ankündigungen
stammen, die anzeigen, dass der Foreign Agent nicht "beschäftigt" ist. d.h., dass der
Foreign Agent Registrierungen annimmt.
-
Nach
dem Aktualisieren mit irgendwelchen gefundenen Mobility Agent Informationen
im Schritt 231 wird der Prozess mit dem Schritt 219 fortgesetzt,
bei dem festgestellt wird, ob der MAC Frame von einer neuen SSID
stammt. Wenn ja, verbindet sich die Station temporär mit dem
AP, um ein oder mehrere Versuchspakete zu senden, um eine oder mehrere
Netzwerkleistungsmetri ken zu sammeln. Wenn er nicht von einer neuen SSID
stammt, kehrt der Prozess zurück
zu dem Wartezustand 203.
-
Wenn
in Schritt 207 festgestellt wird, dass das Ereignis kein
neuer Frame ist, der angekommen ist, wird in einem Schritt 206 festgestellt,
ob ein Ereignis-Timer
noch nicht abgelaufen ist. Wenn nicht, bleibt der Prozess weiter
bei dem Wartezustand 203 und wartet darauf, dass ein Ereignis
auftritt. Wenn der Ereignis-Timer abgelaufen ist, stoppt in einem
Ausführungsbeispiel
der Prozess. In einem anderen Ausführungsbeispiel, das unten mit
Hilfe der 2B beschrieben wird, wird die
WLAN Datenbank aktualisiert.
-
Der
Prozess von 2A stellt somit eine WLAN Datenbank
von verfügbaren
WLANs bereit, die L2 und L3 Informationen enthält. Diese Informationen stehen
zu jeder Zeit für
einen anderen Prozess, z.B. L3, zur Verfügung.
-
In
einem Ausführungsbeispiel
tritt der Prozess von 2A von Zeit zu Zeit auf, so
dass die Informationen in der WLAN Datenbank auf dem neuesten Stand
sind. In einem Ausführungsbeispiel
wird der Prozess periodisch wiederholt. Das heißt, die WLAN Datenbank wird
von Zeit zu Zeit aktualisiert, indem die Station in den RF-Überwachungsmodus
gesetzt wird und die Informationen in der WLAN Datenbank mit neuen
MAC Frames aktualisiert werden. Der Prozess von 2A stellt
somit eine WLAN Datenbank von verfügbaren WLANs bereit, die L2
und L3 Informationen umfasst. Jeder Prozess (z.B. L3) an der Station
kann Informationen aus der WLAN Datenbank zu jedem Zeitpunkt erhalten.
-
2B ist
ein Ablaufdiagramm eines Ausführungsbeispiels
zur Aktualisierung der WLAN Datenbank-Einträge mit einer oder mehreren
aktualisierten Netzwerkleistungsmetriken. In einem Ausführungsbeispiel
tritt der Prozess von 2B in dem Fall auf, dass in
Schritt 209 festgestellt wird, dass der Timer abgelaufen
ist. In einem anderen Ausführungsbeispiel
findet das Aktualisieren der Metriken periodisch statt.
-
Das
Aktualisieren findet in einer Schleife (241 bis 253)
für jede
SSID in der WLAN Datenbank 511 statt. Das Aktualisieren
umfasst einen Schritt 245 des temporären Verbindens mit dem AP des
WLAN. Ein Schritt 247 prüft, ob die Verbindung wirklich
erfolgreich war. Wenn nicht, dann wird in einem Schritt 251 das
Floating Interface zu diesem WLAN als "Schnittstelle eingeschaltet, Protokoll
ausgeschaltet" markiert,
um anzuzeigen, dass eine Verbindung mit dem AP des WLAN nicht möglich ist.
-
Wenn
sich die Station erfolgreich mit dem AP des WLAN verbindet, sendet
die Station in einem Schritt 249 ein oder mehrere Versuchspakete,
um eine oder mehrere Netzwerkleistungsstatistiken zu bestimmen,
mit denen die WLAN Datenbank-Einträge aktualisiert werden. Das
Aktualisieren umfasst in einem Ausführungsbeispiel das Anordnen
gemäß einem
oder mehreren Anordnungskriterien (siehe oben).
-
In
einem Ausführungsbeispiel
umfassen die WLAN Datenbank-Einträge einen Zeitstempel des Zeitpunkts,
an dem der Eintrag zuletzt aktualisiert worden ist. Wenn der Unterschied
zwischen dem gegenwärtigen Zeitpunkt
und dem Zeitstempel oberhalb eines einstellbaren "Ablauf"-Schwellwerts liegt,
wird der Eintrag als "abgelaufen" betrachtet. In einem
Ausführungsbeispiel
wird das Aktualisieren eines Eintrags nur dann versucht, wenn der
Eintrag abgelaufen ist.
-
Das
Erhalten der einen oder mehreren Netzwerkleistungsmetriken kann "aufwendig" im Hinblick auf die
rechnerische Komplexität
und/oder die Zeit sein, die erforderlich ist, um die Versuchspakete
zu senden, die Antworten zu erhalten und die Metrik zu berechnen.
Mit aufwendig ist gemeint, dass die rechnerische Komplexität und/oder
die Zeit, die benötigt
wird, um die Metriksammlung zu vervollständigen, einen einstellbaren "Aufwand"-Schwellwert überschreitet.
In einem Ausführungsbeispiel
wird das Aktualisieren eines Eintrags nur dann versucht, wenn ein
solches Aktualisieren nicht aufwendig ist.
-
In
einem anderen Ausführungsbeispiel,
das in 2B gezeigt ist, wird das Aktualisieren
eines Eintrags nur dann versucht, wenn der Eintrag abgelaufen ist
und das Aktualisieren nicht aufwendig ist, wie in einem Schritt 243 festgestellt
wird.
-
Obwohl
in einem Ausführungsbeispiel
die WLAN Datenbank 511 die Leistungsmetriken, die für jeden Eintrag
gesammelt wurden, in der WLAN Datenbank speichert, werden die gesammelten
Netzwerkleistungsmetriken in ei nem anderen Ausführungsbeispiel auch in jedem
AP gespeichert, der die Fähigkeit
besitzt, solche Netzwerkleistungsmetriken zu speichern. Somit kann
jeder AP im Vergleich zu einem Zugriffspunkt aus dem Stand der Technik
verbessert werden, indem eine oder mehrere Netzwerkleistungsmetriken
in dem AP aufgenommen werden. Solche Leistungsmetriken können Netzwerkleistungsmetriken
zwischen dem AP und einer Station, die sich mit dem AP verbinden
kann, und Netzwerkleistungsmetriken zwischen dem AP und einem oder
mehreren IP-fähigen
Service Providern umfassen, mit denen der AP in Kommunikation steht,
wie etwa ein oder mehrere Mobility Agents.
-
In
einem anderen Ausführungsbeispiel
werden die gesammelten Netzwerkleistungsmetriken in jedem AP, der
die Fähigkeit
besitzt, solche Netzwerkleistungsmetriken zu speichern, und nicht
in der Station gesammelt.
-
Sammeln der
Leistungsmetriken
-
Ein
Ausführungsbeispiel
verwendet den Cisco Service Assurance Agent (SAA), um ein oder mehrere Versuchspakete
zu senden und die eine oder mehreren Leistungsmetriken zu sammeln.
Der SAA arbeitet unter dem IOS von Cisco und überwacht die Netzwerkleistung
zwischen einem Router, z.B. der STA, die als ein Mobile Router agiert,
und einem fernen Gerät,
das ein anderer Router, ein IP-Host, wie etwa der AP, oder ein IP-fähiger Service
Provider, wie etwa ein Mobility Agent, sein kann.
-
Die
eine oder mehreren Leistungsmetriken umfassen eines oder mehrere
aus der UDP-Ansprechzeit, der UDP-Einwegverzögerung, dem UDP-Jitter, d.h.,
der UDP-Interpaketverzögerungsvarianz,
der Sprung-um-Sprung-ICMP-Ansprechzeit,
dem Sprung-um-Sprung-ICMP-Jitter, den Paketverluststatistiken, der Data
Link Switching Peer Tunnel Leistung oder eine oder mehrere Webseiten-Leistungsmetriken,
wie etwa DNS Lookup, TCP Connect und HTTP Transaktionszeit.
-
Einzelheiten
der Operation des SAA und der oben aufgelisteten Leistungsmetriken
können
in dem Dokument: "Cisco
Service Assurance Agent User Guide" gefunden werden, zu erhalten von Cisco
Systems, Inc., San Jose, Kalifornien, einschließlich im Web unter
http://www.cisco.com/warp/public/cc/pd/iosw/prodlit/saaug
ai.htm und zum Herunterladen im Web unter
http://www.cisco.com/warp/public/cd/pd/iosw/prodlit/saaug
ai.pdf.
-
Der
SAA stellt die Fähigkeit
bereit, ansteigende und fallende Schwellwerte zur Überwachung
der Service Level Agreements (SLAs) zu definieren, so dass die Dienstgüte QoS aufrechterhalten
werden kann.
-
Einige
Ausführungsbeispiele
der Erfindung verwenden einen SAA Responder, eine Komponente, die in
dem Ziel-Router, z.B. einem Access Router, eingebettet ist, deren
Funktionalität
darin liegt, auf SAA-Anforderungs-Pakete zu antworten. Er kann auf mehrere
SAA-Operationen gleichzeitig antworten. Der SAA kann die Portnummer
spezifizieren, an der der Responder die SAA-Pakete abhört.
-
Da
Router manchmal mehrere Zehntel Millisekunden benötigen, um
ankommende SAA-Pakete zu verarbeiten, bedingt durch zum Beispiel
andere Prozesse mit hoher Priorität, versieht der SAA die SAA-Operationen,
die ein oder mehreren Versuchspakete verwenden, mit einem Zeitstempel.
-
In
einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation,
z.B. ein Teil des Schrittes 225, die Internet Control Message
Protocol (ICMP) Echo Operation des SAA, um die Ansprechzeit von
Ende zu Ende zwischen einem Router, z.B. der STA, die als ein Router
agiert – letztlich
ein Mobile Router – und
einem IP-fähigen
Gerät,
z.B. dem AP, einem Mobility Agent oder einem anderen IP-fähigen Gerät zu messen.
Die Ansprechzeit wird durch das Messen der Zeit berechnet, die zwischen
dem Senden einer ICMP-Echo-Anforderungsnachricht
zu dem Ziel und dem Empfangen einer ICMP-Echoantwort vergeht. Der SAA stellt
eine Option bereit, die Ansprechzeit auf einem speziellen Pfad mit
einer LSR-Option in einem IP-Paket zu berechnen. Der SAA erlaubt
es einem Benutzer auch, die Dienstgüte (QoS) zwischen Endpunkten
zu messen, indem DSCP-Bits in einem IP-Paket gesetzt werden.
-
In
einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation
die ICMP Path Echo Operation des SAA, um die Sprung-um-Sprung-Ansprechzeit
zwischen der STA, die als ein Router agiert, und irgend einem IP-Gerät in dem
Netzwerk zu berechnen. Der SAA entdeckt den Pfad unter Verwendung
von Traceroute und misst dann die Ansprechzeit zwischen der STA
und jedem intermittierenden Sprung in dem Pfad. Wenn es mehrere
Routen mit gleichen Kosten zwischen den Quell- und Zielgeräten gibt,
weist die Path Echo Operation die Fähigkeit auf, einen speziellen
Pfad zu identifizieren, indem eine LSR-Option verwendet wird (falls
diese in den dazwischenliegenden Geräten aktiviert ist). Dieses
Merkmal ermöglicht
es dem SAA, Pfade genauer zu entdecken als im Vergleich zu einem
typischen Traceroute-Programm.
-
In
einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation
die User Datagram Protocol (UDP) Operation des SAA, um die UDP-Ansprechzeiten
zwischen der STA, die als ein Router agiert, und einem IP-fähigen Gerät zu berechnen.
Die Ansprechzeit wird berechnet, indem die Zeit gemessen wird, die
verbraucht wird, um ein Datagramm (ein L3 Paket) zu senden und eine
Antwort von dem Zielgerät
zu empfangen. Wenn in einem Ausführungsbeispiel
das Ziel ein Router ist, der einen SAA Responder umfassen kann, kann
der SAA Responder in dem Ziel-Router aktiviert werden. Der Responder
würde entweder
den Standard-UDP-Echo-Port (Port 7) oder den Port abhören, den
der Benutzer spezifizieren kann. Die Verwendung eines SAA Responders
kann die Genauigkeit erhöhen,
wenn die Prozessverzögerung
in dem Ziel-Router geschätzt
wird.
-
In
einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation
die Transmission Control Protocol (TCP) Connect Operation des SAA,
um Ansprechzeiten zu berechnen, indem die Zeit gemessen wird, die
von der STA verbraucht wird, um eine TCP Connect Operation zu dem
Zielgerät
durchzuführen. Wenn
das Ziel ein Router ist, der einen SAA Responder umfasst, kann der
SAA Responder in dem Ziel-Router aktiviert werden. Wenn das Ziel
ein IP-Host ist, der nicht von Cisco stammt, dann muss der Benutzer
eine bekannte Portnummer spezifizieren. Einige bekannte Ports sind:
21 (ftp), 23 (telnet), 80 (HTTP Server). Diese Operation ist praktisch
bei der Simulierung von Telnet- oder HTTP-Verbindungszeiten.
-
Einige
Ausführungsbeispiele
umfassen eine STA, die Echtzeitverkehr unterstützt, wie etwa Sprachverkehr über IP (VoIP).
Für den
Echtzeitverkehr werden die Verzögerungen,
die bei der Übertragung
von Daten involviert sind, von Bedeutung. In einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation, z.B. ein Teil des
Schrittes 225, die UDP Jitter Operation des SAA, die die
Verzögerung,
die Verzögerungsvarianz
und den Paketverlust in IP-Netzwerken misst, indem sie synthetischen
UDP-Verkehr erzeugt. Die UDP Jitter Operation sendet eine einstellbare
Anzahl an Paketen, von denen jedes eine einstellbare Größe aufweist,
von der STA, die als Router agiert, zu einem Ziel-Router (der SAA
Responder-fähig
ist) jeweils in einem Abstand von einer einstellbaren Zeit. Die
UDP Jitter Operation ist in der Lage, eines oder mehrere aus der
Interpaketverzögerungsvarianz
(Jitter) pro Richtung, dem Paketverlust pro Richtung und der durchschnittlichen
Umlaufzeit zu messen.
-
In
einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation,
z.B. ein Teil des Schrittes 225, die Domain Name System
(DNS) Operation des SAA, die die DNS-Ansprechzeit berechnet, indem
sie den Unterschied zwischen der Zeit, die verbraucht wird, um eine
DNS-Anforderung
zu senden, und der Zeit berechnet, zu der eine Antwort empfangen
wird. Die SAA DNS Operation fragt nach einer IP Adresse, wenn der
Benutzer den Host-Namen spezifiziert, oder fragt nach einem Host-Namen,
wenn der Benutzer eine IP-Adresse spezifiziert.
-
In
einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation,
z.B. ein Teil des Schrittes 225, die HTTP Operation des
SAA, die die Umlaufzeit (RTT; Round Trip Time) misst, die verbraucht wird,
um eine Verbindung mit einem HTTP-Server herzustellen und auf Daten
darin zuzugreifen. Die HTTP-Server-Ansprechzeit-Messung ist in drei
unterschiedliche Schritte aufgeteilt: die RTT, die verbraucht wird,
um ein Domain Name Lookup durchzuführen, die RTT, die verbraucht
wird, um eine TCP Connect zu dem HTTP-Server durchzuführen, und
die RTT, die verbraucht wird, um eine Anforderung zu senden und
eine Antwort von dem HTTP-Server zurück zu bekommen.
-
In
einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation,
z.B. ein Teil des Schrittes 225, die Dynamic Host Configuration
Protocol (DHCP) Operation des SAA, die die Umlaufzeit misst, die
verbraucht wird, um einen DHCP-Server zu entdecken und eine Vermietung
(lea se) davon zu erhalten. Der SAA gibt die gemietete IP-Adresse
nach der Operation wieder frei.
-
In
einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation,
z.B. ein Teil des Schrittes 225, die Data Link Switching
(DLSw) Operation des SAA. Das Data Link Switching Plus (DLSw+) (Cisco
Systems, Inc., San Jose, Kalifornien) ist eine verbesserte Version
von RFC1795. Das DLSw+ tunnelt den Systems Network Architecture
(SNA) Verkehr über
IP-Backbones mit
Hilfe von TCP. Die Router, die das Tunneln des SNA Verkehrs in TCP/IP
durchführen,
werden als DLSw Peers bezeichnet. Die DLSw+ Operation des SAA misst
die DLSw+ Protokoll-Stack- und Netzwerk-Ansprechzeit zwischen DLSw
Peers. DLSw Peers kommunizieren normalerweise durch den TCP Port
2065.
-
In
einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation,
z.B. ein Teil des Schrittes 225, die File Transfer Protocol
(FTP) Get Operation des SAA, deren Aufgabe darin liegt, die Zeit
zu messen, die verbraucht wird, um eine Datei von einem fernen Host
zu der STA zu übertragen,
die als ein Router dient. Diese Operation wird bei der Charakterisierung
der Kapazität
eines Netzwerks sehr nützlich
sein. Die File Transfer Protocol (FTP) Operation des SAA überträgt einen
beträchtlichen
Betrag an Verkehr.
-
In
einem Ausführungsbeispiel
verwendet die Leistungsmetriken-Sammeloperation,
z.B. ein Teil des Schrittes 225, die Path Jitter Operation
des SAA, die die Messung des Jitter, des Paketverlusts und der Verzögerung bei
jedem Sprung in einem IP-Netzwerk erleichtert. Die Operation ermittelt
zuerst die IP-Route von der Quelle zu dem Ziel über Traceroute und verwendet
dann ICMP-Echos, um zu den Ansprechzeitenwerten, den Paketverlustwerten
und den "angenäherten" Jitterwerten (basierend
auf RFC1889) für
jeden Sprung entlang dem Pfad zu gelangen. Die Messungen wären Näherungswerte,
da ICMP nur Umlaufzeiten hervorbringt.
-
Schnittstellenauswahl
-
Die
Floating Interfaces in einem Ausführungsbeispiel verhalten sich
wie echte Schnittstellen. Dies umfasst, dass die Schnittstellen
in einer oder mehre ren Routing-Tabellen enthalten sind. Im Allgemeinen
erscheint eine Schnittstelle (ob Floating oder nicht) in einer Routing-Tabelle
an der Station, wenn sie sich in dem Zustand "eingeschaltet" befindet. In einer Ausführungsform
der Erfindung umfasst dies Floating Interfaces, die sich in dem
Zustand "Protokoll
eingeschaltet (nachgebildet)" befinden.
Somit addiert in einem Ausführungsbeispiel das
L2-Modul oder der L2-Prozess, das/der aus irgendwelchen Gründen die
Schnittstelle in den "eingeschaltet"-Zustand versetzt,
die Schnittstelle auch zu der Routing-Tabelle, die mit dem L2 Link
verbunden ist, an den die Schnittstelle angeschlossen ist.
-
Eine
weitere Ausführungsform
der vorliegenden Erfindung ist das Auswählen einer Schnittstelle aus dem
Satz von Floating Interfaces in der WLAN Datenbank. Ein Ausführungsbeispiel
umfasst ein Verfahren zum Auswählen
einer Schnittstelle basierend auf einem oder mehreren Auswahlkriterien.
-
In
einem Ausführungsbeispiel
umfassen die Schnittstellenauswahlkriterien das Auswählen gemäß einer
oder mehreren anwendungsbezogenen Erfordernissen. In einem Ausführungsbeispiel
umfassen die Schnittstellenauswahlkriterien das Auswählen gemäß einem
oder mehreren Dienstgüteparametern,
wie etwa benötigte
Netzwerkleistungsmetriken. In einem Ausführungsbeispiel umfassen die
Schnittstellenauswahlkriterien L3 Informationen, wie etwa, ob und
welche Mobility Agent Informationen enthalten sind. Wenn die Station in
der Lage ist, mehr als eine physikalische Schnittstelle zu mehr
als einem WLAN zu haben, umfassen die Auswahlkriterien die Leistungsfähigkeiten
der physikalischen Schnittstelle zu dem WLAN, wie etwa Geschwindigkeit,
Netzwerkleistungsmetriken und so weiter. Die Auswahl wird vorzugsweise
gemäß einer
Kombination von Kriterien durchgeführt.
-
Zum
tatsächlichen
Auswählen
einer Schnittstelle aus dem Satz von Floating Interfaces sendet
ein L3 Prozess IP Daten zu dem ausgewählten Floating Interface. In
einem Ausführungsbeispiel
ist der Prozess der L3 des Protokoll-Stack. Es wird angenommen,
dass sich das ausgewählte
Floating Interface in einem Zustand "Protokoll eingeschaltet (nachgebildet)" befindet. Das Senden
von Daten zu einem solchen Protokoll bewirkt, dass das drahtlose
Gerät von
dem RF-Überwachungs-(Scan)-Modus
in einen Stationsmodus übergeht
und sich mit der entsprechenden SSID des ausgewählten Floating Interface verbindet.
-
Wenn
keine freien physikalischen drahtlosen Geräte verfügbar sind, die den AP des ausgewählten SSID
WLAN hören
können,
umfasst ein Ausführungsbeispiel
das Fallenlassen einer bestehenden Verbindung. Der Prozess modifiziert
dann die Aufzeichnung der AP Datenbank, indem er den Schnittstellenzustand
auf "Protokoll eingeschaltet
(real)" ändert und
außerdem
die MRUA-Flags aktualisiert.
-
Das
Verbinden findet in einem Ausführungsbeispiel
sofort statt, oder in einem anderen Ausführungsbeispiel nur dann, wenn
Pakete vorliegen, die auf dieser Schnittstelle gesendet werden sollen.
-
Automatisches
Auswählen
-
In
einem Ausführungsbeispiel
werden ausgewählte
IP-Pakete, z.B. diejenigen, die eine Router-Ankündigungsnachricht des Typs
Foreign Agent in der Aufzeichnung der WLAN Datenbank enthalten,
von L2 zu L3 gemäß einer
Reihenfolge verfügbar
gemacht. Dies bildet eine L2/L3-Schnittstelle nach, die der Netzwerk
Lager IP-Pakete bereitstellt, selbst wenn keine Kommunikation von
der Netzwerkebene einer anderen Entität besteht. In einem solchen
Ausführungsbeispiel
werden die Aufzeichnungen zuerst in dem Schritt 219 gemäß einem
oder mehreren Anordnungskriterien angeordnet (siehe oben). Die L3
Pakete werden L3 in der Reihenfolge präsentiert, so dass L3 automatisch
ein Floating Interface für
die Verbindung gemäß einem
oder mehreren Auswahlkriterien auswählt. Das heißt, in dem
Ausführungsbeispiel,
das vorzugsweise IP-Pakete
mit Mobility Agent Ankündigungen
bereitstellt, empfängt
die Netzwerk Lager die IP-Pakete mit den Mobility Agent Ankündigungen
selbst dann, wenn die STA noch nicht bereits Teil eines WLAN ist,
d.h., damit verbunden ist, und sich noch nicht in bidirektionaler
Kommunikation mit dem Mobility Agent befindet.
-
Eine
Anwendung eines solchen automatischen Auswählens ist das Betreiben einer
Station als einen drahtlosen Mobile Router. Die Station ist auch
ein Router, der so konfiguriert ist, dass er Mobile Router Dienste bereitstellt und
ein drahtloses Gerät
umfasst, um einem WLAN eine physikalische Schnittstelle bereitzustellen, und
der für
den Anschluss zu Mobility Agent; reserviert ist, die Foreign Agents
oder Access Routers sind, die Mobility Ankündigungen übertragen. Der oben beschriebene
Prozess stellt eine WLAN Datenbank von Floating Interfaces bereit.
In dem Fall der Implementierung eines Mobile Router sind die WLAN
Datenbankaufzeichnungen jeweils Floating Interfaces zu WLANs, die
Mobilitätsinformationen
von Foreign Agents oder IPv6 Access Routern empfangen. Das drahtlose
Netzwerkgerät 303 bleibt
in dem RF-Überwachungsmodus,
bis das Mobile IP ein Floating Interface öffnet, indem es ein IP-Paket
zu einem Mobility Agent wie etwa einem Foreign Agent sendet, um
sich bei dem Mobility Agent zu registrieren.
-
In
einem Ausführungsbeispiel
kann die Station eine Verbindung in einem Floating Interface "sperren", das sich in dem
Zustand 'Protokoll
eingeschaltet (real)' befindet,
so dass L2 die Verbindung mit dem Floating Interface nicht trennen
darf, was passieren kann, wenn es eine Anforderung gibt, sich mit
einem anderen WLAN zu verbinden. Das Sperren von Floating Interfaces
wird zum Beispiel dann verwendet, wenn ein Mobile Router implementiert
wird. Wenn ein Mobile Router seine Registrierung mit einem Foreign
Agent oder einem Access Router vollendet, kann er das Floating Interface
sperren.
-
6 ist
ein Ablaufdiagram eines Ausführungsbeispiels
eines Prozesses 650, der ein IP-Paket sendet, das optional
durch eine Verbindung mit einem AP geht, wenn die Schnittstelle,
die in dem Prozess ausgewählt
worden ist, ein Floating Interface in dem Zustand "Protokoll eingeschaltet
(nachgebildet)" ist.
Somit umfasst der Prozess 650 zum Beispiel das Verbinden
mit einem der APs in der WLAN Datenbank als eine Folge dessen, dass
die Netzwerk Lager der STA ein IP-Paket zu einem der Mobility Agents
sendet, der mit den APs der WLAN Aufzeichnungen in der WLAN Datenbank
verbunden ist.
-
In
einem Schritt 651 wählt
die L3 aus, ein IP-Paket zu senden ("Paket X"). In einem Schritt 653 durchsucht
L3 die Routing-Tabelle der Station nach einer geeigneten L2-Schnittstelle,
auf der das IP-Paket gesendet werden soll. Gemäß einer Ausführungsform
der Erfindung umfasst die Routing-Tabelle Informationen über die Floating
Interfaces von der WLAN Datenbank. Der Schritt 655 nimmt
an, dass eine geeignete L2-Schnittstelle ("Schnittstelle Y") gefunden ist. In einem Schritt 655 wird
das IP-Paket X von L3 zu L2 auf der L2-Schnittstelle Y gesendet.
-
Beim
Empfang eines IP-Pakets X von der Netzwerk Layer untersucht die
Link Layer in einem Schritt 657 den Zustand der ausgewählten Schnittstelle
Y, um festzustellen, ob sie sich in dem Zustand "Protokoll eingeschaltet (nachgebildet)" befindet oder nicht.
Wenn ja, dann verbindet sich die STA bei einem Schritt 659 mit dem
AP, der durch die SSID seines WLAN der Schnittstelle Y identifiziert
wird. Der Schritt 659 umfasst des Weiteren das Aktualisieren
der WLAN Datenbank, um die Aufzeichnung der Schnittstelle Y als
die MRUA-Aufzeichnung
zu markieren. Das Verbinden der STA führt die STA aus dem RF-Überwachungsmodus in den STA-Modus.
Wenn die Verbindung einmal erfolgt ist, leitet die Link Layer (Schritt 661)
das soeben empfangene IP-Paket X, das in einem L2 Frame eingekapselt
ist, auf der Schnittstelle Y weiter, so dass es über den soeben angeschlossenen
AP zu dem Foreign Agent kommuniziert werden kann. Dies kann zum
Beispiel erfolgen, um sich bei dem Mobility Agent zu registrieren.
-
An
diesem Punkt ist die Station mit einem AP verbunden, der in Kommunikation
mit einem oder mehreren Mobility Agents steht. Wenn IPv4 verwendet
wird, ist der Mobility Agent ein Foreign Agent oder ein Home Agent.
Wenn IPv6 verwendet wird, ist der Mobility Agent ein Access Router
oder ein Home Agent.
-
Wenn
in Schritt 657 festgestellt wird, dass sich die Schnittstelle
Y nicht in dem Zustand "Protokoll
eingeschaltet (nachgebildet)" befindet,
wird angenommen, dass sie sich in "Protokoll eingeschaltet (real)" befindet, und der
Prozess wird mit Schritt 661 fortgesetzt, bei dem das IP-Paket
X, das in einem L2 Frame eingekapselt ist, auf der Schnittstelle
Y gesendet wird.
-
In
einem Ausführungsbeispiel
kann die Station eine Verbindung in einem Floating Interface, das
sich in dem Zustand "Protokoll
eingeschaltet (real)" befindet, "sperren", so dass L2 die
Verbindung mit dem Floating Interface nicht lösen kann, was passieren kann,
wenn es eine Anforderung gibt, eine Verbindung mit einem anderen
WLAN einzugehen. Das Sperren der Floating Interfaces wird zum Beispiel
verwendet, wenn ein Mobile Router implementiert wird. Wenn ein Mobile
Router die Registrierung mit einem Foreign Agent oder einem Access
Router vollendet, kann er das Floating Interface sperren.
-
Wiederverbindung
-
Ein
Ausführungsbeispiel
der vorliegenden Erfindung ist ein Verfahren, mit dem eine Station,
die mit einem ersten WLAN verbunden ist, mit einem zweiten (möglicherweise
dem gleichen) WLAN wiederverbunden (neu verbunden) werden kann.
In dem Fall, dass der AP des ersten WLAN in Kommunikation mit einem
ersten Mobility Agent steht, ist das Wiederverbinden derart, dass
die Station vorzugsweise die Kommunikation mit dem ersten Mobility
Agent beibehält.
-
Das
Wiederverbinden wird durch eine Vielfalt von Ereignissen ausgelöst. Diese
Ereignisse umfassen, sind aber nicht beschränkt darauf, dass die drahtlose
Signalqualität
inakzeptabel wird, eine physikalische Beeinträchtigung des drahtlosen Signals
vorliegt, eine oder mehrere der gesammelten Netzwerkleistungsmetriken
unter einen einstellbaren Schwellwert fällt/fallen, und der AP versagt,
mit dem die Station verbunden ist. Die Signalqualität kann sich
verschlechtern, weil sich die Station physisch zu einer anderen
Stelle bewegt, oder weil es irgendeine andere Verschlechterung in
der Luftschnittstelle gibt. Die physikalische Beeinträchtigung des
drahtlosen Signals kann durch eine Person oder ein Objekt erfolgen.
-
Der
Wiederverbindungsprozess, der hier beschrieben wird, tritt auch
dann auf, wenn in dem Fall, dass die Station mehr als ein drahtloses
Netzwerkgerät
umfasst, die Verbindung zu dem WLAN automatisch von dem vorhandenen
drahtlosen Netzwerkgerät
zu einem anderen der drahtlosen Netzwerkgeräte wechselt. Dies kann zum
Beispiel dann passieren, wenn ein Bedarf danach besteht, dass sich
die Station mit einem bestimmten WLAN verbindet, das nur das gegenwärtige drahtlose
Netzwerkgerät
hören kann.
-
Wenn
das Wiederverbinden ausgelöst
wird, ändert
das Floating Interface zu dem damit verbundenen WLAN den Zustand
von "Protokoll eingeschaltet
(real)" zu "Protokoll ausgeschaltet".
-
7 zeigt
ein Ablaufdiagramm eines Ausführungsbeispiels
eines Wiederverbindungsprozesses 700.
-
Einfaches Wiederverbinden
und Wiederverbinden mit WLAN Datenbank-Upgrade
-
Aus
einem der oben genannten Gründe,
z.B. der Verlust eines AP-Signals
oder eine inakzeptable Signalqualitätsverschlechterung, oder eine
oder mehrere der Leistungsmetriken wird/werden inakzeptabel, kann die
Link Layer der Station in einem Schritt 701 bestimmen,
dass ein Wiederverbinden erforderlich ist. In einem solchen Fall
wird der Zustand des Floating Interface auf 'ausgeschaltet' geändert.
Wie vorher erläutert
worden ist, kann sich die Station ohne den Nutzen der vorliegenden
Erfindung mit dem ersten verfügbaren
AB mit geeigneter Signalqualität
erneut verbinden. Im Nachfolgenden wird angenommen, dass der AP
des damit verbundenen WLAN in der Lage ist, mit einem oder mehreren
Mobility Agents, je nach Bestimmung, zu kommunizieren, zum Beispiel,
indem der AP periodisch eine Mobility Agent Ankündigung von einem Mobility
Agent sendet.
-
In
einem Ausführungsbeispiel
der Erfindung wird der Prozess dann, wenn der Zustand des Floating Interface
auf 'ausgeschaltet' geändert wird,
in dem Schritt 709 fortgesetzt (siehe unten), bei dem ein
WLAN, d.h., eine SSID, für
das Wiederverbinden ausgewählt
wird.
-
In
einem anderen Ausführungsbeispiel
wird vor dem Versuch des Wiederverbindens die WLAN Datenbank zuerst
aktualisiert. In einigen Ausführungsbeispielen
wird dies sogar durchgeführt,
wenn keine Signalverschlechterung oder ein anderer Grund für das Wiederverbinden
vorliegen, sondern stattdessen, um zu gewährleisten, dass die Informationen
in der WLAN Datenbank über
die Floating Interfaces aktuell sind.
-
Ein
Ausführungsbeispiel
des Aktualisierens ist der Prozess, der in 2B gezeigt
ist, in dem die eine oder die mehreren Netzwerkleistungsmetriken
aktualisiert wird/werden.
-
Ein
anderes Ausführungsbeispiel
des Aktualisierens der WLAN Datenbank umfasst das Plazieren des drahtlosen
Transceivers der Station in den RF-Überwachungsmodus
und das Ausführen
eines Prozesses ähnlich
zu dem, der in 2A gezeigt ist und unten beschrieben
wird. In dem RF-Überwachungsmodus
hört die Station
den gesamten drahtlosen Verkehr von allen APs ab, die sie hören kann.
Wie vorher angemerkt worden ist, ist ein solches Überwachen
nicht möglich,
wenn die Station mit einem tatsächlichen
AP verbunden ist.
-
In
einem Schritt 705 wird die WLAN Datenbank aktualisiert,
um zu gewährleisten,
dass jede Aufzeichnung gemäß einem
oder mehreren Zuverlässigkeitskriterien
zuverlässig
ist. Der Schritt 705 umfasst das Aktualisieren des Zustands
jeder Aufzeichnung, d.h., jedes Floating Interface in der WLAN Datenbank.
In einem Ausführungsbeispiel
ist ein Kriterium dafür,
dass eine Aufzeichnung in der WLAN Datenbank zuverlässig ist, dass
eine Kommunikation mit dem AP der Aufzeichnung in dem drahtlosen
Medium immer noch zuverlässig möglich ist.
Ein Ausführungsbeispiel
des Schrittes 705 umfasst, dass die Station AP-Beacon-Signale
von den APs in der WLAN Datenbank überwacht, wodurch sichergestellt
wird, dass jeder AP in der WLAN Datenbank immer noch existiert.
Alle anderen Aufzeichnungen außer
MRUA werden in dem Schritt 705 gelöscht, wenn kein Beacon-Signal
einer ausreichend hohen Signalqualität für die SSID dieser Aufzeichnung
erfasst wird. In einem Ausführungsbeispiel
umfasst das Aktualisieren das Sammeln einer oder mehrerer Netzwerkleistungsmetriken
und das Löschen
der Aufzeichnungen, für
die eine oder mehrere Netzwerkleistungsmetriken inakzeptabel sind.
Die MRUA-Aufzeichnung wird bewahrt, weil sie Informationen über den
ersten Mobility Agent enthält,
d.h., einen Agent, mit dem der AP kommunizieren konnte. Da APs typischerweise
relativ häufig
ein Beacon übertragen,
ist die Zeit, die benötigt
wird, um eine oder mehrere Aufzeichnungen aus der WLAN Datenbank
zu löschen,
kurz im Vergleich zu der Zeit, die benötigt werden würde, um
die WLAN Datenbank neu aufzubauen.
-
In
einem Ausführungsbeispiel
umfasst der Schritt 705 des Weiteren das Überprüfen des
Zeitstempels jeder WLAN Datenbankaufzeichnung und das Entfernen
abgelaufener Aufzeichnungen, d.h., von Aufzeichnungen, die vom Alter
her älter
als ein vorausbestimmtes Alter sind, mit Ausnahme der MRUA-Aufzeichnung.
-
In
einem Schritt 707 wird die Gesamtzuverlässigkeit der Datenbank überprüft. In einem
Ausführungsbeispiel
ist die Zuverlässigkeit
eine Funktion der Anzahl an Aufzeichnungen, die immer noch zuverlässige Informationen
enthalten und die die Mobility Agent Informationen enthalten. In
einem anderen Ausführungsbeispiel
wird die Datenbank als zuverlässig
beurteilt, wenn sie immer noch eine zuverlässige MRUA-Aufzeichnung enthält.
-
Wenn
die WLAN Datenbank als zuverlässig
beurteilt wird, wird der Prozess 700 in einem Schritt 709 fortgesetzt
(siehe unten). Wenn die WLAN Datenbank andererseits als nicht zuverlässig beurteilt
wird, wird die Datenbank aufgebaut, indem zuverlässige Aufzeichnungen hinzugefügt werden,
wobei ein Wartezustand 715 gestartet wird, bei dem die
Station in einem RF-Überwachungsmodus
auf ein Ereignis wartet. Der Prozess des Aufbauens der Datenbank
ist im Wesentlichen der Gleiche wie derjenige, der in dem Ablaufdiagramm
von 2A veranschaulicht ist. In einem Ausführungsbeispiel
wird eine Extra-Überprüfung durchgeführt, um
zu gewährleisten,
dass genügend
Aufzeichnungen in der WLAN Datenbank vorhanden sind, die Mobilitätsinformationen,
z.B. Router Ankündigungsnachrichten,
enthalten. Somit stellt ein Schritt 717, ausgehend von
dem Wartezustand 715 dann, wenn ein Ereignis auftritt,
fest, dass das Ereignis ein neuer MAC Frame ist, der ankommt. Wenn
nicht, kehrt der Prozess zurück
zu dem Wartezustand. In einem Ausführungsbeispiel (nicht in 7 gezeigt)
wird auch ein Timer überprüft, um zu
gewährleisten,
dass er noch nicht abgelaufen ist. Wenn ein neuer MAC Frame ankommt,
wird er in einem Schritt 719 gelesen. Der Frame wird überprüft, um festzustellen,
ob er ein Beacon ist, und wenn ja, dann wird die WLAN Datenbank
mit Informationen wie etwa der Signalqualität aktualisiert, und der Prozess
kehrt zu dem Wartezustand 715 zurück. Wenn der MAC Frame kein Beacon
ist, prüft
ein Schritt 723 den Frame und stellt fest, ob er Mobilitätsinformationen
enthält,
z.B. eine Foreign Agent Ankündigung.
Wenn nicht, dann kehrt der Prozess zurück zu dem Wartezustand 715.
-
Wenn
festgestellt wird, dass der Frame Mobilitätsinformationen enthält, wird
die WLAN Datenbank mit den Informationen, z.B. den Foreign Agent
In formationen, aktualisiert. In einem Ausführungsbeispiel umfasst der
Datenbankaktualisierungsschritt des Prozesses 727 des Weiteren
das Anordnen der Aufzeichnungen gemäß einem oder mehreren Anordnungskriterien.
Dieser Schritt ist ähnlich
zu dem Anordnen, das oben beschrieben worden ist. In einem Ausführungsbeispiel
umfassen die Anordnungskriterien das Anordnen gemäß dem, welche
Mobility Agent Informationen enthalten sind.
-
In
einem Ausführungsbeispiel
wird eine Überprüfung in
einem Schritt 729 durchgeführt, um festzustellen, ob genügend geeignete
Nachrichten in der WLAN Datenbank gespeichert sind oder nicht. In
einem Ausführungsbeispiel
der Erfindung ist die Anzahl, die für das ausreichende Vorhandensein
erforderlich ist, variabel, und wird dynamisch gemäß der Historie
abgeleitet. In einem anderen Ausführungsbeispiel basiert die
Anzahl, die für
das ausreichende Vorhandensein benötigt wird, auf einer vorherigen
Kenntnis der Anzahl an Mobility Agents in dem Netzwerk. In einem
anderen Ausführungsbeispiel
der Erfindung ist eine ausreichende Anzahl eine Aufzeichnung, die
einen L2 Frame umfasst, der L3 Mobilitätsinformationen eingekapselt
hat. In noch einem anderen Ausführungsbeispiel
ist die Anzahl größer als
eins. Wenn festgestellt wird, dass ein unzureichender Betrag an
Mobility Agent Informationen in der WLAN Datenbank enthalten ist,
wird der Prozess mit dem Wartezustand 715 fortgesetzt,
bei dem auf einen anderen L2 Frame gewartet wird.
-
Wenn
einmal festgestellt ist, dass die WLAN Datenbank zuverlässig ist,
oder wenn die Datenbank einmal ausreichend neu aufgebaut worden
ist, enthält
sie wenigstens die MRUA-Aufzeichnung.
-
In
dem Schritt 709 wird ein WLAN, d.h., eine SSID für das Wiederverbinden
gemäß einem
oder mehreren Wiederverbindungskriterien ausgewählt. Es sei daran erinnert,
dass die MRUA-Aufzeichnung Informationen über die Verbindung enthält, die
existierte, bevor bestimmt wurde, dass das Wiederverbinden notwendig ist.
In einem Ausführungsbeispiel
umfassen die Wiederverbindungskriterien, dass das ausgewählte drahtlose Netzwerk,
d.h., die ausgewählte
SSID, in Kommunikation mit dem Foreign Agent steht, der die Router
Ankündigungsnachricht
gesendet hat, die in dem Router Ankündigungsnachrichtenabschnitt
der MRUA-Aufzeichnung enthalten ist. In einem Ausführungsbeispiel
umfasst der Schritt 709 das Durchsuchen der (Nicht-MRUA-)Auf zeichnungen
der WLAN Datenbank nach einer oder mehreren Aufzeichnungen, deren
Foreign Agent IP-Adressen mit der Adresse des Mobility Agent zusammenpassen,
die in dem IP-Paketabschnitt der MRUA-Aufzeichnung enthalten ist.
In einem Ausführungsbeispiel
umfassen die Wiederverbindungskriterien außerdem die Qualität des empfangenen
drahtlosen Signals. Wenn also mehr als eine Übereinstimmung gefunden wird,
wird die SSID mit der höchsten
empfangenen drahtlosen Signalqualität für das Wiederverbinden ausgewählt.
-
Wenn
keine anderen passenden IP-Adressen als die MRUA-Aufzeichnung selber im Schritt 709 gefunden
werden, umfasst der Schritt 709 in einem Ausführungsbeispiel
das Durchsuchen der WLAN Datenbank nach alternativen Mobility Agents
der gleichen Art, z.B. einen anderen Foreign Agent oder einen anderen Home
Agent. Wenn Aufzeichnungen für
mehr als einen alternativen Mobility Agent gefunden werden, umfasst der
Schritt 709 das Auswählen
des Mobility Agent mit der höchsten
drahtlosen Signalqualität.
In einem Ausführungsbeispiel
kehrt der Prozess dann, wenn kein Wiederverbinden möglich ist,
wieder zu dem RF-Überwachungsmodus
(Schritt 703) zurück.
-
In
einem Schritt 711 verbindet sich die STA wieder mit dem
ausgewählten
AP. Dieser Schritt umfasst das Aktualisieren der MRUA-Aufzeichnung
je nach Bedarf und das Aktualisieren des Schnittstellenzustandfeldes
von 'Protokoll eingeschaltet
(nachgebildet)' zu 'Protokoll eingeschaltet
(real)'.
-
Somit
wird die Station bei der Vollendung mit einem WLAN wiederverbunden,
dessen AP in Kommunikation mit dem Mobility Agent aus der allerjüngsten Verbindung
steht. Wenn kein solcher AP existiert, wird die Station mit einem
AP wiederverbunden, der in Kommunikation mit einem anderen, aber
geeigneten Mobility Agent steht.
-
Wenn
in einem Ausführungsbeispiel
die Station z.B. ein Mobile Router ist, signalisiert der Wiederverbindungsprozess
den L3 Prozessen in der Station, dass eine Wiederverbindung stattgefunden
hat. Wenn L3 an dem Mobile Router mit einem Foreign Agent oder einem
Access Router über
das WLAN des Floating Interface registriert ist, das sich wiederverbunden
hat, fragt ein L3 Prozess in der Station den Foreign Agent oder den
Access Router ab, um seine Registrierungsstation festzustellen.
In einem Ausführungsbeispiel
versucht die Station bei L3, sich bei dem Foreign Agent oder dem
Access Router zu registrieren. Wenn die Registrierung erfolgreich
ist oder neu festgestellt ist, bewirkt der Mobile Router, dass die
Verbindung mit dem WLAN in dem drahtlosen Netzwerkgerät gesperrt
wird.
-
Wenn
in einem Ausführungsbeispiel
keine Verbindung mehr mit einem WLAN, d.h., dem AP des WLAN, das
in der Luft vorhanden ist, aufgrund der gesperrten Floating Interfaces
hergestellt werden kann, setzt der Prozess, der die Floating Interfaces
bereitstellt, das passende Floating Interface auf "Protokoll ausgeschaltet". Wenn eine Schnittstelle
wieder freigesetzt wird, was die Verbindung mit diese SSID erlaubt
(selbst wenn es zu einem Wechsel kommt, falls notwendig), wird sie
zurück
auf "Protokoll eingeschaltet
(nachgebildet)" gesetzt.
-
Alternative Ausführungsbeispiele
mit N MRUA-Einträgen
in der WLAN Datenbank.
-
In
einem alternativen Ausführungsbeispiel
umfasst die WLAN Datenbank ein Feld, das die N letzten Verbindungen
mit APs anzeigt, die drahtlos Mobilitätsinformationen von N unterschiedlichen
Mobility Agents übertragen
haben. Die oben beschriebenen Vorgänge des Aufbauens der WLAN
Datenbanken und des Wiederverbindens der STA mit einem AP werden
modifiziert. Zum Beispiel kann der Wiederverbindungsprozess 600 so
modifiziert werden, dass eine Wiederverbindung mit einer maximalen
Anzahl der letzten N Verbindungen erfolgt. Ein Ausführungsbeispiel
umfasst das Setzen eines Zeitlimits, wenn eine ausreichende Anzahl
an Kandidaten für
die Verbindung gefunden ist. In einem Ausführungsbeispiel ist N = 4 und
die ausreichende Anzahl ist 1, wenn die STA nicht selber ein Mobility
Agent ist, und eins von jeder Art in dem Fall, dass die STA sowohl
als ein Mobility Agent agiert als auch selber als ein mobiler Knoten
agiert.
-
Stationen
mit mehreren drahtlosen Netzwerkgeräten
-
Einige
Stations-Ausführungsbeispiele
umfassen mehr als ein drahtloses Netzwerkgerät. Jedes drahtlose Netzwerkgerät kann sich
nur mit einem WLAN an einem gegebenen Punkt in der Zeit verbunden.
In einem solchen Ausfüh rungsbeispiel
kann jedes drahtlose Netzwerkgerät
in seinen eigenen RF-Überwachungsmodus gehen.
Somit umfasst das Ablaufdiagramm von 2A und 6,
dass jedes Gerät
eine Überwachung
bezüglich
Beacons durchführt,
die es hören
kann. Dies wird zum Beispiel dann verwendet, wenn es möglich, obgleich
unwahrscheinlich ist, dass zwei drahtlose Geräte nichtidentische Sätze von
APs hören
können.
Es sei angemerkt, dass mit mehreren drahtlosen Geräten gemeint
ist, dass die Stationen mehrere Schnittstellen zu den WLANs aufweisen
können,
die zu der gleichen Zeit aktiv sind. Es kann sein, dass ein physikalisches
Gerät die
Vielzahl von Schnittstellen bereitstellt, und der Begriff mehrere
drahtlose Netzwerkgeräte
umfasst den Fall, dass die Station ein solches Mehrfach-Schnittstellen-Gerät aufweist.
-
Beschleunigte
Wiederverbindung unter Verwendung von zwei drahtlosen Geräten
-
In
einer Station mit einem einzigen drahtlosen Netzwerkgerät ist die
Zeit zur Sammlung von L3 Informationen, z.B. zur Lokalisierung von
Mobility Agents, nicht vorhersagbar und hängt von der Konfiguration der Router
ab, die als Mobility Agents agieren. Außerdem kann die Zeit zur Sammlung
von Leistungsmetriken nicht vorhersagbar sein. Die Zeit zwischen
Mobility Agents Ankündigungen
kann relativ lang sein. Dies trifft vor allem bei Netzwerken mit
hohem Verkehr zu, bei denen der Rundsende- und Multicast-Verkehr
z.B. durch Netzwerkadministratoren beschränkt sein kann. Darüber hinaus
kann in kritischen Anwendungen, bei denen eine Wiederverbindung
schnell stattfinden muss, wie bei einem mobilen Netzwerk, bei dem
der Access Router selber eine drahtlose Station ist, eine langsame
Wiederverbindung dazu führen,
dass die Konnektivität
zu jedem Knoten in dem Netzwerk verloren geht. Es ist deshalb wünschenswert,
einen relativ schnellen Wiederverbindungsprozess zu haben.
-
Bei
den oben beschriebenen Verbindungsausführungsbeispielen (siehe 2A und 6)
und Wiederverbindungsausführungsbeispielen
(siehe 7) kann die Geschwindigkeit der Verbindung oder
der Wiederverbindung von der Zeit, die in dem RF-Überwachungsmodus
verbracht wird, um L2 und L3 Informationen zu sammeln, und von der
Zeit beherrscht werden, die zur temporären Verbindung verbraucht wird,
um eine oder mehrere Leistungsmetriken zu sammeln.
-
In
einem anderen Ausführungsbeispiel
der Erfindung umfasst die STA ein zweites drahtloses Netzwerkgerät, das für das Abhören der
APs in dem RF-Überwachungsmodus
und für
das Sammeln der Netzwerkleistungsmetriken reserviert ist. Das Abhören, Aufbauen
und Aktualisieren der WLAN Datenbank. Die WLAN Datenbank wird gemeinsam
genutzt. In einem Ausführungsbeispiel
wird das zweite drahtlose Netzwerkgerät für ein Floating Interface verwendet,
weil sich dessen Modus nicht in den Stationsmodus ändert und es
sich nur temporär
mit einem WLAN und auch nur zu dem Zweck des Sammelns der Netzwerkleistungsmetriken
verbindet.
-
4 zeigt
ein solches alternatives Stations-Ausführungsbeispiel. Die STA umfasst
ein erstes drahtloses Netzwerkgerät 303, das WLAN-Dienste
bereitstellt, und ein zweites drahtloses Netzwerkgerät 403.
In einem Ausführungsbeispiel
umfasst das zweite drahtlose Netzwerkgerät keinen Sender, d.h., es ist
ein Gerät
nur zum Empfang, während
in einem anderen Ausführungsbeispiel
das zweite drahtlose Netzwerkgerät
den Empfängerabschnitt
eines enthaltenen Transceiver benutzt.
-
Wenn
eine anfängliche
Verbindung der STA mit einem AP stattgefunden hat, stellt das erste
drahtlose Netzwerkgerät 303 eine
tatsächliche
Schnittstelle zu dem WLAN des AP bereit, während das zweite drahtlose Netzwerkgerät 403 den
Netzwerkverkehr in einem RF-Überwachungsmodus überwacht.
Die beiden drahtlosen Netzwerkgeräte sind mit der Netzwerk Lager 411 eines
Protokoll-Stack gekoppelt, der in der STA enthalten ist, und zwar über einen
Satz von Floating Interfaces 405, die eine WLAN Datenbank
verwenden, die in dem Speicher gespeichert ist. Das Überwachen
des HP-Verkehrs durch das zweite drahtlose Netzwerkgerät 403 fügt Informationen
zu der WLAN Datenbank 409 hinzu, einschließlich das
Hinzufügen
von Mobility Agent Informationen, wie dies oben beschrieben worden
ist, und einer oder mehreren Netzwerkleistungsmetriken. Die anfängliche
Verbindung umfasst das Senden eines IP-Pakets zu der Netzwerk Layer über die
Floating Interfaces 405, so dass die Netzwerk Lager vorzugsweise
einem Mobility Agent "antworten" kann, selbst wenn
noch keine tatsächliche
Kommunikation zwischen der STA und dem Mobility Agent besteht. Die
Antwort wird von einem ausgewählten
Floating Interface in dem Zustand "Protokoll eingeschaltet (nachgebildet)" abgefangen, was
bewirkt, dass sich die STA – unter
Verwendung des ersten drahtlosen Netzwerkgeräts 303 – mit dem
AP verbindet, von dem die Mobility Agent Informationen übertragen
worden sind. Danach kann die Kommunikation über das erste drahtlose Netzwerkgerät 403 weitergehen.
Das zweite drahtlose Netzwerkgerät
setzt die Überwachung
im RF-Überwachungsmodus
und das Aktualisieren der WLAN Datenbank fort. Wenn eine Wiederverbindung
notwendig wird, stellt der Satz von Floating Interfaces die WLAN
Datenbankaufzeichnung für
den AP bereit, der der beste Kandidat für die Wiederverbindung ist.
-
Somit
kann, unter Bezugnahme auf 2A, in
einem Ausführungsbeispiel
für die
STA, die zwei drahtlose Netzwerkgeräte aufweist, der Prozess 200 des
anfänglichen
Aufbauens der WLAN Datenbank Daten verwenden, die an dem ersten
oder dem zweiten drahtlosen Netzwerkgerät empfangen werden. Der Schritt 201 ist
nicht notwendig, wenn das zweite drahtlose Netzwerkgerät immer
im RF-Überwachungsmodus
ist. Beim Schritt 203 nimmt der Prozess einen MAC Frame
von dem zweiten drahtlosen Netzwerkgerät an.
-
Unter
Bezugnahme auf 6 verbindet in einem Ausführungsbeispiel
für die
STA, die zwei drahtlose Netzwerkgeräte aufweist, von denen sich
eines im RF-Überwachungsmodus
befindet, der Prozess 650 des Verbindens die STA mit dem
ausgewählten
WLAN (d.h., einem AP) in dem Schritt 659 unter Verwendung
des ersten drahtlosen Netzwerkgeräts. Der Schritt 661 leitet
das IP-Paket zu
der MAC Layer ebenfalls unter Verwendung des ersten drahtlosen Netzwerkgeräts weiter.
-
Verwendung
eines Ausführungsbeispiels
der Erfindung zur Implementierung eines Mobile Router
-
Eine
Verwendung eines Ausführungsbeispiels
der Erfindung ist das Implementieren eines Mobile Router durch Integration
eines WLAN direkt in eine STA, die auch ein Router ist, unter Verwendung
der hier beschriebenen Floating Interfaces. Wenn ein Mobile Router
in eine Region wandert, in der mehrere WLAN verfügbar sind, muss der Mobile
Router dasjenige auswählen,
das seinen Erfordernissen besser entspricht, und zwar basierend
auf konfigurierten Regeln und der dynamischen Verfügbarkeit
von Ressourcen, Signalstärke, Kanalverfügbarkeit,
Antennen, Foreign Agents in IPv4, Access Router in IPv6, und so
weiter. Es ist somit vorteilhaft, eine Mischung aus Informationen
zu verwenden, die bei Layer 2 (Schicht 2) und Layer 3 (Schicht 3) zur
Verfügung
stehen, um den richtigen AP oder das richtige drahtlose Netzwerkgerät auszuwählen.
-
Das
Anschließen
eines Routers an einen Zugriffspunkt (der als eine 802.11 Brücke agiert) über den Standard
Ethernet Port erlaubt keine ausführliche Überwachung
von Funkressourcen von der Router Engine, wodurch die Fähigkeiten,
Layer 3 Entscheidungen mit Layer 2 (d.h., Funk-)Informationen zu
treffen, eingeschränkt
werden.
-
Wenn
man eine Ausführungsform
der Erfindung verwendet, überwacht
ein Router, der ein oder mehrere drahtlose Netzwerkgeräte aufweist,
die Funksignale von APs, die er hören kann, und verbindet sich
mit dem AP, d.h., er wird eine STA zu dem WLAN dieses AP, unter
Verwendung einer Mischung aus Informationen, die bei Layer 2 und
Layer 3 zur Verfügung
stehen, um den richtigen AP oder das richtige drahtlose Netzwerkgerät auszuwählen. Dies
kann stattfinden, bevor sich der Router mit irgendeinem AP verbindet,
obwohl ohne den Nutzen der Erfindung das Sammeln solcher Layer 3
Informationen zuerst das Verbinden mit einem AP erfordert.
-
Ein
Ausführungsbeispiel
jedes der Prozesse, die hier beschrieben sind, besitzt die Form
eines Computerprogramms, das in einem Verarbeitungssystem, z.B.
einem oder mehreren Prozessoren in einer Station in dem drahtlosen
Netzwerk, abläuft.
Somit können,
wie den Fachleuten auf diesem Gebiet klar sein wird, Ausführungsbeispiele
der vorliegenden Erfindung als ein Verfahren, eine Vorrichtung,
wie etwa eine Spezialvorrichtung, eine Vorrichtung, wie etwa ein
Datenverarbeitungssystem, eine drahtlose Station oder als ein Trägermedium,
z.B. ein Computerprogrammprodukt, verkörpert werden. Das Trägermedium
trägt ein
oder mehrere computerlesbare Codesegmente zur Steuerung eines Verarbeitungssystem,
um ein Verfahren zu implementieren. Demgemäß können Ausführungsformen der vorliegenden
Erfindung die Form eines Verfahrens, eines vollständig aus
Hardware bestehenden Ausführungsbeispiels,
eines vollständig
aus Software bestehenden Ausführungsbeispiels
oder eines Beispiels annehmen, das Software- und Hardware-Ausführungsformen
verbindet. Des Weiteren kann die vorliegende Erfindung die Form
eines Trägermediums
annehmen (z.B. eines Computerprogrammprodukts auf einem computer lesbaren
Speichermedium), das computerlesbare Programmcodesegmente trägt, die
in dem Medium verkörpert
sind. Jedes geeignete computerlesbare Medium kann verwendet werden,
einschließlich
einer Magnetspeichervorrichtung, wie etwa eine Diskette oder eine Festplatte,
oder einer optische Speichervorrichtung, wie etwa eine CD-ROM.
-
Es
wird verständlich
sein, dass die Schritte der erörterten
Verfahren in einem Ausführungsbeispiel
von einem oder mehreren geeigneten Prozessoren eines Verarbeitungssystems
(d.h., Computersystems) durchgeführt
werden, das Instruktionen (Codesegmente) ausführt, die in einem Speicher
gespeichert sind. Es wird auch klar sein, dass die Erfindung nicht
auf irgendeine bestimmte Implementierung oder Programmierungstechnik
beschränkt
ist, und dass die Erfindung unter Verwendung jeder geeigneten Technik
zur Implementierung der hier beschriebenen Funktionalität implementiert
werden kann. Die Erfindung ist nicht auf eine bestimmte Programmierungssprache
oder ein bestimmtes Betriebssystem beschränkt.
-
Die
ganze Beschreibung hindurch wird Bezug auf "ein Ausführungsbeispiel" genommen, wobei
damit gemeint ist, dass ein bestimmtes Merkmal, eine bestimmte Struktur
oder Charakteristik, die in Verbindung mit dem Ausführungsbeispiel
beschrieben ist, in wenigstens einem Ausführungsbeispiel der vorliegenden
Erfindung enthalten ist. Somit bezieht sich das Auftreten des Ausdrucks "in einem Ausführungsbeispiel" an verschiedenen
Stellen in der ganzen Beschreibung nicht notwendigerweise immer
auf das gleiche Ausführungsbeispiel.
Außerdem
können
die bestimmten Merkmale, Strukturen oder Charakteristiken auf jede
geeignete Art und Weise in einem oder mehreren Ausführungsbeispielen
kombiniert werden, wie dies einem Durchschnittsfachmann auf dem
Fachgebiet aus der vorliegenden Offenbarung offensichtlich wäre.
-
In ähnlicher
Weise sollte es klar sein, dass in der obigen Beschreibung der beispielhaften
Ausführungsbeispiele
der Erfindung verschiedene Merkmale der Erfindung manchmal in einem
einzigen Ausführungsbeispiel,
einer einzigen Figur oder Beschreibung davon zum Zwecke der rationellen
Darstellung der Offenbarung und zur Unterstützung des Verständnisses
eines oder mehrerer der unterschiedlichen erfinderischen Aspekte
gruppiert sind. Dieses Offenbarungsverfahren soll aber nicht so
interpretiert werden, dass es eine Absicht re flektiert, dass die
beanspruchte Erfindung mehr Merkmale benötigt, als diese ausdrücklich in jedem
Anspruch rezitiert sind. Stattdessen liegen die erfinderischen Aspekte
in weniger als allen Merkmalen eines einzigen oben offenbarten Ausführungsbeispiels,
wie dies die nachfolgenden Ansprüche
reflektieren. Somit werden die Ansprüche, die der ausführlichen
Beschreibung folgen, hiermit ausdrücklich in diese ausführliche
Beschreibung aufgenommen, wobei jeder Anspruch für sich selber als ein separates
Ausführungsbeispiel der
vorliegenden Erfindung steht.
-
Es
sollte klar sein, dass die vorliegende Erfindung nicht auf irgendein
bestimmtes Kommunikationssystem, Kommunikationsgerät(e) oder
irgendwelche bestimmten Kommunikations-Architekturen begrenzt ist, sondern
dass die Erfindung stattdessen Verwendung in verschiedenen Typen
von Kommunikationssystemen finden kann.
-
Der
Begriff Dateneinheit bezieht sich typischerweise auf eine Protokoll-Dateneinheit an Informationen. Somit
bezieht sich ein Paket, ein Frame, etc. jeweils auf eine Dateneinheit.
-
Somit
ist die Erfindung, obwohl die vorliegende Erfindung in Form von
spezifischen Ausführungsbeispielen
beschrieben worden ist, nicht auf diese spezifischen Ausführungsbeispiele
begrenzt. Stattdessen ist der Schutzumfang der Erfindung durch die
nachfolgenden Ansprüche
definiert, und andere Ausführungsbeispiele
liegen in dem Schutzumfang der Erfindung.
-
Zum
Beispiel beschriebt die obige Beschreibung eine Station, die ein
drahtloses Netzwerkgerät
umfasst. Nachdem sich die Station mit einem WLAN verbindet, stellt
das drahtlose Netzwerkgerät
eine bidirektionale Schnittstelle zu dem WLAN bereit. Drahtlose
Netzwerkgeräte,
die mehrere simultane Kanäle
aufweisen, sind bekannt, und jeder Kanal ist dann in der Lage, eine
bidirektionale Schnittstelle zu einem WLAN bereitzustellen. Es sollte
klar sein, das dies im Wesentlichen das Gleiche ist wie eine Station,
die mehr als ein drahtloses Netzwerkgerät umfasst, so dass dann, wenn
die Beschreibung hier eine Station erwähnt, die eine Vielzahl von
drahtlosen Netzwerkgeräten
umfasst, von dem jedes in der Lage ist, eine bidirektionale Schnittstelle
zu einem damit verbundenen WLAN bereitzustellen, dies den Fall umfasst,
wenn die Station eine oder mehrere drahtlose Schnittstellen umfasst,
von denen eine oder mehrere in der Lage ist/sind, eine Vielzahl
von bidirektionalen Schnittstellen bereitzustellen.
-
Obwohl
ein oder mehrere Ausführungsbeispiele
für den
Betrieb gemäß dem IEEE
802.11 Standard in seinem verschiedenen Formen beschrieben worden
ist/sind, ist die Erfindung nicht auf den IEEE 802.11 Standard beschränkt, und
kann auf andere WLAN- oder Kommunikationsstandards angewendet werden,
wie zum Beispiel Bluetooth, GSM, PHS und andere zellulare drahtlose
Telephoniestandards, wo auch immer es erwünscht ist, bei L2 einer drahtlosen
Station zu erkennen, ob ein WLAN oder eine andere Station Mobile
IP Dienste bereitstellen kann oder nicht, also z.B. in Kommunikation
mit einem oder mehreren Mobility Agents steht. Andere solche Anwendungen
umfassen das drahtlose Ethernet, Hiperlan I, Hiperlan II und Multimedia Mobile
Access Communication (MMAC) Systeme, Local Multiunit Distribution
Service (LMDS) IF Strips, drahtloses digitales Video, drahtlose
USB-Links, drahtlose IEEE 1394 Links, TDMA Packet Radios, Low-Cost Point-to-Point
Links, Voice-over-IP tragbare "Mobiltelephone" (drahtlose Internet-Telephone)
und so weiter.
-
Es
sei angemerkt, dass, obwohl die Datenstruktur, die Informationen über APs
enthält,
die die STA hören
kann, hier die WLAN Datenbank genannt wird, die Erfindung nicht
auf die Verwendung einer traditionellen Datenbank, z.B. einer Tabelle,
beschränkt
ist, da die Datenstruktur nicht in der Form einer traditionellen
Datenbank, z.B. einer Tabelle, als die Struktur für die WLAN
Datenbank vorliegen muss. Jede Datenstruktur, die die erforderlichen
Informationen verwalten kann, kann verwendet werden. In einem Ausführungsbeispiel
ist die AP-Datenstruktur eine Tabelle. In einem anderen Ausführungsbeispiel
ist die Datenstruktur eine Liste. Andere Datenstrukturen sind ebenfalls
möglich,
was den Fachleuten auf diesem Gebiet klar sein dürfte, und die Erfindung ist
nicht auf eine bestimmte Form für
die WLAN Datenbank beschränkt.
-
Obwohl
Ausführungsbeispiele
der Erfindung den SAA der Firma Cisco System Inc. zur Erhaltung
der Netzwerkmetriken verwenden, verwenden andere Ausführungsbeispiele
der Erfindung andere Netzwerkmessungs-Tools, die Netzwerkleistungsmetriken
erhalten. Es existieren viele solcher anderer Tools. Viele verwenden
die Internet Control Message Protocol (ICMP) Echo Operati on, die
ICMP-Pakete sendet, um die Ansprechzeit von Ende zu Ende zwischen
der STA, z.B. der STA, die als ein Mobile Router agiert, und irgendeinem
IP-fähigen Gerät, z.B.
einem AP, zu messen, um die Funkverknüpfung zu messen, oder einem
Mobility Agent zu messen, der von dem AP aus erreichbar ist. Siehe
zum Beispiel das US-Patent 6,363,056 von Beigi et. al. für ein Verfahren
zur Messung der Umlaufzeit (RTT). Siehe die Liste an Tools in dem
Dokument von Professor Henning Schulzrinne: "Measurement Tools" Computer Science Department, Columbia
Universität,
erhältlich
im Web von Professor Henning Schulzrinne unter http://www.cs.columbia.edu/~hgs/internet/tools.htlm.
-
Siehe
auch die Liste an Tools in der Cooperative Association for Internet
Data Analysis (CAIDA), "Performance
Measurement Tools Taxonomy",
erhältlich
von der Cooperative Association for Internet Data Analysis im Web
unter http://www.caida.org/tools/taxonomy/performance.xml.
-
Es
wird hier nicht angedeutet, dass alle Tools in diesen Listen für die Verwendung
in Ausführungsbeispielen
der Erfindung geeignet sind, oder dass die Listen komplette Listen
von Mess-Tools sind. Die Listen sind hier enthalten, um zu demonstrieren,
dass viele Tools für
die Messung solcher Metriken wie etwa die Umlaufzeit (RTT) und andere
Messungen der Latenzzeit bekannt sind.
-
Es
sei angemerkt, dass der Begriff Ansprechzeit hier synonym zu Verzögerung verwendet
wird. Die Verzögerung
(oder Latenzzeit) kann eine Einweg-Verzögerung
oder eine Umlaufverzögerung
sein. In einem solchen Fall ist die Verzögerungs- oder Ansprechzeit
die Umlaufzeit.
-
Folglich
werden die Fachleute auf diesem Gebiet erkennen, dass, obwohl hier
beschrieben worden ist, was als die bevorzugten Ausführungsbeispiele
der Erfindung betrachtet wird, andere und weitere Modifikationen
dazu durchgeführt
werden können,
ohne dass von dem Schutzumfang der Erfindung, der von den angehängten Ansprüchen definiert
ist, abgewichen wird.