[go: up one dir, main page]

DE69129851T2 - Konfigurierbare gigabit/s Vermittlunganpassungseinrichtung - Google Patents

Konfigurierbare gigabit/s Vermittlunganpassungseinrichtung

Info

Publication number
DE69129851T2
DE69129851T2 DE69129851T DE69129851T DE69129851T2 DE 69129851 T2 DE69129851 T2 DE 69129851T2 DE 69129851 T DE69129851 T DE 69129851T DE 69129851 T DE69129851 T DE 69129851T DE 69129851 T2 DE69129851 T2 DE 69129851T2
Authority
DE
Germany
Prior art keywords
payload
memory
fixed
header
queue
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
DE69129851T
Other languages
English (en)
Other versions
DE69129851D1 (de
Inventor
Marco Ch-8802 Kilchberg Heddes
Ronald Peter Ch-8942 Oberrieden Luijten
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.)
Qualcomm Inc
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE69129851D1 publication Critical patent/DE69129851D1/de
Application granted granted Critical
Publication of DE69129851T2 publication Critical patent/DE69129851T2/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • 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/3063Pipelined operation
    • 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
    • H04L2012/5653Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly using the ATM adaptation layer [AAL]
    • 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

Landscapes

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

Description

    TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft ein Datenübermittlungssystem und bezieht sich auf ein Verfahren zur Umwandlung von anwenderspezifischen Datenübertragungsblöcken in Zellen fester Größe, z. B. ATM-Zellen (Asynchronous Transfer Mode - Asynchroner Übertragungs-Modus), so daß die Zellen fester Größe durch eine zellenbearbeitende Verschaltung transportiert werden können. Eine Hardware-Implementierung dieses Verfahrens besteht aus zwei Teilen, einem Sender und einem Empfänger, die beide Teil eines Vermittlungs-Untersystems sind, das eine Verschaltung enthält. Der Sender puffert die Anwenderdaten und segmentiert sie zu Zellen fester Länge, die durch die Vermittlung transportiert werden sollen. Der Empfängerteil setzt die Anwenderdaten bei Eingang dieser Zellen wieder zusammen.
  • DER ERFINDUNG ZUGRUNDELIEGENDER ALLGEMEINER STAND DER TECHNIK
  • Mit den ständig wachsenden, zu übermittelnden Datenmengen und der zunehmenden Zahl von Datenkanälen, die unterstützt werden müssen, wird das schnelle Informationsvermitteln mehr und mehr eine wichtige Aufgabe in jedem Kommunikationsnetz. Die Netzknoten, an denen die Übertragungsleitungen (Übermitt lungs-Links) zusammengeschlossen sind, so daß Informationen zwischen ihnen ausgetauscht werden können, sind oft Ursache für Verzögerungen im Netz. Es ist daher erwünscht, Vermittlungselemente zu haben, die schnell und in der Praxis nicht- blockierend sind. Neue Möglichkeiten ergeben sich durch Verschaltungen, die mehrere Eingänge und Ausgänge verknüpfen. Die Vorteile, die in der Vermittlungstechnik gemacht wurden, ermöglichen den Aufbau von Verschaltungen für Breitband- Bänder und Hochgeschwindigkeitskommunikation.
  • Diese Vermittlungen müssen unter Hochgeschwindigkeit zwei Grundfunktionen ausführen. Erstens müssen sie den bei ihren Eingängen ankommenden Verkehr mit hoher Zuverlässigkeit an die richtigen Ausgänge weiterleiten. Zweitens muß die Vermittlung mit der Ausgangskonkurrenz fertig werden, wenn der Verkehr, der gleichzeitig an zwei oder mehr Eingängen ankommt, für einen gemeinsamen Ausgang bestimmt ist.
  • Beim Leitungsvermitteln ist die Konkurrenz kein Problem. Sie wird verhütet durch Benutzen eines Controllers, der die Eingänge so plant, daß Konflikte vermieden werden. Eine herkömmliche Zeit-Raum-Zeit-Vermittlung für eine leitungsvermittelte Verbindung ist angegeben im Buch "An Introduction to Digital Integrated Communication Systems" von H. Inose, University of Tokyo Press, Tokio, Japan, 1979.
  • Bei der Paketvermittlung sind jedoch die an einer Vermittlung ankommenden Pakete unplanmäßig, wobei jedes eine Kopfzeile mit der Adresseninformation enthält. Ohne Koordinierung durch einen zentralen Abwickler müssen die eingegangenen Pakete gepuffert werden, um Probleme an den Ausgängen zu vermeiden. Eine beschreibende Übersicht über die hauptsächlichen neueren Aktivitäten auf dem Gebiet der Paketvermittlung wird gegeben in einem Artikel von H. Ahmadi et al., "A Survey of Modern High-Performance Switching Techniques", IEEE J. SAC, Bd. 7 Nr. 7, September 1989, S. 1091-1103. Eine typische Paketvermittlung wird beschrieben in dem Artikel "The Knockout Switch: A Simple, Modular Architecture For High-Performance Packet Switching" von Y.S. Yeh et al., XII International Switching Symposium ISS'87, Phoenix, Arizona, USA, 15.-20. März 1987, Abhandlung B 10.2, oder im Artikel "The Knockout Switch: A Simple, Modular Architecture For High-Performance Packet Switching" der gleichen Autoren, IEEE Journal on Selected Areas in Communication, Bd. SAC-5, Nr..8; Oktober 1987, S. 1274-1283. Die von Yeh et al. beschriebenen Schaltelemente beinhalten einen 'Konzentrator' zum Konzentrieren der über N Eingangsleitungen ankommenden Pakete auf eine kleinere Anzahl von L Leitungen. Ein 'Zeitraster-Server' wird benutzt, um die Pakete von den L Ausgangsleitungen entgegenzunehmen und sie in den ersten verfügbaren FIFO- Puffer abzuspeichern, der mit dem Ausgang, an den das Paket gerichtet ist, verbunden ist. L gesonderte FIFO-Puffer werden in der Konstruktion benutzt, um für den schlechtestmöglichen Fall bereitzustehen, wenn in einem Zeitschlitz L Pakete aus dem Konzentrator auftauchen. Ein weiteres Beispiel für einen Paketvermittler ist das gepufferte "Fast-Packet-Switching- Module", das in "Packet Switching Module" von W. Denzel et al., IBM Technical Disclosure Bulletin, Bd. 32, Nr. 10B, März 1990, S. 176-177 beschrieben wird. In dieser Vermittlung werden die Bestimmungskopfzeilen beim Eingang im Vermittlung von den Datenpaketen abgetrennt. Diese Pakete werden dann unter einer spezifischen Adresse in einem Paketpufferspeicher gespeichert und dann läuft diese Pufferadresse durch die Steuersektion des Paketvermittlungsmoduls. Am Ausgang der Vermittlung wird die Pufferadresse benutzt, um das Datenpaket aus dem Paketpufferspeicher zu holen.
  • In der Europäischen Patentanmeldung EP-A-0355797 wird ein Signalisierungsgerät zur Verwendung in einem ATM Vermittlungssystem geoffenbart und beansprucht. Es ist das grund legende Merkmal dieses Geräts, daß die Zellenidentifizierungsinfomation von den Zellendaten (Nutzlast) getrennt bearbeitet wird.
  • In der Europäischen Patentanmeldung EP-A-0299473 wird ein weiteres Vermittlungssystem angesprochen.
  • Die meisten neueren Vorschläge für diese Hochleistungs-Verschaltungen beruhen auf der Grundlage des bekannten Prinzips, das als Schnellpaketvermittlung (FPS - Fast Packet Switching) bekannt ist. Wie im oben zitierten Artikel im Technical Disclosure Bulletin beschrieben, ist für diese Art Vermittlung ein hoher Grad von Parallelität, verteilte Steuerung und Streckenführung, ausgeführt auf Hardware-Ebene, erforderlich. Zur Verwendung solcher Vermittlungen in Kommunikationsnetzen müssen die Daten an die zugrundeliegende Zellenstruktur der Vermittlung angepaßt werden.
  • Das oben angezogene Paketvermittlungsmodul transportiert Daten in Zellen fester Länge von den Eingängen zu den Ausgängen. Ein Beispiel für eine Zelle fester Länge ist eine ATM-Zelle bestehend aus einer Kopfzeile und einem Zellendatenfeld. Zum Einsetzen dieser Vermittlung in unterschiedlichen Systemen muß ein Adapter benutzt werden, der die vom Anwender gesendeten Datenblöcke durch die Vermittlung schickt.
  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zum Umwandeln der Anwender-Datenblöcke zu Zellen fester Länge und zum Neuaufbau der Zellen fester Länge zu den ursprünglichen Anwender-Datenblöcken. Daten, die von einem Anwender gesendet werden, werden zu Zellen fester Länge segmentiert, wie von der Verschaltung gefordert, durch die Vermittlung geschickt und am Ausgang wieder zusammengebaut werden. Eine Hardware- Implementierung dieses Verfahrens, wie nachstehend beschrie ben, beinhaltet zwei Teile, genannt Sender und Empfänger. Dieser Sender empfängt Anwenderdaten, segmentiert sie zu Zellen fester Länge, und sendet sie zur Verschaltung. Diese Zellen fester Länge werden durch die Vermittlung geschickt und vom Empfänger aufgenommen, der die Zellen wieder zu Anwenderdatenblöcken zusammenbaut. Der Sender, die Verschaltung und der Sender sind Teile eines Vermittlungs- Untersystems, so daß der Anwender Anwenderdatenblöcke an die Vermittlung sendet, ohne den zugrundeliegenden Transportmechanismus zu kennen.
  • Der Anmelder kennt kein Verfahren auf dem Stand der Technik, das sich auf Hochgeschwindigkeitsprotokolladapter für Paketvermittlung oder Verschaltungen bezieht.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die Hauptaufgabe der vorliegenden Erfindung ist das Vorsehen eines Verfahrens zum Umwandeln der anwenderspezifischen Datenblöcke in Zellen fester Länge, wie von einer Vermittlung gefordert, sowie auf der anderen Seite Umwandeln von Zellen fester Länge in anwenderspezifische Datenblöcke.
  • Eine weitere Aufgabe ist die Implementierung des Verfahrens in einem Adapter für Hochgeschwindigkeitskommunikation.
  • Die Erfindung in nachstehender Beschreibung gemäß den entsprechenden Ansprüchen löst diese Aufgaben durch Vorsehen der Abtrennung der Kopfzeile mit den Steuerinformationen von der Nutzlast, so daß beide Teile parallel bearbeitet werden können. Durch fliegende Bearbeitung der Kopfzeile wird eine Speichersektion für die Nutzlast innerhalb einer festen Anzahl von Taktzyklen zuordenbar.
  • BESCHREIBUNG DER ZEICHNUNGEN
  • Nachstehend wird die Erfindung anhand der nachstehenden Zeichnungen detailliert beschrieben.
  • Fig. 1 zeigt ein globales Blockschaltbild eines Vermittlungsuntersystems, enthaltend eine Hardware-Implementierung der vorliegenden Erfindung.
  • Fig. 2A zeigt ein detailliertes Blockschaltbild des Senderteils eines Protokolladapters.
  • Fig. 2B zeigt ein detailliertes Blockschaltbild des Empfängerteils eines Protokolladapters.
  • Fig. 3 zeigt Zellen fester Länge mit Kopfzeilen fester Länge.
  • Fig. 4 zeigt ein detailliertes Blockschaltbild des Empfängerteils des Protokolladapters.
  • Fig. 5 ist ein Schemadiagramm der inneren Datenstruktur des Kopfzeilen-Prozessors.
  • Fig. 6 zeigt ein Zeitdiagramm eines Neuabgleichs und ein Beispiel für ein Pipelineregister.
  • Fig. 7A-C zeigen ein Kopfzeilen-Prozessor-Zyklusdiagramm.
  • ALLGEMEINE BESCHREIBUNG
  • Aufgabe der nachstehend in näheren Einzelheiten beschriebenen Adapter ist der Transport von Datenblöcken, nachstehend als Anwenderblöcke bezeichnet, wie aus dem CRMA (Cyclic Reservation Multiple Access) oder OC24/48 (Optical Channel 1,2/2,4 Gb/sec Optical Connection Standard) durch eine Vermittlung unter Verwendung des zugrundeliegenden Zellentransport-Mechanismus. Diese Vermittlungen erfordern, daß Daten in einem festen Zellenformat gesendet werden, und die Adapter führen die Segmentierung der Anwenderblöcke zu Zellen fester Größe sowie den umgekehrten Wiederaufbauprozeß durch. Adapter, die z. B. für CRMA konfiguriert oder programmiert sind, wandeln die Anwenderblöcke, die aus dem CBMA-Netz kommen, in Zellen fester Länge um, wonach diese durch die Verschaltung über den Leitweg geschickt und von einem Empfängeradapter empfangen werden, der nicht unbedingt mit der gleichen Art Netz (CRMA) als Senderadapter verbunden sein muß.
  • Ein Adapter besteht aus einem Sender- und einem Empfängerteil und ist mit einer Vermittlung über eine Eingangs/Ausgangsleitung verbunden. Mehrfachadapter können mit einer Verschaltung verbunden sein.
  • In Fig. 1 ist ein Blockschaltbild eines Vermittlungsuntersystems 10 dargestellt. Dieses System enthält ein Verschaltungselement 11 mit 6 Eingangs- und 6 Ausgangsleitungen. Nicht dargestellte Anwender sind über die Sendeteile 12.1 - 12.6 der Adapter an die Eingangsleitungen des Verschaltungselements 11 angeschlossen. Die Empfängerteile 13.1-13.6 sind an die Ausgangsleitungen der Vermittlung 11 angeschlossen. Im gezeigten Blockschaltbild werden die an den Eingangsleitungen (IN1) ankommenden Anwenderblöcke vom Sender 12.1 in Zellen fester Länge segmentiert, die durch die Verschaltung zum Ausgang 14.1 geleitet werden. Anwenderblöcke auf dem Eingang (IN6) werden vom Sender 12.6 segmentiert und an den gleichen Ausgang 14,1 geschickt. Der an diese Ausgangsleitung angeschlossene Empfänger 13.1 setzt die Anwenderblöcke wieder zusammen und schickt sie über die Ausgangsleitung (OUT1) an die entsprechenden Empfänger der Daten.
  • Die Grundfunktionen einer Adapter-Implementierung auf der Grundlage des erfindungsgegemäßen Verfahrens sind nachstehend aufgelistet:
  • - Segmentierung und Wiederzusammenstellung,
  • - Fehlererfassung und Wiederherstellung,
  • - Unterstützung von Anwenderblöcken unterschiedlicher Priorität,
  • - Datenpuffern,
  • - Pufferverwaltung,
  • - Unterstützung multipler virtueller Kanäle.
  • Die nachstehende Beschreibung einer ersten Ausführungsform der vorliegenden Erfindung konzentriert sich in der Hauptsache auf den Empfängerteil eines Adapters. Der Senderteil arbeitet in analoger Form wie der Empfänger, wie anhand der Fig. 2A und 2B illustriert wird. Von einem Anwender herkommende Datenblöcke werden im Pufferspeicher 24' abgespeichert. Die Absendewarteschlangen 28,1' und 28.2' enthalten Zeiger auf zu sendende Anwenderblöcke. Der Kopfzeilenprozessor 22' liest einen Zeiger aus der Absenderwarteschlange (unter Berücksichtigung jeder erforderlichen Prioritätsregel) und läßt das Senden der entsprechenden Datenblöcke anlaufen, wie nachstehend beschrieben. Die im Pufferspeicher 24' gespeicherten Datenbytes werden in eine Pipeline-Neuabgleicheinheit 23' gelesen. Eine Zelle fester Größe wird gebildet durch Voranstellen einer festen Anzahl Datenbytes mit einer Kopfzeile, die vom Kopfzeilenprozessor 22' herkommt. (Das geschieht durch eine Kopfzeilen-Einschubeinheit 23.2', Teil von 23'). Eine geeignete Implementierung des Kopfzeilenpro zessors 22' kann die Unterbrechung eines Datenblocks, der eben gesendet wird, durch einen Datenblock höherer Priorität ermöglichen.
  • Die erste Ausführungsform ist ein universeller und programmierbarer Hochgeschwindigkeits-Protokolladapter (im Gigabit/s-Bereich) für eine Verschaltung. Nachstehend werden vier neue Grundsätze für einen solchen Adapter beschrieben. Der erste Grundsatz ist die Trennung von Protokolldaten und Steuerzellen, die eine Trennung der Daten und Steuersignale in Hardware unterstützt. Der zweite Grundsatz ist die fliegende Verarbeitung von Zellen, wenn keine Fehler gefunden werden. Der dritte Grundsatz ist die Unterstützung von Anwenderblöcken unterschiedlicher Prioritäten durch Halten der Adressen, wo diese Daten in zusätzlichen Warteschlangen gepuffert sind, und der letzte Grundsatz ist die Programmierbarkeit des Adapters. Nicht nur dessen Steuerprozessor, sondern auch verschiedene Hardwarestrukturen sind programmierbar.
  • Die Trennung von Nutzlast und Steuerinformationen, die eines der grundlegenden Prinzipien ist, wird erzwungen durch Definieren der Datenmodus-Operationen. Diese sind Operationen, die im Datenübertragungszustand ausgeführt werden, wenn keine Fehler auftreten. Verbindungs-Setup, negative Bestätigungen und Steuerzellen usw. sind nicht Teil dieses Datenmodus-Zustands, während positive Bestätigungen Teil desselben sind.
  • Die Fig. 2A und 2B zeigen die grundsätzliche Architektur der Vermittlungsadapter-Hardware 20, 21 der ersten Ausführungsform. Die ankommenden Zellen fester Länge, die von der Verschaltung über die Eingangsleitung 14.1 ankommen, werden fliegend verarbeitet, und die Parameter in den Zellenkopfzeilen werden herausgezogen und an den Kopfzeilenprozessor 22 geschickt. Die Trennung Kopfzeile/Daten erfolgt in einem DEMUX/Kopfzeilen-Auszugsteil 23.1, 23.2 der Einheit 23. Die Parameter werden über Verbindungsleitungen von der Kopfzeilen-Auszugseinheit 23.2 zum Kopfzeilenprozessor 22 geschickt. Das Zellendatenfeld, das hier Zellennutzlast genannt wird, fließt weiter über den Neuabgleich/Pipeline-Teil 23.3, 23.4 der Einheit 23 in den Puffer eines gemeinschaftlich genutzten Speichers 24. Die Adresse eines entsprechenden Puffers wird generiert vom Kopfzeilenprozessor 22 in Kombination mit Zeiger-Warteschlangen 25. Während die, Zellennutzlast neu ausgerichtet und verzögert wird, nachdem sie von der Kopfzeile mit ihren Steuerdaten abgetrennt ist, wird die Pufferadresse generiert. Der Kopfzeilenprozessor 22 schaltet die DEMUX-Einheit 26 über die Anwahlleitung 27 so, daß die Zellennutzlast gespeichert werden kann durch Anwenden der Pufferadresse auf den Speicher 24.
  • Die Pufferadressen werden in die Zeigerwarteschlangen (PTR Q's) 25 gegeben gemäß der Pufferverwaltung, die in der angegebenen Europäischen Patentanmeldung beschrieben ist. Jeder virtuelle Kanal wird durch zwei PTR Qs unterstützt, jeweils einer für jede Verkehrspriorität, wo die von den virtuellen Kanälen zugeteilten Pufferadressen gespeichert sind. Auf die gepufferten Daten eines virtuellen Kanals kann zugegriffen werden durch Lesen der Adressen der entsprechenden Warteschlange, so daß diese Daten an einen Adressaten, d.i. Anwender geschickt werden können. Wenn ein Datenblock, bestehend aus Mehrfachzellen, vollständig eingegangen ist, wird in eine Ankunftswarteschlange ein Eintrag gemacht. In Fig. 2B werden zwei Ankunftswarteschlangen 28.1 und 28.2 gezeigt, die Datenblöcke unterschiedlicher Priorität unterstützen. Dieser Eintrag enthält einen Index, welcher PTR Q benutzt wird, so daß die Adressen abgerufen werden, wo der Datenblock in den Speicherpuffern 24 gespeichert ist. Über die unterschiedlichen Ankunftswarteschlangen 28.1, 28.2 unterstützt der Adapter unterschiedliche Verkehrsprioritäten.
  • Der Verkehrstyp (z. B. RESERVED vs. NON-RESERVED) legt fest, in welcher Ankunftswarteschlange der Eintrag gemacht werden muß.
  • Die obengenannte Neuabgleich/Pipeline-Einheit 23.3, 23.4 ordnet die Daten neu und verzögert sie, so daß die Zellennutzlast mit dem Speicherbus ausgerichtet wird, um eine Verschwendung von Speicherplatz zu vermeiden, und damit der Kopfzeilenprozessor Zeit hat, die Adresse der angeforderten Puffer zu generieren. Die neu zusammenzustellenden Anwenderdatenblöcke werden in der Reihenfolge ihrer gegebenen Prioritäten bearbeitet durch Benutzen der Einträge in den Ankunftswarteschlangen 28.1, 28.2. Die Daten in den Datenblöcken werden zusammen mit der Vermittlungsquellenadresse auf die Leitungen 29, 30 gelegt. Bevor diese Daten am Ausgang 29 zur Verfügung stehen, sendet der Kopfzeilenprozessor 22 Steuerinformationen über die Leitung 31 an den Adressaten. Zum Lesen der Daten, die in einem Anwender-Datenblock neu zusammengestellt werden müssen, werden die Adressen der Puffer, in denen die Daten abgespeichert sind, aus der betreffenden Warteschlange (PTR Q) genommen. Die eingegangene Zellennutzlast, die an einen Bestimmungsort geschickt werden soll, kann als Teil einer Mehrfachzelle fester Länge eingegangen sein. Die Nutzlast dieser Zellen wird in verschiedenen Speicherabschnitten (zugeordneten Puffern) gespeichert. Zum Neuaufbau eines Anwenderdatenblocks werden diese gestreuten Nutzlasten aus den verschiedenen zugeordneten Puffern gelesen durch Entnehmen ihrer Adressen aus den entsprechenden PTR Q. Diese Zeigerverwaltung ist für die Umgebung durchsichtig.
  • Die Mikroprozessor-Schnittstelle 32 und der Steuermikroprozessor 33 des Empfängers 20 und des Senders 21 sind über einen Bus 34 verbunden, so daß Meldungen zwischen dem Empfänger und dem Sender fließen können. Das ist z. B. nötig für den Fall, daß ein Sendewiederholbefehl beim Empfänger 20 eingeht, der vom Sender 21 ausgeführt werden muß.
  • Die Größe einer Zelle fester Länge ist in der Regel weniger als 100 Bytes. In der vorliegenden Erfindung werden die Größe der Zelle fester Länge und die Position und Größe der verschiedenen Steuerfelder in der Zelle so gewählt, daß die Hardware-Komplexität auf einem Minimum gehalten wird. Z. B. haben alle Felder in der Zellenkopfzeile einen festen Platz und eine feste Größe über alle möglichen Zellen, die im TYPE- Feld 40 codiert sind. Das schließt verschiedene Multiplexer und ihre Steuerung in der Hardware aus. Die Zellengröße von 60 Bytes ermöglicht eine leichte Implementierung des Adapters mit einer Hardware-Busbreite von 1, 2, 3, 4, 5 oder 6 Bytes. Einzelheiten der gewählten Zellenstruktur sind anhand von Fig. 3 beschrieben. ATM-kompatiblen Zellen 84 fester Länge sowie allen anderen Zellen 35 fester Länge, die benutzt werden, geht eine Kopfzeile fester Länge 36.1, 36.2 mit einer Länge von 7 Bytes voraus. Alle Zellen 35 fester Länge, mit Ausnahme der ATM-kompatiblen Zellen 84, haben ein CRC (Cyclic Redundancy Check - zyklische Blockprüfung) Byte 37 an ihrem Ende. Diese Prüfung am Ende jeder Zelle verbessert die Fehlererfassung der Datenübertragung. Der untere Teil in Fig. 3 zeigt eine beispielhafte Kopfzeile, der für die erste Ausführungsform geeignet ist. In diesem Fall wird eine Dreistufenvermittlung durch die Adressenbits 38.1, 38.2, 38.3 (ADDRESS 0, ADDRESS 1, ADDRESS 2) unterstützt. In diesen Adressenfeldern 38.1, 38.2, 38,2 steht die Zieladresse. Der virtuelle Kanalidentifikator wird im VCID-Feld 39 übertragen. Der Steuerabschnitt der Kopfzeile 36.1, 36.2 enthält ein Typfeld 40, das den Typ der Zelle angibt. Das Typfeld 40 kann die folgenden Größen haben:
  • - CONTROL (Steuerung)
  • - FIRST (erste)
  • - MIDDLE (mittlere)
  • - LAST (letzte)
  • - ONLY (einzig)
  • - ATM (Asynchroner Übermittlungsmodus)
  • Dieses Typfeld in der Kopfzeile läßt das Unterscheiden zwischen Steuer- und Datenzellen zu zwecks Ermöglichung des beschriebenen Datenmodus-Mechanismus zu. Die Felder 41-44 der Kopfzeile 36.1, 36.2 unterstützen Datenblöcke, die unterschiedliche Priorität haben, ermöglichen das Erfassen verlorener Zellen auf der Empfängerseite, und steuern den Empfang von Zellenblöcken. Das Steuerpaket ermöglicht es dem Segmentierungsadapter, ohne Unterbrechung des normalen Datenflusses mit einem Steuerpunkt zu kommunizieren. Die ATM- Zellen 84 können transparent übermittelt werden mit dem Typfeld 40, das auf ATM gestellt ist. In diesem Falle führt der Adapter keine zyklische Blockprüfung durch (ATM hat seine eigene CRC) und aus Redundanzgründen kann das Typfeld 40 im Längenfeld 41 dupliziert werden. Im ATM-Fall sind alle anderen Steuerfelder unbenutzt.
  • Der Empfängerteil der vorliegenden Ausführungsform wird anhand der Fig. 4 beschrieben. Die Einheiten Kopfzeilenprozessor 45, CRC-Prüfer 46 und Daten-Pipeline/Neuabgleichung 47 führen die fliegende Verarbeitung durch, die im Daten- Modus verlangt ist. Für Operationen außerhalb des Daten-Modus wird der Steuerprozessor 48 benutzt. Wie bereits gesagt, sind die Einheiten Steuerprozessor 48, Zustandsmaschinen/Ablaufsteuerung 49, Kopfzeilenprozessor 45, CRC-Prüfer 46 und Daten-Pipeline/Neuanordnung 47 programmierbar. Die drei letzteren Einheiten 45, 46, 47 sind jedoch keine Von-Neumann- Maschinen, sondern Register, Zähler FIFOs und Zustandsmaschinen, für die die Strukturen bei der Konfiguration über den Programmherunterladebus 50 heruntergeladen werden. Der Steuerprozessor 48 ist jedoch eine stärker klassische Von- Neumann-Maschine, die zum Implementieren der Protokollgrundelemente optimiert werden kann. Das Steuerprogramm für den Steuerprozessor 48 ist im Steuerprogramm-RAM 51 (Random Access Memory -Direktzugriffsspeicher) abgespeichert. Die Programmierbarkeit dieser fünf Einheiten 45-49 läßt eine Implementierung verschiedener Protokolle mit einem Adapter zu.
  • Zum Erreichen einer hohen Geschwindigkeit wird das Prinzip der minimalen Datenkopierung angewandt, was dazu führt, daß nur ein Schnellspeicher 52 zur Datenspeicherung erforderlich ist. Ferner wird ein einfacher, aber wirksamer Algorithmus zur Verwaltung der Zuteilung und Freigabe von Speicherbereichen benutzt, der nachstehend als Pufferverwaltung bezeichnet wird.
  • Eine Zelle 84, 35, wie in Fig. 3 gezeigt wird, kommt im Empfängerteil des Adapters an und wird in der Vermittlungskarten-Schnittstelle 53 von seriell zu parallel umgewandelt. Die ganze Kopfzeile wird über einen internen 6-Byte-(48 Bit)- Datenbus 54 in den Kopfzeilenprozessor 45 eingespeist, und die Zellennutzlast wird in die Daten-Pipeline- und Neuabgleich-Einheit 47 eingetaktet.
  • Multiple virtuelle Kanäle werden unterstützt mit einer Datenstruktur für jeden virtuellen Kanal in Hardware-Registern in der Kopfzeilenprozessoreinheit 45, gezeigt in Fig. 5. Diese Figur ist beispielhaft zum Illustrieren des Prinzips. Die Adressen- und VCID-Felder in der Kopfzeile werden in das Arbeitsregister 55 getaktet (unten links in Fig. 5) und das wird verglichen mit jedem Eintrag im Kopfzeilenprozessor 45. Daher wird ein inhaltadressierbarer Speicher 56 (CAM) angewandt. Wenn der Eintrag nicht gefunden wird, wird in diesen CAM 56 ein neuer Eintrag generiert. Wenn im CAM 56 kein Platz mehr ist, wird die Zelle ausgeschieden und der Steuerprozessor 48 erhält eine Meldung.
  • Wenn ein neuer CAM-Eintrag generiert wird, werden Standardwerte in das Arbeitsregister 55 eingegeben. Wenn der CAM- Eintrag existiert hatte, wird der gesamte interne Zustand des virtuellen Kanals in das Arbeitsregister 55 eingetaktet. Der Wert der Steuerfelder der Zelle wird überprüft, wobei der Zustand des virtuellen Kanals in ein Zustandsfeld des CAM 56 eingespeichert wird. Das Zustandsfeld enthält den Zustand des virtuellen Kanals, und der nächste Zustand wird mit einem endlichen Automaten, der Teil des Kopfzeilenprozessors 45 ist, in einer festen Anzahl Taktzyklen berechnet. Wenn der Zustand des virtuellen Kanals den Empfang von Daten zuläßt und die Zelle wirklich Daten enthält, dann stellt der Puffer- Manager (im Kopfzeilenprozessor 45) sicher, daß genug Pufferspeicherplatz im Pufferspeicher 52 vorhanden ist. Das geschieht in einer festen Anzahl Taktzyklen. Abschließend gesagt, nach einer festen Anzahl Taktzyklen wählt der Kopfzeilenprozessor 45 den Pufferspeicher 52 und zeigt die Adresse, an der die Zellendaten gespeichert werden sollen. Diese Anzahl fester Zyklen ist gleich oder kleiner als die Anzahl der Zyklen, um eine Zelle über den Adapter-internen Bus 54 zu transportieren. Wenn der Puffer-Manager eine Anforderung nach einem Puffer nicht erfüllen kann oder aufgrund verschiedener Pufferzuteilungsregeln nicht erfüllen will, kann die eingehende Zelle im Pufferspeicher nicht gespeichert werden und wird verworfen. Der Steuerprozessor 48 erhält eine entsprechende Meldung.
  • Der Datenteil einer Zelle, in Fig. 3 Nutzlast genannt, wird in die Daten-Pipeline/Neuabgleicheinheit 47 getaktet. Der Betrieb dieser Einheit wird anhand der Fig. 6 beschrieben. Eine Zelle fester Länge 70 wird oben in dieser Figur dargestellt. Die Zelle 70 unterteilt sich in eine Anzahl Buszyklen, wie direkt darunter gezeigt wird. Im ersten Zyklus wird der erste Teil der Kopfzeile 71 wird in die Pipeline/ Neuabgleicheinheit 47 eingetaktet. Dieser Teil wird durch 'A' gekennzeichnet. Der zweite Buszyklus enthält die Nutzlast 72, aber nicht alle Bits auf dem internen Datenbus 54 sind Nutzlast. Der Rest der Kopfzeile 71, gekennzeichnet durch 'B', wird in den Kopfzeilenprozessor 45 eingespeist. Der Nutzlast enthaltende Teil 'C' wird in das Neuabgleich-Register 73 eingetaktet. Die nächsten zwei Buszyklen enthalten nur Nutzlast 72, so daß die Teile 'D-G' über das Neuabgleich- Register 73 in die Pipeline 74 eingetaktet werden. Jedesmal wenn Nutzlast in dieses Register 73 eingetaktet wird, wird die laufende, dort gespeicherte Nutzlast in die Pipeline 74 geschoben. Der Zweck dieses Pipelineteils 74 ist das Ausrichten der Nutzlast 72 nach dem Pufferspeicher 52, nachdem die Nutzlast 72 und die Kopfzeile 71 getrennt sind. Zusätzlich verzögert dieser Teil 74 die Daten für diesen Speicher 52, so daß der Kopfzeilenprozessor 45 Zeit hat, die Adresse zu generieren. Die Grenze zwischen dem linken und dem rechten Teil des Pipeline-Registers 74 ist programmierbar, sowie auch die Tiefe der Pipeline 74.
  • Der nachfolgende Abschnitt zeigt Einzelheiten des erfindungsgemäßen Neuaufbaumechanismus. Für Neuaufbauzwecke bewahrt eine Zustandsmaschine, die im Kopfzeilenprozessor angeordnet ist, für jeden virtuellen Kanal einen Satz Zustandsvariabler, wie in Fig. 5 beispielhaft dargestellt ist. Die Zustandsmaschine hat die folgenden Zustände:
  • - 1. ) done (fertig)
  • - 2. ) wait_next (auf nächste Eingabe warten)
  • - 3. ) buf_full (Puffer voll)
  • - 4. ) end (Ende)
  • Ferner erinnert ein Fehler-Flag (err_fl - error flag) an das Auftreten von Fehlern während der Neuabgleichung Diese Fehler sind: CRC error (Cyclic Redundancy Check, überprüft Übertragungsfehler), cell sequence error (überprüft die Aufeinanderfolge der Zellen, die die Anwenderblöcke bilden) und buffer memory full (Pufferspeicher voll). Eine Steuerzelle beeinflußt den Zustand des virtuellen Kanals nicht. Diese Zellen werden an den Protokoll-Datenelement-Speicher 55 gerichtet, wie in Fig. 4 dargestellt wird. Auch ATM-Zellen beeinflussen die Zustandsmaschine nicht, weil kein Neuaufbau erforderlich ist. Diese Zellen werden unverändert im Pufferspeicher 52 abgespeichert.
  • Nehmen wir an, der virtuelle Kanal ist im Zustand 1 (done). In diesem Fall tritt er jetzt in Zustand 2 (wait_next) ein, wenn er eine Erste-Zelle empfängt, oder er tritt in den Zustand 4 (end) ein, wenn er eine Einzige-Zelle empfängt, die eine Einzelzelle ist. Im Zustand 1 werden mittlere oder letzte Zellen ohne weitere Aktion ausgeschieden. Wenn eine Zelle einen CRC-Fehler hat, der erst am Ende der Zelle erkannt wird, wird das Fehler-Flag (Err-flg) auf binär '1' gesetzt. Die Blockfolgenummer, gegeben in Feld 43 (SEQ), gezeigt in Fig. 3, wird geprüft, aber ein Fehlvergleich in einer Ersten Zelle wird das Fehler-Flag nicht setzen, sondern vielmehr eine Meldung 'Block fehlt' an den u-Prozessor 48 (u- Prozessor 33 in Fig. 2A ist gleich u-Prozessor 48 in Fig. 4) generieren. In Mittel- und Endzellen wird eine falsche Blockfolgenummer das Fehler-Flag setzen.
  • Nach Erhalt einer Ersten Zelle wird die Zellenzählung auf Null gesetzt und die Folgenummer im virtuellen Kanal-Steuerregister des virtuellen Kanals wird auf den Wert des SEQ- Felds 43 der empfangenen Zelle gesetzt. Wenn eine Mittelzelle eingeht, wird der Zustand 2 (wait_next) beibehalten, und wenn eine letzte Zelle eingeht, wird der Zustand 4 (end) eingegeben.
  • Zum Speichern der Anwenderdaten des Nutzlastfelds einer Zelle im Pufferspeicher 52, werden Pufferverwaltungsfunktionen durchgeführt. Falls die Pufferverwaltung festlegt, daß kein weiterer Platz zum Abspeichern von Daten vorhanden ist, wird Zustand 3 (buf_full) nach dem Eingang einer ersten, mittleren oder letzten Zelle eingegeben. Das bewirkt, daß auch das Fehler-Flag gesetzt wird. Wenn das Fehler-Flag gesetzt wird, bewirkt das Vollmachen eines Blocks, daß eine Meldung an den u-Prozessor 48 geschickt wird. Ein Block ist voll, wenn Zustand 4 (end) eingegeben ist oder wenn im Zustand 2 (wait_next) eine Erste- oder Einzige-Zelle eingeht, bewirkt durch eine fehlende letzte Zelle.
  • Die Taktzyklen des Kopfzeilenprozessors 45 der ersten Ausführungsform, der einen 6-Byte-Datenbus 54 aufweist, werden in Fig. 7 gezeigt. Wegen dieses Datenbusses 54 muß eine Zelle mit 60 Bytes zum Transport über den Bus 54 in 10 Buszyklen aufgeteilt werden. Verschiedene Aktionen müssen ausgeführt werden, aber in Abhängigkeit vom augenblicklichen und vom nächsten Zustand eines virtuellen Kanals dürfen bestimmte Aktionen nicht ausgeführt werden. Aber Buszyklen für alle möglichen Aktionen müssen zugeteilt werden, für den Fall, daß sie ausgeführt werden müssen. Die Tabelle in den Fig. 7A-7C zeigt die Aktionen, die in den aufeinanderfolgenden Buszyklen durchgeführt werden, in Abhängigkeit vom Typ der empfangenen Zelle. In Zyklus 1 bis 3 wird die Adresse in der Zellenkopf zeile, Adressenfelder 38.1-38.3 gemäß Fig. 3, genommen, um den Zustand des virtuellen Kanals abzurufen. Im Zyklus 1 wird der Adressenteil 38.1-38.3 der Kopfzeile 36.1, 36.2, in den Kopfzeilenprozessor 45 eingetaktet. Der entsprechende Eintrag im CAM 56 wird gesucht durch Vergleichen des virtuellen Kanal-Identifikators mit den im CAM 56 abgespeicherten Einträgen. In Zyklus 3 wird der Zustand dieses virtuellen Kanals in das Arbeitsregister 55 des Kopfzeilenprozessors 45 eingetaktet. Am Ende des Zyklus 3 ist der augenblickliche Zustand des Kanals verfügbar, zusammen mit den beiden Eingängen, die von verschiedenen Feldern in den eingegangenen Zellenkopfzeilen 36.1, 36.2 gegeben werden. Das ermöglicht es, daß der Rechner in Zyklus 4 mit Kombinationslogik, wie ein programmierbares logisches Feld (PLA - Programmable Logic Array) den nächsten Zustand berechnet. In den Zyklen 4 bis 7 berechnet der Puffer-Manager, der Teil des Kopfzeilenprozessors 45 ist, die RAM-Adressen des Pufferspeichers 52. Die Adressen werden in Zyklus 8 in den RAM eingegeben. Der neue Zustand des virtuellen Kanals wird wieder in die Struktur in Zyklus 11 geschrieben.
  • Dieser Zyklus 11 überschneidet sich mit Zyklus 1, das ist möglich, weil die Aktion in Zyklus 11 sich mit der in 1 nicht stört, was zu 10 Verarbeitungszyklen je Zelle führt. Das Aktualisieren des Zustands auf der virtuellen Kanalstruktur kann erst in Zyklus 11 ausgeführt werden, weil der Zustand abhängt vom Ergebnis der CRC-Prüfung. Dieses Ergebnis ist erst nach Abschluß der Aufnahme einer Zelle bekannt. Aus diesem Grund wird im Buszyklus 9 ein NOP (No Operation) ausgeführt. Die Daten werden ab diesem Zyklus in den Speicher geschrieben.
  • Wenn eine Zelle verworfen werden muß, werden ganz einfach die Daten nicht in den RAM geschrieben. Das Schreiben der Daten in den RAM läuft in Zyklus 9 an, wie in Fig. 7C gezeigt wird.
  • Das Schreiben der Daten in den RAM überlagert die ersten paar Zyklen des Verarbeitens der nächsten Zelle, aber das führt nicht zum Konflikt. Die gezeigte Tabelle impliziert, daß die in dieser Ausführungsform benutzte Pipeline 74, wie in Fig. 6 gezeigt wird, '9 Zyklen tief' ist, so daß die Nutzlast verzögert wird, bis die Speicheradresse generiert ist. Diese Zuordnung von Operationen an Buszyklen ist in der vorliegenden Ausführungsform so einfach als möglich gehalten.
  • Mit der Pipelinebearbeitung wäre es möglich, alle diese Aktionen mit weniger Buszyklen durchzuführen, und' somit könnten auch kürzere Zellen verarbeitet werden. Der Zweck der ersten Ausführungsform ist es, darzulegen, daß das Verarbeiten mit der gleichen oder auch mit einer kleineren Anzahl Buszyklen gemacht werden kann. Auch andere, durch Anpassen der beschriebenen Protokolle an andere, oder mit Hilfe einer vereinfachten Pufferverwaltung, sind vorstellbar.

