PatentDe  


Dokumentenidentifikation DE102006055389A1 31.05.2007
Titel Verfahren und Vorrichtung zur dezentralen Ermittlung von Client- und Zugangspunkt-Einstellungen in einem drahtlosen LAN
Anmelder Lenovo (Singapore) Pte. Ltd., Singapur/Singapore, SG
Erfinder Narayanaswami, Chandrasekhar, Wilton, Conn., US;
Olsen, Claus Michael, Cortlandt Manor, N.Y., US;
Rosu, Marcel-Catalin, Ossining, N.Y., US
Vertreter Schweiger & Partner, 80333 München
DE-Anmeldedatum 22.11.2006
DE-Aktenzeichen 102006055389
Offenlegungstag 31.05.2007
Veröffentlichungstag im Patentblatt 31.05.2007
IPC-Hauptklasse H04L 12/26(2006.01)A, F, I, 20061122, B, H, DE
IPC-Nebenklasse H04L 12/56(2006.01)A, L, I, 20061122, B, H, DE   H04L 12/28(2006.01)A, L, I, 20061122, B, H, DE   
Zusammenfassung Um Energie zu sparen, müssen Komponenten in mobilen Vorrichtungen weniger häufig zwischen "aktiven" und "schlafenden" Modi wechseln und über längere Intervalle schlafen. Entsprechend mindestens einer bevorzugten Ausführungsform der vorliegenden Erfindung wird hierin allgemein ein Ansatz für die dezentrale Ermittlung der Konfigurationen von drahtlosen Clients und Zugangspunkten betrachtet, besonders derjenigen Einstellungen, die sich auf den Energieverbrauch der drahtlosen Schnittstelle des Clients beziehen. Die in den bevorzugten Ausführungsformen betrachteten Verfahren verwenden Verfahren der Untersuchung mit Datenpaketen, um die Konfigurationen von Client und Zugangspunkt dezentral zu ermitteln. Die Untersuchungsverfahren umfassen das Senden von Datenpaketen an die Clientvorrichtung über das drahtlose LAN in Intervallen, die unter Verwendung von Daten berechnet werden, die in der verwendeten drahtlosen LAN Technologie öffentlich zugänglich sind und von Ergebnissen aus vorherigen Untersuchungsmessungen mit Datenpaketen. Messungen von mehreren Datenpaketuntersuchungen und Verfahren zur statistischen Datenverarbeitung werden verwendet, um eine Ermittlung durchzuführen.

Beschreibung[de]

Die vorliegende Erfindung bezieht sich im Allgemeinen auf das Gebiet von Computersoftware und im Besonderen auf den Entwurf und die Entwicklung von Netzwerkproxies, die Teil der Software sind, die Clientanwendungen darin unterstützt, auf serverbasierte Ressourcen zuzugreifen.

Netzwerkproxyserver sind vernetzte Anwendungen, die dafür ausgelegt sind, Clientanwendungen zu helfen, effizient mit dezentralen Servern zusammen zu wirken. Typischerweise sind Proxyserver als Anwendungen auf Benutzerebene realisiert, die auf dedizierten, vernetzten Hochleistungsservermaschinen laufen. Für eine bessere Leistungsfähigkeit kann dieselbe Funktionalität in einem Modul im Kernel des Servers oder in einem vernetzten Gerät realisiert werden. SOCKS Server stellen ein frühes Beispiel für Netzwerkproxies dar. Webproxycachespeicher (siehe zum Beispiel Ari Lutonen, Web Proxy Server, Prentice Hall, 1997,) sind wahrscheinlich das am besten bekannte Beispiel von Netzwerkproxies.

Webproxycachespeicher sind dafür ausgelegt, die Leistung von Clientbrowsern und die Wahrnehmung durch den Benutzer durch das Reduzieren von Wartezeiten beim Herunterladen von Internetseiten zu verbessern. Clientbrowser sind konfiguriert, um Inhalt vom Webproxycachespeicher anzufordern. Wenn der Proxy eine lokale Kopie des angeforderten Dokuments hat, gibt er das Dokument an den Client zurück. Andernfalls leitet er die Anforderung des Clients zum Ursprungsserver weiter und leitet die Antwort an den Client weiter. Der Proxy kann eine Kopie des weitergeleiteten Dokuments im lokalen Cachespeicher (Platte) speichern. Die Wartezeiten beim Herunterladen von Internetseiten werden reduziert, weil die Wartezeit, um über das Netzwerk des Unternehmens oder des Campus auf den Webproxyserver zuzugreifen viel geringer ist als die Wartezeit, um über das Internet auf den Ursprungsserver zuzugreifen. Je höher die Cachespeichertrefferrate ist, umso mehr werden die Wartezeiten beim Herunterladen von Internetseiten reduziert. Um eine hohe Cachespeichertrefferrate zu erreichen, müssen Proxycachespeicher einen großen Bestand an Clients bedienen. Andernfalls ist die Wahrscheinlichkeit, einen Cachespeichertreffer zu erhalten, das heißt ein Dokument anzufordern, das zuvor von einem anderen Client angefordert wurde, relativ niedrig. Cachespeichertrefferraten können 50% erreichen bei großen Proxyinstallationen, die vielfache Einrichtungen bedienen. Zusätzlich zu der Reduktion der vom Benutzer wahrgenommenen Wartezeiten reduzieren Proxies die Belastung auf den Ursprungswebservern.

Neben der Verbesserung der Benutzerwahrnehmung stellen Webproxyserver den Clients einen indirekten Internetzugang zur Verfügung. Als Ergebnis davon sind die Clientmaschinen vor einem breiten Spektrum von aus dem Internet stammenden Angriffen geschützt. In solchen Konfigurationen ist die Verwendung des Webproxy der einzige Weg, um auf das Internet zuzugreifen: alle Clientmaschinen werden hinter eine Firewall gestellt, die konfiguriert ist, um Clients daran zu hindern, auf Server außerhalb des Intranets des Unternehmens oder des Campus zuzugreifen. Der Webproxyserver wird mit Hilfe von speziellen Host-Konfigurationen und Firewalls vor Internetangriffen geschützt. Der Webproxyserver ist typischerweise eine Einzweckmaschine, die die Firewallkonfiguration vereinfacht: nur HTTP-Datenverkehr ist von/zu dem Webproxyserver erlaubt.

