[go: up one dir, main page]

DE60300827T2 - Kommunikationssystem und Verfahren mit einer Vorrichtung zur Warteschlangenbildung pro Dienst - Google Patents

Kommunikationssystem und Verfahren mit einer Vorrichtung zur Warteschlangenbildung pro Dienst Download PDF

Info

Publication number
DE60300827T2
DE60300827T2 DE60300827T DE60300827T DE60300827T2 DE 60300827 T2 DE60300827 T2 DE 60300827T2 DE 60300827 T DE60300827 T DE 60300827T DE 60300827 T DE60300827 T DE 60300827T DE 60300827 T2 DE60300827 T2 DE 60300827T2
Authority
DE
Germany
Prior art keywords
priority
group
cell
traffic
request
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
DE60300827T
Other languages
English (en)
Other versions
DE60300827D1 (de
Inventor
Daniel J. Aliso Viejo Burns
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.)
Broadcom Corp
Original Assignee
Broadcom Corp
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 Broadcom Corp filed Critical Broadcom Corp
Application granted granted Critical
Publication of DE60300827D1 publication Critical patent/DE60300827D1/de
Publication of DE60300827T2 publication Critical patent/DE60300827T2/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • 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/22Traffic shaping
    • 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/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/5651Priority, marking, classes
    • 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
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft Kommunikationssysteme und -verfahren, die einen Per-Service-Queuing-Mechanismus vorsehen, um mehrere Dienstklassen über eine einzelne virtuelle Verbindung (VC – virtual circuit) zu unterstützen, wobei die Dienstgüteverschlechterung (QoS-Verschlechterung) höherer QoS-Dienste minimiert wird.
  • Relevanter Stand der Technik
  • Ein wichtiger Aspekt eines Kommunikationssystems, das auf der asynchronen Übertragungsmodustechnologie (ATM-Technologie – Asynchronous Transfer Mode technology) basieren kann, besteht in seiner Fähigkeit, spezifische Niveaus der Dienstgüte (Quality of Service – QoS) für eine festgelegte virtuelle Verbindung (VC) zwischen einer Quelle und einem Ziel vorzusehen. Implementierungen vieler Higher-Layer-Protokolle, die über einer ATM-Schicht liegen (wie etwa ein Punkt-zu-Punkt-Protokoll über Ethernet), machen es erforderlich, dass für den gesamten Datenverkehr zwischen einer Verkehrsquelle (traffic source) und einem spezifischen Kundenziel eine einzelne VC verwendet wird. Aktuelle Systeme lassen keine Übertragung von Verkehrsquellendaten mehrerer Dienste (wie etwa Voice-over-IP, Daten und Video) mit unterschiedlichen QoS-Parametern über eine einzelne VC zu, ohne bei Verwendung von Per-VC-Queuing-Mechanismen die Dienstgüte des Dienstes erheblich zu verschlechtern.
  • Es werden ein Kommunikationssystem und -verfahren benötigt, die einen Per-Service-Queuing-Mechanismus vorsehen, der mehrere Dienstklassen über eine einzelne VC unterstützt, wobei die QoS-Verschlechterung von höheren QoS-Diensten minimiert wird. Darüber hinaus werden ein Kommunikationssystem und -verfahren benötigt, die gleichzeitig mit einem Einzel-Prioritäts-Queuing-Verfahren arbeiten können, d.h. mit einer Warteschlange pro VC.
  • In WO 99/53656 ist ein computerimplementiertes Verfahren zum Formen oder Gestalten (Shaping) des Ausgangs von Zellen eines Ausgangspfads einer Datenübertragungseinrichtung beschrieben. Die Datenübertragungseinrichtung ist zum Vermitteln (Switching) der Zellen von mehreren Eingangspfaden zu den Ausgangspfaden eines Netzwerks konfiguriert. Das Verfahren umfasst das Sortieren einer Mehrzahl von Warteschlangen, wobei jede Warteschlange eine Mehrzahl an Zellen umfasst, die einer Kommunikationseinrichtung zugeordnet sind. Die Mehrzahl an Warteschlangen ist gemäß einer Wertigkeit und einer Datenrate angeordnet, die jeder Mehrzahl an Zellen zugeordnet sind, was zu einer Mehrzahl sortierter Warteschlangen aus Warteschlangen führt. Ein summierter Ausgang von Zellen von jeder sortierten Warteschlange aus Warteschlangen wird basierend auf den Datenraten der Warteschlangen jeder sortierten Warteschlange aus Warteschlangen und den Wertigkeiten jeder sortierten Warteschlange aus Warteschlangen geregelt, so dass der geplante Ausgang mit dem Ausgangspfad verbunden ist. Es wird ein Traffic-Shaping-Verfahren durchgeführt, wobei anstelle der Verwendung eines Traffic-Shapers für jede virtuelle Verbindung (VC) die Gruppierung von VC-Warteschlangen mit ähnlichen Datenraten durchgeführt wird, so dass ihr Verkehr (traffic) durch einen einzelnen Traffic-Shaper geformt wird.
  • Gemäß EP 1 039 774 A2 ist eine im asynchronen Übertragungsmodus (ATM) arbeitende Puffersteuereinheit und ein ATM-Puffersteuerverfahren realisiert, das ein hohes Niveau der Dienstgüte des ATM-Verkehrs unabhängig davon aufrechterhält, ob ein Shaping (Formen) erforderlich ist oder nicht. Verkehr, der kein Shaping benötigt, wird in einer dedizierten Ausgangswarteschlange jeder ATM-Dienstkategorie angeordnet und entsprechend der Ordnung jeder Priorität über die Steuerung der festgelegten Priorität ausgegeben. In der Zwischenzeit wird Verkehr, der Shaping benötigt, in einem von n Teilen von Shapern angeordnet und an dem Verkehr eine Shaping-Verarbeitung durchgeführt. Alle Shaper können über die Verkehrsklasse einen geeigneten von fünf Round-Robin-Steuerabschnitten auswählen, um die Priorität des Ausgangs des entsprechenden ATM-Verkehrs zu steuern.
  • EP 1 039 774 A2 beschreibt einen dynamischen Ratensteuerungs-Scheduler (DRC-Scheduler – dynamic rate control scheduler) zur Ablaufplanung (Scheduling) von Zellen für den Dienst in einem üblichen ATM-Switch (asynchronous transfer mode switch). Gemäß der DRC wird an jedem Verkehrsstrom, der einer internen Switch-Warteschlange zugeordnet ist, in Übereinstimmung mit einer Rate, die aus einer minimal garantierten Rate und einer dynamischen Komponente besteht, welche basierend auf Überlastungsinformationen im Switch berechnet wird, ein Rate-Shaping-Verfahren durchgeführt. Obgleich sie häufig genutzt wird, garantiert die DRC nur einen minimalen Durchsatz bei jedem Strom und verteilt die unbenutzte Bandbreite einigermaßen. Die Verteilung von ungenutzter Bandbreite bei DRC muss nicht proportional zu den minimalen Durchsatzgarantien sein, wie bei gewichteten Fair-Share-Schedulern. Eine QoS-Steuerung mit geschlossenem Regelkreis wird in die DRC durch dynamisches Aktualisieren eines Satzes an Wertigkeiten basierend auf der beobachteten Dienstgüte eingebaut.
  • KURZE ZUSAMMENFASSUNG DER ERFINDUNG
  • Aufgabe der vorliegenden Erfindung ist es, eine Kommunikationsvorrichtung und ein Verfahren zum Steuern der Datenübertragung von einer Kommunikationsvorrichtung vorzusehen.
  • Die Ausführungsformen der vorliegenden Erfindung sehen eine Kommunikationsvorrichtung vor. Die Kommunikationsvorrichtung umfasst Gruppen von Übertragungswarteschlangen (transmit queues), die Verkehrsquellendaten von entsprechenden Verkehrsquellen (traffic sources) empfangen. Die Kommunikationsvorrichtung umfasst außerdem eine Shaping-Einrichtung, die Traffic-Shaper umfasst, wobei jeder der Traffic-Shaper mit einer entsprechenden der Warteschlangen verbunden ist. Die Kommunikationsvorrichtung umfasst ferner eine Prioritätsablaufplanungseinrichtung (priority scheduling device), die einen Scheduler und Multiplexer umfasst, wobei die Multiplexer mit entsprechenden der Übertragungswarteschlangengruppen verbunden und die Multiplexer dafür konfiguriert sind, die Verkehrsquellendaten über eine entsprechende virtuelle Verbindung (VC) an kundeneigene Endgeräte (CPE – customer premise equipment) zu senden.
  • Andere Ausführungsformen der vorliegenden Erfindung sehen ein Verfahren zum Steuern von Datenübertragungen vor, das den Schritt des Initialisieren eines Systems umfasst, wobei das System Übertragungswarteschlangen, die in Gruppen von Übertragungswarteschlangen organisiert sind, eine Shaping-Einrichtung mit mehreren Traffic-Shapern, wobei einer der mehreren Traffic-Shaper einer der Übertragungswarteschlangen entspricht, und eine Prioritätsablaufplanungseinrichtung aufweist. Das Verfahren umfasst außerdem den Schritt des Empfangens von Zellenanfragedaten, die den Daten von entsprechenden der Übertragungswarteschlangen entsprechen, an entsprechenden der Traffic-Shaper. Das Verfahren umfasst ebenfalls den Schritt des Bestimmens eines QoS-Prioritätswertes für alle Zellenanfragedaten in dem entsprechenden der Traffic-Shaper. Das Verfahren umfasst ferner den Schritt der Ablaufplanung der Übertragung der Daten basierend auf dem bestimmten QoS-Wert.
  • Die Vorteile dieses Systems und Verfahrens bestehen darin, dass sie es ermöglichen, Sendedaten mehrerer Dienste, die sich eine einzelne VC teilen, basierend auf den gewählten QoS-Anforderungen nach Vorrang zu ordnen. Das System und das Verfahren erzielen dieses Mehr-Prioritäten-Queuing, ohne Einschränkung der Anzahl an verfügbaren Übertragungswarteschlangen, die sich eine VC teilen können, ohne Einschränkung der Anzahl an Mehr-Prioritäten-VCs und ohne die Ablaufplanung (Scheduling) von Einzel-Prioritäts-VCs aufzugeben.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN/FIGUREN
  • Die begleitenden Zeichnungen, die in die Beschreibung eingearbeitet sind und einen Teil derselben darstellen, zeigen eine oder mehrere Ausführungsformen der Erfindung und erläutern zusammen mit der Beschreibung den Zweck, die Vorteile und Grundlagen der Erfindung. In den Zeichnungen beziehen sich gleiche Bezugszeichen auf gleiche oder im Wesentlichen gleiche Elemente. Des Weiteren gibt/geben die ganz links stehenden Ziffer(n) der Bezugszeichen die Nummer der Zeichnung an, in der das Bezugszeichen zuerst benutzt wird.
  • 1 zeigt ein Kommunikationssystem gemäß den Ausführungsformen der vorliegenden Erfindung.
  • 2 zeigt eine herkömmliche Übertragungswarteschlange.
  • 3 zeigt Übertragungswarteschlangen und einen Multiplexer gemäß den Ausführungsformen der vorliegenden Erfindung.
  • 4 zeigt eine detaillierte Ansicht eines Abschnitts des Kommunikationssystems gemäß 1.
  • 5 ist ein Flussdiagramm, das ein allgemeines Betriebsverfahren des Kommunikationssystems aus 1 gemäß den Ausführungsformen der vorliegenden Erfindung zeigt.
  • 6 ist ein Flussdiagramm, das einen Initialisierungsabschnitt des Verfahrens gemäß 5 zeigt.
  • 7 ist ein Flussdiagramm, das einen Zellenanfragedaten-Shapingabschnitt des Verfahrens gemäß 5 zeigt.
  • 8A und 8B zeigen ein Flussdiagramm, das einen Scheduling-Abschnitt des Verfahrens gemäß 5 zeigt.
  • 9 ist ein Computer-System gemäß den Ausführungsformen der vorliegenden Erfindung.
  • GENAUE BESCHREIBUNG DER ERFINDUNG
  • Ein Kommunikationssystem und ein damit in Zusammenhang stehendes Verfahren gemäß den Ausführungsformen der vorliegenden Erfindung sehen die Fähigkeit vor, Verkehrsquellendaten von einer oder mehreren Übertragungswarteschlangen auf einer einzelnen VC kombinieren und die Reihenfolge der Übertragung jeder Gruppe auf einen jeder Warteschlange zugewiesenen QoS-Prioritätswert stützen zu können. Es versteht sich, dass in der gesamten Beschreibung eine "Gruppe" von Übertragungswarteschlangen eine oder mehrere Übertragungswarteschlangen umfassen kann. Diese Fähigkeit ermöglicht es mehreren Dienstklassen, sich eine VC zu teilen, ohne die Fähigkeit zu verlieren, einer Dienstklasse Vorrang gegenüber einer anderen einzuräumen. Wie beispielsweise in 4 gezeigt, ist es bei dem System und Verfahren möglich, eine Übertragungswarteschlange für niedrige QoS-Datendienste, eine andere für höhere QoS-Datendienste und eine dritte für höchste QoS-Videodienste festzulegen, wobei sich alle drei Dienstklassen eine einzelne VC teilen und wobei sichergestellt wird, dass die höheren QoS-Sendepakete vor den niedrigeren QoS-Sendepaketen gesendet werden. Dies steht im Gegensatz zu herkömmlichen Systemen, wie in 3 gezeigt, die alle Prioritätsklassen ungeachtet der Priorität in einer einzelnen Übertragungswarteschlange stapeln (Per-VC-Queuing).
  • 1 zeigt ein Kommunikationssystem 100, das Teil eines ATM-Netzwerks sein kann, gemäß den Ausführungsformen der vorliegenden Erfindung. Das System 100 umfasst Verkehrsquellen 102, die Verkehrsquellendaten (z.B. Sprachdaten, Videodaten, Internetdaten etc.) an eine Übertragungswarteschlange 104 senden. Die Übertragungswarteschlange 104 sendet Zellenanfragedaten (z.B. Zellenverfügbarkeitssignale), die auf den Verkehrsquellendaten basieren, an eine Shaping-Einrichtung 106 und eine Prioritätsablaufplanungseinrichtung 108. Die Shaping-Einrichtung 106 gestaltet die Zellenanfragedaten und gibt eine Zellenanfrage an die Prioritätsablaufplanungseinrichtung 108 aus. Die Prioritätsablaufplanungseinrichtung 108 sendet Zellenbewilligungsinformationen an die Shaping-Einrichtung 106, nachdem eine Zellenanfrage bewilligt worden ist. Ein Shaping- und Zellenübertragungszyklus wird durch einen Shaping-Intervalldauerzähler (SIT-Zähler – shaping interval time counter) 110 initiiert, welcher ein programmierbarer Zähler sein kann, der ein SIT-Signal an den Shaper 106 und die Prioritätsablaufplanungseinrichtung 108 sendet. Eine Hauptsteuereinheit 112 sendet erste Parameter an die Shaping-Einrichtung 106 und die Prioritätsablaufplanungseinrichtung 108. Eine Sende-Multiplexer oder erster Multiplexer 114 ist mit der Übertragungswarteschlange 104 und dem Scheduler 108 verbunden. Der erste Multiplexer 114 steuert die Weiterleitung (Routing) der Verkehrsquellendaten, die über n (n = eine positive ganze Zahl zwischen 1 und m) VCs an einen Empfangs-Mulitplexer oder zweiten Multiplexer 116 gesendet werden. Schließlich steuert der zweite Multiplexer 116 die Weiterleitung der Verkehrsquellendaten an kundeneigene Endgeräte (CPE) 118.
  • 2 zeigt eine detailliertere Ansicht der Übertragungswarteschlangen 104, der Shaping-Einrichtung 106 und der Prioritätsablaufplanungseinrichtung 108. Die Shaping-Einrichtung 106 umfasst Traffic-Shaper 200, die mit entsprechenden der Übertragungsdatenwarteschlangen 104 verbunden sind, und Parameterspeichereinrichtungen 202, die mit entsprechenden der Traffic-Shaper 200 verbunden sind. Jeder der Traffic-Shaper 200 ist mit einem Scheduler 204 in der Prioritätsablaufplanungseinrichtung 108 verbunden. Der Scheduler 204 ist außerdem mit einem Gruppenkennungsspeicher 206 und dem Multiplexer 114 verbunden. Der Multiplexer 114 kann mehrere Multiplexer 208 umfassen. Die Parameterspeichereinrichtungen 202 und der Gruppenkennungsspeicher 206 sind mit der Hauptsteuereinheit 112 verbunden und werden von dieser initialisiert.
  • Wiederum Bezug nehmend auf 2 multiplext das System 100 Verkehrsquellendaten von einer beliebigen Anzahl an Eingangswarteschlangen 104 auf eine einzelne VC unter Verwendung der Per-TX-(Sende-)Warteschlangen-Shaping-Einrichtung 106 zusammen mit der Prioritätsablaufplanungseinrichtung 108. Wie in den 2 und 4 gezeigt, ist jede betriebsfähige VC dafür konfiguriert, eine Gruppe aufzuweisen, die entweder eine einzelne Warteschlange 104 (Einzel-Prioritäts-Betriebsart) oder mehrere Warteschlangen 104 (Mehr-Prioritäten-Betriebsart) umfasst. Wenn eine VC für die Mehr-Prioritäten-Betriebsart konfiguriert ist, wird eine Mehr-Prioritäten-Gruppe für diese VC durch die Hauptsteuereinheit 112 im Gruppenkennungsspeicher 206 festgelegt. Der Gruppenkennungsspeicher 206 enthält ein Aktivierungs-Bit und eine einzigartige Kennung für jede Gruppe. Jede Übertragungswarteschlange 104 und der zugeordnete Traffic-Shaper 200, die für eine Übertragung über eine bestimmte Mehr-Prioritäten-VC (Gruppe) ausgelegt sind, werden zu einem Mitglied dieser Gruppe. Die Hauptsteuereinheit 112 initialisiert den Traftic-Shaper 200 jeder Übertragungswarteschlange 104 als Mehr-Prioritäten-VC-Mitglied und ermittelt die Gruppe des Mitglieds, die dieselbe einzigartige Kennung verwendet, die im Gruppenkennungsspeicher 206 gespeichert wurde. Das System 100 unterstützt eine konfigurierbare Anzahl an Gruppen mit einer beliebigen Anzahl an Mitgliedern in jeder Gruppe, beispielsweise zwischen 1 und n. Eine Übertragungswarteschlange 104 kann ein Mitglied einer Ein-Mitgliedsgruppe (Einzel-Prioritäts-Betriebsart) oder einer Mehr-Prioritäten-VC-Gruppe sein. Wenn sie kein Mitglied einer Mehr-Prioritäten-VC-Gruppe ist, dann arbeitet Übertragungswarteschlange 104 normalerweise als einzelne Übertragungswarteschlange pro VC, was als Per-VC-Queuing bekannt ist.
  • Wie beispielhaft in 2 gezeigt, sind die Übertragungswarteschlangen 104-0, 104-1 und 104-3 alle Mitglieder einer ersten Gruppe (einer Mehr-Prioritäten-Gruppe) und werden über den Multiplexer 208-1 auf VC-1 gesendet. Außerdem ist die Übertragungswarteschlange 104-2 ein Mitglied einer zweiten Gruppe (einer Einzel-Prioritäts-Gruppe) und wird über einen Multiplexer 208-2 auf VC-2 gesendet. Des Weiteren sind die Übertragungswarteschlangen 208-(m-1) und 208-m Mitglieder einer dritten Gruppe und werden auf VC-m gesendet.
  • Weiterhin Bezug nehmend auf 2 enthält die Traffic-Shaping-Einrichtung 106 die einzelnen Traffic-Shaper 200, von denen jeder direkt einer Übertragungswarteschlange 104 zugeordnet ist. Jedes Mitglied einer bestimmten Mehr-Prioritäten-VC-Gruppe hat einen Shaper 200, der durch die Hauptsteuereinheit 112 mit denselben Shaping-Parametern wie alle anderen Mitglieder konfiguriert wird, und zwar in Übereinstimmung mit den Traffic-Shaping-Parametern der VC. Jedes Mitglied einer bestimmten Gruppe, dem in seiner zugeordneten Übertragungswarteschlange (TX-Queue) 104 Verkehrsquellendaten zur Verfügung stehen, erzeugt eine Zellenanfrage gemäß den Traffic-Shaping-Parametern der VC, und zwar zur gleichen Zeit wie jedes andere Mitglied, dem ebenfalls Verkehrsquellendaten zur Verfügung stehen. Die Prioritätsablaufplanungseinrichtung 108 vergleicht die Priorität der Zellenanfragen aller Mitglieder einer Gruppe und entscheidet welchem Mitglied die Sendeanfrage bewilligt werden soll. Sobald einem beliebigen Mitglied einer "Gruppe" eine Zellenanfrage bewilligt worden ist, aktualisieren die Traftic-Shaper 200 aller Mitglieder ihre Shaping-Algorithmen so als ob sie die Zellenbewilligung erhalten hätten, und zwar unabhängig davon, ob ein bestimmtes Mitglied die Zellenbewilligung erhalten hat oder ein anderes Mitglied der Gruppe. Alle Mitglieder einer Gruppe müssen den Shaping-Algorithmus aktualisieren, so dass die Traffic-Shaping-Parameter der VC nicht überschritten werden.
  • Ein Verfahren 500 gemäß den Ausführungsformen der vorliegenden Erfindung ist in 5 gezeigt. Die Hauptsteuereinheit 112 initialisiert das System 100 in Schritt 502. Zu Beginn jedes Scheduling-Intervalls generiert und sendet der SIT-Zähler 110 in Schritt 504 einen Impuls an die Shaping-Einrichtung 106 und die Prioritätsablaufplanungseinrichtung 108. In Schritt 506 greift die Shaping-Einrichtung 106 auf Zellenanfragedaten von den Übertragungswarteschlangen 104 zu und gestaltet sie. Wie nachfolgend genauer besprochen, gestaltet die Shaping-Einrichtung 106 Zellenanfragedaten und gibt eine Zellenanfrage gegebenenfalls mit einer Warteschlangennummer, einer Warteschlangenpriorität und einem Mehr-Prioritäten-Gruppenkennungswert mit jeder Sendeanfrage aus. In Schritt 508 empfängt die Prioritätsablaufplanungseinrichtung 108 von der Shaping-Einrichtung 106 Zellenanfragen für jede Übertragungswarteschlange 104, der Verkehrsquellendaten zur Verfügung stehen und die die Anforderungen der gewählten QoS-Parameter der VC erfüllt. Es können bis zu "m" gültige Anfragen empfangen werden. Die Prioritätsablaufplanungseinrichtung 108 bewertet jede Anfrage in Bezug auf andere Anfragen, um zu bestimmen welche Anfrage eine Zellenbewilligung erhält. Mit anderen Worten, die Ptioritätsablaufplanungseinrichtung plant die Übertragungen basierend auf der Zellenanfrage.
  • Ein Verfahren 600, das zum Initialisieren des Systems 100 während Schritt 502 verwendet werden kann, ist in 6 gezeigt. Die Warteschlangen 104 werden in Schritt 602 so konfiguriert, dass sie entweder mehrere Prioritäten (mehrere Warteschlangen in einer Gruppe) oder nicht mehrere Prioritäten (nur eine Warteschlange allein in einer Gruppe) haben. In Schritt 604 werden Mehr-Prioritäten-Gruppen im Gruppenkennungsspeicher 206 festgelegt, die mit den konfigurierten Gruppen aus Schritt 602 in Wechselbeziehung stehen. Ein Aktivierungs-Bit und eine einzigartige Gruppenkennung werden in Schritt 606 für jede Gruppe im Gruppenkennungsspeicher 206 gespeichert. Dieselbe Gruppenkennung wird in einer entsprechenden Parameterspeichereinrichtung 202 in Schritt 608 gespeichert.
  • Ein Verfahren 700, das dazu verwendet werden kann, auf Zellenanfragedaten der Warteschlangen 104 zuzugreifen und diese zu gestalten, ist in 7 gezeigt. Ein Impuls vom SIT-Zähler 110 wird an der Shaping-Einrichtung 106 empfangen, um in Schritt 702 ein Shaping-Intervall zu beginnen. Die Zellenanfragedaten von entsprechenden der Warteschlangen 104 werden in Schritt 706 an den einzelnen Traffic- Shapern 200 empfangen. In Schritt 708 gestalten die Traffic-Shaper 200 basierend auf den QoS-Parametern, die in den Parameterspeichereinrichtungen 202 gespeichert sind, die Zellenanfragedaten. Eine Zellenanfrage gegebenenfalls mit einer Warteschlangennummer, einer Warteschlangenpriorität und einer Mehr-Prioritäten-Kennung wird von den Traffic-Shapern 200 an die Prioritätsablaufplanungseinrichtung 108 in Schritt 710 ausgegeben.
  • Die 8A8B zeigen ein Verfahren 800, das in der Prioritätsablaufplanungseinrichtung 108 durchgeführt wird, die Sendezellenanfragen von der Shaping-Einrichtung 106 nach Priorität ordnet. Die Prioritätsablaufplanungseinrichtung 108 hat "n" gespeicherte Gruppenkennungswerte, von denen jeder eine Mehr-Prioritäten-Gruppe festlegt, die aus mehr als einem Mitglied besteht. Das Verfahren 800 vergleicht die Gruppenkennung jeder Zellenanfrage mit den einzigartigen Gruppenkennungen, die im Gruppenkennungsspeicher 206 gespeichert sind, um in Schritt 802 zu bestimmen, ob die Anfrage ein Mitglied einer bestimmten Mehr-Prioritäten-Gruppe ist. Wenn die Zellenanfrage kein Mitglied einer Mehr-Prioritäten-Gruppe ist, dann wird beginnend in Schritt 806 die Anfrage hinsichtlich ihrer Priorität gegenüber anderen Einzel-Prioritäts-Gruppenanfragen und dem festgelegten Eigentümer anderer Gruppen bewertet, was in 8B gezeigt und nachfolgend genauer beschrieben ist. Der Eigentümer einer Gruppe wird gemäß der Zellenanfragepriorität jedes Mitglieds und dadurch, ob ein Mitglied derzeit ein Paket sendet, festgelegt.
  • Weiterhin Bezug nehmend auf 8A ermittelt, wenn die Zellenanfrage als Mitglied einer Mehr-Prioritäten-Gruppe erachtet wird, das Verfahren 800 in Schritt 808 zunächst, ob die Zellenanfrage oder ein anderes Mitglied (Zellenanfrage) der Gruppe bereits eine Zellenanfrage verarbeitet, einschließlich eines Paketes (das in einer oder mehreren Zellen enthalten ist) auf der VC. Jedes Mitglied, das dabei ist, ein Paket zu senden, wird aufgrund der Voreinstellung zum Eigentümer der Gruppe. Alle anderen Mitgliederanfragen werden in Schritt 810 abgelehnt, bis der aktuelle Eigentümer die Verarbeitung des Pakets abgeschlossen hat. Ob die Anfragepriorität des Mitglieds höher als die anderer aktiver Mitgliederanfragen ist, wird in Schritt 812 bestimmt. Die Zellenanfrage wird in Schritt 814 dem Mitglied mit der Anfrage höherer Priorität bewilligt. Wenn jedoch die Anfragepriorität nicht höher ist, wird in Schritt 816 bestimmt, ob die Anfragepriorität des Mitglieds gleich der Priorität des anfragenden Mitglieds ist. Wenn nicht, wird die Anfrage in Schritt 818 abgelehnt. Wenn zwei oder mehr Gruppenmitgliederanfragen die gleiche Priorität haben, wird in Schritt 820 zwischen Mitgliederanfragen gleicher Priorität ein gewichtetes Round-Robin-Scheduling-Verfahren durchgeführt, um sicherzustellen, dass jedes Mitglied seine Daten senden kann. Das gewichtete Round-Robin-Scheduling-Verfahren gibt demjenigen der Mitglieder mit gleicher Priorität Vorrang, das am längsten gewartet hat. Dann wird in Schritt 822 ein Aktivierungssignal an die jeweilige Warteschlange 104 und den jeweiligen Multiplexer 208 gesendet.
  • 8B zeigt den Betrieb der Prioritätsablaufplanungseinrichtung 108, wenn das Mitglied der Zellenanfrage kein Mitglied einer Gruppe ist. In Schritt 806 wird bestimmt, ob eine andere Einzel-Prioritäts-Gruppenmitgliedsanfrage bereits eine Zellenanfrage verarbeitet, einschließlich eines Paketes auf einer VC. Jedes Einzel-Prioritäts-Gruppenmitglied, das dabei ist, ein Paket zu senden, wird aufgrund der Voreinstellung zum Eigentümer der Einzel-Prioritäts-Gruppe. Alle anderen Mitgliederanfragen werden in Schritt 824 abgelehnt, bis der aktuelle Eigentümer die Verarbeitung des Pakets abgeschlossen hat. Ob die Anfragepriorität des Mitglieds höher als die anderer aktiver Mitgliederanfragen ist, wird in Schritt 826 bestimmt. In Schritt 828 wird die Zellenanfrage dem Mitglied mit der Anfrage höherer Priorität bewilligt. Wenn jedoch die Anfragepriorität nicht höher ist, wird in Schritt 830 bestimmt, ob die Anfragepriorität des Mitglieds gleich ist. Wenn nicht, wird die Anfrage in Schritt 832 abgelehnt. Wenn zwei oder mehr Gruppenmitgliederanfragen die gleiche Priorität haben, wird in Schritt 834 zwischen Mitgliederanfragen gleicher Priorität ein gewichtetes Round-Robin-Scheduling-Verfahren durchgeführt, um sicherzustellen, dass jedes Mitglied seine Daten senden kann. Das gewichtete Round-Robin-Scheduling-Verfahren gibt demjenigen der Mitglieder mit gleicher Priorität Vorrang, das am längsten gewartet hat. Dann wird in Schritt 822 (8A) ein Aktivierungssignal an die jeweilige Warteschlange 104 und den jeweiligen Multiplexer 208 gesendet.
  • Sobald eine erste Anfrage eines Mitglieds bewilligt worden ist, werden alle anderen Mitgliederanfragen ignoriert, bis das bewilligte Mitglied die Übertragung eines gesamten, in der Warteschlange befindlichen Pakets abgeschlossen hat. Die Anfragepriorität des Gruppeneigentümers wird dann mit der Priorität aller anderen Gruppeneigentümer- und Einzel-Prioritäts-Gruppenanfragen verglichen. Die Prioritätsablaufplanungseinrichtung 108 beendet das Ablaufplanungsverfahren (Scheduling-Verfahren) durch Auswählen der Anfrage höchster Priorität aus allen Gruppen und Einzel-Prioritäts-Gruppen.
  • Alle Mitglieder einer Mehr-Prioritäten-VC-Gruppe teilen sich eine VC, weshalb sie auch die QoS-Parameter der VC in der Traffic-Shaping-Einrichtung 106 teilen. Wenn beispielsweise eine Mehr-Prioritäten-VC als Dienst mit konstanter Bitrate (CBR-Dienst – Constant Bit Rate service) und einer Spitzenzellenrate (PCR – Peak Cell Rate) von "y" festgelegt wird, dann sendet ein Mitglied mit einer Rate von "y" sobald es den Zellenbewilligungsstatus erreicht hat. Basierend auf allen Mitgliedern einer Gruppe, die die QoS-Parameter in der Traffic-Shaping-Einrichtung 106 teilen, aktualisieren alle Mitglieder der Gruppe, wenn ein Mitglied eine Zellenbewilligung erhält, ihre Shaping-Parameter im Parameterspeicher 202 und Gruppenkennungsspeicher 206 solchermaßen, dass suggeriert wird, dass sie eine Zellenbewilligung erhalten haben, obwohl sie möglicherweise gar keine Zellenbewilligung erhalten haben. Demgemäß wird gewährleistet, dass die gesamte Sendebandbreite aller Mitglieder der Gruppe die spezifizierten QoS-Parameter der VC nicht übersteigt.
  • Daher sehen das System 100 und das Verfahren 500 das Kombinieren von Verkehrsquellendaten aus mehreren Quellen auf einer einzelnen VC vor, wodurch es möglich ist, dass ein Verkehrsquellendatenpaket höherer Priorität Pakete mit niedrigerer Priorität überspringt, was dazu beiträgt, die QoS-Anforderungen der Dienste höherer Priorität aufrechtzuerhalten. Das System 100 und das Verfahren 500 erzielen das Mehr-Prioritäten-VC-Scheduling, ohne eine feste Konfiguration der "m" Übertragungswarteschlangen 104 im Hinblick darauf zu benötigen, zu welcher Gruppe die Warteschlange 104 gehört. Außerdem wird ein gleichzeitiges Scheduling vieler Mehr-Prioritäten- und Einzel-Prioritäts-VCs ermöglicht.
  • In seiner einfachsten Form, die dann gegeben ist, wenn sich alle "m" Übertragungswarteschlangen eine einzelne VC teilen, kann der Betrieb ähnlich dem eines Paket-Switch angesehen werden. Beim Paket-Switching muss der Switch, wenn an mehreren Eingangsports Pakete ankommen, die alle für denselben Ausgangsport bestimmt sind, entscheiden welches Paket als erstes, zweites, etc. an den Ausgangsport gesendet wird. Ein Paket-Switch führt typischerweise das Paket-Scheduling auf einer Round-Robin- oder Prioritätsbasis durch. Das System 100 und das Verfahren 500 gemäß den Ausführungsformen der vorliegenden Erfindung unterscheiden sich jedoch von diesem einfachen Betrieb eines Paket-Switch, da das Scheduling von Paketen von mehreren Warteschlangen 104 gewährleisten muss, dass der Gesamtdurchsatz aller Übertragungswarteschlangen 104 nicht die QoS-Parameter der VC überschreitet. Außerdem führen die Ausführungsformen der vorliegenden Erfindung eine Zellenverschachtelung von Paketen aus mehreren Quellen zu einem einzelnen Ausgangsport durch, während der Paket-Switch diesen Arbeitsgang nicht durchführt. Des Weiteren besteht ein erheblicher Unterschied im Vergleich zum Betrieb eines einfachen Paket-Switch in der Fähigkeit der vorliegenden Erfindung, gleichzeitig viele Mehr-Prioritäten- und Einzel-Prioritäts-VCs zu planen und dabei die QoS-Parameter jeder VC aufrechtzuerhalten.
  • Daher umfassen das System 100 und das Verfahren 500 gemäß den Ausführungsformen der vorliegenden Erfindung ein Kommunikationssystem mit einer Shaping-Einrichtung 106 und einer Ablaufplanungseinrichtung 108, das als Teil einer ATM-Segmentierungsmaschine (ATM Segmentation engine) in einem ATM-Netzwerk integriert werden kann. Die Shaping-Einrichtung 106 und die Ablaufplanungseinrichtung 108 arbeiten zusammen, um den Verkehr höherer Priorität vor dem Verkehr niedrigerer Priorität einzuplanen und dabei die spezifizierten QoS-Parameter konstanter Bitrate (CBR) oder variabler Bitrate (VBR) der Mehr-Prioritäten-VC aufrechtzuerhalten. Die Anzahl der Prioritätsniveaus und die Anzahl der unterstützten Mehr-Prioritäten-VCs können modifiziert werden, um die Anforderungen einer spezifischen Implementierung bestmöglich zu erfüllen. Es gibt keine Einschränkung der Anzahl an Übertragungswarteschlangen, die sich eine VC teilen können, und keine Einschränkung der Anzahl an Mehr-Prioritäten-VCs, die gleichzeitig unterstützt werden können. Wenn es auch in der Praxis eine Begrenzung der Anzahl unterstützter Mehr-Prioritäten-VCs gibt. Angenommen eine Vorrichtung hat "m" Übertragungswarteschlangen, dann beträgt die maximale Anzahl an Mehr-Prioritäten-VCs in der Praxis "m"/2.
  • Das System 100 kann mit logischen Einrichtungen ausgeführt werden, um die in den 58B dargestellten Funktionen und Schritte durchzuführen. Alternativ können die Funktionen und Schritte gemäß den 58B in einem Prozessor, wie etwa einem Mikroprozessor, eingebetteten Prozessor (embedded processor), etc., ausgeführt werden. Der Prozessor kann einen Computerprogrammcode ausführen, um die Schritte gemäß den Figuren auszubilden. Der Computerprogrammcode kann auf einem computernutzbaren Medium, wie etwa einem Speicher, einer Computerdiskette oder dergleichen, gespeichert werden.
  • 9 zeigt beispielsweise ein Computersystem 900 mit einem oder mehreren Prozessoren, wie etwa dem Prozessor 904. Der Prozessor 904 kann ein digitaler Spezial- oder Universal-Signalprozessor sein. Der Prozessor 904 ist mit einer Kommunikationsinfrastruktur 906 (z.B. einem Bus oder Netzwerk) verbunden. Verschiedene Softwareimplementierungen sind im Hinblick auf dieses exemplarische Computersystem beschrieben. Nach dem Studium dieser Beschreibung ist es für Fachleute auf dem relevanten technischen Gebiet offensichtlich, wie sich die Erfindung unter Verwendung anderer Computersysteme und/oder Computerarchitekturen implementieren lässt.
  • Das Computersystem 900 umfasst außerdem einen Hauptspeicher 908, bevorzugt einen Schreib-Lese-Speicher mit wahlfreiem Zugriff (RAM), und kann zudem einen sekundären Speicher 910 aufweisen. Der sekundäre Speicher 910 kann beispielsweise ein Festplattenlaufwerk 912 und/oder ein Wechselspeicherlaufwerk 914 umfassen, das ein Diskettenlaufwerk, ein Magnetbandlaufwerk, ein optisches Plattenlaufwerk, etc. darstellt. Das Wechselspeicherlaufwerk 914 liest von einer und/oder schreibt auf eine Wechselspeichereinheit 918 in wohlbekannter Art und Weise. Die Wechselspeichereinheit 918 umfasst eine Diskette, ein Magnetband, eine optische Platte, etc., die/das von einem Wechselspeicherlaufwerk 914 gelesen und beschrieben wird. Es versteht sich, dass die Wechselspeichereinheit 918 ein computernutzbares Speichermedium umfasst, in dem Computersoftware und/oder Daten gespeichert sind.
  • Bei alternativen Implementierungen kann der sekundäre Speicher 910 andere ähnliche Einrichtung umfassen, die es ermöglichen, Computerprogramme oder andere Instruktionen in das Computersystem 900 zu laden. Solche Einrichtungen können beispielsweise eine Wechselspeichereinheit 922 und eine Schnittstelle 920 umfassen. Beispiele solcher Einrichtungen können eine Programmkassette und Kassettenschnittstelle (wie sie sich etwa in Videospieleinrichtungen finden), einen Wechselspeicherchip (wie etwa einen EPROM oder PROM) und eine zugehörige Buchse sowie andere Wechselspeichereinheiten 922 und Schnittstellen 920 umfassen, die es ermöglichen, Software und Daten von der Wechselspeichereinheit 922 in das Computersystem 900 zu übertragen.
  • Das Computersystem 900 kann auch eine Kommunikationsschnittstelle 924 umfassen. Die Kommunikationsschnittstelle 924 ermöglicht es, Software und Daten zwischen dem Computersystem 900 und externen Einrichtungen zu übertragen. Beispiele für eine Kommunikationsschnittstelle 924 können ein Modem, eine Netzwerkschnittstelle (wie etwa eine Ethernet-Karte), einen Kommunikationsport, eine(n) PCMCIA-Schlitz und -Karte, etc. umfassen. Über die Kommunikationsschnittstelle 924 übertragene Software und Daten haben die Form von Signalen 928, welche elektronische, elektromagnetische, optische oder andere Signale sein können, die von der Kommunikationsschnittstelle 924 empfangen werden können. Diese Signale 928 werden der Kommunikationsschnittstelle 924 über einen Kommunikationspfad 926 zugeführt. Der Kommunikationspfad 926 trägt die Signale 928 und kann unter Verwendung einer Leitung oder eines Kabels, Glasfasern, einer Telefonleitung, einer zellularen Telefonverbindung, einer HF-Verbindung und anderer Kommunikationskanäle implementiert werden.
  • In diesem Dokument werden die Begriffe "Computerprogrammmedium" und "computernutzbares Medium" so verwendet, dass sie sich allgemein auf Medien beziehen, wie etwa Wechselspeicherlaufwerke 914, eine in einem Festplattenlaufwerk 912 installierte Festplatte und Signale 928. Diese Computerprogrammprodukte sind Mittel, um dem Computersystem 900 Software zuzuführen.
  • Computerprogramme (auch Computersteuerlogik genannt) werden im Hauptspeicher 908 und/oder sekundären Speicher 910 gespeichert. Computerprogramme können auch über die Kommunikationsschnittstelle 924 empfangen werden. Solche Computerprogramme ermöglichen es dem Computersystem 900, wenn sie ausgeführt werden, die vorliegende Erfindung wie hierin ausgeführt zu implementieren. Insbesondere ermöglichen es die Computerprogramme, wenn sie ausgeführt werden, dem Prozessor 904, erfindungsgemäße Prozesse, wie etwa das/die Verfahren, zu implementieren. Demgemäß stellen solche Computerprogramme Steuereinheiten des Computersystems 900 dar. Wenn die Erfindung unter Verwendung von Software implementiert wird, kann die Software in einem Computerprogrammprodukt gespeichert und unter Verwendung eines Wechselspeicherlaufwerks 914, eines Festplattenlaufwerks 912 oder einer Kommunikationsschnittstelle 924 in das Computersystem 900 geladen werden.
  • Konklusion
  • Es wurden hierin beispielhafte Ausführungsformen der vorliegenden Erfindung beschrieben. Wie an anderer Stelle erwähnt, wurden diese beispielhaften Ausführungsformen rein aus Gründen der Veranschaulichung beschrieben und stellen keine Einschränkung dar. Andere Ausführungsformen sind möglich und durch die Erfindung abgedeckt. Derartige Ausführungsformen sind basierend auf der hierin enthaltenen Lehre für Fachleute auf dem/den relevanten technischen Gebieten) offensichtlich. Daher werden die allgemeine Anwendbarkeit und der Schutzumfang der vorliegenden Erfindung durch keine der vorstehend beschriebenen beispielhaften Ausführungsformen eingeschränkt, sondern definieren sich vielmehr ausschließlich durch die folgenden Ansprüche und deren Entsprechungen.