Claims (15)

1. Verfahren zum Umwandeln von Zellen fester Länge mit Nutzlast mit vorangestellter Kopfzeile fester Größe in anwenderspezifische Datenübertragungsblöcke, wobei die Nutzlast und die Kopfzeile fester Größe gesondert verarbeitet werden und das Verfahren durch die folgenden Schritte gekennzeichnet ist:
- Legen der Zellen mit fester Länge auf einen Parallelbus (54)
- Abtrennen der Nutzlast von der Kopfzeile fester Größe, wobei die Nutzlast durch den Parallelbus (54) über eine Neuabgleichseinheit (47) auf einen Pufferspeicher (52) übertragen wird,
- gesondert Verarbeiten der Kopfzeile fester Größe zur Bestimmung einer Speicheradresse in einem Speicherabschnitt des Pufferspeichers (52),
- Legen von Speicheradressen für Speicherabschnitte im Pufferspeicher (52) in Warteschlangenmittel, um wenigstens einen virtuellen Kanal zu unterstützen, wobei auf die Nutzlast in diesem virtuellen Kanal durch Lesen der entsprechenden Adressen im Warteschlangenmittel zugegriffen werden kann,
- Verschieben der Nutzlast an die Grenzen des Parallelbusses mittels der Neuabgleichseinheit (47), nachdem die Kopfzeile fester Größe abgetrennt wurde, und dann
- Puffern der Nutzlast in den Speicherabschnitt des Pufferspeichers (52), auf den über die Speicheradresse zugegriffen werden kann.
2. Das Verfahren gemäß Anspruch 1, in dem die Zelle fester Größe in einen anwenderspezifischen Datenblock umgewandelt wird durch
- Verarbeiten der Kopfzeile fester Größe, die von der Nutzlast abgetrennt wurde, während die Nutzlast über den Parallelbus (54) übertragen wird und die Nutzlast an die Grenzen des Parallelbusses (54) verschoben wird, um durch Benutzen der Systemzustandvariablen des Pufferspeichers (52) festzustellen, ob Raum im Pufferspeicher (52) verfügbar ist,
- Benutzen der bestimmten Speicheradresse des Speicherabschnitts zum Schreiben der Nutzlast in den Speicherabschnitt des Pufferspeichers (52) wenn der Raum frei ist,
und wobei die anwenderspezifischen Datenblöcke nach dem Puffern der Nutzlast in den Speicherabschnitt generiert werden, durch
- Lesen der Nutzlast aus dem Speicherabschnitt durch Benutzen der Speicheradresse,
- Bilden der anwenderspezifischen Datenblöcke gemäß einem definierten Datenübertragungsprotokoll, und
- Übertragen des anwenderspezifischen Datenblocks.
3. Das Verfahren gemäß Anspruch 2, worin die Speicheradresse eines Speicherabschnitts bestimmt wird nach einer festen Anzahl Buszyklen, so daß die Nutzlast, die während der Buszyklen verzögert wurde, in dem mit dieser Speicheradresse übereinstimmenden Speicherabschnitt abgespeichert werden kann.
4. Das Verfahren gemäß Anspruch 2, in dem die Speicheradressen der Speicherabschnitte in Warteschlangen gespeichert werden, so daß die unter diesen Speicherabschnitten gespeicherte Nutzlast abgerufen werden kann zum Generieren der anwenderspezifischen Datenblöcke durch aufeinanderfolgendes Lesen der Speicheradressen der Speicherabschnitte aus den Warteschlangen.
5. Das Verfahren gemäß Anspruch 2, in dem Zellen fester Länge unterschiedlicher Priorität unterstützt werden durch Speichern der Adressen der Speicherabschnitte, wo die Nutzlast dieser Zellen fester Länge in den entsprechenden Warteschlangen gespeichert wurde, so daß für das Generieren der anwenderspezifischen Speicherabschnitte die Nutzlast mit der höchsten Priorität aus dem betreffenden Speicherabschnitt vor einer Nutzlast mit niedriger Priorität genommen werden kann.
6. Verfahren zum Segmentieren von anwenderspezifischen Datenblöcken in Zellen fester Länge, wobei die Zellen fester Länge Nutzlast tragen, die aus den anwenderspezifischen Datenblöcken genommen wird, denen eine Kopfzeile fester Größe vorausgeht, dadurch gekennzeichnet, daß es die folgenden Schritte umfaßt:
- Puffern von Nutzlast der anwenderspezifischen Datenblöcke in einem Speicherabschnitt eines Pufferspeichers (24') unter Verwendung einer entsprechenden Speicheradresse,
- Halten der entsprechenden Speicheradresse in einer Warteschlange (28.1', 28.2'), so daß die Nutzlast aus dem Pufferspeicher (24') geholt werden kann durch Nehmen der entsprechenden Speicheradresse aus der Warteschlange (28.1', 28.2'),
- Generieren und Verarbeiten der Kopfzeile fester Größe gesondert und vor dem an der Kopfzeile fester Größe hängenden Teil der Nutzlast, wobei dieser Schritt gleichzeitig ausgeführt wird, d. h. während ein Teil der Nutzlast aus dem Speicherabschnitt genommen wird,
- Herausnehmen eines Teils der Nutzlast aus dem Pufferspeicher (24') unter Verwendung der entsprechenden Speicheradresse und Einschieben der Nutzlast in eine Zelle fester Länge, und
- Übertragen der Zelle fester Größe, bestehend aus der Nutzlast, die an den Kopfzeile fester Größe angehängt ist.
7. Verfahren gemäß Anspruch 6, worin die Nutzlast im Speicherabschnitt gelesen wird durch Herausnehmen ihrer Speicheradresse aus der Warteschlange (28.1', 28.2'), und die Nutzlast verzögert wird durch Generieren der Kopfzeile fester Größe, die nach einer festen Anzahl Taktgeberzyklen dargestellt wird.
8. Verfahren gemäß Anspruch 6, worin die Nutzlast vor dem Wiederaufbau der Zelle fester Länge auf eine Zelle fester Länge neu abgeglichen wird, so daß die Nutzlast direkt hinter der Kopfzeile fester Größe in die Zelle fester Länge eingeschoben werden kann, ohne Übertragungskapazität zu vergeuden.
9. Verfahren gemäß Anspruch 6, worin anwenderspezifische Datenblöcke unterschiedlicher Priorität unterstützt werden durch Abspeichern der Speicheradressen der Speicherabschnitte, wo die einzelnen Nutzlasten in wenigstens einer Warteschlange (28.1', 28.2') abgespeichert sind, so daß zum Generieren der Zellen fester Länge die Nutzlast mit der höchsten Priorität aus dem Speicherabschnitt genommen werden kann, in den sie gespeichert wurde durch Nehmen der Adresse des Speicherabschnitts aus der Warteschlange (28.1', 28.2') bevor die Speicheradresse des Speicherabschnitts der nächsten Nutzlast mit geringerer Priorität aus der Warteschlange (28.1', 28.2') genommen wird.
10. Gerät zum Umwandeln von Zellen fester Länge in anwenderspezifische Datenblöcke, wobei den Zellen fester Länge, die Nutzlast tragen, eine Kopfzeile fester Größe vorangeht, gekennzeichnet durch:
- Mittel zur Aufnahme einer Zelle fester Größe und legen derselben auf einen Parallelbus,
- Mittel (23) zum Abtrennen der Nutzlast von der Kopfzeile fester Größe, die auf den Parallelbus gelegt wird,
- einen Kopfzeilen-Bearbeiter (22), der zwecks gesondertem Bearbeiten der Kopfzeile fester Größe an den Parallelbus angeschlossen ist, um eine Speicherzelle eines Speicherabschnitts in einem Pufferspeicher (24) zu bestimmen,
- Neuabgleichmittel, um die über den Parallelbus eingegangene Nutzlast an die Grenzen des Parallelbusses zu verschieben,
- Mittel (23.3, 23.4) zum Verzögern des Abtrennens der Nutzlast von der Kopfzeile fester Größe und des Neuabgleichens bis die Speicheradresse verfügbar ist,
- Mittel (24, 26) zum Speichern der Nutzlast in einem Speicherabschnitt des Pufferspeichers (24), auf den über die Speicheradresse zugegriffen werden kann,
- Warteschlangenmittel (25), um die der Nutzlast entsprechenden Speicheradresse in einer Warteschlange zu halten,
- Mittel zum Abrufen der Nutzlast aus dem Speicherabschnitt durch nacheinander Entnehmen der entsprechenden Speicheradressen aus der Warteschlange des Warteschlangenmittels (25),
- Mittel zum Aufbauen des anwenderspezifischen Datenblocks, Übertragen der abgerufenen Nutzlast gemäß einem gegebenen, durch die Umgebung definierten Datenübertragungsprotokoll, und
- Mittel zum Senden der anwenderspezifischen Datenblöcke.
11. Das Gerät gemäß Anspruch 10, ferner beinhaltend Warteschlangenmittel (28.1, 28.2) zum Unterstützen der Übertragung der Zellen fester Länge mit unterschiedlicher Priorität durch Halten der entsprechenden Speicheradresse in einer Warteschlange der Warteschlangenmittel, so daß die Nutzlast mit höchster Priorität aus dem Speicherabschnitt des Pufferspeichers (24) abgerufen werden kann durch Entnehmen einer beliebigen Speicheradresse aus der Warteschlange vor einer beliebigen Speicheradresse der Nutzlast mit niedrigerer Priorität.
12. Gerät zum Umwandeln anwenderspezifischer Datenblöcke, die die Nutzlast in Zellen mit fester Länge bringen, wobei die Zellen fester Länge einen Teil der Nutzlast enthalten, dem eine Kopfzeile fester Größe vorhergeht, gekennzeichnet durch:
- Mittel zum Puffern der Nutzlast in einem Speicherabschnitt eines Pufferspeichers (24'),
- Warteschlangenmittel (28.1', 28.2') zum Halten der Speicheradresse des Speicherabschnitts in einer Warteschlange, die Teil der Warteschlangenmittel ist,
- ein Kopfzeilenbearbeiter (22'), der die Speicheradresse aus der Warteschlange der Warteschlangenmittel (28.1', 28.2') entnimmt und eine Kopfzeile fester Größe generiert,
- Mittel zum Ausbilden der Zelle mit fester Länge durch Anhängen eines Teils der Nutzlast, der unter Verwendung der aus der Warteschlange entnommenen Speicheradresse aus dem Pufferspeicher (24') abgerufen worden war, an die Kopfzeile, und
- Mittel zur Übertragung der Zelle fester Länge.
13. Das Gerät gemäß Anspruch 12, in dem der Kopfzeilenbearbeiter (22') eine Speicheradresse entsprechend der Nutzlast mit der höchsten Priorität aus der Warteschlange des Warteschlangenmittels (28.1', 28.2') vor den Speicheradressen mit Nutzlast niedrigerer Priorität entnimmt.
14. Das Gerät gemäß Anspruch 12, das ferner eine Neuabgleicheinheit (23') enthält zum Kopfzeilen- Bearbeiter eines Teils der Nutzlast, die aus dem Speicherabschnitt des Pufferspeichers (24') entnommen wurde, bevor er an die Kopfzeile fester Größe angehängt wird, so daß der Teil der Nutzlast direkt hinter der Kopfzeile fester Größe in die Zelle fester Länge eingeschoben werden kann.
15. Ein Datenübertragungsnetzwerk, das wenigstens eine Verschaltung (11) zum Schalten von Zellen fester Länge, das Gerät gemäß Anspruch 12 zum Umwandeln der anwenderspezifischen Datenblöcke in die Zellen fester Länge und zum Befördern der Zellen fester Länge auf die Verschaltung (11), oder das Gerät gemäß Anspruch 10 zur Aufnahme die Zellen fester Länge, die durch die Verschaltung und durch Umwandeln der aufgenommenen Zellen fester Länge in anwenderspezifische Datenblöcke vor Übertragung derselben geführt werden, beinhaltet.
DE69129851T 1991-09-13 1991-09-13 Konfigurierbare gigabit/s Vermittlunganpassungseinrichtung Expired - Lifetime DE69129851T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP91810728A EP0531599B1 (de) 1991-09-13 1991-09-13 Konfigurierbare gigabit/s Vermittlunganpassungseinrichtung

Publications (2)

Publication Number Publication Date
DE69129851D1 DE69129851D1 (de) 1998-08-27
DE69129851T2 true DE69129851T2 (de) 1999-03-25

Family

ID=8208879

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69129851T Expired - Lifetime DE69129851T2 (de) 1991-09-13 1991-09-13 Konfigurierbare gigabit/s Vermittlunganpassungseinrichtung

Country Status (4)

Country Link
US (1) US5311509A (de)
EP (1) EP0531599B1 (de)
JP (1) JP2788577B2 (de)
DE (1) DE69129851T2 (de)

Families Citing this family (220)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0548638A (ja) * 1991-08-15 1993-02-26 Fujitsu Ltd Atm網におけるエンド・エンド間輻輳対処制御処理方式
JP3262142B2 (ja) * 1992-01-16 2002-03-04 富士通株式会社 Atmセル化装置、atmセル化方法、ノード、及びノードにおける多重化方法
EP0600683B1 (de) * 1992-12-04 2001-10-10 AT&T Corp. Paketnetz-Schnittstelle
FR2701180B1 (fr) * 1993-01-29 1995-03-10 Cit Alcatel Dispositif de cellulisation et dispositif de décellulisation de voies numériques synchromes, centre de commutation de voies numériques synchrones, et centre de commutation de voies numériques asynchrones.
DE4312797A1 (de) * 1993-04-20 1994-10-27 Hans Lackner Verfahren und Vorrichtung zum Segmentieren von Datenpaketen
GB9311106D0 (en) * 1993-05-28 1993-07-14 Plessey Telecomm Switch plane maintenance
US5530902A (en) * 1993-06-14 1996-06-25 Motorola, Inc. Data packet switching system having DMA controller, service arbiter, buffer type managers, and buffer managers for managing data transfer to provide less processor intervention
JP2847611B2 (ja) * 1993-09-01 1999-01-20 富士通株式会社 セル消失防止制御方式
US5467349A (en) * 1993-12-21 1995-11-14 Trw Inc. Address handler for an asynchronous transfer mode switch
US5448564A (en) * 1994-01-31 1995-09-05 Advanced Micro Devices, Inc. Modular architecture for fast-packet network
US5459723A (en) * 1994-03-08 1995-10-17 Advanced Micro Devices Packet management device for fast-packet network
US5509006A (en) * 1994-04-18 1996-04-16 Cisco Systems Incorporated Apparatus and method for switching packets using tree memory
SE503316C2 (sv) * 1994-04-19 1996-05-13 Ericsson Telefon Ab L M Förfarande för övervakning av ett minne samt kretsanordning härför
US5519704A (en) * 1994-04-21 1996-05-21 Cisco Systems, Inc. Reliable transport protocol for internetwork routing
US6031840A (en) * 1995-12-07 2000-02-29 Sprint Communications Co. L.P. Telecommunications system
KR100306318B1 (ko) * 1994-05-05 2001-11-30 돈 에이. 젠센 텔레코뮤니케이션콜처리방법및텔레코뮤니케이션시스템
US6314103B1 (en) 1994-05-05 2001-11-06 Sprint Communications Company, L.P. System and method for allocating bandwidth for a call
US6023474A (en) * 1996-11-22 2000-02-08 Sprint Communications C.O.L.P. Broadband telecommunications system interface
US6181703B1 (en) * 1995-09-08 2001-01-30 Sprint Communications Company L. P. System for managing telecommunications
US5920562A (en) * 1996-11-22 1999-07-06 Sprint Communications Co. L.P. Systems and methods for providing enhanced services for telecommunication call
US5991301A (en) * 1994-05-05 1999-11-23 Sprint Communications Co. L.P. Broadband telecommunications system
US5926482A (en) 1994-05-05 1999-07-20 Sprint Communications Co. L.P. Telecommunications apparatus, system, and method with an enhanced signal transfer point
US6633561B2 (en) 1994-05-05 2003-10-14 Sprint Communications Company, L.P. Method, system and apparatus for telecommunications control
US6172977B1 (en) * 1994-05-05 2001-01-09 Sprint Communications Company, L. P. ATM direct access line system
US6430195B1 (en) 1994-05-05 2002-08-06 Sprint Communications Company L.P. Broadband telecommunications system interface
DE4418979C2 (de) * 1994-05-31 1996-05-30 Telefonbau & Normalzeit Gmbh Verfahren zur Anpassung von Nachrichtenformaten
US5483526A (en) * 1994-07-20 1996-01-09 Digital Equipment Corporation Resynchronization method and apparatus for local memory buffers management for an ATM adapter implementing credit based flow control
IL110657A (en) * 1994-08-14 1997-07-13 Ornet Data Communication Techn Network switch
CA2153445C (en) * 1994-09-08 2002-05-21 Ashok Raj Saxena Video optimized media streamer user interface
US5548587A (en) * 1994-09-12 1996-08-20 Efficient Networks, Inc. Asynchronous transfer mode adapter for desktop applications
US5490141A (en) * 1994-09-30 1996-02-06 International Business Machines Corporation System and method for providing SVC service through an ATM network for frame relay DTEs with a terminal adapter
US5764928A (en) * 1994-09-30 1998-06-09 Rosemount Inc. Microprocessor communication protocol in a multiprocessor transmitter
US5608733A (en) * 1994-11-29 1997-03-04 Valle; Richard ATM inverse multiplexing
US5579263A (en) * 1994-12-22 1996-11-26 Sgs-Thomson Microelectronics, Inc. Post-fabrication selectable registered and non-registered memory
US5793978A (en) * 1994-12-29 1998-08-11 Cisco Technology, Inc. System for routing packets by separating packets in to broadcast packets and non-broadcast packets and allocating a selected communication bandwidth to the broadcast packets
US5867666A (en) * 1994-12-29 1999-02-02 Cisco Systems, Inc. Virtual interfaces with dynamic binding
JPH08186585A (ja) * 1995-01-05 1996-07-16 Fujitsu Ltd Atm交換機
GB2297881B (en) * 1995-02-09 1999-02-17 Northern Telecom Ltd Communications system
US5606553A (en) * 1995-02-28 1997-02-25 Christie; Joseph M. Cell processing for voice transmission
GB2337664B (en) * 1995-03-31 2000-02-16 Inmarsat Ltd Communication method and apparatus
US5668798A (en) * 1995-04-05 1997-09-16 International Business Machines Corporation Multiplexed TC sublayer for ATM switch
US5666361A (en) * 1995-04-05 1997-09-09 International Business Machines Corporation ATM cell forwarding and label swapping method and apparatus
FR2736483B1 (fr) * 1995-07-07 1997-08-14 Cit Alcatel Reseau de connexion de cellules atm
JP3103298B2 (ja) * 1995-07-17 2000-10-30 株式会社東芝 Atmスイッチのアドレス生成回路
US6097718A (en) 1996-01-02 2000-08-01 Cisco Technology, Inc. Snapshot routing with route aging
US6147996A (en) 1995-08-04 2000-11-14 Cisco Technology, Inc. Pipelined multiple issue packet switch
GB2304210B (en) * 1995-08-11 2000-02-16 Fujitsu Ltd Data receiving devices
US7246148B1 (en) 1995-09-29 2007-07-17 Cisco Technology, Inc. Enhanced network services using a subnetwork of communicating processors
US6182224B1 (en) 1995-09-29 2001-01-30 Cisco Systems, Inc. Enhanced network services using a subnetwork of communicating processors
US6917966B1 (en) 1995-09-29 2005-07-12 Cisco Technology, Inc. Enhanced network services using a subnetwork of communicating processors
US6445708B1 (en) * 1995-10-03 2002-09-03 Ahead Communications Systems, Inc. ATM switch with VC priority buffers
US6175570B1 (en) * 1995-12-20 2001-01-16 Cisco Technology, Inc. Method and an apparatus for shaping the output traffic in a fixed length cell switching network node
US6091725A (en) 1995-12-29 2000-07-18 Cisco Systems, Inc. Method for traffic management, traffic prioritization, access control, and packet forwarding in a datagram computer network
US6035105A (en) 1996-01-02 2000-03-07 Cisco Technology, Inc. Multiple VLAN architecture system
WO1997028622A1 (en) * 1996-02-02 1997-08-07 Sprint Communications Company, L.P. Atm gateway system
US5898830A (en) * 1996-10-17 1999-04-27 Network Engineering Software Firewall providing enhanced network security and user transparency
US5870550A (en) * 1996-02-26 1999-02-09 Network Engineering Software Web server employing multi-homed, moldular framework
US5826014A (en) * 1996-02-06 1998-10-20 Network Engineering Software Firewall system for protecting network elements connected to a public network
US8117298B1 (en) 1996-02-26 2012-02-14 Graphon Corporation Multi-homed web server
US6373846B1 (en) * 1996-03-07 2002-04-16 Lsi Logic Corporation Single chip networking device with enhanced memory access co-processor
US5822321A (en) * 1996-04-10 1998-10-13 Telefonaktiebolaget Lm Ericsson Minicell segmentation and reassembly
US6034945A (en) 1996-05-15 2000-03-07 Cisco Technology, Inc. Method and apparatus for per traffic flow buffer management
US5940393A (en) * 1996-05-28 1999-08-17 Sprint Communications Co. L.P. Telecommunications system with a connection processing system
US6308148B1 (en) 1996-05-28 2001-10-23 Cisco Technology, Inc. Network flow data export
US6243667B1 (en) 1996-05-28 2001-06-05 Cisco Systems, Inc. Network flow switching and flow data export
US6212182B1 (en) 1996-06-27 2001-04-03 Cisco Technology, Inc. Combined unicast and multicast scheduling
US6434120B1 (en) * 1998-08-25 2002-08-13 Cisco Technology, Inc. Autosensing LMI protocols in frame relay networks
US6128278A (en) * 1996-08-30 2000-10-03 Mmc Networks, Inc. Cell queuing in ATM switches
US5901147A (en) * 1996-08-30 1999-05-04 Mmc Networks, Inc. Apparatus and methods to change thresholds to control congestion in ATM switches
US5991867A (en) * 1996-09-12 1999-11-23 Efficient Networks, Inc. Transmit scheduler for an asynchronous transfer mode network and method of operation
US6031843A (en) * 1996-11-21 2000-02-29 Alcatel Data Networks Inc. Digital communications switching fabric
RU2184424C2 (ru) 1996-11-22 2002-06-27 Спринт Коммьюникейшнз Компани, Л.П. Система и способ передачи вызова в сети дальней связи
US6115380A (en) * 1996-11-22 2000-09-05 Sprint Communications Co., L.P. Broadband telecommunications system
US6014378A (en) * 1996-11-22 2000-01-11 Sprint Communications Company, L.P. Telecommunications tandem system for circuit-based traffic
US6002689A (en) * 1996-11-22 1999-12-14 Sprint Communications Co. L.P. System and method for interfacing a local communication device
US6188690B1 (en) * 1996-12-12 2001-02-13 Pmc-Sierra, Inc. Method and apparatus for high speed, scalable communication system
US6304546B1 (en) 1996-12-19 2001-10-16 Cisco Technology, Inc. End-to-end bidirectional keep-alive using virtual circuits
GB9626752D0 (en) * 1996-12-23 1997-02-12 Northern Telecom Ltd Management of data structures
US6085250A (en) * 1997-03-20 2000-07-04 Efficient Networks, Inc. Method and system for using layered networking application program interfaces (APIs) using a native asynchronous transfer mode (ATM) API
US6067299A (en) * 1997-04-16 2000-05-23 Sprint Communications Company, L.P. Communications system for providing ATM connections and echo cancellation
GB2324676B (en) * 1997-04-23 2001-10-17 Fujitsu Ltd Interfacing to SAR devices in ATM switching apparatus
US6014367A (en) * 1997-04-25 2000-01-11 Mmc Networks, Inc Method for weighted fair queuing for ATM cell scheduling
US6041059A (en) * 1997-04-25 2000-03-21 Mmc Networks, Inc. Time-wheel ATM cell scheduling
US6137800A (en) * 1997-05-09 2000-10-24 Sprint Communications Company, L. P. System and method for connecting a call
US6704327B1 (en) 1997-05-09 2004-03-09 Sprint Communications Company, L.P. System and method for connecting a call
US6178170B1 (en) 1997-05-13 2001-01-23 Sprint Communications Company, L. P. System and method for transporting a call
US6084881A (en) * 1997-05-22 2000-07-04 Efficient Networks, Inc. Multiple mode xDSL interface
US6356530B1 (en) 1997-05-23 2002-03-12 Cisco Technology, Inc. Next hop selection in ATM networks
US6122272A (en) * 1997-05-23 2000-09-19 Cisco Technology, Inc. Call size feedback on PNNI operation
US6862284B1 (en) 1997-06-17 2005-03-01 Cisco Technology, Inc. Format for automatic generation of unique ATM addresses used for PNNI
US6430191B1 (en) 1997-06-30 2002-08-06 Cisco Technology, Inc. Multi-stage queuing discipline
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
US6487202B1 (en) 1997-06-30 2002-11-26 Cisco Technology, Inc. Method and apparatus for maximizing memory throughput
US6185209B1 (en) 1997-07-11 2001-02-06 Telefonaktiebolaget Lm Ericsson VC merging for ATM switch
US6078590A (en) * 1997-07-14 2000-06-20 Cisco Technology, Inc. Hierarchical routing knowledge for multicast packet routing
US6330599B1 (en) 1997-08-05 2001-12-11 Cisco Technology, Inc. Virtual interfaces with dynamic binding
US6512766B2 (en) 1997-08-22 2003-01-28 Cisco Systems, Inc. Enhanced internet packet routing lookup
US6212183B1 (en) 1997-08-22 2001-04-03 Cisco Technology, Inc. Multiple parallel packet routing lookup
US6157641A (en) * 1997-08-22 2000-12-05 Cisco Technology, Inc. Multiprotocol packet recognition and switching
US6343072B1 (en) 1997-10-01 2002-01-29 Cisco Technology, Inc. Single-chip architecture for shared-memory router
US7581077B2 (en) 1997-10-30 2009-08-25 Commvault Systems, Inc. Method and system for transferring data in a storage operation
US6418478B1 (en) * 1997-10-30 2002-07-09 Commvault Systems, Inc. Pipelined high speed data transfer mechanism
US6526060B1 (en) 1997-12-05 2003-02-25 Cisco Technology, Inc. Dynamic rate-based, weighted fair scheduler with explicit rate feedback option
US7570583B2 (en) * 1997-12-05 2009-08-04 Cisco Technology, Inc. Extending SONET/SDH automatic protection switching
CA2282441C (en) * 1997-12-25 2004-07-27 Kabushiki Kaisha Toshiba Atm relay device and network including same
US6111877A (en) * 1997-12-31 2000-08-29 Cisco Technology, Inc. Load sharing across flows
US6424649B1 (en) 1997-12-31 2002-07-23 Cisco Technology, Inc. Synchronous pipelined switch using serial transmission
JP3206537B2 (ja) * 1998-02-09 2001-09-10 日本電気株式会社 Atm通信装置の制御方法、atm通信装置及びその記録媒体
US6483837B1 (en) 1998-02-20 2002-11-19 Sprint Communications Company L.P. System and method for connecting a call with an interworking system
US6563918B1 (en) 1998-02-20 2003-05-13 Sprint Communications Company, LP Telecommunications system architecture for connecting a call
US7739381B2 (en) * 1998-03-11 2010-06-15 Commvault Systems, Inc. System and method for providing encryption in storage operations in a storage network, such as for use by application service providers that provide data storage services
US6853638B2 (en) * 1998-04-01 2005-02-08 Cisco Technology, Inc. Route/service processor scalability via flow-based distribution of traffic
US6307860B1 (en) 1998-04-03 2001-10-23 Mmc Networks, Inc. Systems and methods for data transformation and transfer in networks
US6330584B1 (en) 1998-04-03 2001-12-11 Mmc Networks, Inc. Systems and methods for multi-tasking, resource sharing and execution of computer instructions
US7055151B1 (en) * 1998-04-03 2006-05-30 Applied Micro Circuits Corporation Systems and methods for multi-tasking, resource sharing and execution of computer instructions
US6160871A (en) 1998-04-10 2000-12-12 Sprint Communications Company, L.P. Communications test system
US6938040B2 (en) 1998-04-28 2005-08-30 International Business Machines Corporation Pattern matching in communications network where first memory stores set of patterns, and second memory stores mask data identifying patterns in the first memory
US6370121B1 (en) 1998-06-29 2002-04-09 Cisco Technology, Inc. Method and system for shortcut trunking of LAN bridges
US6920112B1 (en) 1998-06-29 2005-07-19 Cisco Technology, Inc. Sampling packets for network monitoring
US6377577B1 (en) 1998-06-30 2002-04-23 Cisco Technology, Inc. Access control list processing in hardware
US6308219B1 (en) 1998-07-31 2001-10-23 Cisco Technology, Inc. Routing table lookup implemented using M-trie having nodes duplicated in multiple memory banks
US6182147B1 (en) 1998-07-31 2001-01-30 Cisco Technology, Inc. Multicast group routing using unidirectional links
US6389506B1 (en) 1998-08-07 2002-05-14 Cisco Technology, Inc. Block mask ternary cam
US6101115A (en) * 1998-08-07 2000-08-08 Cisco Technology, Inc. CAM match line precharge
US6657961B1 (en) 1998-08-18 2003-12-02 Efficient Networks, Inc. System and method for enhanced end station to end station data flow control
US6778538B2 (en) 1998-12-30 2004-08-17 Nortel Networks Limited Virtual junctors
US6804229B2 (en) 1998-12-30 2004-10-12 Nortel Networks Limited Multiple node network architecture
US6788703B2 (en) 1998-12-30 2004-09-07 Nortel Networks Limited DS0 on ATM, mapping and handling
US6885661B1 (en) * 1998-12-30 2005-04-26 Nortel Networks Limited Private branch exchange built using an ATM Network
US6768736B1 (en) 1998-12-30 2004-07-27 Nortel Networks Limited Using an ATM switch to grow the capacity of a switching stage
US6771642B1 (en) 1999-01-08 2004-08-03 Cisco Technology, Inc. Method and apparatus for scheduling packets in a packet switch
US6661774B1 (en) 1999-02-16 2003-12-09 Efficient Networks, Inc. System and method for traffic shaping packet-based signals
US6590897B1 (en) 1999-03-08 2003-07-08 Efficient Networks, Inc. System and method for bridging universal serial bus and asynchronous transfer mode communication links
US6330435B1 (en) * 1999-03-18 2001-12-11 Telefonaktiebolaget Lm Ericsson (Publ) Data packet discard notification
US7065762B1 (en) 1999-03-22 2006-06-20 Cisco Technology, Inc. Method, apparatus and computer program product for borrowed-virtual-time scheduling
US6757791B1 (en) 1999-03-30 2004-06-29 Cisco Technology, Inc. Method and apparatus for reordering packet data units in storage queues for reading and writing memory
US6760331B1 (en) 1999-03-31 2004-07-06 Cisco Technology, Inc. Multicast routing with nearest queue first allocation and dynamic and static vector quantization
US6603772B1 (en) 1999-03-31 2003-08-05 Cisco Technology, Inc. Multicast routing with multicast virtual output queues and shortest queue first allocation
US6993048B1 (en) 2000-07-31 2006-01-31 Cisco Technology, Inc. ATM permanent virtual circuit and layer 3 auto-configuration for digital subscriber line customer premises equipment
US7035880B1 (en) 1999-07-14 2006-04-25 Commvault Systems, Inc. Modular backup and retrieval system used in conjunction with a storage area network
US7395282B1 (en) 1999-07-15 2008-07-01 Commvault Systems, Inc. Hierarchical backup and retrieval system
US7389311B1 (en) 1999-07-15 2008-06-17 Commvault Systems, Inc. Modular backup and retrieval system
US6650660B1 (en) 1999-07-27 2003-11-18 Pluris, Inc. Apparatus and method for synchronization of multiple data paths and recovery from lost synchronization
US6934250B1 (en) 1999-10-14 2005-08-23 Nokia, Inc. Method and apparatus for an output packet organizer
US6757249B1 (en) 1999-10-14 2004-06-29 Nokia Inc. Method and apparatus for output rate regulation and control associated with a packet pipeline
US6882642B1 (en) 1999-10-14 2005-04-19 Nokia, Inc. Method and apparatus for input rate regulation associated with a packet processing pipeline
US6892243B1 (en) * 1999-12-21 2005-05-10 Intel Corporation Prioritizing data transfers over data buses
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
US7003641B2 (en) 2000-01-31 2006-02-21 Commvault Systems, Inc. Logical view with granular access to exchange data managed by a modular data and storage management system
US7155481B2 (en) 2000-01-31 2006-12-26 Commvault Systems, Inc. Email attachment management in a computer system
US6658436B2 (en) * 2000-01-31 2003-12-02 Commvault Systems, Inc. Logical view and access to data managed by a modular data and storage management system
JP2001237843A (ja) * 2000-02-23 2001-08-31 Nec Corp 交換システムにおけるパケット組立て分解処理部
US6810031B1 (en) 2000-02-29 2004-10-26 Celox Networks, Inc. Method and device for distributing bandwidth
US6704794B1 (en) * 2000-03-03 2004-03-09 Nokia Intelligent Edge Routers Inc. Cell reassembly for packet based networks
AU2001236450A1 (en) * 2000-03-03 2001-09-17 Celox Networks, Inc. Broadband mid-network server
US6977895B1 (en) 2000-03-23 2005-12-20 Cisco Technology, Inc. Apparatus and method for rate-based polling of input interface queues in networking devices
US6629147B1 (en) * 2000-03-31 2003-09-30 Intel Corporation Segmentation and reassembly of data frames
US7142558B1 (en) 2000-04-17 2006-11-28 Cisco Technology, Inc. Dynamic queuing control for variable throughput communication channels
US7103041B1 (en) * 2000-06-30 2006-09-05 Marconi Intellectual Property (Ringfence), Inc. Optimization of number of transceivers used in a switch
TW513635B (en) * 2000-11-24 2002-12-11 Ibm Method and structure for variable-length frame support in a shared memory switch
US7095741B1 (en) * 2000-12-20 2006-08-22 Cisco Technology, Inc. Port isolation for restricting traffic flow on layer 2 switches
US6618388B2 (en) 2001-01-05 2003-09-09 Extreme Networks Method and system for VMAN protocol
US7346707B1 (en) * 2002-01-16 2008-03-18 Advanced Micro Devices, Inc. Arrangement in an infiniband channel adapter for sharing memory space for work queue entries using multiply-linked lists
US7076543B1 (en) 2002-02-13 2006-07-11 Cisco Technology, Inc. Method and apparatus for collecting, aggregating and monitoring network management information
US7069557B2 (en) * 2002-05-23 2006-06-27 International Business Machines Corporation Network processor which defines virtual paths without using logical path descriptors
GB2409553B (en) 2002-09-16 2007-04-04 Commvault Systems Inc System and method for optimizing storage operations
US7454569B2 (en) * 2003-06-25 2008-11-18 Commvault Systems, Inc. Hierarchical system and method for performing storage operations in a computer network
US7613748B2 (en) 2003-11-13 2009-11-03 Commvault Systems, Inc. Stored data reverification management system and method
US7315923B2 (en) * 2003-11-13 2008-01-01 Commvault Systems, Inc. System and method for combining data streams in pipelined storage operations in a storage network
WO2005050489A1 (en) 2003-11-13 2005-06-02 Commvault Systems, Inc. System and method for stored data archive verification
WO2005050381A2 (en) 2003-11-13 2005-06-02 Commvault Systems, Inc. Systems and methods for performing storage operations using network attached storage
GB2425198B (en) 2003-11-13 2008-04-09 Commvault Systems Inc System and method for performing a snapshot
US20060224846A1 (en) 2004-11-05 2006-10-05 Amarendran Arun P System and method to support single instance storage operations
US7590130B2 (en) * 2004-12-22 2009-09-15 Exar Corporation Communications system with first and second scan tables
US7617262B2 (en) 2005-12-19 2009-11-10 Commvault Systems, Inc. Systems and methods for monitoring application data in a data replication system
US7620710B2 (en) 2005-12-19 2009-11-17 Commvault Systems, Inc. System and method for performing multi-path storage operations
US7962709B2 (en) * 2005-12-19 2011-06-14 Commvault Systems, Inc. Network redirector systems and methods for performing data replication
US7651593B2 (en) 2005-12-19 2010-01-26 Commvault Systems, Inc. Systems and methods for performing data replication
US7606844B2 (en) 2005-12-19 2009-10-20 Commvault Systems, Inc. System and method for performing replication copy storage operations
US7636743B2 (en) 2005-12-19 2009-12-22 Commvault Systems, Inc. Pathname translation in a data replication system
US8661216B2 (en) 2005-12-19 2014-02-25 Commvault Systems, Inc. Systems and methods for migrating components in a hierarchical storage network
WO2007075587A2 (en) 2005-12-19 2007-07-05 Commvault Systems, Inc. Systems and methods for performing data replication
US7543125B2 (en) * 2005-12-19 2009-06-02 Commvault Systems, Inc. System and method for performing time-flexible calendric storage operations
EP2015569A4 (de) * 2006-05-02 2010-04-07 Media Global Links Co Ltd Videosignalumschaltsystem
EP1858227A1 (de) * 2006-05-16 2007-11-21 THOMSON Licensing Netzwerkspeichervorrichtung mit getrennten Datenschnittstellen für Steuerung und Speicherung
US7751339B2 (en) 2006-05-19 2010-07-06 Cisco Technology, Inc. Method and apparatus for simply configuring a subscriber appliance for performing a service controlled by a separate service provider
US8726242B2 (en) 2006-07-27 2014-05-13 Commvault Systems, Inc. Systems and methods for continuous data replication
US8655914B2 (en) 2006-10-17 2014-02-18 Commvault Systems, Inc. System and method for storage operation access security
US8312323B2 (en) 2006-12-22 2012-11-13 Commvault Systems, Inc. Systems and methods for remote monitoring in a computer network and reporting a failed migration operation without accessing the data being moved
US8290808B2 (en) 2007-03-09 2012-10-16 Commvault Systems, Inc. System and method for automating customer-validated statement of work for a data storage environment
US9495382B2 (en) 2008-12-10 2016-11-15 Commvault Systems, Inc. Systems and methods for performing discrete data replication
US8204859B2 (en) 2008-12-10 2012-06-19 Commvault Systems, Inc. Systems and methods for managing replicated database data
US8434131B2 (en) * 2009-03-20 2013-04-30 Commvault Systems, Inc. Managing connections in a data storage system
US8504517B2 (en) 2010-03-29 2013-08-06 Commvault Systems, Inc. Systems and methods for selective data replication
US8352422B2 (en) 2010-03-30 2013-01-08 Commvault Systems, Inc. Data restore systems and methods in a replication environment
US8725698B2 (en) 2010-03-30 2014-05-13 Commvault Systems, Inc. Stub file prioritization in a data replication system
US8504515B2 (en) 2010-03-30 2013-08-06 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US8572038B2 (en) 2010-05-28 2013-10-29 Commvault Systems, Inc. Systems and methods for performing data replication
US9021198B1 (en) 2011-01-20 2015-04-28 Commvault Systems, Inc. System and method for sharing SAN storage
US9298715B2 (en) 2012-03-07 2016-03-29 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9471578B2 (en) 2012-03-07 2016-10-18 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9342537B2 (en) 2012-04-23 2016-05-17 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
US9886346B2 (en) 2013-01-11 2018-02-06 Commvault Systems, Inc. Single snapshot for multiple agents
US9262435B2 (en) 2013-01-11 2016-02-16 Commvault Systems, Inc. Location-based data synchronization management
US9753812B2 (en) 2014-01-24 2017-09-05 Commvault Systems, Inc. Generating mapping information for single snapshot for multiple applications
US9639426B2 (en) 2014-01-24 2017-05-02 Commvault Systems, Inc. Single snapshot for multiple applications
US9632874B2 (en) 2014-01-24 2017-04-25 Commvault Systems, Inc. Database application backup in single snapshot for multiple applications
US9495251B2 (en) 2014-01-24 2016-11-15 Commvault Systems, Inc. Snapshot readiness checking and reporting
US10042716B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
US9774672B2 (en) 2014-09-03 2017-09-26 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US9648105B2 (en) 2014-11-14 2017-05-09 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
US9448731B2 (en) 2014-11-14 2016-09-20 Commvault Systems, Inc. Unified snapshot storage management
US9898213B2 (en) 2015-01-23 2018-02-20 Commvault Systems, Inc. Scalable auxiliary copy processing using media agent resources
US9904481B2 (en) 2015-01-23 2018-02-27 Commvault Systems, Inc. Scalable auxiliary copy processing in a storage management system using media agent resources
US10503753B2 (en) 2016-03-10 2019-12-10 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US11010261B2 (en) 2017-03-31 2021-05-18 Commvault Systems, Inc. Dynamically allocating streams during restoration of data
US10732885B2 (en) 2018-02-14 2020-08-04 Commvault Systems, Inc. Block-level live browsing and private writable snapshots using an ISCSI server
US11042318B2 (en) 2019-07-29 2021-06-22 Commvault Systems, Inc. Block-level data replication
US11809285B2 (en) 2022-02-09 2023-11-07 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)
US12056018B2 (en) 2022-06-17 2024-08-06 Commvault Systems, Inc. Systems and methods for enforcing a recovery point objective (RPO) for a production database without generating secondary copies of the production database

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2538976A1 (fr) * 1982-12-29 1984-07-06 Servel Michel Systeme de commutation de paquets synchrones de longueur fixe
US4910731A (en) * 1987-07-15 1990-03-20 Hitachi, Ltd. Switching system and method of construction thereof
JP2569118B2 (ja) * 1987-07-15 1997-01-08 株式会社日立製作所 スイッチングシステム及びその構成方法
DE68929523T2 (de) * 1988-07-22 2005-12-15 Hitachi, Ltd. ATM-Vermittlungssystem
JP3132564B2 (ja) * 1988-08-26 2001-02-05 株式会社日立製作所 Atm交換機
US5101404A (en) * 1988-08-26 1992-03-31 Hitachi, Ltd. Signalling apparatus for use in an ATM switching system
JP3085391B2 (ja) * 1989-06-19 2000-09-04 株式会社日立製作所 通信装置
US5107489A (en) * 1989-10-30 1992-04-21 Brown Paul J Switch and its protocol for making dynamic connections
EP0425772B1 (de) * 1989-11-01 1995-03-22 ELECTROMOTIVE SYSTEMS, Inc. Vorrichtung und Verfahren zur Bestimmung eines oder mehrerer Betriebsdaten eines schienengebundenen Fahrzeuges
US5163045A (en) * 1990-10-01 1992-11-10 At&T Bell Laboratories Communications network arranged to transport connection oriented and connectionless messages
US5165021A (en) * 1991-01-18 1992-11-17 Racal-Datacom, Inc. Transmit queue with loadsheding

Also Published As

Publication number Publication date
JP2788577B2 (ja) 1998-08-20
US5311509A (en) 1994-05-10
JPH05219098A (ja) 1993-08-27
DE69129851D1 (de) 1998-08-27
EP0531599B1 (de) 1998-07-22
EP0531599A1 (de) 1993-03-17

Similar Documents

Publication Publication Date Title
DE69129851T2 (de) Konfigurierbare gigabit/s Vermittlunganpassungseinrichtung
DE69428186T2 (de) Mehrfachsendeeinrichtung
DE69900492T2 (de) Grosse kombinierte Breitband und Schmalband Vermittlungsstelle
DE69731606T2 (de) Anlage und verfahren zur änderung von schwellen für überlastkontrolle in atm-vermittlungsstellen
DE69332328T2 (de) Paketschalter mit grosser Bandbreite
DE3856239T2 (de) Paketvermittlung
DE69020578T2 (de) Grundelement für ein verbindungsnetzwerk eines knotens zur schnellen paketvermittlung.
DE69430945T2 (de) Schnelle Paketvermittlungsnetze
DE69131436T2 (de) Netzanpassungseinrichtung mit als logische FIFOs gestalteten Speichern zur Übertragung und Empfang von Datenpaketen
DE69131971T2 (de) Netzwerkanpassungseinrichtung mit Puffer und Mehrbeschreibungskreis
DE3788649T2 (de) Schnelle modulare Vermittlungseinrichtung für Durchschaltverkehr und paketvermittelten Verkehr.
DE60119866T2 (de) Vermittlungseinrichtung und verfahren mit getrennten Ausgangspuffern
DE69032699T2 (de) Paketvermittlungssystem mit einer busmatrixartigen Vermittlungsanlage
DE68919856T2 (de) Nachrichtenvermittlungselement zur übertragung von zellen unterteilt in teilzellen.
DE69216105T2 (de) Atm-breitbandkoppelfeldeinrichtung mit gepufferten eingängen
DE69124326T2 (de) Brücke zur Verbindung eines lokalen, nach der Norm IEEE 802.3 gerichteten Netzes an ein ATM Fernmeldenetz
DE68926650T2 (de) Hochgeschwindigkeitspaketvermittlungsknotenentwurf
DE60113058T2 (de) Empfänger korrigiert
DE69733703T2 (de) Puffer von Mehrfachsendezellen in Vermittlungsnetzen
DE69838601T2 (de) Verfahren und Vorrichtung zum Erweitern eines on-chip FIFOs in einem lokalen Speicher
DE69333206T2 (de) Paketvermittlungssystem unter Verwendung des Belegstatus der Ausgangspuffer
DE60111457T2 (de) Vermittlungsanordnung mit redundanten Wegen
DE69817328T2 (de) Warteschlangenstruktur und -verfahren zur prioritätszuteilung von rahmen in einem netzwerkkoppelfeld
DE69733355T2 (de) Skalierbares hochleistungsvermittlungselement für ein koppelfeld mit gemeinsamen speicher zur vermittlung von paketen oder atm-zellen
DE69323547T2 (de) Verfahren zur gruppenbildung von umbindungen in einer paketvermittlung

Legal Events

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

Owner name: QUALCOMM INC., SAN DIEGO, CALIF., US

8328 Change in the person/name/address of the agent

Representative=s name: WAGNER & GEYER PARTNERSCHAFT PATENT- UND RECHTSANW