DE60035846T2 - System für Ablaufsteurung zur Übertragung von ATM-Zellen - Google Patents

System für Ablaufsteurung zur Übertragung von ATM-Zellen Download PDF

Info

Publication number
DE60035846T2
DE60035846T2 DE60035846T DE60035846T DE60035846T2 DE 60035846 T2 DE60035846 T2 DE 60035846T2 DE 60035846 T DE60035846 T DE 60035846T DE 60035846 T DE60035846 T DE 60035846T DE 60035846 T2 DE60035846 T2 DE 60035846T2
Authority
DE
Germany
Prior art keywords
port
data flow
time
shaper
shapers
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60035846T
Other languages
English (en)
Other versions
DE60035846D1 (de
Inventor
James W. Penngrove Jones
Michael Rohnert Park Nelson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alcatel USA Sourcing Inc
Original Assignee
Alcatel USA Sourcing Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel USA Sourcing Inc filed Critical Alcatel USA Sourcing Inc
Publication of DE60035846D1 publication Critical patent/DE60035846D1/de
Application granted granted Critical
Publication of DE60035846T2 publication Critical patent/DE60035846T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L12/5602Bandwidth control in ATM Networks, e.g. leaky bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/521Static queue service slot or fixed bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/56Queue scheduling implementing delay-aware scheduling
    • H04L47/562Attaching a time tag to queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/621Individual queue per connection or flow, e.g. per VC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/622Queue service order
    • H04L47/6225Fixed service order, e.g. Round Robin
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5671Support of voice
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5679Arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/568Load balancing, smoothing or shaping

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Bereich der Erfindung
  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Ablaufsteuerung für die Übertragung von ATM-Zellen (Asynchronous Transfer Mode) von einer Warteschlangeneinrichtung für ATM-Zellen. Insbesondere bezieht sich die vorliegende Erfindung auf ein System zur Ablaufsteuerung für die Übertragung von ATM-Zellen unter Beibehaltung der gewünschten Dienstgüte (QoS) für die unterschiedlichen Arten von Signalverkehr, die einem Fernsprechteilnehmer geboten werden.
  • 2. Hintergrund
  • Die folgende Beschreibung soll den Kontext für die Beschreibung der Erfindung liefern, sie dient nicht als Erläuterung des aktuellen Standes der Technik.
  • I. ATM-Zellen
  • Die Telekommunikationsindustrie hat Plane für die Übertragung von Telefonsignalen in digitalen Formaten entwickelt. In einem Format mit der Bezeichnung TDM (Time Division Multiplexing = Zeitmultiplexverfahren) werden POT-Sprachsignale (POTs) zur Übertragung in einem digitalen Format zur Verfügung gestellt. In einem anderen Format, dem ATM-Format, werden digitale Breitbandsignale, die von Computern oder Faxgeräten stammen, für die Übertragung konfiguriert. Für ATM- und TDM-Signale werden üblicherweise separate Übertragungswege bereitgestellt. Für die Zukunft ist es wünschenswert, alle Signale im ATM-Format zu liefern, um die Anforderungen für separate Übertragungswege und separate Übertragungseinrichtungen zu vermeiden.
  • Ein ATM-Signal von einem Fernsprechteilnehmer wird in Zellen oder Pakete aufgeteilt, und Zellen von zahlreichen Quellen und verschiedenen Empfängern werden während der Übertragung asynchron gebündelt. ATM-Zellen werden gebündelt, wenn sie im Netz von einem Knoten zu einem anderen Knoten übertragen werden. In jedem Knoten legt eine Netz-Vermittlungsstelle oder Wartenschlangeneinrichtung sowohl die Reihenfolge der Übertragung für die Zellen als auch den nächsten Knoten fest, an den die Zelle weitergeleitet wird. Es ist wünschenswert, dass die Netzvermittlungsstellen in der Lage sind, den Netzwerkverkehr mit verschiedenen Eigenschaften zu unterstützen, z.B. sowohl zeitkontinuierlichen Verkehr (CBR) mit einer festen Zeitgarantie für die Übermittlung, als auch Verkehr mit unbestimmter Bitrate (UBR).
  • Der CBR-Verkehr ist erforderlich um zu gewährleisten, dass die POTs-Sprachsignale ohne Verzögerung übertragen werden, damit die Sprachsignale nicht unterbrochen werden, und für die Teilnehmer, die die Signale empfangen, keine offensichtlichen Verzögerungen erkennbar sind. Beim UBR-Verkehr können Verzögerungen auftreten, diese werden typischerweise in Zeitrahmen, basierend auf einer zugeordneten Dienstgüte (QoS) übertragen. Die QoS kann beispielsweise auf dem Tarif basieren, den ein Teilnehmer bezahlt.
  • Die Struktur einer typischen ATM-Zelle ist in 1 dargestellt. Jede ATM-Zelle ist typischerweise 53 Byte lang, wobei 5 Byte für einen Paket-Header reserviert sind, der die Routing- und sonstigen Informationen für die Nutzdaten der Zellen enthält, die übertragen werden, und 48 Byte sind zur Speicherung der ATM-Nutzdaten reserviert. Die generische Flusskontrolle (GFC) des Headers wird zur Identifizierung der Nutzer-Netzwerkschnittstelle (UNI) verwendet und kann Bits für die Zellen-Flusskontrolle beinhalten. Die Felder für die virtuelle Pfad-Kennung (VPI) und die virtuelle Kanalkennung (VCI) kennzeichnen jede Verbindung oder jeden Knoten in einem Weg, über den die Zelle übertragen wird. Der Nutzlasttyp (PT) kennzeichnet die Nutzlast-Daten als Nutzerdaten, OAM-Daten oder Ressourcenmanagement-Daten. Die Zellverlustpriorität (CLP) gibt eine Priorität für die Zellen an, die bei der Ablaufsteuerung zur Übertragung der Zelle in einem Netzwerk eingesetzt werden. Zellkopf-Fehlerkontroll-Bits (HEC) werden integriert, um festzustellen, ob bei der Übertragung der ATM-Zelle Übertragungsfehler aufgetreten sind. Die Nutzlast-Bytes werden in den ATM-Zellendaten gespeichert.
  • Die Headerinformationen der ATM-Zelle kennzeichnen eine Routingverbindung für die Zelle zwischen zwei Stationen, auch als virtueller Kanal (VC) bezeichnet. Um einen virtuellen Kanal zu erstellen, fordert eine erste Endstation eine Verbindung zu einer zweiten Endstation an, indem sie eine Verbindungsanfrage an eine Nutzer-Netzwerkschnittstelle (UNI) im Netzwerk richtet. Wenn der virtuelle Kanal erstellt wurde, können die Endstationen ATM-Zellen mit Header-Informationen austauschen, die das VC-Routing kennzeichnen.
  • II. Steuerung der Dienstgüte
  • Da ATM-Zellen schneller in einem Knoten ankommen, als der ATM-Switch andere ATM-Zellen weiterleiten kann, muss der ATM-Switch eine Ablaufsteuerung für die Übertragung jeder Zelle durchführen. Die Zellen werden im Allgemeinen in jedem ATM-Switch in einer Warteschlange zwischengespeichert, um sich auf eine Überlastung einzustellen. Falls keine Überlastung vorliegt, werden Zellen, die über eine eingehende Verbindung in der Vermittlungsstelle empfangen werden, sofort über eine abgehende Verbindung an einen anderen Empfänger weitergeleitet. Wenn eine Überlastung auftritt, wird den Zellen typischerweise eine bestimmte Priorität zugeordnet, und sie werden dieser Priorität entsprechend in einer FIFO-Warteschlange („First in – First out") gespeichert. Die in die Warteschlange eingestellten Zellen werden anschließend in der Reihenfolge ihrer Priorität übertragen.
  • Eine wünschenswerte Funktion einer Vermittlungsstelle oder einer Warteschlangeneinrichtung in einem ATM-Netz besteht darin, die QoS für jeden virtuellen Kanal, mit dem die Station verbunden ist, zu unterstützen. Die Dienstgüte (QoS) kennzeichnet Spitzen- und Durchschnitts-Übertragungsgeschwindigkeiten für einen Dienst, dem ein Nutzer zugeordnet ist. Um zu gewährleisten, dass für den CBR-Verkehr eine konstante Bitrate eingehalten wird, kann dem CBR-Verkehr die höchste Dienstgüte zugeordnet werden, während einem Nutzer mit unbestimmter Bitrate (UBR) eine Bitrate zugeordnet wird, die in Abhängigkeit von den jeweiligen QoS-Parametern unter dem Spitzenwert liegt. Zu den QoS-Parametern gehören Spitzenzellrate (PCR), zulässige Zellverzögerungsschwankungen (CDV) und Dauerzellrate (SCR). PCR definiert die Obergrenze der Zellrate einer VC-Verbindung. SCR ist eine Obergrenze für die durchschnittliche Zellenübertragungsgeschwindigkeit über die Verbindung. Für zeitkontinuierliche Verbindungen (CBR), die üblicherweise Sondertarifen zugeordnet sind, wird kein SCR definiert. Der Parameter für die zulässigen Zellverzögerungsschwankungen (CDV) gibt den Verzerrungsgrad an, der im Ankunftsabstand der Zellen in der angefragten Verbindung zulässig ist.
  • Der Endknoten sowie der Zwischenknoten eines virtuellen Kanals können den Verkehr regeln, um zu gewährleisten, dass der virtuelle Kanal die PCR oder SCR für die einer ATM-Zelle zugeordnete Dienstgüte nicht überschreitet. Wenn ein Knoten Übertragungsgeschwindigkeiten erfasst, die über der Dienstgüte für einen virtuellen Kanal liegen, kann er den Verkehr typischerweise regeln, indem er eine ATM-Zelle aussortiert.
  • III. Struktur des Netzwerk-Primärmultiplexers
  • 2 stellt die Komponenten eines Zugangsnetz-Primärmultiplexers 10 dar, der eingesetzt wird, um ATM-Signale von und an Teilnehmer zu übertragen. Der dargestellte Primärmultiplexer umfasst Teilnehmer-Steckplätze 12 zum Einstecken von Anschlussleitungskarten 14. Die Leitungskarten 14 liefern Signale an und von Teilnehmern und können ATM-Signale von POT-Verbindungen erzeugen, wie z.B. von der Leitung 16, und zudem ATM-Zellen aus Signalen erstellen, die von Komponenten, wie beispielsweise Personal Computern in den Leitungen, z.B. in Leitung 18, erstellt werden. Die Signale werden über einen Schnittstellenbus 20 auf der Rückwandplatine an die und von den Leitungskarten 14 übertragen. Der Zellenbus 20 ist außerdem mit einer Primärmultiplexer-Steuereinheit 22 verbunden.
  • Die Primärmultiplexer-Struktur umfasst zudem einen Transport-Steckplatz 24 zum Anschluss einer Transportkarte 26. Der Transport-Steckplatz 24 ist über einen Schnittstellen-Zellenbus 29 mit der Multiplexer-Steuereinheit verbunden. Die Transportkarte 26 umfasst einen Zellenbus-Schnittstellenpuffer 28 zum Anschluss des Zellenbusses 28, einen Multiplexer/Demultiplexer 30 zum Anschluss des Zellenbus-Schnittstellenpuffers 28 an einen Pufferspeicher 32, und der Pufferspeicher 32 ist außerdem mit einer Vielzahl von Leitungen verbunden, die einem Internet-Provider (ISP) zur Verfügung gestellt werden.
  • Der Multiplexer/Demultiplexer kann über eine ATM Layer Solution (ATLAS) 34 gesteuert werden. Ein solcher ATLAS-Chip wird beispielsweise von PMC Sierra Inc. hergestellt. ATLAS 34 gewährleistet den Verweis auf den ATM-Header, um das Zellen-Routing festzulegen, sowie Funktionen, um die QoS-Parameter für den ATM-Verkehr für einen virtuellen Kanal mit zweifachem Leaky-Bucket-Verfahren vorzugeben. Das zweifache Leaky-Gucket-System legt fest, ob ein der ATM-Zelle zugeordneter virtueller Kanal die QoS-Parameter für die Zelle übertrifft. Um eine Kontrolle der QoS-Parameter durchzuführen, sondert ATLAS 34 die ATM-Zelle entweder aus oder setzt einen Vermerk oder eine Kennung im Zellenheader, in dem die Verletzung angezeigt wird. Die ATLAS-Hardware, die derartige Kontrollen ermöglicht, ist von grundlegender Bedeutung und umfasst Zähler, Timer und eine Steuerungslogik für jede potenzielle VC-Verbindung mit einer Netzwerkstation.
  • Die Primärmultiplexer-Steuereinheit 22 umfasst Komponenten zum Routing von ATM-Zellen zwischen Anschlussleitungskarten und der Transportkarte 24. Die Primärmultiplexer-Steuereinheit 22 umfasst Komponenten, wie beispielsweise Field Programmable Gate Arrays (FPGAs) sowie Pufferspeicher, die zum Routing von ATM-Zellen eingesetzt werden.
  • Es ist wünschenswert, entsprechende Schaltungen in der Primarmultiplexer-Steuereinheit vorzusehen, um die Übertragung von ATM-Zellen entsprechend ihren QoS-Parametern zu steuern, so dass die QoS-Parameter nicht überschritten und die ATM-Zellen nicht durch eine Kontrollfunktion, wie beispielsweise die durch ATLAS 34 ausgeführten Kontrollen, in einem Endknoten fallen gelassen werden.
  • Es ist außerdem wünschenswert, Schaltungen in der Primärmultiplexer-Steuereinheit vorzusehen, die die Verteilung von ATM-Zellen an Einrichtungen entsprechend der diesen Einrichtungen zugeordneten Bandbreite steuern. Wenn das Telefon in Leitung 16 beispielsweise mit einer Geschwindigkeit von unter 1 MHz arbeitet, während der Computer in Leitung 18 mit einer Geschwindigkeit von 50 MHz arbeitet, wäre es wünschenswert, die ATM-Zellen in Leitung 18 mit einer Geschwindigkeit von 50 MHz zu übertragen, während die Zellen für Leitung 16 zurückgehalten werden, wenn die QoS-Parametergrenzen nicht verletzt werden, anstatt zunächst alle Zellen über Leitung 16 zu übertragen, und die Zellen in Leitung 18 zurückzuhalten.
  • Im Patent US 5,850,399 wird ein Verfahren zur gerechten und effizienten Ablaufsteuerung für die Übertragung eines Pakets von einer Vielzahl an Schichten über ein Netzwerk beschrieben. Das Verfahren umfasst die Bereitstellung eines Eingangs mit einer Vielzahl von Schichten, die Einteilung der Schichten in eine Vielzahl von Klassen, die Zuordnung dieser Klassen zu erstrangigen Schedulern, die einer der Klassen zugeordnet sind, wobei die Ausgänge einiger der erstrangigen Scheduler mit einem zweitrangigen Scheduler gekoppelt sind, und wobei Prioritäten für die Ausgänge der verbleibenden erstrangigen Scheduler gesetzt werden, und der Ausgang des zweitrangigen Schedulers einen hierarchischen Schedulerausgang bietet. Der Scheduler akzeptiert Verkehrstypen an seinem Eingang und bietet einen Ausgang, der für die Ablaufsteuerung von zellenbasiertem Verkehr, wie z.B. ATM-Netzwerkverkehr, geeignet ist.
  • Im Patent EP 0 944 208 A2 werden eine flexible und skalierbare Architektur und ein Verfahren beschrieben, in dem eine dynamische Geschwindigkeits-Ablaufsteuerung in einer ATM-Vermittlungsstelle umgesetzt wird. Der Scheduler erstellt eine große Anzahl an Strömen entsprechend den dynamisch, auf der Basis der Überlastungsinformationen berechneten Geschwindigkeitswerten. Um den großen Bereich an Bitraten verwalten zu können, wird eine Vielzahl an Zeitschaltern mit verschiedenen Zeit-Granularitäten eingesetzt. Die Ströme werden den Zeitschaltern auf der Basis der berechneten Ratenwerte dynamisch zugeordnet. Shaper-Architektur und -Verfahren unterstützen Prioritätsebenen zur Ermittlung der Ströme, die gleichzeitig übertragen werden können.
  • Im Patent US-A-5,953,336 werden ein Verfahren und eine Vorrichtung zur Ablaufsteuerung für die Übertragung von Zellen über ein Netzwerk beschrieben. Die zentralen Merkmale des beschriebenen Ablaufsteuerungsmechanismus bestehen in einem Multifunktions-Zeittaktring, der – neben der statischen Ablaufsteuerung – insbesondere eine dynamische Ablaufsteuerung zum Einsatz mit ABR-Schaltungen (ABR = verfügbare Bitrate), UBR-Schaltungen (UBR = unbestimmte Bitrate) und nicht in Echtzeit verlaufenden, virtuellen VBR-Schaltungen (VBR = variable Bitrate) bietet. Die dynamischen Aktionen werden vom Zeittaktring in eine latente Warteschlange eingestellt, die die Möglichkeit bietet, dynamische Aktionen in dem geplanten Zeitschlitz oder im ersten darauf folgenden, verfügbaren Zeitschlitz auszuführen. Eine Handler-Routine plant die nächste Zellenübertragung für den virtuellen Kanal im Zeittaktring in dem Zeitschlitz, der den frühesten Zeitpunkt darstellt, an dem die nächste Zelle übertragen werden sollte.
  • Ausgehend von der Beschreibung im Patent US-A-5,953,336 ist es Gegenstand der vorliegenden Erfindung, ein bekanntes Verfahren sowie eine Vorrichtung zur Ablaufsteuerung für die Übertragung von ATM-Zellen zu verbessern, so dass die verfügbare Bandbreite effizienter kontrolliert werden kann.
  • Der genannte Gegenstand wird durch das Verfahren aus Anspruch 1 gelöst. Der Gegenstand wird außerdem durch die Vorrichtung aus Anspruch 3 gelöst.
  • Gemäß der vorliegenden Erfindung wird ein System zur Ablaufsteuerung in einer Primärmultiplexer-Steuereinheit mit Komponenten geboten, die die Übertragung von ATM-Zellen entsprechend ihren QoS-Parametern steuern. Das System zur Ablaufsteuerung gemäß der vorliegenden Erfindung kann außerdem ATM-Zellen an verschiedene Teilnehmer-Endgeräte entsprechend der diesen Endgeräten zugeordneten Bandbreite verteilen.
  • Das System zur Ablaufsteuerung gemäß der vorliegenden Erfindung umfasst eine Reihe von Port-Shapern. Ein Port-Shaper kann eine Reihe von Datenströmen unterstützen. Ein Port-Shaper leitet einen Datenfluss an einen einzelnen Teilnehmer. Jeder einem Port-Shaper zugeordnete Datenfluss kennzeichnet ATM-Zellen, die an das jeweilige Teilnehmer-Endgerät verteilt werden sollen, wie z.B. ein Telefon oder einen Computer.
  • Der Port-Shaper umfasst außerdem eine Reihe von Zeitdeskriptoren. Die Datenflüsse werden den Zeitdeskriptoren zugeordnet. Die Zeitdeskriptoren werden sequenziell aktiviert. Wenn ein Zeitdeskriptor aktiv wird, kann ein dem Zeitdeskriptor zugeordneter Datenfluss eine ATM-Zelle übertragen, und nach der Übertragung de Zelle wird der Datenfluss basierend auf dem Gebühren-Grenzinkrement I den darauf folgenden Zeitdeskriptoren zugeordnet. Einem an ein 50 MHz-Endgerät gerichteter Datenfluss kann daher ein niedriger Grenzinkrementwert I zugeordnet werden, so dass er nach der Übertragung einer Zelle dem nächsten sequenziellen Zeitdeskriptor zugeordnet wird, während ein an ein 1 MHz-Endgerät gerichteter Datenfluss einen höheren Grenzinkrementwert I aufweisen kann, so dass ihm eine größere Anzahl an Zeitdeskriptoren, beginnend mit dem aktiven Zeitdeskriptor, zugeordnet wird, um verschiedene Arbeitsbandbreiten des Endgeräts zu ermöglichen.
  • Verschiedene Datenströme können dem gleichen Zeitdeskriptor zugeordnet werden. Da jeweils nur ein Datenfluss gleichzeitig eine ATM-Zelle übertragen kann, kann eine Entscheidung getroffen werden, um festzulegen, welche Datenflüsse eine Zelle überträgt. Eine solche Entscheidung wird von einer dem Ablaufsteuerungssystem zugeordneten, gewichteten Round-Robin-Maschine (WRR) getroffen. Die Funktionen der WRR-Maschine verwenden QoS-Parameter und eine Gewichtung um festzulegen, welcher dem Zeitdeskriptor zugeordnete Datenfluss eine Zelle überträgt. Der erfolgreiche Datenfluss, der eine ATM-Zelle überträgt, wird auf der Basis seines Gewichtungsinkrements I erneut einem Zeitdeskriptor zugeordnet, während die unterlegenen Datenflüsse, die keine ATM-Zellen übertragen, dem nächsten sequenziellen Zeitdeskriptor zur weiteren Verarbeitung zugeordnet werden.
  • Da mehrere Port-Shaper ATM-Zellen aus Datenflüssen übertragen, umfasst das Ablaufsteuerungssystem außerdem weitere, hierarchisch aufgebaute Port-Shaper. Die zusätzlichen Port-Shaper legen fest, welche die Datenflüsse verarbeitenden Port-Shaper die nächste ATM-Zelle übertragen. Die zusätzlichen Port-Shaper der Hierarchie umfassen jeweils eine Reihe von Zeitdeskriptoren, aber anstatt Datenflüsse zuzuordnen, werden die nachfolgenden Port-Shaper-IDs den Zeitdeskriptoren zugeordnet. Den jeweiligen Port-Shaper-IDs wird ein Gebühren-Grenzinkrement zugeordnet, um die Steuerung der Port-Shaper-Raten zu ermöglichen. Eine WRR-Anfrage kann übermittelt werden, um über die Übertragung einer Port-Shaper-ID zu entscheiden, wenn dem gleichen Zeitdeskriptor mehr als eine Port-Shaper-ID zugeordnet ist.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung wird in Bezug auf besondere Ausführungsvarianten unter Bezug auf die beiliegenden Zeichnungen erläutert, wobei:
  • 1 die Komponenten einer Standard-ATM-Zelle darstellt;
  • 2 die Komponenten eines Netzwerks, einschließlich eines Primärmultiplexers darstellt, der mit Leitungskarten und einer Transportkarte verbunden ist;
  • 3 die Komponenten eines einzelnen Primärmultiplexer-Systems gemäß der vorliegenden Erfindung darstellt;
  • 4 die Komponenten eines Mehrfachmultiplexer-Systems darstellt, das mit Hilfe einer Stapelebene verbunden ist;
  • 5 eine Primärmultiplexer-Konfiguration im ATM-Max-Modus darstellt;
  • 6 eine Primärmultiplexer-Konfiguration im ATM-Min-Modus darstellt;
  • 7 eine Steuerprozessor-Struktur (CP) für einen Primärmultiplexer gemäß der vorliegenden Erfindung darstellt,
  • 8 eine Struktur für den Warteschlangenkern für den Steuerprozessor (CP) aus 7 darstellt;
  • 9 die Konfiguration eines Port-Shapers für den CP-Scheduler aus 7 darstellt;
  • 10A–F den Betrieb eines Port-Shapers darstellen;
  • 11 eine Scheduler-Konfiguration darstellt, die eine Port-Shaper-Hierarchie umfasst;
  • 12 den Betrieb einer nach QoS gewichteten Round-Robin-Maschine (WRR) darstellt; und
  • 13A–E den Betrieb einer nach Datenflüssen gewichteten WRR-Maschine darstellt.
  • DETAILLIERTE BESCHREIBUNG
  • I. System mit einzelnem Primärmultiplexer
  • 3 stellt die Komponenten eines Systems mit einem einzelnen Primarmultiplexer gemäß der vorliegenden Erfindung dar. Der Primärmultiplexer umfasst 32 Teilnehmer-Steckplätze, die in vier Gruppen (301304) zu jeweils acht Steckplätzen unterteilt sind, wobei die acht Steckplätze jeder Gruppe in vier Schlitze, die mit einem ersten Zellenbus verbunden sind, und zwei Schlitze, die mit einem zweiten Bus verbunden sind, unterteilt sind. Der Primärmultiplexer umfasst außerdem vier Transportkarten-Steckplätze 311314 und zwei Steuerprozessoren (CPs) 321322. Bei den beiden CPs 321322 handelt es sich um Karten, die in den Steckplätzen auf der Rückwandplatine der Multiplexer-Steuereinheit angeordnet sind und die für den Betrieb in einer redundanten Konfiguration ausgelegt werden können. Gemeinsam bilden die CPs eine Multiplexer-Steuereinheit, wie beispielsweise die Multiplexer-Steuereinheit 22 aus 2.
  • ATM-Zellen werden über die Zellenbus-Leitungen auf der Rückwandplatine von den Teilnehmer-Steckplätzen an die CP-Steckplätze übertragen. Jeweils zwei oder vier Teilnehmer-Steckplätze teilen sich einen Zellenbus. Die Transportkarten-Steckplätze 311314 sind jeweils über einen dedizierten Zellenbus mit den CPs verbunden.
  • II. Mehrfachmultiplexer-System mit Stapelebenen-Schnittstelle
  • 4 stellt die Komponenten eines Mehrfachmultiplexer-Systems dar, das aus 4 einzelnen Primärmultiplexern besteht, die über eine Stapelebene miteinander verbunden sind. Über die Stapelebene werden die Transportkarten-Daten an die ATM-Struktur der Multiplexer-CPs übermittelt. Eine Multiplexer-Zuordnung im Header der ATM-Zelle gibt an, ob die Zelle für den Multiplexer bestimmt ist, in dem sie eintrifft, oder für einen benachbarten Multiplexer. Wenn die Zelle für einen benachbarten Multiplexer bestimmt ist, umgeht sie die Struktur des ursprünglichen Multiplexers und wird über die Stapelebene an die benachbarten Multiplexer verteilt. Zellen aus der Stapelebene werden nur von den in ihren Headern angegebenen Multiplexern akzeptiert, und nicht aufgeführte Multiplexer nehmen die Zelle nicht an. Wenn die Zelle nicht für einen benachbarten Multiplexer bestimmt ist, wird sie durch die Struktur des ursprünglichen Multiplexers geleitet und an den entsprechenden Teilnehmer übermittelt.
  • III. Primärmultiplexer-System für den ATM-Max- und ATM-Min-Modus
  • Gemäß der vorliegenden Erfindung werden zwei verschiedene Übertragungsmodi für die Daten über die CPs geboten, die als ATM-Max-Modus und ATM-Min-Modus bezeichnet werden. Die Primarmultiplexer-Konfiguration für den ATM-Max-Modus ist in 5 dargestellt, während die Primarmultiplexer-Konfiguration für den ATM-Min-Modus in 6 dargestellt ist.
  • In der ATM-Max-Modus-Konfiguration aus 5 verwenden die Transportkarten 500 und 502 eine ATLAS, um die Eingangs-Zellstromkontrolle und Nachschlagefunktionen zu bieten, damit Zellen, die der CP 504 von einer Transportkarte empfängt, keine ATLAS durchlaufen müssen und in die darauf folgenden Phasen gelangen können. Die ATM-Max-Modus-Konfiguration übermittelt der ATLAS 506 Upstream-Verkehr, wobei Upstream-Verkehr definiert wird als Übertragung von einer der Anschlussleitungs-Karten durch den CP 504 zu den Transportleitungs-Karten 500 und 502, und Downstream-Verkehr definiert ist als die Übertragung von den Transportleitungs-Karten 500 und 502 durch den CP 504 an die Anschlussleitungs-Karten. In der ATM-Max-Modus-Konfiguration aus 6 wird der Downstream-Verkehr von der Schaltung 520 des CP verarbeitet, während der Upstream-Verkehr von der Schaltung 522 verarbeitet wird.
  • Die ATM-Min-Modus-Konfiguration aus 6 bietet kostengünstigere Transportkarten 610 und 612, da die ATLAS 600 und die ATLAS 610 im CP 602 die Zellstromkontrolle sowohl für den Upstream- als auch für den Downstream-Verkehr ausführen. Für die Transportkarte ist keine Eingangs-Zellstromkontrolle durch ATLAS erforderlich, daher weisen die Transportkarten 610 und 612 keinen ATLAS-Anschluss auf.
  • IV. Struktur des Primärmultiplexer-CP
  • Eine Steuerprozessor (CP)-Struktur für einen Primarmultiplexer gemäß der vorliegenden Erfindung ist in 7 dargestellt. Alternative Komponenten für den ATM-Max-Upstream, den ATM-Max-Downstream und den ATM-Min-Modus sind ebenfalls dargestellt, um zu zeigen, wie ATM-Zellen in den verschiedenen Modi an einen Multiplexer 704 übertragen werden. Beim ATM-Max-Downstream-Modus, in dem ATM-Zellen an eine ATLAS in den Transportkarten übertragen werden, werden die ATM-Zellen über einen Filter 700 zur Header-Ermittlung und Umgehung von ATLAS, wie z.B. ATLAS 702, übermittelt, ehe sie den Multiplexer 704 erreichen. Bei ATM-Min-Modus-Signalen und im ATM-Max-Upstream-Modus, bei denen keine ATLAS für die Transportkartensignale oder Anschlussleitungssignale zur Verfügung steht, werden die ATM-Zellen über den Multiplexer 701 und ATLAS 702 an den Multiplexer 704 übertragen. Die Stapelebenen-Busdaten werden im ATM-Min-Modus an den CP übermittelt und der Upstream-Anteil des ATM-Max-Modus erfordert weder eine Filterung noch eine ATLAS, so dass die Stapelebenendaten direkt an den Multiplexer 704 in 7 übermittelt werden können.
  • Der CP verarbeitet ein einzelnes Aggregat aus Zellenverkehr, so dass der gesamte Eingangsverkehr im Multiplexer 704 zu einem gemeinsamen Zellenstrom gebündelt wird. Der Multiplexer 704 liefert zudem die ATM-Zelleninformationen über einen Kontextspeicher-Verweis 708, den Warteschlangenkern 710 und einen Scheduler 712. Der Ausgang des Schedulers 712 steuert einen Demultiplexer 714, der ATM-Zellen aus dem Zellenspeicher 706 auf der Basis der Informationen aus dem Scheduler 712 ausgibt.
  • A. Filterung
  • Zellen, die von den Transportkarten an den CP übertragen werden, und die bereits von einer ATLAS in den Transportkarten kontrolliert wurden, werden im Filter 700 des CP auf der Basis der Multiplexer-ID, die im ATM-Zellenheader enthalten ist, gefiltert. Wenn das entsprechende Multiplexer-ID-Bit gesetzt wurde, übermittelt der Filter die Zelle gemeinsam mit einer Datenfluss-ID für die Zelle an die nachfolgenden Abschnitte des CP zur Verarbeitung. Die Datenfluss-ID kennzeichnet das Routing der ATM-Zelle zu einer bestimmten Vorrichtung. Beispielsweise wird ATM-Zellen, die Standard-Telefonsprachsignale für eine erste Anschlussleitung übertragen, eine Datenfluss-ID zugeordnet, die allen ATM-Zellen für eine erste Anschlussleitung gemeinsam ist. Einer Computerleitung für den gleichen Teilnehmer wird eine zweite Datenfluss-ID zugeordnet, und alle dieser Computerleitung zugeordneten ATM-Zellen werden an diese Datenfluss-ID gerichtet.
  • B. ATLAS
  • ATLAS 702 übernimmt die Header-Ermittlung sowie die Zellstrom-Kontrollfunktionen für ATM-Zellen, die von Einrichtungen stammen, die keine ATLAS nutzen. Während der Header-Ermittlung, sofern die entsprechende Multiplexer-ID im Header der ATM-Zelle gesetzt wurde, übermittelt ATLAS 702 die ATM-Zellendaten zusammen mit einer Datenfluss-ID für die ATM-Zelle an die nachfolgenden Abschnitte des CP, ähnlich wie beim Filter 700.
  • C. Zellenspeicher
  • Der ATM-Zellenspeicher 706 aus 7 speichert die Header- und die Nutzdaten für die ATM-Zellen, die er vom Multiplexer 704 empfängt. Der Multiplexer 704 übermittelt außerdem die Datenfluss-ID-Informationen an einen Kontext-Nachschlagespeicher 708. Die Datenfluss-ID und die Datenflusskontext-Informationen für jede ATM- Zelle werden anschließend über den Warteschlangenkern 710 und den Scheduler 712 des CP übertragen. Wenn ein Datenfluss entsprechend den Vorgaben des Schedulers 712 eine Zelle übertragen darf, wird die durch die Datenfluss-ID gekennzeichnete ATM-Zelle aus dem Zellenspeicher 706 abgerufen und diese ATM-Zelle wird dann vom Multiplexer 714 übertragen.
  • D. Kontextspeicher
  • Wenn die ATM-Zellendaten im Zellenspeicher 706 gespeichert werden, erfolgt zudem ein Verweis in einem Kontextspeicher, um die Datenflusskontext-Informationen abzurufen, die durch die Datenfluss-ID für eine Zelle gekennzeichnet sind. Die Kontextinformationen werden anschließend vom Warteschlangenkern und dem Scheduler zur weiteren Verarbeitung genutzt. Die Kontextinformationen enthalten eine QoS-Angabe für den bestimmten Datenfluss, eine Gewichtung sowie Gebühren-Grenzinkremente (I) für diesen Datenfluss, sowie die Identität eines oder mehrerer Port-Shaper im Scheduler, dem der Datenfluss zugeordnet werden soll.
  • E. Warteschlangenkern
  • Die Struktur des Warteschlangenkerns 710 aus 7 ist in 8 dargestellt. Der Warteschlangenkern 710 verwaltet ATM-Zellen für eine Reihe von Datenflüssen. Der Warteschlangenkern 710 umfasst einen Kopf-/Endspeicher 802 und einen Pointerspeicher 804, wie in 8 dargestellt. Dem Warteschlangenkern ist außerdem eine Freelist zugeordnet, die jedoch in 8 nicht dargestellt ist. Der Warteschlangenkern identifiziert die im Zellenspeicher 706, der ebenfalls in 7 dargestellt ist, gespeicherten ATM-Zellen.
  • Wenn eine Datenfluss-ID für eine ATM-Zelle in den Warteschlangenkern 802 aufgenommen wird, wird ein Pointer aus der Freelist übermittelt, um die gespeicherte Zelle zu identifizieren. Der Pointer gibt die Adresse im Zellenspeicher 706 an, an der die ATM-Zellendaten gespeichert sind. Ein Endpointer für die Datenfluss-ID der Zelle ist außerdem im Kopf/Endspeicher 802 angegeben. Der Endpointer gibt an, wo sich der letzte Pointer im Pointerspeicher für die Datenfluss-Warteschlange befindet. Die nächste Stelle im Pointerspeicher 804 nach dem vom Endpointer gekennzeichneten Pointer ist der Speicherort, an den der mit der Datenfluss-ID übermittelte Pointer adressiert und die ATM-Zellendaten gespeichert werden müssen. Sobald der Pointer adressiert und die Zellendaten gespeichert wurden, wird der Endpointer im Kopf/Endspeicher mit dem neuen Speicherort aktualisiert. Für eine ATM-Zelle, die einer Datenfluss-ID zugeordnet ist, für die keine weiteren ATM-Zellen in den Warteschlangenkern 802 eingestellt wurden, wird der aus der neuen Datenfluss-ID ermittelte Pointer verwendet, um den Kopf/Endpointer zu initialisieren. Mit nur einem Pointer für die Datenfluss-ID kennzeichnen die Kopf- und Endpointer im Kopf/Endspeicher 802 für den Datenfluss beide den gleichen Pointer.
  • Wenn eine Zelle aus der Warteschlange entfernt werden soll, wird der durch die Zellen-Datenfluss-ID gekennzeichnete Kopfpointer aus dem Kopf/Endspeicher 802 ausgelesen. Der Kopfpointer kennzeichnet einen Speicherort im Pointerspeicher 804, der die nächste Zelle enthält, die aus einer Datenfluss-Warteschlange entfernt werden soll. Während diese Zelle aus dem Zellenspeicher 706 abgerufen wird, wird der Kopfpointer für den Datenfluss mit dem darauf folgenden Speicherort im Pointerspeicher aktualisiert. Der neue Kopfpointer kennzeichnet den Speicherort der nächsten Zelle, die aus der Datenfluss-Warteschlange entfernt werden soll.
  • F. Ablaufsteuerung
  • Der Scheduler 712 aus 7 umfasst Komponenten, die festlegen, welche im Warteschlangenkern 710 gekennzeichnete Datenfluss-ID zu welchem Zeitpunkt eine ATM-Zelle übermittelt. Die Komponenten umfassen einen Scheduler mit einer integrierten gewichteten Round-Robin-Maschine (WRR), die in den folgenden Abschnitten detailliert erläutert wird.
  • 1. Scheduler
  • Das Ablaufsteuerungssystem umfasst eine Reihe von Port-Shapern. Ein Port-Shaper kann eine Reihe von Datenflüssen unterstützen. In einer Ausführungsvariante der vorliegenden Erfindung übermittelt jeder Port-Shaper die Datenflüsse an einen einzigen Teilnehmer. Ein Teilnehmer kann über verschiedene Endgeräte verfügen, z.B. ein Telefon, das CBR-Verkehr erfordert, und einen Computer, der UBR-Verkehr unterstützt. Jeder einem Port-Shaper zugeordnete Datenfluss übermittelt ATM-Zellen an ein anderes, vom Teilnehmer genutztes Endgerät. 9 stellt die Konfiguration eines Port-Shapers dar.
  • Ein Port-Shaper umfasst eine Reihe von Zeitdeskriptoren. Die Zeitdeskriptoren werden sequenziell aktiviert. Bei der Angabe einer Zeit-ID-Angabe weist ein Pfeil auf den als aktiv gekennzeichneten Zeitdeskriptor. Datenflüsse, wie z.B. A–C, sind Zeitdeskriptoren zugeordnet. Jedem Datenfluss ist eine QoS zugeordnet. Wenn ein Zeitdeskriptor aktiviert wird, kann ein dem Zeitdeskriptor zugeordneter Datenfluss eine Zelle übermitteln und wird anschließend, auf der Basis der Informationen aus dem Kontextspeicher, den nachfolgenden Zeitdeskriptoren zugeordnet. Ein an ein 50 MHz-Endgerät übermittelter Datenfluss kann einem Gewichtungs- oder Inkrementwert I zugeordnet werden, so dass er nach der Übertragung einer Zelle dem nächst folgenden Zeitdeskriptor zugeordnet wird, während ein an ein 1 MHz-Endgerät übermittelter Datenfluss Gewichtungen aufweisen kann, so dass er dem 50. Zeitdeskriptor zugeordnet wird, der auf den aktiven Zeitdeskriptor folgt, um die verschiedenen Betriebsgeschwindigkeiten der Geräte zu berücksichtigen.
  • Mehrere Datenflüsse, wie z.B. A und C in 9, können dem gleichen Zeitdeskriptor zugeordnet werden. Da nur jeweils ein Datenfluss gleichzeitig übertragen werden kann, wenn mehrere Datenflüsse einem aktiven Zeitdeskriptor zugeordnet sind, muss eine Entscheidung getroffen werden, um zu ermitteln, welcher Datenfluss eine Zelle übertragen soll. Eine solche Entscheidung wird in Übereinstimmung mit der vorliegenden Erfindung anhand von gewichteten Round-Robin-Maschinen (WRR) getroffen, die im Folgenden noch detailliert erläutert werden.
  • 10A–F stellen den Betrieb eines Port-Shapers dar, der die Ablaufsteuerung zur Übertragung der Datenflüsse A–E ausführt. Ein Zeit-ID-Pfeil gibt an, welcher Zeitdeskriptor aktiv ist und welche Datenflüsse ihm zugeordnet sind, die zur Übertragung einer Zelle berechtigt sind. Wenn ein Zeitdeskriptor deaktiviert wird, weist der Pfeil für die Zuordnungs-ID auf den nächsten aktiven Zeitdeskriptor, der Datenflüssen zugeordnet ist, die zur Übertragung einer Zelle berechtigt sind.
  • In Bezug auf 10A sind alle fünf Datenflüsse A–E dem gleichen Zeitdeskriptor zugeordnet, und bei diesem Zeitdeskriptor handelt es sich um den aktiven Zeitdeskriptor, der durch den ID-Anzeigepfeil gekennzeichnet ist, so dass alle Datenflüsse zur Übertragung einer Zelle berechtigt sind. Da dem aktiven Zeitdeskriptor mehrere Datenflüsse zugeordnet sind, wird eine Anfrage an eine WRR-Maschine übertragen, um zu entscheiden, welcher Datenfluss zur Übertragung einer Zelle berechtigt ist. Die WRR-Maschine wählt den Datenfluss E aus, der durch eine Markierung gekennzeichnet wird, basierend auf Kriterien, die im Folgenden in Bezug auf die Funktion von WRR-Maschinen erläutert werden.
  • Nach der Übertragung einer Zelle wird der Datenfluss E neu zugeordnet, wobei man davon ausgeht, dass sich weitere Zellen in der Warteschlange von Datenfluss E, d.h. im Warteschlangenkern befinden. Der Datenfluss E wird dem Zeitdeskriptor zur Übertragung sowie einem Gebühren-Grenzinkrement I zugeordnet, das für E gleich 6 beträgt. Die nicht erfolgreichen Datenflüsse A–D werden dem nachfolgenden Zeitdeskriptor zugeordnet.
  • Wenn man den Port-Shaper in Bezug auf 10B nochmals auswertet, wird der Zeit-ID-Indikator auf den nachfolgenden Zeitdeskriptor übertragen. Da die Datenflüsse A–D alle diesem Zeitdeskriptor zugeordnet sind, wird eine WRR-Anfrage erstellt. Wie anhand der Schraffur ersichtlich ist, wählt die WRR-Maschine den Datenfluss D zur Übertragung aus. Nach der Übertragung wird der Datenfluss D basierend auf seinem Inkrement I=6 einem neuen Zeitdeskriptor zugeordnet. Die nicht erfolgreichen Datenflüsse A–C werden dann dem nachfolgenden Zeitdeskriptor zugeordnet.
  • Wenn man den Port-Shaper in Bezug auf 10C nochmals auswertet, wird eine WRR-Anfrage erstellt, um über die Übertragung der Datenflüsse A–C zu entscheiden. Wie angegeben wird Datenfluss A ausgewählt. Nach der Übertragung wird der Datenfluss A dem Zeitdeskriptor plus seinem Inkrement I = 2 zugeordnet und die Datenflüsse B–C werden dem nachfolgenden Zeitdeskriptor zugeordnet.
  • In 10D wird eine WRR-Anfrage erstellt, um über die Übertragung der Datenflüsse B und C zu entscheiden. Datenfluss C wird für die Übertragung einer Zelle ausgewählt, nach der Übertragung wird er dem Zeitdeskriptor plus seinem Inkrement = 5 zugeordnet. Da nur 4 Zeitdeskriptoren nach dem aktiven Zeitdeskriptor zur Verfügung stehen, wird Datenfluss C auf den Kopf-Zeitdeskriptor für den Port-Shaper übertragen, wie in 10E dargestellt. Datenfluss B wird dem nachfolgenden Zeitdeskriptor zugeordnet, bei dem es sich auch um den Datenfluss A zugeordneten Zeitdeskriptor handelt, wie in 10E dargestellt.
  • Wenn der Port-Shaper im nächsten Zeitdeskriptor ausgewertet wird, wie in 10E dargestellt, wird eine WRR-Anfrage erstellt, um über die Übertragung von Datenfluss A und B zu entscheiden. Datenfluss A wird zur Übertragung ausgewählt, und nach der Übertragung wird er auf der Basis seines Inkrements I=2 dem zweiten, nachfolgenden Zeitdeskriptor zugeordnet. Datenfluss A und E werden dann dem gleichen Zeitdeskriptor zugeordnet, wie aus 10D ersichtlich. Der nicht erfolgreiche Datenfluss B wird dann dem nachfolgenden Zeitdeskriptor zugeordnet.
  • Wenn der Port-Shaper im nächsten Zeitdeskriptor ausgewertet wird, wie in 10F dargestellt, ist Datenfluss B der einzige Datenfluss, der zur Übertragung berechtigt ist, so dass keine WRR-Anfrage erforderlich ist. Nach der Übertragung einer Zelle wird Datenfluss B dem Zeitdeskriptor plus seinem Inkrement 8 zugeordnet, und der Betrieb des Schedulers für diesen Port-Shaper wird fortgesetzt.
  • Da nur eine Busleitung die ATM-Zellen aus CP übermittelt und mehrere Port-Shaper ATM-Zellen aus den Datenflüssen übertragen, wird das System zur Ablaufsteuerung eingesetzt, um zu verhindern, dass gleichzeitig mehrere Datenflüsse von mehreren verschiedenen Port-Shapern übertragen werden. In einer Ausführungsvariante der vorliegenden Erfindung kann ein solcher Scheduler gebildet werden, indem eine Hierarchie der Port-Shaper, wie in 11 dargestellt, eingesetzt wird. In dem hierarchischen Aufbau aus 11 übermittelt eine große Anzahl an L1-Port-Shapern 1100 die Datenfluss-IDs an den einzigen Bus 1101, während andere Port-Shaper, wie z.B. die Port-Shaper L2–L4 die Übertragung von Datenflüssen von den L1-Port-Shapern 1100 steuern. Die L2-Port-Shaper 1102 steuern, welcher der L1-Port-Shaper 1100 den nächsten Datenfluss überträgt, die L3-Port-Shaper 1104 steuern, welcher L2-Port-Shaper 1102 als nächstes aktiviert wird und die L4-Port-Shaper 1106 steuern, welcher L3-Port-Shaper 1104 als nächstes aktiviert wird. Beispielsweise kann das System zur Ablaufsteuerung aus 11 512 L1-Shaper, 16 L2-Shaper, 3 L3-Shaper und einen einzigen L4-Shaper umfassen, um die Datenflüsse von den 512 L1-Shapern über den einzigen Bus 1101 zu steuern.
  • Da die L2-Shaper 1102 eingesetzt werden, um zu steuern, welcher L1-Port-Shaper eine Zelle an den Bus überträgt, speichern die L2-Port-Shaper die L1-Port-Shaper-IDs und leiten diese weiter. Die L3-Shaper können eingesetzt werden, wenn der einzige Bus 1101 mehrere Busse versorgt und es wünschenswert ist, den verschiedenen Bussen unterschiedliche Bandbreiten zuzuweisen. Die L3-Shaper übertragen Daten, um zu identifizieren, welcher L2-Port-Shaper über seinen Ausgang die Signalbandbreite steuern kann, die an die verschiedenen Busse übertragen wird. Der L4-Shaper kann schließlich eingesetzt werden, wenn nach dem Demultiplexer 714 aus 7 eine ATLAS angeordnet ist, um die Zellenübertragung zu steuern, und ATLAS eine maximale Datenübertragungsrate aufweist, die die Übertragungsgeschwindigkeit begrenzt. In diesem Fall überträgt der L4-Port-Shaper 1106 Daten, um zu identifizieren, welcher L3-Port-Shaper Ausgabedaten übertragen kann, um die Bandbreite der an ATLAS übertragenen Daten zu steuern. In Abhängigkeit von den Anforderungen der Ablaufsteuerung können in einem System nur L1 und L2-Port-Shaper, L1–L3-Port-Shaper oder mehr als vier L1–L4-Port-Shaper zur Ablaufsteuerung für die Übertragung von Datenflüssen eingesetzt werden.
  • Mit den in 11 dargestellten, hierarchischen Port-Shapern, die in einem System zur Ablaufsteuerung eingesetzt werden, funktionieren die Port-Shaper L2–L4, die die L1-Port-Shaper steuern, in ähnlicher Weise wie die L1-Port-Shaper, die in 10A10F dargestellt sind. Anstelle von Datenflüssen übertragen die Port-Shaper, die die L1-Port-Shaper steuern, jedoch Port-Shaper-IDs. So ordnet ein L2-Port-Shaper den L1-Port-Shaper-IDs beispielsweise die Zeitdeskriptoren eines Port-Shapers zu. Jeder L1-Port-Shaper-ID können Gebühren-Grenzinkremente (I) zugeordnet werden, um die Geschwindigkeit zu steuern, mit der der Zeit-ID-Indikator des L1-Port-Shapers weitergestellt wird. Wenn einem Zeitdeskriptor, der für die Übertragung von Datenflüssen aktiviert wurde, zwei Datenflüsse zugeordnet sind, kann eine WRR-Maschine eingesetzt werden, um zu entscheiden, welche L1-Port-Shaper-ID übertragen wird. Die L3- und L4-Port-Shaper können in ähnlicher Weise funktionieren wie der L2-Port-Shaper, und zwar durch Zuordnung von Zeitdeskriptoren für die nachfolgende Port-Shaper-ID und durch Zuordnung von Inkrementen zur Steuerung der Port-Geschwindigkeiten.
  • 2. WRR-Maschinen
  • Eine WRR-Maschine entscheidet, welcher Datenfluss von einem Zeitdeskriptor übertragen wird, wenn einem aktiven Zeitdeskriptor mehrere Datenflüsse zugeordnet sind. Die von der WRR-Maschine zur Ermittlung des erfolgreichen Datenflusses verwendeten Kriterien sind variabel, um die allgemeinen Systemanforderungen berücksichtigen zu können. In den folgenden Abschnitten werden zwei Formate für WRR-Maschinen beschrieben: QoS-WRR und Datenfluss-WRR.
  • i. QoS-WRR
  • Beim QoS-WRR wird die Entscheidung anhand der QoS-Angaben getroffen, um eine gerechte Aufteilung der verfügbaren Bandbreite unter den vorhandenen Port-Shapern zu ermöglichen. 12 enthält eine Tabelle, in der die Kennungsdaten für vier QoS-Angaben, QoS0–QoS3, eine Angabe der aktuellen virtuellen Zeit (CVT) und Anmerkungen in Bezug auf die WRR-Funktion für QoS-WRR aufgeführt sind.
  • Bei QoS-WRR wird eine QoS aktiv, wenn ein der QoS zugeordneter Datenfluss zuerst einem Port-Shaper zugeordnet wird. Eine erste Kennung für die QoS dieses Datenflusses wird für die CVT gesetzt, wenn die Kennung aktiv wird, außerdem wird der QoS eine Gewichtung zugeordnet. In dem Beispiel aus 28 geht man davon aus, dass die vier QoS gleichzeitig bei CVT=0 aktiv werden, so dass ihre anfänglichen Kennungswerte alle ihrer jeweiligen Gewichtung entsprechen.
  • Entsprechend dem QoS-WRR-Verfahren entspricht die QoS für einen zur Übertragung ausgewählten Datenfluss der QoS mit dem niedrigsten Kennungswert. Falls zwei QoS den gleichen numerischen Kennungswert aufweisen, gewinnt die höhere QoS-Zahl und ermöglicht dem Datenfluss die Übertragung einer Zelle. Der erfolgreichen QoS wird die Gewichtung zum Kennungswert hinzuaddiert.
  • Wenn mehrere Datenflüsse der gleichen QoS zugeordnet sind, kann die Ablaufsteuerung für die Übertragung der Datenflüsse mit Hilfe einer Reihe von Optionen erfolgen. Nach der Übertragung einer Zelle, bzw. nach ihrer Aktivierung kann ein Datenfluss entweder dem Kopf oder dem Ende der QoS-Verknüpfung zugeordnet werden. Ist er mit dem Kopf verknüpft, hat der Datenfluss die Möglichkeit, die Bandbreite für die QoS belegen. Ist er mit dem Ende verknüpft, wird die Bandbreite gleichmäßig zugeordnet, unabhängig von dem Bandbreitenbedarf, den der Datenfluss in Bezug auf einen anderen aufweist. In einer anderen Option können den Datenflüssen separate Gewichtungen zugeordnet werden um festzulegen, an welcher Stelle der QoS-Verknüpfungskette er angeordnet werden soll. Weitere Einzelheiten zu den Möglichkeiten einer solchen Gewichtung werden im folgenden Abschnitt Datenfluss-WRR beschrieben.
  • Im Beispiel aus 12 ist in jeder Zeile ein Kennungswert für jede QoS aufgeführt; und es wird ein CVT-Wert übertragen, wenn eine WRR-Anfrage erstellt wird. Für jede Zeile geht man davon aus, dass jeweils QoS0–QoS3 aktiv und dem Zeitdeskriptor zugeordnet ist, wenn die WRR-Anfrage erstellt wird. Jeder Datenfluss QoS0–QoS3 ist dann zur Übertragung einer Zelle aus dem Datenfluss berechtigt.
  • In Zeile 1001 geht man davon aus, wie oben angegeben, dass alle QoS, QoS0–QoS3, bei CVT=0 aktiv werden, so dass ihre Kennung ihren Gewichtungswert angibt. Da QoS3 den niedrigsten Kennungswert aufweist, wählt WRR den nächsten, QoS3 zugeordneten Datenfluss zur Übertragung einer Zelle aus, wie dies durch Schraffur des Kennungwerts 5 unter QoS3 dargestellt ist. Nach der Übertragung wird die Gewichtung von QoS3 zum Kennungswert addiert, woraus ein Kennungswert von 10 resultiert, wie in Zeile 1002 dargestellt.
  • Wenn in Zeile 1002 eine weitere WRR-Anfrage erstellt wird, werden QoS2 und QoS3 unter Berücksichtigung des niedrigsten Kennungswerts für die Übertragung ausgewählt. Da QoS3 die QoS mit der höheren Nummer ist, wählt WRR QoS3 für die Übertragung einer Zelle aus, wie durch die Schraffur dargestellt. Nach der Übertragung einer Zelle wird die Gewichtung 5 für QoS3 zum Kennungswert addiert, wodurch sich ein Gesamtwert von 15 ergibt, wie in Zeile 1003 dargestellt.
  • Wenn in Zeile 1003 eine weitere WRR-Anfrage erstellt wird, weist QoS2 den niedrigsten Kennungswert auf und wird von WRR zur Übertragung einer Zelle ausgewählt, wie durch die Schraffur dargestellt. Nach der Übertragung wird die Gewichtung 10 für QoS2 zum Kennungswert addiert, wodurch sich ein Gesamtwert von 20 ergibt, wie in Zeile 1003 dargestellt.
  • Wenn in Zeile 1004 eine weitere WRR-Anfrage erstellt wird, werden QoS3 und QoS1 mit einem Wert von 15 ermittelt. Da QoS3 die höhere QoS-Nummer aufweist, wählt WRR QoS3 für die Übertragung einer Zelle aus und die Gewichtung wird zum Kennungswert addiert, wie in Zeile 1005 dargestellt. In Zeile 1005 gewinnt QoS1 und überträgt einen Datenfluss, die Gewichtung 15 wird zum Kennungswert addiert, so dass sich ein Kennungswert von 30 ergibt. In Zeile 1006 weisen QoS2 und QoS3 den gleichen numerischen Kennungswert auf, QoS3 wird jedoch für die Übertragung ausgewählt, weil es die höhere QoS-Nummer aufweist. In Zeile 1007 wählt WRR QoS2 aus, da es den Kennungswert mit der kleinsten Zahl aufweist, und in Zeile 1008 wird QoS3 ausgewählt, weil es den Kennungswert mit der kleinsten Zahl aufweist.
  • In Zeile 1009 tritt ein vierfacher Anspruch auf, da alle QoS den numerischen Kennungswert 30 aufweisen. QoS3 ist erfolgreich, da es die höchste QoS-Nummer aufweist. In Zeile 10101012 werden QoS2–QoS0 in der entsprechenden Reihenfolge verarbeitet.
  • Es ist darauf hinzuweisen, dass der CVT entsprechend dem Kennungswert der erfolgreichen QoS erhöht wird. Der CVT wird zur Gewichtung der nun aktiven QoS addiert, woraus ein Kennungswert resultiert, der in etwa den Kennungswerten der aktiven QoS-Indikatoren entspricht. Auf diese Weise ist die nun aktive QoS, wenn eine QoS aktiv wird, nachdem eine Reihe von QoS-Werten über einen längeren Zeitraum aktiv waren, nur so lange zur Übertragung berechtigt, bis ihr Kennungswert entsprechend anderen QoS-Kennungswerten erhöht wird, so dass die allgemein verfügbare Bandbreite gleichmäßiger zugeordnet wird.
  • Obwohl der CVT im Beispiel aus 12 zum Kennungswert einer neuen, aktiven QoS addiert wird, kann der Fachmann den anfänglichen Kennungswert auch auf andere Weise ermitteln. Beispielsweise kann es sich bei dem anfänglichen Kennungswert um die Gewichtung für die QoS plus dem Kennungswert der letzten QoS, die eine Zelle übertragen hat, handeln. Beim anfänglichen Kennungswert kann es sich auch um die Gewichtung für eine QoS plus dem Durchschnittswert aller aktiven QoS-Indikatoren handeln. Bei dem anfänglichen Kennungswert könnte es sich auch um einen anderen, willkürlichen Wert handeln, der von den gewünschten Übertragungsanforderungen abhängig ist, um eine gewünschte QoS-WRR zu erstellen.
  • Unter Verwendung der QoS-WRR-Maschine, die in Bezug auf 12 erläutert wurde, kann die jeder QoS zugeordnete Bandbreite entsprechend der zugeordneten Gewichtung festgelegt werden. Geht man davon aus, dass Ra, Rb, Rc und Ri Gewichtungen sind, die den QoS zugeordnet werden, und BW die angegebene Bandbreite ist, kann die einer QoS zugeordnete Bandbreite mit der Gewichtung Ri wie folgt ausgedrückt werden: BWi = BWtotal·(1/Ri)/(1/Ra + 1/Rb + 1/Rc + 1/Ri)
  • ii. Datenfluss-WRR
  • Die Datenfluss-WRR ermöglicht die Existenz unterschiedlicher Datenübertragungsgeschwindigkeiten mit der gleichen QoS. Bei der Datenfluss-WRR wird der Inkrementwert (I) eines Datenflusses zur CVT addiert und bildet somit die anfängliche Kennungsgewichtung.
  • Zugriff auf die Datenfluss-WRR erfolgt nur, wenn eine QoS einem aktiven Zeitdeskriptor zugeordnet ist, und die QoS zu vielen Teilnehmern zugeordnet ist, d.h. dass der QoS mehr als ein Datenfluss zugeordnet ist. Im Fall der Zuordnung von wenigen Teilnehmern würde die Reihenfolge der Datenflüsse aufgrund ihrer eigenen Zeitdeskriptoren festgelegt und es bestünde kein Grund zum WRR-Einsatz.
  • Im Fall der Zuordnung zu vieler Teilnehmer ist es möglich, jedem Datenfluss mehr Bandbreite zuzuordnen als verfügbar ist. Wie bereits erläutert, hätte die Zuordnung der Datenflüsse zum Ende einer QoS-Verknüpfung ein WRR-Übertragungsmuster ohne Unterscheidung der Übertragungsgeschwindigkeit zur Folge, und wenn die übertragenen Datenflüsse immer dem Kopf einer QoS-Verknüpfung zugeordnet würden, hätte dies zur Folge, dass ein der einer QoS zuerst zugeordnete Datenfluss ein Monopol auf die verfügbare Bandbreite hätte. Gemäß der vorliegenden Erfindung wird eine dynamische Gewichtung mit Hilfe von Kennungen eingesetzt und die übertragenen Datenflüsse werden der QoS auf der Basis ihrer jeweiligen Kennungswerte zugeordnet, anstatt willkürlich dem Kopf oder dem Ende einer QoS-Verknüpfung zugeordnet zu werden. Der Datenfluss mit der niedrigsten Kennung wird dann an den Kopf der QoS-Verknüpfung gesetzt und die Aufteilung der verfügbaren Bandbreite kann anhand der Gewichtung gesteuert werden.
  • In 13A13E ist der Betrieb der Datenfluss-WRR gemäß der vorliegenden Erfindung dargestellt. Bei 13A13E geht man davon aus, dass zwei Datenflüsse, die als Datenfluss A und Datenfluss B bezeichnet werden, aktiv sind. Außerdem geht man davon aus, dass Datenfluss A dem Inkrement-Gewichtungswert I=1 und Datenfluss B dem Inkrement-Gewichtungswert I=2 zugeordnet ist, da für Datenfluss A mehr Bandbreite gewünscht ist. In 13A13E ist der erfolgreiche Datenfluss, der eine ATM-Zelle übertragen darf, schraffiert dargestellt.
  • In 13A wird von einem Scheduler eine WRR-Anfrage an den durch einen Pfeil gekennzeichneten, aktiven Zeitdeskriptor erstellt, um über die Übertragung von Datenfluss A oder Datenfluss B zu entscheiden. In 13A geht man davon aus, dass Datenfluss A und Datenfluss B beide bei CVT = 0 aktiv werden, so dass ihr Kennungswert ihrem Inkrement entspricht. Gemäß dem Datenfluss-WRR-Verfahren wird Datenfluss B vor Datenfluss A zugeordnet, da er den niedrigeren Kennungswert aufweist. Bei Datenflüssen mit gleichem Kennungswert werden die Datenflüsse in der Reihenfolge zugeordnet, in der sie an den Zeitdeskriptor übermittelt werden.
  • Wenn für 13A eine WRR-Anfrage erstellt wird, wird Datenfluss A, der den niedrigsten Kennungswert von 1 aufweist, von der Datenfluss-WRR für die Übertragung einer Zelle ausgewählt. Datenfluss A wird anschließend wieder sein Inkrementwert des nachfolgenden Zeitdeskriptors zugeordnet. Da für Datenfluss A I=1, wird dieser dem nachfolgenden Zeitdeskriptor zugeordnet. Der Kennungswert für Datenfluss A wird außerdem um den Inkrementwert I=1 erhöht, so dass der Kennungswert 2 beträgt. Datenfluss B, der nicht für die Übertragung ausgewählt wurde, wird dann dem nachfolgenden Zeitdeskriptor zugeordnet. Datenfluss B, der einen Kennungswert von 2 aufweist, der dem Wert für Datenfluss A entspricht, wird nach Datenfluss A dem nachfolgenden Zeitdeskriptor zugeordnet, da er einen höheren Gewichtungsinkrementwert aufweist als Datenfluss A. Wenn Datenfluss A und Datenfluss B die gleichen Kennungen und die gleichen Gewichtungsinkremente aufweisen, könnten Sie anhand von nutzerdefinierten Kriterien zugeordnet werden, wie beispielsweise welcher Datenfluss zuerst aktiv wurde oder welcher Datenfluss zuletzt zur Übertragung ausgewählt wurde.
  • In 13B wird erneut eine WRR-Anfrage an den nächsten aktiven Zeitdeskriptor erstellt, um über die Übertragung von Datenfluss A oder Datenfluss B zu entscheiden. Datenfluss A und Datenfluss B weisen den gleichen numerischen Kennungswert auf, Datenfluss A ist jedoch vor Datenfluss B angeordnet, da er das niedrigere Inkrement aufweist. Datenfluss A wird daher für die Übertragung einer Zelle ausgewählt und wird dann seinem Inkrement I=1 für den nächsten Zeitdeskriptor, oder in anderen Worten, dem nachfolgenden Zeitdeskriptor zugeordnet. Der Kennungswert für Datenfluss A wird außerdem durch sein Inkrement I=1 erhöht, so dass der Kennungswert 3 beträgt. Datenfluss B, der nicht für die Übertragung ausgewählt wurde, wird mit Datenfluss A ebenfalls dem nachfolgenden Zeitdeskriptor zugeordnet. Da Datenfluss B einen Kennungswert von 2 aufweist, der nun niedriger ist als der Kennungswert 3 für Datenfluss A, wird Datenfluss B jetzt vor Datenfluss A angeordnet, wie aus 13C ersichtlich.
  • In 13C wird erneut eine WRR-Anfrage erstellt, um über die Übertragung von Datenfluss A und Datenfluss B zu entscheiden. Datenfluss B, der vor Datenfluss A angeordnet ist, da er einen niedrigeren Kennungswert aufweist, wird von der Datenfluss-WRR für die Übertragung einer Zelle ausgewählt. Datenfluss B wird anschließend der Inkrementwert I=2 des nachfolgenden Zeitdeskriptors zugeordnet. Der Kennungswert für Datenfluss B wird dann um seinen Inkrementwert I=2 erhöht, so dass der Kennungswert 4 beträgt. Datenfluss A, der nicht für die Übertragung ausgewählt wurde, wird dann dem nachfolgenden Zeitdeskriptor zugeordnet.
  • In 13D wird keine WRR-Anfrage erstellt, weil nur Datenfluss A dem aktiven Zeitdeskriptor zugeordnet ist. Der Scheduler ermöglicht Datenfluss A, eine Zelle zu übertragen und ordnet Datenfluss A dem nachfolgenden Zeitdeskriptor zu, da sein Inkrement 1 beträgt. Der Kennungswert für Datenfluss A wird dann um sein Inkrement I=1 erhöht, so dass ein Gesamtwert von 4 entsteht. Obwohl Datenfluss A nun den gleichen Kennungswert aufweist wie Datenfluss B, wird er vor Datenfluss B im gleichen Zeitdeskriptor angeordnet, da er den niedrigeren Inkrementwert aufweist.
  • In 13E wird eine WRR-Anfrage erstellt, um über die Übertragung von Datenfluss A und Datenfluss B zu entscheiden. Datenfluss A, der vor Datenfluss B angeordnet ist, da er einen niedrigeren Inkrementwert aufweist, wird von der Datenfluss-WRR für die Übertragung einer Zelle ausgewählt und die Neuzuordnung erfolgt wie oben beschrieben.
  • 3. Unterstützung von Verkehrsklassen
  • Der Scheduler mit einer WRR gemäß oben stehender Beschreibung gemäß der vorliegenden Erfindung kann individuell eingerichtet werden, um die verschiedenen Verkehrsklassen zu berücksichtigen, die in den nachstehenden Abschnitten erläutert werden.
  • i. Zeitkontinuierlicher Dienst (CBR)
  • CBR erfordert eine dedizierte Bandbreite über das gesamte System, so dass der CBR-Verkehr die höchste Priorität im Ablaufsteuerungssystem erhält, das eine QoS-WRR umfasst, indem seine QoS-Gewichtung auf Null gesetzt wird, um Zellverzögerungsschwankungen (CDV) zu minimieren.
  • Wird eine Datenfluss-WRR eingesetzt, können die CBR-Verbindungen im Hinblick auf die Ablaufsteuerung auf zwei verschiedene Arten eingerichtet werden. Bei der ersten Möglichkeit kann das Inkrement für einen CBR-Datenfluss auf 1 gesetzt werden. Auf diese Weise kann der CBR-Datenfluss mit der höchsten Priorität verarbeitet werden, wenn Zellen eintreffen. Dieses Schema hat minimale Übertragungsverzögerungen zur Folge. Bei der zweiten Möglichkeit kann der Inkrementwert für CBR auf einen Wert größer 1 eingestellt werden, um die spezifizierte Geschwindigkeit für diesen Datenfluss zu berücksichtigen. In diesem Fall wird der Datenfluss in einem spezifizierten Intervall übermittelt, das typischerweise größer ist als das Intervall bei einem Inkrement von 1.
  • ii. Variable Bitrate-Echtzeit (VBR-rt)
  • Beim VBR-rt-Verkehr wird eine der QoS zugeordnete Spitzenzellrate (PCR) im Kontextspeicher programmiert. VBR-rt wird beim Eingang im CP, der im ATM-Min-Modus oder basierend auf SCR und PCR im ATM-Max-Upstream-Modus arbeitet, von ATLAS gesteuert, VBR-rt-Datenflüsse werden jedoch, basierend auf der PCR mit einer minimalen Zellverzögerungsschwankung (CDV) für QoS, über das System zur Ablaufsteuerung gesteuert.
  • Die VBR-rt-Datenflüsse werden nur gesteuert, wenn Verkehr eingeht, wenn mehrere Datenflüsse praktisch gleichzeitig im System zur Ablaufsteuerung aktiviert wurden, können sie einem einzigen Zeitdeskriptor zugeordnet werden, und zwar durch Belegung einer Leitung. Wenn mehrere VBR-rt-Datenflüsse einem einzigen Zeitdeskriptor zugeordnet sind, erfolgt die Ablaufsteuerung mit Hilfe eines WRR-Mechanismus, da jedoch alle QoS- und Inkrementgewichtungen für den VBR-rt-Verkehr typischerweise einen niedrigen oder einen Wert gleich Null aufweisen, um CDV zu minimieren, kann WRR die Bandbreite nicht effizient zuordnen. Bei einer überbelegten Verbindung kann der eingehende Verkehr die verfügbare Bandbreite überschreiten, so dass es zu Zellverzögerungsschwankungen (CDV) kommen kann.
  • iii. Variable Bitrate – keine Echtzeit (VBR-nrt)
  • VBR-nrt wird, ebenso wie VBR-rt, auf der Basis eines PCR für einen QoS-Wert durch das System zur Ablaufsteuerung gesteuert, allerdings mit weniger strengen CDV-Anforderungen. Der VBR-rt-Verkehr wird daher typischerweise mit größeren Werten gewichtet als der VBR-nrt-Verkehr und kann somit effektiv um Bandbreite im Scheduler konkurrieren, ohne einen CDV-Grenzwert zu überschreiten.
  • iv. Unbestimmte Bitrate (UBR)
  • Ebenso wie VBR-rt und VBR-nrt weist der UBR-Verkehr eine der QoS zugeordnete Spitzenzellrate (PCS) und keine CDV-Vorgaben auf. Dem UBR-Verkehr können verschiedene QoS mit verschiedenen Inkrementen zugeordnet werden, wodurch eine gewichtete, relative Verteilung der verfügbaren Bandbreite ermöglicht wird.
  • v. Garantierte Frame-Rate (GFR)
  • GFR ist eine Qualitätsklasse auf der Basis von Frames, die anstatt einzelner Zellen eine Reihe von ATM-Zellen enthalten, so dass die Kontrolle auf der Basis dieser Rahmen erfolgt. Gemäß der vorliegenden Erfindung werden einem GFR-Datenfluss zwei Ablaufsteuerungsparameter zugeordnet, eine Mindestzellrate (MCR), die aus der Mindest-Framerate und der maximalen Framegröße abgeleitet wird, und eine Spitzenzellrate (PCR). Der Verkehr bei garantierter MCR oder darüber hat eine garantierte Frame-Rate zur Folge. Verkehr über MCR, jedoch unter PCR wird wie UBR verarbeitet, konkurriert jedoch mit anderen Datenflüssen um die verfügbare Bandbreite.
  • Für die Ablaufsteuerung gemäß der vorliegenden Erfindung werden GFR-Datenflüsse mit Hilfe von 2 QoS programmiert. Eine erste CBR-QoS wird mit der auf MCR gesetzten Geschwindigkeit programmiert. Eine zweite UBR-QoS wird mit einer entsprechenden Gewichtung und der auf PCR gesetzten Geschwindigkeit programmiert. Wenn also ein Datenfluss aktiv wird, werden zwei Verbindungen in die Ablaufsteuerung eingegeben, eine CBR- und eine UBR-Verbindung.
  • 1
  • GFC
    Generische Flusskontrolle [4 Bit]
    VPI
    Virtuelle Pfadkennung [8/12 Bit]
    VCI
    Virtuelle Kanalkennung [16 Bit]
    PT
    Nutzdaten-Typ [3 Bit]
    CLP
    Zellverlust-Priorität [1 Bit]
    HEC
    Zellkopf-Fehlerkontrolle [8 Bit]
    Payload
    Nutzdaten [48 Byte]
  • 2
  • ISP
    Internet-Provider
    Transport Card
    Transportkarte
    MUX/DEMUX
    Multiplexer/Demultiplexer
    NET
    Netzwerk
    CB
    Zellenbus
    Channel Bank
    Primärmultiplexer
    ATLAS
    ATM Layer Solution
    Line Card
    Leitungskarte
    Bank Control Unit
    Multiplexer-Steuereinheit
  • 3 & 4
  • Subscriber Slots
    Teilnehmer-Steckplätze
    Transport Slots
    Transport-Steckplätze
    Redundant CPS
    Redundante Steuerprozessoren
    NCP
    Netzwerk-Prozessor
  • 57
  • Network
    Netzwerk
    Transport Card
    Transportkarte
    MXDX
    Multiplexer/Demultiplexer
    NET
    Netzwerk
    Cell Bus
    Zellenbus
    ATLAS
    ATM Layer Solution
    Subscribers
    Teilnehmer
    Cell Memory
    Zellenspeicher
    Q Core
    Warteschlangenkern
    Context Memory
    Kontextspeicher
    Filter
    Filter
    Scheduler
    Scheduler
    DEMUX
    Demultiplexer
    Stackplane Bus
    Stapelebenen-Bus
    MUX
    Multiplexer
    ATM Min Mode
    ATM-Min-Modus
    ATM Max Mode Upstream
    ATM-Max-Upstream-Modus
    Subscribers Stackplane
    Teilnehmer-Stapelebene
    ATM Max Mode Dnstream
    ATM-Max-Downstream-Modus
  • 8
  • Head/Tail Memory
    Kopf/Endspeicher
    Q Core
    Warteschlangenkern
    Pointer Memory
    Pointerspeicher
    Head
    Kopf
    Tail
    Ende
    Flow
    Datenfluss
    Pointer
    Pointer
    Cell Memory
    Zellenspeicher
  • 9 & 10
  • Time-ID
    Zeit-ID
    Time descriptor
    Zeitdeskriptor
    Flow
    Datenfluss
    QoS
    Dienstgüte
    CoS
    Dienstklasse
    Roll-over
    Verschiebung
  • 11
  • Time-ID
    Zeit-ID
    Time Des.
    Zeitdeskriptor
    Shaper
    Port-Shaper
    Flow-ID
    Datenfluss-ID
  • 12
  • Anmerkungen
  • 1001
    QoS3 war erfolgreich, die Gewichtung wird zu ihrem Kennungswert addiert
    1002
    QoS3 war erfolgreich, weil sie einer QoS mit niedrigerer Priorität zugeordnet war
    1003
    QoS2 war erfolgreich, weil sie den niedrigsten Kennungswert aufwies
    1004
    QoS3 war erneut erfolgreich, weil sie QoS1 zugeordnet war
    1005
    QoS1 war erfolgreich, weil sie den niedrigsten Kennungswert aufwies
    1006
    QoS3 war gegenüber QoS2 erfolgreich
    1007
    QoS2 war erfolgreich
    1008
    QoS3 war erfolgreich
    1009
    QoS3 war unter 4 Möglichkeiten erfolgreich
    1010
    Die restlichen QoS werden in
    1011
    der QoS-Reihenfolge
    1012
    verarbeitet
  • 13
  • Time-ID
    Zeit-ID
    Time Des.
    Zeitdeskriptor
    Flow
    Datenfluss
    Tag
    Kennung

Claims (5)

  1. Ein Verfahren zur Ablaufsteuerung für die Übertragung von ATM-Zellen (Asynchronous Transfer Mode) von einer Warteschlangeneinrichtung für ATM-Zellen, das die folgenden Schritte umfasst: – Zuordnung zwischen Datenflüssen (A, ... E) und Zeitdeskriptoren eines Port-Shapers, wobei jeder Datenfluss mindestens eine der ATM-Zellen kennzeichnet, und – aufeinander folgende Aktivierung der Zeitdeskriptoren des Port-Shapers und, sofern einer der Datenflüsse mit dem aktivierten Zeitdeskriptor zugeordnet ist, Auswahl dieses Datenflusses, Übertragung einer der von dem ausgewählten Datenfluss gekennzeichneten ATM-Zellen und Neuzuordnung des ausgewählten Datenflusses von dem aktiven Zeitdeskriptor zu einem nachfolgenden Zeitdeskriptor auf der Basis eines Gebühren-Grenzinkrements, das dem ausgewählten Datenfluss zugeordnet ist, gekennzeichnet durch die folgenden Schritte: – Entscheidung, welcher Datenfluss zur Übertragung einer ATM-Zelle ausgewählt wird, wenn dem aktivierten Zeitdeskriptor mehrere Datenflüsse zugeordnet sind, wobei die genannte Entscheidung die folgenden Schritte umfasst: – Auswertung des Datenfluss-Kennungswertes und Ermittlung des Datenflusses, der in Übereinstimmung mit den Kennungswerten eine ATM-Zelle übertragen darf, und – nachdem der genannte Datenfluss eine ATM-Zelle übertragen hat, Änderung des Kennungswertes des genannten Datenflusses in Abhängigkeit von einem Gewichtungswert, der dem genannten Datenfluss individuell zugeordnet wird.
  2. Das Verfahren aus Anspruch 1, wobei eine Vielzahl von ersten Port-Shapern (L1) sowie ein zweiter Port-Shaper (L2) vorhanden sind und wobei jeder der ersten Port-Shaper dem Port-Shaper aus Anspruch 1 entspricht, das die folgenden Schritte umfasst: – Zuordnung von Port-Shaper-IDs (L1_ID) für die Zeitdeskriptoren des zweiten Port-Shapers, wobei die Port-Shaper-IDs jeweils einen der ersten Port-Shaper kennzeichnen, und – aufeinander folgende Aktivierung der Zeitdeskriptoren des zweiten Port-Shapers, und falls eine der Port Shaper-IDs dem aktivierten Zeitdeskriptor des zweiten Port-Shapers zugeordnet ist, Auswahl dieser Port-Shaper-ID und Aktivierung eines der Zeitdeskriptoren in einem der ersten Port-Shaper, der durch die ausgewählte Port-Shaper-ID gekennzeichnet ist.
  3. Eine Vorrichtung zur Ablaufsteuerung für die Übertragung von ATM-Zellen (Asynchronous Transfer Mode), die Folgendes umfasst: – einen Port-Shaper, der eine Vielzahl von Zeitdeskriptoren beinhaltet, wobei die Zeitdeskriptoren Datenflüssen (A, ... E) zugeordnet werden können und wobei jeder der Datenflüsse mindestens eine der ATM-Zellen kennzeichnet, – Mittel zur aufeinander folgenden Aktivierung der Zeitdeskriptoren des Port-Shapers, und falls einer der Datenflüsse dem aktivierten Zeitdeskriptor zugeordnet ist, Auswahl dieses Datenflusses, Übertragung einer der ATM-Zellen, die durch den ausgewählten Datenfluss gekennzeichnet ist, und Neuzuordnung des ausgewählten Datenflusses vom aktiven Zeitdeskriptor zu einem nachfolgenden Zeitdeskriptor auf der Basis eines Gebühren-Grenzinkrements, das dem ausgewählten Datenfluss zugeordnet ist, gekennzeichnet durch: – Mittel zur Entscheidung, welcher Datenfluss zur Übertragung einer ATM-Zelle ausgewählt wird, wenn dem aktivierten Zeitdeskriptor mehrere Datenflüsse zugeordnet sind, wobei die genannten Mittel zur Entscheidung Folgendes umfassen: – Mittel zur Auswertung der Kennungswerte der Datenflüsse und zur Ermittlung des Datenflusses, der in Abhängigkeit von den Kennungswerten eine ATM-Zelle übertragen darf, und – Mittel zur Änderung des Kennungswertes des genannten Datenflusses, nachdem der genannte Datenfluss eine ATM-Zelle übertragen hat, und zwar in Abhängigkeit von einem dem genannten Datenfluss individuell zugeordneten Gewichtungswert.
  4. Die Vorrichtung aus Anspruch 3, die Folgendes umfasst: – eine Vielzahl von ersten Port-Shapern (L1), wobei jeder der ersten Port-Shapern dem Port-Shaper aus Anspruch 3 entspricht, – einen zweiten Port-Shaper, – Mittel zur Zuordnung von Port-Shaper-IDs (L1_ID) für die Zeitdeskriptoren des zweiten Port-Shapers, wobei die Port-Shaper-IDs jeweils einen der ersten Port-Shaper kennzeichnen, und – Mittel zur aufeinander folgenden Aktivierung der Zeitdeskriptoren des zweiten Port-Shapers, und falls eine der Port-Shaper-IDs dem aktivierten Zeitdeskriptor des zweiten Port-Shapers zugeordnet ist, Auswahl dieser Port-Shaper-ID und Aktivierung eines der Zeitdeskriptoren in einem der ersten Port-Shaper, der durch die ausgewählte Port-Shaper-ID gekennzeichnet ist.
  5. Die Vorrichtung aus Anspruch 4, die zudem Folgendes umfasst: – zusätzliche zweite Port-Shaper, die jeweils eine Vielzahl von Zeitdeskriptoren beinhalten, wobei den Zeitdeskriptoren Port-Shaper-IDs zugeordnet werden können, wobei jede der Port-Shaper-IDs einen der ersten Port-Shaper kennzeichnet, – dritte Port-Shaper, die jeweils eine Vielzahl von Zeitdeskriptoren beinhalten, wobei den Zeitdeskriptoren der dritten Port-Shaper Port-Shaper-IDs zugeordnet werden können, wobei jede der Port-Shaper-IDs, die den dritten Port-Shapern zugeordnet werden können, einen der zweiten Port-Shaper kennzeichnet, und – einen vierten Port-Shaper, der eine Vielzahl von Zeitdeskriptoren beinhaltet, wobei den Zeitdeskriptoren Port-Shaper-IDs zugeordnet werden können, wobei jede der Port-Shaper-IDs einen der ersten Port-Shaper kennzeichnet.
DE60035846T 1999-12-22 2000-12-19 System für Ablaufsteurung zur Übertragung von ATM-Zellen Expired - Lifetime DE60035846T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US469584 1999-12-22
US09/469,584 US6430152B1 (en) 1999-12-22 1999-12-22 Scheduler system for scheduling the distribution of ATM cells

Publications (2)

Publication Number Publication Date
DE60035846D1 DE60035846D1 (de) 2007-09-20
DE60035846T2 true DE60035846T2 (de) 2008-04-30

Family

ID=23864325

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60035846T Expired - Lifetime DE60035846T2 (de) 1999-12-22 2000-12-19 System für Ablaufsteurung zur Übertragung von ATM-Zellen

Country Status (4)

Country Link
US (1) US6430152B1 (de)
EP (1) EP1111851B1 (de)
AT (1) ATE369681T1 (de)
DE (1) DE60035846T2 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6822966B2 (en) * 1999-03-01 2004-11-23 Enterasys Networks, Inc. Allocating buffers for data transmission in a network communication device
US7249186B1 (en) 2000-01-20 2007-07-24 Cisco Technology, Inc. System and method for identifying a subscriber for connection to a communication network
US7216175B1 (en) 2000-01-20 2007-05-08 Cisco Systems, Inc. System and method for determining subscriber information
US7111163B1 (en) 2000-07-10 2006-09-19 Alterwan, Inc. Wide area network using internet with quality of service
US7325058B1 (en) 2000-11-13 2008-01-29 Cisco Technology, Inc. Method and system for controlling subscriber access in a network capable of establishing connections with a plurality of domain sites
KR100902513B1 (ko) * 2001-04-13 2009-06-15 프리스케일 세미컨덕터, 인크. 데이터 스트림 프로세서들에서 데이터 스트림들의 조작
CN100484123C (zh) * 2003-09-13 2009-04-29 华为技术有限公司 一种数字用户线接入复用设备和信号传输方法
FI114599B (fi) * 2003-10-14 2004-11-15 Tellabs Oy Menetelmä ja laitteisto aggregaattiosuuskohtaisen vuonmuokkauksen tekemiseksi pakettikytkentäisessä tietoliikenteessä
US7512148B2 (en) * 2003-12-09 2009-03-31 Texas Instruments Incorporated Weighted round-robin arbitrator
US7529224B2 (en) * 2005-04-18 2009-05-05 International Business Machines Corporation Scheduler, network processor, and methods for weighted best effort scheduling
US8144584B1 (en) 2009-07-20 2012-03-27 Juniper Networks, Inc. WRR scheduler configuration for optimized latency, buffer utilization

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0690596B1 (de) 1994-06-28 2002-05-15 Hewlett-Packard Company, A Delaware Corporation Verfahren und Gerät zur Plannung von Zellenübertragung von virtuellen Kanälen mit garantierter Bandbreite
US5724513A (en) 1994-06-30 1998-03-03 Digital Equipment Corporation Traffic shaping system for asynchronous transfer mode networks
US5515363A (en) 1994-06-30 1996-05-07 Digital Equipment Corporation Traffic shaping system with transmit latency feedback for asynchronous transfer mode networks
EP0700186B1 (de) 1994-08-31 2005-04-13 Hewlett-Packard Company, A Delaware Corporation Verfahren und Vorrichtung zur Regulierung von Zellentransmissionen über virtuelle Kanäle
EP0702473A1 (de) * 1994-09-19 1996-03-20 International Business Machines Corporation Verfahren und Vorrichtung zur Formung des Ausgangsverkehrs in einem Netzwerknoten zur Vermittung von Zellen fester Länge
US5712851A (en) 1995-12-28 1998-01-27 Lucent Technologies Inc. Adaptive time slot scheduling apparatus and method utilizing a linked list mechanism
US5751709A (en) 1995-12-28 1998-05-12 Lucent Technologies Inc. Adaptive time slot scheduling apparatus and method for end-points in an ATM network
US5898669A (en) 1996-03-22 1999-04-27 Shimony; Ilan ATM traffic management device
US5732087A (en) 1996-05-10 1998-03-24 Mitsubishi Electric Information Technology Center America, Inc. ATM local area network switch with dual queues
US5946297A (en) * 1996-05-31 1999-08-31 International Business Machines Corporation Scheduling method and apparatus for supporting ATM connections having a guaranteed minimun bandwidth
US5745490A (en) 1996-06-19 1998-04-28 Pmc-Sierra, Inc. Variable bit rate scheduler
US5926459A (en) * 1996-06-27 1999-07-20 Xerox Corporation Rate shaping in per-flow queued routing mechanisms for available bit rate service
US5953336A (en) * 1996-08-05 1999-09-14 Virata Limited Method and apparatus for source rate pacing in an ATM network
US5864540A (en) * 1997-04-04 1999-01-26 At&T Corp/Csi Zeinet(A Cabletron Co.) Method for integrated traffic shaping in a packet-switched network
US5905730A (en) * 1997-04-04 1999-05-18 Ascend Communications, Inc. High speed packet scheduling method and apparatus
US6327254B1 (en) * 1997-10-14 2001-12-04 Lucent Technologies Inc. Method for bandwidth sharing in a multiple access system for communications networks
US6034960A (en) * 1997-12-04 2000-03-07 Nortel Networks Corporation ATM service scheduler using reverse-binary scattering and time-space mapping
US6389019B1 (en) * 1998-03-18 2002-05-14 Nec Usa, Inc. Time-based scheduler architecture and method for ATM networks

Also Published As

Publication number Publication date
ATE369681T1 (de) 2007-08-15
EP1111851B1 (de) 2007-08-08
DE60035846D1 (de) 2007-09-20
US6430152B1 (en) 2002-08-06
EP1111851A2 (de) 2001-06-27
EP1111851A3 (de) 2003-06-11

Similar Documents

Publication Publication Date Title
DE60036682T2 (de) Maschine zur gewichteten ringförmigen Ablaufsteuerung
DE69732507T2 (de) Paketvermitteltes Kommunikationssystem
DE69811619T2 (de) ATM-Zellenübertragung
DE10350504B4 (de) Verfahren und Vorrichtung zum Festlegen bzw. Zuteilen einer verfügbaren Verknüpfungsbandbreite zwischen paketvermittelten Datenflüssen
DE69634857T2 (de) Ablaufsteuerung für eine informationspaketvermittlung
DE69533695T2 (de) Busarbitrierungsverfahren für fernmeldevermittlung
DE69636825T2 (de) Verzögerungsminimalisierungssystem mit garantierter Bandbreite für Echtzeitverkehr
DE69717455T2 (de) Verfahren und anlage zur steuerung von quellengeschwindigkeit in einem atm netzwerk
DE69510536T2 (de) Breitbandvermittlungsnetz
DE69331309T2 (de) Bandbreitenzuordnung, Übertragungsplanung und Vermeidung von Blockierungen in Breitband Asynchroner-Transfer-Modus Netzwerken
DE69833588T2 (de) Dynamische, geschwindigkeitsbasierte Ablauffolgesteuerung für ATM-Netzwerke
DE69428186T2 (de) Mehrfachsendeeinrichtung
DE69817756T2 (de) ATM Zellenübertragungsplanung
DE69726223T2 (de) Verkehrsformer mit virtuellen Pfaden mit mehrfachen Warteschlangen
DE69937862T2 (de) Bandbreitensteuerung mit zwei Komponenten, zur Anwendung in digitalen Kommunikationssystemen mit mehreren Klassen
DE69738386T2 (de) Verbesserungen in oder sich beziehend auf eine ATM-Vermittlungsstelle
JP3115546B2 (ja) Atmセルを最適に伝送する方法
DE60217685T2 (de) System und verfahren zum vermitteln von daten unter verwendung eines gemeinsamen koppelfeldes
EP0730362A2 (de) Verfahren und Schaltungsanordnung zum Weiterleiten von über eine ATM-Kommunikationseinrichtung übertragenen Nachrichtenzellen an eine Abnehmerleitung
DE60035846T2 (de) System für Ablaufsteurung zur Übertragung von ATM-Zellen
DE60313416T2 (de) Mehrfachübertragungssystem und -Verfahren zur Verwendung in einer ATM-Vermittlung eines Netzzugangsknotens
EP0730361A2 (de) Schaltungsanordnung zur Aufnahme und Weiterleitung von Nachrichtenzellen durch eine ATM-Kommunikationseinrichtung
EP0660557A1 (de) Verfahren zum statistischen Multiplexen
DE69935549T2 (de) Vorrichtung zum Paketmultiplexen
DE60300827T2 (de) Kommunikationssystem und Verfahren mit einer Vorrichtung zur Warteschlangenbildung pro Dienst

Legal Events

Date Code Title Description
8364 No opposition during term of opposition