[go: up one dir, main page]

DE69330904T2 - Paketnetz-Schnittstelle - Google Patents

Paketnetz-Schnittstelle

Info

Publication number
DE69330904T2
DE69330904T2 DE69330904T DE69330904T DE69330904T2 DE 69330904 T2 DE69330904 T2 DE 69330904T2 DE 69330904 T DE69330904 T DE 69330904T DE 69330904 T DE69330904 T DE 69330904T DE 69330904 T2 DE69330904 T2 DE 69330904T2
Authority
DE
Germany
Prior art keywords
interface
atm
packet
header
cell
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
DE69330904T
Other languages
English (en)
Other versions
DE69330904D1 (de
Inventor
Vijay P Kumar
Horng-Dar Lin
Jay Henry O'neill
Philippe Oechslin
Edward Joseph Ouellette Iii
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.)
AT&T Corp
Original Assignee
AT&T Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AT&T Corp filed Critical AT&T Corp
Application granted granted Critical
Publication of DE69330904D1 publication Critical patent/DE69330904D1/de
Publication of DE69330904T2 publication Critical patent/DE69330904T2/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
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • H04L49/309Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/50Overload detection or protection within a single switching element
    • H04L49/501Overload detection
    • H04L49/503Policing
    • 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/5619Network Node Interface, e.g. tandem connections, transit switching
    • 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/5652Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly
    • 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/5685Addressing issues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/555Error detection

Landscapes

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