Andere vernetzte Anwendungen, wie zum Beispiel Media Player oder E-Mail-Clients wurden verändert, um diese auf Proxy basierte Sicherheitsarchitektur auszunutzen und HTTP als ein Transportprotokoll zu verwenden. Als Ergebnis davon wird ein bedeutsames Maß des Clientverkehrs durch den lokalen Webproxy geleitet, oder kann es werden. In dem Maße wie die Verfügbarkeit von Bandbreite und lokaler Cachespeicher des Clients zunehmen und mehr Websites Verfahren zur Reduzierung der Wartezeit, wie zum Beispiel Content Distribution Networks (CDN) verwenden, nimmt der Wert, Webproxies als Cachespeicher zu verwenden, ab. Jedoch werden die sicherheitsbedingten Nutzen der Verwendung von Webproxies zunehmend offensichtlich, da Proxies auf Anwendungsebene das einzige realistische Verfahren darstellen, das eine tief gehende Prüfung des Netzwerkverkehrs, das heißt der Nutzlast für Webproxyserver ermöglicht.

Unabhängig davon wurde eine neue Kategorie von Proxies auf Anwendungsebene entwickelt, um mobile Vorrichtungen mit eingeschränkten Ressourcen zu unterstützen. Proxies zur Codeumwandlung, die Browsern für PDAs/Smart Phones dabei helfen, um Internetinhalte auf kleinen Bildschirmen anzuzeigen, sind wahrscheinlich das am besten bekannte Beispiel in dieser Kategorie. Außerdem stellen Webproxycachespeicher mehr Nutzen für drahtlose Clients zur Verfügung als für Arbeitsplatzclients (Desktops), weil mobile Clients kleinere lokale Cachespeicher aufweisen als Arbeitsplatzclients und drahtlose Verbindungen höhere Wartezeiten und geringere Bandbreite aufweisen als drahtgebundene LAN Verbindungen. Vor kurzem sind Proxies zur Codeumwandlung daraufhin erweitert worden, Multimediadatenströme an die Fähigkeiten von mobilen Clients anzupassen oder die Energie zu reduzieren, die verbraucht wird, um die Datenströme abzuspielen. Zusammenfassend wird erwartet, dass Proxies auf Anwendungsebene, im Besonderen HTTP-Proxies, eine zunehmend wichtige Rolle spielen werden bei der Unterstützung von mobilen drahtlosen Clients mit eingeschränkten Ressourcen.

Die von mobilen Clients verbrauchte Energie zu reduzieren stellt eine sehr wichtige Aufgabenstellung dar, da die Batteriekapazität im Verlauf der letzten Jahre nicht in demselben Maße zugenommen hat wie die Leistungsfähigkeit der Vorrichtungskomponente selbst. Obwohl bedeutsame technologische Verbesserungen die von diesen Komponenten verbrauchte Leistung reduziert haben, reduzieren die meisten dieser Verbesserungen auch die Leistungsfähigkeit der Komponenten oder vermindern andere Merkmale des mobilen Systems, wie zum Beispiel die Ansprechempfindlichkeit. Zurzeit werden die Leistungsfähigkeiten von mobilen Vorrichtungen bedeutend durch die Kapazität ihrer Batterien eingeschränkt, und es wird nicht erwartet, dass die Beschränkungen in Bezug auf die Leistung in absehbarer Zeit verschwinden.

Die Verwendung eines Webproxy, um eingehenden WLAN Datenverkehr oder Codeumwandlung und Mediendatenströme auf eine leistungssparende Art zu formen, ermöglicht wesentliche Einsparungen in der von der WLAN Schnittstelle eines Clients oder der mobilen Client Vorrichtung verbrauchten Energie (siehe J. Clark et al, „System for low power operation of wireless LAN interfaces", US Patent Application, Docket #YOR9-2002-0230, Marcel C Rosu et al., „PAWP: A Power Aware Proxy for Wireless LAN Clients„, WMCSA 2004, English Lake District, 2.-3. Dezember 2004; und S. Mohapatra et al., „Integrated Power Management for Video Streaming to Mobile Handheld Devices", in Proceedings of ACM Multimedia 2003). Diese Ansätze konzentrieren sich auf einen Client, der eine Anwendung (Web-Browser oder Media Player) ausführt, und es gibt keine eindeutige Erweiterung dieser Ansätze auf mehrfache Anwendungen und mobile Clients.

Im Gegenteil, relativ wenig Arbeit ist ausgeführt worden für die Unterstützung einer Ansammlung von mobilen Vorrichtungen als Gruppe und in der Optimierung ihrer Verwendung von gemeinsam genutzten Ressourcen entsprechend Gruppenrichtlinien. Im Besonderen gibt es keine bekannten Verfahren für eine energiebewusste Disposition der gemeinsamen WLAN Bandbreite zwischen den mobilen Clients trotz der Tatsache, dass ein bedeutsamer Anteil der von den mobilen Clients verbrauchten Energie direkt oder indirekt mit der Datenkommunikation in Zusammenhang steht. Leider erfordert eine effiziente Planung des WLAN Verkehrs um eine signifikante Energieeinsparung zu ermöglichen weitergehende Informationen über die Clientkonfiguration, den gegenwärtigen Status, die Anwendung und die Nutzlast der Anwendung, als gegenwärtig verfügbar ist.

Die Verwendung von Transportattributen oder Attributen auf Netzwerkebene, wie zum Beispiel der IP Adresse des Clients oder der TCP/UDP Portnummer, um zwischen Benutzern oder Anwendungen zu unterscheiden, ist schwierig, da die Mehrheit des WLAN Verkehrs aus TCP Datenpaketen besteht, die HTTP Nutzlasten befördern, das heißt den TCP Port 80 verwenden. Neben Web-Browsern verwendet eine wachsende Anzahl von vernetzten Anwendungen, wie zum Beispiel Multimedia Streaming oder E-Mail-Clients HTTP, da dies die Konfiguration der Firewall beträchtlich vereinfacht; es wird erwartet, dass dieser Trend weitergeht. Außerdem stellt die dynamische Zuordnung von IP Adressen das bevorzugte Verfahren dazu dar, die Adressen von mobilen WLAN Clients zu verwalten, was es noch schwieriger macht, Attribute auf Netzwerkebene/Transportebene zu verwenden, um zwischen verschiedenen Anwendungen/Benutzern in dem WLAN zu unterscheiden. Es besteht daher ein Bedarf danach, Information auf Anwendungsebene zu verwenden, um Benutzer und Anwendungen zu identifizieren, die für die Netzwerkproxies verfügbar gemacht wird oder werden kann, die die Clientanwendungen unterstützen.

