DE69731606T2 - Anlage und verfahren zur änderung von schwellen für überlastkontrolle in atm-vermittlungsstellen - Google Patents

Anlage und verfahren zur änderung von schwellen für überlastkontrolle in atm-vermittlungsstellen Download PDF

Info

Publication number
DE69731606T2
DE69731606T2 DE69731606T DE69731606T DE69731606T2 DE 69731606 T2 DE69731606 T2 DE 69731606T2 DE 69731606 T DE69731606 T DE 69731606T DE 69731606 T DE69731606 T DE 69731606T DE 69731606 T2 DE69731606 T2 DE 69731606T2
Authority
DE
Germany
Prior art keywords
class
cell
ovc
region
cells
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
DE69731606T
Other languages
English (en)
Other versions
DE69731606D1 (de
Inventor
Alexander Joffe
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.)
MACOM Connectivity Solutions LLC
Original Assignee
MMC Networks Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=24836235&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE69731606(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by MMC Networks Inc filed Critical MMC Networks Inc
Application granted granted Critical
Publication of DE69731606D1 publication Critical patent/DE69731606D1/de
Publication of DE69731606T2 publication Critical patent/DE69731606T2/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
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • 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/5629Admission control
    • H04L2012/5631Resource management and allocation
    • H04L2012/5636Monitoring or policing, e.g. compliance with allocated rate, corrective actions
    • 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/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

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung betrifft Netzwerke und insbesondere die Regelung von Überlastungen in ATM-Schaltern in Netzwerken.
  • Da ein ATM-Schalter möglicherweise keine Zelle zu einer stromabwärtigen Station übertragen kann, bevor eine andere Zelle ankommt, setzt der Schalter ankommende Zellen in eine Warteschlange. Wenn die Warteschlange die gesamte für die Warteschlange zugeordnete Speicherkapazität ausfüllt, dann werden die eingehenden Zellen verworfen.
  • Einige ATM-Schalter haben eine separate Warteschlange für jeden Ausgangsport oder Subport und/oder für jede Priorität. So haben beispielsweise einige Schalter 32 Ports; für jeden Port werden vier Warteschlangen für jeweils vier verschiedene Prioritäten geführt. Die Gesamtzahl der Warteschlangen beträgt somit 32*4 = 128. In einigen Schaltern wird jede Warteschlange in einem separaten Speicher gehalten. In anderen Schaltern wird ein Gemeinschaftsspeicher für alle Warteschlangen verwendet. Ein Gemeinschaftsspeicher lässt es zu, dass eine bestimmte Warteschlange mehr als ihren proportionalen Anteil an der Speicherkapazität einnimmt, vorausgesetzt, dass eine oder mehrere andere Warteschlangen weniger als ihren proportionalen Anteil an der Speicherkapazität einnehmen. Eine lange Warteschlange kann jedoch den gesamten Gemeinschaftsspeicher einnehmen und keinen Platz für andere Warteschlangen lassen. Um eine solche Möglichkeit zu reduzieren, ist die Zahl der Zellen in einer bestimmten Warteschlange durch einen Schwellenwert begrenzt. Wenn die Zahl der Zellen in einer bestimmten Warteschlange den Schwellenwert überschreitet, dann werden die für diese Warteschlange bestimmten ankommenden Zellen einer Maßnahme zur Reduzierung der Überlastung unterzogen; so werden beispielsweise die ankommenden Zellen verworfen oder Zellen werden mit einer Überlastungsanzeige gesendet.
  • Es ist wünschenswert, alternative Schaltungen und Verfahren zum Handhaben der Schalterüberlastung bereitzustellen.
  • Ozveren C et al.: ,Reliable and efficient hop-by-hop flow control', Computer Communications Review, Bd. 24, Nr. 4, 1. Oktober 1994, Seiten 89–100, XP000477043, offenbart ein System, das einen Schwellenwert verwendet, der von der Zahl der Zellen in einem ATM-Schalter abhängig ist, um Schalterüberlastungen zu vermeiden.
  • Beraldi R et al.: ,Selective BECN schemes for congestion control of ABR traffic in ATM LAN', 1996 IEEE International Conference on Communications (ICC), Converging Technologies for Tomorrow's Applications, Dallas, 23.–27. Juni 1996, Bd. 1 von 3, 23. Juni 1996, Institute of Electrical & Electronics Engineers, Seiten 503–507, XP000625722, offenbart ein System zur Überlastungsabwehr von ABR-Verkehr in einem ATM-LAN, wobei das System in Bezug auf Klassen von Zellen arbeitet.
  • ZUSAMMENFASSUNG
  • Die vorliegende Erfindung ermöglicht die Änderung von Schwellenwerten je nach Schalterüberlastung. In einigen Ausgestaltungen können die Schwellenwerte umgekehrt zur Gesamtzahl der Zellen in allen Warteschlangen variieren. Somit werden die Schwellenwerte verringert, wenn die Gesamtzahl der Zellen zunimmt.
  • Einige veränderliche Schwellenwerte sind besonders für Ausgestaltungen mit einer großen Zahl von Warteschlangen wertvoll. In der Tat werden die Schwellenwerte, wenn die Zahl der Warteschlangen groß ist und die Schwellenwerte nicht variabel, sondern konstant sind, tief eingestellt, weil es keiner Warteschlange gestattet werden sollte, in Anwesenheit vieler anderer Warteschlangen viel Speicherplatz einzunehmen. Im Gegensatz dazu können sie, wenn die Schwellenwerte variabel sind, hoch eingestellt werden, solange die Gesamtzahl der Zellen in dem Gemeinschaftsspeicher niedrig ist. Die Schwellenwerte sind nur dann tief, wenn die Gesamtzahl der Zellen hoch ist.
  • In einigen Ausgestaltungen werden viele Warteschlangen gebildet, weil der Schalter eine separate Warteschlange für jeden virtuellen Eingangskanal (IVC) führt. Wir werden eine solche Warteschlangenbildung „Pro-VC-Warteschlangenbildung" nennen. Einige Pro-VC-Warteschlangenbildungsschalter haben tausende von IVCs und somit tausende von Warteschlangen.
  • Einige Ausgestaltungen definieren eine oder mehrere Klassen von Warteschlangen. Jede Klasse hat ihre eigenen Schwellenwerte für ihre Warteschlangen. In jeder Klasse variieren die Schwellenwerte umgekehrt zur Gesamtzahl der Zellen in allen Warteschlangen der Klasse. Daher verursacht Überlastung in einer Klasse keine Schwellenwertreduzierung in anderen Klassen.
  • In einigen Pro-VC-Warteschlangenbildungsschaltern haben Warteschlangen jeder gegebenen Klasse eine bestimmte Verkehrscharakteristik gemäß Definition durch ihren Dienstgüte-(QoS)-Parameter oder -Parameterbereich. Die Verkehrscharakteristik wird dann berücksichtigt, wenn die Schwellenwerte ermittelt werden. So stellen einige Schalter tiefere Schwellenwerte für Klassen mit niedrigeren Zellenverzögerungs- und Zellenverzögerungsvariationsparametern und höhere Schwellenwerte für Klassen mit niedrigeren Zellenverlustraten ein. Überlastung für Warteschlangen mit einer Verkehrscharakteristik (z. B. einem hohen Zellenverzögerungsparameter und somit einer geringen Priorität) verursacht keine Schwellenwertreduzierung für Warteschlangen mit einer anderen Verkehrscharakteristik (z. B. einer höheren Priorität).
  • In einigen Ausgestaltungen ist die Zahl der Klassen relativ zur Anzahl der Warteschlangen klein. So gibt es beispielsweise in einigen Ausgestaltungen nur sechzehn Klassen. Daher kann die Menge an Speicherkapazität, die einer bestimmten Klasse eingeräumt wird, hoch sein. In einigen Ausgestaltungen ist die für jede Klasse eingestellte Speicherkapazitätsobergrenze der gesamte Gemeinschaftsspeicher.
  • In Pro-VC-Warteschlangenbildungsschaltern betrifft diese Maßnahme, wenn eine Warteschlange ihren Schwellenwert überschreitet und eine Maßnahme zur Überlastungsreduzierung auslöst, nur den IVC, der dieser Warteschlange entspricht, und hat keinen Einfluss auf andere IVCs.
  • Weitere Merkmale und Vorteile der Erfindung werden nachfolgend beschrieben. Die Erfindung wird in den beiliegenden Ansprüchen definiert.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 illustriert Pro-VC-Warteschlangen von ATM-Zellen in einem ATM-Schalter gemäß der vorliegenden Erfindung.
  • 2 illustriert Datenstrukturen, die zum Verwalten der Warteschlangen von 1 verwendet werden.
  • 3 und 4 sind Charts, die den Betrieb eines ATM-Schalters der vorliegenden Erfindung illustrieren, wenn eine Zelle empfangen wird.
  • 5 ist ein Chart, der den Betrieb eines ATM-Schalters der vorliegenden Erfindung illustriert, wenn eine Zelle zum Senden geplant ist.
  • 6 ist ein Chart, der illustriert, wie ein ATM-Schalter der vorliegenden Erfindung bestimmt, ob eine eingehende Zelle verworfen werden soll.
  • 711 illustrieren Datenstrukturen in verschiedenen Betriebsphasen eines ATM-Schalters der vorliegenden Erfindung.
  • 12 illustriert Ethernet- und ATM-Netze, die gemäß der vorliegenden Erfindung interagieren.
  • 13 illustriert eine Zustandsmaschine in einem ATM-Schalter der vorliegenden Erfindung.
  • 14 illustriert Datenstrukturen in einem ATM-Schalter der vorliegenden Erfindung.
  • 15 illustriert eine Zustandsmaschine in einem ATM-Schalter der vorliegenden Erfindung.
  • 1619 illustrieren Datenstrukturen in verschiedenen Betriebsphasen eines ATM-Schalters der vorliegenden Erfindung.
  • 20 und 21 sind Graphs, die die Schwellenwert- und Paketverwerfungsfunktion eines ATM-Schalters der vorliegenden Erfindung illustrieren.
  • 22 ist ein Blockdiagramm einer Schaltung, die zum Implementieren der Schwellenwert- und Paketverwerfungsfunktion eines ATM-Schalters der vorliegenden Erfindung verwendet wird.
  • 23 illustriert eine Zustandsmaschine für eine frühe Paketverwerfungsfunktion in einem ATM-Schalter der vorliegenden Erfindung.
  • 24 ist ein Blockdiagramm, das eine Beziehung zwischen Funktionsblöcken und Datenbanken in einem ATM-Schalter der vorliegenden Erfindung zeigt.
  • 25 ist ein Blockdiagramm eines ATM-Schalters der vorliegenden Erfindung.
  • 26 zeigt Datentabellen und Bussignale in dem ATM-Schalter von 25.
  • 27 illustriert den Fluss von Daten zwischen Blöcken von 25.
  • 28 illustriert Vorgänge, die in verschiedenen Schaltzyklen in dem Schalter von 25 durchgeführt werden.
  • 29 illustriert Vorgänge, die während einer Eingangsstufe des Schalters von 25 durchgeführt werden.
  • 30 illustriert eine Eingangsstufen-Pipeline des Schalters von 25.
  • 31 illustriert Vorgänge, die während einer Ausgangsstufe des Schalters von 25 durchgeführt werden.
  • 32 illustriert eine Ausgangsstufen-Pipeline des Schalters von 25.
  • 33 illustriert den Fluss von Daten in dem Schalter von 25.
  • 34 illustriert die Programmierung des Schalters von 25, die zum Einrichten einer Verbindung durchgeführt wird.
  • 3551 illustrieren Register und Registerfelder in dem Schalter von 25.
  • BESCHREIBUNG BEVORZUGTER AUSGESTALTUNGEN
  • Nachfolgend wird eine ATM-Schalter-Schwellenwertfunktion beschrieben. Zunächst wird die Pro-VC-Warteschlangenbildung beschrieben.
  • 1 illustriert Warteschlangen 110A, 110B, 110C von ATM-Zellen in einem ATM-Schalter. Wenn der Schalter ein VC-Schalter ist, dann wird eine separate Warteschlange 110 für Zellen zugeordnet, die an einem bestimmten Port oder Subport empfangen werden und einen bestimmten VCI und einen bestimmten VPI haben. Somit werden auf einem IVC A empfangene Zellen 104A auf die Warteschlange 110A geschrieben; auf einem IVC B empfangene Zellen 104B werden auf die Warteschlange 110B geschrieben; auf einem IVC C empfangene Zellen 104C werden. auf die Warteschlange 110C geschrieben. Der Scheduler 120 plant das Senden der Zellen.
  • Wenn der Schalter ein VP-Schalter ist, dann wird eine separate Warteschlange 110 für Zellen zugeordnet, die auf einem bestimmten Port oder Subport empfangen werden und einen bestimmten VPI haben. Der Begriff „Pro-VC-Warteschlangenbildung" bezieht sich hierin sowohl auf VC-Schalter mit einer separaten Warteschlange für jeden IVC als auch auf VP-Schalter mit einer separaten Warteschlange für jeden Eingangs-VP. Die nachfolgende Beschreibung von VC-Schaltern betrifft VP-Schalter, wenn „virtueller Kanal" durch „virtueller Pfad" ersetzt wird, ausgenommen dann, wenn offensichtlich ist, dass ein solcher Austausch unangemessen ist.
  • In einigen Ausgestaltungen kann eine ATM-Verbindung in einem framegestützten Betriebsmodus (FBOM) oder einem Non-FBOM-(„Normal")-Modus arbeiten. Zu jedem gegebenen Zeitpunkt können einige Verbindungen FBOM-Verbindungen und andere Verbindungen Normalverbindungen sein. Wir beschreiben zunächst den Normalmodus.
  • Der Betrieb des ATM-Schalters ist in zwei Stufen unterteilt: eine Eingangsstufe und eine Ausgangsstufe. In der Eingangsstufe werden Zellen 104 empfangen und mit Warteschlangen 110 gemäß den Eingangs-VCs der Zellen verknüpft. Für jede Zelle 104 speichert der ATM-Schalter eine Datenstruktur, die in Anhang 1 am Ende der vorliegenden Beschreibung (vor den Ansprüchen) beschrieben ist. Die Datenstruktur beinhaltet einen Nächste-Zelle-Zeiger NXT, der zum Verknüpfen der Zellen in der Warteschlange 110 verwendet wird.
  • 2 illustriert Datenstrukturen, die im ATM-Schalter für eine einzelne Verbindung und somit für einen einzelnen IVC und eine einzelne Warteschlange 110 verwendet werden. Jeder IVC wird anhand einer jeweiligen IVC-Struktur 210 beschrieben. Wir werden eine Struktur 210 zuweilen einfach als IVC bezeichnen. IVC-Felder sind in Anhang 2 beschrieben. In jedem IVC zeigt ein Schreibzeiger (Write Pointer – WP) auf die letzte Zelle in der jeweiligen Warteschlange 110. Flag F = 1 bedeutet eine FBOM-Verbindung; F = 0 bedeutet eine normale Verbindung.
  • 2 illustriert eine Multicast-Verbindung mit drei virtuellen Ausgangskanälen (OVCs) OVC0, OVC1 und OVC2. Jeder OVC wird anhand einer jeweiligen OVC-Struktur 220 beschrieben, die wir einfach einen OVC nennen. Felder von OVC 220 sind in Anhang 3 beschrieben. Wie darin und in 3 dargestellt ist, beinhaltet jeder OVC Folgendes: 1) einen Lesezeiger (Read Pointer – RP), der auf die nächste auf dem OVC zu übertragende Zelle zeigt; 2) Feld NewHDR, das den VPI und VPC des neuen Headers für den OVC enthält; und 3) die Nummer „IVC" des jeweiligen („Stamm-") IVC; diese Nummer ist ein Zeiger auf IVC 210.
  • Anhang 4 illustriert Schritte, die zum Einrichten einer neuen Verbindung ausgeführt werden. Anhang 5 illustriert Schritte, die zum Hinzufügen einer Partei (eines OVC) zu einer existierenden Verbindung durchgeführt werden. Anhang 6 sowie 3 und 4 illustrieren Schritte, die ausgeführt werden, wenn eine neue Zelle empfangen wird. 5 illustriert Schritte, die zum Senden einer Zelle ausgeführt werden. 6 illustriert Schritte, die ausgeführt werden, um zu ermitteln, ob eine Zelle verworfen werden soll. Die Anhänge 4–6 sowie die 36 werden nachfolgend erörtert.
  • Zum selben IVC gehörende OVCs können mit verschiedenen Ausgangsports oder Subports verbunden sein oder auch nicht. Ein Subport ist ein logischer Port; eine Gruppe von Subports nutzen denselben physischen Port gemeinsam.
  • Verschiedene Ausgangs-VCs, die demselben IVC entsprechen, können sich gleichzeitig in unterschiedlichen Zuständen befinden. So kann beispielsweise ein OVC mit dem Senden aller Zellen von einer jeweiligen Warteschlange 110 fertig sein (d. h. die Warteschlange 110 kann für diesen OVC leer sein), während andere OVCs weiterhin Zellen von der Warteschlange senden. Wenn eine Zelle 104 von allen OVCs gesendet wurde, die dem IVC entsprechen, dann wird die Zelle aus der Warteschlange genommen und der Speicher der Zelle wird in einen Stapel von freien Zellenpuffern zurückgebracht. In dem entsprechenden IVC wird der Zähler ECNT (die Zahl von Zellen in der IVC-Warteschlange, siehe Anhang 2) dekrementiert.
  • Wenn eine neue Zelle (Zelle 104N in 7) auf dem IVC empfangen wird, dann wird die Zelle am Ende der Warteschlange 110 verknüpft. ECNT wird inkrementiert (Schritt 2b in Anhang 6). Die Lesezeiger der leeren OVCs (OVC2 in 7) werden so eingestellt, dass sie auf diese neue Zelle zeigen (Schritt 3a-2 in Anhang 6). OVC-Strukturen 220 für nicht leere OVCs (OVC0 und OVC1 in 7) ändern sich nicht.
  • Wie in Anhang 3 gezeigt, beinhaltet jeder OVC 220 Folgendes: einen Flag L, der im FBOM anzeigt, ob die Zelle, auf die der RP des OVC zeigt, die letzte Zelle eines Frame ist; und einen Flag M, der anzeigt, ob die Zelle, auf die der RP zeigt, eine Marker-Zelle ist. Marker-Zellen werden zum Entfernen von OVCs verwendet, wie nachfolgend beschrieben wird. In einem in 25 gezeigten ATM-Schalter werden die Felder RP, L und M jedes OVC in einem 20-Bit-Feld gespeichert (siehe Eintrag „RP" in Tabelle 4 unten). Dementsprechend hat jede Zelldatenstruktur 20 Bits, die den NXT (Anhang 1) der Zelle sowie die Flags L und M der Zelle enthalten. L gibt an, ob die nächste Zelle die letzte Zelle in einem Frame ist. M gibt an, ob die nächste Zelle eine Marker-Zelle ist. Wenn ein OVC eine Zelle überträgt, dann wird das 20-Bit-Feld der Zelle (NXT, L, M) parallel auf das Feld des OVC (RP, L, M) kopiert.
  • Wenn OVCs eines bestimmten IVC leer sind, dann werden sie zu einer verknüpften Liste 310 (8) verknüpft. Wir nennen die Liste 310 eine IVC-Kette von OVCs. In 8 gehören die OVCs OVC1, OVC2, OVC3 zum IVC X. Diese OVCs sind leer. Dies bedeutet, dass entweder: (1) die jeweilige Warteschlange 110 leer ist oder (2) Warteschlange 110 nicht leer ist, aber alle Zellen in der Warteschlange von OVC1, OVC2 und OVC3 übertragen wurden. Wenn die Warteschlange 110 nicht leer ist, dann haben ein oder mehrere andere OVCs, die dem IVC X entsprechen, nicht alle Zellen in der Warteschlange übertragen.
  • Leere OVCs OVC1, OVC2, OVC3 werden mit ihren NXT-Feldern miteinander verknüpft (Anhang 3). Der Kettenkopfzeiger CHP (Anhang 2) des IVC zeigt auf den ersten OVC (OVC1) in der Kette 310. Der Kettenendezeiger CTP des IVC zeigt auf den letzten OVC (OVC3) in der Kette 310.
  • In dem nachfolgend ausführlicher beschriebenen Schalter von 25 handhabt jeder PVC (Pro-VC-Controller) 1440 einen separaten Satz von Ausgangsports und jeder PVC hat seine eigene Kette 310 für die OVCs, die auf den von dem PVC gehandhabten Ausgangsports übertragen.
  • Wenn eine Zelle auf dem IVC X in der Stufe von 8 empfangen wird, dann muss ein Zeiger auf diese Zelle auf das RP-Feld jedes OVC in jeder Kette 310 geschrieben werden, und die Flags L und M jedes OVC in jeder Kette 310 müssen auf geeignete Werte gesetzt werden. Dieser Vorgang erfordert mehrere Taktzyklen. Er wird daher im Hintergrund durchgeführt. Insbesondere werden, wenn eine Zelle auf dem IVC X empfangen wird, nur der Zeiger RP und die Flags L, M des ersten OVC (OVC1 in 8) in jeder Kette 310 in jedem PVC 1440 auf entsprechende Werte gesetzt (Schritt 3a-2 in Anhang 6, Schritt 730 in 4). Gleichzeitig werden alle OVCs von jeder Kette (OVC1, OVC2, OVC3 in 8) zum Ende der „Hintergrund"-(„BG")-Liste 410 bewegt (9). Jeder PVC 1440 hat eine einzelne Hintergrundliste 410 für alle IVCs. OVCs werden in derselben Reihenfolge zur Liste 410 hinzugefügt, in der sie sich in der jeweiligen Kette 310 befanden. In jedem PVC 1440 zeigt ein Zeiger HBL (Kopf der Hintergrundliste) auf den ersten OVC in der Liste 410 (OVCy in 9); ein Zeiger TBL (Ende der Hintergrundliste) zeigt auf den letzten OVC (OVC3) in der Liste 410. In jedem PVC 1440 kopiert die „Hintergrund"-Schaltung (nicht dargestellt) das Feld (RP, L, M) des ersten OVC, der von der Kette 310 (OVC1 in 9) bewegt wurde, auf die Felder (RP, L, M) aller OVCs, die dem ersten OVC in der Liste 410 folgen und die ungültige RPs (OVC2, OVC3 in 9) haben. Wir nennen den Betrieb der Hintergrundschaltung in jedem PVC 1440 einen „Background-Job".
  • In einem framegestützten Betriebsmodus ist ein OVC in einer Kette 310, wenn der OVC alle Zellen in der Warteschlange 110 übertragen hat und wenn die einzigen Zellen, die nicht von dem OVC übertragen wurden, Zellen eines Teilframe sind (d. h. ein Frame, der nicht vollständig auf dem jeweiligen IVC empfangen wurde). Wenn der OVC einen Vollframe zum Senden erhält, wird der OVC zur jeweiligen Liste 410 verlegt.
  • Jede IVC-Struktur 210 hat einen Flag C (Kette bereit) in jedem PVC 1440, um anzuzeigen, ob die Kette 310 des IVC in dem PVC nicht leer ist (siehe Eintrag „TP" in Tabelle 4 unten). Anhang 2 sowie die 8 und 9 zeigen nur einen Flag C (man beachte, einige Schalter haben nur einen PVC 1440). In 8 ist C = 1 (Kette 310 ist nicht leer), in 9 ist C = 0.
  • Jede IVC-Struktur 210 hat einen Flag R in jedem PVC 1440, um anzuzeigen, ob der Lesezeiger RP des ersten OVC in der jeweiligen Kette 310 gültig ist. Anhang 2 sowie die 8 und 9 zeigen nur einen Flag R. In 8 ist OVC1 leer und IVC X hat daher R = 0 (RP ungültig). In 9 ist Kette 310 leer und daher ist R = x („gleichgültig").
  • Ebenso hat jede OVC-Struktur 220 einen Flag R im jeweiligen PVC 1440, um anzuzeigen, ob der Lesezeiger RP[NXT] des nächsten OVC gültig ist (siehe Anhang 3 und Tabelle 4, Eintrag IVC/NXT). Also gilt, solange der NXT-Zeiger von OVC1 auf OVC2 zeigt, ist der R-Flag von OVC1 1, wenn RP von OVC2 gültig ist. In 8 sind OVC2 und OVC3 leer und daher sind die R-Flags in OVC1, OVC2 0. Der R-Flag von OVC3 ist „x" („gleichgültig").
  • Jede Hintergrundschaltung durchläuft die jeweilige Liste 410 und führt den folgenden Vorgang für jeden OVC in der Liste durch:
    Wenn der RP des OVC gültig ist, dann
    • – temp_RP_L_M = RP, L, M des OVC
    • – temp_R = Flag R des OVC
    • – OVC aus Hintergrundliste entfernen und OVC zu Scheduler übertragen (der Transfer PVC → SCH in 27 wie unten beschrieben) sonst (RP ungültig)
    • – RP, L, M des OVC = temp_RP_L_M
    • – Flag R von OVC = temp_R
    • – OVC aus Hintergrundliste entfernen und OVC zu Scheduler übertragen (PVC → SCH in 27).
  • Oben sind temp_RP_L_M und temp_R Speicherpositionen in der Hintergrundschaltung in jedem PVC 1440.
  • Jede Zelle 104 hat ein Kopienzahlenfeld CCNT (Anhang 1), das die Zahl von OVCs speichert, zu der die Zelle übertragen werden soll. Wenn eine Zelle empfangen wird, dann wird ihre Zahl CCNT auf die Zahl OCNT von OVCs initialisiert, die zum IVC gehören (Anhang 6, Schritt 1b). Diese Zahl OCNT (Ausgangszähler) wird im entsprechenden IVC 210 gespeichert (Anhang 2; siehe auch Anhang 4, Schritt 1a). Jedes Mal, wenn eine Zelle übertragen wird, wird ihre CCNT dekrementiert. Wenn die CCNT null erreicht, dann wird der Zellenspeicher freigegeben.
  • Zum Hinzufügen eines neuen OVC zu einer Multicast-Verbindung werden die folgenden Schritte ausgeführt (Anhang 5):
    • 1. Ein neuer OVC wird erzeugt und mit der Kette 310 des entsprechenden IVC 210 (Anhang 5, Schritte 1a, 1b) im jeweiligen PVC 1440 verknüpft.
    • 2. Die Ausgangszahl OCNT im IVC wird inkrementiert (Anhang 5, Schritt 1c).
  • In 10 wurde OVC2 hinter OVC0 und OVC1 angehängt. Die Zellen 104.1, 104.2 in Warteschlange 110 kamen vor dem Hinzufügen von OVC2 an. Ihre CCNT-Felder waren unverändert, als OVC2 hinzugefügt wurde, und diese Zellen werden nicht auf OVC2 übertragen. Als OVC2 hinzugefügt wurde, war sein RP ungültig. Zelle 104.3 ist die erste Zelle, die nach dem Hinzufügen von OVC2 ankam. Zelle 104.3 erhält die aktualisierte Kopienzahl CCNT = 3.
  • Das Verknüpfen des neuen OVC mit der IVC-Kette und das Inkrementieren der Ausgangszahl OCNT des IVC erfolgt als atomarer Vorgang vor dem Empfangen einer neuen Zelle (Zelle 104.3 in 10).
  • 11 illustriert das Entfernen von OVC2 von einer Multicast-Verbindung. Als ein Befehl zum Entfernen von OVC von der CPU einging, betrug die OVC-Zahl OCNT n, und die Zellen 104.1, 104.2 waren bereits empfangen, aber noch nicht von einem OVC übertragen worden. Diese Zellen sind die letzten Zellen, die auf dem OVC2 übertragen werden, bevor OVC2 entfernt wird. Wenn ein Befehl zum Entfernen von OVC2 empfangen wird, dann werden die folgenden Aktionen durchgeführt:
    • 1. Im OVC2 wird das Löschbit D (Anhang 3) gesetzt.
    • 2. Eine „Marker"-Zelle 104M wird mit der IVC-Warteschlange verknüpft. In der vorherigen Zelle 104.2 wird Flag M gesetzt (Anhang 1), um anzuzeigen, dass die nächste Zelle eine Marker-Zelle ist. Die Marker-Zelle 104M wird nicht von einem OVC übertragen.
    • 3. Im IVC wird OCNT dekrementiert.
  • Zelle 104.3 wird nach der Marker-Zelle empfangen, und in Zelle 104.3 wird CCNT auf den neuen OCNT-Wert von n-1 initialisiert. In der Marker-Zelle 104M und den vorhergehenden Zellen wurde CCNT auf den alten OCNT-Wert initialisiert.
  • Wenn der OVC2 die Marker-Zelle 104M erreicht, dann wird der OVC2 aus der Liste der aktiven OVCs herausgenommen (Schritt 970 in 5).
  • Ein Befehl zum Entfernen von mehr als einem OVC wird ebenso verarbeitet.
  • Betriebsmodus auf Frame-Basis (FBOM)
  • In diesem Modus wird ein ganzer Frame von Zellen von einem IVC auf den Zielport oder Subport ohne intervenierende Zellen von anderen IVCs oder Frames übertragen. In einigen Ausgestaltungen wird FBOM zum Multiplexieren mehrerer Benutzer-ATM-Verbindungen auf dieselbe ATM-Verbindung verwendet. Das Multiplexieren kann sogar mit Benutzerschnittstellen wie AAL-5 erfolgen, die es nicht erfordern, dass jede Zelle die Position der Zelle in einem Frame oder auch nur die Tatsache identifiziert, dass die Zelle zu dem Frame gehört. Die Position der Zelle in einem Frame und die Tatsache, dass die Zelle zu dem Frame gehört, sind deshalb bekannt, weil die Zellen eines Frame auf einem Ausgangsport und Subport in der Reihenfolge übertragen werden, in der sie in dem Frame erscheinen, ohne intervenierende Zellen. AAL-5 (ATM Adaptation Layer 5) wird in den nachfolgenden Publikationen beschrieben, die hierin durch Bezugnahme eingeschlossen sind: H. Dutton, P. Lenhard „Asynchronous Transfer Mode (ATM), Technical Overview" (2. Ausgabe, Oktober 1995); W. A. Flanagan, „ATM User's Guide" (1. Ausgabe, April 1994); O. Kyas „ATM networks" (1995). In Abwesenheit von FBOM werden AAL-5 Verbindungen nicht auf derselben ATM-Verbindung multiplexiert.
  • 12 illustriert das Multiplexieren von verschiedenen Verbindungen auf eine ATM-Verbindung zum Verbinden von Ethernet-Segmenten 2010.12010.5 durch ein ATM-Netz. Verkehr von Ethernet-Segmenten 2010.1, 2010.2, 2010.3, 2010.4 zu dem Ethernet-Segment 2010.5 läuft wie folgt ab. Jedes Segment 2010.12010.4 sendet Ethernet-Pakete zur jeweiligen Ethernet-Schnittstellenschaltung 2014.12014.4. Jede Schaltung 2014.12014.4 konvertiert jedes Ethernet-Paket in einen Frame von einer oder mehreren ATM-Zellen. Die Ethernet-Schnittstellenschaltung 2014.3 sendet ihre Frames zu einem Port des ATM-Schalters 2040B auf einer virtuellen Verbindung VC1. Die Schaltung 2014.2 sendet ihre Frames zu einem anderen Port des Schalters 2040B auf einer virtuellen Verbindung VC2. Der Schalter 2040B setzt die Zellen von jeder Schaltung 2014.3, 2014.2 in eine separate Warteschlange. Da diese Zellen denselben Zielort haben, sendet sie der Schalter 2040B auf derselben virtuellen Verbindung VC3 zu einem Port des ATM-Schalters 2040C. Die Zellen werden in einem framegestützten Betriebsmodus übertragen, und daher werden keine unterschiedlichen Frames gemischt.
  • Frames von der Ethernet-Schnittstellenschaltung 2014.1 gehen durch den ATM-Schalter 2040A zu einem anderen Port des ATM-Schalters 2040C und kommen am Schalter 2040C auf einer anderen virtuellen Verbindung VC4 an. Der Schalter 2040C setzt die auf den Verbindungen VC3, VC4 empfangenen Zellen in verschiedene Warteschlangen, sendet sie aber auf derselben virtuellen Verbindung VC5, da die Zellen in beiden Warteschlangen denselben Zielort haben. Die Zellen aus beiden Warteschlangen werden im Frame-Modus übertragen und daher werden die Frames nicht gemischt. Die virtuelle Verbindung VC5 wird mit einem Port des ATM-Schalters 2040D verbunden. Die virtuelle Verbindung VC6 von der Ethernet-Schnittstellenschaltung 2014.4 ist mit einem anderen Port des Schalters 2040D verbunden. Die auf der Verbindung VC5, VC6 ankommenden Zellen werden in verschiedene Warteschlangen gesetzt, aber auf derselben Verbindung VC7 im Frame-Modus übertragen. Die Ethernet- Schnittstellenschaltung 2014.5 empfängt die Zellen auf der Verbindung VC7, setzt jeden Frame zu einem Ethernet-Paket zusammen und sendet das Paket zum Ethernet-Segment 2010.5.
  • Da jeder Frame ohne intervenierende Zellen von einem anderen Frame ankommt, ist das Zusammensetzen durch die Schaltung 2014.5 eine einfache Sache. Ferner erfordert die Schaltung 2014.5 keine Speicherkapazität zum Speichern von Teilframes, wie dies der Fall wäre, wenn die Frames gemischt ankämen. Die Kosten für die Schaltung 2014.5 werden daher reduziert.
  • In einigen Ausgestaltungen verwenden Schnittstellenschaltungen 2014 die ATM-Adaptation-Layer AAL-5. FBOM lässt es zu, dass verschiedene AAL-5 Verbindungen und verschiedene ATM-Verbindungen auf dieselbe ATM-Verbindung multiplexiert werden (z. B. werden VC4, VC3 auf VC5 multiplexiert), obwohl AAL-5 nicht in jeden Frame Informationen einfügt, wie z. B. MID in AAL-4/4, die die Position der Zelle in einem Frame oder auch nur die Tatsache angeben würde, dass die Zelle zu dem Frame gehört. Die Zahl der virtuellen Verbindungen wird daher selbst bei Verwendung von AAL-5 reduziert.
  • Der FBOM-Betrieb eines ATM-Schalters ist dem Normalmodusbetrieb ähnlich. In einigen Ausgestaltungen geschieht jedoch Folgendes:
    • 1. Wenn ein OVC hinzugefügt wird, dann beginnt der OVC mit der Übertragung auf einer Frame-Grenze.
    • 2. Parteien werden von einer Multicast-Verbindung auf einer Frame-Grenze entfernt. Wenn eine Anforderung zum Entfernen eines OVC ankam, als der IVC einen Teilframe hatte, dann überträgt der OVC den Teilframe; der OVC überträgt jedoch auch die Marker-Zelle nach dem Teilframe, um dem Zielort anzuzeigen, dass der Teilframe verworfen werden soll.
  • Im FBOM kann sich ein IVC in einem der beiden folgenden Zustände befinden (13), wie durch den Flag P des IVC angedeutet wird (Anhang 2):
  • a. Zustand Vollframe/leer (P = 0)
  • In diesem Zustand ist die IVC-Warteschlange 110 leer oder besteht aus einem oder mehreren Vollframes.
  • b. Teilframe (P = 1)
  • In diesem Zustand ist der letzte Frame im IVC noch nicht vollständig empfangen.
  • Im Normalmodus ist P immer 0.
  • In 13 zeigen die Zahlen 1 und 2 (im Kreis) die folgenden Bedingungen an:
    • 1. Eine Zelle wird empfangen, die nicht die letzte Zelle eines Frame ist;
    • 2. Die letzte Zelle eines Frame wird empfangen.
  • Jeder IVC hat einen Endezeiger TP (Anhang 2). Im FBOM zeigt TP auf die letzte Zelle des letzten Vollframe in der jeweiligen Warteschlange 110. Somit gehören in 14 die Zellen 104-0,1 und 104-0,2 zu Frame 0; Zelle 104-1,1 gehört zu Frame 1. TP zeigt auf Zelle 104-0,2, die die letzte Zelle in Frame 0 ist.
  • Im Nicht-FBOM ist TP = WP.
  • Wenn ein OVC zur Ausgabe gewählt wird, dann wählt der Scheduler 120 denselben OVC für den Port oder Subport des OVC, bis ein gesamter Frame übertragen ist. Wenn die Adresse der übertragenen Zelle gleich TP wird (5, Schritt 850), dann wird der OVC leer und kehrt zur jeweiligen Kette 310 zurück (Schritte 870, 874) und wartet auf den Empfang eines weiteren Vollframe.
  • Wenn eine neue Zelle im FBOM empfangen wird, dann wird der Flag L (Anhang 1) der vorherigen Zelle (wenn die vorherige Zelle abgeht) auf einen Wert gesetzt, der anzeigt, ob die neue Zelle die letzte Zelle in einem Frame ist (siehe Anhang 6, Schritt 1a). Ebenso wird, wenn die Kette 310 des jeweiligen IVC nicht leer ist, der Flag L des ersten OVC in jeder nicht leeren Kette 310 ebenfalls auf einen Wert gesetzt, der anzeigt, ob die neue Zelle die letzte in einem Frame ist.
  • 3 illustriert Vorgänge, die von jedem PVC 1440 durchgeführt werden, um die Flags P und Zeiger TP eines IVC zu aktualisieren, wenn eine Zelle empfangen wird. Jeder PVC 1440 führt eine Kopie von Flag P und Zeiger TP. In den 36 bedeutet ein nach unten zeigendes Dreieck eine Beendigung. „==" bedeutet eine Gleichheitsbedingung; „=" bedeutet eine Zuordnung (gemäß Syntax der Programmiersprache C).
  • Beim Einrichten der Verbindung wurden beide P-Flags auf 0 gesetzt (Anhang 4, Schritt 1h). Wenn F = 0 ist (3, Schritt 510; jeder PVC 1440 hat eine Kopie von Flag F), dann werden die folgenden Schritte ausgeführt:
    • 1. In jedem PVC 1440 holt TP die Zelladresse (Schritt 520; siehe auch Schritt 2d in Anhang 6).
    • 2. Jeder PVC 1440 prüft seinen IVC-Flag C in Schritt 530. Wenn ein PVC keine OVCs für den IVC hat, dann ist Flag C des PVC = 0 für den IVC (C wird beim Einrichten der Verbindung auf 0 gesetzt). In Schritt 540 testet jeder PVC 1440 seinen IVC-Flag H (Anhang 2 und Tabelle 4, Eintrag „TP"). Flag H wurde auf 1 gesetzt, wenn der Übergang von leeren OVCs in dem Bereitschaftszustand gesperrt werden sollte (z. B. wenn ein neuer Header eines leeren OVC noch nicht bekannt war). Wenn C = 1 und H = 0 ist, dann wird C auf 0 gesetzt (Schritt 550) und die Kette 310 wird aus der Hintergrundliste 410 genommen (Schritt 560) (siehe auch Schritt 2e in Anhang 6).
  • Wenn Schritt 510 F = 1 ist und der PTI-Flag L der Zelle (Bit 2) gesetzt ist (die Zelle ist die letzte in einem Frame; Schritt 570), dann wird P zurückgesetzt (Schritt 580 und Anhang 6, Schritt 2c-1). Schritt 520 wird ausgeführt und die Schritte 530560 werden wie oben beschrieben nach Bedarf ausgeführt.
  • Wenn in Schritt 510 F = 1 ist und die Zelle nicht die letzte in einem Frame ist (Schritt 570) und P = 0 (Schritt 590) ist, dann wird P auf 1 gesetzt (Schritt 610 und Anhang 6, Schritt 2c-2).
  • In den 36 werden die Schritte nicht unbedingt in der gezeigten oder beschriebenen Reihenfolge durchgeführt. So wird beispielsweise in einigen Ausgestaltungen Schritt 520 parallel zu den Schritten 530560 ausgeführt. In einigen Ausgestaltungen werden die Schritte 550 und 560 parallel ausgeführt.
  • 4 illustriert das Aktualisieren der OVC-Lesezeiger, wenn eine Zelle empfangen wird. In jedem PVC 1440 (25) wird, wenn der IVC-Flag C = 1 (Schritt 700) und der IVC-Flag R = 0 (Schritt 710) ist:
    • 1) R des IVC auf 1 gesetzt (Schritt 720 und Anhang 6, Schritt 3a-1), und
    • 2) RP des OVC, auf den CHP zeigt, so gesetzt, dass er auf die Zelle zeigt (Schritt 730 und Anhang 6, Schritt 3a-2).
  • Zu jedem Zeitpunkt ist eine OVC-Struktur 220 in einem von vier Zuständen wie in 15 gezeigt. Die Zustände lauten wie folgt:
    Nicht definiert – die OVC-Datenstruktur gehört zu keiner Verbindung. Die Struktur kann definiert und einem virtuellen Ausgangskanal zugeordnet werden.
    Leer – der OVC ist definiert und mit seinem Stamm-IVC in der Kette 310 verknüpft. Es gibt für den OVC jedoch keinen Vollframe zu übertragen. In einer Nicht-FBOM-Verbindung gibt es für den OVC keine Zelle zu übertragen.
    Bereit – der OVC ist in Liste 410 für die Übertragung zum Scheduler 120 bereit. Im FBOM gibt es für den OVC wenigstens einen Vollframe zu übertragen. Im Nicht-FBOM gibt es für den IVC wenigstens eine Zelle zu übertragen.
    Aktiv – der OVC ist nicht mehr in der BG-Liste und befindet sich unter Scheduler-Steuerung. Jedes Mal, wenn der OVC für eine Übertragung geplant ist, emittiert der OVC eine Zelle aus der IVC-Warteschlange.
  • Die Zustandsübergänge werden in der folgenden Tabelle 1 beschrieben. Die erste Spalte in Tabelle 1 zeigt die Bedingungsnummern, die in 15 in einem Kreis stehen.
  • Tabelle 1
    Figure 00150001
  • Beim ersten Einrichten der Verbindung ist der IVC leer, daher sind WP und TP undefiniert (ungültig). In einem PVC 1440 ist das C-Bit (Kette ist bereit) gesetzt (Schritt 1f), da die Verbindung mit wenigstens einem OVC in der Kette 310 eingerichtet wurde. In diesem PVC 1440 zeigen CHP und CTP auf den OVC (Anhang 4, Schritt 1d). Der OVC hat einen Zeiger auf seinen Stamm-IVC (Schritt 2b). In dem anderen PVC 1440 wird Flag C zurückgesetzt. Diese Einrichtung erfolgt dann, wenn ein Befehl „PVC-Setup connection" ausgeführt wird.
  • Wenn die erste Zelle 104 auf dem IVC ankommt, dann wird der IVC-Schreibzeiger so aktualisiert, dass er auf die neue Zelle zeigt (Anhang 6, Schritt 2a). Dann wird der OVC-Lesezeiger so aktualisiert, dass er auf die neue Zelle zeigt (Schritt 3a-2), und der IVC-Flag R wird im jeweiligen PVC 1440 gesetzt (Schritt 3a-1).
  • 5 illustriert das Übertragen einer Zelle auf einem OVC. Bei der Durchführung der Vorgänge von 5 handhabt der PVC 1440 den OVC, es sei denn, dies ist anders angegeben. In Schritt 810 empfangen die Felder RP, L, M des OVC NXT, L, M der Zelle. Der vorherige Wert des Flag M des OVC wird vor Schritt 810 gespeichert und in Schritt 820 geprüft. Wenn M = 0 ist, dann sind die durchgeführten Schritte vom Wert des OVC-Flag A abhängig (Schritt 830). Flag A wird im FBOM verwendet, um sicherzustellen, dass die Übertragung auf einem neuen OVC auf der Frame-Grenze beginnt, wenn der OVC erstmalig hinzugefügt wird. Spezifischer ausgedrückt, beim ersten Hinzufügen des OVC war Flag A auf 1 oder 0 gesetzt, je nach dem, ob die Verbindung im FBOM war und der IVC einen Teilframe hatte (Anhang 5, Schritt 2c). Wenn der IVC einen Teilframe hatte (P = 1), dann wurde A auf 1 gesetzt. In diesem Fall überträgt der Scheduler 120 Zellen auf dem OVC erst dann, wenn der RP des OVC die letzte Zelle im aktuellen Frame passiert hat. Die Übertragung beginnt mit der ersten Zelle des nächsten Frame. Wenn P = 0 ist, wenn OVC hinzugefügt wurde, dann wurde A auf 0 gesetzt.
  • Im normalen Modus ist A immer 0.
  • Wenn in Schritt 830 von 5 A = 0 ist, dann wird die Zelle gesendet (Schritt 840). Insbesondere sendet der PVC 1440 die Zelladresse und den VPI/VCI des neuen Headers der Zelle zur SIF 1420 (25) zur Übertragung, wie in der unteren Hälfte von 27 dargestellt ist. Wenn die Zelladresse gleich TP ist (Schritt 850), dann wird der OVC leer. Wenn in dem IVC P = 0 ist (Schritt 860), dann wird R des IVC auf 0 gesetzt (Schritt 870). Ansonsten wird R auf 1 gesetzt (Schritt 874). Der OVC wird zur jeweiligen Kette 310 bewegt (Schritt 880).
  • Wenn A = 0 ist (Schritt 830), dann wird die Zelle fallen gelassen (Schritt 890). Dies bedeutet, dass der PVC 1440 die Adresse der Zelle und einen NULL-Header (VPI = VCI = 0) zur SIF 1420 überträgt und somit wird die Zelle nicht übertragen. Die CCNT der Zelle wird jedoch von der SIF 1420 dekrementiert. Wenn der vorherige Wert des Flag L des OVC 1 ist (Schritt 900; L wurde vor Schritt 820 gespeichert), dann wird Flag A des OVC auf 0 gesetzt (Schritt 910). Schritt 850 und geeignete der Schritte 860880 werden wie oben beschrieben ausgeführt.
  • Wenn in Schritt 820 M = 1 ist, dann ist die Zelle eine Marker-Zelle. Wenn Flag D des OVC = 0 ist (Schritt 920), dann wird die Zelle fallen gelassen (Schritt 930). Schritt 850 und geeignete der Schritte 860880 werden wie oben beschrieben ausgeführt.
  • Wenn in Schritt 920 D = 1 ist, dann muss der OVC entfernt werden. Wenn Flag F des IVC = 0 ist (Schritt 940), dann wird die Zelle fallen gelassen (Schritt 950); ansonsten wird die Zelle (Schritt 960) übertragen, mit einer Nutzlast von nur Nullen und einem PTI-Feld, das die letzte Zelle eines Frame anzeigt. Diese Zelle ist die letzte auf dem OVC gesendete Zelle. Diese Zelle kann einem Teilframe folgen. Wenn der Zielort diese Zelle empfängt, dann verwirft der Zielort den Teilframe aufgrund eines Längenfehlers (und möglicherweise eines CRC-Fehlers).
  • Die CCNT der Marker-Zelle wird in Schritt 950 oder 960 dekrementiert (von der SIF 1420).
  • In Schritt 970 wird der OVC entfernt.
  • Verbindung hinzufügen
  • Die Möglichkeit, eine Verbindung nebenbei hinzuzufügen, ist ein wertvolles Merkmal. Das Hinzufügen einer Verbindung ist ein atomarer Vorgang, der kurz nach der Ausgabe eines Befehls zum Hinzufügen einer Verbindung ausgeführt wird. Wir warten nicht, bis der gesamte Frame empfangen ist, wenn wir eine Verbindung hinzufügen.
  • In 16 werden OVCn3 und OVCn4 in dieser Reihenfolge hinzugefügt, wenn die folgenden Bedingungen erfüllt sind:
    • 1) die IVC-Warteschlange besteht aus: a) Zelle 1.4 von Frame 1; b) Zellen 2.0, 2.1, 2.2 eines Vollframe 2; und c) Zellen 3.0, 3.1 eines Teilframe 3.
    • 2) OVCn0 ist leer und wartet auf die Ankunft der letzten Zelle von Frame 3. Sein Lesezeiger zeigt auf Zelle 3.0, die die nächste Zelle ist, die von diesem OVC übertragen wird. Somit ist, auch wenn OVCn0 leer ist, sein RP gültig.
    • 3) OVCn1 ist aktiv und überträgt Frame 2. Sein Lesezeiger zeigt auf Zelle 2.1, die die nächste Zelle ist, die von diesem OVC übertragen wird.
    • 4) OVCn2 ist aktiv und überträgt Frame 1. Sein Lesezeiger zeigt auf Zelle 1.4.
  • In 16 übertragen OVCn3, OVCn4 auf Ports, die vom selben PVC 1440 (25) gehandhabt werden, und daher werden die beiden OVCs derselben Kette 310 hinzugefügt.
  • Die neuen OVCs werden am Kopf der IVC-Kette 310 hinzugefügt, und der IVC-Flag R wird im jeweiligen PVC 1440 zurückgesetzt. In 16 sind ungültige Felder schattiert. So sind die RP-Felder von OVCn3, OVCn4 schattiert.
  • In OVCn3 und OVCn4 sind die A-Bits gesetzt.
  • Wenn eine neue Zelle 3.2 ankommt (17), dann wird der RP des obersten OVCn4 der Kette 310 so gesetzt, dass er auf die neue Zelle zeigt, und der IVC-Flag R wird im jeweiligen PVC 1440 gesetzt.
  • Wenn die letzte Zelle von Frame 3 ankommt, dann wird der Endezeiger des IVC in jedem PVC so gesetzt, dass er auf diese Zelle zeigt, und die gesamte IVC-Kette 310 wird mit der Hintergrundliste 410 im jeweiligen PVC 1440 verknüpft. Beim Durchgehen durch die Liste setzt der Background-Job den Lesezeiger von OVCn3 so, dass er gleich dem Lesezeiger des OVCn4 ist.
  • Beginnend mit Zelle 3.2, haben alle Zellen eine Kopiezahl CCNT = 5 (vorherige Zellen haben eine Kopienzahl CCNT, die auf 3 initialisiert ist).
  • Verbindung fallenlassen
  • Um eine Verbindung zu entfernen, werden zwei Schritte ausgeführt:
    • 1. Der OVC wird zum Fallenlassen markiert (D-Bit wird im jeweiligen PVC 1440 gesetzt).
    • 2. Die CPU sendet eine Marker-Zelle, die in die jeweilige Warteschlange 110 gesetzt wird. Diese Marker-Zelle ist als normale Zelle aufgebaut, ihre Nutzlast ist nur Nullen und ein PTI-Feld, das die letzte Zelle eines Frame anzeigt. Die Nutzlast der Marker-Zelle und das PTI-Feld werden in einem Speicher (nicht dargestellt) gespeichert, der zum Speichern von Nutzlasten und Headern von eingehenden Zellen verwendet wird.
  • In 18 ist OVCn0 leer und wartet auf den Empfang von Frame 3. OVCn1 und OVCn2 übertragen gerade Frame 2 bzw. 1. Die D-Bits von OVCn1 und OVCn0 sind gesetzt, was bedeutet, dass diese OVCs zum Entfernen bestimmt sind. Die Marker-Zelle 104M ist hinter der Zelle 3.1 verknüpft. Die Kopienzahl CCNT der Marker-Zelle ist wie alle vorherigen Zellen auf 3 initialisiert. Die Kopienzahl der ersten Nicht-Marker-Zelle (nicht dargestellt), die hinter der Marker-Zelle ankommt, ist auf CCNT = 1 gesetzt, d. h. diese Zelle wird nur von einem OVC übertragen.
  • Wenn ein Befehl zum Empfangen von OVCn0, OVCn1 empfangen wurde, nachdem OVCn0 Zelle 2.2 übertragen hatte, aber bevor die erste Zelle 3.0 von Frame 3 empfangen wurde, dann würde die Marker-Zelle als die erste Zelle eines Teilframe in die Warteschlange gesetzt. Insbesondere würde der L-Flag von Zelle 2.2 und der P-Flag des IVC zurückgesetzt.
  • 19 zeigt einen Stapel von entfernten OVC-Strukturen in einem PVC 1440. Der Zeiger OSP zeigt auf den Anfang dieses Stapels. Jedes Mal, wenn ein neuer OVC entfernt wird (5, Schritt 970), dann wird er am Anfang des Stapels hinzugefügt. Der letzte OVC, OVCk, in dem Stapel hat NXT = 0.
  • Wenn die Schalter-CPU (wie z. B. die CPU 1414 in 25) einen Befehl zum Entfernen eines OVC ausgibt, dann markiert die CPU den OVC in der Datenbank der CPU als zum Entfernen bestimmt. Es kann jedoch einige Zeit vergehen, bevor der OVC die Marker-Zelle überträgt und sie tatsächlich entfernt und auf OSP-Stapel gesetzt wird.
  • Die CPU wird nicht informiert, wenn der OVC tatsächlich entfernt wird. Die CPU liest die OSP-Stapel in beiden PVCs und markiert die entfernten OVCs in der CPU-Datenbank. Wenn die CPU einen OVC zum Hinzufügen einer Verbindung braucht, dann holt die CPU einen neuen OVC aus der Datenbank der CPU, und somit braucht die CPU die OSP-Stapel zu diesem Zeitpunkt nicht zu lesen. Infolgedessen ist das Hinzufügen einer Verbindung ein schneller Vorgang.
  • Zum Lesen des Stapels von 19 liest die Schalter-CPU den OSP, um den obersten OVC im Stapel zu holen. Wenn die CPU OSP liest, dann wird OSP auf null gesetzt. Da die CPU einen Zeiger auf den ersten OVC, OVCn1, hat, verlangt die CPU nicht, dass OSP den Rest des Stapels durchquert. Das Ende des Stapels wird erfasst, weil in OVCk NXT = 0 ist.
  • Inzwischen wird, wenn ein OVC entfernt wird, OSP so gesetzt, dass er auf diesen OVC zeigt. So wird ein neuer Stapel von entfernten OVCs gebildet. Neu entfernte OVCs werden zu diesem neuen Stapel hinzugefügt. Wenn der alter Stapel (der Stapel von 19) verbraucht ist, dann liest die CPU OSP, um einen OVC vom neuen Stapel zu holen. Diese Stapelmanagementtechnik hat die folgenden Vorteile: (1) die CPU braucht OSP nicht jedes Mal zu lesen, wenn der Stapel gepoppt werden soll; (2) das Nullen von OSP, wenn OSP gelesen wird, ist einfacher als das Setzen des OSP so, dass er auf einen OVC in dem Stapel zeigt.
  • Schwellenwert- und Paketverwerfungsfunktion
  • Diese Funktion handhabt Überlastungen im ATM-Schalter. Die Funktion bestimmt insbesondere die folgenden Schwellenwerte für jede Warteschlange 110:
    • 1. Einen Markierungsschwellenwert. Wenn eine Zelle auf einem IVC empfangen wird, wenn die ECNT des IVC den Markierungsschwellenwert überschreitet, dann werden die auf dem IVC empfangenen Zellen mit einer Überlastungsanzeige übertragen (d. h. PTI-Bit 1 ist gesetzt).
    • 2. Ein Verwerfungsschwellenwert (in einigen Ausgestaltungen über dem Markierungsschwellenwert). Wenn eine Zelle empfangen wird, wenn die ECNT den Verwerfungsschwellenwert überschreitet, dann wird die Zelle wie folgt behandelt:
    • a. Im FBOM (oder bei Bedarf im Normalmodus mit AAL-5) wird die „Early Packed Discard" Richtlinie (EPD) angewendet. Dies bedeutet, dass, wenn die Zelle die erste Zelle eines Frame ist, der gesamte Frame verworfen wird. Wenn die Zelle nicht die erste Zelle in einem Frame ist und eine vorherige Zelle in dem Frame nicht verworfen wurde, dann wird die Zelle nicht verworfen. Die EPD-Zustandsmaschine wird nachfolgend in Verbindung mit 23 beschrieben.
    • b. Im Normalmodus wird, wenn EPD nicht angewendet wird, die Zelle verworfen, wenn das CLP-Feld im Zell-Header 1 ist. Wenn CLP = 0 ist, dann wird die Zelle nicht verworfen.
    • 3. Eine Warteschlangengrenze (in einigen Ausgestaltungen oberhalb des Verwerfungsschwellenwertes). Wenn eine Zelle empfangen wird, wenn die ECNT die Warteschlangengrenze überschreitet, dann wird die Zelle verworfen.
  • Der Markierungsschwellenwert wird wie folgt benutzt. Jede IVC-Struktur hat einen Flag I (Anhang 2), der anzeigt, ob die EFCI-Markierung auf dem IVC freigegeben ist (EFCI bedeutet Explicit Forward Congestion Indication). Jede IVC-Struktur hat auch einen Forward Congestion Notification Flag N. Wenn eine Zelle auf dem IVC empfangen wird, dann werden die folgenden Schritte von der SIF 1420 ausgeführt:
    • 1. Wenn das PTI-Bit 1 der Zelle (Überlastungsanzeige) gesetzt ist, dann wird der IVC-Flag N gesetzt.
    • 2. Wenn der IVC-Flag I gesetzt ist (d. h. wenn die EFCI-Markierung aktiviert ist) und die IVC-Zahl ECNT den Markierungsschwellenwert überschreitet, dann wird der IVC-Flag N gesetzt.
    • 3. In allen anderen Fällen, d. h. wenn das PTI-Bit 1 der Zelle zurückgesetzt wird und entweder EFCI gesperrt ist oder ECNT den Markierungsschwellenwert nicht überschreitet, wird der Flag N zurückgesetzt.
  • In der Ausgangsstufe wird, wenn der IVC-Flag N gesetzt ist, wenn eine Zelle, die zu dem IVC gehört, für die Übertragung geplant ist, die Zelle mit gesetztem PTI-Bit 1 übertragen (d. h. mit Überlastungsanzeige).
  • Die Schwellenwerte variieren dynamisch je nach dem Überlastungszustand des Schalters. In einigen Ausgestaltungen werden die Schwellenwerte wie folgt gesetzt. Jeder Eingangs-VC gehört zu einer von 16 Klassen, wie durch das IVC-Feld CLID angegeben (Klasse ID; siehe Anhang 2). CLID wird zugeordnet, wenn die Verbindung eingerichtet wird (Anhang 4, Schritt 1c). In einigen Ausgestaltungen wird eine separate CLID für jeden QoS- oder eine Reihe von QoS-Parameter(n) zugeordnet. Für jede Klasse führt der ATM-Schalter eine Klassenzahl, die die Gesamtzahl von Zellen in allen Warteschlangen 110 dieser Klasse ist. Somit ist die Klassenzahl die Summe aller ECNT-Werte in der Klasse. Wenn eine Zelle empfangen wird, dann wird die jeweilige Klassenzahl inkrementiert. Die Zahl wird dekrementiert, wenn eine Zelle in der Klasse zum Stapel von freien Zellenpuffern nach der Übertragung zurückgebracht wird.
  • Die Markierungs-, Verwerfungs- und Warteschlangengrenzschwellenwerte werden separat für jede Klasse gesetzt. Je größer die Klassenzahl, desto geringer die tatsächlichen Schwellenwerte für jede Warteschlange 110 in der Klasse, wie in 20 gezeigt ist. In 20 werden die möglichen Werte der Klassenzahl in 8 Regionen unterteilt, die von 0 bis 7 nummeriert sind. Jeder Schwellenwert ist in jeder Region konstant. 20 ist ein Graph für einen Schwellenwert. In 20 besteht Region 0 aus Klassenzählerwerten von 0 bis 6K (6K = 6*1024 = 7144); Region 1 ist von 6K bis 10K usw. Die Obergrenze von Region 7 ist die „Klassengrenze". Die Regionsgrenzen sind pro Klasse programmierbar und können sich somit für verschiedene Klassen unterscheiden.
  • In einigen Ausgestaltungen ist ein Schwellenwert in zwei oder mehr Nachbarregionen gleich.
  • Für jede Klasse führt der Schalter eine Klassenregion-ID-Variable, die anzeigt, in welcher Region sich die Klassenzahl befindet. Der tatsächliche Schwellenwert wird anhand der Klassenregion-ID bestimmt.
  • Wenn ein Schwellenwert abnimmt, dann werden die Zellen, die bereits in der Warteschlange sind, nicht beeinflusst. Man nehme beispielsweise an, dass in 20 die Klassenzahl von Region 0 zu Region 1 steigt. Der Schwellenwert nimmt von A zu B ab. Wenn jedoch eine Warteschlange 110 in der Klasse mehr als B Zellen hatte, als der Klassenzähler Region 1 erreicht hatte, dann werden diese Zellen nicht Gegenstand einer zusätzlichen Überlastungsreduzierungsmaßnahme. Die Zellen, die für die Warteschlange empfangen wurden, nachdem die Klassenzahl Region 1 erreicht hat, können jedoch Gegenstand einer solchen Maßnahme sein, bis die Zahl der Zellen in der Warteschlange unter B abfällt (aufgrund der Übertragung von Zellen).
  • In 20 ist die Obergrenze jeder Region gleich der Untergrenze der nächsten Region. Somit ist die Obergrenze 6K von Region 0 die Untergrenze von Region 1. Dies ist in 21 anders, wo sich benachbarte Regionen überlappen. Die Überlappungsbereiche sind schraffiert. Die Obergrenze U0 von Region 0 ist höher als die Untergrenze L1 von Region 1; die Obergrenze U1 von Region 1 ist höher als die Untergrenze L2 von Region 2 usw. Die Region-ID ändert sich mit einer Hysterese auf der Basis der Richtungsänderung der Klassenzahl. Wenn beispielsweise die Klassenzahl von Region 0 steigt, dann wird die Region-ID 1, wenn der Klassenzahl U0 erreicht. Wenn die Klassenzahl von Region 1 abnimmt, dann wird die Region-ID 0, wenn die Klassenzahl L1 erreicht. Die Hysterese verhindert, dass die Region-ID, und somit die Schwellenwerte, schwanken, wenn die Klassenzahl um eine Regionsgrenze herum schwankt.
  • 22 illustriert eine Schaltung (Teil von SIF 1420), die zum Ermitteln der Klassenzahl und Region-IDs verwendet wird. Diese Schaltung wird jedes Mal dann aufgerufen, wenn eine Zelle empfangen oder ein Zellenspeicher freigegeben wird. Die CLID-Tabelle 1110 speichert die CLID-Felder von IVCs 210. Tabelle 1110 wird durch die IVC-Nummer indexiert. Die IVC-Nummer ist in 22 als „IVC" dargestellt. Wenn eine Zelle ankommt oder freigegeben wird, dann wird ihre CLID (Klassen-ID) aus der Tabelle 1110 in Register 1114 gelesen. Der Ausgang von Register 1114 wird mit den Eingängen der Klassenzahlentabelle 1120 und der Region-ID-Tabelle 1130 verbunden. Die Tabellen 1120 und 1130 werden durch die Klassen-ID indexiert. Die Klassenzahlentabelle 1120 schreibt die Klassenzahl („CLD") auf die Schaltung 1134. Die Region-ID-Tabelle 1130 schreibt die Region-ID („RID") auf die Schaltung 1140.
  • Die Schaltungen 1140 und 1114 senden jeweils die Region-ID und die Klassen-ID zur Untergrenzentabelle 1150, zur Obergrenzentabelle 1160 bzw. zur Schwellenwerttabelle 1170. Die Tabelle 1150 sendet die Untergrenze der Region zum Komparator 1180. Tabelle 1160 sendet die Obergrenze zum Komparator 1190. Tabelle 1170 sendet die Markierungs-, Verwerfungs- und Warteschlangengrenzschwellenwerte zum Komparator 1196.
  • Die IVC-Nummer „IVC" wird als Index zur Tabelle 1194 gesendet, die die ECNT-Felder von IVC-Strukturen 210 speichert (Anhang 2). Die Ausgangs-ECNT von Tabelle 1194 wird zum Komparator 1196 gesendet. Der Komparator 1196 vergleicht die ECNT mit jedem der drei Schwellenwerte aus Tabelle 1170 und erzeugt Signale, die angeben, ob Schwellenwerte überschritten werden. Diese Signale werden an eine Schaltung angelegt (nicht dargestellt; Teil von SIF 1420), die ermittelt, ob die Zelle verworfen, mit einer Überlastungsanzeige oder ohne eine Überlastungsanzeige übertragen werden soll. Diese Schaltung beinhaltet einen Schaltkomplex von 6 und die EPD-Zustandsmaschine von 23, die nachfolgend beschrieben werden. Diese Schaltung sendet ein Signal zur Schaltung 1134, um anzuzeigen, ob die Zelle empfangen wird und die Klassenzahl inkrementiert werden soll. Die Schaltung 1134 empfängt auch ein Signal (nicht dargestellt), das anzeigt, ob die Zelle aus dem Speicher freigegeben und die Klassenzahl dekrementiert werden soll. Die Schaltung 1134 inkrementiert oder dekrementiert die Klassenzahl entsprechend oder lässt die Klassenzahl unverändert. Der neue Wert der Klassenzahl wird zurück auf seinen Slot in Tabelle 1120 gechrieben und zu den Komparatoren 1180, 1190 gesendet.
  • Jeder der Komparatoren 1180, 1190 empfängt Signale (nicht dargestellt), die anzeigen, ob die Klassenzahl von der Schaltung 1134 inkrementiert oder dekrementiert wurde. Wurde die Klassenzahl dekrementiert und ist kleiner als die Untergrenze, dann sendet der Komparator 1180 ein Signal zur Schaltung 1192, das besagt, dass die Region-ID dekrementiert werden soll. Wurde die Klassenzahl inkrementiert und ist jetzt größer als die Obergrenze, dann sendet der Komparator 1190 ein Signal zur Schaltung 1192, das besagt, dass die Region-ID inkrementiert werden soll. Die Schaltung 1192 signalisiert der Schaltung 1140, ob die Region-ID inkrementiert oder dekrementiert werden oder unverändert bleiben soll. Die Schaltung 1140 ändert die Region-ID bei Bedarf und schreibt sie zurück auf die Tabelle 1130.
  • Early Paket Discard (EPD) Funktion
  • Eine EPD-Zustandsmaschine von 23 ist in der SIF 1420 für jeden Eingangs-VC vorgesehen. Für Normalmodus-IVCs kann EPD gesperrt werden.
  • Die Statusübergänge werden in der nachfolgenden Tabelle 2 beschrieben. Die erste Spalte von Tabelle 2 zeigt Zustandsnummern, die in 23 in einem Kreis stehen.
  • Tabelle 2
    Figure 00240001
  • Wenn sich die Zustandsmaschine im Zustand „Ende verwerfen" befindet, dann wurde ein Teilframe zum Zielort in „Frame empfangen" vor dem Übergang zu „Ende verwerfen" gesendet. In einem Übergang von „Ende verwerfen" zu „ Frame-Anfang" wird die letzte Zelle des Frame zum Zielort gesendet, damit der Zielort den Anfang des nächsten Frame erfassen kann.
  • EPD wird auf einer Pro-IVC-Basis freigegeben oder gesperrt.
  • 6 zeigt Vorgänge, die durchgeführt werden, um zu ermitteln, ob eine eingehende Zelle empfangen oder verworfen werden soll. Die Vorgänge werden von der SIF 1420 durchgeführt, es sei denn, dass etwas anderes angegeben ist. Wenn der Schalterspeicher zum Speichern der Zellen voll ist (Schritt 1270), dann wird die Zelle verworfen (Schritt 1272). Dies erfolgt durch den Schaltercontroller (SWC) 1410 (25) unabhängig von einem Markierungs-, Verwerfungs- oder Warteschlangengrenzschwellenwert. In Schritt 1274 prüft SIF 1420, ob die Klasse der Zelle voll ist, d. h. ob der Klassenzähler die Klassengrenze überschreitet. Wenn ja, dann wird die Zelle ebenfalls verworfen.
  • Wenn die entsprechende IVC-Warteschlange voll ist (Schritt 1276), d. h. wenn die ECNT größer ist als die Warteschlangengrenze des IVC gemäß Ermittlung anhand der Ausgangssignale des Komparators 1196 (22), dann wird die Zelle verworfen.
  • Wenn Speicher, Klasse und IVC-Warteschlange nicht voll sind, dann sind die durchgeführten Maßnahmen vom EPD-Enable-Flag E des IVC abhängig (Anhang 2). Wenn E = 1 ist (EPD enabled; siehe Schritt 1278), wird die Zelle wie folgt verarbeitet.
  • Wenn die EPD-Zustandsmaschine des IVC im Zustand „Rahmen verwerfen" ist (Schritt 1280), dann wird die Zelle verworfen. Wenn der EPD-Zustand „Ende verwerfen" ist (Schritt 1282), dann: a) wird die Zelle empfangen, wenn die Zelle die letzte in einem Frame ist (Schritt 1283); b) wird die Zelle verworfen, wenn die Zelle nicht die letzte in einem Frame ist. Wenn der EPD-Zustand weder „Frame verwerfen" noch „Ende verwerfen" ist, dann sind die durchgeführten Maßnahmen davon abhängig, ob die IVC-Warteschlange fast voll ist (Schritt 1284), d. h., ob die ECNT den Verwerfungsschwellenwert überschreitet. Wird der Verwerfungsschwellenwert nicht überschritten, dann wird die Zelle empfangen, wird der Verwerfungsschwellenwert überschritten, dann wird die Zelle verworfen, wenn der EPD-Zustand „Frame-Anfang" ist (Schritt 1285), und die Zelle wird empfangen, wenn der EPD-Zustand nicht „Frame-Anfang" ist (d. h. wenn der EPD-Zustand „Frame empfangen" ist).
  • Wenn die EPD-Funktion in Schritt 1278 gesperrt ist, dann wird die Zelle nur dann empfangen, wenn: (1) ECNT den Verwerfungsschwellenwert nicht überschreitet (Schritt 1286), oder (2) das CLP-Bit im Eingangsheader der Zelle 0 ist (Schritt 1287).
  • Schalterarchitektur
  • 24 zeigt die Beziehung zwischen Funktionsblöcken und Datenbanken in einer Ausgestaltung des ATM-Schalters. Die Zellendatenbank 1310 beinhaltet die Zellen 104. Die IVC-Datenbank 1320 beinhaltet IVC-Strukturen 210. Die OVC-Datenbank 1330 beinhaltet OVC-Strukturen 220. Der Schalterschaltkomplex beinhaltet Eingangsfunktionsblock 1340, Ausgangsfunktionsblock 1350, Hintergrund-(BG)-Funktionsblock 1360 und Scheduler-Funktionsblock 120. Die Beziehung zwischen den Funktionsblöcken und den Datenbanken ist in der nachfolgenden Tabelle 3 beschrieben.
  • Tabelle 3
    Figure 00260001
  • Ein ATM-Schalter, der mit Pro-VC-Warteschlangenbildung und der Schwellenwert- und Early Packet Discard Funktion arbeitet, ist in 25 illustriert. Der Schaltercontroller (SWC) 1410 ist mit der CPU 1414, den E/A-Ports 1418 und der SIF (Schalterschnittstelle) 1420 verbunden. Die SIF 1420 ist mit dem Interconnect-Bus 1430 verbunden. Der Bus 1430 ist mit einem oder mehreren PVCs (Pro-VC-Controllern) 1440 verbunden. Jeder PVC 1440 ist mit einer jeweiligen SCH- (Scheduler) Schaltung 1450 verbunden. Die Scheduler-Schaltungen 1450 sind Teil des Schedulers 120 (1).
  • In einigen Ausgestaltungen beinhalten die Ports 1418 32 Eingangsports und 32 Ausgangsports. Der Schalter hat zwei PVCs. Ein PVC 1440 handhabt die 16 geradzahligen Ausgangsports, der andere PVC handhabt die 16 ungeradzahligen Ausgangsports.
  • In einigen Ausgestaltungen ist jede der Schaltungen 1410, 1418, 1420, 1430, 1440 und 1450 eine separate integrierte Schaltung.
  • Die Datenstrukturen der Anhänge 1–3 werden wie in 26 gezeigt in Tabellen gespeichert. Insbesondere speichert die SIF 1420 die folgenden Tabellen: ECNT, CLID, WP, OCNT, LINK, CCNT, OVCT. Jeder PVC 1440 speichert die Tabellen CHP/CTP, IVC/NXT, RP, TP. Diese Tabellen werden in Tabelle 4 unten beschrieben.
  • In jedem PVC 1440 speichern die RP-Tabellen Informationen nur für OVCs, die den von dem PVC gehandhabten Ausgangsports entsprechen.
  • Signale von Bus 1430 sind in Tabelle 5 beschrieben.
  • Tabelle 4
    Figure 00270001
  • Tabelle 5 (Signale)
    Figure 00280001
  • Figure 00290001
  • Figure 00300001
  • Wie in Tabelle 4 angedeutet, hat jeder PVC 1440 CHP- und CTP-Zeiger und R-, C- und H-Flags für jeden IVC. Jede Kette 310 enthält die OVCs, die auf den von dem jeweiligen PVC gehandhabten Ausgangsports übertragen. Wenn eine Zelle empfangen wird, dann aktualisiert jeder PVC seine IVC- und OVC-Felder wie oben beschrieben. TP, P und F haben dieselben Werte in jedem PVC 1440.
  • 27 illustriert den Fluss von Daten zwischen Blöcken von 25. SWC 1410 empfängt und überträgt Zellen auf dem Netzwerk über E/A-Ports 1418. SWC 1410 empfängt Marker-Zellen von der CPU 1414. SWC 1410 sendet die Adresse der Zelle in einem Schalterspeicher (nicht dargestellt) und die ID des jeweiligen IVC zur SIF 1420. Die IVC-ID, die hierin auch als die IVC-Nummer bezeichnet wird, ist dieselbe Nummer, die im OVC 220 gespeichert ist (Anhang 3).
  • SIF 1420 verknüpft die Zelle mit der entsprechenden Warteschlange 110 und aktualisiert den ECNT-Zähler.
  • Eine zusätzliche Funktion der SIF 1420, wenn die Verbindung hergestellt oder ein OVC hinzugefügt wird, besteht darin, den neuen Header NewHdr für den neuen OVC zu erzeugen.
  • Wenn die Zelle soeben empfangen wurde, dann überträgt die SIF 1420 die Zelladresse und die IVC-ID zu beiden PVCs 1440. Die PVCs 1440 aktualisieren OVC-Felder und führen die in den 3 und 4 wie oben beschrieben gezeigten Vorgänge durch. Wenn ein OVC bereit wird, wenn die Zelle empfangen wird, dann sendet der jeweilige Background-Job die OVC-ID zum jeweiligen SCH 1450 (der Transfer PVC→SCH). Die OVC-ID dient als Zeiger zum OVC. Für diejenigen OVCs, die aktiv waren, als die Zelle empfangen wurde, erfolgt der Transfer PVC→SCH nicht.
  • Jedes Mal, wenn SCH 1450 eine Zelle auf einem OVC zur Übertragung plant, sendet der SCH 1450 die OVC-ID zum jeweiligen PVC 1440, wie in der unteren Hälfte von 25 dargestellt ist. Der PVC 1440 aktualisiert die OVC-Felder wie in 5 gezeigt und sendet die OVC-ID und die Zelladresse zur SIF 1420. Der PVC 1440 vergleicht den IVC TP mit der Zelladresse (Schritt 850 in 5), um zu ermitteln, ob der OVC leer wird. Wenn der OVC leer wird, dann signalisiert der PVC 1440 einem jeweiligen SCH 1450, dass der OVC leer ist, und verknüpft den OVC mit der jeweiligen Kette 310.
  • Die SIF 1420 entfernt die Zelle ggf. aus der jeweiligen Warteschlange 110, aktualisiert die ECNT und sendet die Zelladresse und den neuen Header zum Schaltercontroller 1410. Der Controller 1410 leitet die Zelle auf einem der Ports 1418 oder zur CPU 1414 weiter.
  • Timing
  • Der gesamte Vorgang erfolgt in mehreren Schaltzyklen wie in 28 gezeigt. Der Background-(BG)-Job kann mehr als einen Schaltzyklus erfordern.
  • In der Eingangsstufe durchläuft die eingehende Zelle mehrere Verarbeitungsstufen wie in 29 gezeigt. In 29 sind LUT und ITT Tabellen, die in der US-Patentanmeldung mit der Seriennummer 08/657,835, „Cell Routing in ATM Networks", eingereicht am 31. Mai 1996 von Alex Joffe und hierin durch Bezugnahme eingeschlossen, beschrieben.
  • Funktion und Ein-/Ausgabeparameter jeder Verarbeitungsstufe werden in der nachfolgenden Tabelle 6 beschrieben:
  • Tabelle 6
    Figure 00310001
  • Die Eingangsstufenpipeline ist in 30 dargestellt. In 30 bedeutet „wr" Schreiben und „rd" Lesen.
  • Der Schreibzeiger (WP) wird in der Ausgangsstufe des Schalters zurückgeschrieben.
  • In der Ausgangsstufe durchläuft die abgehende Zelle mehrere Verarbeitungsstufen wie in 31 gezeigt. Funktion und Ein-/Ausgabeparameter jeder Verarbeitungsstufe werden in der folgenden Tabelle 7 beschrieben:
  • Tabelle 7
    Figure 00320001
  • Die Ausgangsstufenpipeline ist in 32 dargestellt. ATTR steht für Zellattribute (siehe oben erwähnte US-Patentanmeldung 08/657,835). „STACK" ist ein Stapel von freien Zellenpuffern in einem Gemeinschaftsspeicher.
  • BEFEHLE
  • Betrieb des Schreibsteuerspeichers
  • Dieser Betrieb (33) wird von der CPU 1414 zum Schreiben von Daten auf SIF 1420 oder einem PVC 1440 eingeleitet. SIF 1420 und PVC 1440 haben jeweils einen Steuerspeicher zum Speichern von Daten wie z. B. Daten in den Tabellen von 26. In 33 sind die Steuerspeicher 1510, 1520 von SIF 1420 und einem PVC 1440 außerhalb von SIF und PVC dargestellt, um die Operationen des Schreibsteuerspeichers besser zu illustrieren.
  • Eine Operation des Schreibsteuerspeichers beinhaltet die folgenden Schritte (die einzelnen Schrittnummern stehen in 33 jeweils in einem Kreis):
    • 1. CPU 1414 schreibt Register R0 und CMR in SWC 1410. Diese Register geben den Befehl wie nachfolgend beschrieben vor. Der Befehl lautet „Write_Ext_Table_Reg", was eine Form von „Access Ext_Table_Reg" mit R = 0 ist, wie unten beschrieben wird.
    • 2. SWC 1410 überträgt den Inhalt der Register CMR und R0 durch den Bus ttd[31:0] über zwei Taktzyklen zur SIF 1420.
    • 3. SIF 1420 überträgt den Inhalt der Register CMR und R0 während der zwei Taktzyklen mit verketteten vc_bus[15:0] und cp_bus[15:0] zum jeweiligen PVC 1440.4
    • 4. SIF 1420 und PVC 1440 decodieren den Befehl und schreiben die Daten auf vorgegebene Positionen in ihren Steuerspeichern.
  • Operation SIF-Steuerspeicher lesen
  • Diese Operation beinhaltet die folgenden Schritte (Schrittnummer erscheint in Quadraten in 33):
    • 1. CPU 1414 schreibt Register R0 und CMR in SWC 1410. Der Befehl lautet in diesem Fall „Read_Ext_Table_Reg", was „Access Ext_Table_Reg" mit R = 1 ist, wie nachfolgend beschrieben wird.
    • 2. SWC 1410 überträgt den Inhalt der Register CMR und R0 durch Bus ttd[31:0] über zwei Taktzyklen zur SIF 1420.
    • 3. SIF 1420 liest Daten aus ihrem Steuerspeicher 1510.
    • 4. Das Ergebnis wird zum Register R0 von SWC 1410 übertragen.
    • 5. CPU 1414 liest das Ergebnis aus dem Register R0.
  • Operation PVC-Steuerspeicher lesen
  • Diese Operation beinhaltet die folgenden Schritte (Schrittnummern sind in 33 in Fünfecken dargestellt):
    • 1. CPU 1414 liest Register R0 und CMR in SWC 1410. Der Befehl lautet in diesem Fall „Read_Ext_Table_Reg", was „Access Ext_Table_Reg" mit R = 1 ist, wie nachfolgend beschrieben wird.
    • 2. SWC 1410 überträgt den Inhalt der Register CMR und R0 durch den Bus ttd[31:0] über zwei Taktzyklen zur SIF 1420.
    • 3. SIF 1420 überträgt den Inhalt von Register CMR zum jeweiligen PVC 1440 mit verkettetem vc_bus[15:0] und cp_bus[15:0].
    • 4. PVC 1440 überträgt sein Ergebnis zur SIF 1420.
    • 5. Das Ergebnis wird von der SIF 1420 zum Register R0 von SWC 1410 übertragen.
    • 6. CPU 1414 liest das Ergebnis aus dem Register R0.
  • Operation Verbindung einrichten
  • Zum Einrichten einer Verbindung werden mehrere Parameter wie in 34 illustriert programmiert. Die Werte in den PVC- und SIF-Tabellen nach der Verbindungseinrichtung sind in der folgenden Tabelle 8 angegeben (siehe auch Anhang 4):
  • Tabelle 8
    Figure 00340001
  • Die Verbindung wird mit den folgenden Schritten eingerichtet:
    • Schritt 1: Den neuen Header mit dem Befehl „Write_Ext_Table_Reg" einrichten.
    • Schritt 2: Den Befehl „PVC Setup Connection" (nachfolgend beschrieben) ausgeben.
    • Schritt 3: Den Schaltercontroller-Befehl „Setup Connection" ausgeben, der in „ATMS2003B Switch Controller 1 ,WHITE'" (MMC Networks, Inc. of California, Dokument MMC 95-0003, 1995) beschrieben ist, hiermit durch Bezugnahme eingeschlossen, auf Seite 18.
  • Verbindung hinzufügen
  • Zum Hinzufügen einer Partei zu einer Multicast-Verbindung werden die folgenden Parameter eingestellt: Tabelle 9
    Figure 00350001
  • Hinweis
    das A-Bit ist 0, wenn P gleich 0 ist.
  • Die Verbindung wird in den folgenden beiden Stufen hinzugefügt:
    • Schritt 1: Den New Header mit dem Befehl „Write_Ext_Table_Reg" einrichten.
    • Schritt 2: Den Befehl „PVC Add Connection" ausgeben.
  • Befehlsformat
  • Dieser Abschnitt beschreibt die SWC-Register CMR und R0 für verschiedene Befehle.
  • Auf Ext_Table_reg zugreifen
  • Siehe 35. In 35 ist R = 1 für Lesen, R = 0 für Schreiben. DID (Device-ID) ist in Tabelle 10 unten angegeben. TID (Tabellen-ID) ist in Tabelle 11 unten angegeben.
  • Tabelle 10
    Figure 00360001
  • Tabelle 11
    Figure 00360002
  • In 35 ist „Adresse" die Adresse in einer Tabelle oder in internen Registern, die gelesen oder beschrieben werden. „Daten" sind geschriebene Daten.
  • Warteschlangenmarker-Zelle (36)
  • Dieser Befehl wird in einer Verbindungsentfernungsoperation verwendet. Er ist einem Warteschlangenzelle-Befehl ähnlich, der in „ATMS2003B Switch Controller 1 ,WHITE'" (oben angegeben) auf Seite 19 beschrieben ist.
  • In 36:
    IVC IVC-ID
    OCNT Neue Ausgangszellenzahl
    Bits CMR [25] und CMR [24] speichern OCNT [9] und OCNT [8].
    PTI PTI-Feld des Headers der Zelle (sollte letzte Zelle im Frame sein, d. h. PTI-Bit 1 sollte gesetzt sein).
    L Letzte Zelle Sollte gesetzt sein, wenn Marker-Zelle die letzte Zelle in der IVC-Warteschlange sein soll.
    C CLP-Bit
    GFC GFC-Feld des Headers der Zelle
    PVC Setup Verbindung (Fig. 37)
    IVC IVC-ID
    OVC OVC-ID
    F Frame-Modus
    H Halten-Steuerbit
    E EPD Enable
    I EFCI Enable
    CLID Klassen-ID
    DID Device-ID (siehe Tabelle 10 oben).
    PVC Add Connection (Fig. 38)
    IVC IVC-ID
    OVC OVC-ID
    DID Device-ID wie in Tabelle 10 oben.
  • PROGRAMMIERMODELL
  • Tabellen
  • Das SIF-Tabellenformat ist in 39 dargestellt. Das PVC-Tabellenformat ist in 40 dargestellt.
  • Interne SIF-Register
  • Interne SIF-Register sind in 41 dargestellt und werden unmittelbar nachfolgend beschrieben.
  • GCR – Allgemeines Steuerregister (42)
  • Dieses Register steuert den Betrieb der Pro-VC-Warteschlangenbildung.
    PM4 (8 Bits) Port-Modus – 4 kombinierte Ports Wenn PM4 [i] gesetzt ist, dann ist der kombinierte Port i im 622 Mbit/sec Betrieb. Kombinierter Port i => Port(i), Port(i + 8), Port(i + 16), Port(i + 24)
    PM8 (4 Bits) Port-Modus – 8 kombinierte Ports Wenn PM8 [i] gesetzt ist, dann ist der kombinierte Port i im 1,2 Gbit/sec Betrieb. Der kombinierte Port i => P(i), P(i + 4), P(i + 8), P(i + 12), P(i + 16), P(i + 20), P(i + 24), P(i + 28)
    R (1 Bit) Empfang Freigabe
    T (1 Bit) Senden Freigabe
  • VER_i – Versionsregister (43)
  • SIF 1420 wird in 3 Chips SIF_1, SIF_2, SIF_3 ausgeführt. Demgemäß gibt es drei VER_i Register, eines pro SIF-Device (VER_1 entspricht SIF_1 usw.).
    VER (16 Bit) Versionsnummer
  • CLC – Klassenzahl (44)
  • Es gibt 16 Klassenzählerregister (eins für jede Klasse) in der SIF 1420. Diese Zähler werden nach einer Rückstellung genullt und nach jedem Empfang einer Zelle in der Klasse inkrementiert. Ein Klassenzähler wird dekrementiert, wenn eine Zelle in der Klasse übertragen und zum freien Zellenpufferstapel freigegeben wird. Der Benutzer kann diese Register während des Betriebs jederzeit ablesen. Schreiben auf die Register wird nur für Testzwecke unterstützt und sollte beim normalen Betrieb nicht erfolgen.
  • Die RID-Felder von CLC-Registern bilden eine Region-ID-Tabelle 1130 von 22. Die CLC-Felder bilden Tabelle 1120 von 22.
  • Jedes RID-Feld wird nach dem Rückstellen genullt und jedes Mal aktualisiert, wenn die Klassenzahl eine Regionsgrenze überschreitet.
    CLC (16 Bit) Klassenzahl (zunächst 0)
    RID (3 Bit) Region-ID (0 bis 7)
  • RTH – Regionsschwellenwertregister (45)
  • Es gibt 128 Regionsschwellenwertregister (8 für jede Klasse, 1 Register für jede Region) in der SIF 1420. Diese Register bilden eine Schwellenwerttabelle 1170 von 22. Diese Register sollten vom Benutzer initialisiert werden.
    QLM (10 Bit) Warteschlangengrenze
    DTH (10 Bit) Verwerfungsschwellenwert
    MTH (10 Bit) Markierungsschwellenwert
  • Alle Schwellenwerte haben eine Granularität von 16 Zellen.
  • Die maximale Größe von Warteschlange 110 ist 16K – 1 Zellen, was ein 14-Bit-Raum ist. Die vier LSBs jedes Schwellenwertes sind 1111. Daher beträgt der Mindestwert für jeden Schwellenwert fünfzehn (00_0000_0000_1111 binär), und der Höchstwert ist 16K-1 (11_1111_1111_1111 binär).
  • RLM – Regionsgrenzregister (46)
  • Es gibt 128 Regionsgrenzregister (8 für jede Klasse, 1 Register für jede Region) in der SIF 1420. Diese Register bilden Tabellen 1150, 1160 in 22. Diese Register sollten vom Benutzer initialisiert werden.
    RUL (10 Bit) Regionsobergrenze (Tabelle 1160)
    RLL (10 Bit) Regionsuntergrenze (Tabelle 1150)
  • Beide Grenzen haben eine Granularität von 64 Zellen. Die maximale Klassengröße ist 64K-1 Zellen, was ein 16-Bit-Raum ist. Die LSBs jeder Obergrenze sind 111111, und alle LSBs jeder Untergrenze sind Nullen. Daher ist die minimale Obergrenze 63 (00_0000_0000_111111 binär) und die maximale Obergrenze ist 64K-1 (11_1111_1111_111111 binär). Die minimale Untergrenze ist null (00_0000_0000_000000 binär), die maximale Untergrenze ist 64K-64 (11_1111_1111_000000 binär).
  • Interne PVC-Register (47) werden im Folgenden beschrieben.
  • VER – Versionsregister (48)
    • VER (16 Bit) Versionsnummer
  • HBL – Kopf der Hintergrundliste (49)
    • HBL (16 Bit) Kopf der Hintergrundliste
  • TBL – Ende der Hintergrundliste (50)
    • TBL (16 Bit) Ende der Hintergrundliste
  • OSP – Ausgangs-VC-Stapelzeiger (51)
    • OSP (16 Bit) Ausgangs-VC-Stapelzeiger
  • In einigen Ausgestaltungen sind SIF 1420, jeder PVC 1440 und jeder SCH 1450 (25) eine separate integrierte Schaltung (separater Chip). Eine solche Konstruktion ermöglicht es, Pro-VC-Warteschlangenbildung als zusätzliche Funktion zu einem existierenden Schaltercontroller 1410 bereitzustellen. In einigen Ausgestaltungen bieten die SIF-, PVC- und SCH-Chips die folgenden Leistungsmerkmale:
    • 1. Bis zu insgesamt 64K Eingangs-VCs
    • 2. Bis zu insgesamt 128K (64*2) Ausgangs-VCs (jeder Block von 16 Ports kann bis zu 64K Ausgangs-VCs haben)
    • 3. Jeder Eingangs-VC kann bis zu 16K Zellen haben.
    • 4. Jeder Eingangs-VC kann zu einer der 16 Klassen gehören.
    • 5. Anzeige des Klassenfüllezustands für jede Klasse
    • 6. Bis zu 255 Ausgangs-VCs können mit einem Eingangs-VC assoziiert werden (Multicast). Mehrere solcher OVCs können zum selben Ausgangsport gehören.
    • 7. Port 32 (CPU-Port, von PVC mit geradzahligen Ports gehandhabt) hat seine eigenen OVCs. Für diese OVCs wird kein neuer Header erzeugt. Stattdessen erhält die CPU die IVC-ID.
    • 8. Einrichten einer neuen Verbindung in drei Zellenzeiten (drei Schaltzyklen). Hinzufügen einer Partei zu einer Multicast-Verbindung in zwei Zellenzeiten.
  • Die oben beschriebenen Ausgestaltungen illustrieren die Erfindung, beschränken sie aber nicht. Die Erfindung ist nicht auf einen bestimmten Schaltkomplex, auf bestimmte Signale, Datenstrukturen, die Zahl von Warteschlangen oder Schwellenwerten oder Werte von Parametern beschränkt. Weitere Ausgestaltungen und Variationen liegen im Umfang der Erfindung gemäß Definition durch die beiliegenden Ansprüche.
  • ANHANG 1
  • Datenzelle
  • Zusätzlich zur Zellennutzlast und Attributen hat der ATM-Schalter die folgenden Datenfelder für jede Zelle:
    NXT – (18 Bit) Zeiger auf nächste Zelle. Dient zum Verknüpfen von Zellen miteinander.
    CCNT – (10 Bit) Kopienzähler
    FLGS – Zellenflags mit: L – nächste Zelle (NXT zeigt darauf) ist die letzte Zelle in einem Frame M – nächste Zelle (NXT zeigt darauf) ist eine Marker-Zelle
  • ANHANG 2
  • Die IVC-Datenstruktur hat die folgenden Felder:
    WP – (18 Bit) Schreibzeiger. Die Adresse der letzten Zelle in der IVC-Warteschlange.
    TP – (18 Bit) Endezeiger. Die Adresse der letzten Zelle in der IVC-Warteschlange (Normalmodus) oder die letzte Zelle im letzten Vollframe in der IVC-Warteschlange (FBOM).
    CHP- (16 Bit) Kettenkopfzeiger. Zeiger auf ersten Ausgangs-VC in der Kette.
    CTP – (16 Bit) Kettenendezeiger. Zeiger auf letzten Ausgangs-VC in der Kette.
    ECNT – (14 Bit) Eintragszahl. Die Zahl der Zellen in der Warteschlange für diesen IVC.
    OCNT- (10 Bit) Ausgangszahl. Die Zahl der Ausgangs-VCs, die zu diesem IVC gehören.
    CLID – (4 Bit) Klassen-ID
    FLGS – IVC-Status und Steuerflags wie z. B.:
    F – Frame-Modus (0 – normal; 1 – FBOM)
    C – Kette ist bereit (0 – leer; 1 – bereit)
    R – Lesezeiger RP des ersten (Kopf-) OVC in der Kette des IVC ist gültig (0 – nicht gültig; 1 – gültig)
    P – Teilframe (0 – Vollframe/leer; 1 – Teilframe)
    EST – EPD-Zustand (2 Bit)
    00 – Frame-Anfang
    01 – Frame empfangen
    10 – Frame verwerfen
    11 – Ende verwerfen
    E – EPD Enable (0 – Sperren, 1 – Freigeben)
    I – EFCI-Marking Enable (0 – Sperren, 1 – Freigabe)
    N – Überlastungsavisierung
    M – Marker-Bit (gesetzt, wenn Marker-Zelle mit der Warteschlange verknüpft ist, zurückgesetzt, wenn die Marker-Zelle entfernt wird)
    H – Halten-Bit (verhindert, wenn gesetzt, den Kettentransfer zur BG-Liste)
  • ANHANG 3
  • Die OVC-Datenstruktur hat die folgenden Felder:
    RP – (18 Bit) Lesezeiger. Die Adresse der nächsten Zelle zum Übertragen auf dem OVC.
    NewHdr – (28 Bit) Neuer Zellen-Header.
    NXT – (16 Bit) Nächster OVC-Zeiger. Dient zum Verknüpfen von OVCs miteinander.
    IVC – (16 Bit) Eingangs-VC. Nummer des Stamm-IVC.
    FLGS – OVC-Status und Steuerflags wie z. B.:
    A – OVC (für Hinzufügen von Multicast-Partei)
    0 – normal, 1 hinzugefügt
    D – Verbindung-fallenlassen-Flag
    R – Lesezeiger ist gültig für OVC, auf den NXT des derzeitigen OVC zeigt. 0 – nicht gültig, 1 – gültig.
    L – Lesezeiger zeigt auf die letzte Zelle eines Frame.
    M – Lesezeiger zeigt auf eine Marker-Zelle.
    V – VP-Verbindung-Flag (0 – VC; 1 – VP)
  • ANHANG 4
  • Einrichten einer Verbindung
    • 1. IVC eingerichtet
    • 1a. OCNT = 1 (für einen einzelnen OVC)
    • 1b. ECNT = 0 (0 Zellen in der Warteschlange)
    • 1c. CLID = Klassen-ID (0 bis 15)
    • 1d. CHP, CTP = OVC-Nummer (Zeiger auf OVC-Struktur)
    • 1e. F = Frame-Modus (1 bedeutet FBOM, 0 bedeutet Normalmodus)
    • 1f. C = 1
    • 1g. R = 0
    • 1h. P = 0
    • 1i. EST = 00 („Frame-Anfang")
    • 1j. E = geeigneter Wert (von CPU vorgegeben)
    • 1k. I = geeigneter Wert (von CPU vorgegeben)
    • 1l. H = geeigneter Wert
    • 1m. M = 0
    • 2. OVC ist eingerichtet
    • 2a. NewHdr = neuer Header VPI/VCI
    • 2b. IVC = Zeiger auf IVC
    • 2c. A = 0
    • 2d. D = 0
    • 2e. V = 0, wenn VC-Verbindung, 1, wenn VP-Verbindung
  • ANHANG 5
  • Hinzufügen einer Partei zu einer Verbindung
    • 1. In IVC:
    • 1a. CHP = Zeiger auf neuen OVC
    • 1b. CTP: wenn IVCs C == 0 (keine Kette), dann CTP = Zeiger auf neuen OVC, sonst CTP ist unverändert
    • 1c. OCNT inkrementieren
    • 1d. C = 1
    • 1e. R = 0
    • 2. In neuem OVC:
    • 2a. NewHdr = neuer Header
    • 2b. IVC = Zeiger auf IVC
    • 2c. A = 1 wenn P == 1, A = 0 wenn P == 0
    • 2d. D = 0
    • 2e. V = 0, wenn VC-Verbindung, 1 wenn VP-Verbindung
    • 2f. NXT = vorheriger Wert von CHP
  • ANHANG 6
  • Empfangen einer neuen Zelle
    • 1. In Zellen:
    • 1a. Wenn die neue Zelle nicht die einzige Zelle in der Warteschlange ist, dann: wenn FBOM und dies ist die letzte Zelle im Frame, L = 1 in der vorherigen Zelle sonst L = 0 in der vorherigen Zelle.
    • 1b. CCNT = OCNT des IVC
    • 2. In IVC:
    • 2a. WP = Zeiger auf neue Zelle
    • 2b. ECNT inkrementieren
    • 2c. Wenn F == 1 (FBOM), dann
    • 2c-1. Wenn L == 1, dann P = 0 sonst, wenn P == 1, dann Schritte 2d–2e überspringen, sonst
    • 2c-2. P = 1; Schritte 2d–2e übersppingen
    • 2d. Wenn F == 0 (nicht FBOM), oder wenn F == 1 und Zelle die letzte in einem Frame ist, dann TP = Zeiger auf Zelle. Ansonsten bleibt TP unverändert.
    • 2e. Wenn C == 1 und H == 0, dann
    • 2e-1. C = 0
    • 2e-2. Bewege IVC-Kette zu Hintergrundliste
    • 3. In OVC:
    • 3a. Wenn IVCs C == 1 und IVCs R == 0, dann
    • 3a-1. IVCs R = 1
    • 3a-2. RP[CHP] = Zeiger auf Zelle Setze L[CHP], M[CHP] auf geeignete Werte

Claims (4)

  1. ATM-Schalter, der Folgendes umfasst: eine Schaltung zum Erzeugen einer Mehrzahl von Klassen von Warteschlangen (110) für ATM-Zellen (104); eine Schaltung (1110) zum Erzeugen einer Klassen-ID, die die Klasse identifiziert, die die Warteschlange für eine eingehende Zelle enthält; eine Klassenzähltabelle (1120) zum Speichern einer Klassenzahl für jede Klasse, wobei die Klassenzahl eine aktuelle Anzahl von Zellen in jeder Klasse ist, und zum Bereitstellen einer Klassenzahl als Reaktion auf eine Klassen-ID ist; eine Regions-ID-Tabelle (1130) zum Speichern einer aktuellen Regions-ID für jede Klasse, wobei der Bereich der möglichen Anzahlen von Zellen in jeder Klasse in Regionen unterteilt ist und die Regions-ID für jede Klasse die Region identifiziert, die die aktuelle Anzahl von Zellen in der Klasse enthält, wobei die Regions-ID-Tabelle zum Bereitstellen einer Regions-ID als Reaktion auf eine Klassen-ID dient; eine oder mehrere Grenztabellen (1150, 1160) zum Speichern von Ober- und Untergrenzen für jede Region jeder Klasse und zum Bereitstellen der Ober- und Untergrenzen als Reaktion auf eine Klassen-ID und eine Regions-ID; eine Schaltung (1180, 1190, 1192, 1140) zum Vergleichen einer Klassenzahl mit der Ober- und der Untergrenze und zum Ändern der jeweiligen Regions-ID, wenn die Klassenzahl anzeigt, dass die Regions-ID geändert werden soll; eine Schwellenwerttabelle (1170) zum Speichern von einem oder mehreren Schwellenwerten für jede Klasse und jede Region und zum Bereitstellen der ein oder mehreren Schwellenwerte als Reaktion auf eine Klassen-ID und eine Regions-ID; und eine Schaltung (1196) zum Vergleichen der ein oder mehreren Schwellenwerte mit einer Anzahl von Zellen in einer Warteschlange, für die eine Zelle empfangen wird, und zum Erzeugen eines Signals, das anzeigt, welcher der Schwellenwerte ggf. von der Anzahl von Zellen in der genannten Warteschlange überschritten wird.
  2. Schalter nach Anspruch 1, wobei die Schaltung zum Erzeugen einer Mehrzahl von Klassen von Warteschlangen für ATM-Zellen zum Erzeugen einer separaten Warteschlange für jeden virtuellen Eingangskanal dient.
  3. Verfahren zum Verarbeiten von Zellen (104) in einem ATM-Schalter, umfassend die folgenden Schritte: Erzeugen einer Mehrzahl von Klassen von Warteschlangen (110) für ATM-Zellen (104); Erzeugen einer Klassen-ID, die die Klasse identifiziert, die die Warteschlange für eine eingehende Zelle enthält; Speichern einer aktuellen Anzahl von Zellen in jeder Klasse in einer Klassenzähltabelle (1120) und Bereitstellen der Klassenzahl als Reaktion auf die Klassen-ID; Speichern einer aktuellen Regions-ID für jede Klasse in einer Regions-ID-Tabelle (1130), wobei der Bereich der möglichen Anzahlen von Zellen in jeder Klasse in Regionen unterteilt ist und die Regions-ID für jede Klasse die Region identifiziert, die die aktuelle Anzahl von Zellen in der Klasse enthält, wobei die Regions-ID-Tabelle zum Bereitstellen der Regions-ID als Reaktion auf die Klassen-ID der Zelle dient; eine oder mehrere Grenztabellen (1150, 1160) zum Speichern von Ober- und Untergrenzen für jede Region jeder Klasse und zum Bereitstellen der Ober- und Untergrenzen als Reaktion auf die Klassen-ID und die Regions-ID der eingehenden Zelle; Vergleichen einer Klassenzahl mit der Ober- und der Untergrenze und Ändern der jeweiligen Regions-ID, wenn die Klassenzahl anzeigt, dass die Regions-ID geändert werden soll; Speichern von einem oder mehreren Schwellenwerten für jede Klasse und jede Region in einer Schwellenwerttabelle (1170) und Bereitstellen der ein oder mehreren Schwellenwerte als Reaktion auf die Klassen-ID und die Regions-ID der eingehenden Zelle; und Vergleichen der ein oder mehreren Schwellenwerte mit einer Anzahl von Zellen in der Warteschlange, für die die Zelle empfangen wird, und Erzeugen eines Signals, das anzeigt, welcher der Schwellenwerte ggf. von der Anzahl von Zellen in der genannten Warteschlange überschritten wird.
  4. Verfahren nach Anspruch 3, wobei das Erzeugen einer Mehrzahl von Klassen von Warteschlangen für ATM-Zellen das Erzeugen einer separaten Warteschlange für jeden virtuellen Eingangskanal umfasst.
DE69731606T 1996-08-30 1997-08-28 Anlage und verfahren zur änderung von schwellen für überlastkontrolle in atm-vermittlungsstellen Expired - Lifetime DE69731606T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US706103 1996-08-30
US08/706,103 US5901147A (en) 1996-08-30 1996-08-30 Apparatus and methods to change thresholds to control congestion in ATM switches
PCT/US1997/014820 WO1998009475A1 (en) 1996-08-30 1997-08-28 Apparatus and methods to change thresholds to control congestion in atm switches

Publications (2)

Publication Number Publication Date
DE69731606D1 DE69731606D1 (de) 2004-12-23
DE69731606T2 true DE69731606T2 (de) 2005-04-07

Family

ID=24836235

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69731606T Expired - Lifetime DE69731606T2 (de) 1996-08-30 1997-08-28 Anlage und verfahren zur änderung von schwellen für überlastkontrolle in atm-vermittlungsstellen

Country Status (5)

Country Link
US (1) US5901147A (de)
EP (1) EP0864244B1 (de)
JP (1) JPH11502397A (de)
DE (1) DE69731606T2 (de)
WO (1) WO1998009475A1 (de)

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2308959A (en) * 1995-12-29 1997-07-09 Ericsson Telefon Ab L M Data switching apparatus with fair queuing
US6034945A (en) 1996-05-15 2000-03-07 Cisco Technology, Inc. Method and apparatus for per traffic flow buffer management
US6185630B1 (en) * 1997-02-14 2001-02-06 Advanced Micro Devices, Inc. Device initializing system with programmable array logic configured to cause non-volatile memory to output address and data information to the device in a prescribed sequence
US6430191B1 (en) * 1997-06-30 2002-08-06 Cisco Technology, Inc. Multi-stage queuing discipline
US6487202B1 (en) 1997-06-30 2002-11-26 Cisco Technology, Inc. Method and apparatus for maximizing memory throughput
US6201813B1 (en) 1997-06-30 2001-03-13 Cisco Technology, Inc. Method and apparatus for using ATM queues for segmentation and reassembly of data frames
US6526060B1 (en) 1997-12-05 2003-02-25 Cisco Technology, Inc. Dynamic rate-based, weighted fair scheduler with explicit rate feedback option
US6178159B1 (en) * 1998-03-02 2001-01-23 Lucent Technologies Inc. Available bit rate flow control algorithms for ATM networks
EP0961441A1 (de) * 1998-05-29 1999-12-01 Siemens Aktiengesellschaft Verfahren zum Entfernen von ATM-Zellen aus einer ATM-Kommunikationseinrichtung
ES2291019T3 (es) * 1998-05-29 2008-02-16 Siemens Aktiengesellschaft Procedimiento para eliminar celdas atm de un equipo de comunicaciones atm.
US6580721B1 (en) * 1998-08-11 2003-06-17 Nortel Networks Limited Routing and rate control in a universal transfer mode network
US6430153B1 (en) 1998-09-04 2002-08-06 Cisco Technology, Inc. Trunk delay simulator
US6829218B1 (en) 1998-09-15 2004-12-07 Lucent Technologies Inc. High speed weighted fair queuing system for ATM switches
US6661802B1 (en) 1998-10-27 2003-12-09 Fujitsu Network Communications, Inc. Congestion management
CA2279728A1 (en) 1999-08-06 2001-02-06 Spacebridge Networks Corporation Soft, prioritized early packet discard (spepd) system
US6519461B1 (en) 1999-10-29 2003-02-11 Telefonaktiebolaget Lm Ericsson (Publ) Channel-type switching from a common channel to a dedicated channel based on common channel load
AU774690B2 (en) * 1999-11-17 2004-07-01 Telefonaktiebolaget Lm Ericsson (Publ) Acceleration dependent channel switching in mobile telecommunications
US6724776B1 (en) * 1999-11-23 2004-04-20 International Business Machines Corporation Method and system for providing optimal discard fraction
US6771652B1 (en) 1999-11-23 2004-08-03 International Business Machines Corporation Method and system for controlling transmission of packets in computer networks
US6594241B1 (en) 1999-12-08 2003-07-15 Telefonaktiebolaget Lm Ericsson (Publ) Channel-type switching control
JP2001223742A (ja) * 1999-12-22 2001-08-17 Alcatel Usa Sourcing Lp 輻輳の場合におけるセルバッファ保護の方法および装置
US6775292B1 (en) 2000-01-24 2004-08-10 Cisco Technology, Inc. Method for servicing of multiple queues carrying voice over virtual circuits based on history
US6954429B2 (en) * 2000-04-05 2005-10-11 Dyband Corporation Bandwidth control system
US6657962B1 (en) 2000-04-10 2003-12-02 International Business Machines Corporation Method and system for managing congestion in a network
US7142558B1 (en) 2000-04-17 2006-11-28 Cisco Technology, Inc. Dynamic queuing control for variable throughput communication channels
US6829482B2 (en) 2000-05-16 2004-12-07 Telefonaktiebolaget Lm Ericsson (Publ) Switching from dedicated to common channels when radio resources are controlled by drift radio network
US20020018474A1 (en) * 2000-06-01 2002-02-14 Seabridge Ltd. Efficient packet transmission over ATM
US6909722B1 (en) * 2000-07-07 2005-06-21 Qualcomm, Incorporated Method and apparatus for proportionately multiplexing data streams onto one data stream
US6918111B1 (en) * 2000-10-03 2005-07-12 Sun Microsystems, Inc. System and method for scheduling instructions to maximize outstanding prefetches and loads
US6947996B2 (en) * 2001-01-29 2005-09-20 Seabridge, Ltd. Method and system for traffic control
US6990115B2 (en) * 2001-02-26 2006-01-24 Seabridge Ltd. Queue control method and system
US6950396B2 (en) * 2001-03-20 2005-09-27 Seabridge Ltd. Traffic control method and system
EP1249972A1 (de) * 2001-04-09 2002-10-16 Telefonaktiebolaget L M Ericsson (Publ) Verfahren zum Steuern eines Warteschlangenpuffers
US7177279B2 (en) * 2001-04-24 2007-02-13 Agere Systems Inc. Buffer management for merging packets of virtual circuits
US7839785B2 (en) * 2001-09-27 2010-11-23 Broadcom Corporation System and method for dropping lower priority packets that are slated for transmission
US7881202B2 (en) * 2002-09-25 2011-02-01 Broadcom Corporation System and method for dropping lower priority packets that are slated for wireless transmission
US7221678B1 (en) 2001-10-01 2007-05-22 Advanced Micro Devices, Inc. Method and apparatus for routing packets
US7295563B2 (en) * 2001-10-01 2007-11-13 Advanced Micro Devices, Inc. Method and apparatus for routing packets that have ordering requirements
US7274692B1 (en) 2001-10-01 2007-09-25 Advanced Micro Devices, Inc. Method and apparatus for routing packets that have multiple destinations
US7035273B1 (en) 2002-02-06 2006-04-25 Marvell International Ltd. Quality of service queueing system for a network switch
US20030195922A1 (en) * 2002-04-10 2003-10-16 Alcatel SNMP trap and inform shaping mechanism
US7209440B1 (en) 2002-05-07 2007-04-24 Marvell International Ltd. Method and apparatus for preventing blocking in a quality of service switch
US7110415B1 (en) 2002-05-17 2006-09-19 Marvell International Ltd. Apparatus and method for dynamically limiting output queue size in a quality of service network
US7161904B2 (en) * 2002-06-04 2007-01-09 Fortinet, Inc. System and method for hierarchical metering in a virtual router based network switch
US6820170B1 (en) 2002-06-24 2004-11-16 Applied Micro Circuits Corporation Context based cache indexing
US7372864B1 (en) 2002-08-01 2008-05-13 Applied Micro Circuits Corporation Reassembly of data fragments in fixed size buffers
US7688736B1 (en) 2003-05-05 2010-03-30 Marvell International Ltd Network switch with quality of service flow control
US7412536B2 (en) * 2003-06-27 2008-08-12 Intel Corporation Method and system for a network node for attachment to switch fabrics
US20040264472A1 (en) * 2003-06-27 2004-12-30 Oliver Neal C. Method and system for open-loop congestion control in a system fabric
US7558890B1 (en) 2003-12-19 2009-07-07 Applied Micro Circuits Corporation Instruction set for programmable queuing
US20070091799A1 (en) * 2003-12-23 2007-04-26 Henning Wiemann Method and device for controlling a queue buffer
CN100405786C (zh) * 2005-12-09 2008-07-23 清华大学 支持多队列的共享缓存动态门限早期丢弃装置
JP4701152B2 (ja) * 2006-10-20 2011-06-15 富士通株式会社 データ中継装置、データ中継方法およびデータ中継プログラム
EP2040422A1 (de) * 2007-09-19 2009-03-25 British Telecommunications Public Limited Company Verfahren und Vorrichtung zur Bereitstellung von Überlastungskennzeichnungen
EP2359544A1 (de) * 2008-11-11 2011-08-24 Telefonaktiebolaget L M Ericsson (publ) Verfahren und einrichtung zur ermöglichung der anzeige von stau in einem telekommunikationsnetz
EP2247044A1 (de) * 2009-04-29 2010-11-03 Alcatel Lucent Paketnetzverarbeitungsknoten und -verfahren
JP5919727B2 (ja) * 2011-10-26 2016-05-18 富士通株式会社 バッファ管理のためのプログラム、中継装置及び制御方法
JP5821705B2 (ja) * 2012-03-02 2015-11-24 日立金属株式会社 ネットワーク中継機器及びパケット転送制御方法
US11275632B2 (en) 2018-09-14 2022-03-15 Advanced Micro Devices, Inc. Broadcast command and response
CN113010173A (zh) 2019-12-19 2021-06-22 超威半导体(上海)有限公司 并行处理中矩阵数据广播的方法
CN113094099A (zh) 2019-12-23 2021-07-09 超威半导体(上海)有限公司 矩阵数据广播架构
US11403221B2 (en) 2020-09-24 2022-08-02 Advanced Micro Devices, Inc. Memory access response merging in a memory hierarchy

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2686844A (en) * 1953-04-13 1954-08-17 Bell Telephone Labor Inc Telephone set
FR2616604B1 (fr) * 1987-06-15 1989-09-22 Lespagnol Albert Equipement de reconstitution et multiplexage de trames d'origines diverses constituees de paquets de longueur fixe en nombre variable
JP2860661B2 (ja) * 1989-03-14 1999-02-24 国際電信電話 株式会社 Atm交換機
US5233606A (en) * 1991-08-02 1993-08-03 At&T Bell Laboratories Arrangement for controlling shared-buffer-memory overflow in a multi-priority environment
DE69129851T2 (de) * 1991-09-13 1999-03-25 Ibm Konfigurierbare gigabit/s Vermittlunganpassungseinrichtung
JPH05207062A (ja) * 1992-01-27 1993-08-13 Nec Corp パケット交換方式
SE515178C2 (sv) * 1992-03-20 2001-06-25 Ericsson Telefon Ab L M Förfaranden och anordningar för prioritering vid bufferthantering i paketnät
US5457687A (en) * 1993-09-02 1995-10-10 Network Equipment Technologies, Inc. Method and apparatus for backward explicit congestion notification (BECN) in an ATM network
JP2639335B2 (ja) * 1993-12-22 1997-08-13 日本電気株式会社 Atm網における輻輳制御方式
GB9401092D0 (en) * 1994-01-21 1994-03-16 Newbridge Networks Corp A network management system
DE69433109D1 (de) * 1994-04-28 2003-10-09 Hewlett Packard Co Mehrfachsendeeinrichtung
FI98774C (fi) * 1994-05-24 1997-08-11 Nokia Telecommunications Oy Menetelmä ja laitteisto liikenteen priorisoimiseksi ATM-verkossa
US5633867A (en) * 1994-07-01 1997-05-27 Digital Equipment Corporation Local memory buffers management for an ATM adapter implementing credit based flow control
IT1266895B1 (it) * 1994-07-26 1997-01-21 Cselt Centro Studi Lab Telecom Procedimento per l'allocazione ottimale delle risorse per il trasporto di flussi informativi a banda variabile su reti in tecnica atm, e nodo
US5528588A (en) * 1994-09-14 1996-06-18 Fore Systems, Inc. Multicast shared memory
US5633859A (en) * 1994-09-16 1997-05-27 The Ohio State University Method and apparatus for congestion management in computer networks using explicit rate indication
DK0705006T3 (da) * 1994-09-28 2000-03-13 Siemens Ag ATM kommunikationssystem til statistisk multipleksering af celler
US5541912A (en) * 1994-10-04 1996-07-30 At&T Corp. Dynamic queue length thresholds in a shared memory ATM switch
US5517495A (en) * 1994-12-06 1996-05-14 At&T Corp. Fair prioritized scheduling in an input-buffered switch
EP0717532A1 (de) * 1994-12-13 1996-06-19 International Business Machines Corporation Dynamische gerechte Warteschlangenbildung zur Unterstützung von bestmöglichem Verkehr in einem ATM netz
US5583863A (en) * 1995-01-31 1996-12-10 Bell Atlantic Network Services, Inc. Full service network using asynchronous transfer mode multiplexing
JP2723071B2 (ja) * 1995-03-31 1998-03-09 日本電気株式会社 Atm−lan接続装置及びatm−lan
US5996019A (en) * 1995-07-19 1999-11-30 Fujitsu Network Communications, Inc. Network link access scheduling using a plurality of prioritized lists containing queue identifiers
US5751951A (en) * 1995-10-30 1998-05-12 Mitsubishi Electric Information Technology Center America, Inc. Network interface
US5689508A (en) * 1995-12-21 1997-11-18 Xerox Corporation Reservation ring mechanism for providing fair queued access in a fast packet switch networks

Also Published As

Publication number Publication date
US5901147A (en) 1999-05-04
WO1998009475A1 (en) 1998-03-05
JPH11502397A (ja) 1999-02-23
EP0864244B1 (de) 2004-11-17
EP0864244A1 (de) 1998-09-16
DE69731606D1 (de) 2004-12-23

Similar Documents

Publication Publication Date Title
DE69731606T2 (de) Anlage und verfahren zur änderung von schwellen für überlastkontrolle in atm-vermittlungsstellen
DE69635880T2 (de) Anlage und Methode zur Übertragung von Paketen, geeignet für eine grosse Anzahl von Eingangstoren
DE69717455T2 (de) Verfahren und anlage zur steuerung von quellengeschwindigkeit in einem atm netzwerk
DE69726223T2 (de) Verkehrsformer mit virtuellen Pfaden mit mehrfachen Warteschlangen
DE69934645T2 (de) Speichereffiziente Leaky-Bucket-Überwachungsvorrichtung zur Verkehrsverwaltung von ATM Datenkommunikationen
DE60036682T2 (de) Maschine zur gewichteten ringförmigen Ablaufsteuerung
DE69936966T2 (de) Kommunikationseinrichtung mit variabler Paketlänge
DE10350504B4 (de) Verfahren und Vorrichtung zum Festlegen bzw. Zuteilen einer verfügbaren Verknüpfungsbandbreite zwischen paketvermittelten Datenflüssen
EP0639014B1 (de) Zugangskontrollverfahren für einen Pufferspeicher sowie Vorrichtung zum Zwischenspeichern von Datenpaketen und Vermittlungsstelle mit einer solchen Vorrichtung
DE69838601T2 (de) Verfahren und Vorrichtung zum Erweitern eines on-chip FIFOs in einem lokalen Speicher
DE19757966A1 (de) ATM-Schalter-Warteschlangensystem
DE60120830T2 (de) Paketvermittlungssystem und Verfahren
DE19507570C2 (de) Verfahren und Schaltungsanordnung zum Weiterleiten von über eine ATM-Kommunikationseinrichtung übertragenen Nachrichtenzellen an eine Abnehmerleitung
DE19531749A1 (de) Verkehrsgestaltungseinrichtung und Paket-Kommunikationsgerät
EP0641099A1 (de) Verfahren und Vorrichtung zum Zwischenspeichern von Datenpaketen sowie Vermittlungsstelle mit einer solchen Vorrichtung
DE19757965A1 (de) Verteiltes Puffersystem für ATM-Schalter
DE69631265T2 (de) Vermittlungssystem
EP0351014B1 (de) Koppelfeld für ein Vermittlungssystem
DE19643584C2 (de) Verfahren und Vorrichtung zur Steuerung von Mehrbelegungsverbindungen
DE4434724C1 (de) Verfahren und Schaltungsanordnung zum Weiterleiten von einer ATM-Kommunikationseinrichtung zugeführten Nachrichtenzellen
DE69835488T2 (de) Anlage zur Kurzzellenmultiplexierung
EP0730361A2 (de) Schaltungsanordnung zur Aufnahme und Weiterleitung von Nachrichtenzellen durch eine ATM-Kommunikationseinrichtung
DE10023037A1 (de) Koppelfeld für ein Fernmeldenetz und Verfahren zur Vermittlung in einem Koppelfeld
EP0576750B1 (de) Modifiziertes Leaky-Bucket-Verfahren
EP0523276B1 (de) Verfahren und Schaltungsanordnung zum Einrichten von virtuellen Verbindungen über ein ATM-Verbindungsleitungsbündel

Legal Events

Date Code Title Description
8364 No opposition during term of opposition