DE60028903T2 - Verfahren und Vorrichtung zur Kommunikationskontrolle - Google Patents

Verfahren und Vorrichtung zur Kommunikationskontrolle Download PDF

Info

Publication number
DE60028903T2
DE60028903T2 DE60028903T DE60028903T DE60028903T2 DE 60028903 T2 DE60028903 T2 DE 60028903T2 DE 60028903 T DE60028903 T DE 60028903T DE 60028903 T DE60028903 T DE 60028903T DE 60028903 T2 DE60028903 T2 DE 60028903T2
Authority
DE
Germany
Prior art keywords
connection
packets
throughput
transmitted
memory
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
DE60028903T
Other languages
English (en)
Other versions
DE60028903D1 (de
Inventor
Yasuhiro Komae-shi Aoyama
Yuji Fujisawa-shi Hashimoto
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.)
Panasonic Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of DE60028903D1 publication Critical patent/DE60028903D1/de
Application granted granted Critical
Publication of DE60028903T2 publication Critical patent/DE60028903T2/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
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5681Buffer or queue management

Landscapes

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

Description

  • Die vorliegende Erfindung bezieht sich auf ein Kommunikationssteuerungsverfahren und eine entsprechende Einheit zur Verwendung in Kommunikationssystemen, wie einem ATM Netzwerk.
  • In den letzten Jahren ist in einem ATM (Englisch: Asynchronous Transfer Mode) Netzwerk, in dem ein Paket mit einer festgesetzten Länge (53 Bytes), genannt "Zelle", durch eine Vielzahl von Verbindungen (virtuelle Kanäle) übertragen wird, eine Anforderung aufgetaucht für die Realisierung eines Dienstes, der für jede Verbindung die minimale Bandbreite (MCR; Englisch: Minimum Cell Rate) sicherstellt und die maximale Bandbreite (PCR; englisch: Peak Cell Rate) begrenzt.
  • Um diese Anforderung erfüllen zu können, wurde ein Kommunikationssteuerungsgerät vorgeschlagen, das in der Japanischen nicht geprüften Patentveröffentlichung Nummer (HEI) 11-239151 offenbart ist. Eine ausführliche Beschreibung dieses Geräts wird im Folgenden gegeben als Vergleich zu der vorliegenden Erfindung und für ein besseres Verständnis der Erfindung (wobei ein Teil der Ausdrücke sich davon unterscheidet).
  • Dieses Gerät enthält einen Puffer und eine Verbindungsabfragetabelle. Der Puffer dient zum Abspeichern einer eingegebenen Zelle in die entsprechende Partition (Speicherabschnitt) in Übereinstimmung mit der in derselben Zelle enthaltenen Verbindungsidentifizierungsinformation.
  • Die Verbindungsabfragetabelle ist mit einem zugehörigen Speicher (inhalts-adressierbarem Speicher, der zur Abkürzung "CAM" genannt werden wird (Englisch: Content Addressable Memory)) aufgebaut. In dieser Verbindungsabfragetabelle ist nicht nur eine Untergrenze MCR für den Durchsatz entsprechend der sicherzustellenden, minimalen Bandbreite entsprechend der Verbindung abgespeichert, sondern auch ein Ergebnis (PCR-MCR) einer Subtraktion der vorgenannten MCR von einer Obergrenze PCR für den Durchsatz entsprechend der maximalen Bandbreite zum Begrenzen der maximalen Bandbreite, und es ist sogar ein Puffer-Merker bzw. -Flag, der kennzeichnend dafür ist, ob in dem Puffer eine Zelle bzw. Zellen entsprechend der Partition, d.h. Verbindung, existieren oder nicht.
  • Diese Verbindungsabfragetabelle enthält zusätzlich die Anzahlen der ersten und zweiten verbleibenden Zellen. Die Anzahl der ersten verbleibenden Zellen verringert sich jedes Mal um Eins, wenn eine Zellenübertragung in einem Zustand, in dem die vorhergehende Untergrenze für den Durchsatz MCR ihren ursprünglichen Wert annimmt, stattfindet, während die Anzahl der zweiten verbleibenden Zellen sich bei jeder Zellenübertragung um Eins verringert, nachdem die Anzahl der ersten verbleibenden Zellen in einem Zustand, in dem das vorgenannte (PCR-MCR) seinen ursprünglichen Wert bildet, Null erreicht. Die Anzahl der ersten verbleibenden Zellen ist kennzeichnend dafür, wie viele Zellen noch zu übertragen bleiben, um die minimale Bandbreite sicherzustellen, während die Anzahl der zweiten verbleibenden Zellen kennzeichnend dafür ist, wie viele übertragbare Zellen verbleiben zum Begrenzen der maximalen Bandbreite.
  • Die Abfrage der oben genannten Verbindungsabfragetabelle wird durch die Verwendung einer CAM Abfrageeinrichtung nach dem Ringabfrage (Englisch: Round Robin) -Steuerungsverfahren ausgeführt. Als erstes wird eine Abfrage auf der Grundlage des Inhalts der Anzahl der ersten verbleibenden Zellen > 1 und des Puffer-Merkers = 1 ausgeführt, und eine Zelle wird von der Partition entsprechend der aufgefundenen Verbindung übertragen. Wenn andererseits eine Abfrage-Runde aller Verbindungen ausgeführt worden ist, wobei immer noch keine Verbindung auf der Grundlage des vorgenannten Inhalts aufgefunden worden ist, dann wird eine Abfrage aufgrund des Inhalts der Anzahl der zweiten verbleibenden Zellen > 1 und dem Puffer-Merker = 1 ausgeführt, und eine Zelle wird von der Partition entsprechend der gefundenen Verbindung ausgesendet. Nichts desto trotz, wenn auch dieser Inhalt keinen Treffer auf einer Verbindung erzeugt, wird in diesem Fall eine ungenutzte bzw. Leerlauf-Zelle ausgesendet.
  • Mit der oben genannten Abfrage wird die Übertragung von Zellen, die die Untergrenze des Durchsatzes übersteigen, verhindert, bis die Untergrenze des Durchsatzes für alle Verbindungen erreicht worden ist, wenn die zu übertragenden Zellen existieren, wodurch die minimale Bandbreite auf allen Verbindungen sichergestellt wird. Zusätzlich wird die Zellenübertragung von einem Puffer in dem Fall von Verbindungen, bei denen die Anzahl der übertragenen Zellen die Obergrenze des Durchsatzes erreichen, verhindert, was die maximale Bandbreite begrenzen kann.
  • Im Übrigen offenbart die oben beschriebene Veröffentlichung zusätzlich eine Einheit, in der anstelle der Anzahl der zweiten verbleibenden Zellen ein Merker bzw. Flag gespeichert wird, um eine Abfrage effizient auszuführen.
  • Jedoch obwohl die in der Veröffentlichung offenbarte Einheit die Garantie für die minimale Bandbreite erreichen und die Begrenzung der maximalen Bandbreite entsprechend der Verbindung (Benutzer) erzielen kann, begegnet man der Schwierigkeit des Zuordnens der überschüssigen Bandbreite, die die Untergrenze des Durchsatzes für jede Verbindung übersteigt, in Übereinstimmung mit dem Volumen des vertraglich vereinbarten Bands des Benutzers. D.h. die zusätzliche Bandbreite vor der maximalen Bandbreitenbegrenzung wird für alle Verbindungen in gleicher Weise genutzt, was anzeigt, dass eine Schwierigkeit beim Zuweisen der zusätzlichen Bandbreite in Übereinstimmung mit dem Volumen des vertraglich vereinbarten Bands des Benutzers erfahren wird.
  • US 5 224 099 offenbart ein Bandbreitenmanagementsystem und ein Verfahren zum Verwalten einer Vielzahl von virtuellen Datenverbindungen innerhalb eines Netzwerks für Netzwerkkommunikation mit Zellenvermittlung vom Paketvermittlungstyp, das System dazu angepasst, den Zellenverkehr gerecht einzureihen und zu bedienen, die minimale Bandbreite für jede Klasse von Zellenverkehr sicherzustellen und nicht benutzte Bandbreite neu zu verteilen. Das System bzw. das Verfahren umfasst die Fähigkeit des: • Anordnens von Zellen des Verkehrs in einer Warteschlange entsprechend eines Sprungzählers, der jeder Zelle des Verkehrs zugeordnet ist; • Klassifizieren des Verkehrs in nicht gehäuften bzw. gehäuften Verkehr; Zuweisen einer ersten minimalen Bandbreite für den nicht gehäuften Verkehr und einer zweiten minimalen Bandbreite für den gehäuften Verkehr; Ansammeln von Kredit bzw. Vorrang für den nicht gehäuften Verkehr entsprechend der ersten minimalen Bandbreite und für den gehäuften Verkehr entsprechend der zweiten minimalen Bandbreite; • Anordnen der Pakete des nicht gehäuften Verkehrs in einer ersten Warteschlange und der Pakete des gehäuften Verkehrs in einer zweiten Warteschlange mit einer Vielzahl von Unterwarte schlangen entsprechend des Sprungzählers, wobei jede Unterwarteschlange eine verschiedene Dienstpriorität aufweist; • Bewegen der Pakete des gehäuften Verkehrs von einer Unterwarteschlange in eine andere Unterwarteschlange mit einer höheren Dienstpriorität als die eine Unterwarteschlange, nachdem das Paket des gehäuften Verkehrs in der einen Unterwarteschlange für eine Zeit T verblieben ist, um einen Alterungsmechanismus bereitzustellen; und • Erhöhen des jedem Paket des gehäuften Verkehrs zugeordneten Sprungzählers, wenn das Paket bedient worden ist.
  • Der Sprungzähler (Englisch: Hop Count) ist kennzeichnend für die Anzahl der Knoten (in dem Netzwerk), die von der zugeordneten Zelle auf ihrer Reise zwischen einem Quellpunkt und einem Zielpunkt durchlaufen worden sind, wobei gilt, dass je größer der Sprungzähler einer Zelle ist, umso größer auch die Dienstpriorität der Zelle innerhalb der bestimmten Klasse des Verkehrs ist.
  • Die Serviceabwicklungsroutine verwendet ein Kredit- bzw. Vorranganhäufungsschema, um sicherzustellen, dass jede Klasse des Verkehrs eine wählbare minimale Bandbreite erhält, und eine maximale Anzahl von Krediten bzw. Priorität, die für jede Klasse angesammelt werden kann, ist wählbar. Unter Verwendung einer auf Krediten bzw. Prioritäten basierten Strategie zum Abwickeln des Zellenverkehrs garantiert der Warteschlangenmanager jeder Klasse eine minimale Bandbreite. In diesem Bandbreitenmanagementsystem wird die Übertragungspriorität bestimmt durch eine vorbestimmte Verkehrsklasse und ferner entsprechend des Sprungzählers, d.h. der Anzahl der von einem Paket auf seiner Reise zwischen einem Quellpunkt und einem Zielpunkt durchlaufenen Knoten, und einer Wartezeit in einer von dem Warteschlangenmanager verwalteten Unterwar teschlange. Daher beziehen sich die Kriterien zum Bestimmen der Serviceabwicklungspriorität alle auf eine bestimmte Zelle oder ein Paket bzw. die Reisevorgeschichte des Pakets in dem Netzwerk.
  • Im Gegensatz dazu ist in der vorliegenden Erfindung die Übertragungspriorität durch eine garantierte minimale Bandbreite (oder Untergrenze des Durchsatzes) und die aktuelle bzw. tatsächliche Anzahl der übertragenen Pakete bestimmt, was sich auf bestimmte Verbindungen bezieht, beispielsweise Verbindungen, die von bestimmten Benutzern unter Vertrag genommen sind. Dies führt zu einer total unterschiedlichen Strategie zum Zuweisen und Verwalten der Bandbreite.
  • US 5 533 009 offenbart ein Bandbreitenmanagementsystem und ein Verfahren zum Verwalten einer Vielzahl von virtuellen Datenverbindungen innerhalb eines Kommunikationsnetzwerks. Das System umfasst eine Eingabe zum Empfangen von Datenzellen, wobei jede Zelle einer bestimmten aus den virtuellen Verbindungen zugeordnet ist; einem Reservoir für Zellen, das mit der Eingabe verbunden ist zum Speichern der Zellen; einer ersten und einer zweiten Warteschlange zum Ordnen der virtuellen Verbindungen; und einem Ausgang zum Übertragen von Zellen aus dem Zellenpool. Die relative Position einer virtuellen Verbindung in der ersten Warteschlange wird bestimmt durch eine Berechtigungsvariable, die variiert entsprechend einer vorhergesagten Datenrate, die der bestimmten virtuellen Verbindung zugeordnet ist, und in Übereinstimmung mit der Zeitdauer, während der die bestimmte virtuelle Verbindung in der ersten Warteschlange gewesen ist. Die relative Position in der zweiten Warteschlange variiert in Übereinstimmung mit einer vorbestimmten Qualität des Dienstes, die jeder der virtuellen Verbindungen zugewiesen ist.
  • Nach einem ersten Aspekt der vorliegenden Erfindung wird, wie in Anspruch 1 beansprucht, ein Kommunikationssteuerungsverfahren bereitgestellt zur Verwendung in einem Kommunikationssystem, das Pakete mit einer festen Länge verwendet, wie ein Netzwerk mit asynchronem Transfermodus, und zum Sicherstellen einer minimalen Bandbreite und Begrenzen einer maximalen Bandbreite für jede von einer Vielzahl von Verbindungen. Das Verfahren umfasst die Schritte:
    • i) für jede Verbindung Einstellen einer Untergrenze für den Durchsatz entsprechend einer minimalen, sicherzustellenden Bandbreite.
  • Nach der Erfindung umfasst das Verfahren allgemein einmaliges Abspeichern von Paketen mit fester Länge in entsprechenden Speicherbereichen in Übereinstimmung mit in den Paketen enthaltener Verbindungsinformation und Bereitstellen einer Eins-zu-eins-Beziehung mit den Verbindungen und anschließendem Übertragen der Pakete aus den Speicherabschnitten in sukzessiver Folge zu den Verbindungen.
  • Weiter nach der Erfindung umfasst der Schritt i) Einstellen einer Obergrenze für den Durchsatz entsprechend einer maximalen, zu begrenzenden Bandbreite und mindestens einem dazwischen liegenden Durchsatz zwischen der Untergrenze für den Durchsatz und der Obergrenze für den Durchsatz, wobei die Durchsätze durch die Anzahl der während eines Steuerungszyklusses mit einer vorbestimmten Zeitperiode übertragenen Pakete ausgedrückt sind; und das Verfahren umfasst ferner die Schritte:
    • ii) Zuweisen einer Prioritätsklasse für jede Verbindung, wobei einer Klasse, in der die Anzahl der übertragenen Pakete niedriger ist, eine höhere Übertragungs prioritätsklasse zugewiesen wird;
    • iii) für jede der Verbindungen Zählen der Anzahl der übertragenen Pakete für jede Verbindung und Überwachen, ob ein zu übertragendes Paket in dem Speicherabschnitt existiert oder nicht;
    • iv) Abfragen einer Verbindung, die eine erste Bedingung erfüllt, dass die Anzahl der übertragenen Pakete die Untergrenze für den Durchsatz nicht erreicht und dass die zu übertragenden Pakete in dem entsprechenden Speicherabschnitt mit einer ersten Priorität der bestimmten Prioritäten existiert, und weiterhin wenn keine aufgefundene Verbindung unter der ersten Bedingung existiert, Abfragen einer Verbindung, die eine zweite Bedingung erfüllt, dass die Anzahl der übertragenen Pakete nicht den dazwischen liegenden Durchsatz erreicht und dass die zu übertragenden Pakete in dem entsprechenden Speicherabschnitt mit einer zweiten Priorität der bestimmten Prioritäten existiert, und noch weiterhin, wenn keine Verbindung unter der zweiten Bedingung existiert, Abfragen einer Verbindung, die eine dritte Bedingung erfüllt, dass die Anzahl der übertragenen Pakete die Obergrenze für den Durchsatz nicht erreicht und dass die zu übertragenden Pakete in dem entsprechenden Speicherabschnitt mit einer dritten Priorität der bestimmten Prioritäten existiert;
    • v) falls eine aufgefundene Verbindung unter einer beliebigen der ersten bis dritten Bedingungen gefunden wird, Übertragen des Pakets aus dem Speicherabschnitt entsprechend der aufgefundenen Verbindung und Beenden des einmaligen Abfragens, wohingegen falls unter jeder ersten bis dritten Bedingungen keine aufgefundene Verbindung existiert, Beenden des einmaligen Abfragens ohne Ausführen einer Paketübertragung aus dem Speicherabschnitt und anschließend Fortsetzen der Abfrage bei der Verbindung, die erfüllt, dass die Anzahl der übertragenen Pakete die Untergrenze des Durchsatzes nicht erreicht; und
    • vi) während der Wiederholung der Abfrage, Beenden der Paketübertragung für eine Verbindung, für die die Anzahl der übertragenen Pakete die Obergrenze des Durchsatzes erreicht.
  • In diesem Fall kann die Verbindungsabfrage in einer vorbestimmten Reihenfolge ausgeführt werden, und die nächste Abfrage kann bei einer auf die aufgefundene Verbindung nachfolgende Verbindung wieder eingesetzt werden. Weiterhin kann ein Steuerungszyklus mit einer vorbestimmten Zeitdauer so eingestellt werden, dass die Abfrage während des Steuerungszyklus mehr als einmal ausgeführt wird, und dass die Anzahl der übertragenen Pakete entsprechend der Verbindung in dem Steuerungszyklus gezählt wird, und dass jedes Mal wenn der Steuerungszyklus erneut startet der Zähler für die Anzahl der übertragenen Pakete zurückgesetzt wird, bevor das Zählen fortgesetzt wird.
  • Es kann auch angemessen sein, dass eine Vielzahl von dazwischen liegenden Durchsätzen als dazwischen liegende Durchsätze zwischen der Untergrenze für den Durchsatz und der Obergrenze für den Durchsatz eingestellt wird, und beim Abfragen eine Verbindung, die die erste Bedingung erfüllt, dass die Anzahl der übertragenen Pakete die Untergrenze für den Durchsatz nicht erreicht und dass das zu übertragende Paket in dem entsprechenden Speicherbereich existiert, mit einer ersten Priorität der Prioritäten aufgefunden wird, und wenn keine unter den ersten Bedingungen aufgefundene Verbindung existiert, die Verbindungsabfrage schrittweise in der Reihenfolge der zunehmenden dazwischen liegenden Durchsätze ausgeführt wird, und wenn keine aufgefundene Verbindung existiert, selbst wenn die Abfrage auf der Grundlage des größten dazwischen liegenden Durchsatzes ausgeführt wird, die Verbindungsabfrage schließlich für eine Verbindung ausgeführt wird, die die dritte Bedingung erfüllt, dass die Anzahl der übertragenen Pakete die Obergrenze des Durchsatzes nicht erreicht und dass das zu übertragende Paket in dem entsprechenden Speicherabschnitt existiert.
  • Zusätzlich kann es auch angemessen sein, dass der dazwischen liegende Durchsatz so eingestellt wird, dass er den Bereich zwischen der Untergrenze des Durchsatzes und der Obergrenze des Durchsatzes in gleiche Teile aufteilt, dass für einen Teil der Verbindungen die Untergrenze des Durchsatzes auf Null eingestellt wird, oder dass für einen Teil der Verbindungen die Untergrenze für den Durchsatz, der dazwischen liegende Durchsatz und die Obergrenze für den Durchsatz so eingestellt werden, dass sie einander gleich sind.
  • Ferner wird in Übereinstimmung mit einem anderen Aspekt der vorliegenden Erfindung, wie beansprucht, eine Kommunikationssteuerungseinheit bereitgestellt zur Verwendung in einem Kommunikationssystem, das Pakete mit einer festen Länge verwendet, so wie ein Netzwerk mit asynchronem Übertragungsmodus, und zum Sicherstellen einer minimalen Bandbreite und Begrenzen einer maximalen Bandbreite für jede aus einer Vielzahl von Verbindungen, wobei die Einheit dazu angepasst ist, die Verfahrensschritte nach dem oben beschriebenen Verfahren auszuführen, wobei die Einheit umfasst:
    • a) eine Vielzahl von Speicherabschnitten, die jeweils dazu angepasst sind, Pakete mit fester Länge für jede der Verbindungen zu speichern.
  • Nach der Erfindung umfasst die Einheit weiterhin:
    • b) einen Speichersteuerungsbereich, dazu angepasst, in einem eingegebenen Paket enthaltene Information zur Identifizierung der Verbindung zu erkennen und eine Eins-zu-eins-Beziehung mit den Verbindungen bereitzustellen, und ferner dazu angepasst, die Pakete in dem Speicherabschnitt entsprechend der erkannten Verbindung abzuspeichern;
    • c) einen Zählabschnitt für übertragene Pakete, dazu angepasst, die Anzahl der übertragenen Pakete für die entsprechende Verbindung jedes Mal zu zählen, wenn eine Paketübertragung für die Verbindung stattfindet;
    • d) einen Steuerungsparameterspeicher, dazu angepasst, die Anzahl der in einem Steuerungszyklus mit einer vorbestimmten Zeitperiode gezählten, übertragenen Pakete zu speichern, und ferner dazu angepasst, die Anzahl der in dem Speicherabschnitt entsprechend der Verbindung akkumulierten Pakete zu speichern;
    • e) einen Additionsabschnitt für akkumulierte Pakete, dazu angepasst, zu der Anzahl der akkumulierten Pakete in dem Steuerungsparameterspeicher Eins zu addieren, um die Anzahl der akkumulierten Pakete jedes Mal, wenn ein Paket in dem Speicherabschnitt abgespeichert wird, zu aktualisieren;
    • f) einen Subtraktionsabschnitt für akkumulierte Pakete, dazu angepasst, von der Anzahl der akkumulierten Pakete in dem Steuerungsparameterspeicher jedes Mal, wenn ein Paket auf den Speicherabschnitt übertragen wird Eins zu subtrahieren zum Aktualisieren der Anzahl der akkumulierten Pakete;
    • g) einen Speicher für eingestellte Parameter, dazu angepasst, eine Untergrenze für den Durchsatz entsprechend der sicherzustellenden, minimalen Bandbreite, eine Obergrenze für den Durchsatz entsprechend der zu begrenzenden, maximalen Bandbreite und mindestens einen dazwischen liegenden Durchsatz, der zwischen der Untergrenze für den Durchsatz und der Obergrenze für den Durchsatz entsprechend der Verbindung eingestellt ist, zu speichern;
    • h) einen Klassenbestimmungsabschnitt, dazu angepasst, alle der besagten Verbindungen auf der Grundlage der in dem Speicher für eingestellte Parameter entsprechend der Verbindung gespeicherten Durchsatzinformation in Klassen zu klassifizieren, und auf der Grundlage der Anzahl der übertragenen Pakete, die in dem Steuerungsparameterspeicher entsprechend der Verbindung gespeichert sind, in Übereinstimmung mit dem Schritt ii) des oben beschriebenen Verfahrens;
    • i) einen Akkumulationsstatus-Erkennungsabschnitt, dazu angepasst, einen Paketakkumulationsstatus zu erkennen, der auf der Grundlage der Anzahl der in dem Steuerungsparameterspeicher gespeicherten akkumulierten Pakete signalisiert, ob ein Paket in dem Speicherabschnitt akkumuliert ist oder nicht;
    • j) eine Abfragetabelle umfassend den Verbindungen entsprechende Adressen, wobei jede Adresse dazu angepasst ist, die bestimmten Klassen und ein Flag bzw. einen Merker, der für den erkannten Paketakkumulierungszustand für jede der Verbindungen indikativ ist, zu speichern;
    • k) Abfragemittel, dazu angepasst, die Abfrage mit Bezug auf die Abfragetabelle während des Steuerungszyklus mehr als einmal auszuführen, wobei die Abfragemittel ferner dazu angepasst sind, eine erste Abfrage in der ersten Übertragungsprioritätsklasse und weitere Abfragen in der Reihenfolge abnehmender Übertragungspriorität auszuführen und ferner eine Verbindungsabfrage in jeder der Klassen in einer vorbestimmten Reihenfolge entsprechend Schritt iv) des oben beschriebenen Verfahrens auszuführen; und
    • l) einen Übertragungssteuerungsabschnitt, dazu angepasst, die Pakete auf dem Speicherabschnitt nach Schritt v) des oben beschriebenen Verfahrens entsprechend einer von den Abfragemitteln abgefragten, aufgefundenen Verbindung zu übertragen, und ferner dazu angepasst, die Paketübertragung aus dem Speicherabschnitt zu beenden, wenn die Abfragemittel keine aufgefundene Verbindung gefunden haben.
  • Nach einem Merkmal der vorliegenden Erfindung wird ein dazwischen liegender Durchsatz eingestellt, um jede der Verbindungen entsprechend der vorhergehenden zu verwalten, so dass entsprechend einem Kontaktbandbreitenvolumen, das die zusätzliche Bandbreite effizient benutzen kann, eine zusätzliche Bandbreite reserviert wird.
  • Nach einem anderen Merkmal der Erfindung, weil die Abfrage an einer Verbindung, die auf eine aufgefundene Verbindung folgt, wieder einsetzt, ist es möglich, die Bandbreitensteuerung auf der Grundlage der eingestellten Durchsätze gerecht zu implementieren.
  • Nach einem weiteren Merkmal der Erfindung wird ein Steuerungszyklus mit einer vorbestimmten Zeitdauer zum Durchführen der Abfrage mehr als ein einziges Mal eingestellt, so dass die Anzahl der nach der Verbindung zu übertragenden Pakete in dem Steuerungszyklus gezählt wird, und deren Zählung in einem Zustand beginnt, in dem der Zählerwert jedes Mal, wenn der Steuerungszyklus erneut beginnt, zurückgesetzt wird. Entsprechend ist es möglich, die Anzahl der übertragenen Pakete in einem einmaligen Steuerungszyklus (vorbestimmte Zeitdauer) exakt zu verstehen, was eine genaue Bandbreitensteuerung ermöglicht durch den Vergleich zwischen der Anzahl der übertragenen Pakete mit der Obergrenze, der Untergrenze und den dazwischen liegenden Durchsätzen.
  • Nach einem weiteren Merkmal der Erfindung wird eine Vielzahl von dazwischen liegenden Durchsätzen eingestellt, was eine feine Steuerung auf der Grundlage der Priorität erzielt.
  • Nach einem weiteren Merkmal der Erfindung wird der dazwischen liegende Durchsatz auf einen angemessenen Wert eingestellt.
  • Nach einem weiteren Merkmal der Erfindung sind vielfältige Zugangsmodi akzeptabel durch Einregeln der Obergrenze, der Untergrenze und der dazwischen liegenden Durchsätze.
  • Weitere Aufgaben und Merkmale der vorliegenden Erfindung werden leichter offensichtlich aus der folgenden ausführlichen, nicht beschränkenden Beschreibung von veranschaulichenden Ausführungsformen, im Zusammenhang mit den beigefügten Zeichnungen, für die gilt:
  • 1 zeigt schematisch eine Kommunikationssteuerungseinheit nach einer ersten Ausführungsform der vorliegenden Erfindung und ein Zugangsnetzwerk von dieser Einheit zu einem Benutzer;
  • 2 ist ein Blockdiagramm, das eine Schaltkreisanordnung nach dem Wesen der Kommunikationssteuerungseinheit zeigt;
  • 3 ist eine konzeptuelle Darstellung eines Ringabfrage (Englisch: Round Robin) Abfrageverfahrens;
  • 4 ist eine Veranschaulichung, die nützlich ist zum Erklären der Effekte der Bandbreitensteuerung nach der Erfindung unter der Annahme, dass von der Anzahl her drei Verbindungen vorliegen;
  • 5 ist eine Darstellung, die zum Erklären des Prinzips des Flusses von dem Zellspeicher zur Zellenübertragung nützlich ist;
  • 6 ist ein Ablaufdiagramm, das einen Steuerungsvorgang bei der Zelleneingabe zeigt;
  • 7 ist ein Ablaufdiagramm, das einen Steuerungsvorgang bei der Zellenübertragung zeigt; und
  • 8 ist eine graphische Veranschaulichung, die eine zweite Ausführungsform der Erfindung entsprechend der 6 zeigt.
  • Eine erste Ausführungsform der vorliegenden Erfindung wird im folgenden mit Verweis auf die Zeichnungen beschrieben. Die erste Ausführungsform bezieht sich auf die Anwendung der Erfindung auf eine standortseitige Endgeräteeinheit (Kommunikationssteuerungseinheit), die am nächsten zu einem Benutzer in einem ATM Netzwerk (Kommunikationssystem), das aus einem Lichtleitfasernetzwerk aufgebaut ist, liegt. Diese Einheit wird als ein "OLT" (Englisch: Optical Line Terminal) bezeichnet, und dient zum Implementieren der Kommunikationssteuerung in einer Abwärtsrichtung (d.h. in einer Richtung vom ATM Netzwerk zum Benutzer) und in einer Aufwärtsrichtung (d.h. in einer Richtung vom Benutzer zum ATM Netzwerk). Eine ausführliche Beschreibung wird im Folgenden gegeben von einem Aufbau und einem Vorgang für die Steuerung der Abwärtskommunikation, insbesondere für die Bandsteuerung.
  • Wie 1 zeigt, besteht die standortseitige Endgeräteeinheit, im allgemeinen mit dem Bezugszeichen 1 bezeichnet, aus einer ATM Schnittstelle (ATM-IF) 10, die einen Hauptteil bildet; einem fotoelektrischen Umwandlungsschaltkreis 20 zum Umwandeln einer ATM Zelle (die im folgenden einfach als eine "Zelle" bezeichnet wird) mit einem optischen Signal von dem ATM Netzwerk in ein elektrisches Signal, um dieses zu der ATM Schnittstelle 10 zu senden; einem ATM Zellenpuffer 30 zum Abspeichern/Senden der Zellen in Übereinstimmung mit einem Steuerbefehl von der ATM Schnittstelle 10; ein Steuerungsparameterspeicher 40 zum Abspeichern eines Parameters, der für die Bandsteuerung entsprechend der Verbindung benötigt wird; einer Vielzahl von (in dieser Ausführungsform 8) OSU (Englisch: Optical Service Unit, optische Diensteinheit) 50, die jeweils dazu dienen, eine Zelle von der ATM Schnittstelle 10 in ein optisches Signal umzuwandeln, um es zu einem benutzerseitigen Zugangsnetzwerk 2 zu senden, und einer CPU 60 zum Schreiben eines eingestellten Parameters in einen internen Speicher (eine Referenz- bzw. Verweistabelle 14, die später beschrieben wird) der ATM Schnittstelle 10 in Übereinstimmung mit einem Steuerbefehl von einem Endgerät.
  • Jedes dieser Zugangsnetzwerke 2 ist beispielsweise in dem PDS (Englisch: Passive Double Star) Modus konfiguriert und ausgestattet mit einer gemeinsamen Lichtleitfaser 3, die mit der entsprechenden OSU 50 verbunden ist; einer Vielzahl von (in dieser Ausführungsform 32) Zweig-Lichtleitfasern 5, die durch einen Sternkoppler 4 mit der gemeinsamen Lichtleitfaser 3 gekoppelt sind, und ONUs (Englisch: Optical Network Units, optische Netzwerkeinheiten) 6, die jeweils mit dem Endgerät der entsprechenden Zweiglichtleitfaser 5 verbunden sind. Die ein optisches Signal ausbildende Zelle wird in der ONU 6 in ein elektrisches Signal umgewandelt und zu einem Personalcomputer 7 oder dergleichen weitergeleitet.
  • Im übrigen weisen die vorgenannte OSU 50 und ONU 6 eine Multiplex-/Demultiplexfunktion zusätzlich zu der oben genannten fotoelektrischen Umwandlungsfunktion auf.
  • Die vorgenannte Zelle ist ein Paket, das eine festgesetzte Länge (53 Bytes) aufweist, und die führenden 5 Bytes enthalten Information zur Identifizierung der Verbindung (Verbindungsnummerinformation), die einen virtuellen Pfadbezeichner VPI (Englisch: Virtual Path Identifier) und einem virtuellen Kanalbezeichner VCI (Englisch: Virtual Channel Identifier) umfassen. In dieser Ausführungs form weist ein virtueller Kanal VC (englisch: virtual channel) eine Eins-zu-eins-Entsprechung mit den vorgenannten Zweiglichtleitfasern 5 (ONU 6) auf.
  • Unter den Steuerungsparametern, die in dem Speicher 40 zu speichern sind, gibt es die Anzahl CA der in dem Puffer 30 akkumulierten Zellen, die Anzahl CCR der übertragenen Zellen, und andere.
  • Der vorgenannte Puffer 30 ist ein FIFO Puffer, und in jeder Partition (Speicherabschnitt) werden die Zellen in der Reihenfolge der Speicherung ausgesendet.
  • Die Einheit 1 dient zum Implementieren der Zellenbandsteuerung in Bezug auf die Verbindungen, die in ihrer Anzahl den Zweiglichtleitfasern 5 (oder den ONUs 6) entsprechen. In einem Fall, in dem wie oben genannt, acht OSUs 50 bereitgestellt und 32 Zweiglichtleitfasern 5 mit jeder der OSUs 50 verbunden sind, gibt es in ihrer Anzahl 256 Verbindungen, und der Puffer 30 benötigt dieselbe Anzahl von Partitionen.
  • Für ein leichtes Verständnis des Aufbaus der ATM Schnittstelle 10, die später mit Bezugnahme auf 5 beschrieben wird, wird hier eine Beschreibung des Prinzips eines Flusses von Zellen gegeben. In dieser Ausführungsform, weil die OSUs 50 in ihrer Anzahl acht sind, werden die oben genannten Zellenverbindungen in acht Gruppen klassifiziert, und entsprechend sind die vorgenannten Pufferpartitionen in acht Gruppen, die jeweils 32 Partitionen umfassen, eingeteilt. Ein Speichersteuerungsabschnitt 11, der später genannt wird, wählt zusammen mit den Zellenverbindungen eine Gruppe oder einen Teil einer Gruppe für die Speicherung der Zellen aus. Zusätzlich wird die Bandbreitensteuerung in einem Rundabfrage (Englisch: Round Robin) -Abfrageabschnitt 13, der später beschrieben wird, entsprechend der Gruppe zum Übertragen der Zellen zu der entsprechenden OSU 50 implementiert. In der folgenden Beschreibung der ATM Schnittstelle 10 wird die Aufmerksamkeit gerichtet auf eine Zellenbandbreitensteuerung, die zu einer Gruppe gehört.
  • Die ATM Schnittstelle 10 umfasst eine LSI und weist eine in 2 gezeigte Schaltkreisanordnung auf. Im einzelnen umfasst diese ATM Schnittstelle 10 einen Speichersteuerungsabschnitt 11, einen Hauptsteuerungsabschnitt 12, einen Rundabfrageabfrageabschnitt 13, eine Referenztabelle 14, und DMA Schaltkreise (Englisch: Dynamic Memory Access Schaltkreise) 15 und 16.
  • Die Referenztabelle besteht aus einem assoziativen Speicher (CAM, d.h. einem inhaltadressierbarer Speicher, Englisch: Content Addressable Memory), und an jeder Adresse wird eine Partitionsnummer des Puffers 30, die vorgenannte Information zur Identifizierung der Verbindungen und Durchsatzinformation, die von der CPU 60 in diesem Fall eingestellt wird, eine Untergrenze für den Durchsatz MCR entsprechend der sicherzustellenden, minimalen Bandbreite, eine Obergrenze für den Durchsatz PCR entsprechend der zu begrenzenden, maximalen Bandbreite und ein dazwischen liegenden Durchsatz SCR. Daher fungiert die Referenztabelle 14 auch als ein Einstellparameterspeicher.
  • In dieser Ausführungsform wird der dazwischen liegende Durchsatz in seiner Anzahl auf eins eingestellt, und nimmt einen rechten Medianwert zwischen der Obergrenze des Durchsatzes PCR und der Untergrenze des Durchsatzes MCR ein. D.h. er erfüllt die folgende Gleichung: SCR = (PCR + MCR)/2
  • Diese Durchsätze MCR, SCR und PCR werden durch die Anzahl der während eines Steuerungszyklusses für eine vorbestimmte Zeitdauer übertragene Anzahl von Zellen ausgedrückt.
  • Der vorgenannte Speichersteuerabschnitt 11 empfängt eine Zelle von dem fotoelektrischen Umwandlungsschaltkreis 20 und erkennt in dieser Zelle die Identifizierungsinformation VPI und VCI, um die Abfrage in Bezug auf die Referenztabelle 14 auf der Grundlage dieser Identifikationsinformation zum Abspeichern, der abgefragten Partitionsnummer und der Zelle in der entsprechenden Partition des Puffers 30 durch die Verwendung des DMA Schaltkreises 15.
  • Wie 2 zeigt, umfasst der Hauptsteuerungsabschnitt 12 der ATM Schnittstelle 10 einen CA Addierabschnitt (Additionsabschnitt für akkumulierte Zellen, Additionsabschnitt für akkumulierte Pakete) 12a, einen CA Subtraktionsabschnitt (Subtraktionsabschnitt für akkumulierte Zellen, Subtraktionsabschnitt für akkumulierte Pakete) 12b, einen CCR Addierabschnitt (Addierabschnitt für übertragene Zellen, Zählabschnitt für übertragene Pakete) 12c, einen Übertragungssteuerungsabschnitt 12d, einen Klassenzuweisungsabschnitt 12e und einen Akkumulationsstatuserkennungsabschnitt 12f.
  • Der Übertragungssteuerungsabschnitt 12d des Hauptsteuerungsabschnitts 12 empfängt das Abfrageergebnis von dem im folgenden beschriebenen Rundfrageabfrageabschnitt 13 um eine Zelle von der Partition entsprechend der aufgefundenen Verbindung abzuleiten, und die Zelle dann durch den DMA Schaltkreis 15 an die OSU 50 zu übertragen.
  • Der CA Additionsabschnitt 12a des Hauptsteuerungsabschnitts 12 liest die Anzahl CA der akkumulierten Zellen durch den DMA Schaltkreis 16 hindurch aus für die entsprechende Verbindung von dem vorgenannten Speicher 40 in Antwort auf einen Vorgang einer von dem Speichersteuerungsabschnitt 11 geleiteten Zellenabspeicherung in dem Puffer 30, um zum Aktualisieren Eins dazu zu addieren (zu inkrementieren), und zum Schreiben der aktualisierten Anzahl CA der akkumulierten Zellen in den Speicher 40 durch die Verwendung der DMA 16.
  • Der CA Subtraktionsabschnitt 12b liest die Anzahl CA der akkumulierten Zellen für die entsprechende Verbindung von dem Speicher 40 jedes Mal aus, wenn der Übertragungssteuerungsabschnitt 12d die Zellenübertragung von dem Puffer 30 ausführt, um zum Aktualisieren Eins zu subtrahieren (dekrementieren), und schreibt die aktualisierte Anzahl CA der akkumulierten Zellen in den Speicher 40.
  • Der Akkumulationsstatuserkennungsabschnitt 12f erkennt, ob die Anzahl CA der akkumulierten Zellen für jede Verbindung Null oder Eins oder mehrere ist, und schreibt dieses Erkennungsergebnis als einen Akkumulationsstatusmerker bzw. -flag in eine Abfragetabelle 13a des weiter unten beschriebenen Rundfrageabfrageabschnitts 13.
  • Als zweites wird im Folgenden eine ausführliche Beschreibung von einer Anordnung zur Berechnung der Anzahl CCR der übertragenen Zellen gegeben. Der CCR Addierabschnitt 12c liest die Anzahl CCR der übertragenen Zellen für die entsprechende Verbindung aus dem Speicher 40, jedes Mal aus, wenn eine Zellenübertragung aus dem Puffer 30 stattfindet, um zum Aktualisieren Eins dazu zu zählen, und setzt die aktualisierte Anzahl CCR der übertragenen Zellen in den Speicher 40.
  • Der Klassenzuweisungsabschnitt 12e vergleicht die Anzahl CCR der übertragenen Zellen mit den in der Referenztabelle 14 gespeicherten Durchsätzen PCR, MCR und SCR, um jeder Verbindung eine Klasse zuzuweisen.
  • Die Klassenzuweisung wird wie folgt ausgeführt. D.h.:
    wenn CCR < MCR: PRIORITY-1 (die Klasse mit der höchsten Priorität bezüglich der Übertragung);
    wenn MCR = CCR < SCR: PRIORITY-2 (Klasse mit der zweithöchsten Priorität bezüglich der Übertragung);
    wenn SCR = CCR < PCR: PRIORITY-3 (Klasse mit der niedrigsten Priorität bezüglich der Übertragung); und
    wenn CCR = PCR: PRIORITY-0 (Übertragungsverbotsklasse).
  • Zusätzlich wird die Information über die PRIORITY-1, PRIORITY-2, PRIORITY-3 bzw. PRIORITY-0 (die im Folgenden einfach als "PR-1, PR-2, PR-3 bzw. PR-0" bezeichnet wird) in die Abfragetabelle 13a des unten beschriebenen Rundfrageabfrageabschnitts 13 geschrieben.
  • Weiterhin wird mit Bezugnahme auf 3 im Folgenden eine Beschreibung des Rundfrageabfrageabschnitts 13 gegeben. Obwohl 13 nur den einer OSU 50 entsprechenden Abfrageabschnitt 13 zeigt, sind tatsächlich acht Abfrageabschnitte 13, die darüber hinaus identisch sind, in entsprechender Beziehung zu den OSUs 50 bereitgestellt. Der Abfrageabschnitt 13 enthält eine Abfragetabelle 13a und einen Abfragetreiber (Abfragemittel) 13b. Im Übrigen veranschaulicht 3 eine kreisförmige Konfiguration für ein leichtes Verstehen des Betriebs des Rundfrageabfrageabschnitts 13.
  • Die Abfragetabelle 13a weist 32 Adressen entsprechend 32 Verbindungen auf. An jeder Adresse existiert Information von insgesamt fünf Bits: Zwei-Bit (PB1, PB2) Zuweisung der Klassendaten, ein Ein-Bit-Akkumulierungsstatus-Merker bzw. -flag (PB0), ein Zeiger-Merker (PF, Englisch: Pointer Flag) und ein Initialisierungsflag (RF, Englisch: Reset Flag).
  • Die zwei Bits (PB1, PB2) deuten die vorgenannten vier zugewiesenen Klassen wie folgt an. Das heißt:
    für die Zuweisungsklasse PR-1, (PB2, PB1) = (0, 0);
    für die Zuweisungsklasse PR-2, (PB2, PB1) = (0, 1);
    für die Zuweisungsklasse PR-3, (PB2, PB1) = (1, 0); und
    für die Zuweisungsklasse PR-0, (PB2, PB1) = (1, 1).
  • Wenn das vorgenannte Akkumulationsstatusflag (PB0) "1" anzeigt, bedeutet dies, dass eine Zelle in der entsprechenden Addition akkumuliert ist. Andererseits wenn der Akkumulationsstatusflag PB0 "0" anzeigt, deutet dies an, dass in der entsprechenden Aktion keine Zelle akkumuliert wurde. Der Zeiger-Flag PF zeigt in einer zyklischen Abfrage in Bezug auf einen Adresstreffer "1", wobei diese Adresse den Ursprung bzw. Beginn für die nächste zyklische Abfrage darstellt. Das Initialisierungsflag RF dient zum Initialisieren (Rücksetzen) der Anzahl der übertragenen Zellen bei jedem Steuerungszyklus, wobei "1" eine Initialisierung erfordernde Bedingung andeutet, während "0" eine Initialisierungsbedingung bedeutet. Somit wird das Initialisierungsflag RF gleichzeitig an allen Adressen jedes Mal auf "1" gesetzt, wenn ein (einmaliger) Steuerungszyklus die Vervollständigung erreicht.
  • Wie 3 zeigt, führt der Abfragetreiber 13b die zyklische Abfrage über die vorgenannte Abfragetabelle 13a in dem Rundabfrage-Modus aus. Im Einzelnen wird die Abfrage zunächst in Bezug auf die Übertragungsprioritätsklasse PR-1 in einer Reihenfolge der Adresse ausgeführt. Danach wird, wenn es eine Adresse gibt, bei der eine Zelle(n) akkumuliert ist, in der Übertragungsprioritätsklasse PR-1, d.h. wenn ein Treffer an einer Adresse, die (PB2, PB1, PB0) = (0, 0, 1) zeigt, die Zelle aus der Partition entsprechend dieser Adresse ausgesendet.
  • Wenn kein Treffer in der Übertragungsprioritätsklasse PR-1 stattfindet, d.h. wenn alle Adressen nicht (PB2, PB1, PB0) = (0, 0, 1) zeigen, dann wird die Abfrage in der Zuweisungsklasse PR-2 in der Reihenfolge der Adressen ausgeführt. In dem Fall dieser Übertragungsprioritätsklasse PR-2 wird, wenn es eine Adresse gibt, die Zellakkumulation zeigt, d.h. wenn an einer Adresse ein Treffer stattfindet mit (PB2, PB1, PB0) = (0, 1, 1), dann wird die Zelle aus der Partition entsprechend dieser Adresse ausgesendet.
  • Andererseits wenn in der Übertragungsprioritätsklasse PR-2 kein Treffer stattfindet, d.h. wenn alle Adressen nicht (PB2, PB1, PB0) = (0, 1, 1) zeigen, dann wird die Abfrage in der Übertragungsprioritätsklasse PR-3 in der Reihenfolge der Adressen ausgeführt. In der Übertragungsprioritätsklasse PR-3 wird ein Treffer auf eine Adresse, die Zellakkumulierung zeigt, ausgeführt, d.h. ein Treffer findet bei einer Adresse mit (PB2, PB1, PB0) = (1, 0, 1) statt, und die Zelle wird aus der Partition entsprechend dieser Zelle ausgesendet.
  • In der Zwischenzeit, falls in der Übertragungsprioritätsklasse PR-3 kein Treffer stattfindet, d.h. wenn nur eine Adresse existiert, bei der die Anzahl der übertragenen Zellen die Obergrenze PCR für den Durchsatz erreicht zum Erreichen der Übertragungsverhinderungs- bzw. Verbots klasse PR-0, d.h. (PB2, PB1) = (1, 1), oder bei der die Anzahl der akkumulierten Zellen 0 ist, um PB0 = 0 zu etablieren, dann wird ein Abfrageergebnis, das die Abwesenheit einer aufgefundenen Adresse zeigt, an den Übertragungssteuerungsabschnitt 12d ausgegeben. In diesem Fall überträgt der Übertragungssteuerungsabschnitt 12d eine Leerlauf- bzw. leere Zelle, ohne die Zellübertragung aus dem Puffer 30 auszuführen.
  • Die zyklische Abfrage und die Zellübertragung werden in einem Zyklus mit einer vorbestimmten Periode (bedeutend kürzer als der oben genannte Steuerungszyklus) wiederholt ausgeführt. Die zyklische Abfrage beginnt jedes Mal in der Übertragungsprioritätsklasse PR-1. Selbst im Fall einer Adresse, die zu der Übertragungsprioritätsklasse PR-1 in der vorhergehenden Abfrage gehört, bei der wegen der Abwesenheit einer akkumulierten Zelle kein Treffer stattfand, findet dieses Mal dementsprechend auf die Eingabe einer Zelle hin ein Treffer auf dieser Adresse statt. Auch im Fall der Übertragungsprioritätsklassen PR-2 und PR-3 findet der Adressentreffer entsprechend statt.
  • Das in der Abfragetabelle 13a gespeicherte Pointerflag PF zeigt bei der aufgefundenen Adresse in der Abfrage durch den Abfragetreiber 13b "1" an, und die folgende zyklische Abfrage setzt an der Adresse nachfolgend auf die Adresse, bei der das Zeigerflag PF "1" anzeigt, wieder ein. Auf diese Weise ist eine gerechte Abfrage nach dem Rundanfrageprinzip sichergestellt.
  • Im Folgenden wird eine Beschreibung gegeben von der Bedeutung, d.h. Einfluss, der oben genannten Abfrage nach dem Rundfrageprinzip (Englisch: Round Robin Retrieval).
  • (1) Über die Abfrage in der Übertragungsprioritätsklasse PR-1
  • Ein Treffer auf (Abfragen) einer Verbindung, für die die Anzahl der übertragenen Zellen die Untergrenze MCR für den Durchsatz nicht erreicht, findet statt, um die Zellen aus der entsprechenden Partition sukzessive auszusenden. In der Zwischenzeit kommt die Zellenübertragung für die Verbindungen, für die die Anzahl der übertragenen Zellen die Obergrenze MCR für den Durchsatz erreicht hat, zu einem Stillstand. In Folge dessen wird die höchste Priorität an diejenige Anzahl der übertragenen Zellen gegeben, die in allen Verbindungen die Untergrenze MCR für den Durchlass erreicht, was die Garantie für die minimale Bandbreite sicher erreicht.
  • (2) Über die Abfrage in der Übertragungsprioritätsklasse PR-2
  • Ein Treffer auf einer Verbindung, für die die Anzahl der übertragenen Zellen den dazwischen liegenden Durchsatz SCR nicht erreicht, findet statt, um die Zellen aus der entsprechenden Partition sukzessive auszusenden. In der Zwischenzeit kommt die Zellenübertragung für die Verbindung, für die die Anzahl der übertragenen Zellen den dazwischen liegenden Durchsatz SCR erreicht, zu einem Stillstand. Infolge dessen ist die Übertragung von mehreren Zellen für eine Verbindung mit einer hohen Priorität (hoher dazwischen liegender Durchsatz SCR) möglich. Das bedeutet, dass die zusätzliche Bandbreite vor der maximalen Bandbreitenbegrenzung entsprechend der Priorität der Verbindung zuweisbar ist.
  • (3) Über die Abfrage in der Übertragungsprioritätsklasse PR-3
  • Ein Treffer auf eine Verbindung, für die die Anzahl der übertragenen Zellen die Untergrenze PCR für den Durchsatz nicht erreicht, findet statt, um die Zellen aus den entsprechenden Partitionen sukzessive auszusenden. In der Zwischenzeit kommt die Zellenübertragung für die Verbindung, für die die Anzahl der übertragenen Zellen die Obergrenze PCR für den Durchsatz erreicht, zu einem Stillstand. Infolge dessen wird die maximale Bandbreite begrenzbar, so dass die Anhäufung nach der OSU 50 sicher vermeidbar ist.
  • Mit Bezugnahme auf die 4 werden im Folgenden eine Beschreibung gegeben für ein leichtes Verständnis der Effekte die vorgenannte Abfrage. Die folgende Beschreibung wird zur Vereinfachung auf drei Verbindungen a, b und c ausgeführt. In diesem Fall sind die Verbindungen a, b und c in der Reihenfolge abnehmender Übertragungspriorität angeordnet. Das heißt jeder der Durchsätze MCR, SCR und PCR nimmt in der in 4 veranschaulichten Reihenfolge der Verbindungen a, b und c einen höheren Wert an. Jedoch sind die Untergrenzen MCR der Durchsätze der Verbindungen a und b zueinander gleich.
  • 4 ist eine Darstellung eines Zustands, in dem die Anzahl der übertragenen Zellen im Verlauf der Zeit in Übereinstimmung mit einer Verbindung in einem einmaligen Steuerungszyklus zunimmt. In diesem Fall wird angenommen, dass in jeder Partition und zu allen Zeiten Zellen existieren. In dem Steuerungszyklus ist die erste Zeitperiode T1 eine Zeit, genommen bis alle Verbindungen die Untergrenze MCR für den Durchsatz erreichen (bis die Anzahl CCR der übertragenen Zellen in die Untergrenze MCR für den Durchsatz in Bezug auf alle Verbindungen erreicht), die zweite Zeitperiode T2 ist eine Zeit genommen bis alle Verbindungen den dazwischen liegenden Durchsatz SCR erreichen, die dritte Zeitperiode T3 ist eine Zeit genommen bis alle Verbindungen die Obergrenze PCR für den Durchsatz erreichen, und die vierte (letzte) Zeitperiode T4 ist eine Zeit, für die die Zellenübertragung für jede Verbindung in einer Stoppbedingung ist, nachdem alle Verbindungen die Obergrenze PCR für den Durchlass erreicht haben. Wie aus der Bandbreitensteuerung in den Zeitperioden T2 und T3 offensichtlich ist, ist die zusätzliche Bandbreite entsprechend der Priorität zuweisbar.
  • Die Bandbreitensteuerung in der ersten Zeitperiode T1 des Steuerungszyklus hängt von der Untergrenze MCR für den Durchsatz, die für die Garantie der minimalen Bandbreite eingestellt ist, ab. Weiterhin hängt die Bandbreitensteuerung in der letzten Zeitperiode T4 des Steuerungszyklus von der Obergrenze PCR für den Durchsatz, die für die Begrenzung der maximalen Bandbreite eingestellt ist, ab. Diese sind vergleichbar mit denen in der oben beschriebenen herkömmlichen Technik.
  • Die für die vorliegende Erfindung besonderen Effekte liegen in der Bandbreitensteuerung (Steuerung der zusätzlichen Bandbreite) in den dazwischenliegenden Zeitperioden T2 und T3 des Steuerungszyklus. Das heißt die Einstellung des dazwischenliegenden Durchsatzes SCR kann bewirken, dass die Priorität der Verbindung die Steuerung der zusätzlichen Bandbreite deutlich beeinflusst.
  • In dem oben beschriebenen Modell erreicht tatsächlich in den meisten Fällen nur ein Teil der Verbindungen die maximale Bandbreite, oder alle Verbindungen erreichen nicht die maximale Brandbreite, obwohl für alle Verbindungen angenommen wird, dass sie die maximale Bandbreite in dem Steuerungszyklus erreichen. Mit anderen Worten in vielen Fällen ist die vorgenannte Zeitdauer T4 zu kurz oder hat in dem Steuerungszyklus keinen Platz. Aus diesem Grunde tendieren die Anteile der Zeitperioden T2 und T3 zum Anwachsen, was den Effekt der Bandbreitensteuerung auf der Grundlage der Priorität infolge der erfindungsgemäßen Einstellung des dazwischen liegenden Durchsatzes SCR deutlich aufzeigen kann.
  • In dieser Ausführungsform wird ein Steuerungszyklus mit einer vorbestimmten Zeit eingestellt, und die Anzahl CCR der nach der Verbindung übertragenen Zellen wird in dem Steuerungszyklus gezählt, wohingegen jedes mal, wenn der Steuerungszyklus erneut beginnt, die Anzahl CCR der übertragenen Zellen zurückgesetzt wird; danach beginnt das Zählen der Zellen erneut. Somit zeigt die Anzahl CCR der übertragenen Zellen exakt die Anzahl der in einem Steuerungszyklus (vorbestimmten Zeit) übertragenen Zellen an, wodurch eine genaue Bandbreitensteuerung ermöglicht wird.
  • Obwohl es auch möglich ist, dass diese Anzahl CCR der auf allen Verbindungen übertragenen Zellen zu der Zeit am Ende des Steuerungszyklus gleichzeitig zurückgesetzt werden, ist dieser Rücksetzvorgang zeitaufwendig. Aus diesem Grunde wird in dieser Ausführungsform der Rücksetzvorgang durch die Verwendung des in einem Datenabschnitt 13x der vorgenannten Abfragetabelle 13a gespeicherten Initialisierungsflags RF ausgeführt, d.h. zu dem Zeitpunkt, wo ein einmaliger Steuerungszyklus zum Ende kommt, wird das Initialisierungsflag RF bei allen Adressen auf "1" gesetzt. Darüber hinaus wird in dem folgenden Steuerungszyklus jedes Mal, wenn die Zellenübertragung in Bezug auf die in der Abfrage aufgefundene Verbindung ausgeführt wird, wenn das Initialisierungsflag RF an der entsprechenden Adresse "1" anzeigt, die Anzahl CCR der übertragenen Zellen auf Null zurückgesetzt und das Zählen be ginnt erneut bei Eins und das Flag RF wird auf "0" zurückgesetzt. Auf diese Weise wird im ursprünglichen Zustand des Steuerungszyklus die Anzahl CCR der übertragenen Zellen jedes Mal zurückgesetzt, wenn die Zellenübertragung stattfindet, was die Notwendigkeit für die gleichzeitige Rücksetzoperation eliminiert.
  • Zum Erleichtern des Verständnisses des oben genannten Bandbreitensteuerungsverfahrens wird ein Betrieb in der ATM Schnittstelle 10 im folgenden mit Verweis auf die Ablaufdiagramme beschrieben.
  • 6 zeigt die Steuerung an der Zelleneingabe.
  • In 6, wenn eine Zelle von einem ATM Netzwerk durch den photoelektrischen Umwandlungsschaltkreis 20 in die ATM Schnittstelle 10 eingeführt wird, erkennt die ATM Schnittstelle 10 die Bezeichner VPI und VCI dieser Zelle und dass sie auf die Referenztabelle 14, zum Abfragen der entsprechenden Partitionsnummer in dem Puffer 30 verweisen (Schritt 101).
  • Daraufhin liest die ATM Schnittstelle 10 die Anzahl CA der akkumulierten Zellen in der abgefragten Partition aus dem Speicher 40 aus (Schritt 102) und addiert dazu Eins (Schritt 103). Zusätzlich setzt die ATM Schnittstelle 10 das Akkumulationsstatusflag PB0 auf "1" (Schritt 104), schreibt die Zelle in die abgefragte Partition (Schritt 105) und ersetzt (schreibt erneut) die Anzahl CA der akkumulierten Zellen mit diesem Ergebnis der Addition in den Speicher 40 (Schritt 106).
  • 7 ist ein Ablaufdiagramm, das eine einmalige Zellenübertragungssteuerung zeigt. Wie oben dargestellt, wird diese Zellenübertragung in einem Zyklus ausgeführt, der viel kürzer als der Steuerungszyklus für die Bandbreitensteuerung ist.
  • Die Steuerung beginnt mit einem Schritt 201 des Ausführens einer Abfrage nach dem Rundfrageprinzip, anschließend gefolgt von einem Schritt 202 zum Treffen einer Entscheidung, ob die Abfrage sich als erfolgreich herausgestellt hat oder nicht (ob ein Treffer stattgefunden hat oder nicht). Wenn ein Treffer stattgefinden hat, wird das Abfrageergebnis (die aufgefundene Adressinformation) ausgelesen in einem Schritt 203 des Auslesens der Anzahl CA der akkumulierten Zellen und der Anzahl CCR der übertragenen Zellen für die entsprechende Verbindung aus dem Speicher 40 auf der Grundlage des Abfrageergebnisses in einem Schritt 204. Zusätzlich werden die Durchsätze MCR, SCR und PCR in einem Schritt 205 ausgelesen.
  • Daraufhin schreitet der Ablauffluss fort zu einem Schritt 206, um zu entscheiden, ob das Rücksetzflag RF "1" anzeigt oder nicht. Wenn die Entscheidung in dem Schritt 206 befürwortend ist, folgt ein Schritt 207 zum Einstellen der Anzahl CCR der übertragenen Zellen auf Null und zum Zurücksetzen des Rücksetzflags RF auf "0". Weiterhin wird ein Schritt 208 implementiert, um eine Anweisung zur Zellenübertragung zu geben, daraufhin gefolgt von einem Schritt 209 zum Übertragen der Zelle aus der entsprechenden Partition in Antwort auf die Zellenübertragungsanweisung im Schritt 208.
  • Danach wird ein Schritt 210 implementiert zum Subtrahieren von Eins (dekrementieren) von der Anzahl CA der akkumulierten Zellen und ferner zum Addieren von Eins (inkrementieren) auf die Anzahl CCR der übertragenen Zellen. Es folgt ein Schritt 211 des Ersetzens der Anzahl CA der akkumulierten Zellen und der Anzahl CCR der übertragenen Zellen mit den berechneten Ergebnissen im Speicher 40. Danach folgt ein Schritt 212 zum Treffen einer Entscheidung, ob die Anzahl CA der akkumulierten Zellen Null überschreitet oder nicht. Für die negative Entscheidung geht der Ablauffluss über zu einem Schritt 213 zum Einstellen des Akkumulationsstatusflags PB0 auf "0" und dann zu einem Schritt 214 zum Ausführen einer Klassenzuweisung. Andererseits geht der Ablauffluss für die befürwortete Entscheidung weiter zum Schritt 214, ohne durch den Schritt 213 zu laufen. In der Klassenzuweisung des Schritts 214 werden, wie oben genannt, die für eine Klasse charakteristischen Zwei-Bit-Daten PB1 und PB2 durch den Vergleich zwischen der Anzahl CCR der übertragenen Zellen und den Durchsätzen MCR, SCR und PCR berechnet.
  • Danach geht der Ablauffluss weiter zu einem Schritt 215 zum Überschreiben von PB0, PB1 und PB2 in der Abfragetabelle 13 und schreitet fort zu einem Schritt 216 zum Treffen einer Entscheidung über eine erneuerte Zeitgebung des Steuerungszyklus. Für die befürwortende Entscheidung wird in einem Schritt 217 die Verarbeitung der Zykluserneuerung ausgeführt. Konkret werden für alle Verbindungen die Daten PB1 und PB2 auf "0" zurückgesetzt, wohingegen das Rücksetzflag RF auf "1" gesetzt wird. Andererseits kommt diese Routine für die negative Entscheidung an ein Ende, ohne diesen Schritt 217 zu implementieren.
  • Wenn die Antwort auf den vorgenannten Schritt 202 keinen Treffer zeigt, wird in einem Schritt 220 eine Leerlaufzelle bzw. eine leere Zelle übertragen, und der Ablauffluss springt zum Schritt 216.
  • In dieser Ausführungsform übernimmt die Software die Führung nur für die Verarbeitung der Einstellung der Durchsätze MCR, SCR und PCR, und die Bandbreitensteuerung hängt ab von der Hardwareverarbeitung in der ATM Schnittstelle 10, die ein LSI umfasst, was prompte Verarbeitung ermöglicht.
  • Zusätzlich können in dieser Ausführungsform vielfältige Zugangsmodi eingenommen werden durch Verändern der Untergrenze für den Durchsatz, des dazwischen liegenden Durchsatzes und der Obergrenze für den Durchsatz, je nach Notwendigkeit. Beispiele werden im Folgenden beschrieben.
  • Es ist auch angemessen, dass für einen Teil der Verbindungen die Untergrenze für den Durchsatz auf Null gesetzt wird, um die Garantie für die minimale Bandbreite auszuschalten. Wenn ein Teil der Verwendungen diese Verarbeitung akzeptiert, ist es möglich, einem betroffenen Benutzer den bestmöglichen Zugangsdienst anzubieten.
  • Darüber hinaus ist es auch angemessen, dass für einen Teil der Verbindungen die Untergrenze MCR für den Durchsatz, der dazwischen liegende Durchsatz SCR und die Obergrenze PCR für den Durchsatz gleich zueinander eingestellt werden. In diesem Fall wird die Prioritätsklasse in ihrer Anzahl Eins, um die Zuweisung eines pseudofestgesetzten Bereichs zu bewirken, was einen garantierten Zugang zum Sicherstellen der minimalen Bandbreite bereitstellen kann.
  • Noch darüber hinaus ist es auch angemessen, dass für einen Teil der Verbindungen die Untergrenze MCR des Durchsatzes auf Null eingestellt wird, während für einen anderen Teil von davon verschiedenen Verbindungen die Untergrenze MCR des Durchsatzes, der dazwischen liegende Durchsatz SCR und die Obergrenze PCR des Durchsatzes miteinander gleich geschaltet werden.
  • Darüber hinaus ist es möglich, dass für alle Verbindungen die Untergrenzen der Durchsätze aneinander angeglichen werden oder dass die Obergrenzen der Durchsätze aneinander angeglichen werden. In diesem Fall wird der dazwischen liegende Durchsatz entsprechend der Priorität eingestellt, ohne Berücksichtigung der Obergrenze und der Untergrenze für den Durchsatz.
  • Immer noch weiter ist es akzeptabel, dass für einen Teil oder alle der Verbindungen die Obergrenze des Durchsatzes auf einen bedeutend größeren Wert eingestellt wird, um die Begrenzung der maximalen Bandbreite im wesentlichen zu eliminieren.
  • Weiterhin ist es in dieser Ausführungsform angemessen, obwohl ein dazwischen liegender Durchsatz eingestellt ist, eine Vielzahl von (zwei oder mehreren) dazwischen liegenden, voneinander verschiedenen Durchsätzen einzustellen, was die Bandbreitensteuerung auf der Grundlage einer feineren Priorität erzielen kann. In diesem Fall wird die Vielzahl der dazwischen liegenden Durchsätze so eingestellt, dass der Bereich zwischen der Untergrenze des Durchsatzes und der Obergrenze des Durchsatzes gleich eingeteilt ist.
  • Im Folgenden wird eine ausführliche Beschreibung von einer zweiten Ausführungsform der vorliegenden Erfindung gegeben, in der zwei dazwischen liegende Durchsätze SCR' und SCR'' eingestellt werden. In diesem Fall werden die zwei dazwischen liegenden Durchsätze SCR' und SCR'' so eingestellt, dass sie die folgenden Gleichungen erfüllen: SCR' = MCR + (PCR-MCR)/3 SCR'' = MCR + 2(PCR-MCR)/3
  • In der zweiten Ausführungsform gehört jede der Verbindungen zu einer von vier Prioritätsklassen und einer Übertragungsverhinderungsklasse entsprechend der Anzahl CCR der übertragenen Zellen. D.h.:
    wenn CCR < MCR, PR-1 (Klasse mit der höchsten Übertragungspriorität);
    wenn MCR = CCR < SCR', PR-2 (Klasse mit der zweithöchsten Übertragungspriorität);
    wenn SCR' = CCR < SCR'', PR-3 (Klasse mit der dritthöchsten Übertragungspriorität);
    wenn SCR'' = CCR < PCR, PR-4 (Klasse mit der niedrigsten Übertragungspriorität); und
    wenn CCR = PCR, PR-0 (Übertragungsverhinderungsklasse).
  • Diese fünf Klassen werden mit drei Bits (PB1, PB2, PB3) wie folgt ausgedrückt. D.h.:
    für die Zuweisungsklasse PR-1, (PB3, PB2, PB1) = (0, 0, 0);
    für die Zuweisungsklasse PR-2, (PB3, PB2, PB1) = (0, 0, 1);
    für die Zuweisungsklasse PR-3, (PB3, PB2, PB1) = (0, 1, 0);
    für die Zuweisungsklasse PR-4, (PB3, PB2, PB1) = (0, 1, 1);
    und
    für die Zuweisungsklasse PR-0, (PB3, PB2, PB1) = (1, 1, 1).
  • In dem Fall der oben beschriebenen ersten Ausführungsform ist, wie in 3 gezeigt, die Abfrage auf einem Maximum von drei Runden im Zusammenhang mit den Übertragungsprioritätsklassen PR-1, PR-2 und PR-3 ausgeführt. Andererseits wird in der zweiten Ausführungsform die Abfrage auf einem Maximum von vier Runden in Übereinstimmung mit den Übertragungsprioritätsklassen PR-1, PR-2, PR-3 und PR-4 ausgeführt.
  • 8 ist eine Veranschaulichung eines Zustands, in dem die Anzahl der übertragenen Zellen entsprechend der Ver bindung im Verlauf der Zeit während eines einzigen Steuerungszyklusses ansteigt, entsprechend der 6 zum Beschreiben der ersten Ausführungsform. Wie es aus dieser Darstellung offensichtlich ist, ist in dem Steuerungszyklus die erste Zeitperiode T1 eine Zeit genommen bis alle Verbindungen die unterste Grenze MCR des Durchsatzes erreicht; die zweite Zeitperiode T2 ist eine Zeit genommen bis alle Verbindungen den dazwischen liegenden Durchsatz SCR' erreichen; die dritte Zeitperiode T3 ist eine Zeit genommen bis alle Verbindungen den dazwischen liegenden Durchsatz SCR'' erreichen; die vierte Zeitperiode T4 ist eine Zeit genommen bis alle Verbindungen die Obergrenze PCR für den Durchsatz erreichen; und die letzte Zeitperiode T5 ist eine Zeit, für die die Zellenübertragung in jeder Verbindung in einer Stoppbedingung sind, nachdem alle Verbindungen die Obergrenze PCR für den Durchsatz erreicht haben. Wie aus der Bandbreitensteuerung in den Zeitperioden T1, T2 und T3 offensichtlich, ist die zusätzliche Bandbreite fein entsprechend der Priorität zuweisbar.
  • Das Merkmal dieser Ausführungsform ist die Bandbreitensteuerung (Steuerung der zusätzlichen Bandbreite) in den dazwischen liegenden Zeitperioden T2 und T3 des Steuerungszyklus. D.h. die Einstellung der beiden dazwischen liegenden Durchsätze SCR' und SCR'' bewirkt, dass die Priorität der Verbindungen die Steuerung der zusätzlichen Bandbreite genau widerspiegelt.
  • Es sollte verstanden werden, dass die vorliegende Erfindung nicht auf die oben beschriebenen Ausführungsformen beschränkt ist, und dass sie beabsichtigt, alle Modifikationen der Ausführungsformen der Erfindung hierin, die keine Abweichungen vom in den beigefügten Patentansprüchen definierten Schutzumfang der Erfindung bilden. Bei spielsweise ist in den oben genannten Ausführungsformen, obwohl die Berechnung der Anzahl der übertragenen Zellen durch Addieren von Eins jedes Mal ausgeführt wird, wenn die Zellenübertragung stattfindet, die Subtraktion von dem Durchsatz ebenfalls möglich wie in dem Fall des oben beschriebenen herkömmlichen Stands der Technik. In diesem Fall kann der Vergleich zwischen der Anzahl der übertragenen Zellen und dem Durchsatz gleichzeitig ausgeführt werden.
  • Die Bandbreitensteuerung nach der vorliegenden Erfindung ist auch anwendbar in einer Aufwärtskommunikationssteuerung von einem Benutzer zu einem ATM Netzwerk. Zusätzlich ist die vorliegende Erfindung auch anwendbar in einem Kommunikationssystem, das Pakete mit fester Länge benutzt, aber ist nicht beschränkt auf den ATM Modus.