Leider wird auf der Anwendungsebene nicht genug Information über den gegenwärtigen Status des mobilen Clientsystems, wie zum Beispiel die Konfiguration seiner drahtlosen Schnittstelle, verfügbar gemacht. Deshalb besteht ein Bedarf daran, entweder vorhandene Clientprotokolle und Anwendungen zu verbessern, um solche zusätzlichen Clientinformation zur Verfügung zu stellen, oder neue Verfahren und eine Vorrichtung dafür zu entwerfen, diese Information dezentral von nicht modifizierten Clients zu erfassen.

Unter der Voraussetzung, dass genug Information über die Konfiguration und gegenwärtigen Status der mobilen Vorrichtungen erfasst wird, ist ein Bedarf erkannt worden in Verbindung mit der Bereitstellung eines Mechanismus, der die Verwendung von gemeinsam genutzten Ressourcen, wie zum Beispiel WLAN Bandbreite, auf eine Weise steuert, die Energieeinsparungen in all den gesteuerten Clientvorrichtungen fördert. Ohne solch einen Mechanismus kollidieren vorhandene Verfahren, die für eine einzelne Clientvorrichtung entwickelt wurden, die eine einzelne Anwendung ausführt, mit einander und versagen dabei, die erwarteten Energieeinsparungen zu ermöglichen. Deshalb ist ein Bedarf erkannt worden in Verbindung damit, den Energiegebrauch unter den mobilen Vorrichtungen in einer Gruppe nach zuvor festgelegten Gruppenrichtlinien zu optimieren.

Entsprechend mindestens einer derzeit bevorzugten Ausführungsform der vorliegenden Erfindung werden allgemein ein Verfahren und eine Vorrichtung betrachtet, die einen an ein dezentrales Netzwerk angeschlossen Computer umfassen, der Informationen über die Konfiguration eines drahtlosen Client und über den drahtlosen Zugangspunkt einholt. Beispiele für solche Konfigurationen umfassen die leistungsbezogenen Parameter des Clients, wie zum Beispiel die genauen Zeitpunkte, zu denen die drahtlose Schnittstelle des Clients aufwacht, um Signalisierungen von einem drahtlosen Zugangspunkt zu erhalten und den gegenwärtigen, auf die Energie bezogenen Status des Clients, wie zum Beispiel Batterie- und Anzeigehelligkeitspegel.

Zusammengefasst liefert ein Aspekt der Erfindung eine Vorrichtung dafür, den drahtlosen Datenkommunikationsverkehr für mindestens einen Client zu unterstützen, der mit einem Zugangspunkt kommuniziert und der zwischen einem Stromsparmodus und einem aktiven Modus wechselt, wobei die Vorrichtung nachfolgendes umfasst: eine Anordnung, um einen Client zu untersuchen und um seinen Status in Bezug auf die Datenkommunikation mit dem Zugangspunkt zu ermitteln; wobei die prüfende Anordnung geeignet ist, um mindestens eines der Folgenden ((a), (b) und (c)) auszuführen: (a) Ermitteln des Zeitpunkts des Erhalts einer anfänglichen Signalisierung an einem Client; (b) Ermitteln von mindestens einem Intervall, in dem aufeinander folgende Signalisierungen vom Client empfangen werden; und (c) Ermitteln eines Client-Timeout-Intervalls für das Verbleiben im aktiven Modus. Weiterhin wird die Vorrichtung erweitert, um eine Anordnung dafür zu umfassen, den drahtlosen Datenverkehr für mindestens einen Client mit Hilfe von mindestens einem der zuvor ermittelten Konfigurationsparameter festzulegen.

Ein anderer Aspekt der Erfindung stellt ein Verfahren zur Verfügung, den drahtlosen Datenkommunikationsverkehr für mindestens einen Client zu unterstützen, der mit einem Zugangspunkt kommuniziert und der zwischen einem Stromsparmodus und einem aktiven Modus wechselt, wobei das Verfahren die nachfolgenden Schritte umfasst: Überprüfen eines Clients, um seinen Status in Bezug auf die Datenkommunikation mit dem Zugangspunkt zu ermitteln; der Prüfschritt umfasst mindestens die Ausführung eines der Folgenden (a), (b) und (c): (a) Ermitteln des Zeitpunkts des Erhalts einer anfänglichen Signalisierung an einem Client; (b) Ermitteln von mindestens einem Intervall, in dem aufeinander folgende Signalisierungen vom Client empfangen werden; und (c) Ermitteln eines Client-Timeout-Intervalls für das Verbleiben im aktiven Modus.

Weiterhin stellt ein zusätzlicher Aspekt der Erfindung eine maschinenlesbare Programmspeichervorrichtung zur Verfügung, die zugreifbar ein Programm aus Anweisungen enthält, die von der Maschine ausführbar sind, um Verfahrensschritte zur Unterstützung des drahtlosen Datenkommunikationsverkehrs für mindestens einen Client auszuführen, der mit einem Zugangspunkt kommuniziert und der zwischen einem Stromsparmodus und einem aktiven Modus wechselt, wobei das Verfahren die nachfolgenden Schritte umfasst: Überprüfen eines Clients, um seinen Status in Bezug auf die Datenkommunikation mit dem Zugangspunkt zu ermitteln; der Prüfschritt umfasst mindestens die Ausführung eines der Folgenden, (a), (b) und (c): (a) Ermitteln des Zeitpunkts des Erhalts einer anfänglichen Signalisierung an einem Client; (b) Ermitteln von mindestens einem Intervall, in dem aufeinander folgende Signalisierungen vom Client empfangen werden; und (c) Ermitteln eines Client-Timeout-Intervalls für das verbleiben im aktiven Modus.

