-
Gebiet
-
Die
vorliegende Erfindung betrifft drahtlose Kommunikationen bzw. Nachrichtenübertragungen. Insbesondere
betrifft die vorliegende Erfindung ein neues Verfahren und eine
Vorrichtung zum Vorsehen von mehreren Pegeln von Qualität des Dienstes
in einem drahtlosen Paketdatennetzwerk zwischen einer Mobilstation
und einem drahtlosen Netzwerk.
-
Hintergrund
-
Die
Verwendung von Codemultiplex-Vielfachzugriff (CDMA = code division
multiple access) Modulationstechniken ist eine von mehreren Techniken
zum Ermöglichen
von Kommunikationen, in welchen eine große Anzahl von Systembenutzern
vorhanden ist. Andere Vielfachzugriffkommunikationssystemtechniken
wie Zeitmultiplex-Vielfachzugriff (TDMA = time division multiple
access), Frequenzmultiplex- Vielfachzugriff (FDMA = frequency division multiple
access) und AM Modulationsschemata wie ACSSB = amplitude companded
single sideband sind im Stand der Technik bekannt. Diese Techniken wurden
standardisiert, um die Zusammenarbeit zwischen Ausrüstung zu
ermöglichen,
welche von unterschiedlichen Firmen hergestellt wurde. Codemultiplex-Vielfachzugriff
Kommunikationssysteme wurden in den Vereinigten Staaten in Telecommunications
Industry Association TIA/EIA/IS-95-B, benannt, „MOBILE STATION-BASE STATION
COMPATIBILITY STANDARD FOR DUAL-MODE WIDEBANDSPREAD SPECTRUM CELLULAR
SYSTEMS"; standardisiert;
und werden hierin als IS-95 bezeichnet. Zusätzlich wurde ein neuer Standard
für CDMA
Kommunikationsysteme in den vereinigten Staaten in Telecommunications
Industry Association (TIA) vorgeschlagen, benannt „Upper
Layer (Layer 3) Signaling Standard for cdma2000 Spread Spectrum Systems,
Release A – Addendum
1", datiert auf
den 27. Oktober 2000, und hierin als „cdma2000" bezeichnet.
-
Die
International Telecommunications Union verlangte kürzlich die
Einreichung von vorgeschlagenen Verfahren zum Vorsehen von hoher
Datenrate und qualitativ hochwertigen Sprachdiensten über drahtlose
Kommunikationskanäle.
Ein erster dieser Vorschläge
wurde durch die Telecommunications Industry Association heraus gegeben,
benannt „The IS-2000ITU-R
RTT Candidate Submission".
Ein Zweiter dieser Vorschläge
wurde durch das European Telecommunications Standards Institute
(ETSI), benannt, „The
ETSI UMTS Terrestrial Radio Access (UTRA) ITU-R RTT Candidate Submission", herausgegeben,
auch benannt als „Breitband
CDMA", und hierin
nachfolgend als „W-CDMA" bezeichnet. Ein
dritter Vorschlag wurde durch U.S. TG 8/1, benannt „The UWC-136
Candidate Submission",
eingereicht, hierin nachfolgend bezeichnet als „EDGE". Die Inhalte dieser Einreichungen sind öffentlich
verfügbar
und sind im Stand der Technik gut bekannt.
-
IS-95
wurde ursprünglich
für die Übertragung
von Sprachdaten mit variabler Rate optimiert. Nachfolgende Standards
bauten auf diesem Standard auf, um eine Vielzahl von zusätzlichen Nicht-Sprachdiensten
einschließlich
Paketdatendiensten zu unterstützen.
Ein solcher Satz von Paketdatendiensten wurde in den Vereinigten
Staaten in Telecommunications Industry Association TIA/EIA/IS-707-A,
benannt „Data
Service Options for Spread Spectrum Systems" standardisiert, und wird hierin nachfolgend
als „IS-707" bezeichnet.
-
IS-707
beschreibt Techniken, welche verwendet werden, um Unterstützung für das Senden von
Internetprotokoll (IP) Paketen durch ein IS-95 drahtloses Netzwerk
zu senden. Pakete werden in einen Bytestrom ohne Besonderheiten
unter Verwendung eines Protokolls, welches Punkt-zu-Punkt Protokoll
(PPP) benannt wird, gekapselt. Unter Verwendung von PPP können IP
Pakete über
ein drahtloses Netzwerk in Segmenten von beliebiger Größe transportiert
werden. Das drahtlose Netzwerk hält
PPP Zustandsinformation für
die Dauer der PPP Sitzung aufrecht, oder so lang wie zusätzliche
Bytes gesendet werden können
in einem kontinuierlichen Bytestrom zwischen den PPP Endpunkten.
-
Ein
solcher kontinuierlicher Bytestrom wird nachfolgend in eine Serie
von IS-95 Rahmen
unter Verwendung eines Protokolls, welches Funkverbindungs protokoll
(RLP = radio link protocol) benannt wird, gekapselt. RLP weist ein
Fehlersteuerungsprotokoll auf, welches negative Bestätigungen
(NAKs = negative acknowledgments) verwendet durch welchen der Empfänger den
Sender zum erneuten Übertragen
von verloren gegangenen RLP Rahmen ermahnt. Weil das RLP Fehlersteuerungsprotokoll
erneute Übertragungen
verwendet zeigt RLP Datenübertragung
im Allgemeinen eine variable Übertragungsverzögerung von
dem Sender zu dem Empfänger.
Eine modifizierte Form von RLP, benannt Synchron RLP (SRLP = Synchronous
RLP), in welchem keine NAKs und keine erneuten Übertragungen durch Sender oder
Empfänger
gesendet werden, ist im Stand der Technik gut bekannt. Die Rahmenfehlerrate
in SRLP ist größer als
diejenige von RLP, aber die Übertragungsverzögerung wird
auf einer minimalen Konstanten gehalten.
-
Ein
entfernter Netzwerkknoten wie ein persönlicher oder Laptopcomputer
(PC), welcher mit einer Paketdaten fähigen drahtlosen Mobilstation
(MS) verbunden ist, kann auf das Internet durch ein drahtloses Netzwerk
gemäß dem IS-707
Standard zugreifen. Alternativ kann der entfernte Netzwerkknoten wie
ein Webbrowser in die MS eingebaut sein, wodurch der PC optional
gemacht wird. Eine MS kann eine einer Vielzahl von Typen von Einrichtungen
einschließlich,
aber nicht eingeschränkt
auf, eine PC Karte, persönlicher
Datenassistent (PDA), externes oder internes Modem, oder drahtloses
Telefon oder Terminal sein. Die MS sendet Daten durch das drahtlose
Netzwerk, wo sie durch einen Paketdatendienstknoten (PDSN = packet
data serving node) verarbeitet werden. Der PPP Zustand für eine Verbindung zwischen
einer MS und dem drahtlosen Netzwerk wird typischerweise innerhalb
des PDSN gehalten. Das PDSN ist mit einem IPP Netzwerk wie dem Internet
verbunden, und transportiert Daten zwischen dem drahtlosen Netzwerk
und anderen Einheiten und Agenten, welche mit dem IP Netzwerk verbunden sind.
Auf diese Art und Weise kann die MS Daten zu einer anderen Einheit
in dem IP Netzwerk durch die drahtlose Datenverbindung senden und
empfangen. Die Zieleinheit auf dem IP Netzwerk wird auch als ein korrespondierender
Knoten bezeichnet. Die Interaktion zwischen einer MS und dem PDSN
wurden in EIA/TIA/IS-835, benannt „Wireless IP Network Standard", datiert auf Juni
2000, und hierin als „IS-835" bezeichnet, standardisiert.
Der Fachmann wird erkennen, dass in einigen Netzwerken der PDSN
durch eine Interworking Function (IWF) ersetzt wird.
-
Um
kompliziertere drahtlose Netzwerkdienste vorzusehen gibt es einen
sich erhöhenden Wunsch
und Bedarf zum Vorsehen von verschiedenen Arten von Diensten gleichzeitig
durch eine drahtlose Diensteinrichtung. Beispiele sind simultane Sprache
und Paketdatendienste. Beispiele sind auch verschiedene Typen von
Paketdatendiensten wie gleichzeitiges Webbrowsen und Videokonferenz.
Zur gleichen Zeit erhöhen
technologische Fortschritte die Bandbreite, welche durch einen einzigen
drahtlosen Kanal zwischen einer drahtlosen Einrichtung und dem drahtlosen
Netzwerk verfügbar
ist.
-
Jedoch
sind moderne Netzwerke noch nicht dazu in der Lage, gleichzeitige
Paketdatendienste zu unterstützen,
die wesentlich unterschiedliche Dienstgrade bzw. Dienstqualitätsgrade
haben. Zum Beispiel werden verzögerungssensitive
Anwendungen wie Videokonferenz und Sprache über IP optimal gesendet ohne
RLP erneute Übertragungen
um die Größenordnung
und Verfügbarkeit
von Paketverzögerung
durch das Netzwerk zu verringern. Andererseits sind Anwendungen
wie FTP, E-Mail, und Webbrowsing weniger verzögerungssensitiv, so dass sie optimal
unter Verwendung von RLP erneuten Übertragungen gesendet werden.
Derzeitige drahtlose Standards unterstützen adäquat eine drahtlose Anwendung,
welche irgendeine von mehreren Dienstgraden benötigt, aber nicht mehrere Anwendungen
in einer einzigen MS, in welcher die Anwendungen verschiedene Dienstgrade
benötigen.
Es gibt somit einen Bedarf im Stand der Technik für einen
Weg des Unterstützens
von mehreren Anwendungen in einer einzigen MS, in welcher die mehreren
Anwendungen verschiedene Dienstgrade benutzen.
-
EP-A-0
975 123 beschreibt die Implementierung eines Protokolls, welches
Pakete gemäß dem Typ
von Daten, welche eingebettet werden, einbettet. Einstellbare Parameter
werden automatisch bei der Schicht gesetzt, wodurch die Parameter
vorgesehen werden, welche gemäß den eingebetteten
Paketdaten eingestellt werden.
-
ZUSAMMENFASSUNG
-
Ausführungsbeispiele,
welche hierin offenbart werden, adressieren die oben ausgeführten Bedarfe,
indem sie einer Mobilstation (MS) und einem Funkzugriffsnetzwerk
(RAN = radio access network) ermöglichen,
eine Verbindung aufzubauen, welche verschiedene Dienstgrade mit
einer einzigen IP Adresse, welche einer MS zugewiesen ist, unterstützen. Die
hierin beschriebenen Ausführungsbeispiele ermöglichen
einem Datensender, eine einzige IP Adresse für mehrere Paketdatenanwendungen
zu verwenden. Die Pakete, welche durch jede der mehreren Paketdatenanwendungen
generiert wurden, werden zu einem einzigen Punkt-zu-Punkt Protokoll (PPP)
Stapel und einer einzigen Hochpegeldatenverbindungsteuerung (HDLC
= high data level control) Rahmenschicht geliefert, um Datenpakete
in Byteströme
zu konvertieren, welche für
die Übertragung durch
Funkverbindungsprotokoll (RLP) Verbindungen geeignet sind. Jeder
der resultierenden mehreren Byteströme wird dann zu einer von mehreren RLP
Verbindungen geliefert, welche verschiedene Eigenschaften der erneuten Übertragung
und Verzögerung
haben. Die RLP Verbindung, welche zum Senden von Daten von jeder
Anwendung ausgewählt wurde,
basiert auf dem Dienstgrad, welcher für die Anwendung am geeignetsten
ist.
-
Der
Empfänger
empfängt
die Daten auf den mehreren RLP Verbindungen und fügt die Byteströme in Rahmen
erneut zusammen. Der Empfänger kann
mehrere HDLC Rahmenschichten verwenden, mit einer HDLC Rahmenschicht
korrespondierend zu einer RLP Verbindung. Alternativ kann der Empfänger eine
einzige HDLC Rahmenschicht und mehrere einfache „Entrahmungs" Schichten („deframer" layers) verwenden.
Jede Entrahmungsschicht korrespondiert zu einer einzigen RLP Verbindung
und sucht nach Flagzeichen, welche HDLC Rahmen in jedem RLP Bytestrom
abstecken. Die Entrahmungsschicht entfernt nicht HDLC Verlasscodes,
sondern liefert vielmehr HDLC Stromdaten zu der einzigen HDLC Schicht
als ein vollständiger,
aufeinander folgender HDLC Rahmen.
-
Somit
wird gemäß einem
ersten Aspekt ein Verfahren zum Vorsehen von Paketdatendiensten gemäß Anspruch
1 vorgesehen. Gemäß einem
zweiten Aspekt wird ein Computer lesbares Medium vorgesehen, welches
das Verfahren des ersten Aspekts ausführt, gemäß Anspruch 13. Dritte und vierte
Aspekte sehen jeweils eine Mobilstation vor, wie in Anspruch 14,
und ein drahtloses Netzwerk, wie in Anspruch 20.
-
Das
Wort „exemplarisch" wird in dieser Anmeldung
durchgängig
verwendet, um „als
ein Beispiel, Fall oder Illustration dienend" zu bedeuten. Jedes Ausführungsbeispiel,
welches als „exemplarisches
Ausführungsbeispiel" beschrieben ist,
soll nicht als notwendigerweise bevorzugt oder vorteilhaft über andere
hierin beschriebene Ausführungsbeispiele
betrachtet werden.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 zeigt
eine Anordnung von Protokollschichten gemäß einem exemplarischen Ausführungsbeispiel;
-
2 zeigt
eine Anordnung von Protokollschichten gemäß einem alternativen Ausführungsbeispiel;
-
3 ist
ein Diagramm einer exemplarischen Mobilstation (MS) Vorrichtung;
-
4 ist
ein Diagramm einer exemplarischen drahtlosen Netzwerkvorrichtung;
-
5 ist
ein Flussdiagramm eines exemplarischen Verfahrens des Sendens von
Paketen durch mehrere RLP Verbindungen, welche verschiedene Dienstgrade
haben; und
-
6 ist
ein Flussdiagramm eines exemplarischen Verfahrens des Empfangens
von Paketen durch mehrere RLP Verbindungen, welche verschiedene
Dienstgrade haben.
-
DETAILLIERTE
BESCHREIBUNG
-
Mehrere
Anwendungen, welche verschiedene Dienstgrade verwenden, können auf
einem einzigen drahtlosen Gerät
unter Verwendung eines separaten Punkt-zu-Punkt Protokoll (PPP)
Stapels für jede
Anwendung unterstützt
werden. Dieser Ansatz hat mehrere Nachteile. Das Unterstützen von
mehreren PPP Instanzen für
eine einzige Mobilstation (MS) würde
notwendigerweise große
Mengen von Datenspeicher in sowohl der MS wie auch dem Paketdatendienstknoten
(PDSN) verbrauchen.
-
Zusätzlich,
wenn eine Funkverbindungsprotokoll (RLP) Sitzung zur Verwendung
durch eine Applikation, welche geringe Latenz benötigt, aufgebaut werden
würde,
sollte das RLP derart konfiguriert sein, dass es ohne erneute Übertragungen
betrieben wird. Während
dies zu der geringen Latenz führen würde, welche
am besten ist für
die darüber
liegende Anwendung, müssten
das Verbindungssteuerungsprotokoll (LCP = link control protocol)
und andere Konfigurationsprotokolle, welche benötigt werden um die PPP Verbindung
aufzubauen, ohne Fehlersteuerung fortfahren. Die resultierende Erhöhung in
der Rahmenfehlerrate kann Verzögerungen
oder sogar das Fehlschlagen der PPP Konfiguration verursachen, bevor
irgendwelche Anwendungspakete gesendet werden können.
-
Die
unten stehend diskutierten Ausführungsbeispiele
beseitigen diese Nachteile durch die Verwendung einer einzigen PPP
Instanz für
mehrere RLP Instanzen zwischen einer MS und dem drahtlosen Netzwerk. 1 zeigt
eine Anordnung von Protokollschichten zwischen einem Sender und
einem Empfänger
von Paketdaten unter Verwendung von verschiedenen konkurrierenden
Dienstgraden. In einem exemplarischen Ausführungsbeispiel unterhält der Sender
zwei Funkverbindungsprotokoll (RLP) Schichten (106 und 108),
eine Hochpegeldatenverbindungssteuerungs (HDLC) Schicht 104 und
eine Punkt-zu-Punkt Protokoll (PPP) Schicht 102. Jede der
RLP Schichtinstanzen verwendet verschiedene Dienstgrade (106 und 108).
Wenn zum Beispiel RLP1S 106 derart
konfiguriert ist, dass es Rahmen ansprechend auf NAK Rahmen erneut überträgt, welche
von dem Empfänger
empfangen wurden, ist RLP2S 108 für keine
erneuten Übertragungen
konfiguriert. Mit anderen Worten sieht RLP1S 106 höhere Zuverlässigkeit
durch die Verwendung eines Fehlersteuerungsprotokolls vor, während RLP2S 108 nicht zuverlässigen Transport
mit festgelegter, minimaler Übertragungsverzögerung vorsieht.
Die Dienstgrade, welche ein solches RLP1S 106 charakterisieren,
werden hierin kurz als „zuverlässig" bezeichnet. Ähnlich wird
der Dienstgrad, welcher ein solches RLP2S 108 charakterisiert,
hierin als „niedrige
Latenz" bezeichnet.
Obwohl exemplarische Ausführungsbeispiele hierin
als gerade zwei Dienstgrade verwendend gezeigt sind, werden Implementierungen,
welche eine größere Anzahl
von verschiedenen Dienstgraden verwenden, auch berücksichtigt
und sollen innerhalb des Umfangs der beschriebenen Ausführungsbeispiele
betrachtet werden. Zum Beispiel kann ein Sender und Empfänger jeweils
zusätzlich
eine dritte RLP Schicht verwenden, welche einen dazwischen liegenden
Dienstgrad vorsieht, welcher einen Grad von Zuverlässigkeit
hat, welcher zwischen „zuverlässig" und „niedriger
Latenz" liegt.
-
In
einem exemplarischen Ausführungsbeispiel
hält der
Empfänger
auch zwei Empfangs RLP Instanzen (116 und 118)
korrespondierend zu den gleichen Dienstgraden wie die RLP Instanzen
in dem Sender (106 und 108). Wenn zum Beispiel
RLP1S 106 zuverlässigen Dienstgrad
vorsieht, dann ist RLP1R 116 konfiguriert
für zuverlässigen Dienstgrad.
Somit, wenn die RLP1R 116 Schicht
eine Unterbrechung in den Sequenzzahlen der empfangenen RLP Rahmen detektiert,
dann antwortet RLP1R 116 durch
Senden eines NAK Rahmens zur sofortigen erneuten Übertragung.
Beim Empfangen eines RLP NAK Rahmens, überträgt RLP1S 106 den
angeforderten Rahmen von seinem Puffer zum erneuten Übertragen
erneut. Wenn andererseits RLP2S 108 für Dienstgrad niedriger
Latenz konfiguriert ist, dann wird RLP2R 118 keinen
NAK Rahmen senden, unabhängig
von Pausen in Rahmensequenzzahlen. Stattdessen können RLP2S 108 und
RLP2R 118 Rahmenfrequenzzahlen vollständig von
den übertragenen
RLP Rahmen auslassen, um mehr Raum für Datennutzlast zu erzeugen.
Zusätzlich
muss RLP2S 108 keinen Puffer zum erneuten Übertragen
von vorher gesendeten Rahmen unterhalten, wodurch Speicher in dem
Sender gespart wird. Auch muss RLP2R 118 keinen
Puffer zum erneuten Sequenzieren unterhalten, wodurch Speicher in
dem Empfänger
gespart wird.
-
Die
PPPs Schicht 102 in dem Sender
kapselt IP Pakete innerhalb von PPP Rahmen. In einem exemplarischen
Ausführungsbeispiel
erhöht
die PPPs Schicht 102 den Paketdurchsatz
durch Durchführen von
IP Headerkompression, wie die gut bekannte Van-Jakobsen (VJ) Headerkompression.
VJ Headerkompression kann zu dem Verlust von bestimmter Headerinformation
führen,
welche anderenfalls im Multiplexieren von PPP Paketen zwischen den
mehreren RLP Schichten (106 und 108) nützlich wäre. In einem
exemplarischen Ausführungsbeispiel
liefert die PPPs Schicht 102 ganze
PPP Pakete zu der HDLCs Schicht 104,
und liefert auch Information, welche verwendet werden kann, um zu
bestimmen, durch welche RLP Schicht die eingerahmten Daten gesendet
werden sollen.
-
In
einem exemplarischen Ausführungsbeispiel
sieht die PPPs Schicht 102 einen
Dienstgradidentifizierer oder einen RLP Instanzidentifizierer mit jedem
PPP Paket vor, welches zu der HDLCs Schicht 104 geliefert
wird. Die HDLCs Schicht 104 addiert Flagzeichen
zwischen die PPP Pakete und addiert eine zyklische Redundanzprüfsumme (CRC
= cyclial redundancy checksum) zu jedem PPP Paket, welches von der
PPPS Schicht 102 empfangen wurde. Die
HDLCS Schicht 104 führt ferner
HDLC Verlassen durch, um sicher zu stellen, dass kein Flag oder HDLC
Steuerungszeichen innerhalb der Daten eines einzigen Rahmens auftreten.
Die HDLCS Schicht 104 führt typischerweise
HDLC Verlassen durch Ersetzen jedes Flags oder Steuerungszeichens
durch eine Verlassensequenz durch, welche mindestens zwei Zeichen
hat.
-
Der
Empfänger
in 1 ist mit einer separaten HDLC Schicht (112 und 114)
für jede
RLP Instanz (116 und 118) gezeigt. Die in den
RLP Rahmen durch jede RLP Instanz (116 und 118)
empfangenen Bytes werden zu den korrespondierenden HDLC Schichtinstanzen
(112 und 114) präsentiert. Jede HDLC Schichtinstanz
(112 und 114) lokalisiert Verlassensequenzen in
ihrem jeweiligen Eingangsdatenstrom und konvertiert jede Verlassensequenz
zu rück
zu den ursprünglichen
Daten innerhalb der übertragenen
Rahmen. Die HDLC Schichtinstanzen (112 und 114)
führen
auch Überprüfungen der
CRC's aus, welche
in den Rahmen empfangen wurden, um zu bestimmen, ob die Rahmen mit
Kommunikationsfehlern empfangen wurden. Rahmen, welche nicht korrekte
CRC's haben, werden
lautlos bzw. ohne weiteres Aufheben verworfen, und Rahmen, welche
korrekte CRC's haben,
werden zu der nächsten
Protokollschicht hinauf (PPPR) 110 weiter
geleitet.
-
2 zeigt
eine alternative Anordnung von Protokollschichten. Die Anordnung
von Protokollschichten in dem Sender in 2 ist identisch
zu derjenigen des Senders in 1. In dem
Empfänger wird
jedoch eine einzige HDLCR Schicht 212 verwendet,
anstatt einer für
jede RLP Instanz. Entrahmungschichten (214 und 220)
werden zwischen die RLP Schichten (218 und 216)
und der HDLCR Schicht 212 eingesetzt.
Der Zweck der Entrahmer (214 und 220) ist, sicher
zu stellen, dass nur ganze HDLC Rahmen zu der HDLCR Schicht 212 geliefert
werden. Das Liefern von nur ganzen HDLC Rahmen macht es unnötig für die HDLCR Schicht 212, zwischen Daten von mehreren
HDLC Rahmen zu differenzieren, oder sie erneut zusammenzusetzen.
Die HDLCR Schicht 212 entfernt
Verlassen- bzw. Escape-Sequenzen und prüft die CRC für einen
gesamten Rahmen. Wenn die CRC als korrekt bewertet wird, dann leitet
die HDLCR Schicht 212 den vollständigen PPP
Rahmen zu der PPPR Schicht 210 weiter.
Wenn die CRC nicht korrekt ist verwirft die HDLCR Schicht 212 die
fehlerhaften Rahmendaten lautlos.
-
Ein
Vorteil der Verwendung von Entrahmungschichten (214 und 220)
ist, dass sie dem Empfänger
ermöglichen,
mehrere Instanzen von RLP (218 und 216) ohne irgendwelche
Veränderungen
in der Implementierung der HDLCR Schicht 212 zu
verwenden. Die HDLCR Schicht 212 muss
nicht einmal wissen, dass die empfangenen Bytes durch zwei verschiedene
RLP Verbindungen empfangen wurden. Die Unabhängigkeit der Implementierung
ist insbesondere wichtig in Netzwerkimplementierungen, in welchen
die HDLCR Protokollschicht 212 in
einer unterschiedlichen physikalischen Einrichtung als die RLP Protokollschichten
residiert. Zum Beispiel kann die HDLCR Schicht
in nerhalb eines Standardpaketrouters existieren, und die RLP Schichten
können
innerhalb einer Paketsteuerungsfunktion (PCF = packet control function)
innerhalb eines Funkzugriffsnetzwerks (RAN = radio access network)
eines drahtlosen Netzwerks existieren. Die Verwendung der Entrahmungsschichten
macht es möglcih,
mehrere RLP Schichten und Dienstgrade ohne Veränderung der Software des Standardpaketrouters
zu unterstützen.
-
3 zeigt
eine exemplarische Mobilstation (MS), welche die mehreren Dienstgrade
wie oben stehend diskutiert unterstützt. Ein Steuerungsprozessor 302 baut
eine drahtlose Verbindung durch ein drahtloses Modem 304,
einen Übertrager 306,
und eine Antenne 308 wie gezeigt auf. In einem exemplarischen
Ausführungsbeispiel
werden das drahtlose Modem 304 und der Übertrager 306 gemäß der cdma2000
Spezifikation betrieben. Alternativ können das drahtlose Modem 304 und
der Übertrager 306 gemäß einem
anderen drahtlosen Standard wie IS-95, W-CDMA, oder EDGE betrieben
werden.
-
Der
Steuerungsprozessor 302 wird mit einem Speicher 310 verbunden,
welcher Code oder Instruktionen hat, welche den Steuerungsprozessor 302 anweisen,
die Protokollschichten, wie in 1 bis 2 gezeigt
ist, aufzubauen und zu verwenden. Der Speicher 310 kann
einen RAM Speicher, Flashspeicher, ROM Speicher, EPROM Speicher,
EEPROM Speicher, Register, Festplatte eine entfernbare Scheibe,
eine CD-Rom, oder irgendeine andere Form von Speichermedium oder
Computer lesbaren Medien, wie im Stand der Technik bekannt, aufweisen.
-
In
einem exemplarischen Ausführungsbeispiel
verwendet der Steuerungsprozessor 302 einen Teil des Speichers 310 als
Speicherpuffer (312 und 314), der zum Betreiben
der mehreren RLP Schichten notwendig ist. Wenn zum Beispiel der
RLP Puffer 312 zu einer zuverlässigen RLP Verbindung korrespondiert,
wird er einen Puffer zur erneuten Übertragung für RLP Daten,
welche gesendet werden, aufweisen und einen Puffer zum erneuten
Sequenzieren für
RLP Daten, welche empfangen werden, aufweisen. Wenn der RLP2 Puffer 314 zu einer RLP Verbindung
mit niedriger Latenzzeit korrespondiert, dann muss der RLP2 Puffer 314 weder einen Puffer
zur erneuten Übertragung
noch einen Puffer zum erneuten Sequenzieren haben. Weil diese zwei
Puffer nicht benötigt
werden belegt der RLP2 Puffer 314 eine
kleinere Menge von Speicher als der RLP Puffer 312. Obwohl
als nicht zusammenhängend
gezeigt, können die
Puffer (312 und 314) auch überlappen, wenn einige Datenstrukturen
zwischen den mehreren RLP Implementierungen geteilt bzw. gemeinsam
genutzt werden.
-
4 zeigt
ein exemplarisches drahtloses Kommunikationsnetzwerk, welches eine
Verbindung mit einem Paketnetzwerk wie dem Internet 416 hat. Das
drahtlos Kommunikationsnetzwerk weist ein RAN 412 und einen
PDSN 414 auf. Das RAN 412 weist ferner einen Auswähler 402 auf,
welcher mit einer oder mehreren drahtlosen Basisstationen (nicht gezeigt)
verbunden ist. Der Auswähler 402 in
dem RAN 412 ist im Allgemeinen ein Subsystem eines Basisstationssteuerelements
(BSC = base station controller), welches nicht gezeigt ist. Alle
drahtlosen Daten, welche zu der MS gesendet werden oder von ihr empfangen
werden, werden durch den Auswähler 402 geroutet.
Zusätzlich
zu dem Auswähler 402 weist der
RAN 412 auch eine Paketsteuerungsfunktion (PCF) 404 auf.
Für Paketdatendienstoptionen
sendet der Auswähler 402 Paketdaten,
welche von der MS empfangen wurden, durch die PCF 404,
welche ferner einen Steuerungsprozessor 406 und einen Speicher 418 aufweist.
-
Der
Speicher 418 enthält
Code oder Instruktionen, welche den Steuerungsprozessor 406 anweisen,
die in den 1 bis 2 gezeigten
Protokollschichten aufzubauen und zu verwenden. Der Speicher 418 kann
RAM Speicher, Flashspeicher, ROM Speicher, EPROM Speicher, EEPROM
Speicher, Register, Festplatte, eine entfernbare Scheibe, eine CD-ROM
oder irgendeine andere Form von Speichermedium oder Computer lesbaren
Medien, wie im Stand der Technik bekannt ist, aufweisen.
-
In
einem exemplarischen Ausführungsbeispiel
baut der Steuerungsprozessor 406 mehrere Pufferbereiche
(408 und 410) innerhalb des Speichers 418 für die verschiedenen
RLP Verbindungen auf, welche mit mehreren Mobilstationen aufgebaut werden.
In einem exemplarischen Ausführungsbeispiel
weist ein Pool von RLP1 Puffern 408 Puffer
zur erneuten Übertragung
und zum erneuten Sequenzieren zur Verwendung in zuverlässigen RLP
Instanzen auf. Ein anderer Pool von RLP2 Puffern 410 wird
verwendet für
RLP Instanzen mit niedriger Latenz, und weist deshalb keine Puffer
zur erneuten Übertragung und
zum erneuten Sequenzieren auf. Der Steuerungsprozessor 406 kann
mehr als eine RLP Instanz zu einer einzigen MS zuweisen. Zum Beispiel
können ein
RLP1 Puffer und ein RLP2 Puffer
einer einzigen MS, auf welcher eine Kombination von verzögerungssensitiven
und nichtverzögerungssensitiven Anwendungen
läuft,
zugewiesen sein.
-
Der
Steuerungsprozessor 406 ist auch mit einem PDSN 414 verbunden.
In einem exemplarischen Ausführungsbeispiel,
wenn die MS ein IP Paket zu dem Paketnetzwerk 416 sendet,
empfängt
der Steuerungsprozessor 406 die RLP Rahmen von dem Auswähler 402 und
verwendet den zugeordneten RLP Puffer (408 oder 410),
um einen Strom von Bytes aus den RLP Rahmen zu extrahieren. Die
Bytes werden dann von dem Steuerungsprozessor 406 zu dem PDSN 414 gesendet,
welcher vollständige
IP Pakete (diejenigen, welche korrekte CRC Werte haben), aus dem
Bytestrom gemäß dem HDLC
Protokoll extrahiert. Der PDSN 414 leitet dann die resultierenden
IP Pakete zu dem Paketnetzwerk 416 weiter. Wenn der PDSN 414 eine
einzige HDLC Verbindung für
mehrere RLP Verbindungen zu einer einzigen MS aufrecht erhält, dann
führt der
Steuerungsprozessor 406 Entrahmung vor dem Senden der Bytes
von den RLP Rahmen zu dem PDSN 414 durch. Das Ergebnis
des Entrahmens ist, dass vollständige
HDLC Rahmen durch den Steuerungsprozessor 406 zu dem PDSN 414 weitergeleitet
werden. Mit anderen Worten stellt der Steuerungsprozessor 406 sicher,
dass keine Daten von einem HDLC Rahmen, welche über eine RLP Verbindung empfangen
wurden, mit den Daten von einem HDLC Rahmen, welcher über eine
andere RLP Verbindung empfangen wurden, vermischt werden. Das Entrahmen
erlaubt bessere Ressourcenverwendung zusätzlich zu der Ermöglichung
der Verwendung von existierenden PDSNs, welche nicht mehr als eine
einzige PPP/HDLC zu einer IP Adresse zuweisen können.
-
Wenn
das Paketnetzwerk 416 ein Paket zu der MS sendet, werden
die Pakete zunächst
bei dem PDSN 414 empfangen. In einem exemplarischen Ausführungsbeispiel
kapselt der PDSN 414 die IP Datengramme, welche zu der
MS adressiert sind, in PPP Pakete und verwendet HDLC Einrahmen zum Konvertieren
der resultierenden PPP Pakete in einem Strom von Bytes. In einem
exemplarischen Ausführungsbeispiel
weist der PDSN 414 eine einzige HDLC Instanz zu einer einzigen
MS zu, und verwendet diese HDLC Instanz, um HDLC Einrahmen von irgendeinem
IP Paket, welches zu der MS adressiert ist, durchzuführen. In
einem alternativen Ausführungsbeispiel
kann der PDSN 414 mehrere HDLC Instanzen haben, welche
einer einzigen MS zugewiesen sind, derart dass jede HDLC Instanz
zu einer einzigen RLP Verbindung innerhalb der MS korrespondiert.
-
Die
Verbindungen zwischen dem PDSN 414 und dem Netzwerk 416,
zwischen dem PDSN 414 und dem Steuerungsprozessor 406,
und dem Steuerungsprozessor 406 und dem Auswähler 402,
können
irgendeines einer Vielzahl von Interfaces einschließlich Ethernet,
T1, ATM, oder anderes Faser-, drahtgebundenes oder drahtloses Interface
verwenden. In exemplarischen Ausführungsbeispielen werden die
Verbindungen zwischen dem Steuerungsprozessor 406 und dem
Speicher 418 im Allgemeinen nicht nur eine direkte Hardwareverbindung
wie ein Speicherbus sein, sondern können auch einer von anderen
Typen von oben stehend diskutierten Verbindungen sein.
-
5 ist
ein Flussdiagramm eines exemplarischen Verfahrens des Sendens von
Paketen durch mehrere RLP Verbindungen, welche unterschiedliche
Dienstgrade haben. In einem exemplarischen Ausführungsbeispiel verwendet ein
Steuerungsprozessor der Sendevorrichtung (302 von 3 oder 406 von 4)
das Verfahren, welches durch 5 gekennzeichnet
ist. Bei Schritt 502 kapselt der Sender das IP Paket, welches
gesendet wer den soll, in ein PPP Paket. In einem exemplarischen
Ausführungsbeispiel
wird IP Headerkomprimierung wie Van-Jakobsen (VJ) Headerkomprimierung
auch bei Schritt 502 durchgeführt. Bei Schritt 504 konvertiert dann
der Sender die PPP Pakete in einen Bytestrom gemäß dem HDLC Protokoll. Insbesondere
wird jedes PPP Paket in einen HDLC Rahmen konvertiert. Eines oder
mehrere Flagzeichen werden zwischen HDLC Rahmen in den Bytestrom
eingefügt,
und Flag- und Steuerungszeichen, welche innerhalb von jedem Rahmen
erscheinen, werden durch Verlassensequenzen ersetzt. Die vielleicht
gängigsten
Beispiele von HDLC Verlassen sind Ersetzten der Flagsequenz Oktett
0x7e (Hexadezimal) durch die zwei Oktette 0x7d 0x5e (Hexadezimal)
und Ersetzen von Oktett 0x7d (Hexadezimal) durch die zwei Oktette
0x7d 0x5d (Hexadezimal). Auch wird bei Schritt 504 ein CRC
berechnet für
jeden Rahmen und bei dem Ende des Rahmens (vor dem Flagzeichen,
welches das Ende des Rahmens signalisiert) eingefügt. Bei
Schritt 506 bestimmt der Sender, welcher eines Satzes von verfügbaren Dienstgraden
verwendet werden soll, um die Daten für den Rahmen zu senden, basierend auf
dem Typ des Pakets. IP Pakete, welche unter Verwendung von nicht
verzögerungssensitiven
Anwendungen wie FTP oder TCP gesendet werden, werden bei Schritt 508 unter
Verwendung von zuverlässigem
RLP (mit erneuter Übertragung
und erneuter Sequenzierung) gesendet. Auch werden alle Pakete, welche
nicht IP Pakete sind, aber immer noch nicht verzögerungssensitiv (wie IPCP oder
LCP Pakete) bei Schritt 508 unter Verwendung von zuverlässigem RLP
gesendet. Verzögerungssensitive
Typen von Paketen, wie Echtzeitprotokoll (RTP = real time protocol)
Pakete, welche für
Videokonferenzdienste verwendet werden, werden bei Schritt 510 unter
Verwendung von RLP mit niedriger Latenz gesendet. Wie oben stehend
diskutiert sendet RLP mit niedriger Latenz keine erneuten Übertragungen
von RLP Rahmen, welche aufgrund von Kommunikationsfehlern verloren
gegangen sind, oder fordert solche an. Somit werden zwei Dienstgrade
in dem exemplarischen Ausführungsbeispiel
von 5 gezeigt, der Fachmann wird erkennen, dass andere
Systeme mehr als zwei verschiedene Dienstgrade ohne Abweichung von
dem Umfang der beschriebenen Ausführungsbeispiele verwenden können. Zum
Beispiel kann der Sender bei Schritt 506 wählen, einige
Typen von Paketen durch eine RLP Verbindung zu senden, welche einen
dazwischen liegenden Pegel von Zuverlässigkeit hat.
-
6 ist
ein Flussdiagramm eines exemplarischen Verfahrens des Empfangens
von Paketen durch mehrere RLP Verbindungen, welche verschiedene
Dienstgrade haben. In einem exemplarischen Ausführungsbeispiel verwendet ein
Steuerungsprozessor der empfangenden Vorrichtung (302 von 3 oder 406 von 4)
das Verfahren, welches durch 6 charakterisiert
ist. Bei Schritt 602 verarbeitet der Empfänger empfangene
RLP Rahmen, welche durch eine oder mehr RLP Verbindungen empfangen
wurden. In einem exemplarischen Ausführungsbeispiel, wie oben stehend
beschrieben, werden die RLP Rahmen durch zwei Typen von RLP Verbindungen,
niedriger Latenz und zuverlässig empfangen.
-
Wie
in der vorher stehend genannten IS-707, haben RLP Rahmen, welche
durch eine zuverlässige RLP
Verbindung empfangen wurden, Sequenzzahlen, welche der Empfänger benutzt,
um die Rahmen erneut zu sequenzieren und erneute Übertragung von
verlorenen Rahmen anzufordern. Wenn zum Beispiel ein RLP Rahmen,
welcher die Sequenzzahl „7" hat, aufgrund von
Kommunikationsfehlern verloren geht, sendet der Empfänger einen
NAK Rahmen, um die erneute Übertragung
des Rahmens anzufordern. Wenn der erneut übertragene Rahmen empfangen wird,
werden die Daten, welche durch den Rahmen getragen werden, verwendet,
um den Strom von Datenbytes zu vervollständigen, bevor irgendwelche nachfolgenden
Datenbytes zu der HDLC Schicht geliefert werden. Als ein Ergebnis
wird der Strom von Datenbytes, welche aus den RLP Rahmen einer zuverlässigen RLP
Verbindung extrahiert wurden, im Allgemeinen keine Lücken haben,
verglichen damit, was durch den Sender gesendet wurde. Der Preis
für das
Verhindern von Lücken
in den Daten ist variable Latenz.
-
Im
Gegensatz dazu, wenn ein RLP Rahmen aufgrund eines Kommunikationsfehlers
auf einer RLP Verbindung niedriger Latenz verloren geht, wird keine
erneute Übertragung
angefordert oder gesendet. Alle Datenbytes, wel che in einem solchen
verloren gegangenen RLP Rahmen getragen werden, werden aus dem Strom
von Datenbytes ausgelassen, welcher der HDLC Schicht des Empfängers präsentiert
wird. Mit anderen Worten verursacht das Verlieren eines RLP Rahmens
auf einer RLP Verbindung niedriger Latenz immer eine Lücke in dem
Strom von Datenbytes des Empfängers,
verglichen damit, was durch den Sender gesendet wurde. Jedoch hat
ein RLP Protokoll niedriger Latenz eine Latenz, welche sowohl fest
wie auch klein ist, wodurch es sehr geeignet wird zum Senden von
verzögerungssensitiven Typen
von Paketen, wie RTP Paketen.
-
In
einem exemplarischen Ausführungsbeispiel,
welches in 2 beschrieben ist, verwendet der
Empfänger
Entrahmer (214 und 220 in 2), welche
durch mehrere RLP Verbindungen (218 und 216 in 2)
empfangen wurden, um vollständige HDLC
Rahmen von Daten zu einer einzigen HDLC Protokollschicht (212 in 2)
zu liefern. In 6 wird dieses Entrahmen bei
Schritt 604 durchgeführt. Bei
Schritt 606 entfernt die HDLC Protokollschicht (212 in 2)
HDLC Verlassen-Sequenzen, welche durch den Sender eingefügt wurden,
und überprüft den CRC
von jedem HDLC Rahmen. Bei Schritt 606 wird jeder HDLC
Rahmen, welcher einen nicht korrekten CRC trägt, lautlos durch den Empfänger verworfen.
Die resultierenden PPP Rahmen werden dann durch die HDLC Protokollschicht
zu der PPP Schicht geliefert. Bei Schritt 608 entkapselt
die PPP Schicht die empfangenen Pakete, wodurch der PPP Header entfernt
wird, und alle anderen Veränderungen,
welche durch den Sender gemacht wurden. Bei Schritt 608,
wenn der Sender den IP Header des empfangenen Pakets (zum Beispiel
unter Verwendung von VJ Headerkompression) komprimiert hat, dann
wird der IP Header zu seiner ursprünglichen Größe und Inhalten expandiert.
Die entkapselten Pakete werden dann bei Schritt 610 weitergeleitet.
Obwohl die oben beschriebenen Ausführungsbeispiele primär das Kapseln
von IP Paketen diskutieren, können
PPP und HDLC auch verwendet werden, um Pakete für andere Protokolle wie IPX
oder LCP zu senden.
-
In
einem exemplarischen Ausführungsbeispiel
unter Verwendung von Entrahmern (214 und 220 in 2)
werden Schritte 602 und 604 durch den Steuerungsprozessor
(406 von 4) innerhalb des RAN (412 von 4)
durchgeführt,
und die Schritte 606, 608, und 610 werden
durch den PDSN (414 von 4) durchgeführt. In
einem alternativen Ausführungsbeispiel
wie demjenigen, welches in 1 gezeigt
ist, weist der PDSN (414 von 4) mehrere HDLC
Schichten (112 und 114 von 1) einer
einzigen MS zu. In diesem Ausführungsbeispiel
wird kein Entrahmen durch den Empfänger durchgeführt, und
Schritt 604 wird ausgelassen. Bei Schritt 602 liefert
jede RLP Schicht (116 und 118 von 1)
Daten, welche von empfangenen RLP Rahmen extrahiert wurden, direkt
zu der korrespondierenden HDLC Schicht (jeweils 112 und 114 von 1).
-
Somit
ist hierin ein Verfahren und eine Vorrichtung zum Vorsehen von mehreren
Pegeln von Dienstqualität
in einer drahtlosen Paketdatendienstverbindung beschrieben. Der
Fachmann wird verstehen, dass Information und Signale unter Verwendung von
irgendeiner einer Vielzahl von verschiedenen Technologien und Techniken
repräsentiert
werden können.
Zum Beispiel können
Daten, Anweisungen, Kommandos, Information, Signale, Bytes, Symbole, und
Chips, auf welche durchgängig
in der obigen Beschreibung Bezug genommen wurde, durch Spannungen,
Ströme,
elektromagnetische Wellen, magnetische Felder oder Teilchen, optische
Felder, oder Teilchen, oder jede Kombination davon, repräsentiert werden.
Der Fachmann wird auch erkennen, dass der PDSN in den oben beschriebenen
Ausführungsbeispielen
auch durch eine IWF ohne Abweichung von dem Umfang der beschriebenen
Ausführungsbeispiele
ersetzt werden kann.
-
Der
Fachmann wird ferner erkennen, dass die verschiedenen illustrativen
logischen Blöcke,
Module, Schaltkreise, und Algorithmusschritte, welche in Verbindung
mit den hierin offenbarten Ausführungsbeispielen
beschrieben wurden, durch elektronische Hardware, Computersoftware,
oder Kombinationen von beiden implementiert werden können. Um diese
Austauschbarkeit von Hardware und Software klar zu zeigen, wurden
verschiedene illustrative Komponenten, Blöcke, Module, Schaltkreise und
Schritte oben allgemein durch ihre Funktionalität beschrieben. Ob solche Funktionalität als Hardware
oder Software implementiert wird, hängt von der bestimmten Anwendung
und Designeinschränkungen,
welche dem gesamten System auferlegt sind, ab. Der Fachmann wird
die beschriebene Funktionalität durch
verschiedene Wege für
jede bestimmte Anwendung implementieren, aber solche Implementierungsentscheidungen
sollen nicht derart interpretiert werden, dass sie eine Abweichung
von dem Umfang der vorliegenden Erfindung verursachen.
-
Die
verschiedenen illustrativen logischen Blöcke, Module, und Schaltkreise,
welche in Verbindung mit den hierin offenbarten Ausführungsbeispielen
beschreiben wurden, können
durch einen Mehrzweckprozessor, einen digitalen Signalprozessor (DSP),
einen anwendungsspezifischen integrierten Schaltkreis (ASIC = application
specific integrated circuit), ein Feldprogrammierbares Gate Array
(FPGA = field programmable gate array) oder andere programmierbare
logische Einrichtungen, diskrete Gatter oder Transistorlogik, diskrete
Hardwarekomponenten, oder irgendeine Kombination davon, welche ausgebildet
ist, um die hierin beschriebenen Funktionen auszuführen, implementiert
oder durchgeführt
werden. Ein Merzweckprozessor kann ein Mikroprozessor sein, aber
in einer Alternative kann der Prozessor irgendein konventioneller
Prozessor, Controller, Mikrocontroller, oder eine Zustandsmaschine sein.
Ein Prozessor kann auch als eine Kombination von Berechnungseinrichtungen
implementiert sein, zum Beispiel eine Kombination eines DSP und
eines Mikroprozessors, einer Vielzahl von Mikroprozessoren, einem
oder mehreren Mikroprozessoren zusammen mit einem DSP Kern, oder
irgendeine andere solche Konfiguration.
-
Die
Schritte eines Verfahrens oder Algorithmus, welches in Verbindung
mit den hierin offenbarten Ausführungsbeispielen
beschrieben wurden, können
direkt in Hardware, in einem Softwaremodul, welches durch einen
Prozessor ausgeführt
wird, oder in einer Kombination der beiden, ausgeführt sein.
Ein Softwaremodul kann in einem RAM Speicher, Flashspeicher, ROM
Speicher, EPROM Speicher, EEPROM Speicher, Registern, Festplatte,
einer entfern baren Scheibe, einer CD-Rom oder irgendeiner anderen
Form von Speichermedium oder Computer lesbaren Medien, wie im Stand
der Technik bekannt ist, residieren. Ein exemplarisches Speichermedium ist
mit dem Prozessor derart gekoppelt, dass der Prozessor Information
aus dem Speichermedium auslesen kann und Information in dieses schreiben
kann. In der Alternative kann das Speichermedium integral in dem
Prozessor enthalten sein. Der Prozessor und das Speichermedium können in
einem ASIC residieren. Der ASIC kann in einer Mobilstation residieren. In
der Alternative können
der Prozessor und das Speichermedium als diskrete Komponenten in
einer Mobilstation residieren.
-
Die
vorstehende Beschreibung der offenbarten Ausführungsbeispiele wird geliefert,
um jedem Fachmann zu ermöglichen,
die vorliegende Erfindung auszuführen
oder zu benutzen. Verschiedene Modifikationen dieser Ausführungsbeispiele
werden dem Fachmann offensichtlich sein, und die allgemeinen Prinzipien,
welche hierin definiert wurden, können auf andere Ausführungsbeispiele
ohne Abweichung von dem Umfang der Erfindung angewandt werden. Somit
ist es nicht beabsichtigt, dass die vorliegende Erfindung auf die
hierin gezeigten Ausführungsbeispiele
eingeschränkt
wird, sondern ihr soll der weiteste Umfang wie durch die Ansprüche definiert
zugestanden werden.