Claims (8)

  1. Ein Kommunikationssteuerungsverfahren zur Verwendung in einem Kommunikationssystem, das Pakete mit einer festen Länge verwendet, wie ein Netzwerk mit asynchronem Transfermodus, und zum Sicherstellen einer minimalen Bandbreite und Begrenzen einer maximalen Bandbreite für jede aus einer Vielzahl von Verbindungen (5), das Verfahren allgemein umfassend einmaliges Abspeichern von Paketen mit fester Länge in entsprechenden Speicherbereichen (32) in Übereinstimmung mit in den Paketen enthaltener Verbindungsinformation und Bereitstellen einer Eins-zu-Eins-Beziehung mit den Verbindungen (5), und anschließend Übertragen der Pakete aus den Speicherabschnitten (32) zu den Verbindungen (5) in sukzessiver Folge, wobei das Verfahren gekennzeichnet ist durch die Schritte: i) für jede Verbindung (5) Einstellen einer Untergrenze für den Durchsatz (MCR) entsprechend einer sicherzustellenden minimalen Bandbreite, einer Obergrenze für den Durchsatz (PCR) entsprechend einer zu begrenzenden maximalen Bandbreite, und mindestens einem dazwischen liegenden Durchsatz (SCR) zwischen der Untergrenze für den Durchsatz und der Obergrenze für den Durchsatz, wobei die Durchsätze durch die Anzahl der während eines Steuerungszyklus mit einer vorbestimmten Zeitperiode übertragenen Pakete ausgedrückt sind, und ii) zu jeder Verbindung Zuweisen einer Prioritätsklasse (PR-1, PR-2, PR-3), wobei einer Klasse, in der die Anzahl der übertragenen Pakete niedriger ist, eine höhere Übertragungsprioritätsklasse zugewiesen wird; iii) für jede der Verbindungen (5) Zählen der Anzahl (CCR) der übertragenen Pakete für jede Verbindung (5) und Überwachen, ob ein zu übertragendes Paket in dem Speicherabschnitt (32) existiert oder nicht; iv) Abfragen einer Verbindung, die eine erste Bedingung erfüllt, dass die Anzahl (CCR) der übertragenen Pakete die Untergrenze für den Durchsatz (MCR) nicht erreicht und dass die zu übertragenden Pakete in dem entsprechenden Speicherabschnitt (32) mit einer ersten Priorität (PR-1) der bestimmten Prioritäten existieren, und weiterhin wenn unter der ersten Bedingung keine aufgefundene Verbindung existiert, Abfragen einer Verbindung, die eine zweite Bedingung erfüllt, dass die Anzahl (CCR) der übertragenen Pakete den dazwischen liegenden Durchsatz (SCR) nicht erreicht und dass die zu übertragenden Pakete in dem entsprechenden Speicherabschnitt (32) mit einer zweiten Priorität (PR-2) der bestimmten Prioritäten existieren, und noch weiterhin, wenn unter der zweiten Bedingung keine Verbindung existiert, Abfragen einer Verbindung, die eine dritte Bedingung erfüllt, dass die Anzahl (CCR) der übertragenen Pakete die Obergrenze für den Durchsatz (PCR) nicht erreicht und dass die zu übertragenen Pakete in dem entsprechenden Speicherabschnitt mit einer dritten Priorität (PR-3) der bestimmten Prioritäten existieren; v) falls eine aufgefundene Verbindung unter einer beliebigen der ersten bis dritten Bedingungen aufgefunden wird, Übertragen des Pakets aus dem Speicher abschnitt (32) entsprechend der aufgefundenen Verbindung und Beenden des einmaligen Abfragens, wohingegen falls unter jeder der ersten bis dritten Bedingungen keine aufgefundene Verbindung existiert, Beenden des einmaligen Abfragens ohne Ausführen einer Paketübertragung aus dem Speicherabschnitt und anschließend Fortsetzen der Abfrage bei der Verbindung, die die Bedingung erfüllt, dass die Anzahl (CCR) der übertragenen Pakete die Untergrenze des Durchsatzes (MCR) nicht erreicht; und vi) während der Wiederholung der Abfrage, Beenden der Paketübertragung für eine Verbindung, für die die Anzahl der übertragenen Pakete die Obergrenze des Durchsatzes (PCR) erreicht.
  2. Das Kommunikationssteuerungsverfahren nach Anspruch 1, wobei die Verbindungsabfrage in einer vorbestimmten Reihenfolge ausgeführt wird und die nächste Abfrage bei einer an die aufgefundene Verbindung nachfolgende Verbindung wiedereinsetzt.
  3. Das Kommunikationssteuerungsverfahren nach Anspruch 1 oder 2, wobei ein Steuerungszyklus mit einer vorbestimmten Zeitdauer so eingestellt wird, dass die Abfrage während des Steuerungszyklus mehr als einmal ausgeführt wird, und die Anzahl (CCR) der übertragenen Pakete entsprechend der Verbindung in dem Steuerungszyklus gezählt wird, und jedes Mal wenn der Steuerungszyklus erneut startet, der Zähler für die Anzahl (CCR) der übertragenen Pakete zurückgesetzt wird, bevor das Zählen fortgesetzt wird.
  4. Das Kommunikationssteuerungsverfahren nach einem der Ansprüche 1 bis 3, wobei eine Vielzahl von dazwi schen liegenden Durchsätzen (SCR', SCR'') als dazwischen liegende Durchsätze zwischen der Untergrenze für den Durchsatz (MCR) und der Obergrenze für den Durchsatz (PCR) eingestellt werden, und beim Abfragen eine Verbindung, die die erste Bedingung erfüllt, dass die Anzahl (CCR) der übertragenen Pakete die Untergrenze für den Durchsatz (MCR) nicht erreicht und dass das zu übertragende Paket in dem entsprechenden Speicherbereich existiert, mit einer ersten Priorität (PR-1) der Prioritäten aufgefunden wird, und wenn keine unter den ersten Bedingungen aufgefundene Verbindung existiert, die Verbindungsabfrage schrittweise in der Reihenfolge der zunehmenden dazwischen liegenden Durchsätze (SCR', SCR'') ausgeführt wird, und wenn keine aufgefundene Verbindung existiert, selbst wenn die Abfrage auf der Grundlage des größten dazwischen liegenden Durchsatzes ausgeführt wird, die Verbindungsabfrage schließlich für eine Verbindung ausgeführt wird, die die dritte Bedingung erfüllt, dass die Anzahl (CCR) der übertragenen Pakete die Obergrenze des Durchsatzes (PCR) nicht erreicht und dass das zu übertragende Paket in dem entsprechenden Speicherabschnitt existiert.
  5. Das Kommunikationssteuerungsverfahren nach einem der Ansprüche 1 bis 4, wobei der dazwischen liegende Durchsatz (SCR) so eingestellt wird, dass er den Bereich zwischen der Untergrenze des Durchsatzes (MCR) und der Obergrenze des Durchsatzes (PCR) in gleiche Teile aufteilt.
  6. Das Kommunikationssteuerungsverfahren nach einem der Ansprüche 1 bis 5, wobei ein Teil der Verbindungen (5) so entworfen ist, dass die Untergrenze des Durchsatzes (PCR) auf Null eingestellt wird.
  7. Das Kommunikationssteuerungsverfahren nach einem der Ansprüche 1 bis 5, wobei ein Teil der Verbindungen (5) so entworfen ist, dass die Untergrenze für den Durchsatz (MCR), der dazwischen liegende Durchsatz (SCR) und die Obergrenze für den Durchsatz (PCR) so eingestellt sind, dass sie einander gleich sind.
  8. Eine Kommunikationssteuerungseinheit (12) zur Verwendung in einem Kommunikationssystem, das Pakete mit einer festen Länge verwendet, so wie ein Netzwerk mit asynchronem Übertragungsmodus, und zum Sicherstellen einer minimalen Bandbreite und Begrenzen einer maximalen Bandbreite für jede aus einer Vielzahl von Verbindungen (5), wobei die Einheit dazu angepasst ist, die Verfahrensschritte nach einem der Ansprüche 1 bis 7 auszuführen, wobei die Einheit umfasst: a) eine Vielzahl von Speicherabschnitten (32), die jeweils dazu angepasst sind, Pakete mit fester Länge für jede der Verbindungen (5) zu speichern; dadurch gekennzeichnet, dass sie ferner umfasst: b) einen Speichersteuerungsbereich (11), dazu angepasst, in einem eingegebenen Paket enthaltene Information zur Identifizierung der Verbindung (VCI, VPI) zu erkennen und eine Eins-zu-Eins-Beziehung mit den Verbindungen (5) bereitzustellen, und ferner dazu angepasst, die Pakete in dem Speicherabschnitt (32) entsprechend der erkannten Verbindung abzuspeichern; c) einen Zählabschnitt (12c) für übertragene Pakete, dazu angepasst, die Anzahl (CCR) der übertragenen Pakete für die entsprechende Verbindung (5) jedes Mal, wenn eine Paket-Übertragung für die Verbindung (5) stattfindet, zu zählen; d) einen Steuerungsparameterspeicher (40), dazu angepasst, die Anzahl (CCR) der in einem Steuerungszyklus mit einer vorbestimmten Zeitperiode gezählten, übertragenen Pakete zu speichern, und ferner dazu angepasst, die Anzahl (CA) der in dem Speicherabschnitt (32) entsprechend der Verbindung (5) akkumulierten Pakete zu speichern; e) einen Additionsabschnitt (12a) für akkumulierte Pakete, dazu angepasst, zu der Anzahl der akkumulierten Pakete in dem Steuerungsparameterspeicher (40) eins zu addieren, um die Anzahl (CA) der akkumulierten Pakete jedes Mal, wenn ein Paket in dem Speicherabschnitt (32) abgespeichert wird, zu aktualisieren; f) einen Subtraktionsabschnitt (12b) für akkumulierte Pakete, dazu angepasst, von der Anzahl (CA) der akkumulierten Pakete in dem Steuerungsparameterspeicher (40) jedes Mal, wenn ein Paket aus dem Speicherabschnitt (32) übertragen wird, zum Aktualisieren der Anzahl (CA) der akkumulierten Pakete eins zu subtrahieren; g) einen Speicher (14) für eingestellte Parameter, dazu angepasst, eine Untergrenze für den Durchsatz (MCR) entsprechend der sicherzustellenden minimalen Bandbreite, eine Obergrenze für den Durchsatz (PCR) entsprechend der zu begrenzenden maximalen Bandbreite und mindestens einen dazwischen liegenden Durchsatz (SCR), der zwischen der Untergrenze für den Durchsatz (MCR) und der Obergrenze für den Durchsatz (PCR) entsprechend der Verbindung (5) eingestellt ist, zu speichern; h) einen Klassenbestimmungsabschnitt (12c), dazu angepasst, alle der besagten Verbindungen auf der Grundlage der in dem Speicher (14) für eingestellte Parameter entsprechend der Verbindung (5) gespeicherten Durchsatzinformation (MCR, SCR, PCR) in Klassen zu klassifizieren, und der Anzahl (CCR) der übertragenen Pakete, die in dem Steuerungsparameterspeicher (40) entsprechend der Verbindung (5) gespeichert sind, in Übereinstimmung mit dem Schritt ii) des Anspruchs 1; i) einen Akkumulationsstatus-Erkennungsabschnitt (12f), dazu angepasst, einen Paketakkumulationsstatus (PB0) zu erkennen, der signalisiert, ob ein Paket in dem Speicherabschnitt (32) akkumuliert ist oder nicht, auf der Grundlage der Anzahl (CA) der in dem Steuerungsparameterspeicher (40) gespeicherten akkumulierten Pakete; j) eine Abfragetabelle (13a) umfassend den Verbindungen (5) entsprechende Adressen, wobei jede Adresse dazu angepasst ist, die bestimmten Klassen und ein Flag bzw. einen Merker (PB0), der für den erkannten Paketakkumulierungszustand für jede der Verbindungen indikativ ist, zu speichern; k) Abfragemittel (13b), dazu angepasst, die Abfrage mit Bezug auf die Abfragetabelle (13a) während des Steuerungszyklus mehr als ein Mal auszuführen, wobei die Abfragemittel (13b) ferner dazu angepasst sind, eine erste Abfrage in der ersten Übertragungsprioritätsklasse (PR-1) und weitere Abfragen in der Reihenfolge abnehmender Übertragungspriorität auszuführen und ferner eine Verbindungsabfrage in jeder der Klassen in einer vorbestimmten Reihenfolge entsprechend Schritt iv) des Anspruchs 1 auszuführen; und l) einen Übertragungssteuerungsabschnitt (12d), dazu angepasst, die Pakete aus dem Speicherabschnitt (32) nach Schritt v) des Anspruchs 1 entsprechend einer von den Abfragemitteln (13b) abgefragten, aufgefundenen Verbindung zu übertragen, und ferner dazu angepasst, die Paketübertragung aus dem Speicherabschnitt (32) zu beenden, wenn die Abfragemittel (13b) keine aufgefundene Verbindung gefunden haben.