Für ein besseres Verständnis der vorliegenden Erfindung, zusammen mit anderen Merkmalen und Vorzügen davon, wird auf die nachfolgende Beschreibung Bezug genommen, die in Verbindung mit den begleitenden Zeichnungen erstellt wurde, und der Schutzumfang der Erfindung wird in den anhängenden Ansprüchen aufgezeigt.

1 veranschaulicht eine Netzwerkumgebung, die einen energiebewussten Proxy verwendet, um Clientanwendungen zu unterstützen und den drahtlosen Clients den eingehenden Internetdatenverkehr zuzuordnen.

2 veranschaulicht das Verfahren zum Untersuchen eines für 802.11 freigegebenen drahtlosen Clients, um den Referenzzeitpunkt zu ermitteln, zu dem der Client eine Signalisierung empfängt.

3 veranschaulicht das Verfahren zum Untersuchen eines für 802.11 freigegebenen drahtlosen Clients, um das Zeitintervall zu ermitteln, in dem der Client Signalisierungen empfängt.

4 veranschaulicht das Verfahren zum Untersuchen eines für 802.11 freigegebenen drahtlosen Clients, um den Leerlauf-Timeout-Wert zu ermitteln, nach dem der Client von einem Zustand hoher Leistung zu einem Zustand geringer Leistung zurückkehrt.

Beschreibung der bevorzugten Ausführungsformen

1 veranschaulicht eine Netzwerkumgebung (100), in der drahtlose Clients (110)-(114) durch eine Vielfalt von Netzwerkkomponenten, wie zum Beispiel drahtlose Zugangspunkte (130) und (131), einen energiebewussten Proxyserver (140) und das Internet (150) mit Ursprungsservern (120)-(121) kommunizieren. Der Proxy (140) ist ein dezentral mit dem Netzwerk verbundener Computer, der Clientanwendungen unterstützt und eingehenden Internetdatenverkehr für die drahtlosen Clients (110)-(114) einplant.

Wie aus 1 ersehen werden kann, befindet sich der energiebewusste Proxy (140), welcher in dieser Fall Inhalt von oder zum Internet (150) akzeptiert oder zur Verfügung stellt, in Datenkommunikation mit einem oder mehreren drahtlosen Zugangspunkten (130) und (131), die selbst in Datenkommunikation mit verschiedenen drahtlosen Clients (110)-(114) stehen.

Im Folgenden wird der Begriff Proxy verwendet, um jeglichen dezentral mit dem Netzwerk verbundenen Computer außer dem Client selbst zu bezeichnen.

Auf dem Weg eines illustrativen und nicht einschränkenden Beispiels verwendet eine hierin angesprochene Anwendung die weit verbreitete 802.11 WLAN Technik. Die 802.11 Spezifikationen (siehe Teil 11, "Wireless LAN Medium Access Control [MAC] and Physical layer [PHY] Specifications", ANSI/IEEE Std 802.11, 1999) definieren zwei Energieverwaltungsmodi: den aktiven Modus und den Stromsparmodus. Im Stromsparmodus, welches die 802.11 Bezeichnung für Schlafmodus ist, verbraucht die WLAN Schnittstelle 5 bis 50-mal weniger Leistung als im aktiven Modus. Ein typischer WLAN Treiber schaltet die Schnittstelle nach einem Leerlaufintervall von etwa 100 ms in den Stromsparmodus. In solchen Konfigurationen variiert die von der WLAN Schnittstelle verbrauchte relative Leistung von 5 – 10 % in hochklassigen Laptops, bis zu mehr als 50 % in PDAs.

Der „diskontinuierliche" Charakter des geformten Datenverkehrs ermöglicht es, dass die WLAN Schnittstelle nach einem kürzeren Zeitintervall im Leerlauf sicher in den Stromsparmodus umschaltet, das heißt einen kleineren Timeout-Wert verwendet, was ihren Energieverbrauch reduziert. Auf Grund der schwer vorherzusagenden Beschaffenheit des eingehenden Datenverkehrs ist es ohne die Verwendung von Proxies nicht möglich, Energie durch das Reduzieren des Timeouts der Schnittstelle zu sparen, ohne den eingehenden Datenverkehr zu formen. Dieser vereinfachte Ansatz erhöht die Hin- und Rücklaufzeiten von TCP Verbindungen, was die Leistung von Clientanwendungen vermindert.

Auf dem Weg zusätzlicher Hintergrundinformation wendet sich die Offenlegung jetzt einem kurzen Überblick über die Energieverwaltungsmerkmale einer 802.11 Clientschnittstelle oder einer Station in einem Infrastrukturnetzwerk zu.

Der Modus der Energieverwaltung einer Station kann entweder aktiv oder energiesparend sein. Der Energiestatus einer Station kann entweder wach sein, wenn die Station vollständig betrieben wird, oder schlummern, wenn die Station sehr geringe Leistung verbraucht, aber nicht dazu in der Lage ist, Datenübertragungsblöcke zu empfangen oder zu senden. Im aktiven Modus ist die Station im wachen Zustand. In Stromsparmodus ist die Station typischerweise im Zustand des Schlummerns, wechselt aber in den wachen Zustand, um auf ausgewählte Signalisierungen zu horchen, die alle 102,4 ms von dem drahtlosen Zugangspunkt gesendet werden. Die Station wählt, wie oft sie aufwacht, um auf Signalisierungen zu hören, wenn sie sich mit dem Zugangspunkt verbindet. Der Übergang zwischen den Modi wird immer von der Station initiiert und erfordert einen erfolgreichen Austausch eines Datenübertragungsblocks mit dem Zugangspunkt.

Der Zugangspunkt puffert jeglichen anhängigen Datenverkehr für die Stationen, von denen bekannt ist, dass sie sich im Stromsparmodus befinden und alarmiert diese Stationen mit entsprechenden Signalisierungen. Wenn eine Station wahrnimmt, dass Datenübertragungsblöcke im Zugangspunkt anstehen, sendet sie eine Abfragenachricht an den Zugangspunkt. Die Station verbleibt im wachen Zustand, bis sie die Antwort auf ihre Abfrage erhält.