Claims (11)

  1. Kommunikationsvorrichtung umfassend: Gruppen von Übertragungswarteschlangen (transmit queues), welche Verkehrsquellendaten (102) von entsprechenden Verkehrsquellen (traffic sources) (102) empfangen, wobei die Warteschlangen dafür konfiguriert sind, entweder mehrere Prioritäten mit mehreren Warteschlangen innerhalb einer Gruppe oder eine einzelne Priorität mit nur einer einzigen Warteschlange in einer Gruppe zu haben, einen Gruppenkennungsspeicher (206), der zwischen einer Hauptsteuereinheit (112) und einer Prioritätsablaufplanungseinrichtung (priority scheduling device) (108) verbunden ist, in dem Gruppen mit mehreren Prioritäten festgelegt und ein Aktivierungs-Bit und eine einzigartige Gruppenkennung für jede Gruppe gespeichert sind, wobei dieselbe Gruppenkennung in einer entsprechenden Parameterspeichereinrichtung gespeichert ist, wobei, nachdem die Prioritätsablaufplanungseinrichtung (108) von einem Shaping-Intervalldauerzähler (shaping interval time counter – SIT-Zähler) (110) einen Impuls empfangen hat, welcher mit der Shaping-Einrichtung und der Prioritätsablaufplanungseinrichtung (108) verbunden ist, die Prioritätsablaufplanungseinrichtung (108) dafür konfiguriert ist, Zellenanfragen von jedem der Traffic-Shaper in der Shaping-Einrichtung zu empfangen, wobei die Zellenanfragen eine Warteschlangenanzahl, eine Warteschlangenpriorität und eine Gruppenkennung umfassen, und wobei die Prioritätsablaufplanungseinrichtung (108) dafür konfiguriert ist, auf Daten von dem Gruppenkennungsspeicher (206) zuzugreifen, um einen Prioritätsablaufplanungsbetrieb auszuführen, so dass Zellenanfragen mit höchster Priorität von jeder der Gruppen der Übertragungswarteschlangen immer zuerst gesendet werden, eine Shaping-Einrichtung, welche Traffic-Shaper umfasst, wobei jeder Traffic-Shaper mit einer entsprechenden der Warteschlangen verbunden ist, und die Prioritätsablaufplanungseinrichtung (108) einen Scheduler und Multiplexer (114, 116) umfasst, wobei die Multiplexer (114, 116) mit entsprechenden der Übertragungswarteschlangengruppen verbunden sind und die Multiplexer (114, 116) dafür konfiguriert sind, die Verkehrsquellendaten (102) über eine entsprechende virtuelle Verbindung (VC – virtual circuit) an kundeneigene Endgeräte (CPE – customer premise equipment) (118) zu übertragen, wobei die Prioritätsablaufplanungseinrichtung (108) dafür konfiguriert ist, durch Vergleichen der einzigartigen Gruppenkennung jeder Zellenanfrage zu bestimmen, ob die Zellenanfrage ein Mitglied einer Gruppe mit mehreren Prioritäten ist, wobei die Anfrage, falls die Zellenanfrage kein Mitglied einer Gruppe mit mehreren Prioritäten ist, hinsichtlich ihrer Prorität gegenüber anderen Anfragen bezüglich Gruppen mit einer Priorität und dem festgestellten Inhaber anderer Gruppen bewertet wird, wobei der Inhaber einer Gruppe gemäß der Zellenanfragepriorität jedes Mitglieds und dadurch, ob ein Mitglied derzeit ein Datenpaket sendet, festgestellt wird, wobei alle Mitglieder einer Gruppe mit mehreren Prioritäten eine virtuelle Verbindung und somit die QoS-Parameter der virtuellen Verbindung in der Traffic-Shaping-Einrichtung teilen, wobei, wenn ein Mitglied eine Zellenbewilligung erhält, alle Mitglieder der Gruppe ihre Shaping-Parameter in der Parameterspeichereinrichtung (202) und dem Gruppenkennungsspeicher (206) solchermaßen aktualisieren, dass suggeriert wird, dass sie die Zellenbewilligung erhalten haben, obwohl sie möglicherweise gar keine Zellenbewilligung erhalten haben.
  2. Kommunikationsvorrichtung nach Anspruch 1, wobei jede der Übertragungswarteschlangen dafür konfiguriert ist, eine Art von Dienstgütedaten (QoS-Daten – quality of service data) zu speichern.
  3. Kommunikationsvorrichtung nach Anspruch 1, wobei eine erste Übertragungswarteschlange in einer vordefinierten Gruppe der Übertragungswarteschlangengruppen dafür konfiguriert ist, die Verkehrsquellendaten (102) mit hoher Priorität zu speichern, und eine zweite Übertragungswarteschlange in der vordefinierten Gruppe dafür konfiguriert ist, die Verkehrsquellendaten (102) mit geringer Prorität zu speichern.
  4. Kommunikationsvorrichtung nach Anspruch 1, die ferner umfasst: Parameterspeicher, die einzeln mit jedem der Traffic-Shaper verbunden sind, wobei, wenn die Shaping-Einrichtung von dem SIT-Zähler (110) ein Signal empfängt, jeder der Traffic-Shaper auf eine entsprechende der Übertragungswarteschlangen zugreift und Zellenanfragedaten von der entsprechenden der Übertragungswarteschlangen basierend auf im Parameterspeicher gespeicherten Werten formt, und der Traffic-Shaper dafür konfiguriert ist, eine Zellenanfrage, die eine Warteschlangenanzahl, eine Warteschlangenpriorität und eine Gruppenkennung umfasst, an den Scheduler auszugeben.
  5. Verfahren zum Steuern von Datenübertragungen von einer Kommunikationsvorrichtung, die Übertragungswarteschlangen, welche in Übertragungswarteschlangengruppen organisiert sind, eine Shaping-Einrichtung, welche mehrere Traffic-Shaperumfasst, wobei jeder der mehreren Traffic-Shaper einer der Übertragungsschlangen entspricht, und eine Prioritätsablaufplanungseinrichtung (108) umfasst, wobei das Verfahren die Schritte umfasst: Initialisieren des Systems, wobei die Warteschlangen dafür konfiguriert werden, entweder mehrere Prioritäten mit mehreren Warteschlangen innerhalb einer Gruppe oder eine einzelne Priorität mit nur einer einzigen Warteschlange in einer Gruppe zu haben, wobei die Gruppen mit mehreren Prioritäten in einem Gruppenkennungsspeicher (206) festgelegt werden, ein Aktivierungs-Bit und eine einzigartige Gruppenkennung für jede Gruppe in dem Gruppenkennungsspeicher (206) gespeichert werden, wobei dieselbe Gruppenkennung in einer entsprechenden Parameterspeichereinrichtung (202) gespeichert wird, Empfangen von Zellenanfragendaten, welche Daten von entsprechenden der Übertragungswarteschlangen entsprechen, an entsprechenden der Traffic-Shaper, Bestimmen eines QoS-Prioritätswertes für jede der Zellenanfragedaten in dem entsprechenden der Traffic-Shaper, wobei alle Mitglieder einer Gruppe mit mehreren Prioritäten eine virtuelle Verbindung und somit die QoS-Parameter der virtuellen Verbindung in der Traffic-Shaping-Einrichtung teilen, wobei, wenn ein Mitglied eine Zellenbewilligung erhält, alle Mitglieder der Gruppe ihre Shaping-Parameter in der Parameterspeichereinrichtung (202) und dem Gruppenkennungsspeicher (206) solchermaßen aktualisieren, dass suggeriert wird, dass sie eine Zellenbewilligung erhalten haben, obwohl sie möglicherweise gar keine Zellenbewilligung erhalten haben, Ausgeben einer Zellenanfrage mit einer Warteschlangenanzahl, einer Warteschlangenpriorität und, sofern zutreffend, einem Kennungswert der Gruppen mit mehreren Prioritäten mit jeder Übertragungsanfrage an die Prioritätsablaufplanungseinrichtung (108), und Ablaufplanung der Übertragung der Daten basierend auf dem bestimmten QoS-Prioritätswert, wobei die Prioritätsablaufplanungseinrichtung (108) durch Vergleichen der einzigartigen Gruppenkennung jeder Zellenanfrage bestimmt, ob die Zellenanfrage ein Mitglied einer bestimmten Gruppe mit mehreren Prioritäten ist, wobei die Anfrage, falls die Zellenanfrage kein Mitglied einer Gruppe mit mehreren Prioritäten ist, hinsichtlich ihrer Priorität gegenüber anderen Anfragen bezüglich Gruppen mit einer Priorität und dem festgestellten Inhaber anderer Gruppen bewertet wird, wobei der Inhaber einer Gruppe gemäß der Zellenanfragepriorität jedes Mitgliedes und dadurch, ob ein Mitglied derzeit ein Datenpaket sendet, festgestellt wird.
  6. Verfahren nach Anspruch 5, das ferner einen Initialisierungsschritt mit den folgenden Schritten umfasst: Konfigurieren der Übertragungswarteschlangengruppen derart, dass sie entweder von einer ersten Art oder einer zweiten Art sind, Festlegen von Gruppen, die der ersten Art im Gruppenkennungsspeicher (206) entsprechen, Speichern eines Aktivierungs-Bits und einer einzigartigen Kennung für jede der Gruppen im Gruppenkennungsspeicher (206), und Speichern der einzigartigen Kennung in einem entsprechenden der mehreren Traffic-Shaper.
  7. Verfahren nach Anspruch 6, das ferner die Schritte umfasst: – Ausbilden der ersten Art der Übertragungswarteschlangengruppen als Gruppen mit mehreren Prioritäten, – Ausbilden der zweiten Art der Übertragungswarteschlangengruppen als Gruppen mit einer Priorität.
  8. Verfahren nach Anspruch 5, wobei das Senden der Zellenanfrage an die Prioritätsablaufplanungseinrichtung (108) die Schritte des Sendens einer Warteschlangenanzahl, des QoS-Prioritätswertes und eines einzigartigen Kennungswertes umfasst, wobei der einzigartige Kennungswert Daten im Gruppenkennungsspeicher (206) entspricht.
  9. Verfahren nach Anspruch 5, wobei der Ablaufplanungsschritt ferner die Schritte umfasst: Korrelieren eines Gruppenkennungswertes in jeder der Zellenanfragen mit einer im Gruppenkennungsspeicher (206) gespeicherten Gruppenkennung, um zu bestimmen, von welcher Gruppe jede der Zellenanfragen Mitglied ist, Bestimmen welche anderen Mitglieder der Gruppe eine Übertragungsanfrage bearbeiten, Bestimmen eines QoS-Prioritätsniveaus der anderen Mitglieder der Gruppe, die eine Übertragungsanfrage bearbeiten, und Zuweisen eines Gruppeninhaberstatus an ein Mitglied der Gruppe mit höchstem QoS-Prioritätsniveau.
  10. Verfahren nach Anspruch 9, das ferner den Schritt des Übertragens eines Aktivierungssignals an eine korrelierende der Übertragungsschlangen und eine zugeordnete Verkehrsquelle (102) umfasst, um die Übertragung von in der Übertragungswarteschlange gespeicherten Daten auszulösen.
  11. Verfahren nach Anspruch 10, das, wenn zwei oder mehr Mitglieder der Gruppe, die eine Zellenanfrage bearbeiten, dasselbe QoS-Prioritätsniveau haben, ferner den Schritt des Durchführens eines Round-Robin-Verfahrens zum Bestimmen eines Gruppeninhabers umfasst.
