DE69029343T2 - Paket-Vermittlungssystem - Google Patents
Paket-VermittlungssystemInfo
- Publication number
- DE69029343T2 DE69029343T2 DE69029343T DE69029343T DE69029343T2 DE 69029343 T2 DE69029343 T2 DE 69029343T2 DE 69029343 T DE69029343 T DE 69029343T DE 69029343 T DE69029343 T DE 69029343T DE 69029343 T2 DE69029343 T2 DE 69029343T2
- Authority
- DE
- Germany
- Prior art keywords
- packet
- data
- address
- queue
- class
- 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 - Fee Related
Links
- 230000015654 memory Effects 0.000 claims description 72
- 238000012545 processing Methods 0.000 claims description 58
- 230000005540 biological transmission Effects 0.000 claims description 31
- 238000013500 data storage Methods 0.000 claims description 17
- 239000000470 constituent Substances 0.000 claims description 4
- 238000000926 separation method Methods 0.000 claims 2
- 239000000872 buffer Substances 0.000 description 70
- 238000012546 transfer Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 9
- 238000000034 method Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 7
- 239000000284 extract Substances 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000010354 integration Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/103—Packet switching elements characterised by the switching fabric construction using a shared central buffer; using a shared memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L12/5602—Bandwidth control in ATM Networks, e.g. leaky bucket
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
- H04L49/205—Quality of Service based
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3018—Input queuing
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 ein Paketübertragungs- bzw. -vermittlungssystem, das, wenn es Einheitspakete, die jeweils einer vorbestimmten Menge von Daten entsprechen, von einer Vielzahl von Anschlüssen empfängt, diese Pakete so anordnet, daß sie einmal eine Paketwarteschlange bilden, Pakete nacheinander aus der Paketwarteschlange auswählt und sie nacheinander überträgt.
- Ein Beispiel für Systeme zur Übertragung von Sprachdaten in Form von Paketen ist in Fig. 5 dargestellt. Das System gemäß Fig. 5 weist Multiplexleitungen 1, Paketvermittlungsstellen 2A, 2B und 2C, Paketendeinrichtungen 3A, 3B und 3C, Vermittlungsstellen 4A, 4B und 4C und Telefonapparate 5 auf. In dem System werden Sprachdaten, die beispielsweise in die Paketendeinrichtung 3A eingegeben werden, codiert, in vorbestimmte Dateneinheiten geteilt, zu mit Teilnehmerzieldaten versehenen Paketen zusammengefügt und dann über die Paketvermittlungsstelle 2A und 2B an die Teilnehmerpaketendeinrichtung 3B übertragen.
- In Fig. 6 ist ein Blockschaltbild der inneren Anordnungen einer der Paketvermittlungsstellen 2A bis 2C dargestellt, die folgendes aufweist: Endeinrichtungsschnittstellen 2-1, die als den entsprechenden Paketendeinrichtungen zugeordnet vorgesehen sind, eine Leitungsschnittstelle 2-2 für die Multiplexleitungen 1, einen Controller 2-3, einen Buszugriffscontroller 2-4, einen Interrupt-Steuerbus 2-5, einen Steuerbus 2-6, einen Zugriffssteuerbus 2-7 und einen Datenbus 2-8. Jede der Endeinrichtungsschnittstellen 2-1 gibt, wenn sie ein Ruf-Paket von der ihr zugeordneten Paketendeinrichtung, die mit ihr verbunden ist, erhält, einen Interrupt- Befehl an den Controller 2-3 über den Interrupt-Steuerbus 2-5 aus. Der Controller 2-3 erlangt, wenn er den Empfang eines Interrupt-Befehls bestätigt, über den Steuerbus 2-6 Zugriff auf einen Speicher (nicht dargestellt), der innerhalb der Endeinrichtungsschnittstelle 2-1 vorgesehen ist, und bestätigt die Ruf-Daten, die die Teilnehmernummer, die Fenstergröße (Anzahl der Pakete pro Zeiteinheit, die zur Teilnehmerseite übertragbar ist) usw. anzeigen. Danach gibt der Controller 2-3 an den Zugriffssteuerbus 2-7 eine Zugriffsaufforderung für den Datenbus 2-8 aus, um ein Verbindungsaufforderungspaket an den gegenüberliegenden Knoten (Vermittlungsstelle) der Teilnehmerpaketendeinrichtung zu übertragen. Nachdem der Controller 2-3 eine Zugriffsberechtigung erhalten hat, überträgt er das Verbindungsaufforderungspaket über den Datenbus 2-8 an die Leitungsschnittstelle 2-2. Zu dieser Zeit fügt die Leitungsschnittstelle 2-2 selbst das Verbindungsaufforderungspaket ähnlich dem Datenpaket zusammen und übergibt es an die Multiplexleitung 1. Die Leitungsschnittstelle 2-2 übergibt, wenn sie ein Verbindungszustimmungs- oder Ablehnungspaket vom gegenüberliegenden Knoten empfängt, das empfangene Paket an den Controller 2-3. Wenn der Controller 2-3 beispielsweise das Verbindungszustimmungspaket empfängt, bewirkt er, daß eine Vermittlungstabelle in einem Speicher (nicht dargestellt) erzeugt wird, der zwischen der Leitungsschnittstelle 2-2 und der Endeinrichtungsschnittstelle 2-1 vorgesehen ist, und gleichzeitig übergibt der Controller das Verbindungszustimmungspaket an die Endeinrichtungsschnittstelle 2-1. Die Endeinrichtungsschnittstelle 2-1 übergibt, wenn sie das Verbindungszustimmungspaket vom Controller 2-3 empfängt, das Verbindungszustimmungspaket an die zugeordnete Paketendeinrichtung, woraufhin die Paketvermittlungsstelle in ihre Datenübertragungsphase geschaltet wird. In dieser Phase übergibt die Endeinrichtungsschnittstelle 2-1 ein Datenpaket über den Datenbus 2-8 an die Leitungsschnittstelle 2-2. In diesem Fall hat das Datenpaket, das an die Leitungsschnittstelle 2-2 übergeben wird, einen solchen an den Datenteil D angefügten Kopfteil H, wie er in Fig. 7 dargestellt ist, und zwar auf der Grundlage der Vermittlungstabelle, die vom Controller 2-3 erzeugt wird. Die Leitungsschnittstelle 2-2 überträgt, nachdem sie das empfangene Datenpaket in ihrem Puffer gespeichert hat, das Datenpaket an die Multiplexleitung 1. Der oben beschriebene Vorgang wiederholt sich gleichermaßen in bezug auf die folgenden Datenpakete in der Datenübertragungsphase. Auch wenn der Controller 2-3 das Verbindungsablehnungspaket empfängt (Trennmodus), erfolgt im wesentlichen der gleiche Vorgang wie für den Verbindungsaufforderungsmodus, außer daß die Vermittlungstabelle gelöscht wird.
- Fig. 8 zeigt die innere Anordnung der Leitungsschnittstelle 2-2 (wobei Pfeile lediglich in die Richtung der Multiplexleitung zeigen). Die dargestellte Leitungsschnittstelle weist auf: eine Datenbusschnittstelle 11, eine Adreßübereinstimmungsprüfeinrichtung 12, ein Paketverteilungsteil 13, einen Pufferspeicher BM mit einer Vielzahl von darin gespeicherten Reihen von Paketwarteschlangen 14-1 bis 14-n eine Paketübertragungsentscheidungseinrichtung 15 und eine Leitungsschnittstelle 16. Die Datenbusschnittstelle 11, die zur Verbindung mit dem Datenbus 2-8 gemäß Fig. 6 vorgesehen ist, übergibt oder empfängt Pakete im Takt des Datenbusses 2-8. Die Adreßübereinstimmungsprüfeinrichtung 12 entscheidet durch Vergleich, ob das empfangene Paket für ihre eigene Leitungsschnittstelle bestimmt ist oder nicht, so daß, wenn das empfangene Paket für ihre eigene Leitungsschnittstelle bestimmt ist, die Prüfeinrichtung 12 das empfangene Paket an den Paketverteilungsteil 13 weitergibt und die Prüfeinrichtung 12 im anderen Fall das Paket aussondert bzw. verwirft. Der Paketverteilungsteil 13 bestimmt auf der Grundlage der Information des Kopfteils H des empfangenen Pakets eine der Paketwarteschlangen 14-1 bis 14-n, in die das empfangene Paket einzuordnen ist. Die Information des Kopfteils H weist Daten, die mit den Verbindungsdaten in Zusammenhang stehen, und Prioritätsdaten über Sofort- bzw. Direktverarbeitung und Aussonderungsmenge bzw. -rate auf. Der Paketverteilungsteil 13 verteilt das Paket an irgendeine der Paketwarteschlangen 14-1 bis 14-n, beispielsweise entsprechend den Prioritätsdaten dieser Kopfdaten H. Die Paketübertragungsentscheidungseinrichtung 15 wird verwendet, um eine der Paketwarteschlangen 14-1 bis 14-n zu bestimmen, aus der ein Paket zu extrahieren ist. Die Leitungsschnittstelle 16, die eine Schnittstelle mit der Multiplexleitung 1 bildet, übergibt das extrahierte Paket an die Multiplexleitung, und zwar synchron mit dem Takt der Leitung.
- In Fig. 9 sind die Einzelheiten des Paketverteilungsteils 13 und des Pufferspeichers BM gemäß Fig. 8 dargestellt, die folgendes aufweisen: einen Paketverteiler 6-1, einen Verteilungscontroller 6-2, einen Taktgeber CLK, Taktgeberpufferspeicher 7-11 bis 7-n1 zum sequentiellen Speichern und Ausgeben einer Zeit aus dem Taktgeber CLK nach dem Eingangsfolge- oder FIFO-Prinzip, Datenpufferspeicher 7-12 bis 7-n2 zum sequentiellen Speichern und Ausgeben eines Pakets nach dem FIFO-Prinzip, Zähler für verbleibende Pakete bzw. Verweilpaket-Zähler 7-13 bis 7-n3 zum Zählen der Anzahl von Paketen, die in den Datenpufferspeichern gespeichert sind, einen Sender 8-1 und eine Paketübertragungs/Aussonderungsentscheidungseinrichtung 8-2.
- Im einzelnen empfängt der Paketverteiler 6-1 ein Paket von der Datenbusschnittstelle 11 gemäß Fig. 8 und übergibt das empfangene Paket im Zuge einer Verteilung an irgendeine der Datenpufferspeicher 7-12 bis 7-n2. Der Verteilungscontroller 6-2 identifiziert die Prioritätsdaten, die vom Kopfteil H des Pakets bezeichnet werden, das von der Datenbusschnittstelle 11 kommend empfangen wird, und weist den Paketverteiler 6-1 an, das Paket an den Datenpufferspeicher zu verteilen, der durch die Prioritätsdaten bezeichnet wird. Es wird angenommen, daß die Prioritätsdaten beispielsweise Klassen 1 bis n haben, die jeweils den Datenpufferspeichern 7-12 bis 7-n2 zugeordnet sind. Dann wird ein Paket mit den Prioritätsdaten der Klasse 1 vom Paketverteiler 6-1 an den Datenpufferspeicher 7-12 übergeben, ein Paket mit den Prioritätsdaten der Klasse 2 wird vom Paketverteiler 6-1 an den Datenpufferspeicher 7-22 übergeben, und auf gleiche Weise wird ein Paket mit der Prioritätsklasse n vom Paketverteiler 6-1 an den Datenpufferspeicher 7-n2 übergeben.
- Die Datenpufferspeicher 7-12 bis 7-n2 speichern nacheinander die entsprechenden, vom Paketverteiler 6-1 verteilten Pakete, wodurch jeweils Paketwarteschlangen der Klasse 1 bis n in den Datenpufferspeichern 7-12 bis 7-n2 gebildet werden.
- Immer wenn ein Paket in den Datenpufferspeicher 7-12 eingegeben wird, speichert der Zeitgeber-Pufferspeicher 7-11 nacheinander eine Zeit, die vom Zeitgeber CLK kommt. Ebenso speichert der Datenpufferspeicher 7-12, immer wenn ein Paket in den Datenpufferspeicher 7-n2 eingegeben wird, nacheinander eine Zeit, die vom Zeitgeber CLK kommt. Als Ergebnis werden Serien oder Reihen von Zeiten (Zeitreihen) in den entsprechenden Zeitgeber Pufferspeichern 7-11 bis 7-n1 gebildet und entsprechen den zugeordneten Paketwarteschlangen in den Datenpufferspeichern 7-12 bis 7-n2. Genauer gesagt, zeigen beispielsweise die vorderen bzw. vorn liegenden Zeiten der Zeitreihen in den Zeitgeber-Pufferspeichern 7-11 bis 7-nl, d. h. die Ersteingabezeiten, die Eingabezeiten der vorderen Pakete in den entsprechenden Paketwarteschlangen an, die vorn liegen oder als erste eingegeben werden.
- Der Sender 8-1 liest die vorderen Pakete aus irgendeinem der Datenpufferspeichern 7-12 bis 7-n2 und überträgt die gelesenen Pakete nacheinander. Die Paketübertragungs/Aussonderungsentscheidungseinrichtung 8-2 wählt, wenn sie in ihrem Übertragungssteuermodus ist, eines der vorderen Pakete in den Datenpufferspeichern 7-12 bis 7-n2, um es unverzüglich zu übertragen, und zwar auf der Grundlage der aktuellen Zeit, die vom Zeitgeber CLK kommend empfangen wird, der vorderen Zeiten in den entsprechenden Zeitgeber-Pufferspeichern 7-11 bis 7-n1 und der Klassen 1 bis n der Datenpufferspeicher 7-12 bis 7-n2, und die Entscheidungseinrichtung 8-2 weist den Sender 8-1 an, das gewählte vordere Paket zu extrahieren. Das heißt, der Sender 8-1 extrahiert das angewiesene Paket aus den Datenpufferspeichern und überträgt es.
- Die Auswahl des vorderen Pakets, die in der Paketübertagungs/Aussonderungsentscheidungseinrichtung 8-2 erfolgt, wird entsprechend dem folgenden Ausdruck (1) durchgeführt:
- Max (D1W1, D2W2, ..., DjWj, ..., DnWn) (1)
- 1 ≤ j ≤ n
- wobei Dj eine Zeit bedeutet, während der das vordere Paket im Datenpufferspeicher der Klasse j dort verbleibt und die einer Differenz zwischen der vorderen Zeit in dem dem Datenpufferspeicher zugeordneten Zeitgeber- Pufferspeicher, d. h. der Eingangszeit des vorderen Pakets, und der aktuellen Zeit entspricht. Im übrigen bezeichnet Wj einen Wichtungsfaktor, der vorher an die Klasse j vergeben wird und die folgende Bedingung erfüllt:
- Wj - 1 > Wj > Wj + 1
- Das heißt, die entsprechenden Werte D1W1 bis DnWn im Ausdruck (1) werden entsprechend den entsprechenden vorderen Paketen in den Datenpufferspeichern 7-12 bis 7-n2 gefunden. Eines der Pakete, das dem Maximum dieser Werte D1W1 bis DnWn entspricht, wird als Paket gewählt, um unverzüglich übertragen zu werden, und das gewählte Paket wird vom Sender 8-1 übertragen. Ein solcher Vorgang wird nacheinander für jede Paketübertragung durchgeführt.
- Die Auswahl eines unverzüglich zu übertragenden Pakets entsprechend dem Ausdruck (1) ist ein sehr direktes und richtiges Verfahren, um die Übertragungsqualität sicherzustellen. Dieses Verfahren muß jedoch eine Subtraktionsoperation durchführen, um den Wert Dj zu berechnen, eine Multiplikationsoperation, um DjWj zu berechnen, und eine Vergleichsoperation, um ein Maximum der Werte D1W1 bis DnWn zu finden; die Paketübertragungsentscheidungseinrichtung 8-2 muß also eine beträchtliche Menge an Operationen O(3n) für jedes Paket durchführen. Aus diesem Grund ist das Verfahren bisher insofern mangelhaft, als die Verarbeitungsfähigkeit der Paketübertragungsentscheidungseinrichtung 8-2 unzureichend wird, hohe Verarbeitungsgeschwindigkeit unmöglich ist und die Obergrenze der Klassenanzahl n durch derartige Bedingungen eingeschränkt ist. Außerdem hat das Verfahren folgenden Makel: Obwohl Recheneinrichtungen für die Subtraktion und Multiplikation für die entsprechenden Datenpufferspeicher verteilt vorhanden sein können, erfordert eine solche Anordnung eine sehr umfangreiche Hardware, was dazu führt, daß es bei einer vereinfachten Anordnung der gleichen Schaltungseinheiten nur mit einer schwierigen Systemintegration und mit mangelhaften Anwendungsmöglichkeiten zu realisieren ist.
- Nachstehend wird beschrieben, wie die Paketübertragungs/Aussonderungsentscheidungseinrichtung 8-2 die Aussonderungssteuerung durchführt. Die Verweilpaket-Zähler 7-13 bis 7-n3 zählten die Anzahl der Pakete, die in den entsprechenden Datenpufferspeichern von Klasse 1 bis n verbleiben. Die Anzahl der Pakete, die sich in jedem der Datenpufferspeicher 7-12 bis 7-n2 ansammeln kann, ist in dem dargestellten Beispiel auf einen spezifischen Wert beschränkt. Wenn also der Datenpufferspeicher 7-j2 der Klasse j mit Paketen gefüllt ist, bewirkt eine Eingabe eines neuen Pakets in den Datenpufferspeicher 7-j2, daß dieser überläuft. Wenn also in der Aussonderungssteuerung die Anzahl von Paketen, die im Datenpufferspeicher 7-j2 der Klasse j verbleiben, einen vorbestimmten Wert überschreitet, sondert der Datenpufferspeicher eines der Verweilpakete, das die längste Verweilzeit hat, d. h. das vordere Paket, aus.
- Der oben beschriebene Aussonderungsvorgang wird jedoch ohne Unterscheidung der Paketverbindung durchgeführt, d. h. ohne den Übertragungsweg dieses Pakets, woraus sich folgendes ergibt: Wenn Pakete im Datenpufferspeicher 7-j2 der Klasse j ihre Anzahl abrupt erhöhen, besteht die Gefahr, daß der Datenpufferspeicher 7-j2 viele Pakete, die über die gleiche Verbindung laufen, kontinuierlich aussondern könnte. Wenn viele Pakete, die über die gleiche Verbindung laufen, auf diese Weise kontinuierlich ausgesondert werden, entsteht ein Problem, nämlich daß die Kommunikationsqualität der Verbindung deutlich schlechter wird. Als eines der Verfahren zur Vermeidung dieses Problems wird, wenn der Wunsch besteht, Pakete in einer Verbindung auszusondern, erwogen, die Pakete nur nach dem Ablauf einer vorbestimmten Zeit auszusondern. Bei diesem Verfahren kann jedoch der Datenpufferspeicher 7-j2, der nach dem FIFO-Prinzip arbeitet, keine anderen Pakete auswählen und aussondern als das vordere Paket, wie oben beschrieben, und es gibt keine Überlegung bezüglich der Bezahlung für die Verbindung.
- Auf diese Weise besteht bei dem bekannten Paketvermittlungssystem folgendes Problem: Wenn ein Paket in irgendeiner aus der Vielzahl von Paketwarteschlangen, die unverzüglich zu übertragen sind, zu bestimmen ist, muß die Paketübertragungsentscheidungseinrichtung die Subtraktion und Multiplikation für jede der Paketwarteschlangen sowie einen Vergleich zwischen den Ergebnissen der Subtraktion und Multiplikation durchführen, wodurch es unmöglich wird, Hochgeschwindigkeitsberechnungsverarbeitung zu realisieren. Um eine Hochgeschwindigkeitsberechnungsverarbeitung zu erreichen, ist es möglich, einen Berechnungsteil für jede der Paketwarteschlangen bereitzustellen, aber eine solche Verteilung der Berechnungsteile macht die Realisierung einer vereinfachten Anordnung der gleichen Schaltungseinheiten durch eine schwierige Integration des Systems unmöglich.
- Was die Paketaussonderungssteuerung betrifft, so kann andererseits der FIFO-Datenpufferspeicher keine anderen Pakete auswählen und aussondern als das vordere Paket, was unerwünschterweise dazu führen kann, daß der Datenpufferspeicher viele Pakete, die über die gleiche Verbindung laufen, kontinuierlich aussondert, wobei die Kommunikationsqualität der Verbindung in großem Maße schlechter wird.
- In IEEE Infocom '88, März 1988, Seite 889 bis 898 ist ein Paketvermittlungssystem beschrieben, bei dem Daten nacheinander in einer aus einer Vielzahl von Warteschlangeneinrichtungen nach Prioritätsdaten gespeichert sind. Bei Empfang eines Pakets in der Warteschlangeneinrichtung wird ein Zeitabschalttakt ausgelöst. Jeder Warteschlangeneinrichtung wird eine maximale Verzögerungszeit zugeordnet, bei der der Zeitabschalttakt abgelaufen ist, und die Daten werden in den nächsten Prioritätspuffer transportiert. Die Daten werden in der Reihenfolge der Warteschlangeneinrichtungspriorität gelesen.
- Es gibt zwei Hauptnachteile, die mit dem oben beschriebenen System verbunden sind. Erstens wird bei einer großen Anzahl von Datenklassen eine große Menge an Hardware erforderlich, um alle Verbindungen zwischen den Warteschlangeneinrichtungen zu realisieren. Zweitens kann, wenn der Verkehr im Netz stark ist, die Verarbeitungsgeschwindigkeit negativ beeinflußt werden.
- Es ist eine Aufgabe der vorliegenden Erfindung, ein Paketvermittlungssystem bereitzustellen, das ein unverzüglich zu übertragendes Paket durch Hochgeschwindigkeitsberechnung auswählen kann und bei dem eine Schaltung für die Berechnung in Form einer integrierten Schaltung ausgeführt sein kann.
- Entsprechend einem Aspekt der vorliegenden Erfindung wird ein Paketvermittlungssystem mit einer Datenspeichereinrichtung zum Speichern empfangener Paketdaten in jeder Adresse derselben bereitgestellt;
- einer Einrichtung zum Verteilen der empfangenen Paketdaten entsprechend den zugewiesenen Direktverarbeitungsprioritätsklassen, wobei die Direktverarbeitungsprioritätsklasse auf der Grundlage der Direktverarbeitungsprioritätsdaten bestimmt wird, die im empfangenen Paketdatenkopf enthalten sind;
- einer Vielzahl von Adreßwarteschlangeneinrichtungen, die für die entsprechenden Direktverarbeitungsprioritätsklassen vorgesehen sind, wobei jede Adreßwarteschlangeneinrichtung eine Vielzahl von Elementeinheiten aufweist, die in Reihe geschaltet sind, zum Speichern von Adreßdaten der Datenspeichereinrichtung, die die Daten der von der Paketverteilungseinrichtung verteilten Pakete in jeder Elementeinheit speichert, die jeder Direktverarbeitungsprioritätsklasse zugeordnet ist, und zum sequentiellen Verschieben von Adreßdaten, die in den Elementeinheiten gespeichert sind;
- wobei jede aus der Vielzahl der Adreßwarteschlangeneinrichtungen, die jeder Prioritätsklasse zugeordnet ist, in jeder ihrer Elementeinheiten als die Adreßdaten eine Kopfadresse jedes Speicherbereichs der Datenspeichereinrichtung speichert, der die Paketdaten speichert;
- einer Übertragungssteuereinrichtung zum Wählen einer der Adreßwarteschlangeneinrichtungen und zum Extrahieren von Adreßdaten aus der letzten Stufenelementeinheit der gewählten Adreßwarteschlangeneinrichtung; und
- einer Einrichtung zum Lesen, aus der Datenspeichereinrichtung, von Paketdaten, die in einer Adresse gespeichert sind, die durch die von der Übertragungssteuereinrichtung extrahierten Adreßdaten bezeichnet wird;
- wobei das System dadurch gekennzeichnet ist, daß es ferner eine Vielzahl von Zähleinrichtungen aufweist, die jeweils in jeder Elementeinheit aus der Vielzahl der Adreßwarteschlangeneinrichtungen vorgesehen sind, zum Zählen mit verschiedenen Taktfrequenzen während einer Zeitperiode, in der die Adreßdaten aus einer ersten Stufenelementeinheit in eine letzte Stufenelementeinheit in jeder Adreßwarteschlangeneinrichtung verschoben werden, wobei jede Taktfrequenz einer entsprechenden Direktverarbeitungsprioritätsklasse entspricht, die den empfangenen Paketen zugeordnet ist; und
- daß die Übertragungssteuereinrichtung Zählwerte der Zähleinrichtungen in jeder der letzten Stufenelementeinheiten der entsprechenden Adreßwarteschlangeneinrichtung vergleicht, umdieAdreßwarteschlangeneinrichtung mit dem größten Zählwert zu wählen.
- Da in der vorliegenden Erfindung die Taktfrequenzen, mit der die Zähleinrichtungen zählt, entsprechend der Priorität einer Adreßwarteschlangeneinrichtung gewichtet werden, wird eines der unmittelbar zu übertragenden Pakete auf der Grundlage von gewichteten Zählwerten sowohl entsprechend der Priorität als auch der Länge der Zeit, für die eine Adresse gespeichert ist, gewählt.
- Fig. 1 ist ein Blockschaltbild, das eine Ausführungsform eines Paketvermittlungssystems gemäß der vorliegenden Erfindung darstellt;
- Fig. 2 ist ein Blockschaltbild, das die Anordnung von elementaren Einheiten in der Ausführungsform gemäß Fig. 1 darstellt;
- Fig. 3 ist ein Flußdiagramm zur partiellen Beschreibung des Betriebs der Ausführungsform gemäß Fig. 1;
- Fig. 4(a) bis 4(d) zeigen allgemeine Betriebsabläufe der Ausführungsform gemäß Fig. 1;
- Fig. 5 zeigt in Blockschaltbildform ein Beispiel eines Paketvermittlungsnetzes;
- Fig. 6 ist ein Blockschaltbild einer Anordnung einer Paketvermittlungsstelle, die in Fig. 5 verwendet wird;
- Fig. 7 ist eine Darstellung zur Beschreibung des Aufbaus eines Pakets;
- Fig. 8 ist ein Blockschaltbild einer bekannten Leitungsschnittstelle, die in Fig. 6 verwendet wird; und
- Fig. 9 ist ein Blockschaltbild, das einen Hauptteil der Leitungsschnittstelle gemäß Fig. 8 darstellt.
- In Fig. 1 ist ein Blockschaltbild eines erfindungsgemäßen Teils eines Paketvermittlungssystems gemäß einer Ausführungsform der vorliegenden Erfindung dargestellt, das dem bekannten Paketverteilungsteil 13, Pufferspeicher BM und Paketübertragungsentscheidungseinrichtung 15 gemäß Fig. 8 entspricht. Die Schaltung gemäß Fig. 1 weist auf: einen Paketverteiler 21, Elementeinheiten 22-1 bis 27-1, 22-2 bis 27-2, ... und 22-n bis 27-n, die jeweils aus einem Register, einem Zähler usw. bestehen, einen Übertragungscontroller 28, eine Leerwarteschlangenverwaltungseinrichtung 29, einen Taktgenerator 30, einen Paketschreibzeiger 31, einen Innenpaketschreibzeiger 32, einen Paketlesezeiger 33, einen Innenpaketlesezeiger zum Lesen aus dem Paket 34, einen Datenspeicher 35, einen Schalter 36, eine Klassenaussonderungsentscheidungseinrichtung 37, einen Kompensator 38, eine Aussonderungsausführungseinrichtung 39 und eine ODER- Schaltung 40.
- Die Leerwarteschlangenverwaltungseinrichtung 29 hat einen verwendbaren Zeigerpuffer 29a und einen Leeradreßnummernspeicher 29b. Der verwendbare Zeigerpuffer 29a, der eine Leeradreßwarteschlange Qempty speichert, die aus einer Vielzahl von Adressen besteht, die vordere Adresse in der Leeradreßwarteschlange Qempty über den Paketverteiler 21 und den Paketschreibzeiger 31 an den Datenspeicher 35 übergibt und außerdem eine Adresse, die über den Schalter 36 vom Übertragungscontroller 28 kommend empfangen wird, an das Ende der Leeradreßwarteschlange Qempty setzt, wodurch die Leeradreßwarteschlange Qempty aktualisiert wird. Der Leeradreßnummernspeicher 29b speichert immer die Anzahl von Adressen in der Leeradreßwarteschlange Qempty.
- Der Datenspeicher 35 empfängt ein Paket von der Datenbusschnittstelle 11 in Fig. 8 und schreibt das empfangene Paket entsprechend einer Adresse, die durch den verwendbaren Zeigerpuffer 29a über den Paketschreibzeiger 31 als Anfangspunkt festgelegt wird. Beim Schreiben der Daten auf der Grundlage der Adresse erhöht der Innenpaketschreibzeiger 32 nacheinander die Adresse und weist den Datenspeicher 35 an, eine vorbestimmte Datenlänge zu speichern. Der Datenspeicher 35 liest außerdem ein Paket entsprechend einer Adresse, die durch den Übertragungscontoller 28 über den Paketlesezeigers 33 als Anfangspunkt festgelegt wird, und übergibt das gelesene Paket an die Leitungsschnittstelle 16 in Fig. 8. Beim Lesen der Daten auf der Grundlage der Adresse erhöht der Innenpaketlesezeiger 34 nacheinander die Adresse und weist den Datenspeicher 35 an, eine vorbestimmte Datenlänge vollständig zu speichern.
- Der Paketverteiler 21 unterscheidet die Prioritätsdaten, die im Kopfteil H (siehe Fig. 7) des gleichen Pakets wie das im Datenspeicher 35 empfangene angezeigt werden, und wählt eine der vorderen Elementeinheiten 22-1, 22-2, ... und 22-n auf der Grundlage der durch Unterscheidung bestimmten Prioritätsdaten. Und der Paketverteiler 21 empfängt die gleiche Adresse wie die, die durch den Datenspeicher 35 festgelegt wird, von dem verwendbaren Zeigerpuffer 29a und übergibt die empfangene Adresse zusammen mit dem Kopf H des Pakets an die gewählte vordere Elementeinheit. Es wird beispielsweise angenommen, daß die Direktverarbeitungsklassen 1, 2, ... und n den Elementeinheiten 22-1, 22-2, ... und 22-n zugeordnet sind und die Prioritätsdaten irgendeine der Direktverarbeitungsklassen 1, 2, ... und n anzeigen. Wenn dann ein Paket, das Prioritätsdaten der Direktverarbeitungsklasse 1 enthält, in den Datenspeicher 35 an seiner vorbestimmten Adresse geschrieben wird, werden der Kopf H des Pakets und die Adresse an die Elementeinheit 22-1 der Direktverarbeitungsklasse 1 übergeben. Wenn dagegen ein Paket, das die Prioritätsdaten der Direktverarbeitungsklasse 2 enthält, in den Datenspeicher 35 an seiner vorbestimmte Adresse geschrieben wird, werden der Kopf H des Pakets und die Adresse an die Elementeinheit 22-2 der Direktverarbeitungsklasse 2 übergeben. Wenn ein Paket, das die Prioritätsdaten der Direktverarbeitungsklasse n enthält, in den Datenspeicher 35 an seiner vorbestimmte Adresse geschrieben wird, werden auf gleiche Weise der Kopf H des Pakets und die Adresse an die Elementeinheit 22-n der Direktverarbeitungsklasse n übergeben. Eine solche Verarbeitung wird wiederholt immer dann durchgeführt, wenn ein Paket im Datenspeicher 35 gespeichert wird. Wenn zu dieser Zeit die nächsthöhere Einheit in der ersten Reihe der Elementeinheiten 22-1 bis 27-1 leer ist, werden der Kopf H des Pakets und die Adresse nacheinander in die nächsthöhere Einheit verschoben. Wenn die nächsthöhere Einheit in der zweiten, ... oder n-ten Reihe von Elementeinheiten 22-2 leer ist, werden auf gleiche Weise der Kopf H des Pakets und die Adresse nacheinander in die nächsthöhere Einheit verschoben. Infolgedessen werden die Köpfe H und die Adressen von Paketen, die zur Direktverarbeitungsklasse 1 gehören, nacheinander in der ersten Reihe der Elementeinheiten 22-1 bis 27-1 gespeichert, um dadurch eine Kopf/Adreßwarteschlange zu bilden. Wenn die Pakete im Datenspeicher 35, die durch die entsprechenden Adressen der Kopf/Adreßwarteschlange festgelegt sind, in ihrer Adreßreihenfolge angeordnet werden, entsteht eine Paketwarteschlange der Direktverarbeitungsklasse 1. Die Köpfe H und Adressen von Paketen, die zur Direktverarbeitungsklasse 2 gehören, werden nacheinander in der zweiten Reihe von Elementeinheiten 22-2 bis 27-2 gespeichert, um dadurch eine Kopf/Adreßwarteschlange zu bilden. Wenn die Pakete im Datenspeicher 35, die durch die entsprechenden Adressen der Kopf/Adreßwarteschlange festgelegt sind, in ihrer Adreßreihenfolge angeordnet werden, entsteht eine Paketwarteschlange der Direktverarbeitungsklasse 2. Auf gleiche Weise werden die Köpfe H und Adressen von Paketen, die zur Direktverarbeitungsklasse n gehören, nacheinander in der zweiten Reihe von Elementeinheiten 22-n bis 27-n gespeichert, um dadurch eine Kopf/Adreßwarteschlange zu bilden. Wenn die Pakete im Datenspeicher 35, die durch die entsprechenden Adressen der Kopf/Adreßwarteschlange festgelegt sind, in ihrer Adreßreihenfolge angeordnet werden, entsteht eine Paketwarteschlange der Direktverarbeitungsklasse n.
- Taktsignale mit Frequenzen, die in bezug auf die entsprechende erste und n-te Reihe der Elementeinheiten, nämlich in bezug auf die verschiedenen Direktverarbeitungsklassen unterschiedlich eingestellt sind, werden vom Taktgenerator 30 bereitgestellt. Beispielsweise wird das Taktsignal einer Frequenz f1, das der Direktverarbeitungsklasse 1 entspricht, an die erste Reihe von Elementeinheiten 22-1 bis 27-1 angelegt; das Taktsignal einer Frequenz f2, das der Direktverarbeitungsklasse 2 entspricht, wird an die zweite Reihe von Elementeinheiten 22-2 bis 27-2 angelegt; und auf gleiche Weise wird das Taktsignal einer Frequenz fn, das der Direktverarbeitungsklasse n entspricht, an die n-te Reihe von Elementeinheiten 22-n bis 27-n angelegt.
- Immer wenn in der ersten Reihe von Elementeinheiten 22-1 bis 27-1 die erste Elementeinheit 22-1 den Kopf H und seine Adresse empfängt, beginnt die Einheit mit dem Zählen synchron mit den Taktsignalen der Frequenz f1, und die entsprechenden Elementeinheiten setzen das Zählen des Kopfes H und der Adresse fort, bis die letzte Elementeinheit 27-1 den Eingangskopf H und die Adresse extrahiert. Immer wenn in der zweiten Reihe von Elementeinheiten 22-2 bis 27-2 die erste Elementeinheit 22-2 den Kopf H und seine Adresse empfängt, beginnt die Einheit mit dem Zählen synchron mit dem Taktsignal der Frequenz f2, und die entsprechenden Elementeinheiten setzen das Zählen des Kopfes H und der Adresse fort, bis die letzte Elementeinheit 27-2 den Eingangskopf H und die Adresse extrahiert. Ebenso beginnt die Einheit immer dann, wenn in der n-ten Reihe von Elementeinheiten 22-n bis 27-n die erste Elementeinheit 22-n den Kopf H und seine Adresse empfängt, mit dem Zählen synchron mit dem Taktsignal der Frequenz fn, und die entsprechenden Elementeinheiten setzen das Zählen des Kopfes H und der Adresse fort, bis die letzte Elementeinheit 27-n den Eingangskopf H und die Adresse extrahiert. Demzufolge zeigt die letzte Elementeinheit 27-1 in der ersten Reihe einen Zählwert D'1 an, der synchron mit dem Taktsignal mit der Frequenz f1 während des Verweilens des Kopfes und der Adresse in der ersten Einheitsreihe gezählt worden ist, die letzte Elementeinheit 27-2 in der zweiten Reihe zeigt einen Zählwert D'2 an, der synchron mit dem Taktsignal mit der Frequenz f2 während des Verweilens des Kopfes H und der Adresse in der zweiten Einheitsreihe gezählt worden ist; und ebenso zeigt die letzte Elementeinheit 27-n in der n-ten Reihe einen Zählwert D'n an, der synchron mit dem Taktsignal mit der Frequenz fn während des Verweilens des Kopfes H und der Adresse in der n-ten Einheitsreihe gezählt worden ist.
- Fig. 2 stellt die Anordnung der (k-1)-ten, k-ten und (k+1)-ten Elementeinheiten in der i-ten Reihe als Beispiel dar.
- Jede dieser Elementeinheiten hat einen Zähler 41, ein Register 42, einen Welligkeitsverschiebungscontroller 43. Der Zähler 41 empfängt das Taktsignal vom Taktgenerator 30 (siehe Fig. 1) und zählt das Taktsignal.
- Das Register 42 empfängt den sequentiell verschobenen Kopf H und die Adresse vom Paketverteiler 21 (siehe Fig. 1) und speichert sie.
- Der Paketverteiler 21 übergibt den Kopf H und die Adresse an das Register 42 der ersten Elementeinheit, und gleichzeitig übergibt der Verteiler auch ein Anforderungssignal an den Welligkeitsverschiebungscontroller 43 der gleichen Elementeinheit. Der Welligkeitsverschiebungscontroller 43 übergibt, wenn der Kopf H und die Adresse bereits im Register 42 seiner eigenen Elementeinheit gespeichert sind, ein Anforderungssignal an den Welligkeitsverschiebungscontroller 43 der Elementeinheit der nächsten Stufe oder an den Übertragungscontroller 28 (siehe Fig. 1).
- Der Übertragungscontoller 28 übergibt, wenn er das Anforderungssignal vom Welligkeitsverschiebungscontroller 43 der Elementeinheit der letzten Stufe empfängt, ein Rechtsverschiebesignal an den Welligkeitsverschiebungscontroller 43, und als Antwort auf das Rechtsverschiebesignal werden der Kopf H und die Adresse vom Register 42 der Elementeinheit der letzten Stufe an den Übertragungscontoller 28 übergeben. Der Welligkeitsverschiebungscontroller 43 übergibt, wenn er ein Anforderungssignal vom Paketverteiler 21 oder vom Welligkeitsverschiebungscontroller 43 der Elementeinheit der vorherigen Stufe empfängt, ein Rechtsverschiebesignal an den Paketverteiler 21 oder an den Welligkeitsverschiebungscontroller der vorherigen Stufe 43 und als Antwort auf das Rechtsverschiebesignal werden der Kopf H und die Adresse vom Paketverteiler 21 oder vom Register der vorherigen Stufe 42 übergeben.
- Der Zähler 41 der ersten Elementeinheit in der i-ten Reihe setzt, wenn der Kopf H und die Adresse, die vom Paketverteiler 21 übergeben werden, im Register 42 der gleichen Elementeinheit gespeichert werden, auf den Anfangszustand zurück oder löscht seinen alten Zählwert und beginnt mit einem neuen Zählvorgang. Der Zählwert wird immer dann zum Zähler der nächsten Stufe 41 verschoben, wenn der Kopf H und die Adresse in das Register der nächsten Stufe 42 verschoben werden, und der Zählvorgang des Zählwerts wird auch zum Zähler der nächsten Stufe verschoben. Auf diese Weise zeigt der Zähler 41 der letzten Elementeinheit einen Zählwert an, der während des Verweilens des Kopfes H und der Adresse in der Einheitsreihe gezählt worden ist.
- Nachstehend wird die Direktverarbeitungssteuerung des Übertragungscontrollers 28 beschrieben. Zuerst wird angenommen, daß die oben erwähnten Frequenzen f1 bis fn der Taktsignale entsprechend den Direktverarbeitungsklassen 1 bis n gewichtet sind und die Bedingung Fj > fj+1 erfüllt ist. In diesem Fall erhöht sich ein Zählwert D'j, der in der letzten Elementeinheit 27-j in der j-ten Reihe gespeichert ist, die zur Direktverarbeitungsklasse j gehört, schneller als ein Zählwert D'j+1, der in der letzten Elementeinheit 27-(j+1) in der (j+1)-ten Reihe gespeichert ist. Das heißt, ein Zählintervall Tj des Zählwerts D'j in der letzten Elementeinheit 27-j der j-ten Reihe wird durch 1/fj ausgedrückt und ein Zählintervall Tj+1 des Zählwerts D'j+1 in der letzten Elementeinheit 27-(j+1) der (j+1)-ten Reihe wird durch 1/fj+1 ausgedrückt. Wenn also die Bedingung fj > fj+1 erfüllt ist, dann ist die Bedingung Tj < Tj+1 erfüllt, so daß sich der Zählwert D'j schneller erhöht als der Zählwert D'j-1.
- Der Übertragungscontoller 28 wählt einen maximalen Wert der Zählwerte D'1 bis D'n aus, die in der Elementeinheit der letzten Stufe 27-1, 27-2, und 27-n angezeigt werden. Diese Auswahl wird realisiert, indem ein Vergleichsvorgang durchgeführt wird, der durch den folgenden Ausdruck (2) ausgedrückt wird:
- Max (D'1, D'2, ..., D'j, ..., D'n) (2)
- 1 ≤ j ≤ n
- Der Übertragungscontoller 28 liest den Kopf H und die Adresse aus der letzten Elementeinheit, die den gewählten maximalen Zählwert anzeigt, übergibt den Kopf H an die Aussonderungsausführungseinrichtung 39 und übergibt auch die Adresse an den verwendbaren Zeigerpuffer 29a und über den Paketzeiger 33 an den Datenspeicher 35. Der Datenspeicher 35 übergibt ein Paket, das an der empfangenen Adresse gespeichert ist, während der verwendbare Zeigerpuffer 29a die empfangene Adresse an das Ende der Leeradreßwarteschlange Qempty setzt
- Auf diese Weise werden beim Wählen des maximalen Wertes der Zählwerte D'1 bis D'n, die in den Elementeinheiten 27-1, 27-2, ... und 27-n in der letzten Stufe angezeigt werden, da der Zählwert D'j der Direktverarbeitungsklasse j sich schneller erhöht als der Zählwert D'j+1 der Direktverarbeitungsklasse j+1, der vordere Kopf H und die vordere Adresse der Kopf/Adreßwarteschlange, die in der j-ten Reihe von Elementeinheiten gespeichert sind, vorzugsweise gegenüber dem vorderen Kopf H und der vorderen Adresse der Kopf/Adreßwarteschlange, die in den (j+1)-ten Reihe von Elementeinheiten gespeichert sind, ausgewählt. Das heißt, da das vordere Paket der Paketwarteschlange der Direktverarbeitungsklasse j vom Datenspeicher 35 bevorzugt gegenüber dem vorderen Paket der Paketwarteschlange der Direktverarbeitungsklasse (j+1) weitergegeben wird, hat die Direktverarbeitungsklasse j eine höhere Priorität als die Direktverarbeitungsklasse (j+1).
- Der oben beschriebene Vorgang wird nachstehend kurz erläutert. Immer wenn ein Paket in den Datenspeicher 35 eingegeben wird, wird die vordere Adresse der Leeradreßwarteschlange Qempty an den Datenspeicher 35 und den Paketverteiler 21 übergeben. Und das Datenpaket wird im Datenspeicher 25 in der Adresse gespeichert, während der Kopf H und die Adresse des Pakets über den Paketverteiler 21 an die Elementeinheit übergeben wird, die der Direktverarbeitungsklasse entspricht, die von den Prioritätsdaten des Kopfes H angezeigt wird. Ferner liest der Übertragungscontoller 28 den Kopf H und die Adresse aus den letzten Elementeinheiten 27-1, 27-2, ... und 27-n auf der Grundlage des Ausdrucks (2), übergibt den Kopf H an die Aussonderungsausführungseinrichtung 39 und übergibt die gelesene Adresse über den verwendbaren Zeigerpuffer 29a und den Paketlesezeiger 33 an den Datenspeicher 35. Infolgedessen gibt der Datenpuffer 35 das vordere Paket irgendeiner der Paketwarteschlangen der Direktverarbeitungsklassen 1 bis n aus. Die Adresse, die vom Übertragungscontoller 28 übergeben wird, entspricht einer Adresse, die die Position eines Pakets anzeigt und die bereits verwendet worden ist, als das Paket dieser Adresse vom Datenspeicher 35 gelesen worden ist, und die Adresse wird an das Ende der Leeradreßwarteschlange Qempty im verwendbaren Zeigerpuffer 29a angefügt. Demzufolge wird in dem verwendbaren Zeigerpuffer 29a eine Leeradreßwarteschlange Qempty gebildet, die aus einer Vielzahl von nichtverwendeten Adressen besteht.
- Der Wichtungskoeffizient Wj im Ausdruck (1) nach dem Stand der Technik und die Einheitszeit Tj im Ausdruck (2) in der vorliegenden Ausführungsform erfüllen die Bedingung (3), die folgendermaßen lautet:
- W1:W2:...:Wj:...:Wn=1/T1:1/T2:...:1/Tj:...:1/Tn (3)
- Auf diese Weise ist die vorliegende Ausführungsform so beschaffen, daß, wenn Pakete der Direktverarbeitungsklasse 1 bis n eingegeben werden, die Zählwerte D'1 bis D'n dieser Pakete in Intervallen erhöht werden, die entsprechend er Direktverarbeitungsklassen bestimmt werden, ein maximaler Wert dieser Zählwerte D'1 bis D'n gewählt wird und das Paket, das dem gewählten Zählwert entspricht, vorzugsweise übertragen wird. Aus diesem Grund kann die Wahl eines unverzüglich zu übertragenden Pakets einfach durch den Vergleichsvorgang zwischen den Zählwerten D'1 bis D'n realisiert werden, und dadurch kann eine Hochgeschwindigkeitsverarbeitung erreicht werden. Ferner kann, da eine solche einfache Anordnung wie ein Register, ein Zähler usw., die in FIFO-Form in Kaskadenschaltung verbunden sind, verwendet wird, die Pufferelementeinheit ohne weiteres in der Form einer integrierten Schaltung ausgeführt sein.
- Die Aussonderungssteuerung gemäß dieser Ausführungsform wird nachstehend beschrieben.
- Der Klassenaussonderungsentscheidungsteil 37 weist einen Klassenaussonderungsdiskriminator 37a auf, der ein Paket von einer Datenbusschnittstelle 11 empfängt und die Unterscheidungsklasse des empfangenen Pakets auf der Grundlage der Prioritätsdaten, die im Kopf H des empfangenen Pakets für jedes Paket enthalten sind, unterscheidet. In der dargestellten Ausführungsform werden die Aussonderungsklassen 1 bis M vorher bestimmt, um den Durchgangsmengen- bzw -ratezählern 37b-1 bis 37b-M zugeordnet zu werden, die in der nächsten Stufe des Klassenaussonderungsdiskriminators 37a vorhanden sind. Der Klassenaussonderungsdiskriminator 37a übergibt, nachdem er die Aussonderungsklasse des empfangenen Pakets durch Unterscheidung bestimmt hat, einen Impuls an den Durchgangsratezähler, der der durch Unterscheidung bestimmten Aussonderungsklasse entspricht. Wenn beispielsweise das Paket zur Aussonderungsklasse 1 gehört, übergibt der Klassenaussonderungsdiskriminator 37a einen Impuls an den Durchgangsratezähler 37b-1, der der Aussonderungsklasse 1 entspricht. Wenn das Paket zur Aussonderungsklasse 2 gehört, übergibt der Klassenaussonderungsdiskriminator 37a einen Impuls an den Durchgangsratezähler 37b-2, der der Aussonderungsklasse 2 entspricht. Ebenso übergibt, wenn das Paket zur Aussonderungsklasse n gehört, der Klassenaussonderungsdiskriminator 37a einen Impuls an den Durchgangsratezähler 37b-n, der der Aussonderungsklasse n entspricht.
- Jeder der Durchgangsratezähler 37b-1 bis 37b-M zählt seinen Impuls, berechnet die Anzahl der Eingangspakete pro Zeiteinheit t, nämlich eine Durchgangsrate a, und speichert dort die Paketdurchgangsrate a. Auf diese Weise werden Durchgangsraten a1 bis aM der Aussonderungsklassen 1 bis M in den Durchgangsratespeichern 37c-1 bis 37c-M jeweils gespeichert.
- Der Klassenaussonderungsentscheidungsteil 37 weist auch Produktberechnungseinrichtungen 37d-1 bis 37d-M auf, die die Durchgangsraten a1 bis aM aus den Durchgangsratespeichern 37c-1 bis 37c-M extrahieren, die Produkte a1 α 1 bis aM α M dieser Durchgangsraten a1 bis aM und eine zulässige Aussonderungsmenge α1 bis αM berechnen, die vorher für die Aussonderungsklassen 1 bis M bestimmt worden sind, und die jeweils eine Aussonderungsklassenentscheidungseinrichtung 37e dieser Produkte anweisen. In diesem Zusammenhang bedeutet das Wort "zulässige Aussonderungsrate" ein Verhältnis zwischen einer aussonderungsfähigen Paketdurchgangsrate und einer Aussonderungsklassenpaketdurchgangsrate.
- Die Klassenaussonderungsentscheidungseinrichtung 37e wählt ein maximales Produkt aus den Produkten a1 α 1 bis aM α M aus. Diese Auswahl wird durchgeführt, indem der folgende Vorgang ausgeführt wird:
- Max (a1 α 1, a2 α 2, ..., aj α j, ..., aM α M) (4)
- 1 ≤ j ≤ M
- Wenn man in diesem Fall wird annimmt, daß die zulässigen Aussonderungsmengen α1 bis αM so gewichtet werden, wie sie den Aussonderungsklassen 1 bis M zugeordnet sind, und die Bedingung αj ≥ α j+1 erfüllt ist, dann wird das Produkt aj α j für die Aussonderungsklasse j bevorzugt gegenüber dem Produkt aj+1 α j+1 für die Aussonderungsklasse j+1 ausgewählt.
- Auf diese Weise wählt die Klassenaussonderungsentscheidungseinrichtung 37e immer das maximale Produkt aus den Produkten a1 α 1 bis aM α M vorher aus.
- Andererseits legt der Leeradreßnummernspeicher 29b der Leerwarteschlangenverwaltungseinrichtung 29, wenn die Anzahl der Adressen im verwendbaren Zeigerpuffer 29a auf beispielsweise weniger als 2 reduziert ist, ein Zustimmungssignal an die Klassenaussonderungsentscheidungseinrichtung 37e an.
- Die Klassenaussonderungsentscheidungseinrichtung 37e informiert, wenn sie das Zustimmungssignal empfängt, die Aussonderungsausfuhrungseinrichtung 39 der Aussonderungsklasse, die zum maximalen Produkt der Produkte a1 α 1 bis aM α M führt, und weist auch den Schalter 36 und den Kompensator 38 an, eine Kompensation durchzuführen. Wenn beispielsweise das Produkt a1 α 1 gewählt wird, wird die Aussonderungsklasse 1, die zum Produkt a1 α 1 führt, als Anweisung an die Aussonderungsausführungseinrichtung 39 übergeben, wenn das Produkt a2 α 2 gewählt wird, wird die Aussonderungsklasse 2, die zum Produkt a2 α 2 führt, als Anweisung an die Aussonderungsausführungseinrichtung 39 übergeben. Ebenso wird, wenn das Produkt an α n gewählt wird, die Aussonderungsklasse n, die zum Produkt an α n führt, als Anweisung an die Aussonderungsausführungseinrichtung 39 übergeben.
- Der Kompensator 38, ebenso wie der verwendbare Zeigerpuffer 29a, zeigt eine Warteschlange für vorläufige Adressen Queue an, die aus einer Vielzahl von Adressen besteht. Der Kompensator 38 übergibt, wenn er das Zustimmungssignal von der Klassenaussonderungsentscheidungseinrichtung 37e empfängt, die vordere Adresse der Warteschlange für vorläufige Adressen Queue weiter. Der Schalter 36, schaltet, wenn er das Zustimmungssignal von der Klassenaussonderungsentscheidungseinrichtung 37e empfängt, einmal von der Verbindung zwischen dem Übertragungscontoller 28 und dem verwendbaren Zeigerpuffer 29a zur Verbindung zwischen den Kompensator 38 und dem verwendbaren Zeigerpuffer 29a um, um dadurch die Adresse vom Kompensator 38 an den verwendbaren Zeigerpuffer 29a zu übergeben. Diese Adresse wird an das Ende der Leeradreßwarteschlange Qempty in dem verwendbaren Zeigerpuffer 29a hinzugefügt. Danach schaltet der Schalter 36 von der Verbindung zwischen dem Kompensator 38 und dem verwendbaren Zeigerpuffer 29a zurück zur Verbindung zwischen dem Übertragungscontoller 28 und dem verwendbaren Zeigerpuffer 29a.
- Wenn demzufolge die Anzahl der Adressen innerhalb des verwendbaren Zeigerpuffers 29a kleiner als 2 wird, wie oben erwähnt, wird die vordere Adresse der Warteschlange für vorläufige Adressen des Kompensators 38 an das Ende der Leeradreßwarteschlange Qempty des verwendbaren Zeigerpuffers 29a angefügt. Infolgedessen erhöht sich die Anzahl der Adressen im verwendbaren Zeigerpuffer 29a um 1, um die Leeradreßwarteschlange Qempty zu kompensieren.
- Die Aussonderungsausführungseinrichtung 39 weist eine Aussonderungseinrichtung 39a auf, die, wenn sie die Anweisung zur Klassenaussonderung von der Klassenaussonderungsentscheidungseinrichtung 37e empfängt, eine solche Verarbeitung durchführt, wie sie im Flußdiagramm gemäß Fig. 3 dargestellt ist.
- Nunmehr führt der Übertragungscontoller 28 die Direktverarbeitungssteuerung als Antwort auf das Übertragungsaufforderungstaktsignal durch, das über die ODER-Schaltung 40 von der Leitungsschnittstelle 16 empfangen wird, um nacheinander irgendeine der letzten Elementeinheiten 27-1 bis 27-n zu übergeben, und übergibt nacheinander den Kopf H und die Adresse in der gewählten Elementeinheit an die Aussonderungseinrichtung 39a. Die Aussonderungseinrichtung 39a vergleicht, wenn sie den Kopf H vom Übertragungscontoller 28 empfängt, die Aussonderungsklasse, die durch den Kopf H bestimmt wird, mit der Aussonderungsklasse, die von der Klassenaussonderungsentscheidungseinrichtung 37e angewiesen wird, um zu bestimmen, ob die beiden Aussonderungsklassen miteinander übereinstimmen oder nicht (Schritt 101).
- Wenn keine Übereinstimmung zwischen beiden Aussonderungsklassen festgestellt wird, wartet die Aussonderungseinrichtung 29a, bis sie den nächsten Kopf H und die nächste Adresse vom Übertragungskontroller 28 erhält. Wenn eine Übereinstimmung festgestellt wird, stellt die Aussonderungseinrichtung 39a durch Unterscheidung die Verbindung des Pakets fest, das durch den empfangenen Kopf H festgelegt wird. Das Wort "Verbindung" bedeutet Übertragungsweg zwischen zwei Endeinrichtungen für Paketübertragung und -empfang.
- Die Aussonderungseinrichtung 39a vergleicht die durch Unterscheidung bestimmte Verbindung mit einer Verbindung, die bereits dort gespeichert ist (Schritt 102), und wartet, wenn sie eine Übereinstimmung zwischen beiden Verbindungen feststellt, bis die Aussonderungseinrichtung den nächsten Kopf H und die nächste Adresse vom Übertragungscontoller 28 empfängt. Wenn die Aussonderungseinrichtung 39a keine Übereinstimmung zwischen beiden feststellt, dann empfängt sie eine Adresse, die auf den vorher empfangenen Kopf H folgt, vom Übertragungscontoller 28, um zu verhindern, daß die empfangene Adresse an den verwendbaren Zeigerpuffer 29a und den Paketlesezeiger 33 übergeben wird (Schritt 103). Dadurch wird verhindert wird, daß das bisher in der Adresse gespeicherte Paket, nämlich das Paket der von der Klassenaussonderungsentscheidungseinrichtung 37e bestimmten Aussonderungsklasse vom Datenspeicher 35 übergeben wird, was bedeutet, daß das Paket ausgesondert worden ist.
- Wenn das Paket ausgesondert worden ist, übergibt die Aussonderungseinrichtung 39a unverzüglich ein Paketübertragungsaufforderungstaktsignal über eine ODER-Schaltung 40 an den Übertragungscontoller 28, wodurch als Antwort auf das Paketübertragungsaufforderungstaktsignal der Verlust eines von der Leitungsschnittstelle 16 gemäß Fig. 8 zu übertragenden Pakets verhindert wird.
- Danach speichert die Aussonderungseinrichtung 39a die Verbindung, die durch den empfangenen Kopf H im Speicher 39b festgelegt wird (Schritt 104), und fügt die empfangene Adresse an das Ende der Warteschlange für vorläufige Adressen Queue im Kompensator 38 an. Der Speicher 39b speichert und hält die Verbindung, bis eine vorbestimmte Zeit vergangen ist, und löscht nach Ablauf der vorbestimmten Zeit die gespeicherte Verbindung.
- In dem Fall, wo die Aussonderungsklasse, die vom Kopf H festgelegt wird, der vom Übertragungscontoller 28 übergeben wird, mit der Aussonderungsklasse übereinstimmt, die von der Aussonderungsentscheidungseinrichtung 37e festgelegt wird, und die Verbindung, die vom Kopf H festgelegt wird, mit der Verbindung, die im Speicher 39b gespeichert ist, für eine vorbestimmte Zeit nicht übereinstimmt, wird verhindert, daß eine Adresse, die auf den Kopf H folgt, an den Paketlesezeiger 33 übergeben wird, und die Adresse wird an das Ende der Warteschlange für vorläufige Adressen Queue des Kompensators 38 angefügt. Da die Adresse später aus dem Kompensator 38 in den verwendbaren Zeigerpuffer 29a transportiert werden soll, um zum Speichern des Pakets im Datenspeicher 35 verwendet zu werden, wird sichergestellt, daß das in der auszusondernden Adresse gespeicherte Paket vom Datenspeicher 35 weitergegeben wird. Ferner ist die alte Verbindung des vorher ausgesonderten Pakets noch im Speicher 39b für die vorbestimmte Zeit gespeichert, so daß, wenn die alte Verbindung mit der Verbindung des nunmehr auszusondernden Pakets übereinstimmt, die Aussonderung des Pakets beendet wird. Infolgedessen kann verhindert werden, daß Pakete in der gleichen Verbindung für die vorbestimmte Zeit kontinuierlich ausgesondert werden, und somit kann die deutliche Verschlechterung der Kommunikationsqualität, die durch die Verbindung der ausgesonderten Pakete bewirkt wird, behoben werden.
- Zur Verhinderung der kontinuierlichen Aussonderung von Paketen in der gleichen Verbindung kann eine bis zu einer vorbestimmten Anzahl reichende Anzahl von Verbindungen im Speicher 39b immer dann nacheinander gespeichert werden, wenn ein Paket in jeder Verbindung ausgesondert wird, und wenn ein Paket in einer Verbindung, die sich von irgendeiner der Verbindungen, die im Speicher 39b gespeichert sind, unterscheidet, neu ausgesondert worden ist, die andere Verbindung im Speicher 39b gespeichert werden und gleichzeitig eine der Verbindungen, die zuerst im Speicher 39b gespeichert worden ist, gelöscht werden. In diesem Fall wird vermieden, daß Pakete in der gleichen Verbindung kontinuierlich ausgesondert werden, unabhängig davon, wieviel Zeit vergangen ist.
- Die oben beschriebene Aussonderungssteuerung wird nachstehend mit Bezug auf Fig. 4 zusammengefaßt.
- Zunächst wird gemäß Fig. 4(a) die Leeradreßwarteschlange Qempty im verwendbaren Zeigerpuffer 29a gemeinsam von den Kopf/Adreßwarteschlangen der verschiedenen Direktverarbeitungsklassen 1 bis n verwendet, die zwecks Direktverarbeitungssteuerung unterteilt sind. Dies dient zur Vermeidung der folgenden Situation: Wenn eine Leeradreßwarteschlange für jede Kopf/Adreßwarteschlange gebildet wird, wird es unmöglich, den Datenspeicher 35 effektiv zu verwenden (siehe Fig. 1). In dem Fall, wo die Leeradreßwarteschlange Qempty so eingerichtet ist, daß sie auf diese Weise gemeinsam verwendet wird, wird, wenn eine Warteschlange für verwendete Adressen, die aus den Adressen aller Verweilpakete besteht, als Qused bezeichnet wird, eine maximale Adreßwarteschlange Qmax folgendermaßen ausgedrückt:
- Qmax = Qused + Qempty (5)
- wobei, wenn die Anzahl der Adressen in der Leeradreßwarteschlange Qempty null wird und die Anzahl der Adressen in der Warteschlange für verwendete Adressen Qused gleich der Anzahl der Adressen in der maximalen Adreßwarteschlange Qmax wird, keine neue Adresse mehr in der Warteschlange für verwendete Adressen Qused angeordnet werden kann.
- Unter einer solchen Bedingung, wie in Fig. 4(b) dargestellt, wird, wenn die Anzahl der Adressen in der Leeradreßwarteschlange Qempty kleiner als 2 wird, eine der Aussonderungsklassen 1 bis M gewählt, und um das Paket der gewählten Aussonderungsklasse auszusondern, wird entschieden, daß eine Adresse A des Pakets aus der Warteschlange für verwendete Adressen Qused ausgesondert wird. Da zu dieser Zeit die Anzahl der Adressen in der Warteschlange für verwendete Adressen Qused um 1 erhöht wird, wird die effektive Länge der maximalen Adreßwarteschlange Qmax zu kurz. Um dies zu vermeiden, wird eine Adresse von der Warteschlange für vorläufige Adressen Queue an die Leeradreßwarteschlange Qempty übergeben, um zu verhindern, daß die effektive Länge der maximalen Adreßwarteschlange Qmax gekürzt wird.
- Immer wenn gemäß Fig. 4(c) die Aussonderungsausführungseinrichtung 39 nacheinander die Adresse A von der Warteschlange für verwendete Adressen Qused unter der Direktverarbeitungssteuerung empfängt, bestimmt die Aussonderungsausführungseinrichtung 39 durch Unterscheidung die Aussonderungsklasse der Adresse A. Wenn von der Warteschlange für verwendete Adressen Qused eine Adresse B, die nicht auszusondern ist, empfangen wird, übergibt die Aussonderungsausführungseinrichtung 39 die Adresse B über den Schalter 36 an die Leeradreßwarteschlange Qempty. In dem Fall, wo die Aussonderungsausführungseinrichtung 39 die Adresse A, die zur auszusondernden Klasse gehört, von der Warteschlange für verwendete Adressen Qused empfängt, bestätigt anschließend die Ausführungseinrichtung 39, daß die Aussonderung der empfangenen Adresse A keine kontinuierliche Aussonderung der Pakete in der gleichen Leitung bewirkt, und sondert die Adresse A aus.
- Als nächstes empfängt, wie in Fig. 4(d) dargestellt, unmittelbar nachdem die Aussonderungsausführungseinrichtung 39 die Adresse A ausgesondert hat, die Ausführungseinrichtung eine Adresse C von der Warteschlange für verwendete Adressen Qused. Zu dieser Zeit sondert die Aussonderungsausführungseinrichtung 39 die Adresse A in die Warteschlange für vorläufige Adressen Queue aus. Die Warteschlange für vorläufige Adressen Queue übergab bereits eine Adresse an die Leeradreßwarteschlange Qempty und ist daher in ihrer Warteschlangenlänge nicht eingeschränkt. Da nun jedoch die Warteschlange für vorläufige Adressen Queue die Adresse A empfängt, die von der Aussonderungsausführungseinrichtung 39 ausgesondert worden ist, kann die Warteschlange Queue die Originallänge haben.
- Demzufolge wird gemäß der vorliegenden Erfindung das vordere Paket in der Paketwarteschlange nicht immer ausgesondert, ein aussonderungsfähiges Paket in dieser kann jedoch selektiv ausgesondert werden.
- Da entsprechend dem Paketvermittlungssystem gemäß der vorliegenden Erfindung lediglich ein einfacher Vergleichsvorgang die Auswahl eines unverzüglich zu übermittelnden Pakets ermöglicht, kann eine Hochgeschwindigkeitsverarbeitung realisiert werden. Da ferner eine Puffer- Elementeinheit eine derartige einfache Schaltung eines Registers, eines Zählers usw. haben kann, die nach einem FIFO-Prinzip in Kaskadenschaltung verbunden sind, kann die Elementeinheit ohne weiteres in Form einer integrierten Schaltung ausgeführt werden. Außerdem wird das vordere Paket in der Paketwarteschlange nicht immer ausgesondert, ein aussonderungsfähiges Paket in dieser kann jedoch selektiv ausgesondert werden. Infolgedessen kann die Kommunikationsqualität der Paketvermittlung verbessert werden und ein preiswertes System realisiert werden.
Claims (9)
1. Paketvermittlungssystem mit einer Datenspeichereinrichtung (35) zum
Speichern von empfangenen Paketdaten;
einer Einrichtung (21) zum Verteilen der empfangenen Paketdaten
entsprechend den zugewiesenen Direktverarbeitungsprioritätsklassen, wobei
die Direktverarbeitungsprioritätsklasse auf der Grundlage der
Direktverarbeitungsprioritätsdaten bestimmt wird, die im empfangenen
Paketdatenkopf enthalten sind;
einer Vielzahl von Adressenwarteschlangeneinrichtungen (22 bis 27),
die für die entsprechenden Direktverarbeitungsprioritätsklassen vorgesehen
sind, wobei jede Adressenwarteschlangeneinrichtung eine Vielzahl von
Elementeinheiten aufweist, die in Reihe geschaltet sind, zum Speichern von
Adreßdaten und zum sequentiellen Verschieben von Adreßdaten, die in den
Elementeinheiten gespeichert sind;
wobei jede aus der Vielzahl der Adressenwarteschlangeneinrichtungen
(22 bis 27) in jeder ihrer Elementeinheiten als die Adreßdaten eine
Kopfadresse jedes Speicherbereichs der Datenspeichereinrichtung (35)
speichert, der die Paketdaten speichert;
einer Übertragungssteuereinrichtung (28) zum Wählen einer der
Adressenwarteschlangeneinrichtungen und zum Extrahieren von Adreßdaten aus
der letzten Stufenelementeinheit (27) der gewählten
Adressenwarteschlangeneinrichtung; und
einer Einrichtung (16) zum Lesen, aus der Datenspeichereinrichtung
(35), von Paketdaten, die in einer Adresse gespeichert sind, die durch die
von der Übertragungssteuereinrichtung (28) extrahierten Adreßdaten
bezeichnet wird;
wobei das System dadurch gekennzeichnet ist, daß es ferner eine
Vielzahl von Zähleinrichtungen (41) aufweist, die jeweils in jeder
Elementeinheit aus der Vielzahl der Adressenwarteschlangeneinrichtungen (22
bis 27) vorgesehen sind, zum Zählen mit verschiedenen Taktfrequenzen
während einer Zeitperiode, in der die Adreßdaten aus einer ersten
Stufenelement-einheit (22) in eine letzte Stufenelementeinheit (27) in
jeder Adressen-warteschlangeneinrichtung verschoben werden, wobei jede
Taktfrequenz einer entsprechenden Direktverarbeitungsprioritätsklasse
entspricht, die den empfangenen Paketen zugeordnet ist; und
daß die Übertragungssteuereinrichtung (28) Zählwerte der
Zähleinrichtungen (41) in jeder der letzten Stufenelementeinheiten (27) der
entsprechenden Adressenwarteschlangeneinrichtung vergleicht, um die
Adressenwarteschlangeneinrichtung mit dem größten Zählwert zu wählen.
2. Paketvermittlungssystem nach Anspruch 1, dadurch gekennzeichnet, daß
die Taktfrequenzen so eingestellt werden, daß die
Direktverarbeitungsprioritätsklasse um so höher ist, je kleiner die Taktfrequenz ist.
3. Paketvermittlungssystem nach Anspruch 1, dadurch gekennzeichnet, daß
die Zähleinrichtung (41) einer Elementeinheit einer
Adressenwarteschlangeneinrichtung (22 bis 27) so eingerichtet sind, daß sie ihren gezählten Wert
zur Zähleinrichtung (41) in der nächsten Stufenelementeinheit immer dann
verschieben, wenn Adreßdaten in die nächste Stufenelementeinheit verschoben
werden.
4. Paketvermittlungssystem nach Anspruch 1, dadurch gekennzeichnet, daß
es ferner aufweist: eine Leeradressenwarteschlangeneinrichtung (29) zum
Speichern von Leeradreßdaten, die einer Adresse der
Datenspeichereinrichtung (35) entsprechen, in der keine Paketdaten
gespeichert sind, zum Liefern der Leeradreßdaten sowohl an die
Paketverteilungseinrichtung (21) als auch an die Datenspeichereinrichtung
(35) immer dann, wenn die Paketdaten empfangen werden, und zum erneuten
Speichern der extrahierten Adreßdaten immer dann, wenn die Adreßdaten von
der Übertragungssteuereinrichtung (28) extrahiert werden.
5. Paketvermittlungssystem nach Anspruch 4, dadurch gekennzeichnet, daß
die Paketverteilungseinrichtung (21) die von der
Leeradressenwarteschlangen-einrichtung (29) gelieferten Leeradreßdaten an
die Adressenwarteschlangen-einrichtungen (22 bis 27) liefert, die der
Direktverarbeitungsprioritäts-klasse zugeordnet sind, an die das empfangene
Paket verteilt wird, und wobei die Datenspeichereinrichtung (35) die
empfangenen Paketdaten in einer Adresse speichert, die den von der
Leeradressenwarteschlangeneinrichtung (29) gelieferten Leeradreßdaten
entspricht.
6. Paketvermittlungssystem nach Anspruch 1, dadurch gekennzeichnet, daß
es ferner aufweist: eine Einrichtung (37a) zum Unterscheiden einer
Aussonderungsprioritätsklasse, zu der die empfangenen Paketdaten gehören,
auf der Grundlage von Aussonderungsprioritätsdaten, die in der empfangenen
Paketinformation enthalten sind;
eine Durchgangsmengenzähleinrichtung (37b) zum Zählen der Anzahl von
in einer vorbestimmten Zeitperiode für jede Aussonderungsprioritätsklasse
empfangenen Paketdaten, um eine Paketdurchgangsmenge für jede
Aussonderungs-prioritätsklasse zu zählen;
eine Einrichtung (37c) zum Einstellen einer zulässigen
Aussonderungsmenge für jede Aussonderungsprioritätsklasse;
eine Einrichtung (37d) zum Multiplizieren der Paketdurchgangsmenge
jeder Aussonderungsprioritätsklasse mit der zulässigen Aussonderungsmenge
jeder Aussonderungsprioritätsklasse, um ein Produkt für jede
Aussonderungsprioritätsklasse zu erzeugen;
eine Einrichtung (29b) zum Ermitteln einer Speicherrestkapazität der
Datenspeichereinrichtung (35);
eine Bestimmungseinrichtung (37e), wenn die Speicherrestkapazität der
Datenspeichereinrichtung (35) kleiner wird als ein vorbestimmter Wert, zum
Vergleichen der Produkte der von der Multipliziereinrichtung (37d)
erzeugten entsprechenden Aussonderungsprioritätsklasse, um eine
Aussonderungs-prioritätsklasse eines maximalen der Produkte zu ermitteln;
eine Einrichtung (39b) zum Speichern von Verbindungsdaten der
ausgesonderten Paketdaten auf der Grundlage von Verbindungsdaten, die im
empfangenen Paketdatenkopf enthalten sind;
eine Einrichtung (39a) zum Prüfen, ob die
Aussonderungsprioritätsdaten, die zur Aussonderungsklasse gehören, in der letzten
Stufenelementeinheit (27) aus der Vielzahl von Adressenwarteschlangeneinrichtungen
gespeichert sind, und wenn eine letzte Elementeinheit vorhanden ist, in der
Aussonderungsprioritätsdaten, die zur ausgesonderten Klasse gehören,
gespeichert sind, zum Aussondern der Paketdaten, die den in der letzten
Elementeinheit (27) gespeicherten Adreßdaten entsprechen, unter einer
Voraussetzung, nämlich daß die Verbindungsdaten, die in dieser letzten
Elementeinheit gespeichert sind, sich von den Verbindungsdaten
unterscheiden, die in der Verbindungsdatenspeichereinrichtung (39b)
gespeichert sind.
7. Paketvermittlungssystem nach Anspruch 6, dadurch gekennzeichnet daß
die Verbindungsdatenspeichereinrichtung (39b) so eingerichtet ist, daß sie
Verbindungsdaten von Paketdaten, die zuletzt ausgesondert worden sind, für
eine vorbestimmte Zeitperiode speichert.
8. Paketvermittlungssystem nach Anspruch 6, dadurch gekennzeichnet, daß
es ferner eine Leeradressenwarteschlangeneinrichtung (29a) aufweist zum
Speichern von Leeradreßdaten, die einer Adresse der
Datenspeichereinrichtung (35) entsprechen, in der keine Paketdaten
gespeichert sind, und zum erneuten Speichern von Adreßdaten, die einer
Adresse entsprechen, in der die gelesenen Paketdaten immer dann gespeichert
wurden, wenn die Paketdaten aus der Datenspeichereinrichtung (35) gelesen
worden sind, wobei die Speicherrestkapazitätsermittlungseinrichtung (29b)
die Speicherrestkapazität der Datenspeichereinrichtung (35) auf der
Grundlage der Anzahl der Leeradressen ermittelt, die in der
Leeradressenwarteschlangeneinrichtung (29a) gespeichert sind.
9. Paketvermittlungssystem nach Anspruch 6, dadurch gekennzeichnet, daß
es ferner eine Kompensationsadressenwarteschlangeneinrichtung (38) aufweist
zum sequentiellen Speichern von Adreßdaten, die den von der
Paketdatenaussonderungseinrichtung (39a) ausgesonderten Paketdaten entsprechen, und
zum erneuten Speichern von Adreßdaten, die in der
Kompensationsadressenwarteschlangeneinrichtung (38) gespeichert sind, in einer
Leeradressenwarteschlangeneinrichtung (29a) immer dann, wenn von der
Bestimmungseinrichtung (37) eine Aussonderungsklasse bestimmt wird.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17252089A JP2865314B2 (ja) | 1989-07-04 | 1989-07-04 | パケット通信装置 |
JP1251655A JPH03113935A (ja) | 1989-09-27 | 1989-09-27 | パケット通信装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69029343D1 DE69029343D1 (de) | 1997-01-23 |
DE69029343T2 true DE69029343T2 (de) | 1997-05-15 |
Family
ID=26494849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69029343T Expired - Fee Related DE69029343T2 (de) | 1989-07-04 | 1990-07-04 | Paket-Vermittlungssystem |
Country Status (4)
Country | Link |
---|---|
US (2) | US5179557A (de) |
EP (1) | EP0407161B1 (de) |
CA (1) | CA2020295C (de) |
DE (1) | DE69029343T2 (de) |
Families Citing this family (73)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5475680A (en) * | 1989-09-15 | 1995-12-12 | Gpt Limited | Asynchronous time division multiplex switching system |
JP3128654B2 (ja) | 1990-10-19 | 2001-01-29 | 富士通株式会社 | 監視制御方法、監視制御装置及び交換システム |
EP0533900B1 (de) * | 1991-04-10 | 1997-08-06 | Koninklijke Philips Electronics N.V. | Atm-zellenverteiler mit geringer verzögerung oder geringer verlustrate |
JPH05257851A (ja) * | 1991-12-30 | 1993-10-08 | Apple Computer Inc | データの転送の順序を制御させる装置 |
US5887196A (en) * | 1991-12-30 | 1999-03-23 | Apple Computer, Inc. | System for receiving a control signal from a device for selecting its associated clock signal for controlling the transferring of information via a buffer |
US5410677A (en) * | 1991-12-30 | 1995-04-25 | Apple Computer, Inc. | Apparatus for translating data formats starting at an arbitrary byte position |
US5640599A (en) * | 1991-12-30 | 1997-06-17 | Apple Computer, Inc. | Interconnect system initiating data transfer over launch bus at source's clock speed and transfering data over data path at receiver's clock speed |
US5426640A (en) * | 1992-01-21 | 1995-06-20 | Codex Corporation | Rate-based adaptive congestion control system and method for integrated packet networks |
JPH0614049A (ja) * | 1992-03-19 | 1994-01-21 | Fujitsu Ltd | Atmにおけるセル廃棄制御装置及びその方法 |
SE515178C2 (sv) * | 1992-03-20 | 2001-06-25 | Ericsson Telefon Ab L M | Förfaranden och anordningar för prioritering vid bufferthantering i paketnät |
US5381407A (en) * | 1992-06-04 | 1995-01-10 | Bell Communications Research, Inc. | Method and system for controlling user traffic to a fast packet switching system |
JPH06119146A (ja) * | 1992-10-07 | 1994-04-28 | Nippon Motorola Ltd | データのソート回路 |
GB2272612B (en) * | 1992-11-06 | 1996-05-01 | Roke Manor Research | Improvements in or relating to ATM signal processors |
US5359592A (en) * | 1993-06-25 | 1994-10-25 | Stratacom, Inc. | Bandwidth and congestion control for queue channels in a cell switching communication controller |
US5641928A (en) * | 1993-07-07 | 1997-06-24 | Yamaha Corporation | Musical instrument having a chord detecting function |
US5696764A (en) * | 1993-07-21 | 1997-12-09 | Fujitsu Limited | ATM exchange for monitoring congestion and allocating and transmitting bandwidth-guaranteed and non-bandwidth-guaranteed connection calls |
JP3044983B2 (ja) | 1993-08-25 | 2000-05-22 | 株式会社日立製作所 | Atmスイッチングシステムのセル制御方法 |
US5408472A (en) * | 1993-09-20 | 1995-04-18 | Motorola, Inc. | Device and method for cell processing in cell relay nodes |
JP3178949B2 (ja) * | 1993-09-30 | 2001-06-25 | 富士通株式会社 | Atmスイッチ方式 |
US5592672A (en) * | 1993-11-02 | 1997-01-07 | Bell Communications Research, Inc. | System for load balancing between message processors by routing all queued messages to a particular processor selected by a deterministic rule |
JP3354689B2 (ja) * | 1994-02-28 | 2002-12-09 | 富士通株式会社 | Atm交換機、交換機及びそのスイッチングパス設定方法 |
US5537400A (en) * | 1994-04-15 | 1996-07-16 | Dsc Communications Corporation | Buffered crosspoint matrix for an asynchronous transfer mode switch and method of operation |
JP3560364B2 (ja) * | 1994-06-10 | 2004-09-02 | 富士通株式会社 | タイムアウト判別装置、方法および通信装置 |
JP3625302B2 (ja) * | 1994-07-19 | 2005-03-02 | 株式会社東芝 | ネットワークシステムのデータ送達装置および方法 |
US5923657A (en) * | 1994-08-23 | 1999-07-13 | Hitachi, Ltd. | ATM switching system and cell control method |
NL9401978A (nl) * | 1994-11-25 | 1996-07-01 | Nederland Ptt | Transmissiesysteem voor datacellen in een lokaal net. |
MY123040A (en) * | 1994-12-19 | 2006-05-31 | Salbu Res And Dev Proprietary Ltd | Multi-hop packet radio networks |
GB9520807D0 (en) * | 1995-10-11 | 1995-12-13 | Newbridge Networks Corp | Fair queue servicing using dynamic weights |
DE69637139T2 (de) * | 1995-11-17 | 2008-02-28 | Telecommunications Techniques Corp. | Instrument zum testen und messen von virtuellen verbindungen in einem atm netzwerk |
US5761191A (en) * | 1995-11-28 | 1998-06-02 | Telecommunications Techniques Corporation | Statistics collection for ATM networks |
FI103005B (fi) | 1996-03-25 | 1999-03-31 | Nokia Telecommunications Oy | Lähetettävän datan priorisointi reitittimessä |
FI103455B1 (fi) | 1996-10-08 | 1999-06-30 | Nokia Telecommunications Oy | Pakettiverkon reititin |
FI103310B1 (fi) | 1996-11-15 | 1999-05-31 | Nokia Telecommunications Oy | Puskuroinnin toteuttaminen pakettikytkentäisessä tietoliikenneverkossa |
US6084855A (en) * | 1997-02-18 | 2000-07-04 | Nokia Telecommunications, Oy | Method and apparatus for providing fair traffic scheduling among aggregated internet protocol flows |
KR100236036B1 (ko) * | 1997-03-31 | 1999-12-15 | 전주범 | Atm 망접속기에서 수신 셀 폐기방법 |
US6049528A (en) * | 1997-06-30 | 2000-04-11 | Sun Microsystems, Inc. | Trunking ethernet-compatible networks |
US5920566A (en) * | 1997-06-30 | 1999-07-06 | Sun Microsystems, Inc. | Routing in a multi-layer distributed network element |
US6044418A (en) * | 1997-06-30 | 2000-03-28 | Sun Microsystems, Inc. | Method and apparatus for dynamically resizing queues utilizing programmable partition pointers |
US6052738A (en) * | 1997-06-30 | 2000-04-18 | Sun Microsystems, Inc. | Method and apparatus in a packet routing switch for controlling access at different data rates to a shared memory |
US6094435A (en) * | 1997-06-30 | 2000-07-25 | Sun Microsystems, Inc. | System and method for a quality of service in a multi-layer network element |
US6016310A (en) * | 1997-06-30 | 2000-01-18 | Sun Microsystems, Inc. | Trunking support in a high performance network device |
US6246680B1 (en) | 1997-06-30 | 2001-06-12 | Sun Microsystems, Inc. | Highly integrated multi-layer switch element architecture |
US6081522A (en) * | 1997-06-30 | 2000-06-27 | Sun Microsystems, Inc. | System and method for a multi-layer network element |
US5938736A (en) * | 1997-06-30 | 1999-08-17 | Sun Microsystems, Inc. | Search engine architecture for a high performance multi-layer switch element |
US6014380A (en) * | 1997-06-30 | 2000-01-11 | Sun Microsystems, Inc. | Mechanism for packet field replacement in a multi-layer distributed network element |
US6081512A (en) * | 1997-06-30 | 2000-06-27 | Sun Microsystems, Inc. | Spanning tree support in a high performance network device |
US6128666A (en) * | 1997-06-30 | 2000-10-03 | Sun Microsystems, Inc. | Distributed VLAN mechanism for packet field replacement in a multi-layered switched network element using a control field/signal for indicating modification of a packet with a database search engine |
US6119196A (en) * | 1997-06-30 | 2000-09-12 | Sun Microsystems, Inc. | System having multiple arbitrating levels for arbitrating access to a shared memory by network ports operating at different data rates |
US6044087A (en) * | 1997-06-30 | 2000-03-28 | Sun Microsystems, Inc. | Interface for a highly integrated ethernet network element |
US6088356A (en) * | 1997-06-30 | 2000-07-11 | Sun Microsystems, Inc. | System and method for a multi-layer network element |
US6253260B1 (en) * | 1998-10-22 | 2001-06-26 | International Business Machines Corporation | Input/output data access request with assigned priority handling |
US6967963B1 (en) * | 1998-12-01 | 2005-11-22 | 3Com Corporation | Telecommunication method for ensuring on-time delivery of packets containing time-sensitive data |
US6570849B1 (en) | 1999-10-15 | 2003-05-27 | Tropic Networks Inc. | TDM-quality voice over packet |
US6771652B1 (en) | 1999-11-23 | 2004-08-03 | International Business Machines Corporation | Method and system for controlling transmission of packets in computer networks |
JP2003522507A (ja) * | 2000-02-14 | 2003-07-22 | トムソン ライセンシング ソシエテ アノニム | 幾つかのパケットに分割されるメッセージの送信方法 |
DE10011667C2 (de) * | 2000-03-10 | 2002-11-21 | Infineon Technologies Ag | Hochgeschwindigkeits-Router |
CA2302460A1 (en) * | 2000-03-27 | 2001-09-27 | Michael Stumm | Voicemail for wireless systems |
US7333489B1 (en) * | 2000-05-08 | 2008-02-19 | Crossroads Systems, Inc. | System and method for storing frame header data |
US7570584B1 (en) | 2002-03-29 | 2009-08-04 | Cisco Technology, Inc. | Network-wide congestion control of SPVC signaling messages |
US6837832B2 (en) * | 2002-04-01 | 2005-01-04 | Hanners Ernest M | Orthopedic shoulder weight halter |
EP1351453B1 (de) * | 2002-04-03 | 2006-04-12 | Alcatel | Verfahren und Vorrichtungen zur Umordnung von Paketen in einem Netzwerkprozessor |
US20050030894A1 (en) * | 2003-08-04 | 2005-02-10 | Stephens Adrian P. | Techniques for channel access and transmit queue selection |
US7839844B2 (en) * | 2004-07-30 | 2010-11-23 | Sony Corporation | System and method for dynamically determining retransmit buffer time |
US7643503B2 (en) * | 2004-07-30 | 2010-01-05 | Sony Corporation | System and method for dynamically determining retransmit buffer time |
US20070025242A1 (en) * | 2005-07-27 | 2007-02-01 | Broadcom Corporation | Dynamic allocation of aggregate buffer |
US7996604B1 (en) * | 2005-10-25 | 2011-08-09 | Xilinx, Inc. | Class queue for network data switch to identify data memory locations by arrival time |
US7730276B1 (en) | 2005-10-25 | 2010-06-01 | Xilinx, Inc. | Striping of data into memory of a network data switch to prevent read and write collisions |
US7568074B1 (en) | 2005-10-25 | 2009-07-28 | Xilinx, Inc. | Time based data storage for shared network memory switch |
JP4472617B2 (ja) * | 2005-10-28 | 2010-06-02 | 富士通株式会社 | Raidシステム、raidコントローラ及びそのリビルド/コピーバック処理方法 |
US9055011B2 (en) * | 2010-08-31 | 2015-06-09 | Intel Corporation | Methods and apparatus for linked-list circular buffer management |
DE102018210598A1 (de) | 2018-06-28 | 2020-01-02 | MTU Aero Engines AG | Gehäusestruktur für eine Strömungsmaschine, Strömungsmaschine und Verfahren zum Kühlen eines Gehäuseabschnitts einer Gehäusestruktur einer Strömungsmaschine |
US11528203B2 (en) * | 2020-08-14 | 2022-12-13 | Cpacket Networks Inc. | Packet switch with hardware interval counters and associated computer to generate network traffic activity data |
JP7512780B2 (ja) * | 2020-09-07 | 2024-07-09 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1427319A (en) * | 1972-05-04 | 1976-03-10 | Plessey Co Ltd | Communication systems |
US4769811A (en) * | 1986-12-31 | 1988-09-06 | American Telephone And Telegraph Company, At&T Bell Laboratories | Packet switching system arranged for congestion control |
US4769810A (en) * | 1986-12-31 | 1988-09-06 | American Telephone And Telegraph Company, At&T Bell Laboratories | Packet switching system arranged for congestion control through bandwidth management |
JPH01133447A (ja) * | 1987-11-19 | 1989-05-25 | Mitsubishi Electric Corp | パケット転送処理方式 |
JPH01221042A (ja) * | 1988-02-29 | 1989-09-04 | Toshiba Corp | パケット交換機の輻輳制御方法 |
-
1990
- 1990-07-02 US US07/546,111 patent/US5179557A/en not_active Expired - Fee Related
- 1990-07-03 CA CA002020295A patent/CA2020295C/en not_active Expired - Fee Related
- 1990-07-04 EP EP90307290A patent/EP0407161B1/de not_active Expired - Lifetime
- 1990-07-04 DE DE69029343T patent/DE69029343T2/de not_active Expired - Fee Related
-
1992
- 1992-05-20 US US07/885,764 patent/US5278830A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CA2020295C (en) | 1998-06-23 |
EP0407161A2 (de) | 1991-01-09 |
US5179557A (en) | 1993-01-12 |
US5278830A (en) | 1994-01-11 |
EP0407161A3 (en) | 1994-06-08 |
DE69029343D1 (de) | 1997-01-23 |
CA2020295A1 (en) | 1991-01-05 |
EP0407161B1 (de) | 1996-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69029343T2 (de) | Paket-Vermittlungssystem | |
EP0584398B1 (de) | Verfahren und Schaltungsanordnung zum Übertragen von Nachrichtenzellen innerhalb eines ATM-Netzes | |
DE3728805C2 (de) | ||
DE3786298T2 (de) | Verfahren und Schalter zum Vermitteln von Informationen. | |
DE69534540T2 (de) | Apparat und Methode zur Verarbeitung von Bandbreitenanforderungen in einer ATM-Vermittlungsstelle | |
DE69027584T2 (de) | Vorrichtung zur Datenvermittlung | |
DE19634492B4 (de) | Verfahren zum optimierten Übertragen von ATM-Zellen über Verbindungsabschnitte | |
DE68922647T2 (de) | Paketvermittlungsvorrichtung. | |
EP0639014A1 (de) | Zugangskontrollverfahren für einen Pufferspeicher sowie Vorrichtung zum Zwischenspeichern von Datenpaketen und Vermittlungsstelle mit einer solchen Vorrichtung | |
DE19757965A1 (de) | Verteiltes Puffersystem für ATM-Schalter | |
DE102007038964A1 (de) | Verfahren und Vorrichtung zum Verarbeiten von Netzwerkdaten | |
EP0315918B1 (de) | Vermittlungsknoten für die Vermittlung von in Datenpaketen übertragenen Datensignalen | |
DE69028580T2 (de) | Vorrichtung zur Zellenvermittlung | |
DE69433229T2 (de) | ATM-Schalter | |
DE3714385A1 (de) | Verfahren und schaltungsanordnung zur koppelfeldsteuerung in einem vermittlungssystem | |
DE3881574T2 (de) | Vermittlungsverfahren für integrierte Sprach/Daten-Übertragung. | |
DE69626679T2 (de) | Vermittlungseinrichtung | |
WO1991013505A1 (de) | Steuereinheit für den zentralspeicher eines atm-knotens | |
EP0523276A1 (de) | Verfahren und Schaltungsanordnung zum Einrichten von virtuellen Verbindungen über ein ATM-Verbindungsleitungsbündel | |
DE10052904B4 (de) | Warteschlangenbildungsverfahren zur Weiterleitung von Paketen in Folge | |
EP0173274B1 (de) | Verfahren und Schaltungsanordnung zur Herstellung und zum Betreiben einer Zeitvielfach-Breitbandverbindung | |
EP0454218B1 (de) | Zeitvielfachübermittlungssystem | |
DE60223098T2 (de) | Paketvermittlungsstelle | |
EP0960551B1 (de) | Verfahren und schaltungsanordnung zum übertragen von nachrichtenzellen im zuge von virtuellen verbindungen unterschiedlicher prioritäten | |
EP1358735B1 (de) | Einheit zur verteilung und verarbeitung von datenpaketen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8339 | Ceased/non-payment of the annual fee |