Die Antwort des Zugangspunkts auf die Abfrage ist entweder der nächste anstehende Datenübertragungsblock oder ein Datenübertragungsblock zur Bestätigung (ACK), der signalisiert, dass der Zugangspunkt die Übertragung des anstehenden Datenübertragungsblocks verschiebt und die Verantwortung dafür übernimmt, dessen Lieferung zu veranlassen. Die Station muss jeden erhaltenen Datenübertragungsblock bestätigen (einen ACK Datenübertragungsblock dafür senden). Wenn das More Data Feld des Datenübertragungsblocks zusätzliche anstehende Datenübertragungsblöcke anzeigt, kann die Station einen weiteren Abfragdatenübertragungsblock senden. Andernfalls kehrt die Station in den Energiezustand des Schlummerns zurück.

Der Energiemodus der Clientstation wird durch den WLAN Vorrichtungstreiber gesteuert. Die Station kann zu jedem beliebigen Zeitpunkt vom Stromsparmodus in den aktiven Modus umschalten, zum Beispiel nach dem Erhalt des ersten Datenübertragungsblocks vom Zugangspunkt, oder nach dem Senden eines Datenübertragungsblocks an den Zugangspunkt. Die Station schaltet zurück auf den Stromsparmodus um, nachdem für die Dauer eines vorher festgelegten Intervalls keine Datenübertragungsblöcke empfangen oder gesendet werden. Das Umschalten vom aktiven Modus in den Stromsparmodus verzögert den Empfang jeglicher Datenübertragungsblöcke bis nachdem die nächste Signalisierung empfangen wird.

Einen Client vom Stromsparmodus auf den aktiven Modus umzuschalten, um Datenübertragungsblöcke zu empfangen, ist vom Standpunkt der Leistung her gesehen sehr vorteilhaft, weil der Zugangspunkt im aktiven Modus die Datenübertragungsblöcke zum Client überträgt, sobald sie hereinkommen, während er sie im Stromsparmodus einreihen und darauf warten muss, bis der Client aufwacht. Leider muss der Client, um Veränderungen in der Zustellung von Datenübertragungsblöcken zu abzufangen, im aktiven Modus verbleiben während er auf weitere Daten wartet, wodurch Energie verschwendet wird. Daher ist es von einem Energiestandpunkt aus nie von Vorteil, in den aktiven Modus zu wechseln, außer wenn es bekannt ist oder stark erwartet wird, dass Daten in einer sehr hohen Rate hereinkommen.

Mit allem Vorangegangenen im Sinn werden entsprechend mindestens einer derzeit bevorzugten Ausführungsform der vorliegenden Erfindung Protokolle allgemein betrachtet, wie zum Beispiel diejenigen, die in den 2, 3 und 4 veranschaulicht sind. Besonders veranschaulichen die 2, 3 und 4Verfahren für das Untersuchen einer für 802.11 freigegebenen mobilen Vorrichtung, um mit ihrem Schnittstellenbetrieb zu synchronisieren, und um die Konfigurationsparameter ihrer WLAN Schnittstelle zu ermitteln, und im Besonderen die Zeitintervalle für das Zusammenwirken mit Signalisierungen zu ermitteln oder wie weiter oben erörtert in einem Energiesparmodus zu verbleiben. Die in den 2, 3 und 4 veranschaulichten Verfahren werden auf dem Proxy (140) ausgeführt.