DE60300827T 2002-02-01 2003-01-29 Kommunikationssystem und Verfahren mit einer Vorrichtung zur Warteschlangenbildung pro Dienst Expired - Lifetime DE60300827T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US35286202P 2002-02-01 2002-02-01
US352862P 2002-02-01
US195529 2002-07-16
US10/195,529 US20030147349A1 (en) 2002-02-01 2002-07-16 Communications systems and methods utilizing a device that performs per-service queuing

Publications (2)

Publication Number Publication Date
DE60300827D1 DE60300827D1 (de) 2005-07-21
DE60300827T2 true DE60300827T2 (de) 2006-05-18

Family

ID=27616310

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60300827T Expired - Lifetime DE60300827T2 (de) 2002-02-01 2003-01-29 Kommunikationssystem und Verfahren mit einer Vorrichtung zur Warteschlangenbildung pro Dienst

Country Status (3)

Country Link
US (1) US20030147349A1 (de)
EP (1) EP1335540B1 (de)
DE (1) DE60300827T2 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1327334B1 (de) * 2000-10-03 2008-07-30 U4EA Technologies Limited Datenüberwachung basierend auf einem daten-last-profil
AU2000275419A1 (en) * 2000-10-03 2002-04-15 U4Ea Technologies Limited Information flow control in a packet network based on variable conceptual packetlengths
ATE373911T1 (de) * 2000-10-03 2007-10-15 U4Ea Technologies Ltd Datenflusssteuerung
ATE368991T1 (de) * 2000-10-03 2007-08-15 U4Ea Technologies Ltd Filterung von datenströmen
US7339890B2 (en) * 2002-02-01 2008-03-04 Broadcom Corporation Scalable, high-resolution asynchronous transfer mode traffic shaper and method
US20040225707A1 (en) * 2003-05-09 2004-11-11 Chong Huai-Ter Victor Systems and methods for combining a slow data stream and a fast data stream into a single fast data stream
ES2229917B1 (es) * 2003-07-15 2006-07-01 Diseño De Sistemas En Silicio, S.A. Procedimiento de gestion dinamica de recursos de sitemas de telecomunicaciones en funcion de la calidad de servicio y del tipo de servicio.
US8660137B2 (en) * 2005-09-29 2014-02-25 Broadcom Israel Research, Ltd. Method and system for quality of service and congestion management for converged network interface devices
ES2887650T3 (es) 2016-08-24 2021-12-27 Viasat Inc Conformación a nivel de dispositivo en una red de comunicaciones

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5793747A (en) * 1996-03-14 1998-08-11 Motorola, Inc. Event-driven cell scheduler and method for supporting multiple service categories in a communication network
US6018527A (en) * 1996-08-13 2000-01-25 Nortel Networks Corporation Queue service interval based cell scheduler with hierarchical queuing configurations
DE19634492B4 (de) * 1996-08-26 2004-10-14 Siemens Ag Verfahren zum optimierten Übertragen von ATM-Zellen über Verbindungsabschnitte
US6408005B1 (en) * 1997-09-05 2002-06-18 Nec Usa, Inc. Dynamic rate control scheduler for ATM networks
US6157614A (en) * 1997-10-22 2000-12-05 Netro Corporation Wireless ATM network with high quality of service scheduling
US6570876B1 (en) * 1998-04-01 2003-05-27 Hitachi, Ltd. Packet switch and switching method for switching variable length packets
US6198723B1 (en) * 1998-04-14 2001-03-06 Paxonet Communications, Inc. Asynchronous transfer mode traffic shapers
US6532213B1 (en) * 1998-05-15 2003-03-11 Agere Systems Inc. Guaranteeing data transfer delays in data packet networks using earliest deadline first packet schedulers
CA2245367A1 (en) * 1998-08-19 2000-02-19 Newbridge Networks Corporation Two-component bandwidth scheduler having application in multi-class digital communication systems
JP3123537B2 (ja) * 1999-02-24 2001-01-15 日本電気株式会社 Atmバッファ制御方法ならびに装置及び同方法がプログラムされ記録された記録媒体
US6876659B2 (en) * 2000-01-06 2005-04-05 International Business Machines Corporation Enqueuing apparatus for asynchronous transfer mode (ATM) virtual circuit merging
US6757291B1 (en) * 2000-02-10 2004-06-29 Simpletech, Inc. System for bypassing a server to achieve higher throughput between data network and data storage system
US7042883B2 (en) * 2001-01-03 2006-05-09 Juniper Networks, Inc. Pipeline scheduler with fairness and minimum bandwidth guarantee
US7065569B2 (en) * 2001-01-09 2006-06-20 Turin Networks, Inc. System and method for remote traffic management in a communication network
JP4605911B2 (ja) * 2001-01-24 2011-01-05 富士通株式会社 パケット送出装置
US7230948B2 (en) * 2001-06-01 2007-06-12 Telefonaktiebolaget Lm Ericsson (Publ) Bandwidth efficient Quality of Service separation of AAL2 traffic
US7099275B2 (en) * 2001-09-21 2006-08-29 Slt Logic Llc Programmable multi-service queue scheduler
US6980513B2 (en) * 2001-09-24 2005-12-27 Transwitch Corporation Methods and apparatus for the fair allocation of bandwidth among MCR and best effort service connections in an ATM switch