Description

  • Die vorliegende Erfindung betrifft Paket-Netzwerk-Interfaces.
  • Breitband-ISDN-Netze (B-ISDN-Netze) sind digitale Paketnetzwerke, die auf dem Protokoll des asynchronen Transfermodus (ATM) basieren können, das von der CCITT standardisiert wird. Bei ATM werden Daten mit 155 Mb/s oder Vielfachen von 155 Mb/s in Zellen fester Größe aus 53 Byte übertragen. Jede ATM-Zelle umfasst 48 Datenbyte, an die ein 5-Byte-Header angehängt wird. Der Header einer ATM-Zelle umfasst eine Gruppe von Kennungen, darunter eine Kennung für einen virtuellen Pfad (VPI = virtual path identifier) und eine Kennung für einen virtuellen Kanal (VCI = virtual channel identifier), die den Anruf oder die Verbindung (virtuelle Schaltung), zu dem bzw. der die Zelle gehört, eindeutig angeben. Wenn eine ATM-Zelle an einem Eingang einer Vermittlung in einem ATM-Netz ankommt, wird ihr Header, der eine VPI und eine VOI enthält, die den virtuellen Pfad und den virtuellen Kanal darstellen, zu denen die Zelle auf einer Eingangsstrecke der Vermittlung gehört, untersucht, um zu bestimmen, wohin die Zelle geleitet werden soll. Der Header wird außerdem so geändert, dass er eine neue VPI und VCI enthält, die den virtuellen Pfad und den virtuellen Kanal anzeigen, zu denen die Zelle auf einer Ausgangsstrecke der Vermittlung gehören wird.
  • Bestehende integrierte Schaltungschips, die diese Verarbeitung durchführen, werden gewöhnlich Header- Übersetzungseinheiten genannt und führen die beiden folgenden Operationen durch: Header-Modifikation und -Manipulation lokaler Routing-Kennzeichnungen (routing tags). Header- Übersetzungseinheiten modifizieren entweder die Kennung für einen virtuellen Pfad oder die Kennung für einen virtuellen Kanal (VPI/VCI) oder beide in dem ATM-Header. Vorbekannte Header-Übersetzungseinheiten führen in der Regel einen Tabellennachschlag durch, um dies zu erzielen. Genauer gesagt enthalten diese Einheiten einen Direktzugriffsspeicher, der einen neuen Header enthält, der an jeder ATM-Zelle zugefügt werden soll. Ein vorbestimmter Teil des alten Headers einer ATM-Zelle wird verwendet, um den Direktzugriffsspeicher an der Speicherstelle des neuen Headers für die ATM-Zelle zu adressieren. Neben der Bereitstellung eines neuen Headers für jede ATM-Zelle können Header-Übersetzungseinheiten außerdem eine Routing-Kennzeichnung jeder ATM-Zelle zufügen, um zu bewirken, dass eine ATM-Vermittlung die Zelle zu einem entsprechenden Vermittlungsausgang und einer Vermittlungsausgangsstrecke leitet. Die erste Operation wird bei B-ISDN-Standards gefordert, um ATM-Zellen durch verschiedene virtuelle Pfade auf verschiedenen Strecken zu leiten. Die zweite Operation erfolgt intern in ATM-Vermittlungen und hängt von der Art der verwendeten Vermittlung ab. Diese beiden Operationen sind die minimalen Operationen, die zum Transport von ATM-Zellen durch ein Netzwerk erforderlich sind. Es wären jedoch andere Operationen in ATM-Interfaces nützlich. Zu diesen anderen Operationen gehört das Einfügen von Zellen in ATM-Strecken zwischen ATM-Vermittlungen oder das Extrahieren von Zellen aus diesen, die Überwachung der Bandbreitenbenutzung von Kommunikationskanälen zwischen ATM-Vermittlungen und Kommunikationskanälen zwischen Benutzern und dem Netzwerk und das Sammeln von Statistiken zur Bewertung der Netzwerkleistung. In der Vergangenheit mussten diese Funktionen, falls sie überhaupt durchgeführt wurden, zusätzlich zu der Header-Übersetzungseinheit von separaten Chips durchgeführt werden. Es sind mehrere Tabellennachschlagevorgänge in Direktzugriffsspeichern zusätzlich zu dem Tabellennachschlag in dem Direktzugriffsspeicher der Header-Übersetzungseinheit erforderlich. Diese Vielzahl von Chips und Tabellennachschlagevorgängen führt zu platzaufwendigen und komplexen Schaltkreisen und langen Zeitverzögerungen bei der Erzielung der oben beschriebenen Funktionen. Außerdem waren vorbekannte Schaltkreise insofern inflexibel, als nicht der ganze ATM-Header verwendet werden konnte, um Tabellennachschlageoperationen durchzuführen. Außerdem besaßen diese vorbekannten Schaltkreise auch keine zweckmäßigen Einrichtungen zum selektiven Entfernen von ATM-Zellen aus einem durch eine ATM-Vermittlung fließenden Zellenstrom oder zum selektiven Hinzufügen von ATM-Zellen zu diesem Zellenstrom. Vorbekannte Schaltkreise waren somit nicht von Haus aus für eine verteilte Vermittlungssteuerung geeignet. Sie erforderten eine zentrale Steuerung, die die Zellenverarbeitungsgeschwindigkeit begrenzte.
  • Die EP-A-0500238 beschreibt ein Paketnetzwerk-Interface, das einen Überwachungs- und Header-Übersetzungseinheit- Assoziativspeicher umfasst, der dazu programmiert werden kann, nach Übereinstimmungen entweder bei VPI-Werten alleine oder nach Übereinstimmungen bei VCI-Werten alleine oder nach Übereinstimmungen sowohl bei VPI- als auch bei VCI-Werten zusammen zu suchen.
  • ELECTRONIC CIRCUITS AND SYSTEMS FOR COMMUNICATION, ETH ZÜ- RICH, 5.-8.3.1990, Nr. -, 5.3.1990, MELCHIOR, H., Seiten 63- 72, XP000315092, SCHNEIDER, H.: "THE CONCEPT OF VIRTUAL PATHS AND VIRTUAL CHANNELS IN ATM-NETWORKS" beschreibt eine Anzahl von Varianten zur Verwendung in einem ATM-Vermittlungssystem zum Übersetzen ankommender VCI/VPI-Informationen bei ausgehenden VCI/VPI-Informationen. Zum Beispiel kann eine direkte Adressierung verwendet werden. Bei der direkten Adressierung werden ankommende VCI und VPI kombiniert, um eine Speicheradresse zu bilden, die verwendet wird, um ausgehende VCI- und VPI-Informationen aus einem Übersetzungsspeicher abzurufen. Als Alternative kann eine indirekte Adressierung verwendet werden. Hier werden die ankommenden VCT- und VPI- Informationen verwendet, um eine Adresse zum Wiederherstellen von Informationen aus einer "Nachschlagetabelle" zu bilden. Bei den wiederhergestellten Informationen handelt es sich um eine weitere Adresse zur Verwendung beim Zugriff auf den Übersetzungsspeicher zur Wiederherstellung der ausgehenden VCI- und VPI-Informationen. Schließlich kann man eine Übersetzung mit einem Assoziativspeicher verwenden. Hierbei speichert der Assoziativspeicher (CAM) ankommende VCI/VPI- Kombinationen und zugeordnete ausgehende VCI/VPI-Kombinationen. Der CAM wird nach jeder ankommenden VCI/VPI- Kombination durchsucht. Bei einer Übereinstimmung werden die zugeordneten ausgehenden VCI/VPI-Informationen abgerufen. Wie bei der Referenz D1 können die VCI/VPI-Kombinationen auch maskiert werden.
  • Gemäß der vorliegenden Erfindung wird ein Paketnetzwerk- Interface nach Anspruch 1 bereitgestellt.
  • Bei einem Beispiel der Erfindung umfasst das Interface eines asynchronen Transfermodus (Interface der ATM-Schicht) einen Assoziativspeicher, der auf einen wählbaren und vorbestimmten Teil einer durch das Interface empfangenen ATM-Zelle reagiert. Der Assoziativspeicher erzeugt ein Adresssignal, das an einen Direktzugriffsspeicher gerichtet wird, der mindestens einen mit der ATM-Zelle zusammenhängenden Parameterblock erzeugt. Bei einem Beispiel der Erfindung umfasst der Parameterblock einen neuen ATM-Header für die Zelle. Bei einem anderen Beispiel der Erfindung umfasst der Parameterblock einen lokalen Header, der an die ATM-Zelle angehängt werden soll. Bei einem weiteren Beispiel der Erfindung kann der Parameterblock einen Netzwerknutzungsparameter umfassen, mit dem der Verkehrsfluss durch ein ATM-Netzwerk überwacht werden kann. Typische Nutzungsparameter können ein Bandbreitennutzungsparameter oder ein Diskontinuitätsparameter (burstiness parameter) sein. Es können geeignete Maßnahmen getroffen werden, um Verletzungen dieser Parameter durch den Kommunikationsverkehr in dem Netzwerk zu erkennen und zu überwachen. Zum Beispiel kann ein Leaky-Bucket-Algorithmus implementiert werden, um Netzwerknutzungsverletzungen zu erkennen. Bei einigen Beispielen der Erfindung kann eine ATM-Interface-Schaltung mit einem lokalen Eingangs-/Ausgangs-Interface ausgestattet werden, das das selektive Hinzufügen von ATM-Zellen zu einem zwischen einem Haupteingang und einem Hauptausgang der ATM- Interface-Schaltung fließenden ATM-Zellenstrom gestattet. Dieses lokale Eingangs/Ausgangs-Interface ermöglicht außerdem das selektive Extrahieren von ATM-Zellen aus diesem ATM- Zellenstrom. Ein ausgewählter Umfang an ATM-Zellenverarbeitung kann somit durch Hardware in integrierten Schaltungschips eines ATM-Interfaces durchgeführt werden, und ein ausgewählter Umfang an ATM-Zellenverarbeitung kann durch Software in lokalen Steuerprozessoren durchgeführt werden. Funktionen wie zum Beispiel Header-Übersetzungen, Fehlerprüfung und Überwachung könnten für die am stärksten benutzten virtuellen Schaltungen als Hardware und für den Rest der VCs durch den lokalen Steuerprozessor als Software realisiert werden. Dadurch kann ein ATM-Netzwerk den gesamten virtuellen Pfad- und virtuellen Schaltungsraum verwenden (2²&sup8; virtuelle Schaltungen, entsprechend den 28 Bit in dem VCI/VPI-Feld in einem ATM-Header), obwohl das ATM-Interface möglicherweise nicht über die Kapazität verfügt, Informationen zu halten und zu verarbeiten, die alle virtuellen Schaltungen betreffen. Außerdem würden von dem lokalen Steuerprozessor Signalisierungs- und Bandbreitenmanagement und Routing-Funktionen durchgeführt. Die verteilte Steuerung von ATM-Vermittlungen wird somit zweckmäßig erzielt.
  • Dies ist lediglich eine Zusammenfassung bestimmter Aspekte der in der vorliegenden Anmeldung beschriebenen Erfindung. Der volle Umfang der ausschließlichen Rechte ist in den Ansprüchen am Ende der Anmeldung definiert.
  • Kurze Beschreibung der Zeichnungen
  • Fig. 1 ist ein Schaltbild einer Anzahl von Interface- Schaltungen der ATM-Schicht, die die Erfindung realisieren und die an den Eingängen und Ausgängen einer ATM- Paketvermittlung angeordnet sind.
  • Fig. 2 ist ein ausführliches Blockschaltbild einer der in Fig. 1 gezeigten Interface-Schaltungen der ATM-Schicht.
  • Fig. 3 ist ein ausführliches Blockschaltbild der Funktionsweise des Assoziativspeichers und des Direktzugriffspeichers von Fig. 2.
  • Fig. 4 ist ein ausführliches Blockschaltbild einer selektiven ATM-Header-Modifikation durch ein Veränderungsmaskenregister.
  • Fig. 5 zeigt ein beispielhaftes Benutzer-Netzwerk-Interface, das die Erfindung beinhaltende Interface-Schaltkreise verwendet.
  • Fig. 6 zeigt ein beispielhaftes Netzwerk-Knoten-Interface, das die Erfindung beinhaltende Interface-Schaltkreise verwendet.
  • Ausführliche Beschreibung
  • Fig. 1 zeigt eine Anzahl von Interface-Schaltungen der ATM- Schicht (ATM layer interface circuits = ALIs), die mit den Eingängen und Ausgängen einer ATM-Paketvermittlung 10 verbunden sind, die in einem ATM-Kommunikationsnetzwerk verwendet wird. Die Paketvermittlung 10 kann eine von mehreren miteinander verbundenen Paketvermittlungen sein, die in der Regel ein Paketkommunikationsnetzwerk bilden. Jede dieser Vermittlungen weist jeweilige Eingänge und Ausgänge und mit einem Teil oder allen dieser Eingänge und Ausgänge verbundene ALIs auf. Obwohl die vorliegende Beschreibung ein Beispiel für die Erfindung erörtert, in dem ein ATM-Kommunikationsnetzwerk vorkommt, sollte betont werden, dass die vorliegende Erfindung auf jedes beliebige Paketnetzwerk oder jedes andere ähnliche Kommunikationsnetzwerk anwendbar ist. Die ATM-Paketvermittlung 10 vermittelt ATM-Zellen, die an ihren Eingängen empfangen werden, zu gewählten Ausgängen. Die ATM- Paketvermittlung 10 kann ein beliebiges Vermittlungssystem sein, das in Kommunikationsnetzwerken verwendet wird, die das ATM-Protokoll verwenden, wie zum Beispiel die ATM- Paketvermittlung, die in "Phoenix: A Building Block Chip For A Fault Tolerant Broadband Packet Switch", Globecom, '91, Phoenix, Dezember 1991, von V. Kumar et al. beschrieben wird.
  • ATM-Zellen werden auf Eingangsstrecken 11, 12 und 13 zu den Eingängen der ALIs 14, 15 und 16 geleitet. Diese ATM-Zellen werden von den ALIs 14, 15 und 16 verarbeitet und auf Vermittlungseingängen 17, 18 bzw. 19 zu der Vermittlung 10 geleitet. Die Vermittlung 10 leitet selektiv ATM-Zellen, die sie an den Vermittlungseingängen 17, 18 und 19 empfängt, zu entsprechenden Vermittlungsausgängen 20, 21 und 22. Die Zellen an den Vermittlungsausgängen 20, 21 und 22 werden in die ALIs 23, 24 bzw. 25 eingegeben. Die ALIs 23, 24 und 25 verarbeiten die von ihnen empfangenen Zellen und leiten sie zu Ausgangsstrecken 26, 27 bzw. 28. Die Anzahl von Eingängen zur Vermittlung 10 und die Anzahl von Ausgängen aus der Vermittlung 10 sowie die Anzahl von ALIs, die in Fig. 1 gezeigt sind, dienen lediglich als Beispiel. Es sind Vermittlungen mit jeder beliebigen Anzahl von Eingängen und Ausgängen, die eine beliebige Anzahl von ALIs verwenden, auf die vorliegende Erfindung anwendbar.
  • Die in Fig. 1 gezeigten ALIs können verwendet werden, um Benutzer-Netzwerk-Interfaces (user network interfaces = UNIs) und Netzwerk-Knoten-Interfaces (network node interfaces = NNIs) zu implementieren. Die ALIs können entweder ein allgemeines ATM-Protokoll oder das ATM-Protokoll für das oben erwähnte Phoenix-Vermittlungssystem unterstützen. Als Beispiel können die ALIs Eingangsports und Ausgangsports für acht Bit bei 50 MHz aufweisen. Wie nachfolgend ausführlich beschrieben wird, können die ALIs außerdem einen lokalen Port aufweisen, der ein lokaler Port für 32 Bit bei 35 MHz sein kann, der ein gemeinsames Adressen-/Daten-Protokoll verwendet.
  • Wie nachfolgend ausführlicher beschrieben wird, führen die ALIs in Fig. 1 jeweils eine ATM-Header-Modifikation, das Hinzufügen oder Entfernen lokaler Routing-Kennzeichnungen, die Bandbreitennutzungsüberwachung, die Anschaltung des lokalen Prozessors zum Einfügen und Extrahieren von ATM-Zellen zu und von einer ATM-Strecke und das Sammeln von Statistiken für jeden virtuellen Kanal (VC/VP), der von der ALI behandelt wird, durch.
  • Fig. 2 ist ein ausführliches Blockschaltbild einer der in Fig. 1 gezeigten ALIs 14. Die anderen ALIs 12, 13, 23, 24 und 25 sind ähnlich aufgebaut. Die in Fig. 2 ausführlich gezeigte ALI 14 umfasst einen Haupteingang 8, an dem ATM-Zellen in die ALI 14 aufgenommen werden, und einen Hauptausgang 17, an dem die ATM-Zellen die ALI 14 nach ihrer Verarbeitung verlassen. ATM-Zellen können außerdem aus dem Hauptzellenstrom zwischen dem Haupteingang 8 und dem Hauptausgang 14 zu einem lokalen Interface extrahiert oder kopiert werden. ATM-Zellen können auch aus diesem Interface in den Hauptzellenstrom eingefügt werden. Der Haupteingang und der Hauptausgang können mit zwei verschiedenen Raten getaktet werden. ATM-Vermittlungen, wie zum Beispiel die oben beschriebene Phoenix-Vermittlung können mit der zwei- oder dreifachen Geschwindigkeit der ankommenden Strecken arbeiten, um ein Blockieren in der Vermittlung zu reduzieren. Der Ausgang einer ALI am Eingang einer Vermittlung 10 läuft dann schneller als ihr Eingang, und der Eingang einer ALI am Ausgang der Vermittlung läuft schneller als ihr Ausgang. Die ALI besitzt einen Ausgangspuffer, der eine vorbestimmte Anzahl von ATM-Zellen, zum Beispiel zehn ATM- Zellen, halten kann, um Zellendiskontinuitäten zu glätten, die die ALI langsamer verlassen, als sie empfangen wurden. Außerhalb der ALIs kann eine zusätzliche Pufferung bereitgestellt werden. Die Pufferung kann auch dadurch erzielt werden, dass die ankommenden Zellen über ein lokales Interface zu einem Direktzugriffsspeicher umgelenkt werden, der einem lokalen Prozessor zugeordnet ist, und diese Zellen später mit einer entsprechenden Rate in den ausgehenden ATM-Zellenstrom eingefügt werden.
  • Es gibt zwei Arten von ATM-Zellen, die am Haupteingang einer ALI empfangen und aus dem Hauptausgang einer ALI gesendet werden können. Diese Zellen können einfache ATM-Zellen sein, die 53 Byte umfassen, wenn sich die ALI am Eingang einer ATM- Vermittlung befindet, oder sie können ATM-Zellen sein, die einen lokalen Header (1-Header) enthalten, der von einer ATM- Vermittlung als eine interne Routing-Kennzeichnung verwendet wird, wenn sich die ALI am Ausgang der ATM-Vermittlung befindet. Alle ATM-Zellen, die am Haupteingang ankommen, müssen einen 1-Header derselben Länge aufweisen; alle ATM-Zellen, die den Hauptausgang verlassen, müssen ebenfalls einen 1- Header derselben Länge aufweisen, die von der 1-Header-Länge am Haupteingang verschieden sein kann. Innerhalb der ALIs werden ATM-Zellen ohne ein Byte des ATM-Headers, das die Header-Fehlerprüfbits (header error check bits = HEC bits) enthält, behandelt. Dieser HEC-Code wird geprüft und von den Zellen entfernt, sobald die Zellen empfangen werden, und neu berechnet und zu den Zellen hinzugefügt, bevor sie die ALI am Hauptausgang verlassen. Ohne dieses HEC-Byte weisen ATM- Zellen nur 52 Byte auf. Das bereits erwähnte lokale Interface besitzt einen Bus, der 32 Bit breit sein kann, so dass 13 Zugriffe erforderlich sind, um eine ATM-Zelle in einer ALI zu dem lokalen Interface zu übermitteln.
  • Man betrachte eine ATM-Zelle, die am Eingang der in Fig. 1 und 2 dargestellten ALI 14 ankommt. Diese Zelle kommt an dem Eingang der ALI 14 mit 155 Mb/s an, ihr HEC wird geprüft und von der Zelle entfernt, und die Zelle wird als eine 52-Byte- ATM-Zelle gespeichert. Wie unten ausführlicher beschrieben wird, werden Leaky-Bucket-Informationen, die zu dieser Zelle gehören, aktualisiert, und im Fall eines Bucket-Überlaufs wird die Zelle entweder fallengelassen, als fallenlassbar markiert oder zu einem lokalen Interface geleitet. Wenn die Zelle für den Hauptausgang der ALI bestimmt ist, wird ein entsprechender lokaler Header der Zelle zugefügt, so dass die Zelle zu einem entsprechenden Vermittlungsausgang gelenkt werden kann. Weiterhin wird das VCI/VPI-Feld in dem Header modifiziert, und die Zelle wird in einem Ausgangs-FIFO in der ALI gespeichert. Während die Zelle aus der ALI austritt und in die Vermittlung eintritt, wird ein neues HEC-Byte berechnet und am Ende des ATM-Headers eingeführt.
  • An einer Ausgangs-ALI, wie zum Beispiel der Ausgangs-ALI 23 am Ausgang der Vermittlung 10 wird das HEC-Byte wiederum aus dem ATM-Header entfernt, der ATM-Header wird modifiziert (zum Beispiel wird dem ATM-Header ein neues VPI/VCI-Feld gegeben), und es wird ein Ein-Byte-Rest des lokalen Headers entfernt und durch einen lokalen Null-Byte-Header ersetzt. Die Zelle wird dann mit einem neuen HEC zu einer abgehenden Strecke, wie zum Beispiel der Ausgangsstrecke 26, gesendet. In diesem Beispiel wurde der ATM-Header zweimal modifiziert, einmal unmittelbar vor dem Eintritt in die Vermittlung 10 und einmal unmittelbar nach dem Verlassen der Vermittlung 10. Eine Zelle kann ein VCI/VPI aufweisen, das in der Vermittlung 10 verwendet wird. Dieses Merkmal ermöglicht eindeutige ATM-Header für jede Verbindung innerhalb der Vermittlung. Die eindeutige Kennung jeder Verbindung kann die Adresse ihres Eingangsports oder ihres Ausgangsports enthalten, um ein Umleiten von Zellen zu ermöglichen, die möglicherweise wegen Fehlern in der Vermittlung fehlgeleitet (misrouted) wurden.
  • Es folgt eine ausführlichere Beschreibung der in Fig. 2 dargestellten Schaltkreise. Die Hauptkomponenten in dem in Fig. 2 gezeigten Beispiel der Erfindung enthalten einen 1024-Wortmal-33-Bit-Assoziativspeicher (CAM) 32, der für eine Nachschlageoperation verwendet wird, die eine Übereinstimmung zwischen einer gespeicherten Kennzeichnung mit 28 Bit für einen virtuellen Kanalvirtuellen Pfad und einem entsprechenden Teil eines ATM-Headers, der einer ATM-Zelle, die durch die ALI 14 fließt, zugeordnet ist, sucht. Eine andere Hauptkomponente der in Fig. 2 gezeigten ALI 14 ist ein 1024-Wortmal- 128-Bit-Direktzugriffsspeicher (RAM), der Ersatz-ATM-Header und lokale Routing-Header speichert. Der RAM speichert außerdem Überwachungsparameter und Überwachungszustände sowie statistische Informationen, die mit dem durch die ALI 14 fließenden Verkehr zusammenhängen. Die ALI 14 von Fig. 2 kann auBerdem Direktzugriffsspeicher mit 2.688 Byte enthalten, um eine Anzahl von FIFO-Puffern (first in first out) zu implementieren. Genauer gesagt können diese FIFOs einen 4- Prioritäts-8-Zellen-FIFO enthalten, um Diskontinuitäten zu puffern, einen 4-Prioritäts-2-Zellen-FIFO, um lokal erzeugte ATM-Zellen zu puffern, und einen 2-Zellen-FIFO, um für einen lokalen Port bestimmte Zellen zu puffern. Die Eingangs-ATM- Header werden gemäß dem ATM-Standardfehlerkorrigiert, und die Fehlerkorrektur wird zu den Ausgangs-ATM-Zellen hinzugefügt. Ein in Fig. 2 gezeigtes Programmregister 29 wird beim Einschalten gesetzt und steuert den Betrieb der ALI 14.
  • Die Schaltung von Fig. 2 enthält einen Haupteingangsblock 30, der einen 8-Bit-Datenstrom mit bis zu 50 MHz annimmt und ihn in 32-Bit-Daten umwandelt, die in FIFOs gespeichert werden sollen. Der Haupteingangsblock 30 korrigiert außerdem etwaige Einzelbitfehler in dem ATM-Header und setzt Flags für Mehrfachbitfehler. Er steuert außerdem den Ablauf der Funktionsweise eines CAM 32, eines RAM 34 und einer Überwachungseinheit 36. Er steuert außerdem das Schreiben von Informationen in einen Hauptausgangs-FIFO 38 und einen lokalen Ausgangs- FIFO 40.
  • Der lokale Ausgangs-FIFO 40 ist ein Puffer, der zwei 56-Byte- Zellen hält, der durch den Haupteingangsblock 30 beschrieben und durch ein lokales Interface 42 gelesen wird. Der Hauptausgangs-FIFO 38 hält acht Zellen für jede von vier Prioritäten. Er wird von dem Haupteingangsblock 30 beschrieben und von einem Hauptausgangsblock 44 gelesen. Ein lokaler Eingangs-FIFO 46 hält zwei Zellen für jede von vier Prioritäten. Er wird von dem lokalen Interface 42 beschrieben und von dem Hauptausgangsblock 44 gelesen.
  • Der CAM 32 weist in diesem Beispiel der Erfindung 1024 Einträge auf, einen für jede virtuelle Schaltung, die in der ALI 14 verarbeitet wird. Jeder Eintrag umfasst ein 32-Bit-Header- Muster und ein 1-Bit-Aktiv-Kanal-Flag. Ein 32-Header- Vergleichs-Maskenregister (siehe Fig. 3) wählt, welche Bit eines ankommenden Headers verwendet werden, um nach einer Übereinstimmung unter aktiven CAM-Einträgen zu suchen. Das maskierte Header-Muster darf mit höchstens einem Eintrag in dem CAM 32 übereinstimmen. Eine gültige Übereinstimmung erzeugt ein 10-Bit-Adresssignal auf der Leitung 48, die auf eine Speicherstelle in dem RAM 34 zeigt, die einen Parameterblock enthält, der mit dem ATM-Header zusammenhängt, der verwendet wurde, um in dem CAM 32 nach einer Übereinstimmung zu suchen. Wenn keine Übereinstimmung gefunden wird, wird eine Vorgabe-RAM-Adresse erzeugt. Alle 1024 Kanalflags können gleichzeitig aus dem lokalen Eingangs/Ausgangs-Block 42 deaktiviert werden.
  • Der RAM 34 enthält in diesem Beispiel der Erfindung 1024 Einträge, und zwar einen Eintrag für jede Darstellung einer virtuellen Schaltung, die in dem CAM 32 gespeichert ist. Jeder Eintrag in dem Rahmen 34 umfasst 128 Bit, die jeweils folgendes umfassen:
  • 1. Einen 32-Bit-ATM-Ersatz-Header;
  • 2. Einen neuen lokalen 32-Bit-Routing-Header;
  • 3. 15 Bit Überwachungsparameter, die eine Bucket-Größe und eine Leak-Rate angeben;
  • 4. 27 Bit Überwachungszustandsinformationen, darunter ein Maß des Bucket-Inhalts und mindestens einen Zeitstempelparameter;
  • 5. 2 Bit, die einen Überwachungsmodus darstellen;
  • 6. einen 16-Bit-Zellenzählparameter;
  • 7. Ein 2-Bit-Prioritätsfeld; und
  • 8. Ein 2-Bit-Routing-Feld.
  • Der ATM-Ersatz-Header in dem oben aufgelisteten Parameterblock, der ankommende ATM-Zellen-Header und ein 32-Bit- Header-Ersatzmaskenregister werden verwendet, um einen neuen ATM-Header zu erzeugen, der in den lokalen Ausgangs-FIFO 40 oder den Hauptausgangs-FIFO 38, je nach Fall, zusammen mit dem dem neuen ATM-Header zugeordneten Nutzsignal gebracht wird. Ein neuer lokaler Routing-Header kann zu einer Zelle in dem Hauptausgangs-FIFO 38 hinzugefügt werden.
  • Die Überwachungsparameter und die Überwachungszustandsinformationen in dem oben aufgelisteten Parameterblock werden von der Überwachungseinheit 36 verwendet, um Verletzungen der Netzwerknutzungsparameter zu erkennen und die Überwachungszustandsinformationen zu aktualisieren. Die Überwachungseinheit 36 arbeitet in einer von drei Betriebsarten. Der Überwachungsmodus bestimmt, ob eine ATM-Zelle, die die Nutzungsparameter in dem Parameterblock verletzt, fallengelassen, zu dem lokalen Eingangs/Ausgangs-Interface 42 geleitet oder als fallenlassbar markiert wird. Der Zellenzählwert in dem oben aufgelisteten Parameterblock verfolgt, wie viele ATM-Zellen für jede virtuelle Leitung nicht fallengelassen wurden. Der Zellenzählwert kann in den Header von ATM-Zellen eingefügt werden, die zu dem lokalen Eingangs/Ausgangs-Interface 42 geleitet werden. Die Prioritäts- und Routinginformationen in dem Parameterblock werden von dem Haupteingangsblock 30 verwendet, um die ankommende ATM-Zelle in den ordnungsgemäßen FIFO 38 oder 40 zu bringen.
  • Die Überwachungseinheit 36 implementiert eine Leaky-Bucket- Prozedur bzw. einen Leaky-Bucket-Algorithmus, um sicherzustellen, dass virtuelle Schaltungen ihre zugeteilte Bandbreite oder den beim Verbindungsaufbau ausgehandelten Diskontinuitätspegel nicht überschreiten. Diese Leaky-Bucket-Prozedur wird auf jede virtuelle Schaltung angewandt, während eine ATM-Zelle für diese virtuelle Schaltung ankommt. Sie führt dies außerdem einmal nach jeweils 1024 ATM-Zellenperioden durch, um zu verhindern, dass die Zustandsinformationen überlaufen. Wenn das Hauptausgangs-FIFO 38 für die Priorität der ankommenden ATM-Zelle voll ist, kann diese Zelle zu dem lokalen Eingangs-/Ausgangs-Interface 42 geleitet werden, oder die ATM-Zelle kann durch Nichtbestätigen der ankommenden Zelle flussgesteuert werden.
  • Die prinzipielle Funktion des Hauptausgangsblocks 44 besteht darin, eine ATM-Zelle zur Ausgabe aus den FIFOs 38 und 46 zu wählen. Die ATM-Zelle wird aus einer von vier Prioritäten ausgewählt, die von dem Hauptausgangs-FIFO 38 oder dem lokalen Eingangs-FIFO 46 behandelt werden. Eine leere Zelle kann gewählt werden, wenn beide FIFOs 38 und 46 leer sind. Der Hauptausgangsblock 44 berechnet ein ATM-Header-Fehlerkorrekturbyte (HEC) und fügt es der ausgehenden ATM-Zelle hinzu. Er setzt außerdem die 32-Bit-Daten in 8-Bit- Ausgangsdaten auf dem ATM-Vermittlungseingang 17 mit Raten von zum Beispiel bis zu 50 MHz um. Die tatsächliche Rate wird durch einen externen Takt bestimmt, der mit dem Hauptausgangsblock 44 verbunden ist.
  • Der lokale Eingangs-/Ausgangs-Interface-Block 42 stellt ein Interface für einen lokalen Steuerprozessor S0 bereit. Durch dieses Interface 42 können das Programmregister 29, der CAM 32, der RAM 34 und Maskenregister beschrieben oder gelesen werden. Zusätzlich kann eine Zelle aus dem lokalen Ausgangs- FIFO 40 gelesen werden, und eine Zelle kann in eine der vier Prioritäten in dem lokalen Eingangs-FIFO 46 geschrieben werden.
  • Die Operationen der in Fig. 2 gezeigten ALI 14 werden nachfolgend ausführlicher beschrieben. Die Operationen der anderen ALIs, die in Fig. 1 gezeigt sind, sind ähnlich. Die in Fig. 2 gezeigte ALI 14 identifiziert zunächst jede ankommende ATM-Zelle durch Untersuchen der relevanten Teile des ATM- Zellen-Headers, nämlich des Feldes für die Kennung für den virtuellen Pfad (VPI-Feld) und des Feldes für die Kennung für den virtuellen Kanal (VCI). Diese Identifikation wird verwendet, um einen entsprechenden, in dem RAM 34 gespeicherten Parameterblock aus in diesem Beispiel der Erfindung 1024 Einträgen in dem RAM 34 auszuwählen. Die Parameter in einem solchen Block definieren, wie die ATM-Zelle in der ALI 14 verarbeitet werden soll. Ein beispielhafter Parameterblock ist oben aufgelistet. Es kann jede beliebige Kombination der 32 Bit aus dem ATM-Header (ausschließlich HEC) verwendet werden, um eine ATM-Zelle zu identifizieren. Die Bit, die tatsächlich verwendet werden, um eine Zelle zu identifizieren, werden durch ein in Fig. 3 gezeigtes Maskenregister 52 definiert, das sich in dem CAM 32 oder an einer anderen zweckmäßigen Stelle zwischen dem ATM-Header und dem Eingang des CAM 32 befinden kann. Dieses Maskenregister 52 wird in bezug auf eine ankommende ATM-Zelle verwendet, um einen Nachschlag in dem CAM 32 durchzuführen, der Header für Bestimmte der Verbindungen enthält. Das Maskenregister 52 ist so konfiguriert, dass Bestimmte der Bit in dem ATM-Header maskiert und nicht für die Suche nach einer Übereinstimmung verwendet werden. Diese Bit entsprechen den schattierten Bereichen in dem Maskenregister 52 (siehe Fig. 3). Die unschattierten Bereiche in dem Maskenregister 52 entsprechen im voraus gewählten Bit in dem ATM-Header, die verwendet werden, um nach einer Übereinstimmung in den Inhalten des CAM 32 zu suchen. Die Header- Bit, die den schattierten Bereichen in dem Maskenregister 52 entsprechen, werden bei der Suche nach einer Übereinstimmung ignoriert. Es kann unter Verwendung der Kennungsbit für den virtuellen Pfad, der Kennungsbit für den virtuellen Kanal oder einer beliebigen Kombination dieser Bit in dem ATM-Header nach Übereinstimmungen gesucht werden. Außerdem ist es möglich, die Bit des Nutzsignal-Typs (payload type = PTI) oder der Zellenverlustpriorität (cell loss priority = CLP) zu verwenden, um in den Inhalten des CAM 32 nach einer Übereinstimmung zu suchen. Ein Nachschlagen in dem CAM 32 führt zu einem Adresssignal auf der Leitung 48 zwischen 0 und 1022, wenn eine Übereinstimmung gefunden wurde. Wenn keine Übereinstimmung vorliegt, wird ein Adresssignal auf der Leitung 48 von 1023 erzeugt. Das Adresssignal auf der Leitung 48 wird als ein Zeiger auf einen in dem RAM 34 gespeicherten Parameterblock 54 verwendet.
  • Zusätzlich zu der ATM-Zellenidentifikation modifiziert die ALI 14 außerdem die Header von ATM-Zellen, die durch die ALI 14 fließen. Es können zwei verschiedene Modifikationen an jeder ATM-Zelle durchgeführt werden. Eine solche Modifikation ist eine Änderung eines lokalen Headers, und die andere Modifikation ist eine Änderung des Standard-ATM-Headers selbst.
  • Jede ATM-Zelle wird als einen ihr zugeordneten lokalen Header aufweisend behandelt. Eine ATM-Zelle, die in ein Eingangs-ALI eintritt, wie zum Beispiel eine ATM-Zelle, die aus der Strecke 11 in die ALI 14 eintritt, weist einen lokalen Header der Länge Null auf. Die ATM-Zellen, die eine Eingangs-ALI, wie zum Beispiel die ALI 14, verlassen und über einen Vermittlungseingang, wie zum Beispiel den Vermittlungseingang 17, in die ATM-Vermittlung 10 eintreten, weisen einen lokalen Header einer Länge von zwischen einem und vier Byte auf. Die in eine Ausgangs-ALI eintretenden ATM-Zellen, wie zum Beispiel eine ATM-Zelle, die in die ALI 23 in Fig. 1 über den Vermittlungsausgang 20 aus der ATM-Vermittlung 10 eintritt, können einen lokalen Header mit einer Länge von null bis vier Byte aufweisen. (Der lokale Header könnte in der ATM-Vermittlung 10 modifiziert werden.) Ein ATM-Zellen-Header, der aus einer Ausgangs-ALI, wie zum Beispiel der ALI 23, austritt und eine Strecke, wie zum Beispiel die Strecke 26, verlässt, weist einen lokalen Header der Länge Null auf. Der lokale Header, der einer ATM-Zelle zugeordnet ist, wird durch einen neuen lokalen Header ersetzt oder vollständig entfernt. Das Entfernen eines lokalen Headers erfolgt durch Ersetzen des Headers durch einen lokalen Header der Länge Null. Das Hinzufügen eines lokalen Headers wird erzielt durch Ersetzen eines lokalen Headers der Länge Null mit einem lokalen Header einer vorbestimmten, von Null verschiedenen Länge.
  • Bezüglich der Modifikation des ATM-Headers selbst, modifiziert die ALI 14 den Header für jede Zelle mit einer in dem CAM 32 gespeicherten Header-übereinstimmung. Ein separates Veränderungsmaskenregister 56, das sich in einer Veränderungsschaltung 58 (siehe Fig. 4) befindet, erzielt eine Ersetzung ausgewählter Bit dieser ATM-Header. Die Veränderungsschaltung 58 kann sich zum Beispiel in dem in Fig. 2 gezeigten Haupteingangsblock 30 befinden. Die Veränderungsschaltung 58 empfängt einen alten Header 60, der aus einer ATM-Zelle gewonnen wird, die durch die ALI 14 empfangen wird, und einen Ersatz-Header 62, der aus dem Parameterblock 54 gewonnen wird, der aus dem RAM 34 abgerufen wird. Das Veränderungsmaskenregister 56 weist zum Beispiel zweiunddreißig Bit auf, entsprechend den zweiunddreißig Bit in einem ATM-Header. Das Maskenregister 56 besitzt außerdem eine Kennzeichnung, wie zum Beispiel ein Bit, die an Speicherstellen gespeichert wird, die den Speicherstellen in dem Ersatz-Header entsprechen, die in entsprechende Stellen in einem neuen Header 64 kopiert werden sollen. Das Maskenregister 56 weist eine Kennzeichnung, wie zum Beispiel ein Null-Bit, auf, die an Stellen gespeichert wird, die Speicherstellen in dem alten Header entsprechen, die in entsprechende Stellen in dem neuen Header 64 kopiert werden sollen. Das Maskenregister 56 definiert dadurch die Bit des alten ATM-Headers, die ersetzt werden müssen. Die Bit des alten ATM-Headers, die nicht so durch das Maskenregister 56 definiert sind, werden unverändert gelassen.
  • Jeder Parameterblock enthält zwei Routing-Flag-Bit, die definieren, wohin eine Zelle in der ALI 14 geleitet werden soll. Diese Bit definieren, ob die Zelle entweder zu dem Hauptausgangsblock 44 oder zu dem lokalen Eingangs-/Ausgangs- Interface 42 oder zu beiden geleitet werden soll. Wenn der Wert des dem Hauptausgang entsprechenden Bit zum Beispiel Eins ist, dann wird die Zelle in den Hauptausgangsblock 44 kopiert. Wenn der Wert des dem lokalen Eingangs-/Ausgangs- Interface entsprechenden Bit zum Beispiel Eins ist, dann wird die Zelle in das Interface 42 kopiert. Wenn in diesem Beispiel beide Hit Eins sind, dann kann die Zelle sowohl in das Interface 42 als auch in den Hauptausgangsblock 44 kopiert werden. Wenn die sowohl dem Hauptausgangsblock 44 als auch dem lokalen Eingangs-/Ausgangs-Interface 42 entsprechenden Bit Null sind, dann kann die Zelle fallengelassen werden. Somit kann die Zelle in einen oder beide der Ausgänge kopiert oder völlig fallengelassen werden.
  • Ein Parameterblock enthält außerdem zwei Bit, die einen von vier möglichen Prioritätswerten einer Zelle angeben, für die eine Übereinstimmung gefunden wurde. Der Hauptausgangs-FIFO 38 besteht aus vier einzelnen FIFO-Puffern, entsprechend den vier Prioritätswerten. Eine Zelle, die zu dem Hauptausgangs- FIFO 38 gelenkt wird, wird in einem FIFO-Puffer gespeichert, der ihrer angegebenen Priorität entspricht. Zellen, die zu dem lokalen Eingangs/Ausgangs-Interface 42 gelenkt werden, werden jedoch in einem einzigen FIFO-Puffer in dem lokalen Ausgangs-FIFO 40 gespeichert. Es wird garantiert, dass eine Zelle in dem FIFO-Puffer 40 zu dem lokalen Steuerprozessor 50 geliefert wird, bevor die nächste Zelle ankommt, so dass mehrere Prioritäten in dem FIFO 40 unnötig sind.
  • In dem lokalen Interface 42 befindet sich nur ein FIFO. Zellen werden in 14 Wörtern von jeweils 32 Bit zu dem lokalen Steuerprozessor 50 geliefert. Das erste Wort enthält eine 10- Bit-CAM-Adresse, bei der eine Übereinstimmung für diese ATM- Zelle gefunden wurde. Diese stimmt mit dem Signal auf der Leitung 48 überein, das in den RAM 34 eingegeben wird, wenn eine Übereinstimmung gefunden wird. Dieser Wert kann direkt als ein Zeiger auf bestimmte Daten oder einen bestimmten Code verwendet werden, die/der in dem Steuerprozessor 50, der der Zelle entspricht, gespeichert sind/ist. Dadurch vermeidet man zusätzliche Tabellennachschlagevorgänge in dem Prozessor 50. Das erste Wort eines Zellentransfers kann außerdem den aktuellen Wert des bereits erwähnten Zellenzählers in dem Parameterblock aus dem RAM 34 enthalten, der zu diesem virtuellen Kanal und virtuellen Pfad gehört. Das nächste Wort enthält den ATM-Header für diese Zelle ohne HEC-Bit, und die letzten zwölf Wörter enthalten das Nutzsignal.
  • Wenn keine Übereinstimmung in dem CAM 32 gefunden wird, wird auf der Leitung 48 ein Adresssignal 1023 erzeugt, und ein Parameterblock, der zwei Routing-Bit enthält, wird aus dem RAM 34 gelesen, wodurch zum Beispiel angezeigt wird, dass diese ATM-Zelle zu dem Interface 42 geleitet werden soll, um durch den lokalen Steuerprozessor 50 verarbeitet zu werden. Diejenigen Zellen ohne Übereinstimmung in dem CAM 32 könnten in entsprechenden Fällen auch fallengelassen werden.
  • Bei B-ISDN müssen die Netzwerknutzungsparameter, wie zum Beispiel Spitzenbandbreite und maximale Diskontinuitätslänge, in der Einrichtzeit für jede neue Verbindung ausgehandelt werden. Während der Kommunikation müssen diese Kenngrößen überwacht und bestimmte Maßnahmen getroffen werden, wenn der Kommunikationsverkehr in einer Verbindung die dieser Verbindung zugeordneten ausgehandelten Parameter verletzt. Wie oben beschrieben, können drei mögliche Maßnahmen von einer ALI gemäß der vorliegenden Erfindung als Reaktion auf eine Verkehrsverletzung getroffen werden, nämlich: Fallenlassen der verletzenden Zellen, Markieren der verletzenden Zellen als fallenlassbar (d. h. Setzen des CLP-Bit auf Eins) und Leiten jeder nachfolgenden Zelle dieser Verbindung zu dem lokalen Interface 42. Wenn Zellen zu dem lokalen Interface 42 geleitet werden, können sie dann gepuffert werden, und der Verkehr kann durch erneutes Einfügen dieser Zellen mit einer entsprechenden Rate in den Zellstrom umgeformt werden, so dass die Kommunikation den ausgehandelten Nutzungsparametern genügt.
  • Die Überwachungsfunktion der ALI 14 basiert auf einer Leaky- Bucket-Prozedur, die effektiv bestimmt, ob eine Zelle bewirkt, dass eine Kommunikation die ausgehandelten Nutzungsparameter überschreitet. Die Leaky-Bucket-Prozedur verwendet eine Anzahl von Parametern, darunter einen "Leak-Rate"- Parameter und einen "Bucket-Size"-Parameter. Der "Leak-Rate"- Parameter betrifft die Spitzenbandbreite, die zum Zeitpunkt der Herstellung der Verbindung ausgehandelt wird. Der "Bucket-Size"-Parameter bestimmt die maximal zulässige Diskontinuitätslänge mit der Leitungsrate. Zusätzlich verwendet die Leaky-Bucket-Prozedur zwei Zeitsteuerungsparameter, einen "Actual-Time"-Parameter und einen "Last"-Parameter. "Actual Time" ist ein Zeitstempel, der den Zeitpunkt darstellt, an dem eine Zelle für einen bestimmten virtuellen Pfad und virtuellen Kanal empfangen wird. "Last" ist ein anderer Zeitstempel, der den Zeitpunkt benennt, zu dem eine unmittelbar vorausgehende Zelle für diesen bestimmten virtuellen Pfad und virtuellen Kanal empfangen wurde. Die Prozedur verwendet auch einen weiteren Parameter namens "Current", der den aktuellen Pegel an Zellen in dem Bucket anzeigt.
  • Jedes Mal, wenn eine Zelle für einen gegebenen virtuellen Pfad und eine gegebene virtuelle Schaltung empfangen wird, wird für diesen Pfad die folgende Operation durchgeführt:
  • current = current + 1 - [(actual time-last)·rate]
  • Die "Current"-Variable kann einen beliebigen Wert von Null bis zu dem Wert des "Bucket-Size"-Parameters aufweisen. Wenn die "Current"-Variable die "Bucket-Size"-Variable übersteigt, hat eine Verletzung eines Netzwerknutzungsparameters, wie zum Beispiel der Spitzenbandbreite oder des Diskontinuitätsgrads, für diese Verbindung, der zur Einrichtzeit ausgehandelt wurde, stattgefunden: Die Erhöhung von +1, die in der obigen Gleichung angegeben wird, ist auf das Hinzufügen der Zelle zurückzuführen, die gerade angekommen ist. "(Actual timelast)*rate" ist die Gesamtverringerung gleich der Leak-Rate multipliziert mit der Zeitdauer, die seit der letzten Bucket- Pegel-Aktualisierung abgelaufen ist.
  • Da "Last" in diesem Beispiel der Erfindung mit 10 Bit kodiert wird, muss eine Aktualisierung des Bucket-Pegels mindestens einmal alle 1024 Zellenperioden erfolgen, um zu verhindern, dass "(actual time-last)" mehrdeutig wird. Diese Aktualisierungsoperation lautet folgendermaßen:
  • current = current - (ActualTime - last)*rate, mit current ≥ 0
  • Es wird eine Aktualisierungsoperation pro Zellenperiode durchgeführt. Somit sind nach 1024 Zellenperioden alle Verbindungsvariablen aktualisiert.
  • Es kann eine Menge vorbestimmter Leak-Raten geben, aus der gewählt werden kann. Zum Beispiel kann es 32 mögliche Leak- Raten geben, die Maximalrate und Dreiviertel der Maximalrate, jeweils dividiert durch 2n, wobei "n" zwischen 0 und 15 liegen kann. Die Maximalrate kann zum Beispiel 155 Mb/s oder ein Vielfaches dieser Rate betragen.
  • Jeder Parameterblock enthält einen 15-Bit-Zähler, dessen Inhalt statistische Informationen über einen jeweiligen virtuellen Pfad und eine virtuelle Leitung, die in dem CAM gespeichert sind, darstellt. Diese Zähler werden jedes Mal erhöht, wenn eine Zelle für eine jeweilige virtuelle Leitung und einen jeweiligen virtuellen Pfad empfangen und nicht wegen der Überwachung fallengelassen wird. Der Wert eines Zählers kann an jede zu dem lokalen Interface 42 übertragene Zelle angehängt werden. Diese Informationen sind nützlich für Netzwerkmanagementzwecke.
  • Zum Beispiel kann durch Verwenden des Nutzsignal-Typ-Felds (PTI, 3 Bit) der ATM-Zellen ein zusätzliches Routen erfolgen. Ein Wert des PTI-Felds kann definiert werden, was dazu führt, dass eine Kopie seiner jeweiligen Zelle (einer Markierungszelle) zu dem lokalen Interface 42 gesendet wird. Wenn dieser Wert zum Beispiel auf den Wert von F5 Ende-zu-Ende-OAM-Zellen (PTI = 101) gesetzt wird, wird jedes Mal, wenn eine dieser Markierungszellen von einem Endpunkt zu dem anderen Endpunkt einer Verbindung gesendet wird, in jeder ALI, die die Zelle durchläuft, eine Kopie der Zelle hergestellt. Zusammen mit der Kopie der Zelle wird außerdem der Zellenzählerwert für diese Verbindung zu dem lokalen Interface gesendet. Diese Zählerwerte entlang dem Weg der Kommunikation können dann verglichen werden, um zu bestimmen, wie viele Zellen auf jeder Strecke verlorengegangen sind. Die Speicherstellen der Zähler mit verschiedenen Werten zeigen an, wo Verluste aufgetreten sind, und ob diese Verluste wegen der Überwachung und Übertragungsfehlern oder wegen einer Blockierung in den Vermittlungen aufgetreten sind, abhängig davon, wo sich Zählerwerte unterscheiden. Ein Zellenverlust aufgrund der Überwachung in einer ALI kann von einem Zellenverlust aufgrund von Übertragungsfehlern auf einer Strecke unterschieden werden, indem ein separater Zähler erhöht wird, wenn Zellen wegen Überwachungsverletzungen, die von einer ALI erkannt werden, fallengelassen werden.
  • ATM-Zellen können in den ATM-Zellenstrom eingefügt werden, der zwischen dem Haupteingang 30 und dem Hauptausgang 44 in der ALI 14 fließt. Diese ATM-Zellen, die in diesen Zellenstrom eingefügt werden sollen, können an dem lokalen Interface 42 der ALI 14 vorgelegt werden. Diese Zellen können in einen von vier FIFO-Puffern in dem lokalen Eingangs-FIFO 46 geleitet werden, abhängig von dem Prioritätswert dieser Zellen. Eine Arbitrierungslogik in dem Hauptausgangsblock 44 wählt einen FIFO-Puffer aus den vier FIFO-Puffern in dem Hauptausgangs-FIFO 38 und vier FIFO-Puffer in dem lokalen Eingangs-FIFO 46 aus und entnimmt eine Zelle zur Übertragung auf dem Hauptausgang 17.
  • Die folgenden Parameter können global für einen ALI-Chip gesetzt werden:
  • - die Länge der 1-Header am Haupteingang (0-4 Byte);
  • - die Länge der 1-Header am Hauptausgang (0-4 Byte);
  • - die Eigenschaften der Identifikationsmaske, die die ATM- Header-Bit wählen, mit denen in dem CAM 32 nach einer Übereinstimmung gesucht wird.
  • - die Eigenschaften der Veränderungsmasken, die die Bit der ATM-Header wählen, die ersetzt werden müssen;
  • - ob die Überwachung aktiviert oder deaktiviert ist;
  • - ob die Erzeugung leerer Zellen, wenn keine Zellen am Hauptausgang verfügbar sind, aktiviert oder deaktiviert ist; und
  • - der Wert des Felds des Nutzsignal-Typs (PTI) von Zellen, die immer in das lokale Interface 42 kopiert werden müssen.
  • Fig. 5 und 6 zeigen zwei Ausführungsbeispiele dafür, wie eine ALI, wie die in Fig. 1 und 2 gezeigten, in einem Benutzer- Netzwerk-Interface bzw. einem Netzwerkknoten-Interface verwendet werden kann. Auf die ALIs wird für die Programmierung und den Datentransfer durch ihre jeweiligen lokalen Interfaces 42 zugegriffen. Für hohe Effizienz sollte ein eigener Host-Interface-Chip (HI-Chip) verwendet werden, um Zellen direkt zwischen einem RAM und der ALI zu übermitteln, ohne einen Prozessor zu unterbrechen.
  • Die Struktur eines Benutzer-Netzwerk-Interfaces (UNI), das eine ALI 65 gemäß der vorliegenden Erfindung, ein Host- Interface 66 und einen lokalen RAM 68 enthält, ist in Fig. 5 gezeigt. Die in Figur S gezeigte Vorrichtung kann eine in die Workstation eines Benutzers eingesteckte Karte sein.
  • Die Struktur eines Netzwerkknoten-Interfaces ist in Fig. 6 gezeigt. Das NNI von Fig. 6 umfasst die ALI 14 und die ALI 23 von Fig. 1. Das NNI umfasst außerdem ihren eigenen Mikroprozessor 70, der eigentlich derselbe ist wie der in Fig. 2 gezeigte Steuerprozessor 50. Schließlich umfasst das NNI ein Host-Interface 72 und einen RAM 74. Das NNI kombiniert eine ankommende ATM-Strecke 11, eine abgehende ATM-Strecke 26, einen Eingang 17 in die ATM-Vermittlung 10 und einen Ausgang 20 aus der ATM-Vermittlung 10. Das NNI kann über die ATM- Strecken 11 und 26 mit einem Benutzer oder einem anderen NNI kommunizieren. Unter Verwendung des Eingangs 17 und des Ausgangs 20 der ATM-Vermittlung kann das NNI mit den anderen NNIs, die mit der ATM-Vermittlung verbunden sind, kommunizieren. Die Steuerung und das Management der Vermittlung können somit vollständig unter den NNIs, die mit der ATM-Vermittlung verbunden sind, verteilt werden.
  • Es wird eine Interface-Schaltung beschrieben, die mehrere grundlegende Operationen durchführt, die beim Aufbau eines intelligenten Netzwerkknoten-Interfaces oder eines Benutzer- Netzwerk-Interfaces nützlich sind. Zu diesen Funktionen gehört das Modifizieren eines Paket-Headers, das Hinzufügen oder Entfernen lokaler Header-Routing-Kennzeichnungen, das Erkennen von und Reagieren auf Verletzungen der Netzwerknutzungsparameter, das Einfügen und Entfernen von Paketen aus einem Strom von Paketen und das Sammeln statistischer Informationen. Die Interface-Schaltung verwendet ein Maskenregister in Verbindung mit einem Assoziativspeicher, um Verbindungen zu identifizieren, zu denen Pakete gehören, wobei beliebige Kombinationen von Bit in einem Paket-Header, wie zum Beispiel dem 32-Bit-ATM-Header, ermöglicht werden, um eine virtuelle Schaltung zu identifizieren, zu der ein Paket gehört. Dieser Ansatz ist flexibel und ermöglicht eine Anpassung an sich entwickelnde Standards, wie zum Beispiel die Standards des asynchronen Transfermodus (ATM).
  • In dem lokalen Interface der Interface-Schaltung wird Paketen einer bestimmten Verbindung, die zu einem lokalen Prozessor geleitet werden, eine Kanalnummer zugeordnet. Der lokale Prozessor kann diese Kanalnummer als einen Index auf Daten oder einen Code, die/der dem Paket zugeordnet sind/ist, verwenden, anstatt einen weiteren Nachschlag in einer Tabelle von Headern durchzuführen. Die Interface-Schaltung kann mit einer Host-Interface-Schaltung bei der Implementierung eines Benutzer-Netzwerk-Interfaces oder eines Netzwerkknoten-Interfaces verwendet werden. Durch intelligente Netzwerkknoten- Interfaces wird es möglich, dass Paketvermittlungen, wie zum Beispiel ATM-Paketvermittlungen, eine völlig verteilte Steuerung aufweisen, wodurch sie eine maximale Verarbeitungsleistung pro Strecke erhalten.