DE60028903T 1999-10-25 2000-10-24 Verfahren und Vorrichtung zur Kommunikationskontrolle Expired - Lifetime DE60028903T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP30237199 1999-10-25
JP30237199A JP2001127762A (ja) 1999-10-25 1999-10-25 通信制御方法および装置

Publications (2)

Publication Number Publication Date
DE60028903D1 DE60028903D1 (de) 2006-08-03
DE60028903T2 true DE60028903T2 (de) 2007-02-01

Family

ID=17908105

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60028903T Expired - Lifetime DE60028903T2 (de) 1999-10-25 2000-10-24 Verfahren und Vorrichtung zur Kommunikationskontrolle

Country Status (4)

Country Link
US (1) US6771599B1 (de)
EP (1) EP1096735B1 (de)
JP (1) JP2001127762A (de)
DE (1) DE60028903T2 (de)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1292054B1 (de) 2001-09-10 2012-02-29 Nippon Telegraph And Telephone Corporation Schaltung , Verfahren , Program und Speichermedium zur dynamischen Bandbreitenzuteilung
DE10216283A1 (de) * 2002-04-12 2003-11-06 Siemens Ag Verfahren zu gemeinsamen Kontrolle der Bandbreiten einer Gruppe von einzelnen Informationsflüssen
US7652988B2 (en) * 2002-06-04 2010-01-26 Alcatel-Lucent Usa Inc. Hardware-based rate control for bursty traffic
US7802008B2 (en) * 2002-08-12 2010-09-21 Matsushita Electric Industrial Co., Ltd. Quality of service management in network gateways
US9585023B2 (en) * 2003-10-30 2017-02-28 Qualcomm Incorporated Layered reuse for a wireless communication system
US8526963B2 (en) * 2003-10-30 2013-09-03 Qualcomm Incorporated Restrictive reuse for a wireless communication system
US8059589B2 (en) * 2004-06-09 2011-11-15 Qualcomm Incorporated Dynamic restrictive reuse scheduler
US7257406B2 (en) * 2004-07-23 2007-08-14 Qualcomm, Incorporated Restrictive reuse set management
US8032145B2 (en) 2004-07-23 2011-10-04 Qualcomm Incorporated Restrictive reuse set management algorithm for equal grade of service on FL transmission
US7548752B2 (en) * 2004-12-22 2009-06-16 Qualcomm Incorporated Feedback to support restrictive reuse
JP4188368B2 (ja) 2005-09-28 2008-11-26 韓國電子通信研究院 イーサネット受動光加入者網(EPON)においてQoS保障のための帯域割当装置及び方法
KR100721367B1 (ko) * 2006-05-23 2007-05-23 한국정보통신대학교 산학협력단 Tdm-pon에서 멀티캐스트 트래픽 공유 기반의 공정한차등 대역폭 할당 방법 및 시스템
JP4992750B2 (ja) * 2008-02-14 2012-08-08 日本電気株式会社 中継装置
FR2934108B1 (fr) * 2008-07-21 2010-09-17 Commissariat Energie Atomique Methode d'ordonnancement de paquets
US8195989B1 (en) * 2010-08-20 2012-06-05 Juniper Networks, Inc. Detection of ethernet link failure
WO2012030271A1 (en) * 2010-09-03 2012-03-08 Telefonaktiebolaget L M Ericsson (Publ) Scheduling multiple users on a shared communication channel in a wireless communication system
CN104022915B (zh) * 2014-05-19 2017-07-14 华为技术有限公司 一种流量调节方法及装置
US10791521B2 (en) * 2015-12-03 2020-09-29 Huawei Technologies Co., Ltd. Data sending method and apparatus, and terminal
JP7063285B2 (ja) * 2019-02-07 2022-05-09 日本電信電話株式会社 通信制御装置、および、通信制御方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5224099A (en) * 1991-05-17 1993-06-29 Stratacom, Inc. Circuitry and method for fair queuing and servicing cell traffic using hopcounts and traffic classes
JPH0744542B2 (ja) 1993-01-11 1995-05-15 日本電気株式会社 非同期転送モードにおける仮想パスの帯域割当方式
US5515363A (en) * 1994-06-30 1996-05-07 Digital Equipment Corporation Traffic shaping system with transmit latency feedback for asynchronous transfer mode networks
US5533009A (en) * 1995-02-03 1996-07-02 Bell Communications Research, Inc. Bandwidth management and access control for an ATM network
US5974466A (en) * 1995-12-28 1999-10-26 Hitachi, Ltd. ATM controller and ATM communication control device
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
US5812527A (en) * 1996-04-01 1998-09-22 Motorola Inc. Simplified calculation of cell transmission rates in a cell based netwook
US5777984A (en) * 1996-04-01 1998-07-07 Motorola Inc. Method and apparatus for controlling cell transmission rate in a cell based network in the presence of congestion
US6377550B1 (en) * 1997-10-28 2002-04-23 Texas Instruments Incorporated Nested measurement period switch algorithm for flow control of available bit rate ATM communications
JP3507688B2 (ja) 1998-02-24 2004-03-15 日本電気株式会社 ラウンドロビン制御装置および方法
US6633543B1 (en) * 1998-08-27 2003-10-14 Intel Corporation Multicast flow control
US6081507A (en) * 1998-11-04 2000-06-27 Polytechnic University Methods and apparatus for handling time stamp aging

