-
Die vorliegende Erfindung betrifft Vorrichtungen, Verfahren und Computerprogramme zum Steuern der Rate übertragener Daten.
-
Die Entwicklung der Standards von IEEE 802.11 (auch als ”Wi-Fi” bekannt) stellt der Bitübertragungsschicht (PHY) immer weiter zunehmenden Durchsatz bereit. Zum Beispiel gibt IEEE 802.11n einen maximalen Durchsatz von 600 Mbps. Obwohl die PHY ausgelegt ist, mit einem hohen Durchsatz umzugehen, können aufgrund von begrenzter Puffergröße und Verarbeitungsleistung in der Anwendungsschicht in bestimmten Vorrichtungen (z. B. in Low-Power-Mobilvorrichtungen) Perioden mit hochratigen ankommenden Daten Pufferüberläufe (Datenverlust) in der Funksicherungsschicht in der empfangenen Vorrichtung verursachen.
-
Zu plötzlichen Anstiegen der Datenrate können mehrere Faktoren beitragen. Zum Beispiel eine plötzliche Verbesserung der Signalstärke (z. B. wenn sich eine Station zu einem Ort mit Sichtlinienkanal bewegt) und eine plötzliche Verringerung des Verkehrs (wodurch ein ”stilles” drahtloses Medium erzeugt wird) zu anderen Stationen im selben Versorgungsgebiet.
-
Die Pufferüberläufe und der assoziierte Datenverlust in der Sicherungsschicht (engl. link layer) können Neuübertragungen höherer Schichten verursachen, wodurch Spektrum/Leistungseffizienz unnötigerweise verringert werden.
-
Es gibt in der Technik eine Anzahl von Verfahren, die versuchen, Datenflusssteuerung zu implementieren, um das oben erwähnte Problem zu behandeln. Zum Beispiel werden durch den Standard IEEE 802.11 Mechanismen bereitgestellt, die Stromspartechniken umfassen, die verwendet werden können, um Flusssteuerung zu implementieren. Die Station, die Pufferüberlauf in der ankommenden Warteschlange erfährt, geht in den Schlafmodus; dadurch wird dann erzwungen, dass der Peer das Senden von Paketen stoppt (Übertragungs-Torschaltung). Dieser Mechanismus führt ein Signalisierungsoverhead ein, wenn angesagt wird, dass die Station in den Schlafmodus geht oder aufwacht. Darüber hinaus vergrößert die Paketübertragungs-Torschaltung Latenz und verringert die Datenrate auf einen unnötig niedrigen Wert. In einem kurzen Zeitraum beobachtet vergrößert dieser Mechanismus die ”Stoßhaftigkeit” (engl. burstiness) des Verkehrs.
-
Eine andere vorbekannte Lösung für das oben erwähnte Problem umfasst das Abwerfen von empfangenen Rahmen. Dies löst jedoch nicht unbedingt das Problem, da die Neuübertragung immer, noch Pufferüberlauf verursachen kann, wenn die Datenraten-Anstiegsperiode lang ist.
-
Somit wird ein Mechanismus benötigt, der dabei helfen kann, Datenflusssteuerung zu verbessern, und eine effizientere Benutzung von Spektrum und Leistung gewährleistet. Ausführungsformen der vorliegenden Erfindung können dabei helfen, Vorrichtungen, Verfahren und Computerprogramme für verbesserte Datenflusssteuerung bereitzustellen, die zumindest teilweise dabei helfen können, die oben erwähnten Probleme zu überwinden.
-
Gemäß einer ersten Ausführungsform der Erfindung wird eine Kommunikationsvorrichtung bereitgestellt, die in der Lage ist, über eine Kommunikationsverbindung Daten von einer sendenden Vorrichtung zu empfangen, wobei die Kommunikationsvorrichtung einen Puffer umfasst und in der Lage ist, in Abhängigkeit von einer Kapazität des Puffers, über die Kommunikationsverbindung empfangene Daten unterzubringen, Informationen zu erzeugen, um die sendende Vorrichtung zu veranlassen, ihre Datenübertragungsrate zu ändern, wobei die Informationen eine Änderung einer Fähigkeit der Kommunikationsvorrichtung, Daten über die Kommunikationsverbindung zu empfangen, imitieren.
-
Die Informationen können dergestalt sein, dass Kommunikation zwischen der Kommunikationsvorrichtung und der sendenden Vorrichtung gemäß einem Sicherungsschichtprotokoll (engl. link layer protocol) gesteuert wird.
-
Die Kommunikationsvorrichtung kann ausgelegt sein, gemäß einem Funkprotokoll oder dem Sicherungsschichtprotokoll zu arbeiten, wobei die Informationen Kommunikation zwischen der Kommunikationsvorrichtung und der sendenden Vorrichtung gemäß dem Funk- oder Sicherungsschichtprotokoll steuern.
-
Gemäß dem Protokoll können die Informationen zur Steuerung von Dienstgüte oder Strahlformung (engl. beamforming) konfiguriert werden.
-
Die Informationen können von einer Modulations- und/oder Codierungsfähigkeit der Kommunikationsvorrichtung abhängig sein.
-
Die Informationen können von einem Modulations- und/oder Codierungsschema abhängig sein.
-
Die Änderung der Fähigkeit kann ein Vergrößern oder Verkleinern des Modulations- und/oder Codierungsschemas umfassen.
-
Die Informationen können von einer Leistungsfähigkeit der Kommunikationsvorrichtung und/oder der Kommunikationsverbindung abhängig sein.
-
Die Informationen können von einem Rauschabstand der Kommunikationsverbindung abhängig sein.
-
Die Änderung der Fähigkeit kann ein Vergrößern oder Verkleinern einer Angabe des Rauschabstands umfassen.
-
Die Kapazität des Puffers zum Unterbringen von über die Kommunikationsverbindung empfangenen Daten kann von einer oder mehreren der folgenden Alternativen abhängig sein: Datenübertragungsrate der sendenden Vorrichtung; Eingangsdatenrate am Puffer; Ausgangsdatenrate am Puffer; und verfügbarer Platz im Puffer.
-
Die Kapazität des Puffers zum Unterbringen von über die Kommunikationsverbindung empfangenen Daten kann in Abhängigkeit von der Vorhersage von Pufferunterlauf oder -überlauf bestimmt werden.
-
Die Kapazität des Puffers zum Unterbringen von über die Kommunikationsverbindung empfangenen Daten kann in Abhängigkeit von dem Vergleich der Datenübertragungsrate und einer oder der Ausgangsdatenrate zur Bestimmung des verfügbaren Pufferplatzes bestimmt werden.
-
Die Kommunikationsvorrichtung kann so konfiguriert werden, dass, wenn die Datenübertragungsrate größer als die Ausgangsdatenrate ist, die Informationen eine Änderung einer Fähigkeit der Kommunikationsvorrichtung imitieren, um eine Verringerung der Datenübertragungsrate zu veranlassen; und wenn die Datenübertragungsrate kleiner als die Ausgangsdatenrate ist, die Informationen eine Änderung einer Fähigkeit der Kommunikationsvorrichtung imitieren, um eine Vergrößerung der Datenübertragungsrate zu veranlassen.
-
Die Kommunikationsvorrichtung kann ausgelegt werden, die Informationen zu der sendenden Vorrichtung zu senden.
-
Die Kommunikationsverbindung kann drahtlos sein.
-
Gemäß einer zweiten Ausführungsform der Erfindung wird ein Verfahren zum Betreiben eines Empfängers bereitgestellt, wobei der Empfänger einen Puffer umfasst, wobei das Verfahren umfasst: Empfangen von Daten von einer sendenden Vorrichtung über eine Kommunikationsverbindung; Erzeugen von Informationen in Abhängigkeit von der Kapazität des Puffers, über die Kommunikationsverbindung empfangene Daten unterzubringen, wobei die Informationen eine Änderung einer Fähigkeit des Empfängers, Daten über die Kommunikationsverbindung zu empfangen, imitieren; und Senden der Informationen zu der sendenden Vorrichtung, wobei die Informationen die sendende Vorrichtung dazu veranlassen, ihre Datenübertragungsrate zu ändern. Es kann ein Computerprogramm zum Betreiben eines Empfängers bereitgestellt werden, wobei das Computerprogramm Codemittel umfasst, die, wenn sie durch einen Computer ausgeführt werden, bewirken, dass der Computer die in dem Verfahren beschriebenen Schritte ausführt.
-
Zum besseren Verständnis der vorliegenden Erfindung wird beispielhaft auf die folgenden Zeichnungen verwiesen. Es zeigen:
-
1 einen Graph der PHY-Datenrate als Funktion des SNR;
-
2 die Interaktion zwischen einer sendenden Kommunikationsvorrichtung und einer empfangenden Kommunikationsvorrichtung;
-
3 eine Warteschlangen-Größenkurve;
-
4 Kurven der TX-Datenrate, des Host-Durchsatzes und der Differenz der Raten;
-
5 eine Kurve von MCS-Rückmeldung;
-
6 ein Beispiel für einen Prozess zum Implementieren von Datenflusssteuerung; und
-
7 ein Beispiel für ein drahtloses Netz.
-
In der folgenden ausführlichen Beschreibung werden zahlreiche spezifische Einzelheiten dargelegt, um ein umfassendes Verständnis bestimmter Ausführungsformen zu gewährleisten. Für Fachleute ist jedoch verständlich, dass bestimmte Ausführungsformen ohne diese spezifischen Einzelheiten ausgeübt werden können. Im Folgenden werden Vorrichtungen, die die Standards IEEE 802.11n und IEEE 802.11ac (zurzeit im Entwurf) benutzen, als Beispiel zur Beschreibung bestimmter Ausführungsformen der vorliegenden Erfindung verwendet. Die Erfindung kann durch andere Arten von Vorrichtungen implementiert werden, die andere Verfahren, Standards oder Protokolle zur Kommunikation verwenden.
-
Eine Kommunikationsvorrichtung, zum Beispiel eine Station (STA) oder ein Zugangspunkt (AP), kann Daten von einer sendenden Vorrichtung, zum Beispiel einem AP oder einer STA, empfangen. Die Vorrichtungen können über einen Kommunikationskanal oder eine Kommunikationsverbindung (zum Beispiel ein drahtloses Medium) kommunizieren, der bzw. die durch die PHY bereitgestellt wird. Bei dem Standard IEEE.802.11n und dem IEEE 802.11ac (Entwurf) gibt es Rückmeldungsmechanismen, die benutzt werden können, um ein Mittel zum Durchführen von Kanal-Verbindungsanpassung, d. h. adaptive Modulation und Codierung (AMC), bereitzustellen. Für eine STA oder einen AP, die bzw. der auf die Rückmeldung reagiert, kann eine Korrelation zwischen der Verbindungsdatenrate und der Rückmeldung bestehen. Diese auf Rückmeldung basierende Verbindungsanpassung kann auf eine neue Weise als Flusssteuermechanismus verwendet werden. Wenn sich zum Beispiel die Kapazität (d. h. die Fähigkeit oder Kondition) des Puffers, über eine Kommunikationsverbindung empfangene Daten unterzubringen, ändert, kann eine zu der sendenden Vorrichtung gesendete Rückmeldung verwendet werden, um die Rate zu justieren, mit der die sendende Vorrichtung Daten sendet. Die Rate, mit der Daten durch die sendende Vorrichtung gesendet werden, kann somit von der Kapazität des Puffers abhängig sein. Wenn der Puffer eine niedrigere Kapazität zum Unterbringen von empfangenen Daten aufweist, zum Beispiel wenn ein Zustand des Pufferüberlaufs (der durch übermäßige PHY-Datenrate verursacht werden kann) durch eine empfangende Vorrichtung vorhergesagt oder gemessen wird, kann eine Rückmeldung zu der Peer-STA bzw. dem Peer-AP gesendet werden, um die ankommende Datenrate zu begrenzen.
-
Die Rückmeldungsmechanismen können als Informationen oder Daten in Teilen von Rahmen repräsentiert werden, die während der Kommunikation zwischen Vorrichtungen gesendet werden. Durch Justieren der Informationen, die Datenwerte oder Parameter sein können, ist es möglich, einen Flusssteuermechanismus bereitzustellen. Solche Informationen müssen nicht unbedingt mit Flusssteuerung assoziiert sein, sondern können stattdessen mit anderen Aspekten der Steuerung der Kommunikation zwischen Vorrichtungen assoziiert sein. Solche Justierungen können jedoch benutzt werden, um ein effizientes Verfahren zur Flusssteuerung bereitzustellen. Zum Beispiel werden Informationen wie etwa ein SNR-Wert, der gemäß einem Kommunikationsprotokoll zur Steuerung der Strahlformung verwendet wird, auf andere Weise benutzt werden, um Flusssteuerung zu implementieren. Die Rückmeldungsmechanismen, die verwendet werden könnten, können auf der Leistungsfähigkeit oder Fähigkeit der Kommunikationsverbindung und/oder der Leistungsfähigkeit oder Fähigkeit der Daten empfangenden Vorrichtung basieren. Die Informationen können auf einer Kenngröße oder Kapazität oder einem Parameter oder einer Kondition der Kommunikationsvorrichtung und/oder einer Eigenschaft der Kommunikationsverbindung basieren.
-
Die hier beschriebenen Flusssteuermechanismen können in Vorrichtungen implementiert werden, die gemäß einem Kommunikationsprotokoll arbeiten, wie etwa IEEE 802.11n. Die Flusssteuermechanismen können Merkmale des Kommunikationsprotokolls (die nicht mit Flusssteuerung gemäß dem Kommunikationsprotokoll assoziiert sein müssen) verwenden, um Flusssteuerung zu implementieren. Eine empfangende Vorrichtung, die einen der hier beschriebenen Flusssteuermechanismen ausführt, kann Flusssteuerung auf einer beliebigen sendenden Vorrichtung implementieren, die gemäß demselben Kommunikationsprotokoll arbeitet. Die empfangende Vorrichtung kann Merkmale des Kommunikationsprotokolls (z. B. Merkmale, die nicht mit Flusssteuerung gemäß dem Kommunikationsprotokoll assoziiert sein müssen) verwenden, um die sendende Vorrichtung dahingehend zu täuschen oder zu manipulieren, Flusssteuerung zu implementieren.
-
Einer der Rückmeldungsmechanismen, die benutzt werden können, ist das Meldesubfeld für den Rauschabstand (SNR) in dem Meldefeld für die Kanalzustandsinformationen (CSI) (definiert in IEEE 802.11n-2009 7.3.1.27, wovon erwartet wird, dass es in dem Standard IEEE 802.11ac gleich bleibt). Bei dem Standard IEEE 802.11n wird das CSI-Meldefeld verwendet, um eine Strahlformungs-Rückmeldematrix zur Sendestrahlformung zu berechnen. Jedes SNR-Meldefeld (für einen bestimmten Raum-Zeit-Strom) kann ein 8-Bit-Wert im Bereich von –10 dB bis 53,75 dB mit einem Schritt von 0,25 dB sein. Es kann eine Beziehung zwischen dem SNR und der PHY-Datenrate hergestellt werden. Diese Beziehung kann eine Berechnung entsprechender SNR-Werte und Rücksenden dieser zu der Peer-STA bzw. dem Peer-AP für gegebene PHY-Datenraten erlauben.
-
Gemäß der Shannon-Kapazitätsgleichung kann eine direkte Beziehung zwischen SNR und PHY-Datenrate hergestellt werden, d. h. kann ein bestimmter SNR eine maximale theoretische Datenrate gewährleisten. Unter Verwendung der Shannon-Kapazitätsgleichung mit Backoff (Justierung zur Widerspiegelung realistischer FEC-Codierung) und eines gegebenen Übertragungsformats, das in der PHY-Spezifikation definiert wird, kann die Beziehung von Datenrate als Funktion von SNR unter Verwendung der folgenden Gleichung geschätzt werden:
T = 11,7·log2(1 + 100,088·γ) – 14,74, wobei γ der SNR in dB und T die Übertragungsrate in Mbps ist.
-
Als Alternative kann die Beziehung der Datenrate als Funktion des SNR linearisiert werden, um eine einfachere Weise zur Schätzung des SNR-Werts zur Entsprechung mit einem Ziel für den ankommenden Durchsatz bereitzustellen. Die linearisierte Gleichung lautet wie folgt:
T = 3,16·γ – 9,59, wobei γ der SNR in dB und T die Übertragungsrate in Mbps ist.
-
1 zeigt einen Graph der Beziehung der PHY-Datenrate als Funktion des SNR auf der Basis sowohl der Gleichung für die Shannon-Kapazität (als Shannon-Kapazität mit Backoff bezeichnet) als auch der linearisierten (linear angepassten) Gleichung. Die gemessene PHY-Datenrate als Funktion des SNR ist auch in
1 gezeigt. Das Messergebnis ist in der folgenden Tabelle enthalten. Wie in der Tabelle gezeigt, können Werte für den Rauschabstand auf Werte für die Datenübertragungsrate abgebildet werden. Die Kurven auf dem Graph zeigen, dass beide Schemata (Shannon-Kapazität und linearisiert) die gemessene Datenrate auf der Basis des SNR genau schätzen. Somit ist es möglich, die SNR-Rückmeldung zu benutzen, um einen Ratenanpassungsmechanismus bereitzustellen.
SNR | 4,25 | 6,75 | 8,75 | 11,75 | 14,25 | 18,25 | 19,75 | 21 |
Rate (Mbps) | 5,85 | 11,7 | 17,55 | 23,40 | 35,1 | 46,8 | 52,65 | 58,5 |
-
Eine Art zur Implementierung dieses Mechanismus besteht darin, dass, wenn ein Pufferüberlaufzustand durch eine Daten von einem AP empfangende STA gemessen oder vorhergesagt wird, die STA einen geeigneten SNR-Wert bestimmen kann, der verschlechterte Funkzustände imitiert (z. B. so, als ob Störungen auf der Kommunikationsverbindung bestünden) und den bestimmten SNR-Wert als Teil der CSI-Meldung zu dem AP sendet. Dies bewirkt, dass der AP sich so verhält, als hätten sich die Funkbedingungen verschlechtert, wodurch der AP seine Datenübertragungsrate (gemäß seinem Kommunikationsprotokoll, zum Beispiel IEEE 802.11n) verringert. Anders ausgedrückt, verhält sich oder funktioniert der AP so, als wäre die Fähigkeit der STA zum Empfangen von Daten auf der Kommunikationsverbindung verringert, und verringert somit seine Datenübertragungsrate. Dies hilft dabei, den Verlust von Daten zu verhindern, wenn die ankommende Datenrate am Puffer verringert ist, wodurch die Möglichkeit des Pufferüberlaufs verringert wird. Ähnlich kann die STA auch verbesserte Funkbedingungen imitieren, wenn Pufferunterlauf besteht, um die Rate des Flusses von Daten von dem AP zu vergrößern. Auch wenn sich die tatsächlichen Funkbedingungen nicht geändert haben, kann die STA somit durch Imitieren einer Änderung der Funkbedingungen (z. B. verschlechterte oder verbesserte Funkbedingung) eine Änderung der Rate des Flusses von Daten von dem AP steuern oder veranlassen. Eine empfangende Vorrichtung kann somit in der Lage sein, Informationen so zu erzeugen, dass das Imitieren einer Verringerung des SNR eine Verringerung der Datenübertragungsrate einer sendenden Vorrichtung veranlasst und das Imitieren einer Vergrößerung des SNR eine Vergrößerung der Datenübertragungsrate einer sendenden Vorrichtung veranlasst.
-
Ein anderer Rückmeldungsmechanismus, der benutzt werden kann, ist das Subfeld für Rückmeldung des Modulations- und Codierungsschemas (MCS) und Antennenauswahlbefehl/Daten (MFB/ASELC), das in dem Steuerfeld für hohen Durchsatz (HT) (definiert in IEEE 802.11n-2009 7.3.1.5a und IEEE 802.11-10/1361r3 für 11ac), enthalten ist. Das HT-Steuerfeld kann in einem Steuer-Wrapper-Rahmen und in Dienstgüte-(QoS-)Daten- und Verwaltungsrahmen vorhanden sein. Das MFB ist ein 7-Bit-Feld, das das maximale MCS enthält, das eine STA bzw. ein AP unterstützen kann. Der MCS-Rückmeldungsteil des HT-Steuerfelds muss nicht für Flusssteuerung bestimmt gewesen sein, aber durch Imitieren einer Änderung des MCS ist es möglich, Flusssteuerung bereitzustellen. Somit kann eine Vorrichtung die Eigenschaften oder Fähigkeiten einer anderen Vorrichtung imitieren, um Flusssteuerung bereitzustellen.
-
Für Einzelstrommodulationen mit 20 MHz Kanalbandbreite und einem normalen Schutzintervall zeigt die folgende Tabelle den Index von PHY-Datenrate als Funktion von MCS. Die Indizes 8 und 9 in der Tabelle sind Erweiterungen gemäß der PHY-Entwurfsspezifikation 802.11ac (
Tabelle 22–25 in IEEE 802.11-10/1361r3) für dieselbe Bandbreitenoption. Die Tabelle kann ferner erweitert werden, um mehrere räumliche Stromfälle und andere Kanalbandbreiten zu unterstützen. Unter Verwendung dieser Tabelle ist es möglich, den MCS-Index zur Erzielung einer Ziel-PHY-Datenrate zu berechnen. Wie in der Tabelle gezeigt, können Werte für den Modulations- und Codierungsindex auf Werte für die Datenübertragungsrate abgebildet werden. Der MFB-Rückmeldungsmechanismus kann eine explizitere Flusssteuerung als die SNR-Rückmeldung bereitstellen.
MCS-Index | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Rate (Mbps) | 6,5 | 13,0 | 19,5 | 26,0 | 39,0 | 52,0 | 58,5 | 65,0 | 78,0 | 86,7 |
-
Wenn zum Beispiel ein Pufferüberlaufzustand in einer Daten von einem AP empfangenden STA gemessen oder vorhergesagt wird, kann die STA einen geeigneten MCS-Wert bestimmen, der eine Verringerung des MCS, das die empfangende Vorrichtung unterstützen kann, imitiert, und den bestimmten MCS-Wert als Teil des HT-Steuerfelds zu dem AP senden. Dies führt den AP dazu, sich so zu verhalten, als hätten sich Modulation und/oder Codierung und/oder Anzahl der räumlichen Kanäle, die durch die STA unterstützt werden, geändert, wodurch bewirkt wird, dass der AP seine Datenübertragungsrate ändert (gemäß seinem Kommunikationsprotokoll, zum Beispiel IEEE 802.11n). Anders ausgedrückt, kann der AP so funktionieren, als wäre die Fähigkeit oder Kapazität der STA zum Empfangen von Daten verringert, und verringert somit seine Datenübertragungsrate. Dies hilft dabei, den Verlust von Daten zu verhindern, wenn die ankommende Datenrate in dem Puffer verringert ist, wodurch die Möglichkeit von Pufferüberlauf verringert wird. Ähnlich kann die STA auch verbesserte MCS-Fähigkeit imitieren, wenn Pufferunterlauf besteht, um die Rate des Flusses von Daten von dem AP zu vergrößern. Selbst wenn die tatsächliche MCS-Fähigkeit der STA sich nicht geändert hat, kann die STA somit durch Imitieren einer Änderung des unterstützten MCS eine Änderung der Rate des Flusses von Daten von dem AP steuern oder veranlassen. Informationen auf der Basis einer Modulations- und/oder Codierungsfähigkeit der Kommunikationsvorrichtung können somit verwendet werden, um eine Änderung der Fähigkeit der Vorrichtung, Daten zu empfangen, zu imitieren. Die Kommunikationsvorrichtung kann in der Lage sein, Informationen so zu erzeugen, dass das Imitieren einer Verringerung des MCS eine Verringerung der Datenübertragungsrate einer sendenden Vorrichtung veranlasst und das Imitieren einer Vergrößerung des MCS eine Vergrößerung der Datenübertragungsrate einer sendenden Vorrichtung veranlasst.
-
Die Rate, mit der Daten von einer sendenden Vorrichtung übertragen werden, kann auf dem Modulations- und Codierungsindex oder dem Rauschabstand basieren. Entweder unter Verwendung der SNR- oder der MCS-Rückmeldung kann ein geeigneter Rückmeldungswert berechnet werden, um die PHY-Datenrate als den Zielwert zu setzen. Eine solche Flusssteuerung in offener Schleife kann eine Annahme verwenden, dass die Beziehung von Rückmeldungswert zu Datenrate bekannt ist und dass die Peer-STA bzw. der Peer-AP auf derselben Basis auf die Rückmeldung reagieren wird. Ein alternatives Verfahren, das benutzt wird, ist ein Steuerschema mit geschlossener Schleife, d. h. Vergrößern des Rückmeldungs-SNR oder MCS, wenn der Empfänger eine höhere Datenrate von dem Sender wünscht, und Verringern des Rückmeldungs-SNR oder -MCS, wenn der Empfänger eine niedrigere Datenrate von dem Sender wünscht. Diese Alternative kann beim Gewährleisten von Kompatibilität zwischen Vorrichtungen von verschiedenen Händlern praktikabler sein, wobei die Auswahl einer TX-Datenrate durch den Sender auf der Basis des Rückmeldungs-MCS oder -SNR möglicherweise dem Empfänger nicht exakt bekannt ist.
-
2 zeigt ein Beispiel für eine Interaktion zwischen einer sendenden STA bzw. einem sendenden AP (TX-STA) 21 und einer empfangenden STA bzw. einem empfangenden AP (RX-STA) 22 bei einem Steuerschema mit geschlossener Schleife. Die TX-STA 21 sendet eine Protokolldateneinheit (PDU) 23 mit einer bestimmten (als TX-Datenrate definierten) Rate und reagiert auf die Rückmeldung von der RX-STA 22 durch Justieren des bei der Übertragung verwendeten MCS (was zu einer Justierung der TX-Datenrate führt). Der Einfachheit halber wird angenommen, dass die RX-STA 22 jede PDU korrekt empfängt und sie an eine Warteschlange (d. h. einen Puffer) 24 mit begrenzter Größe im Hinblick auf PDU und Speichergröße abliefert. Die RX-STA 22 verarbeitet die PDU 23 von dem Kopf der Warteschlange 24 an mit einer bestimmten Rate (definiert als Host-Durchsatz). Wenn die Warteschlange 24 voll ist, kann keine PDU in die Warteschlange 24 eingefügt werden. Die RX-STA 22 kann den Fluss von Daten zum Beispiel durch Messen der empfangenen PDU-Größe und des Übertragungsintervalls überwachen und kann potentiellen Warteschlangenüberlauf durch Vergleichen der TX-Datenrate und des Host-Durchsatzes vorhersagen. Sobald ein bestimmter Grad der Fehlanpassung zwischen TX-Datenrate und Host-Durchsatz detektiert wird, kann die RX-STA 22 MCS-Rückmeldung (zum Beispiel vergrößern oder verkleinern des MCS um eins) senden, um die TX-Datenrate zu steuern. Wenn die TX-STA 21 eine neue MCS-Rückmeldung empfängt, kann sie dieses MCS beginnend mit der nächsten Übertragung verwenden.
-
In diesem Beispiel wird MCS-Rückmeldung benutzt. MCS-Rückmeldung kann jedoch zur SNR-Rückmeldung äquivalent sein. Zum Beispiel kann für eine TX-STA, die eine Verbindungsanpassungsregel zur Auswahl von MCS verwendet, eine Abbildung von SNR auf MCS verwendet werden, die der RX-STA bekannt ist.
-
Der Fluss von Daten über den Puffer kann durch die RX-STA bestimmt werden.
-
Dies kann dabei helfen, die Kapazität des Puffers, über die Kommunikationsverbindung empfangene Daten unterzubringen, zu bestimmen, woraus Flusssteuerung implementiert werden kann, indem die geeigneten Informationen (z. B. ein Wert des SNR oder MCS) erzeugt und gesendet werden. Somit kann die Kondition oder der Zustand des Puffers zur Implementierung von Flusssteuerung bestimmt werden. Die Flussbedingungen von Warteschlange (oder Puffer) können wie in dem obigen Beispiel beschrieben vorhergesagt werden. Die Datenübertragungsrate der TX-STA und der Host-Durchsatz (d. h. die Ausgangsdatenrate des Puffers, die zum Beispiel durch die Rate bestimmt werden kann, mit der die TX-STA Daten verarbeiten kann) können der RX-STA bekannt sein. Die RX-STA ist in der Lage, die Datenübertragungsrate und den Host-Durchsatz zu vergleichen, um die Flussbedingung des Puffers zu bestimmen. Wenn zum Beispiel die Datenübertragungsrate größer als der Host-Durchsatz ist, kann die RX-STA in der Lage sein, zu bestimmen, dass die Pufferwarteschlange zunimmt, was zu Pufferüberlauf führen kann, und sie kann somit die entsprechende Rückmeldung zu der TX-STA senden, um die Datenübertragungsrate zu verringern. Die Rate, mit der die TX-STA Daten sendet, kann zum Beispiel aufgrund von Störungen auf der Kommunikationsverbindung von der in dem Puffer empfangenen Eingangsdatenrate verschieden sein. Somit kann die RX-STA (zum Beispiel durch Messung) die Eingangsdatenrate am Puffer bestimmen und sie mit der Ausgangsdatenrate vergleichen, um die Flussbedingung des Puffers wie oben beschrieben zu bestimmen. Zusätzlich oder als Alternative kann die RX-STA den verfügbaren Platz in dem Puffer bestimmen. Dies kann zum Beispiel durch Messen der Menge von Platz in dem Puffer erfolgen, oder, wenn die Puffergröße bekannt ist, durch Messen der Menge von Daten in dem Puffer. Wenn die Puffergröße bekannt ist, kann der verfügbare Platz bestimmt werden, indem man die Eingangsdatenrate und die Ausgangsdatenrate von da an misst, wenn der Puffer beginnt, Daten zu empfangen. Das Bestimmen oder Messen des Platzes in dem Puffer oder das Vergleichen der Datenflussraten sind Verfahren, die verwendet werden können, um die Kapazität des Puffers zu bestimmen, über eine Kommunikationsverbindung empfangene Daten unterzubringen. Das Bestimmen der Kapazität des Puffers, über eine Kommunikationsverbindung empfangene Daten unterzubringen, umfasst das Vergleichen der übertragenen Datenrate oder der Eingangsdatenrate und des Host-Durchsatzes (d. h. der Ausgangsdatenrate), um dabei zu helfen, potentiellen Pufferüberlauf oder -unterlauf vorherzusagen. Die geeigneten Informationen (z. B. ein Wert des SNR oder MCS) können als Reaktion auf die Kapazität des Puffers, Daten unterzubringen, berechnet oder erzeugt werden, um Flusssteuerung zu implementieren. Zum Beispiel kann der Puffer eine vergrößerte Kapazität, Daten unterzubringen, aufweisen, wenn die Rate, mit der Daten von dem Puffer ausgegeben werden, größer als die ist, mit der sie am Puffer eingegeben werden.
-
Die Informationen (z. B. ein Wert des SNR oder MCS) können eine Änderung der Fähigkeit der RX-STA, Daten über die Kommunikationsverbindung zu empfangen, imitieren. Die Informationen können ein Wert sein, der die Fähigkeit oder Kapazität der RX-STA und/oder der Kommunikationsverbindung angibt. Die Informationen können durch die RX-STA erzeugt werden. Die erzeugten Informationen können zu der TX-STA gesendet werden. Die Informationen können einmal erzeugt und einmal gesendet werden, um eine Änderung der Fähigkeit der RX-STA, Daten über die Kommunikationsverbindung zu empfangen, zu imitieren. Das Imitieren einer Änderung der Fähigkeit der RX-STA, Daten über die Kommunikationsverbindung zu empfangen, kann durch einmaliges Senden der Informationen erzielt werden. Die Informationen können in einem einzigen Datenpaket gesendet werden. Zum Beispiel können die Informationen ein SNR-Wert sein, der eine Änderung des Zustands der Kommunikationsverbindung (zum Beispiel eine Verschlechterung der Funkbedingungen) imitiert. Ein einzelnes Datenpaket, das den SNR-Wert umfasst, kann eine Änderung der Fähigkeit der RX-STA, Daten über die Kommunikationsverbindung zu empfangen, imitieren. Dies erlaubt der TX-STA, ihre Datenübertragungsrate schnell und effizient zu ändern, da die RX-STA die Informationen nicht mehrmals senden muss, um eine Änderung der Fähigkeit der RX-STA, Daten über die Kommunikationsverbindung zu empfangen, zu imitieren. Außerdem muss die RX-STA möglicherweise auch die Informationen nicht mehrmals mit einer bestimmten Rate senden, um eine Änderung der Fähigkeit der RX-STA, Daten über die Kommunikationsverbindung zu empfangen, zu imitieren. Die Änderung der Fähigkeit der RX-STA, Daten über die Kommunikationsverbindung zu empfangen, kann somit der TX-STA bekannt sein, sobald sie die Informationen empfängt, statt dass die TX-STA auf mehrere Nachrichten von der RX-STA warten muss, um eine Änderung der Fähigkeit zu bestimmen. Die RX-STA und die TX-STA können gemäß einem standardisierten Protokoll arbeiten. Die Informationen können eine Änderung der Fähigkeit der RX-STA, Daten über die Kommunikationsverbindung zu empfangen, dadurch imitieren, dass sie dergestalt formatiert werden, dass sie ein Informationsfeld repräsentieren, das in dem Protokoll dafür ausgewiesen ist, eine Angabe der Fähigkeit oder Kapazität der RX-STA und/oder der Kommunikationsverbindung zu repräsentieren. Vorzugsweise imitieren die Informationen eine Netto-Fähigkeit oder -Kapazität der RX-STA und/oder der Kommunikationsverbindung über die Zeit hinweg im Gegensatz zu einer augenblicklichen Fähigkeit oder Kapazität in Bezug auf eine einzelne Nachrichteneinheit. Die Informationen können Fähigkeit oder Kapazität durch die Übertragung einer einzigen Nachricht angeben. Vorzugsweise unterstützt die Verbindung zusätzlich ein Bestätigungsprotokoll, wodurch die RX-STA Bestätigungsnachrichten senden kann, um den Empfang von Daten zu bestätigen, wobei solche Bestätigungen von den Informationen distinkt sind.
-
In einem Beispiel sind in 3, 4 und 5 Kurven gezeigt, um die Effekte von Rückmeldung für eine simulierte Interaktion zwischen einer TX-STA und einer RX-STA unter Verwendung des MCS-Rückmeldungsschemas mit geschlossener Schleife zu zeigen. 3 zeigt eine Kurve des Warteschlangenstatus (Warteschlangengröße), 4 zeigt die Momentan-TX-Datenrate und den Momentan-Host-Durchsatz und 5 zeigt die MCS-Rückmeldung.
-
Aus den Kurven von 3, 4 und 5 ist ersichtlich, dass Flusssteuerung stattfindet. Das anfängliche MCS wird auf den maximalen unterstützten Wert gesetzt, um eine maximale TX-Datenrate zu geben, und der Host-Durchsatz beträgt 40 Mbps. Die anfängliche TX/RX-Datenratendifferenz bewirkt, dass sich die Warteschlange aufbaut. Wenn die Fehlanpassung detektiert wird, verringert die RX-STA den MCS-Index um einen Schritt auf einmal, bis Übereinstimmung mit dem TX-Datenraten-Host-Durchsatz erreicht ist. Um die PHY-Datenrate zu maximieren, vergrößert die RX-STA das MCS um einen Schritt auf einmal, wenn sie detektiert, dass die TX-Datenrate unter dem Host-Durchsatz liegt. Wenn die Flusssteuerung stabil wird, wird eine Oszillation der MCS-Rückmeldung merklich, da die Quantisierung des MCS zu grob sein kann, um die Fehlanpassung zwischen der Momentan-TX-Datenrate und dem Host-Durchsatz zu vermeiden.
-
Unter Verwendung von Verbindungsanpassungsrückmeldung kann Flusssteuerung auf elegantere Weise durchgeführt werden und Inkrement- und Dekrement-Justierung der PHY-Datenrate erzielen. Im Vergleich zu Rahmenabwerf- oder anderen Verfahren ist das Rückmeldungsschema proaktiver und besitzt bessere quantitative Steuerung. Kombiniert mit einem Überlaufprädiktionsverfahren können mit hoher Wahrscheinlichkeit unnötige Neuübertragungen und Pufferüberlauf vermieden werden. Die auf Rückmeldung basierende Flusssteuerung kann darüber hinaus dabei helfen, einen Unterlaufzustand zu vermeiden.
-
6 zeigt schaubildhaft einen beispielhaften Prozess, bei dem eine empfangende Vorrichtung (wie etwa ein STN oder AP) einen Flusssteuermechanismus bereitstellen kann.
-
Im Schritt 601 empfängt die empfangende Vorrichtung Daten von einer sendenden Vorrichtung. Die Daten können in einem Puffer empfangen werden und werden zur Verarbeitung durch einen Prozessor in eine Warteschlange eingereiht. Die Rate, mit der die Daten am Puffer empfangen werden (d. h. die Eingangsdatenrate), kann bestimmt werden. Die Kapazität des Puffers, Daten zu empfangen oder unterzubringen, kann durch Vergleichen der Eingangsdatenrate mit der Rate, mit der der Prozessor die in Warteschlangen eingereihten Daten verarbeitet (d. h. der Ausgangsdatenrate oder dem Host-Durchsatz), bestimmt werden. Die Kapazität des Puffers, Daten zu empfangen oder unterzubringen, kann durch andere Verfahren bestimmt werden, zum Beispiel durch Bestimmen des verfügbaren Pufferplatzes.
-
Im Schritt 602 wird die Fähigkeit des Puffers, Daten unterzubringen, durch Vergleichen der Eingangsdatenrate und der Ausgangsdatenrate bestimmt. Die Kapazität des Puffers, Daten unterzubringen, kann wie oben beschrieben durch andere Verfahren bestimmt werden. Wenn die Eingangsdatenrate größer als die Ausgangsdatenrate ist, geht der Prozess zu Schritt 603 über. Wenn die Eingangsdatenrate kleiner als die Ausgangsdatenrate ist, geht der Prozess zu Schritt 604 über.
-
Im Schritt 603 werden Informationen erzeugt, die eine Verringerung der Fähigkeit der empfangenden Vorrichtung, Daten über eine Kommunikationsverbindung zu empfangen, imitieren. Dies kann dabei helfen, Verlust von Daten aufgrund eines vollen Puffers zu vermeiden. Im Schritt 604 werden Informationen erzeugt, die eine Zunahme der Fähigkeit der empfangenden Vorrichtung, Daten über eine Kommunikationsverbindung zu empfangen, imitieren. Dies kann dabei helfen, die Rate zu optimieren, mit der Daten gesendet und empfangen werden. Die erzeugten Informationen können eine imitierte Änderung des MCS- oder SNR-Werts wie oben beschrieben sein. Der Prozess geht dann von Schritt 603 oder 604 aus zu Schritt 605 über.
-
Im Schritt 605 können die imitierten Informationen in der nächsten eingeteilten Übertragung, die von der Art erzeugter Informationen und dem Kommunikationsprotokoll abhängen kann, zu der sendenden Vorrichtung gesendet werden. Die sendende Vorrichtung kann dann ihre Datenübertragungsrate gemäß den von der empfangenden Vorrichtung empfangenen Informationen ändern oder justieren. Die sendende Vorrichtung kann dann die geänderte oder justierte eigene Datenübertragungsrate aufrechterhalten, bis weitere solche Informationen empfangen werden.
-
Der Prozess kann periodisch wiederholt werden, oder kontinuierlich, als Reaktion auf Änderungen des Pufferzustands oder als Reaktion auf Änderungen in dem drahtlosen Netz. Der Prozess kann helfen, Pufferüberlauf oder -unterlauf, der durch Faktoren verursacht wird, die eine Änderung der PHY-Datenrate oder eine Änderung des Host-Durchsatzes bewirken, zu negieren. Zum Beispiel kann sich eine mobile empfangende Vorrichtung in eine Sichtlinien-Position oder eine nähere Position mit Bezug auf die sendende Vorrichtung bewegen. Dies kann zu einer Zunahme der PHY-Datenrate führen, die größer als der Host-Durchsatz sein kann. Die empfangende Vorrichtung kann durch Implementieren des obigen Prozesses dabei helfen, Pufferüberlauf (der einen Verlust von Daten verursachen kann) zu verhindern. In einem anderen Beispiel kann der Host-Durchsatz (zum Beispiel weil wenigere Anwendungen den Prozessor benutzen, was zu einer größeren Verfügbarkeit des Prozessors führt) zunehmen, wodurch Pufferunterlauf verursacht werden kann. Durch Implementieren des obigen Prozesses kann die empfangende Vorrichtung dabei helfen, Pufferunterlauf (der eine ineffiziente Nutzung von Ressourcen wäre) zu verhindern.
-
7 ist ein Blockdiagramm, das ein drahtloses Netz 700 abbildet. Das drahtlose Netz 700 umfasst ein Computersystem, wie etwa eine empfangende Vorrichtung 701, auf der eine Ausführungsform der Erfindung implementiert sein kann. Die empfangende Vorrichtung 701 umfasst einen Bus 702 oder einen beliebigen anderen Kommunikationsmechanismus zum Übermitteln von Informationen und einen mit dem Bus 702 gekoppelten Prozessor 703 zum Verarbeiten von Informationen. Die empfangende Vorrichtung 701 umfasst außerdem einen Speicher 704, wie etwa einen Direktzugriffsspeicher (RAM) oder eine andere dynamische Speichervorrichtung, der bzw. die mit dem Bus 702 gekoppelt ist, um Informationen und Anweisungen zur Ausführung durch den Prozessor 703 zu speichern. Der Speicher 704 kann auch zum Speichern von temporären Variablen oder anderen Zwischeninformationen während der Ausführung von Anweisungen zur Ausführung durch den Prozessor 703 verwendet werden. Der Speicher 704 kann ferner einen Nurlesespeicher (ROM) oder eine andere statische Speichervorrichtung zum Speichern von statischen Informationen und Anweisungen für den Prozessor 703 umfassen. Eine Speichervorrichtung 705, wie etwa ein nichtflüchtiger Speicherchip, ein magnetischer Datenträger oder optischer Datenträger, kann zum Speichern von Informationen und Anweisungen vorgesehen und mit dem Bus 702 gekoppelt sein. Außerdem kann eine sendende Vorrichtung 706 mit ähnlichen Merkmalen wie die Empfangsvorrichtung 701 in dem Netz 700 vorgesehen sein.
-
Die Erfindung kann mit der Verwendung der empfangenden Vorrichtung 701 und/oder der sendenden Vorrichtung 706 zum Implementieren der hier beschriebenen Techniken in Beziehung gesetzt werden. Gemäß einer Ausführungsform der Erfindung werden diese Techniken durch die empfangende Vorrichtung 701 als Reaktion darauf, dass der Prozessor 703 eine oder mehrere Sequenzen einer oder mehrerer in dem Speicher 704 enthaltener Anweisungen ausführt, durchgeführt. Diese Anweisungen können aus einem computerlesbaren Medium, wie etwa der Speichervorrichtung 705, in den Speicher 704 eingelesen werden. Die Ausführung der Sequenzen von in dem Speicher 704 enthaltenen Anweisungen bewirkt, dass der Prozessor 703 die hier beschriebenen Prozessschritte ausführt. Bei alternativen Ausführungsformen können festverdrahtete Schaltkreise anstelle von Softwareanweisungen oder in Kombination mit diesen verwendet werden, um die Erfindung zu implementieren. Somit sind Ausführungsformen der Erfindung nicht auf irgendeine spezifische Kombination von Hardwareschaltkreisen und Software beschränkt.
-
Die empfangende Vorrichtung 701 und die sendende Vorrichtung 706 umfassen außerdem eine mit dem Bus 702 gekoppelte drahtlose Kommunikationsschnittstelle 707. Die drahtlose Kommunikationsschnittstelle 707 stellt eine bidirektionale Datenkommunikationskopplung zwischen der empfangenden Vorrichtung 701 und der sendenden Vorrichtung 706 (und beliebigen anderen Vorrichtungen, die Teil des drahtlosen Netzes 700 sein können) bereit. Die empfangende Vorrichtung 701 und die sendende Vorrichtung 706 können über eine drahtlose Kommunikationsschnittstelle 207 (die Zugang zu einer drahtlosen Kommunikationsverbindung oder einem Medium bereitstellt) Code oder Daten zueinander senden/empfangen. Die empfangende Vorrichtung 701 und die sendende Vorrichtung 706 können unter Verwendung eines drahtlosen Protokolls, wie etwa IEEE 802.11, drahtlos kommunizieren.
-
Die drahtlose Kommunikationsschnittstelle 707 der empfangenden Vorrichtung 701 und der sendenden Vorrichtung 706 kann einen Puffer 708 umfassen. Die empfangenen Daten oder der empfangene Code können am Eingang des Puffers empfangen werden. Der Ausgang des Puffers kann über einen Bus 702 mit dem Prozessor 703 gekoppelt sein. Der Prozessor 703 kann Daten verarbeiten, die von dem Puffer 708 ausgegeben werden.
-
In einem Beispiel kann der Prozessor 703 der empfangenden Vorrichtung 701 die Rate, mit der er Daten aus dem Ausgang des Puffers 708 verarbeitet, bestimmen und die Ausgangsrate mit der Rate vergleichen, mit der Daten am Eingang des Puffers 708 empfangen werden, um den Zustand oder die Kapazität des Puffers zu analysieren. Aus dem Vergleich kann der Prozessor Anweisungen für die drahtlose Kommunikationsschnittstelle 707 der empfangenden Vorrichtung 701 erzeugen und senden, um Informationen zu senden, die eine Änderung der Fähigkeit der empfangenden Vorrichtung 701, Daten zu empfangen, imitieren. Diese Informationen werden dann über die drahtlose Kommunikationsverbindung zu der sendenden Vorrichtung 706 gesendet. Die sendende Vorrichtung 706 verarbeitet diese Informationen dann in ihrem Prozessor 703 und sendet dann auf der Basis der Informationen Anweisungen zu ihrer drahtlosen Kommunikationsschnittstelle 707, um ihre Datenübertragungsrate entsprechend zu justieren.
-
Der Anmelder offenbart hiermit isoliert jedes hier beschriebene einzelne Merkmal und eine beliebige Kombination von zwei oder mehreren solcher Merkmale, soweit solche Merkmale oder Kombinationen auf der Basis der vorliegenden Beschreibung als Ganzes im Hinblick des üblichen Allgemeinwissens eines Fachmanns ausgeführt werden können, gleichgültig, ob solche Merkmale oder Kombinationen von Merkmalen irgendwelche hier offenbarten Probleme lösen und ohne Beschränkung des Schutzumfangs der Ansprüche. Die Anmelder geben an, dass Aspekte der vorliegenden Erfindung aus einem beliebigen solchen Merkmal oder einer beliebigen Kombination von Merkmalen bestehen können. Im Hinblick auf die obige Beschreibung ist Fachleuten ersichtlich, dass verschiedene Modifikationen vorgenommen werden können, ohne von dem Schutzumfang der Erfindung abzuweichen.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- Standards von IEEE 802.11 [0002]
- IEEE 802.11n [0002]
- Standard IEEE 802.11 [0005]
- Standards IEEE 802.11n [0033]
- IEEE 802.11ac [0033]
- Standard IEEE.802.11n [0034]
- IEEE 802.11ac [0034]
- IEEE 802.11n [0036]
- IEEE 802.11n-2009 7.3.1.27 [0037]
- Standard IEEE 802.11ac [0037]
- Standard IEEE 802.11n [0037]
- IEEE 802.11n [0041]
- IEEE 802.11n-2009 7.3.1.5a [0042]
- IEEE 802.11-10/1361r3 für 11ac) [0042]
- Tabelle 22–25 in IEEE 802.11-10/1361r3 [0043]
- IEEE 802.11n [0044]
- IEEE 802.11 [0062]