-
GEBIET
-
Eine oder mehrere Ausführungsformen betreffen im allgemeinen das Feld drahtloser Kommunikation. Genauer betreffen eine oder mehrere Ausführungsformen ein Verfahren und eine Vorrichtung für Blockbestätigungen mit verringerter Zustandsinformation des Empfängers.
-
HINTERGRUND
-
Jede drahtlose Nahbereichsnetzwerk (WLAN - Wireless Local Area Network)-Vorrichtung, die einen 802.11-Standard des Institute for Electrical and Electronic Engineers (IEEE) unterstützt (z.B. IEEE Std. 802.1-1997, 802.11a, 802.11e, usw.) enthält zwei Hauptteile: 1) eine Steuervorrichtung für die Meldungen einer physikalischen (PHY) Schicht; und 2) eine Vorrichtung für die Medienzugriffssteuerung (MAC - Medium Access Control). Die Funktion der PHY-Vorrichtung besteht darin, Datenpakete über die Sendeschnittstelle zu übertragen. Unter anderem besteht die Funktion der MAC-Vorrichtung darin, den Zugriff auf die gemeinsam genutzte Sendeschnittstelle gerecht zu steuern.
-
Das minimale MAC-Protokoll besteht aus zwei Frames: 1) einem Frame, der von einem Sender an einen Empfänger geschickt wird; und 2) eine Bestätigung (ACK - Acknowledgement) von dem Empfänger, daß der Frame richtig empfangen wurde. Wenn ein Sender mehrere Pakete hat, die an den Empfänger zu schicken sind, erfordern es einige Versionen des Standards 802.11, daß der Sender nach dem Senden jedes Paketes auf eine ACK wartet. Zusätzlich muß der Sender ein bestimmtes Zeitintervall, das als Interframe Space (IFS) bezeichnet wird, nach dem Empfang der ACK und vor dem Senden des nächsten Paketes warten.
-
Andere Versionen des Standards 802.11 (z.B. der IEEE Std. 802.11e) unterstützen das Senden von Paketen mit selektiver Bestätigung. Dieses Merkmal wird als „Block ACK“ bezeichnet. Das Merkmal Block ACK ermöglicht es dem Sender, das nächste Paket an denselben Empfänger zu senden, ohne daß notwendigerweise auf eine ACK gewartet würde. Statt dessen sendet nach dem Verhandeln über den Zugriff auf die Sendeschnittstelle der Sender das erste Paket, wartet nach dem Ende des ersten Pakets einen Interframe Space (IFS) lang und sendet das nächste Paket. Nachdem der Sender alle seine Pakete an den Empfänger gesendet hat, bittet der Sender den Empfänger um eine Antwort, welche eine ACK für alle zuvor gesendeten Pakete angibt.
-
Der Block ACK (BA)-Mechanismus, der durch den Standard 802.11e zur Verfügung gestellt wird, wird hierin als der „unmittelbare BA-Mechanismus“ bezeichnet. Der unmittelbare BA-Mechanismus, der von dem Standard 802.11e zur Verfügung gestellt wird, ist wesentlich für das Realisieren der Durchsatzerhöhungen, die bei 802.1 In erwartet werden. Die vorliegenden Protokolle jedoch legen den Vorrichtungen, die dieses optionale Merkmal unterstützen, große Speicheranforderungen auf. Das unmittelbare BA-Protokoll erlaubt es einem Anfragesteller, einen Block aus Datenframes an einen Empfänger zu senden und dann Bestätigung für den Block anzufragen. Um dies zu tun, unterhält der Empfänger eine Ergebnistafel mit einer Startsequenzzahl (SSN - Starting Sequence Number) und einem Bit, das jeden empfangenden Datenframe für jede der eingerichteten BA-Vereinbarungen markiert. Der Prozeß unterliegt der Steuerung des Anfragestellers, der entscheidet, wann die Datenframes gesendet werden und wann die Blockbestätigungsanfrage (BAR - Block Acknowledgement Request) geschickt wird, um eine BA zu erbitten.
-
US 2003/0135640 A1 offenbart ein Gruppenbestätigungsschema, das die Bestätigung einer zu bestimmenden Teilmenge von vorher gesendeten Gruppen von Datenframes ermöglicht.
US 2005/0135284 A1 geht allgemein auf Hochgeschwindigkeitskommunikation auf MAC-Ebene ein und berücksichtigt insbesondere zu verschiedenen Typen von Altsystemen rückwärtskompatible Systeme.
-
Figurenliste
-
Die verschiedenen Ausführungsformen der vorliegenden Erfindung werden beispielhaft und nicht beschränkend in den Figuren der beigefügten Zeichnungen veranschaulicht, wobei:
- 1 ein Blockschaubild ist, das den Aufbau eines Netzwerkes mit gleichrangigen Stationen zum Liefern von Blockbestätigungen mit verringerter Zustandsinformation des Empfängers gemäß einer Ausführungsform veranschaulicht.
- 2 ist ein Blockschaubild, das die Ausgestaltung eines drahtlosen Netzwerkes (WLAN) zum Bereitstellen von Blockbestätigungen mit verringerter Zustandsinformation des Empfängers gemäß einer Ausführungsform veranschaulicht.
- 3 ist ein Blockschaubild, das eine unmittelbare Blockbestätigung (ACK) (BA) mit verringerter Zustandsinformation des Empfängers gemäß einer Ausführungsform veranschaulicht.
- 4 ist ein Blockschaubild, das eine drahtlose Ausgestaltung veranschaulicht, um Block ACK mit verringerter Zustandsinformation des Empfängers gemäß einer Ausführungsform zu liefern.
- 5 ist ein Blockschaubild, das weiter die Block ACK-Logik der 4 gemäß einer Ausführungsform veranschaulicht.
- 6 ist ein Blockschaubild, das weiter die Kommunikationsschnittstelle der 4 und 5 gemäß einer Ausführungsform veranschaulicht.
- 7 ist ein Zustandsablaufdiagramm, das eine Block ACK-Anfrage und Block ACKs mit verringerter Zustandsinformation des Empfängers gemäß einer Ausführungsform veranschaulicht.
- 8 ist ein Ablaufdiagramm, das ein Verfahren zum Einschränken des Verhaltens eines Anfragestellers veranschaulicht, um Block ACKs mit verringerter Zustandsinformation des Empfängers gemäß einer Ausführungsform zu liefern.
- 9 ist ein Ablaufdiagramm, das ein Verfahren zum Antworten auf eine Block ACK-Anfrage mit verringerter Zustandsinformation des Empfängers gemäß einer Ausführungsform veranschaulicht.
-
GENAUE BESCHREIBUNG
-
Ein Verfahren und eine Vorrichtung für Blockbestätigungen (ACK) (BA) mit verringerter Zustandsinformation des Empfängers werden beschrieben. Bei einer Ausführungsform weist das Verfahren das Speichern eines Empfangszustands für einen Block aus Frames, der während einer Sendegelegenheit (TXOP - Transmission Opportunity) empfangen worden ist, mit einem Zustandsspeicher auf dem Chip auf. Wenn einmal gespeichert ist, kann eine unmittelbare Block ACK (BA), die die Empfangszustandsinformation umfaßt, an einen Anfragesteller entsprechend einer BA-Anfrage (BAR), die während der TXOP empfangen worden ist, gesendet werden. Bei einer Ausführungsform ist es erforderlich, daß der Anfragesteller die BAR während der TXOP ausgibt, bei der der Block aus Datenframes an einen Empfänger gesendet wurde. Bei einer Ausführungsform ist der Empfänger frei, die Empfangszustandsinformation zu entsorgen, um Raum innerhalb des Systemspeichers auf dem Chip freizumachen, indem er von dem Anfragesteller fordert, die Empfangszustandsinformation für Blöcke aus Datenframes, die während TXOPs geschickt worden sind, zu behalten.
-
System
-
1 ist ein Blockschaubild, das eine Konfiguration mit gleichrangigen Stationen (ad-hoc) für ein drahtloses Netzwerk 100 gemäß einer Ausführungsform der Erfindung veranschaulicht. 2 veranschaulicht eine Ausführungsform 150 eines drahtlosen Nahbereichsnetzwerks (WLAN) mit Infrakstrukturmodus oder grundlegendem Dienstesatz (BSS - Basic Service Set) gemäß einer Ausführungsform. Bei den Ausführungsformen, die in 1 und 2 veranschaulicht sind, können die drahtlosen Netzwerke 100 und 150 entsprechend einem „Drahtlos-Protokoll“ ausgestaltet sein, das IEEE 802.11a, 802.11b, 802.11c, 802.11e, 802.11g, 802.1 In, 802.11i, Hyperlan 2 oder irgendein anderes Protokoll für irgendeine drahtlose Punkt-zu-Punkt (ad-hoc)-Verbindung oder ein Netzwerk umfaßt, aber nicht darauf beschränkt ist. Bei einer Ausführungsform sind Drahtlos-Klienten 102, wie in den 1 und 2 gezeigt, so ausgestaltet, daß sie eine Blockbestätigung (ACK) (BA) mit verringerter Zustandsinformation des Empfängers liefern, um die Speicheranforderungen einer Empfangsstation gemäß einer Ausführungsform zu verringern.
-
Wie es in 1 gezeigt ist, ist das Netzwerk 100 entsprechend einem ad-hoc-Modus als unabhängiger grundlegender Dienstesatz (IBSS - Independent Basic Service Set) gestaltet. Repräsentativ sind zwei oder mehr Drahtlos-Klienten 102 (102-1, ..., 102-n) mit zum Beispiel drahtlosen Adapterkarten ausgestattet, um innerhalb des drahtlosen Netzwerks 100 zu kommunizieren. Wie in 2 veranschaulicht, sendet in dem Infrastruktur-Modus jeder Klient 102 die gesamte Kommunikation an einen Zugangspunkt (Station 160) des WLAN. Somit kommunizieren die Klienten 102 mit der Station 160, die als eine Brücke zu Ressourcen eines verdrahteten Netzwerks 170 dient. Das verdrahtete Netzwerk 170 kann ein Nahbereichsnetzwerk (LAN - Local Area Network) implementieren, indem ein Ethernet-Protokoll, ein Home Plug-Protokoll oder dergleichen verwendet wird.
-
Wie hierin beschrieben wird der Ausdruck „Drahtlos-Klient“ oder „Klient“ verwendet, um drahtlos arbeitende Vorrichtungen zu bezeichnen, die Personal Computer, einschließlich Laptop-Computer, die mit drahtlosen Adapterkarten ausgestattet sind, ebenso wie persönliche digitale Assistenten (PDAs), Zubehörgeräte und ähnliche Vorrichtungen umfassen, die so ausgelegt sind, daß sie über ein drahtloses Kommunikationsmedium, so wie zum Beispiel Hochfrequenz (RF - Radio Frequency)-Wellen, kommunizieren, sind darauf jedoch nicht beschränkt. Weiterhin wird wie hierin beschrieben der Ausdruck „Drahtlos-Station“ oder „Station“ verwendet, um Vorrichtungen zu bezeichnen, die drahtlos arbeitende Basisstationen, drahtlose arbeitende Zugangspunkte (AP - Access Points), Computer, so wie Servercomputer, Personal Computer, Laptops, PDAs oder ähnliche Vorrichtungen umfassen, die dazu ausgelegt sind, den Zugang auf gespeicherter Information, die darin enthalten ist, oder auf ein angeschlossenes verdrahtetes Netzwerk einzuschränken, jedoch nicht darauf beschränkt sind.
-
3 veranschaulicht eine Blockbestätigungs (BA)-Sequenz entsprechend einem unmittelbaren BA-Mechanismus mit einer verringerten Zustandsinformation des Empfängers gemäß einer Ausführungsform. Es gibt jedoch zwei Typen von BA-Mechanismen: unmittelbar und verzögert. Unmittelbare BAs sind für Verkehr mit hoher Bandbreite und geringer Verzögerungszeit geeignet, während verzögerte BAs für Anwendungen geeignet sind, die eine gemäßigte Verzögerungszeit tolerieren. Wie hierin beschrieben wird die Station mit Daten, die unter Verwendung des BA-Mechanismus zu senden sind, als der „Anfragesteller“ und der Empfänger dieser Daten als der „Empfänger“ bezeichnet.
-
Bei einer Ausführungsform kann der unmittelbare BA-Mechanismus, der in 3 veranschaulicht ist, die Leistungsfähigkeit des Kanals verbessern, indem mehrere Bestätigungen (ACK) in einen Frame zusammengesetzt werden. Der unmittelbare BA-Mechanismus, wie in 3 gezeigt, ist wesentlich zum Realisieren der hohen Durchsatzsteigerungen, die bei dem Standard IEEE 802.11n erwartet werden. Jedoch legt der unmittelbare BA-Mechanismus, wie er in dem IEEE 802.11e definiert ist, den Empfängern, die dieses Merkmal unterstützen, hohe Speicheranforderungen auf. Wie in 3 gezeigt, erlaubt es der unmittelbare BA-Mechanismus dem Anfragesteller 182, einen Block 186 aus Datenframes 188 (188-1, 188-2, 188-3, 188-4), so wie zum Beispiel Daten der Dienstequalität (QoS - Quality of Service), an den Empfänger 184 zu senden und dann einen BA-BAR-Austausch 190 durchzuführen, um für den Block 186 eine BA 194 zu empfangen.
-
Wie hierin beschrieben, kann sich ein „BA-BAR-Austausch“ auf das Ausgeben einer BA-Anfrage (BAR) (z.B. BlockAckReq 192) durch einen Anfragesteller (z.B. Anfragesteller 182) und das Ausgeben einer BA (z.B. BlockAck 194 beziehen, die innerhalb einer vorliegenden Sendegelegenheit (TXOP) durchgeführt werden (z.B. wie es bei TXOP Start 196 und TXOP Ende 198 angegeben ist). Bei einer Ausführungsform wird der BAR-BA-Austausch 190 innerhalb der laufenden TXOP durchgeführt, um den Empfangsspeicher der Empfangszustandsinformation für empfangene Datenframes zu verringern, indem es dem Empfänger ermöglicht wird, anschließend an das Ende der TXOP Empfangszustandsinformation zu entsorgen. Wie es durch den Pfeil 199 angegeben ist, werden Speicheranforderungen für den Empfänger 184 zum Halten von Empfangszustandsinformation ausgegebener Datenframes, um den unmittelbaren BA-Mechanismus zu ermöglichen, verringert, indem ein Empfänger darauf beschränkt wird, daß er höchstens eine BA-Bitkarte (zum Speichern der Empfangszustandsinformation) pro Sendeidentifizierer (TID - Transmit Identifier) hat. Obwohl sie in 3 als Dateneinheiten des Medienzugangssteuer (MAC)-Protokolls (MPDUs - MAC Protocol Data Units) von QoS-Daten veranschaulicht sind, sind die hierin beschriebenen Ausführungsformen auf MPDU QoS-Daten nicht beschränkt und können für andere ähnliche Frame-Formate oder Paket-Formate verwendet werden, so wie für Nicht-QoS MPDUs oder ein anderes ähnliches Paket-Format.
-
Wie in 3 gezeigt, wird der BA-Austausch 190 durchgeführt, indem vor dem Ende der gegenwärtigen TXOP (TXOP ENDE) 198 eine BA-Anfrage (BAR)192 ausgegeben wird. Als Antwort gibt der Empfänger eine BA 194 aus, um den BAR-BA-Austausch 190 zu vervollständigen. Um eine Bestätigung für den gesamten Block aus Datenframes zu liefern, ist es für den Empfänger 182 erforderlich, irgendeine Art von Zustandsinformation zu halten, so wie zum Beispiel eine BA-Bitkarte mit einer Startsequenzzahl (SSN) und einem Bit, das jeden empfangenen Datenframe markiert. Wie in 3 gezeigt, ist der Prozeß unter der Steuerung des Anfragestellers 182, der entscheidet, wann Datenframes gesendet werden und wann der BAR-BA-Austausch 190 durchgeführt wird, um vom Empfänger 184 eine unmittelbare BA 194 zu empfangen.
-
Das Unterstützen des unmittelbaren BA-Mechanismus erfordert, daß der Empfänger
184 pro BA-Vereinbarung eine BA-Bitkarte hält. Wie hierin beschrieben kann sich eine „BA-Vereinbarung“ auf eine Vereinbarung zwischen einem Anfragesteller und einem Empfänger beziehen, die von dem Empfänger erfordert, daß er als Antwort auf eine BAR, die von dem Anfragesteller ausgegeben worden ist, eine unmittelbare BA ausgibt. Die Speicheranforderungen in einer Vorrichtung sind durch die maximale Anzahl aktiver BA-Sitzungen festgelegt. Bis zu 16 (maximale Anzahl der Verkehrsidentifizierer (TID - Traffic Identifier)) Sitzungen können zwischen jedweden zwei Stationen aktiv sein. Die maximale Anzahl von beteiligten Stationen ist fast unbeschränkt, obwohl in der Praxis eine Begrenzung basierend auf dem erwarteten Einsatz gewählt wird. Die Speicheranforderungen sind somit:
-
Demgemäß, da ein Empfänger auf eine BAR
192 unmittelbar mit einer BA
194 antworten muß, um den BAR-BA-Austausch
190 zu vervollständigen, müssen diese Bitkarten in einem Speicher auf dem Chip mit geringer Verzögerungszeit gespeichert werden. Demgemäß wird bei einer Ausführungsform, wie in den
3 gezeigt, das Verhalten des Antragsstellers
182 so eingeschränkt, daß es von dem Antragsteller gefordert wird, die BAR
192 vor dem Ende einer Sendegelegenheit (TXOP ENDE) 198 auszugeben. Demgemäß, wie in
3 gezeigt, ist der Anfragesteller
182 eingeschränkt, die Information zu begrenzen, die in einer unmittelbaren BA
194 zurückgegeben wird. Durch Einschränken des Verhaltens des Anfragestellers
182 kann der Empfänger
184 die Anforderungen an Speicher auf dem Chip mit geringer Verzögerungszeit verringern, während eine einzige Ergebnistafel oder eine BA-Bitkarte (oder eine feste Anzahl von Ergebnistafeln) beibehalten und die BA-Bitkarte für unterschiedliche BA-Sitzungen erneut verwendet wird. Bei einer Ausführungsform können die Speicheranforderungen verringert werden auf:
-
4 ist ein Blockschaubild, das die Station 200 des Anfragestellers veranschaulicht, die einen unmittelbaren BA-Mechanismus mit verringertem Zustand des Empfängers gemäß einer Ausführungsform unterstützt. Repräsentativ kann die Station 200 einen Mikroprozessor 202, der einen Chipsatz 210 verwendet, um auf einen Zustandsspeicher 250 auf dem Chip zuzugreifen, ebenso wie eine Kommunikationsschnittstelle 220 umfassen. Bei einer Ausführungsform umfaßt der Speicher 250 einen Speicher mit wahlfreiem Zugriff (RAM - Random Access Memory), einen dynamischen RAM (DRAM), einen statischen RAM (SRAM), eine synchronen DRAM (SDRAM), einen SDRAM mit doppelter Datenrate (DDR - Double Data Rate) (DDR-SDRAM), einen Rambus-DRAM (RDRAM) oder irgendeine andere Vorrichtung, die zum Unterstützen der Hochgeschwindigkeitspufferung von Daten in der Lage ist, , ist jedoch nicht darauf beschränkt. Wie hierin beschrieben wird der Ausdruck „Chipsatz“ in einer Weise verwendet, die den Durchschnittsfachleuten wohlbekannt ist, um insgesamt die verschiedenen Bauelemente zu beschreiben, die an eine CPU 202 gekoppelt sind, um die gewünschte Systemfunktionalität durchzuführen.
-
Bei einer Ausführungsform ist die Kommunikationsschnittstelle 220 zum Beispiel eine drahtlose physikalische Schicht, die entsprechend einem Mehrfach-Eingabe-Mehrfach-Ausgabe (MIMO - Multiple Input Multiple Output)-Betrieb arbeitet. Gemäß einer derartigen Ausführungsform umfaßt die Station 200 mehrere Sende- und Empfangsantennen 230 (230-1, ..., 230-N). Repräsentativ bietet die Station 200 mehrere TX-Antennen und umfaßt bei einer Ausführungsform eine Blockbestätigungsanfrage BAR 300, um einen unmittelbaren BA-Mechanismus mit verringertem Zustandspegel des Empfängers zu unterstützen. Bei einer Ausführungsform wird die Funktionalität der MAC-Schicht durch den Chipsatz 210 und eine BAR-Logik 300 gegeben und die Funktionalität der PHY-Schicht wird von der Kommunikationsschnittstelle 220 gegeben.
-
Demgemäß beschränkt bei der Ausführungsform, die in 4 veranschaulicht ist, die Blockbestätigungsanfrage (BAR)-Logik 300 das Verhalten des Anfragestellers, wie in 3 gezeigt. Wie veranschaulicht, überwacht die BAR-Logik 300, anschließend auf das Einrichten einer BA-Sitzung (das Eintreten in eine BA-Vereinbarung, wobei eine BA-Vereinbarungslogik 340 verwendet wird) zwischen einem Empfänger und einem Anfragesteller, die Sendung eines Impulses aus Frames vom Antragsteller an eine Empfängeradresse (RA) für einen einzigen Verkehrsidentifizierer (TID). Gemäß einer solchen Ausführungsform beschränkt die BAR-Logik 300 den Antragsteller darauf, daß für den Antragsteller gefordert ist, eine Blockbestätigungsanfrage (BAR) vor dem Ende der laufenden Sendegelegenheit (TXOP) zu senden.
-
Bei einer Ausführungsform erfordert es die BAR-BA-Austauschlogik 310, daß die Anfragesteller-Station 200 einen BAR-BA-Austausch innerhalb einer laufenden TXOP einleitet. Wie in 3 gezeigt, kann die Sendung eines Blocks aus Datenframes 186 innerhalb einer abgefragten TXOP oder durch vorgegebenen Kanalzugriff beginnen, so wie einer verbesserten verteilten Kanalzugriff (EDCA - Enhanced Distributed Channel Access)-Vorgabe (TXOP Start 196). Wie in 3 gezeigt, wird ein TXOP Start 196 von dem Anfragesteller 182 erfaßt. Wenn er einmal erfaßt ist, beginnt eine BA-Sitzung damit, daß der Anfragesteller einen MPDU-Datenblock 186 aus QoS-Datenframes 188 ausgibt.
-
Mit Bezug wieder auf die 4 überwacht die BAR-BA-Austauschlogik 340 die TXOP, um sicherzustellen, daß die Anfragesteller-Station 200 die BAR vor dem Ende der TXOP ausgibt. Wenn einmal die BAR an den Empfänger ausgegeben ist, bestimmt die Empfangszustandslogik 320 einen Empfangszustand für jeden der Frames, die an den Empfänger gesendet worden sind, zum Beispiel gemäß einem BA-Steuerframe, der von dem Empfänger empfangen worden ist, einschließlich zum Beispiel einer BA-Bitkarte. Als Antwort auf die empfangene BA kann ein Zustand einer Sendewarteschlange 330 aktualisiert werden, um nicht bestätigte Frames erneut zu senden. Für bestätigte Frames jedoch kann eine Entsorgelogik 350 bestätigte Frames entsorgen.
-
Wie in 4 gezeigt, ist die Station 200 als eine Anfragesteller-Station innerhalb einer BA-Sitzung arbeitend gezeigt. Bei der veranschaulichten Ausführungsform ist die BAR-Logik 300 getrennt von dem Chipsatz 210 gezeigt. Bei den beschriebenen Ausführungsformen jedoch kann die BAR-Logik 300 innerhalb des Chipsatzes 210 integriert oder als Firmware innerhalb der Station 200 implementiert sein, wobei sie innerhalb des Umfangs der Ausführungsformen verbleibt, wie er durch die angefügten Ansprüche definiert ist. Ähnlich kann die BA-Logik 400, obwohl sie als im Chipsatz 210 integriert gezeigt ist, als eine getrennte Komponente außerhalb des Chips vorgesehen sein, zum Beispiel kann sie, wie in 5 veranschaulicht, als Firmware innerhalb der Station 220 vorgesehen sein, wobei sie innerhalb des Umfangs der hierin beschriebenen Ausführungsformen bleibt, wie er durch die angefügten Ansprüche definiert ist. Repräsentativ, wie gezeigt, kann der Chipsatz 210 eine BA-Logik 400 für Situationen umfassen, in denen die Station 200 als eine Empfängerstation arbeitet, wie es zum Beispiel in 5 gezeigt ist.
-
5 ist ein Blockschaubild der Station 200, wie in 4 gezeigt, um weiter die BA-Logik 400 mit der BAR-Logik 300, wie in 4 gezeigt, zu veranschaulichen, wie sie gemäß einer Ausführungsform innerhalb eines Chipsatzes 210 implementiert sind. Repräsentativ richtet eine BA-Vereinbarungslogik 430 eine BA-Vereinbarung mit einem Anfragesteller ein. Wenn sie einmal eingerichtet ist, kann eine BA-Bitkartenlogik 420 Empfangszustandsinformation für empfangene Datenframes innerhalb der BA-Bitkarte 402 für eine einzelne Senderadresse (TA) und einen Verkehrsidentifizierer (TID) zu irgendeiner Zeit enthalten. Beim Empfang eines Datenframes prüft die BA-Bitkartenlogik 420 eine TA und einen TID des empfangenen Datenframes gegenüber der BA-Bitkarte 402. Wenn eine Übereinstimmung erfaßt wird, markiert die BA-Bitkartenlogik 420 die BA-Bitkarte 402 für den empfangenen Datenframe.
-
Bei einer Ausführungsform kann eine Rücksetzlogik 450 die BA-Bitkarte 402 zurücksetzen und die BA-Bitkarte 402 erneut verwenden, wenn keine Übereinstimmung zwischen der TA und dem TID des empfangenen Datenframes und der TA und dem TID der BA-Bitkarte 402 erfaßt worden ist. Beim Empfang einer BAR, die von einem Anfragesteller ausgegeben worden ist, kann die BAR-BA-Logik 410 eine TA und einen TID der empfangenen BAR gegenüber einer BA-Bitkarte 402 vergleichen. Wenn eine Übereinstimmung erfaßt wird, kann die BAR-BA-Austauschlogik 460 eine BA-Steuerframe-Logik 440 auffordern, an den Anfragesteller einen BA-Steuerframe auszugeben, einschließlich der BA-Bitkarte 402.
-
Bei einer Ausführungsform umfaßt die BA-Steuerframe-Logik 440 eine Schiebelogik (nicht gezeigt), um die BA-Bitkarte 402 entsprechend einer Startsequenzzahl (SSN), die aus der BAR, welche von dem Anfragesteller empfangen worden ist, erfaßt wurde, zu verschieben. Ansonsten kann die BA-Steuerframe-Logik 440 mit einer Null-BA antworten, die zum Beispiel eine BA ist, die alle Werte als Null enthält. Beim Empfang der BAR kann bei einer Ausführungsform eine Frame-Freigabelogik bestimmen, ob eine kontinuierliche Abfolge von Datenframes, beginnend von der SSN, innerhalb zum Beispiel eines Neuordnungspuffers 470 verfügbar ist. Wenn dies der Fall ist, kann die Frame-Freigabelogik 460 die kontinuierliche Sequenz der empfangenen Datenframes aus dem Neuordnungspuffer 470 freigeben.
-
6 ist ein vereinfachtes Blockschaubild, das weiter eine Kommunikationsschnittstelle 220 (z. B. zwischen Stationen, wie in den 4 und 5 gezeigt) gemäß einer Ausführungsform veranschaulicht. Irgendeine WLAN-Station 200 kann den IEEE 802.11 Standard unterstützen, indem eine Signalgebungssteuervorrichtung für die physikalische Schicht (PHY) (PHY-Vorrichtung) 240, 222 enthalten sind. Bei einer Ausführungsform kann die Funktion der MAC-Vorrichtung 224 abgeändert werden, damit sie entsprechend der BAR-Logik 300 ( 4) und der BA-Logik 400 (5) arbeitet, um den unmittelbaren BA-Mechanismus mit einem verringerten Empfängerzustand zu unterstützen.
-
Unter anderem erzeugt der MAC-Klient 222 Daten und verarbeitet sie. Der Zweck der PHY- und MAC-Vorrichtungen 240, 224 besteht darin, sicherzustellen, daß zwei Netzwerkstationen mit dem korrekten Frame-Format und Protokoll kommunizieren. Ein IEEE Std. 802.11 definiert das Kommunikationsprotokoll zwischen Netzwerkstationen.
-
Die Funktion der PHY-Vorrichtung 240 ist dreifach: 1) für einen Frame-Austausch zwischen der MAC 224 und der PHY 240 unter der Steuerung einer Unterschicht für die Konvergenzprozedur der physikalischen Schicht (PLCP - Physical Layer Convergence Procedure) zu sorgen; 2) Datenframes über die Sendeschnittstelle unter der Steuerung der von dem physikalischen Medium abhängigen (PMD - Physical Medium Dependent) Unterschicht zu senden; und 3) eine Trägerabfühlangabe zurück an die MAC 224 zu liefern, so daß die MAC 224 in der Lage ist, Aktivität auf der Sendeschnittstelle zu verifizieren. Bei einer Ausführungsform ist die PHY-Vorrichtung modifiziert, um einen kombinierten Geschwindigkeits- und Sendeantennenausfallmechanismus zu liefern.
-
Im allgemeinen umfaßt die PHY-Vorrichtung 240 eine PLCP-Vorrichtung 242 und Sende- und Empfangs-PMD-Vorrichtungen 242, 244. Jede dieser kann, aber braucht nicht einiges oder das Gesamte der physikalischen Schaltung (z. B. Prozessoren, Busse, Uhren, Speicher usw.) zu nutzen. Zusätzlich kann eine Vielzahl von Antennen 230 (230-1, ..., 230-N) mit der PMD-Vorrichtung 242, 244 verbunden sein.
-
7 ist ein Blockschaubild, das einen Fluß 500 eines verringerten Empfängerzustandes gemäß einer Ausführungsform veranschaulicht. Wie veranschaulicht, sind der Anfragesteller 510 und der Empfänger 550 in eine BA-Vereinbarung eingetreten, und während einer BA-Sitzung gibt der Anfragesteller 510 eine Sequenz aus MAC-Protokolldateneinheit (MPDU)-Blöcken von QoS-Datenframes 520, 522 und 524 während einer TXOP 502 an RA1 und TID1 aus. Wenn sie einmal ausgegeben ist und vor dem Ende der TXOP 502 gibt der Anfragesteller 502 eine BAR 512 an den Empfänger 550 aus. Wie veranschaulicht werden die Datenframes 522 und 524 von dem Empfänger 550 empfangen, jedoch wird der Datenframe 520 nicht empfangen. Demgemäß veranschaulicht die BA-Bitkarte 522 des Empfängers den Empfang der Datenframes 522 und 524.
-
Repräsentativ empfängt der Empfänger 550 nur die Frames 522 und 524; daher steht in der BA-Bitkarte 552 das erste aktualisierte Bit in bezug zu dem Frame 522. Während der Zeit, in der der Empfänger 550 die BAR 512-1 empfängt, werden die Bits, die zu den Frames 522 und 524 Bezug haben, in der BA-Bitkarte 552 gesetzt. Nach dem Empfang der BAR 512-1 mit SSN=1 prüft der Empfänger 550 die BA-Bitkarte 552 und erkennt, daß der Frame 520 nicht erfolgreich war, und antwortet mit dem dazu in bezug stehenden BA-Steuerframe 554-1, der die Frames 522 und 524 bestätigt. Parallel dazu prüft der Empfänger 550 den Neuordnungspuffer 556 und sieht, daß es keine Sequenz gibt, die freigegeben werden kann. Nach dem Erhalt des BA-Steuerframes 554-1 aktualisiert der Anfragesteller seine eigene Bitkarte 514 in bezug auf die bestimmten RA1/TID1 mit Erfolg für den Frame 522 und den Frame 524 und erinnert sich daran, daß der Frame 520 erneut gesendet werden sollte.
-
Bei der nächsten Sendegelegenheit 504 beginnt der Anfragesteller 510, Datenframes 530, 532 und 534 an RA1 und TID2 zu senden. Der Empfänger 550 empfängt nur den Frame 534, wie gezeigt, die Frames 530 und 532 werden nicht empfangen. An diesem Punkt erkennt der Empfänger 550, daß sich der TID (TID2) von dem früheren (TID1) unterscheidet und setzt somit den Speicher, der der Bitkarte 552 zugewiesen ist, zurück und startet die neue Bitkarte 552 in bezug auf den neuen TID2 an demselben Ort. Das Verhalten des BAR-BA-Austausches von dem Anfragesteller 510 und dem Empfänger 550 kann dasselbe sein, wie es für TID1 beschrieben worden ist. Bei einer Ausführungsform hat der Anfragesteller 510 getrennte Ressourcen für die Bitkarte 514, ebenso wie für tatsächliche Datenframes pro RA/TID; der Empfänger 550 hat getrennte Neuordnungspuffer 556 für Datenframes pro TA/TID, braucht jedoch nur eine einzelne gemeinsam genutzte Ressource für die Bitkarte 552 zu umfassen.
-
Bei der nächsten Sendegelegenheit 506 nimmt der Anfragesteller 510 die Sendung an den TID1 wieder auf. Repräsentativ werden die Frames (526, 528, 520) außer Reihenfolge ausgegeben, wobei die Frames 526 und 528 ausgegeben, die vor der erneuten Sendung des Frames 520 ausgegeben werden. Bei dem ersten empfangenen Frame 556 erkennt der Empfänger 550, daß der TID sich von dem letzten unterscheidet, setzt den Speicher zurück und beginnt damit, die Bitkarte 552 in bezug auf den TID1 aufzubauen. Der Empfänger 550 empfängt erfolgreich alle geschickten Frames 526, 528 und 520.
-
Repräsentativ gibt die Bitkarte 552 den Erfolg der Frames 520, 526 und 528 mit Zahlen 1, 4 bzw. 5 wieder. Diese Bitkarte 552 enthält nicht den früheren Erfolg der Frames 522 und 524. Die BAR 512-3, die von dem Anfragesteller 510 ausgegeben worden ist, wiederholt die frühere SSN=1, und der Empfänger 550 antwortet mit der BA 554-3, welche die Frames 520, 526 und 528 bestätigt. Die Bitkarte 552, die in dem BA-Steuerframe 554-3 enthalten ist, ist tatsächlich ein Inkrement der zuletzt geschickten Bitkarte 552. Nachdem diese BA 552 erhalten wurde, wird die sich ergebende Bitkarte 514, die von dem Anfragesteller 510 gespeichert ist, kontinuierliche Sequenzen aus Frames 1 bis 5 halten, was somit das Verschieben der SSN zu 6 erlaubt.
-
Beim Erhalt der BAR 512-3 geht der Empfänger 550 dazu über, seinen Neuordnungspuffer 556 auf die bezogene TA/TID hin prüfen. Er enthält nun eine kontinuierliche Sequenz aus Frames von 1 bis 5, was somit das Freigeben der Frames 520-528 an obere Schichten und das Leeren der darauf bezogenen Puffer ermöglicht. Der Anfragesteller 510 gibt auch die darauf bezogenen Frames und Puffer frei. Repräsentativ kann die 7 zeigen, wie das Verfahren für den unmittelbaren BA-Mechanismus mit verringerter Zustandsinformation des Empfängers erfolgreich die MPDU-Frames 520-528 liefert; die darauf bezogene Bitkarte 552 wird jedoch in der Mitte der BA-Sitzung zurückgesetzt und von einem anderen Fluß verwendet. Prozedurale Verfahren zum Implementieren einer oder mehrerer Ausführungsformen werden nun beschrieben.
-
Arbeitsweise
-
Nun der 8 zugewandt, werden die bestimmten Verfahren, die mit den Ausführungsformen der Erfindung verknüpft sind, mittels Computersoftware und Hardware in bezug auf ein Ablaufdiagramm beschrieben. Die Verfahren, die von einer Rechenvorrichtung (z. B. einer Drahtlos-Station) durchgeführt werden sollen, können Zustandsmaschinen oder Computerprogramme bilden, die aus von einem Computer ausführbaren Befehlen aufgebaut sind. Die von einem Computer ausführbaren Befehle können in ein Computerprogramm und in Programmiersprache geschrieben oder als Firmware-Logik verkörpert werden. Wenn sie in einer Programmiersprache geschrieben werden, die einem anerkannten Standard entspricht, können solche Befehle in einer Vielfalt von Hardwareplattformen und für die Schnittstelle zu einer Vielfalt von Betriebssystemen ausgeführt werden.
-
Zusätzlich werden Ausführungsformen der Erfindung nicht mit bezug auf irgendeine bestimmte Programmiersprache beschrieben. Es wird verstanden werden, daß eine Vielfalt von Programmiersprachen verwendet werden kann, um Ausführungsformen der Erfindung, wie sie hierin beschrieben sind, zu implementieren. Weiterhin ist es üblich, auf dem Gebiet von Software, in einer Form oder einer anderen (z. B. Programm, Prozedur, Prozeß, Anwendung usw.) so zu sprechen, daß man eine Aktion vornimmt oder ein Ergebnis hervorruft. Solche Ausdrücke sind nur ein kurzer Weg zu sagen, daß Ausführung der Software durch eine Rechenvorrichtung die Vorrichtung bewirkt, daß eine Aktion durchgeführt oder ein Ergebnis erzeugt wird.
-
8 ist ein Ablaufdiagramm, das ein Verfahren 600 für Blockbestätigungen mit verringerter Zustandsinformation des Empfängers gemäß einer Ausführungsform veranschaulicht. Bei den beschriebenen Ausführungsformen werden Beispiele der beschriebenen Ausführungsformen mit Bezug auf die 1-7 gegeben. Jedoch sollten die beschriebenen Ausführungsformen nicht auf die zur Verfügung gestellten Beispiele beschränkt sein, um so den Umfang der verschiedenen Ausführungsformen zu beschränken, wie er durch die angefügten Ansprüche definiert ist.
-
Wieder mit Bezug auf 8 kann an einem Prozeßblock 610 ein Anfragesteller eine BA-Vereinbarung mit einem Empfänger anfragen. Wenn einmal angefragt ist, wird am Prozeßblock 620 bestimmt, ob die BA-Vereinbarung akzeptiert wird. Wenn sie akzeptiert ist, kann der Anfragesteller in eine BA-Sitzung eingreifen, indem eine TXOP am Prozeßblock 630 erfaßt wird. Wenn sie einmal erfaßt ist, kann der Anfragesteller einen Block aus Datenframes an den Empfänger senden. Wenn sie gesendet sind, gibt am Prozeßblock 650 der Anfragesteller eine BAR an den Empfänger aus, um eine unmittelbare BA anzufragen. Wenn sie angefragt ist, wird am Prozeßblock 660 bestätigt, ob der Anfragesteller einen BA-Steuerframe empfangen hat. Wenn er empfangen worden ist, kann am Prozeßblock 670 der Anfragesteller einen Sende (TX)-Warteschlangenzustand entsprechend einer BA-Bitkarte, die mit dem Steuerframe empfangen worden ist, aktualisieren. Basierend auf der BA-Bitkarte kann der Anfragesteller unbestätigte Frames erneut senden und bestätigte Frames entsorgen.
-
Das entsprechende Verhalten eines Empfängers ist in dem Ablaufdiagramm der 9 gezeigt, um ein Verfahren 710 für einen unmittelbaren BA-Mechanismus mit einem verringerten Zustand des Empfängers gemäß einer Ausführungsform zu veranschaulichen. Am Prozeßblock 710 bestimmt der Empfänger, ob eine Blockvereinbarungsanfrage empfangen worden ist. Wenn sie empfangen worden ist, kann am Prozeßblock 720 der Empfänger die BA-Vereinbarung akzeptieren. Wenn sie akzeptiert ist, kann am Prozeßblock 730 der Empfänger die Akzeptanz einer BA-Vereinbarung an den Antragsteller ausgeben.
-
Bei einer Ausführungsform kann das Einrichten einer BA-Vereinbarung, wie es durch die Prozeßblöcke 710-730 und entsprechende Prozeßblöcke 610 und 620 der 8 veranschaulicht ist, durchgeführt werden, indem eine BA hinzufügen (add BA)-Anfrage und Antwortframes ausgetauscht werden. Genauer richtet der Anfragesteller eine ADDBA-Anfrage an den Empfänger, die von dem Empfänger bestätigt wird. Anschließend an eine solche Bestätigung kann der Empfänger einen ADDBA-Antwortframe an den Anfragesteller senden, der die BA-Vereinbarung entweder akzeptieren oder zurückweisen kann. Der Empfang eines solchen ADDBA-Antwortframes wird von dem Anfragesteller an den Empfänger bestätigt, um eine BA-Vereinbarung einzurichten.
-
Mit Bezug wieder auf die 9 ist im Prozeßblock 740 eine BA-Vereinbarung eingerichtet worden, und nun stellt der Empfänger fest, ob ein Block aus Frames empfangen worden ist. Wenn ein Block aus Frames empfangen worden ist, kann der Empfänger im Prozeßblock 750 eine BA-Bitkarte für empfangene Datenframes aktualisieren. Wenn sie aktualisiert sind, wird im Prozeßblock 760 festgestellt, ob eine BAR von dem Anfragesteller empfangen worden ist. Wenn sie empfangen worden ist, stellt im Prozeßblock 770 der Empfänger fest, ob die BAR während der laufenden TXOP empfangen wurde. Wenn sie während der laufenden TXOP empfangen wurde, kann der Empfänger am Prozeßblock 780 die BA-Bitkarte an den Anfragesteller innerhalb eines BA-Steuerframes ausgeben. Wenn sie einmal gesendet ist, ist im Prozeßblock 790 der Empfänger in der Lage, die Zustandsinformation des Empfängers zu verringern, indem die BA-Bitkarte rückgesetzt wird, wenn einmal der BA-Steuerframe von dem Anfragesteller bestätigt worden ist. Demgemäß, da der Anfragesteller für das Halten der Zustandsinformation des Empfängers verantwortlich ist, ist, wenn einmal der Anfragesteller den BA-Steuerframe empfangen hat, der einen Empfangszustand für jeden der Datenframes enthält, welche während der laufenden TXOP an den Empfänger ausgegeben worden sind, der Empfänger für solche Information nicht länger verantwortlich.
-
Demgemäß kann bei den veranschaulichten Ausführungsformen, wie sie zum Beispiel in 4 und 5 gezeigt sind, eine Ausführungsform des unmittelbaren BA-Mechanismus, wie hierin beschrieben, einen verringerten Zustand des Empfängers zur Verfügung stellen, indem eine einzelne Ressource für die BA-Bitkarte des Empfängers verwendet wird, ungeachtet der Anzahl aktiver BA-Sitzungen, die der Empfänger hält. Als das Ergebnis des Verwendens einer einzelnen Ressource für die Bitkarte des Empfängers kann wesentlich weniger Speicherressource innerhalb des lokalen Speichers erforderlich sein, im Vergleich zu dem unbeschränkten unmittelbaren BA-Mechanismus, wie er zum Beispiel durch 802.11e beschrieben ist. Aufgrund der verringerten Anforderungen an lokalen Speicher können drahtlose Geräte, die den unmittelbaren BA-Mechanismus implementieren, wie er hierin beschrieben ist, mit wesentlich verringerten Produktkosten hergestellt werden.
-
Demgemäß enthält bei den Ausführungsformen, die mit Bezug auf die 4 und 5 beschrieben worden sind, die Empfängerstation 200 eine einzige Ressource zum Speichern und Halten einer BA-Bitkarte, die für irgendwelche BA-Vereinbarungen der Empfängerstation verwendet wird. Bei einer Ausführungsform kann eine BA-Bitkarte als Antwort darauf, daß die Empfängerstation eine Änderung der TA/TID entsprechend einem empfangenen Datenframe erfaßt, rückgesetzt werden. Um den unmittelbaren BA-Mechanismus mit einem verringerten Zustand des Empfängers zu unterstützen, kann der Anfragesteller eine BA-Bitkarte in einer inkrementellen Weise halten, wobei unberührte Felder in bezug auf früher bestätigte MPDUs gespeichert und nur Felder in bezug auf neu bestätigte MPDUs im Hinblick auf die bestimmte Kombination RA/TID aktualisiert werden.
-
Elemente für Ausführungsformen der vorliegenden Erfindung können auch als ein von einer Maschine lesbares Medium zum Speichern der durch eine Maschine ausführbaren Befehle zur Verfügung gestellt werden. Das von einer Maschine lesbare Medium kann umfassen, ist jedoch nicht beschränkt auf einen Flash-Speicher, optische Disks, Kompakt-Disk-Nur-Lese-Speicher (CD-ROM - Compact Disks-Read Only Memory), digitale Mehrzweck/Videodisks (DVD - Digital Versatile/Video Disks)-ROM, Speicher mit wahlfreiem Zugriff (RAM - Random Access Memory), löschbare programmierbare Nur-Lese-Speicher (EPROM - Erasable Programmable Read-Only-Memory), elektrisch löschbare programmierbare Nur-Lese-Speicher (EEPROM - Electrically Erasable Programmable Read-Only-Memory), magnetische oder optische Karten, sich fortpflanzende Medien oder andere Arten von maschinenlesbaren Medien, die zum Speichern elektronischer Befehle geeignet sind. Zum Beispiel können Ausführungsformen der Erfindung als ein Computerprogramm heruntergeladen werden, das von einem entfernten Computer (z. B. einem Server) an einen anfragenden Computer (z. B. einen Klienten) mittels Datensignalen übertragen werden kann, die in einer Trägerwelle verkörpert sind, oder über ein anderes sich fortpflanzendes Medium über eine Kommunikationsverbindung (z. B. ein Modem oder eine Netzwerkverbindung).
-
Es sollte verstanden werden, daß der Bezug in dieser Beschreibung auf „eine Ausführungsform“ bedeutet, daß ein bestimmtes Merkmal, eine Struktur oder eine Eigenschaft, die in Verbindung mit der Ausführungsform beschrieben ist, in wenigstens einer Ausführungsform der vorliegenden Erfindung enthalten ist. Daher wird betont und sollte erkannt werden, daß zwei oder mehr Bezüge auf „eine Ausführungsform“ oder „eine alternative Ausführungsform“ in verschiedenen Teilen dieser Beschreibung sich nicht notwendigerweise alle auf dieselbe Ausführungsform beziehen. Weiterhin können die bestimmten Merkmale, Strukturen oder Eigenschaften in einer oder mehreren Ausführungsformen der Erfindung kombiniert werden, wenn es zweckmäßig ist.
-
In ähnlicher Weise sollte verstanden werden, daß in der voranstehenden Beschreibung von Ausführungsformen der Erfindung verschiedene Merkmale manchmal in einer einzigen Ausführungsform, Figur oder Beschreibung dieser zusammen gruppiert sind, zu dem Zweck, die Offenbarung zu straffen, was beim Verständnis eines oder mehrerer der verschiedenen erfinderischen Aspekte hilft. Dieses Verfahren der Offenbarung jedoch soll nicht so interpretiert werden, daß eine Absicht wiedergegeben wird, daß der beanspruchte Gegenstand mehr Merkmale erfordert, als sie ausdrücklich in jedem Anspruch genannt sind. Statt dessen liegen, wie die folgenden Ansprüche wiedergeben, erfinderische Aspekte in weniger als allen Merkmalen einer einzigen voranstehend offenbarten Ausführungsform. Somit werden die Ansprüche, die der genauen Beschreibung folgen, hiermit ausdrücklich in diese genaue Beschreibung aufgenommen, wobei jeder Anspruch selbständig als eine separate Ausführungsform dieser Erfindung steht.
-
Nachdem Ausführungsformen und die beste Ausführungsart offenbart worden sind, können Modifikationen und Abänderungen an den offenbarten Ausführungsformen vorgenommen werden, während man innerhalb des Umfangs der Ausführungsformen bleibt, wie er durch die folgenden Ansprüche definiert ist.