Claims (19)

1. Ein Paketnetzwerk-Interface, das aufweist:
einen Eingang (11) zum Empfangen von Paketen in das Interface;
einen Ausgang (17) zum Leiten der empfangenen Pakete aus dem Interface; und
gekennzeichnet durch:
einen inhaltsadressierbaren Speicher (32) der auf einen auswählbaren und vorbestimmten Teil eines jeden empfangenen Paketes zum Erzeugen eines Adresssignals reagiert;
einen Direktzugriffsspeicher (34), der auf das Adresssignal zum Erzeugen wenigstens eines Parameters, der sich auf jedes empfangene Paket bezieht, reagiert; und
einprogrammierbares Auswahlelement (52) das dazu ausgebildet ist, den auswählbaren und vorbestimmten Teil jedes empfangenen Paketes, auf welchen der inhaltsadressierbare Speicher reagiert, zu ändern.
2. Interface nach Anspruch 1, bei welchem der Parameter einen neuen Header für das Paket umfasst.
3. Interface nach Anspruch 1, bei welchem der Parameter einen lokalen Header für das Paket umfasst.
4. Interface nach Anspruch 1, bei welchem der vorbestimmte Teil eines Paketes einen Header-Abschnitt des Paketes umfasst.
5. Interface nach Anspruch 4, bei welchem der vorbestimmte Teil des Pakets eine Kennung für einen virtuellen Pfad in dem Header-Abschnitts des Paketes umfasst.
6. Interface nach Anspruch 5, bei welchem der vorbestimmte Teil des Paketes auch eine Kennung für einen virtuellen Kanal in dem Header-Abschnitt des Pakets umfasst.
7. Interface nach Anspruch 6, bei welchem der Parameter eine neue Kennung für einen virtuellen Kanal und eine neue Kennung für einen virtuellen Pfad umfasst, die die Kennung für den virtuellen Pfad und die Kennung für den virtuellen Kanal in dem Header-Abschnitt des Paketes ersetzt.
8. Interface nach Anspruch 1, bei welchem der Parameter einen Netzwerknutzungsparameter enthält.
9. Interface nach Anspruch 8, bei welchem der Nutzungsparameter einen Bandbreitennutzungsparameter umfasst.
10. Interface nach Anspruch 8, bei welchem der Nutzungsparameter ein einen Diskontinuitätsparameter umfasst.
11. Interface nach Anspruch 8, das eine Einrichtung aufweist, die ermittelt, ob eine Verletzung eines Netzwerknutzungsparameters aufgetreten ist.
12. Interface nach Anspruch 11, bei welchem die Ermittlungseinrichtung eine Einrichtung zum Bewirken eines "Leaky Bucket"-Prozesses aufweist.
13. Interface nach Anspruch 11, das eine Einrichtung zum Verwerfen des Paketes als Reaktion auf die Verletzung eines Netzwerknutzungsparameters aufweist.
14. Interface nach Anspruch 11, das eine Einrichtung zum Markieren des Pakets als verwertbar als Reaktion auf die Verletzung des Netzwerknutzungsparameters aufweist.
15. Interface nach Anspruch 11, das eine Einrichtung zum Umformen des von dem Interface ausgegebenen Verkehrs als Reaktion auf die Verletzung des Netzwerknutzungsparameters aufweist.
16. Interface nach Anspruch 1, das eine Einrichtung zum Verändern des vorbestimmten Teiles des Pakets als Reaktion auf den Parameter aufweist.
17. Interface nach Anspruch 16, bei welchem die Veränderungseinrichtung eine Veränderungsmaske umfasst.
18. Interface nach Anspruch 1, das eine Einrichtung zum Auswählen eines vorbestimmten Abschnittes des Paketes aufweist, um eine Übereinstimmung in dem inhaltsadressierbaren Speicher zu ermitteln.
19. Interface nach Anspruch 18, bei welchem die Auswahleinrichtung eine Identifizierungsmaske ist.
DE69330904T 1992-12-04 1993-11-26 Paketnetz-Schnittstelle Expired - Lifetime DE69330904T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US98542592A 1992-12-04 1992-12-04