Die 2, 3 und 4 veranschaulichen den Prozess zur Ermittlung der Signalisierungszeiten für eine Basisstation, des Signalisierungsintervalls oder dem Vielfachen davon für einen ermittelten WLAN Client und des Timeout-Intervalls des Clients. Im Folgenden wird angenommen, dass der WLAN Client konfiguriert ist, um den Stromsparmodus zu nutzen. Deshalb werden an den Client gesandte Datenpakete manchmal bis zu der nächsten Signalisierung in der Basisstation gepuffert, auf die zu hören der Client konfiguriert ist. Weiterhin wird angenommen, dass der Client immer sofort auf diese Untersuchungsdatenpakete antwortet. Antwortdatenpakete werden von der Basisstation nie verzögert. Datenpakete, die an den Client gesandte werden, wenn sich der Client im aktiven Modus befindet oder unmittelbar vor der Signalisierung, wenn der Client sich im Stromsparmodus befindet, lösen eine unmittelbare Antwort aus. Im Folgenden wird die von solch einer schnellen Antwort benötigte Zeitdauer mit min_rtt bezeichnet (was bezeichnet werden kann als „minimum round trip time" – minimale Zeit für Hin- und Rücklauf bei Beantwortung einer Anfrage). Ihr Wert kann vom Proxy mit Hilfe einer Serie von Datenpaketen an den Client ermittelt werden, von denen manche garantiert unmittelbar durch die Basisstation weitergeleitet werden, entweder weil der Client sich im aktiven Modus befindet oder weil sie zufällig unmittelbar gesendet werden, bevor eine Signalisierung gesendet wird. Auf Grund von sehr geringen Verzögerungen auf der MAC-Ebene bestehen die gemessenen min_rtt Werte eigentlich aus einer zufällig verteilten Erfassung von Werten mit einer unteren Grenze, die von der Größe der Untersuchungsdatenpakete, der WLAN Technologie und der verwendeten Basisstation ermittelt wird. Zusammenfassend wird jedes gemessene min_rtt (round trip time), das sehr nahe, innerhalb von einer oder zwei ms, an dieser Grenze ist, als ein min_rtt betrachtet.

2 veranschaulicht ein Verfahren (200) zur Untersuchung, um einen Parameter „Signalisierungszeit" zu ermitteln. Zu beachten ist, dass dieser Parameter die WLAN Basisstation charakterisiert und deshalb nur für den ersten Client ermittelt werden muss, der die Basisstation verwendet. Wie gezeigt, beginnt der Proxy mit dem Verfahren bei Schritt (210). Danach wird ein Untersuchungsdatenpaket an eine Vorrichtung gesandt, eine Antwort wird abgewartet und die Verzögerung der Antwort wird in Schritt (220) gemessen. Wenn die gemessene Verzögerung der Antwort nicht ungefähr dem zuvor in Schritt (230) ermittelten Parameter min_rtt gleich ist, dann wird vor dem Aussenden eines weiteren Untersuchungsdatenpakets in Schritt (220) die Verzögerung berechnet und in Schritt (240) wird ein Verzögerungsintervall durchlaufen. Wenn die Verzögerung der Antwort in Schritt (230) tatsächlich ungefähr gleich min_rtt ist, dann wird der resultierende Parameter beacon time in Schritt (250) aufgezeichnet.

3 veranschaulicht ein Verfahren (300) zur Untersuchung, um einen Parameter „Signalisierungsintervall" zu ermitteln. Wie gezeigt, beginnt der Proxy mit dem Verfahren bei Schritt (310). Danach wird ein Untersuchungsdatenpaket an eine Vorrichtung gesandt, eine Antwort wird abgewartet und die Verzögerung der Antwort wird in Schritt (320) gemessen. Wenn die gemessene Antwortverzögerung in Schritt (330) nicht ungefähr gleich min_rtt ist, dann wird ein neues Signalisierungsvielfaches gewählt, die erwartete Signalisierung wird berechnet, und die nächste Signalisierung wird in Schritt (340) abgewartet, bevor in Schritt (320) ein weiteres Untersuchungsdatenpaket ausgesandt wird. Wenn die Verzögerung der Antwort in Schritt (330) wirklich ungefähr gleich zu min_rtt ist, dann wird der resultierende Parameter beacon_interval in Schritt (350) aufgezeichnet.

In Wirklichkeit können die einzelnen Signalisierungen verzögert werden oder der Client kann vorübergehend im wachen Zustand sein, oder der Client ist nicht der erste Client, der gepufferte Datenpaketen vom Zugangspunkt erhält. Alle diese Effekte beeinflussen die Messung der beacon_time und des beacon_interval am Proxy in verfälschender Weise. Um diese Effekte aufzuheben, sollten die beacon_time und das beacon_interval mehrmals über einen verlängerten Zeitraum gemessen werden um zu ermitteln, ob die gemessenen Werte der beacon_time in Abständen von ganzen Vielfachen verteilt sind und das beacon_interval ein ganzes Vielfaches von 102,4 Millisekunden ist, welches das Intervall oder ein Vielfaches davon ist, mit dem Zugangspunkte die Signalisierung aussenden.

Die 4 veranschaulicht ein Verfahren (400) zur Untersuchen, um einen Parameter „idle timeout" zu ermitteln. Wie gezeigt, beginnt der Proxy mit dem Verfahren bei Schritt (410). Danach wird ein Datenpaketsendeintervall in Schritt (420) zuerst auf Null eingestellt, und dann werden in Schritt (430) zwei Untersuchungsdatenpakete ausgesandt. Die zwei Datenpaketen müssen auf einmal ausgesandt werden, wenn es bekannt ist, dass der Client eine Signalisierung empfangen wird, was auf Grundlage von den vorherigen zwei Messungen der beacon_time und das beacon interval ermittelt wird. Danach werden die Antworten auf die zwei Untersuchungsdatenpakete abgewartet und der Antwortverzögerungen werden, ebenfalls in Schritt (430) ausgeführt, gemessen. Wenn die in Schritt (440) gemessene Verzögerung der Antwort ungefähr gleich min_rtt ist, dann wird das Datenpaketsendeintervall erhöht und die nächste Signalisierung wird in Schritt (450) vor dem Senden von zwei weiteren Untersuchungsdatenpaketen in Schritt (430) erwartet. Das Sendeintervall wird gesteigert, bis die Antwortverzögerung nicht mehr länger ungefähr gleich min_rtt ist, wobei es an diesem Punkt in Schritt (460) ermittelt werden kann, dass der resultierende Parameter idle_timeout gleich dem Sendeintervall ist.

In Wirklichkeit können die individuellen Signalisierung verzögert werden oder der Client kann sich zeitweise im wachen Zustand befinden, oder der Client ist nicht der erste Client, der gepufferte Datenpakete vom Zugangspunkt erhält. All diese Effekte beeinflussen die Messung des idle_timeout am Proxy in verfälschender Weise. Um diese Effekte aufzuheben, sollte das idle_timeout über eine verlängerte Periode mehrmals gemessen werden um zu ermitteln, ob die gemessenen Werte des idle timeout wiederholbar sind.

Zusätzlich zu den Energiemodi und Stati der WLAN Schnittstelle berücksichtigt die vorliegende Erfindung vorzugsweise auch anderen leistungsbezogene Merkmale des WLAN Clients, wie zum Beispiel die Batterieleistung, den Energieabfluss aus der Batterie im Leerlauf, den Energieverbrauch der drahtlosen Schnittstelle und den Energieverbrauch des gesamten Clients und dessen Beziehung zu den Eigenschaften des eingehenden Datenverkehrs, wie zum Beispiel der Rate und der Unregelmäßigkeit.

Es muss verstanden werden, dass die vorliegende Erfindung in Übereinstimmung mit mindestens einer derzeit bevorzugten Ausführungsform eine Anordnung dazu umfasst, einen Client zu untersuchen, um seinen Status in Bezug auf die Datenkommunikation mit dem Zugangspunkt zu ermitteln, die auf zumindest einem allgemein verwendbaren Computer durchgeführt werden kann, der geeignete Anwendungsprogramme ausführt. Diese können auch in mindestens einer integrierten Schaltung oder einem Teil von mindestens einer integrierten Schaltung realisiert werden. Es ist daher zu verstehen, dass die Erfindung in Hardware, Software oder einer Kombination von beiden realisiert werden kann.

Wenn hierin nicht anders angegeben, ist es anzunehmen, dass alle Patente, Patentanmeldungen, Patentveröffentlichungen und andere Veröffentlichungen (einschließlich webbasierter Veröffentlichungen), die hierin erwähnt und angeführt sind, hiermit vollständig als Referenz hierin integriert sind, so als ob sie hierin in ihrer Gesamtheit ausgeführt wären.

Obwohl veranschaulichende Ausführungsformen der vorliegenden Erfindung hierin mit Bezug auf die begleitenden Zeichnungen beschrieben worden sind, ist es zu verstehen, dass die Erfindung nicht auf jene genauen Ausführungsformen beschränkt ist und dass verschiedene andere Änderungen und Modifikationen an diesen ausgeführt werden können von jemandem, der in der Technik ausgebildet ist, ohne vom Schutzumfang oder vom Geist dieser Erfindung abzuweichen.


Anspruch[de]
Eine Vorrichtung zur Unterstützung der Netzwerkdatenkommunikation für mindestens einen Client, der mit einem drahtlosen Zugangspunkt kommuniziert und wobei die drahtlose Schnittstelle des besagten Clients zwischen mindestens zwei Energiezuständen wechselt, wobei die besagte Vorrichtung nachfolgendes umfasst:

eine Anordnung, um die Konfiguration des besagten Clients für den Wechsel zwischen den besagten Energiezuständen zu ermitteln.
Vorrichtung nach Anspruch 1, wobei der besagte drahtlose Zugangspunkt periodische Signalisierungsnachrichten an den besagten Client sendet und

die besagte Anordnung geeignet ist, um mindestens eines der Folgenden, (a) und (b), auszuführen:

(a) Ermitteln des Zeitpunkts des Erhalts von mindestens einer Signalisierung an einem Client; und

(b) Ermitteln von mindestens einem Intervall, in dem vom Client aufeinander folgende Signalisierungen empfangen werden.
Vorrichtung nach Anspruch 1, wobei die besagten Zustände der besagten drahtlosen Schnittstelle einen Zustand geringer Leistung und einen Zustand hoher Leistung umfassen, und

besagte Anordnung geeignet ist, um ein Client-Timeout-Intervall für mindestens eines der Folgenden, (a), (b) und (c), zu ermitteln:

(a) Verbleiben in besagtem Zustand hoher Leistung;

(b) Verbleiben in wachem Zustand; und

(c) Verbleiben im aktiven Modus.
Vorrichtung nach Anspruch 2, wobei besagte Anordnung alles von (a) und (b) umfasst. Vorrichtung nach Anspruch 1, wobei der drahtlose Datenkommunikationsverkehr Internetdatenverkehr umfasst. Vorrichtung nach Anspruch 1, wobei der Zugangspunkt und die Clientschnittstelle 802.11 Technologien verwenden. Vorrichtung nach Anspruch 1, wobei besagte Anordnung geeignet ist, um den Zeitpunkt des Erhalts einer anfänglichen Signalisierung vor dem Erhalt von einer oder mehreren weiteren Signalisierungen an einem oder mehreren weiteren Clients einzig an einem Client zu ermitteln. Vorrichtung nach Anspruch 1, wobei besagte Anordnung geeignet ist, die Zeit des Erhalts einer anfänglichen Signalisierung zu ermitteln durch:

Senden eines Untersuchungsdatenpakets;

Messen einer Antwortverzögerung eines Clients im Anschluss an die Übertragung eines Untersuchungsdatenpakets; und

Fortfahren mit dem Messen von Antwortverzögerungen eines Clients im Anschluss an die Übertragung von zusätzlichen Untersuchungsdatenpaketen, bis die Antwortverzögerung im Wesentlichen gleich einer zuvor ermittelten minimalen Hin- und Rücklaufzeit ist.
Vorrichtung nach Anspruch 1, wobei besagte Anordnung geeignet ist, um mindestens ein Intervall zu ermitteln, in dem aufeinander folgende Signalisierungen vom Client empfangen werden durch:

Senden eines Untersuchungsdatenpakets;

Messen einer Antwortverzögerung eines Clients im Anschluss an die Übertragung eines Untersuchungsdatenpakets; und

Errechnen eines neuen Vielfachen der Signalisierung und Erwarten einer neuen Signalisierung, wenn die Antwortverzögerung nicht im Wesentlichen gleich einer vorher ermittelten minimalen Hin- und Rücklaufzeit ist; und

Fortfahren die Antwortverzögerung eines Clients im Anschluss an die Übertragung von zusätzlichen Untersuchungsdatenpaketen zu messen, bis die Antwortverzögerung im Wesentlichen gleich einer vorher ermittelten minimalen Hin- und Rücklaufzeit ist.
Vorrichtung nach Anspruch 1, wobei besagte Anordnung geeignet ist, um ein Clientzeitintervall für das Verbleiben im aktiven Modus zu ermitteln durch:

Senden eines Paars von Untersuchungsdatenpaketen;

Messen einer Antwortverzögerung eines Clients im Anschluss an die Übertragung eines Untersuchungsdatenpakets;

Einstellen eines Datenpaketsendeintervalls und Erwarten einer neuen Signalisierung, wenn die Antwortverzögerungen nicht im Wesentlichen gleich einer vorher ermittelten minimalen Hin- und Rücklaufzeit sind; und

Fortfahren die Antwortverzögerungen eines Clients im Anschluss an die Übertragung von zusätzlichen Untersuchungsdatenpaketen zu messen, bis die Antwortverzögerung im Wesentlichen gleich einer vorher ermittelten minimalen Hin- und Rücklaufzeit ist.
Verfahren zur Unterstützung der Netzwerkdatenkommunikation für mindestens einen Client, der mit einem drahtlosen Zugangspunkt kommuniziert und wobei die drahtlose Schnittstelle des besagten Clients zwischen mindestens zwei Energiezuständen wechselt, wobei das besagte Verfahren den nachfolgenden Schritt umfasst:

Ermitteln der Konfiguration des besagten Clients für den Wechsel zwischen den besagten Leistungszuständen.
Verfahren nach Anspruch 11, wobei besagter drahtloser Zugangspunkt periodische Signalisierungsnachrichten an besagten Client sendet und wobei besagte Ermittlung der Konfiguration von besagtem Client die Ausführung von mindestens einem der Folgenden, (a) und (b), umfasst:

(a) Ermitteln des Zeitpunkts des Erhalts von mindestens einer Signalisierung an einem Client; und

(b) Ermitteln von mindestens einem Intervall, in dem aufeinander folgende Signalisierungen vom Client empfangen werden.
Verfahren nach Anspruch 11, wobei besagte Zustände besagter drahtloser Schnittstelle einen Zustand geringer Leistung und einen Zustand hoher Leistung umfassen und besagtes Ermitteln der Konfiguration des besagten Clients das Ermitteln eines Client-Timeout-Intervalls für mindestens eines der Folgenden, (a), (b) und (c), umfasst:

(a) Verbleiben in besagtem Zustand hoher Leistung;

(b) Verbleiben in wachem Zustand; und

(c) Verbleiben im aktiven Modus.
Verfahren nach Anspruch 12, wobei besagtes Ermitteln der Konfiguration des besagten Clients alles von (a) und (b) umfasst. Verfahren nach Anspruch 11, wobei der drahtlose Datenkommunikationsverkehr Internetdatenverkehr umfasst. Verfahren nach Anspruch 11, wobei der Zugangspunkt eine 802.11 Clientschnittstelle umfasst. Verfahren nach Anspruch 11, wobei besagte Ermittlung der Konfiguration des besagten Clients die Ermittlung des Zeitpunktes des Erhalts einer anfänglichen Signalisierung vor dem Erhalt von einer oder mehreren weiteren Signalisierungen an einem oder mehreren weiteren Clients einzig an einem Client umfasst. Verfahren nach Anspruch 11, wobei besagte Ermittlung der Konfiguration des besagten Clients die Ermittlung des Zeitpunkts des Erhalts einer anfänglichen Signalisierung umfasst durch:

Senden eines Untersuchungsdatenpakets;

Messen einer Antwortverzögerung eines Clients im Anschluss an die Übertragung eines Untersuchungsdatenpakets; und

Fortfahren mit dem Messen von Antwortverzögerungen eines Clients im Anschluss an die Übertragung von zusätzlichen Untersuchungsdatenpaketen, bis die Antwortverzögerung im Wesentlichen gleich einer zuvor ermittelten minimalen Hin- und Rücklaufzeit ist.
Verfahren nach Anspruch 11, wobei besagtes Ermitteln der Konfiguration des besagten Clients das Ermitteln von mindestens einem Intervall, in dem aufeinander folgende Signalisierungen von dem Client empfangen werden umfasst, durch:

Senden eines Untersuchungsdatenpakets;

Messen einer Antwortverzögerung eines Clients im Anschluss an die Übertragung eines Untersuchungsdatenpakets;

Errechnen eines neuen Vielfachen der Signalisierung und Erwarten einer neuen Signalisierung, wenn die Antwortverzögerung nicht im Wesentlichen gleich einer vorher ermittelten minimalen Hin- und Rücklaufzeit ist; und

Fortfahren die Antwortverzögerungen eines Clients im Anschluss an die Übertragung von zusätzlichen Untersuchungsdatenpaketen zu messen, bis die Antwortverzögerung im Wesentlichen gleich einer vorher ermittelten minimalen Hin- und Rücklaufzeit ist.
Verfahren nach Anspruch 11, wobei besagtes Ermitteln der Konfiguration des besagten Clients das Ermitteln eines Clientzeitintervalls für das Verbleiben im aktiven Modus umfasst durch:

Senden eines Paars von Untersuchungsdatenpaketen;

Messen einer Antwortverzögerung eines Clients im Anschluss an die Übertragung einer Untersuchungsdatenpakets;

Einstellen eines Datenpaketsendeintervalls und Erwarten einer neuen Signalisierung, wenn die Antwortverzögerungen nicht im Wesentlichen gleich einer vorher ermittelten minimalen Hin- und Rücklaufzeit sind; und

Fortfahren die Antwortverzögerungen eines Clients im Anschluss an die Übertragung von zusätzlichen Untersuchungsdatenpaketen zu messen, bis die Antwortverzögerung im Wesentlichen gleich einer vorher ermittelten minimalen Hin- und Rücklaufzeit ist.
Maschinenlesbare Programmspeicheranordnung, die zugreifbar ein Programm aus Anweisungen enthält, die durch die Maschine ausführbar sind, um Verfahrensschritte auszuführen, um die Netzwerkdatenkommunikation für mindestens einen Client zu unterstützen, der mit einem drahtlosen Zugangspunkt kommuniziert und wobei die drahtlose Schnittstelle des besagten Clients zwischen mindestens zwei Energiezuständen wechselt, wobei besagtes Verfahren die nachfolgenden Schritte umfasst:

von der besagten Maschine in Bezug auf die Datenkommunikation mit dem Zugangspunkt die Konfiguration der drahtlosen Schnittstelle des besagten Clients zu ermitteln; wobei besagter Schritt die Ausführung von mindestens einem aus den Folgenden, (a), (b), (c), (d) und (e), umfasst:

(a) Ermitteln des Zeitpunkts des Erhalts von mindestens einer Signalisierung an einem Client;

(b) Ermitteln von mindestens einem Intervall, in dem aufeinander folgende Signalisierungen vom Client empfangen werden;

(c) Ermitteln eines Client-Timeout-Intervalls für das Verbleiben in besagtem Zustand hoher Leistung;

(d) Ermitteln eines Client-Timeout-Intervalls für das Verbleiben im wachen Zustand; und

(e) Ermitteln eines Client-Timeout-Intervalls für das Verbleiben im aktiven Modus.
Vorrichtung nach Anspruch 1, die weiterhin eine Anordnung dafür umfasst, den drahtlosen Datenkommunikationsverkehr zu mindestens einem Client basierend auf mindestens einem der ermittelten Konfigurationsparameter einzuplanen. Vorrichtung nach Anspruch 22, wobei besagte Anordnung für die Einplanung des drahtlosen Datenkommunikationsverkehrs geeignet ist, um Datenverkehr basierend auf allen der ermittelten Konfigurationsparameter einzuplanen. Vorrichtung nach Anspruch 1, wobei besagte Anordnung für das Ermitteln der Konfiguration des besagten Clients eine Untersuchung mit Datenpaketen verwendet. Verfahren nach Anspruch 11, wobei besagter Schritt für das Ermitteln der Konfiguration des besagten eine Untersuchung mit Datenpaketen verwendet. Programmspeichervorrichtung nach Anspruch 21, wobei besagte Verfahrensschritte das Senden von Untersuchungsdatenpaketen von besagter Maschine an besagten Client, den Empfang von Untersuchungsantworten und das Messen von Verzögerungen umfassen, um die besagte Konfiguration des besagten Clients zu ermitteln.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com