Also Published As

Publication number Publication date
US6771599B1 (en) 2004-08-03
DE60028903D1 (de) 2006-08-03
EP1096735A3 (de) 2004-11-10
EP1096735A2 (de) 2001-05-02
JP2001127762A (ja) 2001-05-11
EP1096735B1 (de) 2006-06-21

Similar Documents

Publication Publication Date Title
DE60028903T2 (de) Verfahren und Vorrichtung zur Kommunikationskontrolle
DE69432655T2 (de) Verbesserungen in ATM-Nachrichtensystemen
DE69817756T2 (de) ATM Zellenübertragungsplanung
DE3780800T2 (de) Anordnung zur ueberlastregelung fuer paketvermittlungssystem.
DE3780799T2 (de) Anordnung zur ueberlastregelung durch bandbreitenverwaltung fuer paketvermittlungssystem.
DE69636825T2 (de) Verzögerungsminimalisierungssystem mit garantierter Bandbreite für Echtzeitverkehr
DE60120807T2 (de) Schaltvorrichtung und Verfahren
DE69839334T2 (de) Verfahren zur Zuweisung von Aufwartszeitschlitzen zu einer Netzwerkendeinrichtung , sowie Netzwerkendeinrichtung und Zugriffssteuerung zur Durchführung eines solchen Verfahrens
DE69935587T2 (de) Verfahren und vorrichtung zur weiterleitung von paketen von einer mehrzahl konkurrierender warteschlangen zu einem ausgang
DE69633051T2 (de) Verfahren zur Kontrolle der Datenstromgeschwindigkeit, des Warteschlangenetzknoten und des Paketvermittlungsnetzwerkes
DE69738386T2 (de) Verbesserungen in oder sich beziehend auf eine ATM-Vermittlungsstelle
DE19929516B4 (de) Hochgeschwindigkeits-Netzwerkschalter
DE19745020B4 (de) Verfahren zum Steuern des Datenverkehrs in einem ATM-Netzwerk
DE29825153U1 (de) Schalteraufbau eines ATM-Schalters mit großer Kapazität und Mehrklassenkern
DE102012222367B4 (de) Hybrid-Management von eingaben- und belegungsabhängigen Überlastungen
DE69912172T2 (de) Verfahren und Vorrichtung zur Steuerung der Verkehrsflüsse in einem Paketvermittlungsnetz
DE102007038964A1 (de) Verfahren und Vorrichtung zum Verarbeiten von Netzwerkdaten
DE4408118A1 (de) Verbessertes Zuteilungsverfahren für virtuelle Pfad- und virtuelle Kanalidentifikatoren für einen asynchronen Transfermodus und Vorrichtung dafür
DE60130383T2 (de) Verfahren zur verzögerungsausgeglichenen Zuweisung von Zeitschlitzen und Vorrichtung für Punkt-zu-Mehrpunktkommunikationsnetzwerke
EP1593237B1 (de) Verfahren zur übertragungsbandbreitenzuteilung in einer pake torientierten kommunikationseinrichtung
WO2003032676A1 (de) Verteilte übermittlung von verkehrsströmen in kommunikationsnetzen
DE69838103T2 (de) Verfahren zur Pufferverwaltung
WO2019211076A1 (de) Verfahren und computerprogramm zum senden eines datenpaketes, verfahren und computerprogramm zum empfangen eines datenpaketes, kommunikationseinheit und kraftfahrzeug mit kommunikationseinheit
EP0523276B1 (de) Verfahren und Schaltungsanordnung zum Einrichten von virtuellen Verbindungen über ein ATM-Verbindungsleitungsbündel
EP2538618A1 (de) Verfahren zur Übertragung von Datenpaketen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: PANASONIC CORP., KADOMA, OSAKA, JP