Publications (2)

Publication Number Publication Date
DE69330904D1 DE69330904D1 (de) 2001-11-15
DE69330904T2 true DE69330904T2 (de) 2002-06-20

Family

ID=25531482

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69330904T Expired - Lifetime DE69330904T2 (de) 1992-12-04 1993-11-26 Paketnetz-Schnittstelle

Country Status (5)

Country Link
US (2) US5898689A (de)
EP (1) EP0600683B1 (de)
JP (1) JP3078439B2 (de)
CA (1) CA2110653C (de)
DE (1) DE69330904T2 (de)

Families Citing this family (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5487061A (en) * 1994-06-27 1996-01-23 Loral Fairchild Corporation System and method for providing multiple loss and service priorities
US5745488A (en) * 1996-04-29 1998-04-28 Motorola, Inc. Method and apparatus for detection of packet types in a communications network
NO304960B1 (no) * 1996-06-12 1999-03-08 Ericsson Telefon Ab L M FremgangsmÕte for unders°kelse av trafikkanalyse, spesielt i ATM (Asyncronous Transfer Mode) nett
DE19629765A1 (de) * 1996-07-23 1998-01-29 Siemens Ag Verfahren zur Adreßreduktion in ATM-Vermittlungssystemen
US5956336A (en) * 1996-09-27 1999-09-21 Motorola, Inc. Apparatus and method for concurrent search content addressable memory circuit
FR2759227B1 (fr) 1997-02-04 1999-04-16 Fihem Procede pour associer des donnees a des cellules atm
JP3445459B2 (ja) * 1997-02-07 2003-09-08 沖電気工業株式会社 セル組立装置
FI107691B (fi) 1997-02-12 2001-09-14 Nokia Networks Oy Liikkuvuuden ja puhelunohjaustoimintojen kontrollointi ATM-ympäristössä
US6236654B1 (en) 1997-02-14 2001-05-22 Advanced Micro Devices, Inc. Method and apparatus for managing learning in an address table in memory
EP0862348A1 (de) 1997-02-28 1998-09-02 Alcatel Schnittstellenvorrichtung zur Extraktion von M Sätzen von Bits aus N Sätzen von Bits, mit Steuereinrichtung und logischer Zelle
ATE224559T1 (de) * 1997-02-28 2002-10-15 Cit Alcatel Schnittstellenvorrichtung zur ersetzung von m sätzen von bits aus n sätzen von bits, mit steuereinrichtung und logischer zelle
JP3003779B2 (ja) * 1997-06-24 2000-01-31 日本電気株式会社 通信システム
US6269082B1 (en) * 1997-07-07 2001-07-31 Paradyne Corporation System and method for multiplexing a frame relay virtual circuit and for performing non-disruptive diagnostics through a circuit using asynchronous transfer mode
JP3801740B2 (ja) * 1997-08-13 2006-07-26 富士通株式会社 セル流量制御方法及びこれを用いるセル交換システム
US6084877A (en) * 1997-12-18 2000-07-04 Advanced Micro Devices, Inc. Network switch port configured for generating an index key for a network switch routing table using a programmable hash function
US6810040B1 (en) 1997-12-22 2004-10-26 Cisco Technology, Inc. Method and apparatus for configuring network devices
US6700890B1 (en) 1997-12-22 2004-03-02 Cisco Technology, Inc. Method and apparatus for configuring permanent virtual connection (PVC) information stored on network devices in an ATM network logically configured with subnetworks
US6490276B1 (en) * 1998-06-29 2002-12-03 Nortel Networks Limited Stackable switch port collapse mechanism
US6658002B1 (en) * 1998-06-30 2003-12-02 Cisco Technology, Inc. Logical operation unit for packet processing
AU4848799A (en) * 1998-07-08 2000-02-01 Broadcom Corporation High performance self balancing low cost network switching architecture based ondistributed hierarchical shared memory
US7707600B1 (en) * 1998-08-21 2010-04-27 Intel Corporation Confirming video transmissions
JP5113963B2 (ja) * 1998-12-03 2013-01-09 ノーテル・ネットワークス・リミテッド インターネットにアクセスする加入者への所望のサービス・ポリシーの提供
US6466976B1 (en) 1998-12-03 2002-10-15 Nortel Networks Limited System and method for providing desired service policies to subscribers accessing the internet
US6633563B1 (en) 1999-03-02 2003-10-14 Nortel Networks Limited Assigning cell data to one of several processors provided in a data switch
FR2787267B1 (fr) * 1998-12-14 2001-02-16 France Telecom Dispositif et procede de traitement d'une sequence de paquets d'information
US6718382B1 (en) * 1999-02-11 2004-04-06 Yunzhou Li Technique for detecting leaky points within a network protocol domain
FR2790893B1 (fr) 1999-03-12 2001-06-15 St Microelectronics Sa Dispositif d'association d'index a des adresses choisies parmi un nombre de valeurs plus grand que le nombre d'index disponibles
US6639915B1 (en) * 1999-04-07 2003-10-28 Utstarcom, Inc. Method and apparatus for transmission of voice data in a network structure
GB2349717A (en) * 1999-05-04 2000-11-08 At & T Lab Cambridge Ltd Low latency network
JP2000341272A (ja) * 1999-05-25 2000-12-08 Fujitsu Ltd Atm通信システム及びatm通信システムにおける輻輳状態検出方法並びにatm通信装置
US6647413B1 (en) * 1999-05-28 2003-11-11 Extreme Networks Method and apparatus for measuring performance in packet-switched networks
US6560610B1 (en) 1999-08-10 2003-05-06 Washington University Data structure using a tree bitmap and method for rapid classification of data in a database
US6526474B1 (en) 1999-10-25 2003-02-25 Cisco Technology, Inc. Content addressable memory (CAM) with accesses to multiple CAM arrays used to generate result for various matching sizes
US7058728B1 (en) * 1999-10-29 2006-06-06 Nokia Corporation Method and apparatus for initiating compression of headers of packets and refreshing the context related to the packets
US7257328B2 (en) * 1999-12-13 2007-08-14 Finisar Corporation System and method for transmitting data on return path of a cable television system
US6388991B1 (en) 1999-12-23 2002-05-14 West Communications International Inc. Method and system for interfacing between circuit network switches and ATM edge switches
GB2362070B (en) * 2000-05-05 2004-06-16 Nokia Mobile Phones Ltd Communication devices and method of communication
US6725326B1 (en) 2000-08-15 2004-04-20 Cisco Technology, Inc. Techniques for efficient memory management for longest prefix match problems
KR100405840B1 (ko) * 2000-10-27 2003-11-14 엘지전자 주식회사 비동기전송모드 교환기의 보드이중화 장치 및 그 제어방법
US6606681B1 (en) 2001-02-23 2003-08-12 Cisco Systems, Inc. Optimized content addressable memory (CAM)
US6862281B1 (en) 2001-05-10 2005-03-01 Cisco Technology, Inc. L4 lookup implementation using efficient CAM organization
US7002965B1 (en) * 2001-05-21 2006-02-21 Cisco Technology, Inc. Method and apparatus for using ternary and binary content-addressable memory stages to classify packets
US7260673B1 (en) 2001-07-20 2007-08-21 Cisco Technology, Inc. Method and apparatus for verifying the integrity of a content-addressable memory result
US7167471B2 (en) * 2001-08-28 2007-01-23 International Business Machines Corporation Network processor with single interface supporting tree search engine and CAM
US8213322B2 (en) * 2001-09-24 2012-07-03 Topside Research, Llc Dynamically distributed weighted fair queuing
US7362751B2 (en) 2001-10-03 2008-04-22 Topside Research, Llc Variable length switch fabric
US7065083B1 (en) 2001-10-04 2006-06-20 Cisco Technology, Inc. Method and apparatus for dynamically generating lookup words for content-addressable memories
US6775737B1 (en) 2001-10-09 2004-08-10 Cisco Technology, Inc. Method and apparatus for allocating and using range identifiers as input values to content-addressable memories
US20030088694A1 (en) * 2001-11-02 2003-05-08 Internet Machines Corporation Multicasting method and switch
US7203203B2 (en) * 2001-12-05 2007-04-10 Internet Machines Corp. Message ring in a switching network
US6715029B1 (en) 2002-01-07 2004-03-30 Cisco Technology, Inc. Method and apparatus for possibly decreasing the number of associative memory entries by supplementing an associative memory result with discriminator bits from an original set of information
US6970971B1 (en) * 2002-01-08 2005-11-29 Cisco Technology, Inc. Method and apparatus for mapping prefixes and values of a hierarchical space to other representations
US6961808B1 (en) 2002-01-08 2005-11-01 Cisco Technology, Inc. Method and apparatus for implementing and using multiple virtual portions of physical associative memories
US6967951B2 (en) * 2002-01-11 2005-11-22 Internet Machines Corp. System for reordering sequenced based packets in a switching network
US6871262B1 (en) 2002-02-14 2005-03-22 Cisco Technology, Inc. Method and apparatus for matching a string with multiple lookups using a single associative memory
US7135508B2 (en) * 2002-02-20 2006-11-14 The University Of Chicago Coatings and films derived from clay/wax nanocomposites
US6972978B1 (en) 2002-03-15 2005-12-06 Integrated Device Technology, Inc. Content addressable memory (CAM) devices with block select and pipelined virtual sector look-up control and methods of operating same
US6867991B1 (en) 2003-07-03 2005-03-15 Integrated Device Technology, Inc. Content addressable memory devices with virtual partitioning and methods of operating the same
US7320037B1 (en) 2002-05-10 2008-01-15 Altera Corporation Method and apparatus for packet segmentation, enqueuing and queue servicing for multiple network processor architecture
US7339943B1 (en) 2002-05-10 2008-03-04 Altera Corporation Apparatus and method for queuing flow management between input, intermediate and output queues
US7606248B1 (en) 2002-05-10 2009-10-20 Altera Corporation Method and apparatus for using multiple network processors to achieve higher performance networking applications
US20030214949A1 (en) * 2002-05-16 2003-11-20 Nadim Shaikli System for reordering sequenced based packets in a switching network
US7336669B1 (en) 2002-05-20 2008-02-26 Altera Corporation Mechanism for distributing statistics across multiple elements
US7593334B1 (en) * 2002-05-20 2009-09-22 Altera Corporation Method of policing network traffic
US7336660B2 (en) * 2002-05-31 2008-02-26 Cisco Technology, Inc. Method and apparatus for processing packets based on information extracted from the packets and context indications such as but not limited to input interface characteristics
US7299317B1 (en) 2002-06-08 2007-11-20 Cisco Technology, Inc. Assigning prefixes to associative memory classes based on a value of a last bit of each prefix and their use including but not limited to locating a prefix and for maintaining a Patricia tree data structure
US7558775B1 (en) 2002-06-08 2009-07-07 Cisco Technology, Inc. Methods and apparatus for maintaining sets of ranges typically using an associative memory and for using these ranges to identify a matching range based on a query point or query range and to maintain sorted elements for use such as in providing priority queue operations
US7313667B1 (en) 2002-08-05 2007-12-25 Cisco Technology, Inc. Methods and apparatus for mapping fields of entries into new values and combining these mapped values into mapped entries for use in lookup operations such as for packet processing
US7177978B2 (en) * 2002-08-10 2007-02-13 Cisco Technology, Inc. Generating and merging lookup results to apply multiple features
US7028136B1 (en) 2002-08-10 2006-04-11 Cisco Technology, Inc. Managing idle time and performing lookup operations to adapt to refresh requirements or operational rates of the particular associative memory or other devices used to implement the system
US7103708B2 (en) * 2002-08-10 2006-09-05 Cisco Technology, Inc. Performing lookup operations using associative memories optionally including modifying a search key in generating a lookup word and possibly forcing a no-hit indication in response to matching a particular entry
US7349382B2 (en) * 2002-08-10 2008-03-25 Cisco Technology, Inc. Reverse path forwarding protection of packets using automated population of access control lists based on a forwarding information base
US7065609B2 (en) * 2002-08-10 2006-06-20 Cisco Technology, Inc. Performing lookup operations using associative memories optionally including selectively determining which associative memory blocks to use in identifying a result and possibly propagating error indications
US7689485B2 (en) * 2002-08-10 2010-03-30 Cisco Technology, Inc. Generating accounting data based on access control list entries
AU2003265288B2 (en) * 2002-08-10 2008-08-28 Cisco Technology, Inc. Associative memory with enhanced capabilities
US7082492B2 (en) * 2002-08-10 2006-07-25 Cisco Technology, Inc. Associative memory entries with force no-hit and priority indications of particular use in implementing policy maps in communication devices
US7441074B1 (en) 2002-08-10 2008-10-21 Cisco Technology, Inc. Methods and apparatus for distributing entries among lookup units and selectively enabling less than all of the lookup units when performing a lookup operation
US6717946B1 (en) 2002-10-31 2004-04-06 Cisco Technology Inc. Methods and apparatus for mapping ranges of values into unique values of particular use for range matching operations using an associative memory
US7941605B1 (en) 2002-11-01 2011-05-10 Cisco Technology, Inc Methods and apparatus for generating a result based on a lookup result from a lookup operation using an associative memory and processing based on a discriminator portion of a lookup word
US20040098509A1 (en) * 2002-11-14 2004-05-20 Vic Alfano System for reordering sequenced based packet segments in a switching network
US7024515B1 (en) 2002-11-15 2006-04-04 Cisco Technology, Inc. Methods and apparatus for performing continue actions using an associative memory which might be particularly useful for implementing access control list and quality of service features
US7496035B1 (en) 2003-01-31 2009-02-24 Cisco Technology, Inc. Methods and apparatus for defining flow types and instances thereof such as for identifying packets corresponding to instances of the flow types
US7990987B2 (en) 2003-02-25 2011-08-02 Topside Research, Llc Network processor having bypass capability
US8190858B2 (en) * 2003-02-25 2012-05-29 Topside Research, Llc Interface device for interfacing a main processor to processing engines and classifier engines, and methods for configuring and operating interface devices
US20040190506A1 (en) * 2003-03-24 2004-09-30 International Business Machines Corp. Method and apparatus for performing complex pattern matching in a data stream within a computer network
US7421532B2 (en) * 2003-11-18 2008-09-02 Topside Research, Llc Switching with transparent and non-transparent ports
US7454552B2 (en) * 2003-11-18 2008-11-18 Topside Research, Llc Switch with transparent and non-transparent ports
US7539190B2 (en) * 2004-01-05 2009-05-26 Topside Research, Llc Multicasting in a shared address space
US7426602B2 (en) * 2004-01-08 2008-09-16 Topside Research, Llc Switch for bus optimization
US8320240B2 (en) * 2004-11-30 2012-11-27 Broadcom Corporation Rate limiting and minimum and maximum shaping in a network device
US20060187936A1 (en) * 2005-02-18 2006-08-24 Broadcom Corporation Table searching techniques in a network device
US8331380B2 (en) * 2005-02-18 2012-12-11 Broadcom Corporation Bookkeeping memory use in a search engine of a network device
US7606231B2 (en) 2005-02-18 2009-10-20 Broadcom Corporation Pipeline architecture for a network device
US20060187923A1 (en) * 2005-02-18 2006-08-24 Broadcom Corporation Dynamic filter processor key generation based on packet type
US7983291B2 (en) * 2005-02-18 2011-07-19 Broadcom Corporation Flexible packet modification engine for a network device
US8457131B2 (en) * 2005-02-18 2013-06-04 Broadcom Corporation Dynamic table sharing of memory space within a network device
US8228932B2 (en) * 2005-02-18 2012-07-24 Broadcom Corporation Layout architecture for expandable network device
US7529191B2 (en) * 2005-02-18 2009-05-05 Broadcom Corporation Programmable metering behavior based on table lookup
US20060203824A1 (en) * 2005-02-18 2006-09-14 Song-Huo Yu Passing values through a memory management unit of a network device
US20060187828A1 (en) * 2005-02-18 2006-08-24 Broadcom Corporation Packet identifier for use in a network device
US20060187917A1 (en) * 2005-02-18 2006-08-24 Broadcom Corporation Pre-learning of values with later activation in a network device
US20060187920A1 (en) * 2005-02-18 2006-08-24 Broadcom Corporation Flexible packet modification engine
US20060187924A1 (en) * 2005-02-18 2006-08-24 Broadcom Corporation Ingress handling of data in a network device
US20060187948A1 (en) * 2005-02-18 2006-08-24 Broadcom Corporation Layer two and layer three virtual private network support in a network device
US20060187832A1 (en) * 2005-02-18 2006-08-24 Broadcom Corporation Filter based range check in a network device
US7577096B2 (en) * 2005-02-18 2009-08-18 Broadcom Corporation Timestamp metering and rollover protection in a network device
US7953002B2 (en) * 2005-11-10 2011-05-31 Broadcom Corporation Buffer management and flow control mechanism including packet-based dynamic thresholding
US7953008B2 (en) * 2005-11-10 2011-05-31 Broadcom Corporation Cell copy count hazard detection
US7869411B2 (en) * 2005-11-21 2011-01-11 Broadcom Corporation Compact packet operation device and method
US20100057685A1 (en) * 2008-09-02 2010-03-04 Qimonda Ag Information storage and retrieval system
US9369409B2 (en) * 2013-08-12 2016-06-14 Nec Corporation End-to-end hitless protection in packet switched networks
CN111817393B (zh) * 2020-07-17 2022-06-28 上海布鲁可积木科技有限公司 一种可配对件之间充电组网结构的充电与通信切换电路

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2524239A1 (fr) * 1982-03-29 1983-09-30 Telediffusion Fse Equipement de mesure de voies numeriques multiplexees par paquet dans un signal notamment analogique
US4827473A (en) * 1985-09-30 1989-05-02 Nec Corporation Packet switching system
US4769811A (en) * 1986-12-31 1988-09-06 American Telephone And Telegraph Company, At&T Bell Laboratories Packet switching system arranged for congestion control
JPH0290834A (ja) * 1988-09-28 1990-03-30 Hitachi Ltd Atm通話路装置及びatm回線終端装置
US5058111A (en) * 1989-06-19 1991-10-15 Oki Electric Industry Co., Ltd. Subscriber line interface circuit in a switching system
US5313455A (en) * 1990-04-23 1994-05-17 Koninklijke Ptt Nederland N.V. Transmission system with recording of untransmitted packets
EP0470283B1 (de) * 1990-08-08 1997-02-19 Siemens Aktiengesellschaft Verfahren und Schaltungsanordnung zum Ermitteln der Güte von über eine ATM-Vermittlungseinrichtung verlaufenden virtuellen Verbindungen
CA2049428C (en) * 1990-08-20 1996-06-18 Yasuro Shobatake Atm communication system
JPH04138743A (ja) * 1990-09-29 1992-05-13 Toshiba Corp トラヒック監視方式
US5121383A (en) * 1990-11-16 1992-06-09 Bell Communications Research, Inc. Duration limited statistical multiplexing in packet networks
ES2072537T3 (es) * 1991-02-01 1995-07-16 Siemens Ag Procedimiento para el control e igualacion de corrientes de datos, que se transmiten segun un procedimiento de transmision asincrono.
GB2253118B (en) * 1991-02-20 1995-04-12 Roke Manor Research Improvements in or relating to asynchronous transfer mode switching system
US5274768A (en) * 1991-05-28 1993-12-28 The Trustees Of The University Of Pennsylvania High-performance host interface for ATM networks
EP0528075A1 (de) * 1991-08-19 1993-02-24 ALCATEL BELL Naamloze Vennootschap Verfahren und Vorrichtung zum Messen der Leistung in einer Telekommunkationsleitung
DE69129851T2 (de) * 1991-09-13 1999-03-25 International Business Machines Corp., Armonk, N.Y. Konfigurierbare gigabit/s Vermittlunganpassungseinrichtung
US5850385A (en) * 1991-09-24 1998-12-15 Kabushiki Kaisha Toshiba Cell loss rate sensitive routing and call admission control method
JP3064650B2 (ja) * 1992-03-27 2000-07-12 株式会社日立製作所 同報通信装置
US5287347A (en) * 1992-06-11 1994-02-15 At&T Bell Laboratories Arrangement for bounding jitter in a priority-based switching system
CA2097350C (en) * 1992-08-17 1998-12-22 Shahrukh S. Merchant Asynchronous transfer mode (atm) transmission test cell generator
US5289462A (en) * 1992-08-19 1994-02-22 International Business Machines Corp. Traffic management in packet communications networks
US5390188A (en) * 1993-08-02 1995-02-14 Synoptics Method and apparatus for measuring and monitoring the performance within a ring communication network
US5495478A (en) * 1994-11-14 1996-02-27 Dsc Communications Corporation Apparatus and method for processing asynchronous transfer mode cells
US5793976A (en) * 1996-04-01 1998-08-11 Gte Laboratories Incorporated Method and apparatus for performance monitoring in electronic communications networks
US5790524A (en) * 1996-05-13 1998-08-04 Lockheed Martin Corporation Detection of lost packets in switching networks used with scalable coherent interfaces

Also Published As

Publication number Publication date
JP3078439B2 (ja) 2000-08-21
US6519226B1 (en) 2003-02-11
JPH06232906A (ja) 1994-08-19
US5898689A (en) 1999-04-27
EP0600683A3 (en) 1997-08-27
CA2110653A1 (en) 1994-06-05
EP0600683A2 (de) 1994-06-08
DE69330904D1 (de) 2001-11-15
EP0600683B1 (de) 2001-10-10
CA2110653C (en) 2001-01-02

Similar Documents

Publication Publication Date Title
DE69330904T2 (de) Paketnetz-Schnittstelle
DE69434958T2 (de) Vermittlungseinrichtung nach einem asynchronen Transfermodus (ATM)
DE68928867T2 (de) ATM-Vermittlungssystem
DE69900492T2 (de) Grosse kombinierte Breitband und Schmalband Vermittlungsstelle
DE69726995T2 (de) Mehrfachsende-Leitweglenkung in mehrstufigen Netzen
DE60026676T2 (de) Paketklassifizierungsautomat
DE60021846T2 (de) Leitweglenkungsanordnung
DE69635880T2 (de) Anlage und Methode zur Übertragung von Paketen, geeignet für eine grosse Anzahl von Eingangstoren
DE69428107T2 (de) Atm-vermittlung mit kontrolliertem zugang
DE3880692T2 (de) Schnelle datenpaketübermittlung für digitale netze.
DE60033529T2 (de) Netzprozessor, speicherorganisation und verfahren
DE69733703T2 (de) Puffer von Mehrfachsendezellen in Vermittlungsnetzen
DE69332347T2 (de) Koppelnetz mit einem Reservierungsring
DE69324274T2 (de) Selektive überlastungsregelung für informationsnetze
DE69233588T2 (de) ATM-Vermittlungsanordnung
DE3787600T2 (de) Koppelpunktschaltung für Datenpaketraumvermittlung.
DE69033340T2 (de) Verfahren und Vorrichtung zur Vermittlung von Paketen fester Länge wie ATM-Zellen
EP0762694A1 (de) Lokales, nach dem asynchronen Transfermodus (ATM) arbeitendes Netzwerk mit wenigstens zwei Ringsystemen
DE69129952T2 (de) Vorrichtung zur Paketübermittlungsregulierung
DE69938257T2 (de) Interne leitweglenkung durch einen mehrstufigen atm knoten
EP0692893B1 (de) Vorrichtung zur Vermittlung in digitalen Datennetzen für asynchronen Transfermodus
DE69308141T2 (de) Schnittstellenverfahren für einen atm-vermittlungskern
DE3881574T2 (de) Vermittlungsverfahren für integrierte Sprach/Daten-Übertragung.
DE69227444T2 (de) Einrichtung für die Erzeugung von Mehradresspaketen in einem Paketvermittlungssystem
DE69209694T2 (de) Kopfübersetzungseinheit für ein ATM-Vermittlungssystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition