-
GEBIET DER ERFINDUNG
-
Diese Erfindung betrifft im Allgemeinen
Kommunikationen und insbesondere Paketkommunikationssysteme.
-
ALLGEMEINER STAND DER
TECHNIK
-
Zugang zum Internet erfolgt nun über die
drahtlose Domäne.
Zum Beispiel ist es nun möglich,
kleine Handgeräte,
wie den Palm VIITM, zu kaufen, die Zugang
zum Internet über
eine drahtlose Verbindung zu einem Dienstanbieter bieten. Ferner
wirbt wenigstens ein Gerätehersteller
für ein
drahtloses Internet-Zugangssystem (d. h., das Wireless Internet
Access System von Lucent Technologies Inc.). In einer solchen Umgebung
beschäftigen
sich Gerätehersteller
und Dienstanbieter zunehmend mit Fragen des "Quality-of-Service" (QoS-Dienstgüte) bei der Bereitstellung
eines solchen Dienstes für
ihre Kunden. Einige Beispiele für
(QoS-Fragen sind
Garantien bezüglich
z. B. der Bitrate, Verzögerung
und des Paketverlustes.
-
WO-A-99 21313 beschreibt Verfahren
und Systeme für
ein drahtloses ATM-Netz, das hohe Qualität und Dienstablaufsteuerung
bietet. In einer Ausführungsform
werden ein drahtloses ATM-Netz mit Ablaufsteuerung über VC,
ein virtueller Framer für
eine periodische, anfragenlose Ablaufsteuerung und ein virtueller Shaper
für eine
Ablaufsteuerung auf Anforderungsbasis bereitgestellt.
-
KURZDARSTELLUNG
DER ERFINDUNG
-
Ein Verkehrsmanagementsystem und
ein Verfahren gemäß der Erfindung
sind wie in den unabhängigen
Ansprüchen
dargelegt. Bevorzugte Formen sind in den abhängigen Ansprüchen beschrieben.
-
Wir haben ein Verkehrsmanagementsystem
zur Behandlung von Dienstgütefragen
in einem Paketsystem entwickelt. Insbesondere ist gemäß der Erfindung
ein Peak-Rate-Shaper
mit einer Weighted-Fair-Queuing-Ablaufsteuerung kombiniert, um einer
Reihe von Benutzerverbindungen Dienstgütegarantien zu bieten.
-
In einer Ausführungsform der Erfindung ist
ein vorgelagerter Peak-Rate-Shaper mit einer Weighted-Fair-Queuing-Ablaufsteuerung
kombiniert, um einer Reihe von Benutzerverbindungen sowohl Peak-Rate-Shaping
als auch eine Durchschnittsbandbreitengarantie zu bieten. Zusätzlich ist
ein nachgelagerter Peak-Rate-Shaper mit der Weighted-Fair-Queuing-Ablaufsteuerung
kombiniert um zu garantieren, dass Pakete nicht bei einer höheren Datenrate übertragen
werden als der verfügbaren
Abwärts-/Aufwärtstreckenbandbreite.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 zeigt
ein veranschaulichendes Blockdiagramm eines Verkehrsmanagementsystems
gemäß den Prinzipien
der Erfindung;
-
2 zeigt
ein veranschaulichendes Verfahren zur Verwendung in einem nachgelagerten
Peak-Rate-Shaper gemäß den Prinzipien
der Erfindung;
-
3 zeigt
einen Abschnitt des drahtlosen Internet-Zugangsnetzes, der die Prinzipien der
Erfindung verkörpert;
-
4 und 5 zeigen veranschaulichende
Aufwärtsstrecken-Ausführungsformen
eines Verkehrsmanagementsystems gemäß den Prinzipien der Erfindung;
-
6 und 7 zeigen andere veranschaulichende
Ausführungsformen
eines Verkehrsmanagementsystems; und
-
8 zeigt
ein veranschaulichendes Blockdiagramm auf hoher Ebene eines Paketservers
zur Verwendung gemäß den Prinzipien
der Erfindung.
-
AUSFÜHRLICHE
BESCHREIBUNG
-
Ein Abschnitt eines Kommunikationssystems,
das ein veranschaulichendes Verkehrsmanagementsystem 100 gemäß den Prinzipien
der Erfindung umfasst, ist in 1 dargestellt.
Mit Ausnahme des Erfindungsgedankens sind die in 1 dargestellten Elemente allgemein bekannt
und werden nicht näher
beschrieben. Zum Beispiel sind Weighted-Fair-Queuing-Ablaufsteuerungen
an sich in der Technik bekannt (siehe z. B. "A Self-Clocked Fair Queueing Scheme
for Broadband Applications",
J. Golestani, Proceeding of IEEE Infocom 1994, S. 5c1.1-5c1.11). Ebenso sind
Peak-Rate-Shaper (auch als "Traffic-Shaper" bekannt) an sich in
der Technik bekannt (siehe z. B. "ISDN and Broadband ISDN with Frame Relay
and ATM", von. W
Stallings, Prentice Hall, 1995, S. 382–406, 492–516). Obwohl die Elemente
des Verkehrsmanagementsystems 100 als einzelne Blockelemente dargestellt
sind, enthalten sie speicherprogrammierte Steuerungsprozessoren,
Speicher und geeignete Schnittstellenkarten (nicht dargestellt).
Der Begriff "Paketserver", wie hier verwendet,
betrifft einen beliebigen Paketprozessor, für den die zuvor genannten Elemente
des Verkehrsmanagementsystems 100 Veranschaulichungen sind. Zusätzlich wird
der Erfindungsgedanke durch Verwendung herkömmlicher Programmierungstechniken
umgesetzt, die als solche hier nicht beschrieben werden. Da Verbindungsberechtigungstechniken
für den
Erfindungsgedanken nicht notwendig sind, wird angenommen, dass jeder
Benutzer mit einem Verbindungsberechtigungsprozess (nicht dargestellt)
verhandelt, um eine Committed Information Rate (CIR – garantierte
Bandbreite) in Bits pro Sekunde (bps) einzurichten. Die CIR für einen
bestimmten Benutzer wird hier als CIRi bezeichnet,
wobei die Anzahl von Benutzern gleich N ist und 1 ≤ i ≤ N ist.
-
Das Verkehrsmanagementsystem 100
umfasst eine Anzahl oder einen Satz vorgelagerter Peak-Rate-Shaper 105-1 bis 105-N zur
Bedienung von N Benutzern, von welchen jeder einen zugehörigen Benutzerpaketstrom
Ul bis UN hat; eine
Weighted-Fair-Queuing-Ablaufsteuerung (WFQ-Ablaufsteuerung) 120; und einen
nachgelagerten Peak-Rate-Shaper 130.
-
Die vorgelagerten Peak-Rate-Shaper 105 werden
zur Garantie verwendet, dass die Peak-Rate jeder Verbindung der
Vereinbarung mit dem Netz entspricht. Zum Beispiel implementiert
jeder Peak-Rate-Shaper einen Token-Generator (nicht dargestellt),
eine Benutzerwarteschlange (nicht dargestellt) und eine Übertragungswarteschlange
(nicht dargestellt). Der Token-Generator erzeugt wiederholt Token
(in Bytes) bei der Peak-Rate Pi für eine maximale Burst-Größe (in Bytes)
und ist für
eine Periode Ti unbelegt, so dass die gesamte
durchschnittliche Token-Rate gleich der CIR für diesen Benutzer ist d. h.,
CIRi. Jedes Mal, wenn ein Paket des Benutzers
i bei einem entsprechenden Paket-Shaper eintrifft, wird dieses Paket
durch das System zu der Übertragungswarteschlange
geleitet, wenn der Paket-Shaper
ein Token hat, das groß genug
ist, um die Größe des neu
eingetroffenen Paketes aufzunehmen. Wenn im Gegensatz dazu kein
ausreichend groβes
Token vorliegt, wird das neu eingetroffene Paket in der Benutzerwarteschlange
eingereiht, bis ein Token verfügbar
ist, das zumindest größer oder
gleich seiner Größe ist.
Es wird angenommen, dass der vorgelagerte Peak-Rate-Paket-Shaper
eine Dienstkennung für
jeden Benutzerpaketstrom Ui erzeugt. Diese
Dienstkennung beruht auf der durchschnittlichen Bandbreite, CIRi, die von jedem Benutzer vereinbart wurde,
und der Länge des
bestimmten Pakets. Pakete, die von einem entsprechenden Paket-Shaper
zu der Übertragungswarteschlange
geleitet werden, werden mit ihrer entsprechenden Dienstkennung gekennzeichnet
(eine solche Kennzeichnung ist in dem oben genannten Artikel von
Golestani beschrieben).
-
Zum Beispiel wird jedes eintreffende
Paket P
k einer Sitzung k mit einer Dienstkennung
F
k gekennzeichnet, bevor es in die Übertragungswarteschlange
gestellt wird (wobei i = 1, 2, ..., und k ∊ B und B der
Satz zugelassener Verbindungen ist). Für jede Sitzung k werden die
Dienstkennungen der eintreffenden Pakete iterativ berechnet:
wobei F 0 / k = 0, L
k die
Länge des
Pakets P
k in Bytes ist; r
k die
vereinbarte Rate für
die k. Sitzung ist; α
k die Ankunftszeit des Pakets P
k ist;
und ν(α
k)
die virtuelle Systemzeit zum Zeitpunkt des Eintreffens α
k ist
("virtuelle Systemzeit" ist in der Technik
bekannt, z. B. wird für
gewöhnlich
ein Zähler
(nicht dargestellt) aktualisiert).
-
Die Pakete in der Übertragungswarteschlange
werden für
die Bedienung von der Weighted-Fair-Queuing-Ablaufsteuerung (WFQ-Ablaufsteuerung) 120 in
steigender Reihenfolge der zugehörigen Dienstkennungen
aufgenommen. Dadurch garantiert die WFQ-Ablaufsteuerung 120,
dass jede Verbindung ein Minimum ihrer vereinbarten durchschnittlichen
Bandbreite erhält.
(Wie festgestellt wurde, wird angenommen, dass das oben genannte
Self-Clocked-Fair-Queuing-Schema
(SCFQ-Schema) verwendet wird. Das SCFQ-Schema ist jedoch nur eine
Veranschaulichung und für
den Erfindungsgedanken nicht notwendig, und es kann ein beliebiger
Algorithmus verwendet werden). Es sollte festgehalten werden, dass,
wenn die eintreffenden Paketströme
weiter nach Dienstklasse aufgeteilt werden (wie in der Folge näher beschrieben
wird), die WFQ-Ablaufsteuerung 120 auch Pakete als Funktion
ihrer Dienklassifizierung überträgt.
-
Der nachgelagerte Peak-Rate-Shaper
wird verwendet um zu garantieren, dass die gesamte Peak-Rate die
verfügbare
Bandbreite über
die Kommunikationskanäle
nicht überschreitet
(hier in 1 mit 131 dargestellt).
Der nachgelagerte Peak-Rate-Traffic-Shaper 130 arbeitet
wie folgt. Es wird angenommen, dass x% der Gesamtbandbreite (BtotalT) für
die Übertragung
von Paketen (wie durch den Paketstrom Pshaper dargestellt)
vom nachgelagerten Peak-Rate-Traffic-Shaper 130 über die
abgehenden Kommunikationskanäle
(wie durch den Pfeil 131 dargestellt) zur Verfügung stehen.
(Btotal stellt die Gesamtbandbreite dar,
z. B. in Bytes pro Intervall, und T stellt ein Zeitintervall dar).
Eine Variable, Bytes_remaining, wird auf:
Bytes_remaining =
(x%/100) (Btotal) – system overhead (2) initialisiert,
wobei system overhead die Anzahl von Bytes darstellt, die von Steuerungsnachrichten
beansprucht wird. Für
jedes Paket, das von dem nachgelagerten Peak-Rate-Shaper 130 ausgesendet
wird, wird der Wert von Bytes_remaining verringert um:
Bytes_remaining
= Bytes_remaining – (Ceiling/pktsize/macfragment)*(mac_fragment
+ mac overhead)); (3)
wobei
pktsize = Paketgröße
macfragment
= Größe eines
Medienzugangssteuerungs- ("media access control" – MAC)-Verbindungsschichtfragments
macoverhead
= die Anzahl von Bytes die durch die Medienzugangssteuerungsverbindungsschicht
hinzugefügt wird;
und
Ceiling () – den
kleinsten Wert einer ganzen Zahl annimmt, der den Wert übersteigt
(d. h., auf den nächsthöchsten ganzen
Wert aufrundet).
-
Alle T Sekunden wird der Wert von
Bytes_remaining zurückgestellt
auf
(x%/100)(Btotal) (4)
-
Ein beispielhaftes Verfahren zur
Verwendung in dem nachgelagerten Peak-Rate-Paket-Shaper 130 ist in 2 dargestellt. Es wird angenommen,
dass 1 einen Abschnitt
eines Abwärtsstrecken-Kommunikationspfades
zu einem mobilen Endpunkt darstellt, z. B. vom Internet zu drahtlosen
Mobilstationen (nicht dargestellt). In Schritt 205 von 2 wird der Wert von Bytes_remaining
initialisiert. Insbesondere ist eine beispielhafte insgesamt verfügbare Airlink-Bandbreite
4000 Bytes pro 20 Millisekunden (ms), d. h., BtotalT
= 4000 Bytes. Davon wird angenommen, dass x = 60% eine verfügbare Abwärtsstrecken-Bandbreite
ist und es keinen system overhead in die Abwärtsstreckenrichtung gibt, d.
h., Bytes_remaining = (60%/100)(4000) – 0 = 2400 Bytes. In Schritt
210 wartet der nachgelagerte Peak-Rate-Paket-Shaper 130 auf ein
Paket, das für
eine Abwärtsstreckenübertragung
verfügbar
ist. Sobald ein Paket verfügbar
ist, wird der Wert von Bytes_remaining in Schritt 220 geprüft. Wenn
der Wert von Bytes_remaining ausreichend ist, um wenigstens ein
MAC-Fragment zu
senden, wird das Paket versendet, d. h., übertragen, und der Wert von
Bytes_remaining wird in Schritt 225 verringert, wie in Gleichung
(3) dargestellt ist, und der nachgelagerte Peak-Rate-Paket-Shaper 130 wartet
auf ein weiteres Paket. Wenn der Wert von Bytes_remaining jedoch
nicht ausreichend ist, um wenigstens ein MAC-Fragment zu senden,
wird das Paket erst 20 ms später
versendet, wie durch Schritt 230 dargestellt ist. Unabhängig davon
wird der Wert von Bytes_remaining alle 20 ms auf 2400 Bytes gestellt.
In diesem Beispiel sollte festgehalten werden, dass, um die zusätzliche
Bandbreite zu berücksichtigen,
die zur Ausführung
der MAC-Schicht-Übertragungswiederholung
erforderlich ist, der Wert von Bytes_remaining auf z. B. 95% von 2400
Bytes initialisiert werden kann (wodurch indirekt 5% für die MAC-Schicht-Übertragungswiederholung
reserviert werden). (Im Sinne der Gleichung (2) ist dies (x%/100)
(BtotalT) (0,95) – system overhead, wobei jedoch der
Wert von system overhead in diesem Beispiel, wie festgehalten wurde,
Null ist).
-
Als Alternative wird angenommen,
dass 1 einen Aufwärtsstrecken-Kommunikationspfad
von einem mobilen Endpunkt, z. B. von drahtlosen Mobilstationen,
zu dem Internet (nicht dargestellt) darstellt und das in 2 gezeigte Verfahren verwendet
wird. Die beispielhafte insgesamt verfügbare Airlink-Bandbreite ist wie
zuvor 4000 Bytes. Davon wird angenommen, dass x = 40% eine verfügbare Aufwärtsstrecken-Bandbreite ist
(zur Erinnerung, 60% waren in dem früheren Beispiel für die Abwärtsstreckenübertragung
bestimmt). In diesem Beispiel ist der system overhead nicht gleich
Null und der Wert von Bytes_remaining wird wie in Gleichung (2)
initialisiert. Hier ist der Wert der Variable system overhead gleich
einer Schätzung
der Zusatzbelastung, die durch ein periodisches Funksignal, MAC-Schichtbestätigungen
("acknowledgements" – Acks) und Reserveschlitznachrichten
in der Aufwärtsstreckenrichtung
verursacht werden. Insbesondere wird Bytes_remaining auf 1600 – system
overhead initialisiert (2,
Schritt 205). Jedes Mal, wenn ein Paket für eine Aufwärtsstreckenübertragung verfügbar ist,
wird der Wert von Bytes_remaining geprüft (2, Schritt 210 und 220). Wenn der Wert
von Bytes_remaining ausreichend ist, um wenigstens ein MAC-Fragment
zu senden, wird das Paket versendet, d. h., übertragen, und der Wert von
Bytes_remaining wird verringert, wie in Gleichung (3) dargestellt ist
(2, Schritt 225). Wenn
der Wert von Bytes_remaining jedoch nicht ausreichend ist, um wenigstens
ein MAC-Fragment zu senden, wird das Paket. erst 20 ms später versendet
(auch als "Verweildauer" bezeichnet) (2, Schritt 230). Unabhängig davon
wird der Wert von Bytes_remaining nach jeder Verweildauer zurückgestellt,
wie in Gleichung (2) gezeigt, d. h., (1600 – system overhead) (2, Schritt 230). In diesem
Beispiel sollte festgehalten werden, dass, um die zusätzliche
Bandbreite zu berücksichtigen,
die zur Ausführung
der MAC-Schicht-Übertragungswiederholung
erforderlich ist, der Wert von Bytes_remaining auf z. B. ((1600)(0,95) – system
overhead) initialisiert werden kann.
-
Es sollte festgehalten werden, dass
für jene
Fälle,
in welchen die Airlink-Bandbreite aufgrund der Schwundphänomene deutlich
schwanken kann, der folgende alternative Rückkopplungsmechanismus mit
geschlossener Regelschleife zur Schätzung der verfügbaren Airlink-Bandbreite verwendet
werden kann. Solche Schätzungen
können
dann als Eratz für
die unveränderlichen
Zahlen, wie die oben verwendeten 4000 Bytes oder 1600 Bytes, verwendet
werden.
-
Es werden zum Beispiel die folgenden
Definitionen angenommen
Bfix – stellt
die unveränderliche
Airlink-Bandbreite (die a prior bekannt ist) dar; und
T – ist eine
Beachtungszeitraum, der als Vielfaches der Verweildauer ausgedrückt wird.
-
Für
die Abwärtsstreckenrichtung
schätzt
der Zugangspunkt (oder in der Aufwärtsstreckenrichtung das drahtlose
Modem) die verfügbare
Abwärtsstrecken-(Aufwärtsstrecken-)Airlink-Bandbreite
wie folgt:
- (a) Messung der Anzahl von Bytes,
die über
die Abwärtsstrecke
(Aufwärtsstrecke)
in der Periode T übertragen
wird, das heißt,
Btx;
- (b) Messung der Anzahl von Bytes, die auf der Aufwärtsstrecke
(Abwärtsstrecke)
in der Periode T empfangen wird, das heißt, Brx;
und
- (c) Berechnen von Btotal, der geschätzten Airlink-Bandbreite,
als Funktion von (Btx/Brx)
(in der Folge beschrieben).
-
Die geschätzte Airlink-Bandbreite Btotal kann auf zahlreiche Weisen berechnet
werden. Zwei beispielhafte Berechnungen sind in der Folge angeführt. In
dem ersten Beispiel ist
Btotal = Bfix(Btx/Brx) (5)
-
Dies wird auch als die "unabhängige Fensterversion" bezeichnet.
-
In dem zweiten Beispiel wird ein "gleitendes Fenster" verwendet. In diesem
Beispiel wird ein Teil der vorangehenden Berechnung zur Berechnung
des aktuellen Wertes verwendet. Insbesondere gilt
success =
(1 – α) success
+ α(Btx/Brx); und (6)
Btotal = (Bfix)(success) (7)
wobei die
Variable success auf die erste Berechnung von (Btx/Brx) initialisiert wird; und α (das sich
darauf bezieht, wie sehr die vorangehende Berechnung in Erinnerung
bleibt (d. h., ihre Zeitfunktion)) beispielsweise gleich 0,6 ist.
-
Als Alternative können die Werte von Bfix verwendet werden und die Abwärtsstrecken-(Aufwärtsstrecken-)- Pufferbelegung im
Zugangspunkt (drahtlosen Modem) überwacht
werden. Sobald die Abwärtsstrecken-
(Aufwärtsstrecken-)
Pufferbelegung einen bestimmten vordefinierten Schwellwert überschreitet,
wird eine Stromsteuerungsnachricht zu dem drahtlosen Knoten (oder
Endsystem, d. h., das Benutzerendgerät im Falle des drahtlosen Modems)
gesendet, um den Paketstrom zu stoppen. Wenn die Pufferbelegung
unter einen bestimmten Schwellwert fällt, wird eine andere Stromsteuerungs nachricht
zur Reaktivierung des Paketstroms versendet.
-
Eine beispielhafte Anwendung des
Verkehrsmanagementsystems ist in 3 dargestellt,
das einen Abschnitt 300 eines drahtlosen Internetzugangssystems
zeigt, das den. Erfindungsgedanken verkörpert. (Ein Beispiel für ein drahtloses
Internetzugangssystem, ist, wie in 3 dargestellt,
das Wireless Internet Access System von Lucent Technologies Inc.
das nicht der Erfindungsgedanke ist). Der Abschnitt 300 umfasst
eine Reihe von Basisstationen, wie eine Basisstation 315,
die ein Beispiel eines drahtlosen Übergabepunkt-Servers ("point-of-presence" – POP-Server) ist, der für eine L2TP
(Layer 2 Tunneling Protocol) Zugangssteuerung (LAC) sorgt. Jede
Basisstation umfasst einen drahtlosen Knoten ("wireless hub" – WH),
der ein Gebiet durch eine Mehrzahl von Zugangspunkten bedient (z.
B. AP1, AP2, AP3 und AP4 der Basisstation 315).
Jeder Zugangspunkt enthält
eine Funkzugangssteuerung, die in der Technik bekannt ist, zur Kommunikation
mit mehreren drahtlosen Modems, die durch drahtlose Modems 310-1 bis 310-N dargestellt
sind (jedem drahtlosen Modem ist ein drahtloser Teilnehmer zugeordnet,
wie durch einen Benutzer-Personal-Computer
(PC) 305-01 bis Benutzer-PC 305-N dargestellt
ist). (Es sollte beachtet werden, dass jeder PC ein Datenendgerät ("data terminal equipment" – DTE) darstellt, wie in der
Technik bekannt ist. Jedes drahtlose Modem kommuniziert mit einer
entsprechenden Basisstation über
einen Aufwärtsstreckenkanal
(wie durch die Verbindungsstrecke 311 darstellt ist) und
einen Abwärtsstreckenkanal
(wie durch die Verbindungsstrecke 312 darstellt ist). Die
Kombination aus einem drahtlosen Modem und einem Benutzer-PC stellt
einen drahtlosen Endpunkt dar, der mobil sein kann oder nicht. Jede
Basisstation ist an ein privates IP-Netz durch Frame-Relay über T1/E1-Einrichtungen
gekoppelt. Das drahtlose Internet-Zugangsnetz ist an das öffentliche
IP-Netz über
eine Datenvermittlungsstelle ("data
switching center" – DSC) 330 zu
einer Router-Firewall
335 gekoppelt, wie in der Technik
bekannt, ist um mit Internet-Dienstanbietern ("Internet Service Providers" – ISPs) oder Firmen-Intranets
unter Verwendung von L2TP, UDP/IP (User Datagram Protocol/Internet
Protocol) usw. zu kommunizieren.
-
Es wird angenommen, dass das drahtlose
Internetzugangssystem, das in 3 dargestellt
ist, eine Halbduplex-MAC
("Media Access Control
Layer) zwischen den Basisstationen und den drahtlosen Endpunkten verwendet,
wo das Abwärtsstrecken/Aufwärtsstreckenverhältnis konfigurierbar
oder dynamisch eingestellt ist (z. B. wie oben dargestellt, hatte
der Abwärtsstreckenkanal
60% und der Aufwärtskanal
40% der gesamten Kanalbandbreite). In diesem System fragt jeder
AP die zugehörigen
drahtlosen Modems für
Aufwärtsstreckenübertragungen
ab. Zum Beispiel fragt im Zusammenhang mit 3 AP1 den Satz
von Modems 310-1 bis 310-N für Aufwärtsstreckenübertragungen ab (Abfragetechniken
sind in der Technik bekannt und hier nicht beschrieben).
-
In die Abwärtsstreckenrichtung liegt das
Verkehrsmanagementsystem 100 in dem drahtlosen Knoten (z.
B. dem WH der Basisstation 315 von 3). In diesem Beispiel umfasst ein WH
vier Verkehrsmanagementsysteme, eines für jeden AP der Basisstation 315.
Wenn der WH ein Paket zur Übertragung
zu einem bestimmten Benutzer hat, z. B. den Benutzer des Benutzer-PC 305-1,
führt der
WH das in 2 dargestellte
Verfahren durch, bevor ein Paket an den AP1 ausgesendet
wird. Letztgenannter überträgt Pakete
nach dem FIFO-Prinzip ("First-in-Firstout-Prinzip") zu dem drahtlosen
Endpunkt.
-
In die Aufwärtsstreckenrichtung ist das
Verkehrsmanagementsystem 100 für eine Reihe alternativer Implementierungen
geeignet. Ein Beispiel ist in 4 dargestellt,
das einen Abschnitt des drahtlosen Internetzugangsnetzes von 3 zeigt. Jeder vorgelagerte
Peak-Rate-Traffic-Shaper ist einem benutzerspezifischen Gerät zugeordnet,
z. B. drahtlosen Modems 310-1 bis 310-N. (Als Alternative
könnte
der Paket-Shaper Teil eines Benutzer-PC sein (nicht dargestellt),
wie eines PC 305-01 von 3. Sowohl der PC als auch
das drahtlose Modem stellt einen drahtlosen Endpunkt dar). Wie für 1 beschrieben, empfängt jedes
drahtlose Modem einen Benutzerpaketstrom U1.
-
Wie zuvor beschrieben, formt der
vorgelagerte Peak-Rate-Paket-Shaper
(jedes drahtlosen Modems) den Verkehr und überträgt einen entsprechenden Paketstrom,
P1, über
einen Aufwärtsstreckenkanal,
z. B. den Aufwärtsstreckenkanal 311,
zu dem entsprechenden Zugangspunkten, z. B. AP1,
bei Empfang einer Übertragungsabfrage
von dem entsprechenden Annahmepunkt, z. B. AP1.
Die WFQ-Ablaufsteuerung 120 wird zentralisiert an einem
AP betrieben (hier durch AP1 von 4 dargestellt). In diesem
Fall müssen
die zugehörigen drahtlosen
Modems eine Warteschlangengrößeninformation
(in Bezug auf die Anzahl von Bytes, die auf eine Aufwärtsstreckenübertragung
warten) zu dem entsprechenden AP senden (Statusübertragungen von einem mobilen
Endpunkt, wie empfangenes Signal-Rausch-Verhältnis, sind in der Technik
bekannt und werden hier nicht beschrieben). Jeder AP, z. B. AP1 von 4,
implementiert auch den nachgelagerten Peak-Rate-Shaper (zuvor beschrieben)
um zu garantieren, dass eine ausreichende Aufwärtsstreckenbandbreite verfügbar ist,
bevor Abfragen für
seine zugehörigen
drahtlosen Modems (über
den Abwärtsstreckenkanal 312)
unter Anwendung des zuvor beschriebenen, in 2 dargestellten Verfahrens ausgegeben
werden. Wenn zum Beispiel der Wert von Bytes_remaining nicht ausreichend
ist, um wenigstens ein MAC-Fragment zu senden, sendet der AP, z.
B. AP1 keine Übertragungsanfrage an dieses
drahtlose Modem, z. B. das drahtlose Modem 310-1, bis zur
nächsten
Verweilzeit. Die Variable Bytes_remaining wird nach jeder Verweildauer
gemäß Gleichung
(2) zurückgestellt.
-
Eine weitere alternative Implementierung
eines Verkehrsmanagementsystems ist in 5 dargestellt. Das in 5 dargestellte System ist ähnlich dem
in 4 dargestellten,
mit der Ausnahme, dass die WFQ-Ablaufsteuerung bei jedem drahtlosen
Modem in verteilter Weise betrieben wird. Dies setzt voraus, dass
Netzelemente, wie ein AP (dargestellt durch AP1 von 5), die virtuelle Systemzeit
aussenden und dass jeder AP (z. B. AP1)
(z. B. über
einen Abwärtsstreckenkanal,
wie 312) seine entsprechenden drahtlosen Modems nach Aufwärtsstreckenübertragungen
(wie durch den Aufwärtsstreckenkanal 311 dargestellt)
abfragt.
-
Es sollte festgehalten werden, dass
es schwierig ist, die verfügbare
Abwärtsstrecken/Aufwärtsstrecken-Bandbreite
für eine
Paketnutzlast zu schätzen,
da sowohl die Paketnutzlast wie auch die gesamte MAC-Zusatzlast,
die selbst eine Funktion der Größe der Paketnutzlast
ist, variabel ist. Der nachgelagerte Peak-Rate-Traffic-Shaper ist jedoch
eine flexible Möglichkeit
um zu garantieren, dass Pakete nicht bei einer höheren Rate als der verfügbaren Abwärtsstrecken/Aufwärtsstrecken-Bandbreite übertragen
werden, was zu Verzögerungen
in der Warteschlange in anderen Netzelementen führen könnte (wie einem Zugangspunkt
eines drahtlosen Internetzugriffssystems).
-
Eine weitere alternative Implementierung
ist in 6 dargestellt.
In 6 umfasst ein Verkehrsmanagementsystem 600 Paketklassifizierer 605;
eine Reihe von Benutzerwarteschlangen, wie durch die Benutzer 1
Warteschlange 610-1 bis Benutzer N Warteschlange 610-N dargestellt
ist, eine Reihe von WFQ-Kennzeichnungselementen 615-1 bis 615-N;
drei Warteschlangenklassen, wie durch die CIR-Klasse- ("committed Information
rate"-Klasse) Warteschlange 630,
die Steuerungsklasse-Warteschlange 625 und
die Best-Effort-Klasse-Warteschlange 620 dargestellt ist,
eine WFQ-Ablaufsteuerung 635 und einen Paket-Shaper 640. Im
Wesentlichen funk tioniert das Verkehrsmanagementsystem 600 auf ähnlich Weise
wie das Verkehrsmanagementsystem 100 von 1, mit Ausnahme des in der Folge Beschriebenen.
-
In dem Verkehrsmanagementsystem 600
gibt es drei Dienstklassen für
einen Paketverkehr. Diese Dienstklassen ("classes of service" – CoS)
sind: Committed Information Rate (CIR), Steuerung und Best Effort. Die
Steuerung stellt die Steuerungsinformation, z. B. Signalgebung und
Status, dar. Die CIR-Klasse und Best-Effort-Klasse stellen den Transport
von Benutzerdaten, d. h., Trägerdaten,
dar. Für
Benutzer, die den CIR-Dienst
erhalten, spezifiziert der Dienstanbieter (nicht dargestellt) die
Committed Information Rate (CIR), die Burst-Rate (Br) und die Burst-Größe (Bs) ähnlich den
Parametern, die für
einen herkömmlichen
Frame-Relay-Dienst
spezifiziert sind. Für
den Best-Effort-Dienst (BE-Dienst) spezifiziert der Dienstanbieter
die maximale Informationsrate für
einen einzelnen Benutzer. Die Zuordnung eines Benutzers zu entweder
der CIR- oder Best-Effort-Klasse wird durch Verbindungsberechtigungsprozeduren
(hier nicht beschrieben) durchgeführt.
-
Eintreffende Pakete (dargestellt
durch Pinput) werden zu dem Paket-Klassifizierer 605 geleitet,
der eintreffende Pakete nach dem Benutzer klassifiziert oder identifiziert
und sie der richtigen Benutzerwarteschlange zuordnet (d. h., Pakete
vom Benutzer 1 werden der Warteschlange für Benutzer 1 zugeordnet, hier
dargestellt durch 610-1). Jede Benutzerwarteschlange speichert
Pakete nach der Benutzerklassifizierung. Jeder Benutzer kann drei
Verkehrsklassen haben, wie durch die Benutzer 1 Warteschlange 610-1 dargestellt
ist. Insbesondere Steuerung (CTL), CIR und BE. Wenn eine Benutzerwarteschlange
voll ist, werden überschüssige Pakete verworfen.
Jedes entsprechende Kennzeichnungselement, z. B. das WFQ-Kennzeichnungselement 615-1, ordnet
Dienstkennungen seiner entsprechenden Benutzerwarteschlange zu,
z. B. der Benutzer 1 Warteschlange 610-1. Wie zuvor festgehalten
wurde, wird der SCFQ-Algorithmus als Beispiel zur Zuordnung von
Dienstkennungen verwendet. Ein Beispiel von SCFQ wird für jede Klasse
initiiert. Diese Dienstkennungen werden auf der Basis der Bitrate,
die dem Benutzer zugeordnet ist, und der Länge des Pakets zugeordnet.
Die Dienstkennungen werden zur Schaffung einer geordneten Warteschlange
abgehender Pakete verwendet. Pakete (die durch Klasse und Dienstkennung
richtig identifiziert sind) werden zu ihrer besonderen Klassenwarteschlange
geleitet. Jene Pakete, die als Steuerung identifiziert sind, werden
in die Steuerungswarteschlange 625 gereiht; jene Pakete,
die als CIR-Klasse identifiziert sind, werden in die CIR-Klasse-Warteschlange 630 gereiht;
und jene Pakete, die als Best-Effort-Klasse identifiziert sind,
werden in die Best-Effort-Klasse-Warteschlange 620 gereiht.
-
Die Steuerungsklasse-Warteschlange 625 wird
für Steuerungspakete
verwendet, die in der Trägerebene
gesendet werden. Ein Beispiel für
solche Pakete sind die PPP-Steuerungspakete
(Punkt-zu-Punkt-Protokoll-Steuerungspakete). Alle Benutzer, wenn
sie angeschlossen sind, können
eine geringe Anzahl von Paketen über
diese Warteschlange senden und empfangen um zu garantieren, dass
PPP-Verhandlungen erfolgreich abgeschlossen sind, selbst unter starken
Belastungen. Während
der PPP-Verhandlungsphasen
wird allen Benutzern der CIR-Klasse dieselbe Wichtung zugeordnet.
Allen Benutzer der Best-Effort-Klasse
wird auch dieselbe Rate zugeordnet. Die Wichtung der CIR-Klasse
ist höher
als die Wichtung der Best-Effort-Klasse, so dass CIR-Benutzer während PPP-Verhandlungen eine
höhere
Priorität
erhalten als Best-Effort-Benutzer.
Pakete in der CIR-Klasse-Warteschlange 630 werden in der
Reihenfolge der Dienstkennungswerte gereiht. Ebenso werden Pakete
in der Best-Effort-Klasse-Warteschlange 620 in
der Reihenfolge der Dienstkennungswerte gereiht. Die WFQ-Ablaufsteuerung 635 überträgt Pakete
von den drei Klasse-Warteschlangen auf der Basis des Bruchteils
der Verbindungsstreckenband breite, die jeder Klasse zugeordnet ist,
oder auf der Basis einer absoluten Priorität unter den Klassen (z. B.
haben Steuerungspakete eine höhere
Priorität
als CIR-Pakete,
die höher
als BE-Pakete sind). Wie zuvor festgehalten wurde, wird für diese
Funktion das Weighted-Fair-Queuing verwendet.
Dies garantiert, dass jede Klasse einen fairen Anteil der verfügbaren Bandbreite
der Verbindungsstrecke erhält.
-
Der Paket-Shaper 640 führt die
zuvor beschriebene nachgelagerte Peak-Rate-Paket-Shaping-Funktion
aus, um die maximale Datenübertragungsrate über die
physische Verbindungsstrecke zu begrenzen. Dies ermöglicht,
dass verschiedene Arten von Verkehr (dargestellt durch Poutput) eine physische Verbindungsstrecke teilen,
z. B. eine Frame-Relay-PVC zwischen Netzmanagement und Trägerverkehr
teilen.
-
Das Verkehrsmanagementsystem von 6 kann bei dem drahtlosen
Internetzugangsnetz, das in 3 dargestellt
ist, angewendet werden. Zum Beispiel liegt in die Abwärtsstreckenrichtung
das Verkehrsmanagementsystem 600 im drahtlosen Knoten (z.
B. dem WH der Basisstation 315 von 3). In diesem Beispiel umfasst ein WH
vier Verkehrsmanagementsysteme, eines für jeden AP der Basisstation 315.
Wenn der WH ein Paket zur Übertragung
an einen bestimmten Benutzer hat, z. B. den Benutzer, der dem Benutzer-PC 305-1 zugeordnet
ist, führt
der WH das Verfahren aus, das in 2 dargestellt
ist, bevor ein Paket zu dem AP1 ausgesendet wird. Letztgenannter überträgt Pakete
zu dem drahtlosen Endpunkt nach dem FIFO-Prinzip ("First-in-First-out"-Prinzip).
-
Ebenso ist eine beispielhafte Ausführungsform
des Verkehrsmanagementsystems 600 in die Aufwärtsstreckenrichtung
in 7 dargestellt. Jeder
vorgelagerte Peak-Rate-Traffic-Shaper ist einem benutzerspezifischen
Gerät zugeordnet,
z. B. drahtlosen Modems 610-1 bis 610-
N. (Als
Alternative könnte
der Paket-Shaper Teil eines Benutzer-PC sein (nicht dargestellt)).
Wie für 1 beschrieben wurde, empfängt jedes drahtlose
Modem einen Benutzerpaketstrom (nicht dargestellt). In diesem Beispiel
ist eine Paket-Shaping-Funktion für jede der Trägerverkehrsklassen
vorhanden (z. B. CIR und Best Effort). (Es sollte beachtet werden,
dass angenommen wird, dass Steuerungsklassedaten intern von jedem
drahtlosen Modem erzeugt werden). Zur Unterstützung mehrerer Klassen muss
die MAC modifiziert werden (eine solche Modifizierung ist direkt
und wird hier nicht beschrieben). Wie zuvor beschrieben wurde, formt
jeder vorgelagerte Peak-Rate-Paket-Shaper (jedes drahtlosen Modems)
den Verkehr und überträgt einen
entsprechenden Paketstrom P1 über einen
Aufwärtsstreckenkanal,
z. B. den Aufwärtsstreckenkanal 611,
zu dem entsprechenden Zugangspunkt, z. B. AP1 bei
Empfang einer Übertragungsabfrage
von dem entsprechenden Annahmepunkt, z. B. AP1.
-
In diesem Beispiel wartet jede Klasse
eines Aufwärtsstreckenverkehrs
auf die Übertragung
in einer entsprechenden Warteschlange. Wie zuvor erwähnt, wird
die Dienstklasse höchster
Priorität
für Steuerungsnachrichten
verwendet (solche Pakete, die auf die Übertragung warten, sind in
der Steuerungswarteschlange jedes drahtlosen Modems gespeichert).
Die Dienstklasse der nächstniedrigen
Priorität
wird zur Unterstützung des
Committed-Information-Rate-Dienstes verwendet (solche Pakete, die
auf die Übertragung
warten, sind in der Trägerdatenwarteschlange
hoher Priorität
jedes Modems gespeichert). Die Dienstklasse niedrigster Priorität wird zur
Unterstützung
von Best-Effort-Benutzern verwendet (solche Pakete, die auf die Übertragung
warten, sind in der Trägerdatenwarteschlange
niederer Priorität
jedes Modems gespeichert). Während
jedes drahtlose Modem eine Genehmigung zur Übertragung von Daten in die
Aufwärtsrichtung
anfordert, zeigt es seinem entsprechenden AP die Anzahl von Bytes
(oder Paketen) in seiner Warteschlange an, die zu jedem Dienst niveau
gehört.
Der entsprechende AP implementiert eine gewichtete Ablaufsteuerung,
die den drahtlosen Modems Übertragungsgenehmigungen
auf der Basis der Aufwärtsstreckendaten
zuteilt, die jedes WM übertragen
muss, und der Wichtungen, die jeder Verkehrsklasse zugeordnet sind.
In diesem Beispiel sind die Steuerungsdaten höher als die CIR-Daten, die
höher sind
als die Best-Effort-Daten.
Jeder AP überträgt alle Pakete
zu dem Verkehrsmanagementsystem 600 (zuvor beschrieben) eines drahtlosen
Knotens (WH) in der FIFO-Reihenfolge. (Es sollte festgehalten werden,
dass der AP wiederholt übertragenen
Paketen höhere
Priorität
verleihen kann).
-
Unter kurzer Bezugnahme auf 8 ist ein Blockdiagramm auf hoher Ebene
eines repräsentativen Paketservers
zur Verwendung gemäß den Prinzipien
der Erfindung dargestellt. Ein Paketserver 805 ist eine Prozessorarchitektur
auf der Basis einer Speicherprogrammsteuerung und enthält einen
Prozessor 850, einen Speicher 860 (zum Speichern
von Programmanweisungen und Daten, z. B. zur Durchführung des
zuvor beschriebenen Verfahrens, das in 2 usw. dargestellt ist) und eine/mehrere
Kommunikationsschnittstelle(n) 865 zum Koppeln an einen oder mehrere
Kommunikationspfade, wie durch einen Pfad 866 dargestellt
ist.
-
Das zuvor beschriebene Verkehrsmanagementsystem
ist auch zweckdienlich, um Benutzern (die auch als Endbenutzer bezeichnet
werden) eine virtuelle Mietleitung bereitzustellen. Insbesondere
kann jeder Benutzer einen Dienst kaufen, der gewisse durchschnittliche
und Spitzen-Bandbreiten garantiert, da das zuvor beschriebene Verkehrsmanagementsystem
sowohl ein Peak-Rate-Shaping
als auch eine durchschnittliche Bandbreitengarantie bietet.
-
Das Vorhergesagte veranschaulicht
nur die Prinzipien der Erfindung und es ist daher für den Fachmann
offensichtlich, dass zahlreiche alternative Anordnungen entwickelt
werden können,
die wenn auch nicht ausdrücklich
hier beschrieben, die Prinzipien der Erfindung verkörpern können und
in deren Schutzumfang liegen. Zum Beispiel ist der Erfindungsgedanke,
obwohl er nur im Zusammenhang mit einem drahtlosen System beschrieben
wurde, bei einem beliebigen System anwendbar (z. B. einem drahtgebundenen
usw.), das QoS betrifft. Ebenso ist es, obwohl es im Zusammenhang
mit einer Halb-Duplex-MAC-Schicht beschrieben wurde, gleichermaßen bei
einer Voll-Duplex-MAC-Schicht anwendbar.