Also Published As

Publication number Publication date
EP1335540A3 (de) 2003-08-27
US20030147349A1 (en) 2003-08-07
DE60300827D1 (de) 2005-07-21
EP1335540B1 (de) 2005-06-15
EP1335540A2 (de) 2003-08-13

Similar Documents

Publication Publication Date Title
DE69533695T2 (de) Busarbitrierungsverfahren für fernmeldevermittlung
DE60036682T2 (de) Maschine zur gewichteten ringförmigen Ablaufsteuerung
DE60128413T2 (de) Gekennzeichneter Prioritätswarteschlangescheduler
DE69935587T2 (de) Verfahren und vorrichtung zur weiterleitung von paketen von einer mehrzahl konkurrierender warteschlangen zu einem ausgang
DE60036031T2 (de) Zuweisung von prioritätsstufen in einem datenfluss
DE69924057T2 (de) Verfahren, Ablauffolgesteuerung, intelligenter Pufferspeicher, Prozessor und Telekommunikationssystem zum Verteilen verfügbahrer Bandbreite
DE69534540T2 (de) Apparat und Methode zur Verarbeitung von Bandbreitenanforderungen in einer ATM-Vermittlungsstelle
DE69937862T2 (de) Bandbreitensteuerung mit zwei Komponenten, zur Anwendung in digitalen Kommunikationssystemen mit mehreren Klassen
DE69636825T2 (de) Verzögerungsminimalisierungssystem mit garantierter Bandbreite für Echtzeitverkehr
DE60036312T2 (de) Setzen von prioritäten für daten mit flusssteuerung
DE60120807T2 (de) Schaltvorrichtung und Verfahren
DE69430627T2 (de) Verfahren und Gerät zur Plannung von Zellenübertragung von virtuellen Kanälen mit garantierter Bandbreite
DE60024228T2 (de) Dynamische zuweisung verkehrsklassen an einer prioritätswarteschlange in einer paketbeförderungsvorrichtung
DE60222656T2 (de) Vorrichtung und verfahren für effizientes multicasting von datenpaketen
DE69330395T2 (de) Verbesserte Steuereinrichtung für eine Paketvermittlungsstelle mit gepufferten Eingängen
DE69434329T2 (de) Verfahren und Vorrichtung zur Regulierung von Zellentransmissionen über virtuelle Kanäle
DE60117957T2 (de) Verfahren, System und Rechnerprogrammprodukt zur Bandbreitenzuteilung in einem System mit Mehrfachzugriff
DE69626946T2 (de) Verfahren und Vorrichtung für eine auf Übertragungsgeschwindigkeit basierender Ablaufplanung unter Verwendung eines relativen Fehler-Ansatzes
DE60132437T2 (de) Verfahren und einrichtung zur steuerung von informationen unter verwendung von kalendern
DE10123821A1 (de) Geschaltete Ethernet-Netzwerke
DE60031284T2 (de) Ablauffolgesteuerung für Paketvermittlungen und passive optischen Netzwerke
DE69931284T2 (de) Menschliches Neurotrimin-Homolog
EP1433352B1 (de) Verteilte übermittlung von verkehrsströmen in kommunikationsnetzen
DE60300827T2 (de) Kommunikationssystem und Verfahren mit einer Vorrichtung zur Warteschlangenbildung pro Dienst
DE60035846T2 (de) System für Ablaufsteurung zur Übertragung von ATM-Zellen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: BOSCH JEHLE PATENTANWALTSGESELLSCHAFT MBH, 80639 M