-
Gebiet der
Erfindung
-
Die
Erfindung bezieht sich auf eine Übertragungsschicht
von der Art, wie sie zwischen einem Schaltermittel und einer Reihe
von Kommunikationskanälen
verwendet wird. Weiterhin bezieht sich die Erfindung auf ein Verfahren
zum Betrieb eines Übertragungsschalters,
der eine Übertragungsschicht derselben
Art aufweist.
-
Hintergrund der Erfindung
-
Übertragungsschalter
werden hauptsächlich für Kommunikationsnetzwerke
verwendet. Es gibt verschiedene Arten von Kommunikationsnetzwerken,
wie z. B. das Ethernet, der Token-Ring ("token ring") und das FDDI. Einige Netzwerke verwenden das
asynchrone Übertragungsmodustelekommunikationskonzept.
Dieses Konzept ist besonders vorteilhaft auf dem aufkommenden Gebiet
des virtuellen Hochgeschwindigkeitsnetzwerks.
-
Der
asynchrone Übertragungsmodus
(ATM) ist durch Normungsgremien als eine zugrundeliegende Transporttechnologie
in vielen digitalen Netzwerkprotokollstapeln von integrierten Breitbanddiensten ausgewählt worden.
In diesem Konzept bezieht sich "Transport" auf die Verwendung
von ATM-Schalt- und -Multiplex-Verfahren
bei der Datenverbindungsschicht, um Endverbraucherverkehr in einem
Netzwerk von der Quelle zum Ziel zu übertragen. Eine Beschreibung
des standardisierten ATM-Telekommunikationskonzeptes kann in einer
Publikation des ATM-Forums mit dem Titel "ATM user – network interface specification", 1993, veröffentlicht
durch PTR Prentice Hall, gefunden werden.
-
Die
Literaturstelle aus Dienst an der Menschheit durch Kommunikation,
Supercomm/ICC, New Orleans, 1.–5.
Mai 1994, Band 1, Nr.-, 1. Mai 1994, Institute of Electrical and
Electronics Engineers, Seiten 402–409, XP000438948 Fan R et
al: "Expandable
Atom Switch Architecture (XATOM) for ATM LANS" offenbart eine ausbaufähige Schalterarchitektur
für ATM-Nahbereichsnetzwerke,
die einen Rückdrucksteuermechanismus
zwischen Eingangs- und Ausgangspuffern zum Entfernen von Konkurrenzsituationen
unter Mehrfachzellen aufweisen.
-
1 zeigt
ein Beispiel eines asynchronen Übertragungsmodusnetzwerkes.
Das ATM-Netzwerk selbst ist in der Netzwerkregion 1 schematisch
dargestellt. Die Netzwerkregion 1 umfasst die ATM-Schalter 2, 3 und 4.
Die Netzwerkregion 1 kann eine große Zahl weiterer Übertragungsschalter
umfassen, die nicht in der Zeichnung dargestellt sind. Die Übertragungsschalter 2, 3 und 4 sind über die
Kommunikati onsverbindungen 5, 6 und 7 miteinander
verbunden. Jede der Kommunikationsverbindungen 5, 6 und 7 umfasst
einen oder mehr Übertragungsschalter.
Dadurch wird ein Netzwerk eingerichtet.
-
In 1 wird
beispielhaft gezeigt, dass die privaten Netzwerke 11, 12 und 13 über die
Kommunikationsverbindungen 8, 9 und 10 mit
dem ATM-Netzwerk in der Netzwerkregion 1 verbunden werden.
Informationen werden auf einem solchen Netzwerk mit Hilfe von sogenannten
Zellen ausgetauscht. 2 zeigt die Struktur einer solchen
Zelle entsprechend der ATM-Norm. Die Zelle trägt eine Nutzlast 14,
die ein Stück
Information umfasst, die über
eine virtuelle Verbindung des Netzwerkes übertragen werden soll. Weiterhin
umfasst die Zelle eine Zellenkopfzeile 15 die Steuerinformationen
trägt.
Gemäß der ATM-Norm trägt das GFC-Feld
der Zelle allgemeine Flusssteuerdaten, umfasst das VCI-Feld einen
virtuellen Verbindungsidentifizierer, umfasst das VPI-Feld einen virtuellen
Pfadidentifizierer und identifiziert das Feld PT den Nutzlasttyp.
-
Weitere
Steuerfelder sind das CLP-Feld, das optional die explizierte Verlustpriorität der Zelle
anzeigt, und das HEC-Feld, das zum Zwecke der Fehlerkorrektur verwendet
wird.
-
3 zeigt
ein schematisches Diagramm eines Übertragungsschalters von einer
Art, die für
das standardisierte ATM-Netzwerk verwendet werden kann. Übertragungsschalter
von der Art wie in 3 gezeigt, sind dem Fachmann
gut bekannt und werden zum Schalten in Netzwerken weit verwendet. Übertragungsschalter
werden zum Übertragen
von Datenzellen, die zu virtuellen Verbindungen gehören, über physikalische
Verbindungen verwendet.
-
Der Übertragungsschalter
umfasst einen Schalter 16, eine Übertragungsschicht 17 und
die Kommunikationskanäle 18.
Die Schalter des Schalters 16 selbst sind in der Zeichnung
nicht dargestellt, sondern nur die FIFOs S0 bis
SN–1.
Die N FIFOs S0, S1,
S2, ..., SN–1 des
Schalters 16 sind Speichermittel zum Speichern einer Zahl
N von Schalterwarteschlangen. Die Schalterwarteschlangen dienen
dazu, die Ausgänge
des Schalters 16 zu puffern.
-
Der
FIFO S0 umfasst die Speicherplätze C01, C02, C06. Jeder dieser Speicherplätze hat
die Kapazität,
eine vollständige
ATM-Zelle zu halten (vergl. 2). Dasselbe
trifft auf die anderen FIFOs S1, S2, ..., SN–1 des
Schalters 16 zu, insbesondere auf die Speicherzellen CN–1,0 und
CN–1,6 Jeder
der FIFOs S0 bis SN–1 hat
die Kapazität,
6 ATM-Zellen zu puffern. Somit kann eine Zahl N von Schalterwarteschlangen, von
denen jede eine Länge
von bis zu 6 Zellen aufweist, in den FIFOs des Schalters 16 gespeichert werden.
-
Der
Ausgang eines jeden der FIFOs S0 bis SN–1 ist über den
Zellenbus 19 mit der Übertragungsschicht 17 verbunden.
Die Übertragungsschicht 17 umfasst
einen FIFO 20 zum Speichern einer Zellenwarteschlange,
die eine Länge
von bis zu L = 6 ATM-Zellen aufweist. Der FIFO 20 empfängt ATM-Zellen über den
Bus 19 aus den Schalterwarteschlangen, die in den FIFOs
S des Schalters 16 realisiert sind, um ATM-Schichtfunktionen
auf diesen Zellen durchzuführen,
und speist sie in die Kommunikationskanäle 18 gemäß der Ursprungsschalterwarteschlange
ein.
-
Der
FIFO 20 der Übertragungsschicht 17 umfasst
die L = 6 Speicherplätze 21, 22, 23, 24, 25 und 26.
Jeder der Speicherplätze 21–26 hat
die Kapazität,
eine vollständige
ATM-Zelle zu halten.
-
Der
Ausgang des FIFO 20 ist über den Zellenbus 27 mit
den Kommunikationskanälen 18 verbunden.
Der Zellenbus kann von der Art eines UTOPIA-Zellenbusses sein, wie
in "UTOPIA, an ATM-PHY
interface specification",
Stufe 2, Version 0.8, 10. April 1995, veröffentlicht durch das ATM-Forum,
definiert. Die Übertragungsschicht 17 kann
mit Hilfe eines Mikroprozessors, wie z. B. Motorola MC 92500, realisiert
werden.
-
Die
Kommunikationskanäle 18 umfassen eine
Zahl N von physikalischen Leitungen L0 bis
LN–1. Die
Leitungen L0 bis LN–1 dienen
dazu, sogenannte physikalische Schichtverbindungen (PHY) einzurichten.
Beispiele für
solche physikalischen Verbindungen sind die Kommunikationsverbindungen 5, 6, 7 und 8, 9, 10,
wie in 1 gezeigt.
-
Jede
der physikalischen Leitungen L0 bis LN–1 ist
mit einem Ausgangspuffer verbunden. In dem in 3 gezeigten
Beispiel sind die Ausgangspuffer B0, B1, ..., BN–1 FIFOs.
Jeder der FIFOs B0 bis BN–1 hat 10 Speicherplätze, von
denen jeder eine Speicherkapazität
aufweist, die ausreicht, eine vollständige ATM-Zelle zu halten.
Der Ausgangspuffer B0 hat die Speicherplätze D01, D02, ... D0,10, während
der FIFO BN–1 die
Speicherplätze
DN–1,0,
DN–1,1,
..., DN–1,10 aufweist.
Somit können
die Speichermittel der Kommunikationskanäle 18, die in diesem
Falle mit Hilfe von FIFOs realisiert werden, jedes eine Ausgangszellenwarteschlange
halten, die eine Länge
von bis zu P = 10 Zellen aufweist. Die Zellen werden in die FIFOs der
Kommunikationskanäle 18 über den
Zellenbus 27 aus der Übertragungsschicht 17 eingegeben.
-
Typischerweise
gibt es in einem ATM-Schaltsystem eine Eins-Zu-Eins-Beziehung zwischen
den FIFOs S0 bis Sn–1 des
Schalters 16 und den FIFOs B0 bis
Bn–1 der
Kommunikationska näle 18:
eine Zelle, die aus dem FIFO Sx stammt,
wo O ≥ x > N, wird über den
Bus 19, den FIFO 20 und den Bus 27 zu
ihrem entsprechenden FIFO Bx übertragen.
Mit anderen Worten wird jede der physikalischen Leitungen L0 bis LN–1 eindeutig
einem der FIFOs S0 bis SN–1 des
Schalters 16 zugewiesen und umgekehrt.
-
Die
Zahlen, die in den Speicherplätzen 21–26 des
FIFO 20 angezeigt werden, symbolisieren den Ursprung der
Zelle, die gerade in einem spezifischen Speicherplatz des FIFO 20 gespeichert
wird. Zum Beispiel stammt die an dem Speicherplatz 21 gespeicherte
Zelle aus dem FIFO S0, die an dem Speicherplatz 22 gespeicherte
Zelle stammt aus dem FIFO S5 (der in der
Zeichnung nicht gezeigt wird) und die an dem Speicherplatz 26 gespeicherte
Zelle stammt ebenfalls aus dem FIFO S0.
Somit stellt 3 eine Momentaufnahme des Betriebs
des Übertragungsschalters
dar.
-
Die
Erfindung möchte
eine verbesserte Übertragungsschicht
und einen verbesserten Übertragungsschalter
zur Verfügung
stellen, wie z. B. einen ATM-Schalter, der eine höhere Datenübertragungsrate
erlaubt. Weiterhin möchte
die Erfindung ein verbessertes Verfahren zum Betrieben eines Übertragungsschalters
zur Verfügung
stellen.
-
Zusammenfassung
der Erfindung
-
Gemäß der vorliegenden
Erfindung wird eine Übertragungsschicht
zur Verfügung
gestellt, die geeignet ist, zwischen einem Schaltmittel und einer Zahl
N von Kommunikationskanälen
verwendet zu werden, wobei das Schaltmittel erste Speichermittel zum
Speichern einer Zahl N von Schalterwarteschlangen aufweist, wobei
jeder der Kommunikationska näle
zweite Speichermittel zum Speichern einer Zellenwarteschlange aufweist,
die eine Länge von
bis zu P Zellen aufweist, wobei sich jedes der zweiten Speichermittel
in einem Besetztzustand befindet, wenn eine minimale Zahl M von
Zellen darin gespeichert ist, wo M kleiner oder gleich P ist, wobei jeder
der Kommunikationskanäle
einer der Schalterwarteschlangen zugewiesen wird, wobei die Übertragungsschicht
Folgendes umfasst: dritte Speichermittel zum Speichern einer Zellenwarteschlange,
die eine Länge
von bis zu L Zellen aufweisen, und Logikmittel zum Sperren der Eingabe
aus einer der Schalterwarteschlangen in die dritten Speichermittel
der Übertragungsschicht,
wenn die zweiten Speichermittel des zugewiesenen Kommunikationskanals
in einem Besetztzustand sind.
-
Weiterhin
stellt die Erfindung eine Übertragungsschicht
zur Verfügung,
die geeignet ist, zwischen einem Schaltmittel und einer Zahl N von
Kommunikationskanälen
verwendet zu werden, wobei das Schaltmittel erste Speichermittel
zum Speichern einer Zahl N von Schalterwarteschlangen aufweist, wobei
jeder der Kommunikationskanäle
zweite Speichermittel zum Speichern einer Zellenwarteschlange aufweist,
die eine Länge
von bis zu P Zellen aufweist, wobei jedes der zweiten Speichermittel
in einem Besetztzustand ist, wenn darin eine minimale Zahl M von
Zellen gespeichert ist, wo M kleiner oder gleich P ist, wobei jeder
der Kommunikationskanäle
einem der Schalterwarteschlangen zugewiesen ist, wobei die Übertragungsschicht
Folgendes umfasst: dritte Speichermittel zum Speichern einer Zellenwarteschlange,
die eine Länge
von bis zu L Zellen für
jede der Schalterwarteschlangen aufweist.
-
Die
Erfindung stellt außerdem
ein Verfahren zum Betreiben eines Übertragungsschalters gemäß dem angehängten Anspruch
12 zur Verfügung.
-
Weiterhin
stellt die Erfindung ein Verfahren zum Betreiben eines Übertragungsschalters
zur Verfügung,
wobei der Übertragungsschalter
Schaltmittel, eine Zahl N von Kommunikationskanälen und eine Übertragungsschicht
umfasst, wobei die Schaltmittel erste Speichermittel zum Speichern
einer Zahl N von Schalterwarteschlangen aufweisen, wobei jeder der Kommunikationskanäle zweite
Speichermittel zum Speichern einer Zellenwarteschlange aufweist,
wobei jeder der Kommunikationskanäle einer der Schalterwarteschlangen
zugewiesen ist, wobei die Übertragungsschicht
dritte Speichermittel zum Speichern von Zellenwarteschlangen umfasst,
wobei jede der Zellenwarteschlangen einem der Kommunikationskanäle zugewiesen
ist und eine Länge
von bis zu L Zellen aufweist, wobei das Verfahren die folgenden Schritte
umfasst: Eingeben von Zellen aus den Schalterwarteschlangen in die
zugewiesenen Zellenwarteschlangen. Die Erfindung ist besonders vorteilhaft
zum Schalten von Systemen, die mit der ATM-Norm konform sind.
-
Der
Ansatz der Erfindung liegt in dem Befund, dass die Datenübertragungsrate
einer Übertragungsschicht
nach dem Stand der Technik, wie z. B. eine standardisierte ATM-Schicht, durch Blockierungen
begrenzt ist, die in dem FIFO auftreten (vergl. FIFO 20 in 3).
Solch ein Blockieren in einer Übertragungsschicht
nach dem Stand der Technik tritt z. B. auf, wenn der Ausgangspuffer
einer physikalischen Leitung voll ist und gleichzeitig eine Zelle
in dem FIFO der Übertragungsschicht
am Anfang der Ausgangswarteschlange für die Ausgabe an dieselbe physikalische
Leitung gespeichert wird. Wenn z. B. – erneut unter Bezug auf 3 – der Ausgangspuffer B0 der physikalischen Leitung L0 voll
ist, kann die am Speicherplatz 21 in dem FIFO 20 der Übertragungsschicht 17 gespeicherte
Zelle nicht an den Puffer B0 ausgegeben
werden. Als eine Konsequenz müssen all
die anderen Zellen, die an den Speicherplätzen 22–26 gespeichert
sind, in der Zellenwarteschlange des FIFO 20 warten, bis
die am Speicherplatz 21 gespeicherte Zelle an ihren entsprechenden
Puffer B0 ausgegeben wird. Eine Situation
von dieser Art wird im Folgenden als eine "Warteschlangenkopfblockiersituation" ("head-of-queue blocking
situation") bezeichnet.
-
Eine
solche Warteschlangenkopfblockiersituation tritt in einer Übertragungsschicht
gemäß der Erfindung
nicht länger
auf. Grundsätzlich
umfasst die Erfindung zwei verschiedene Ansätze:
-
Der
erste Ansatz besteht darin, die Speicherkapazität der Speichermittel der Übertragungsschicht zu
erhöhen,
so dass für
jede der Schalterwarteschlangen eine getrennte Warteschlange in
der Übertragungsschicht
gespeichert werden kann. Als ein Ergebnis werden Zellen, die aus
einer der Schalterwarteschlangen Sx hervorgehen,
in ihre entsprechende Zellenwarteschlange in der Übertragungsschicht
Tx eingegeben. Die Zellen, die aus der Zellenwarteschlange
Tx der Übertragungsschicht
ausgegeben werden, werden ausschließlich in den zugewiesenen Ausgangspuffern
Bx der physikalischen Leitung Lx eingegeben.
Mit anderen Worten gibt es pro Ausgangspuffer Bx einer
physikalischen Leitung Lx eine dedizierte
Zellenwarteschlange in der Übertragungsschicht
und in den Schaltmitteln. Wenn einer der Ausgangspuffer, z. B. der
Ausgangspuffer B0, voll ist, warten die
Zellen, die zu dem Ausgangspuffer B0 gehören, in
ihrer Übertragungswarteschlange
T0, während
andere Ausgangspuffer B noch durch ihre jeweiligen Übertragungswarteschlangen
T der Übertragungsschicht
bedient werden können.
-
Obwohl
eine gemäß dem ersten
Ansatz der Erfindung implementierte Übertragungsschicht hinsichtlich
der Leistung ideal ist, ist, wegen der hohen Zahl von FIFOs, die
in der Übertragungsschicht
benötigt
werden, ein relativ großer
Siliziumraum erforderlich, um solch eine Übertragungsschicht zu implementieren.
Dies kann nachteilig sein, wenn die Übertragungsschicht in einem
einzelnen integrierten Schaltungschip implementiert werden soll.
-
Der
zweite Ansatz der Erfindung benötigt
nur die Speicherung von einer Zellenwarteschlange in der Übertragungsschicht,
so wie dies nach dem Stand der Technik der Fall ist. Um eine Warteschlangenkopfblockiersituation
zu vermeiden, wird die Eingabe einer Zelle aus einer Schalterwarteschlange gesperrt,
wenn der entsprechende Ausgangspuffer der Zelle voll oder fast voll
ist. Die Situation, dass ein Ausgangspuffer voll oder fast voll
ist, kann durch ein "Besetzt"-Signal für jeden
der Ausgangspuffer signalisiert werden.
-
Gemäß einer
bevorzugten Ausführungsform der
Erfindung werden die besetzten Leitungen mit einer Logik der Übertragungsschicht
verbunden, die die Eingabe der Zelle aus einer Schalterwarteschlange
sperrt, wenn der entsprechende Ausgangspuffer dieser Zelle einen
Besetztzustand signalisiert.
-
Gemäß einer
weiteren bevorzugten Ausführungsform
der Erfindung wird das Besetztsignal schon dann durch einen Puffer
behauptet, wenn seine Ausgangswarteschlange noch L leere Zellen
aufweist, wo L die maximale Länge
der Übertra gungswarteschlange
in der Übertragungsschicht
ist. Das hat den Vorteil, dass sogar im schlimmsten Fall, wo alle
Zellen in der Übertragungswarteschlange
der Übertragungsschicht
zu demselben Ausgangspuffer gehören,
der eine Besetztsituation signalisiert hat, dieser Ausgangspuffer
noch in der Lage ist, die Zellen der Übertragungswarteschlange ohne
eine Blockierungssituation zu empfangen.
-
Gemäß der ATM-Norm
muss es in jeder der physikalischen Leitungen einen kontinuierlichen Fluss
von Zellen geben. Als eine Konsequenz muss eine Situation, in der
ein Ausgangspuffer leer ist, verhindert werden, um zu garantieren,
dass ein ATM-Schalter die ATM-Norm erfüllt. Gemäß einer der bevorzugten Ausführungsformen
der Erfindung empfängt
ein Ausgangspuffer keine Zellen mehr, wenn der Ausgangspuffer sein
Besetztsignal behauptet. Wenn der Besetztzustand vorbei ist, stellt
der Ausgangspuffer das Besetztsignal ein, so dass neue, zu diesem
Ausgangspuffer gehörige
Zellen aus der entsprechenden Schalterwarteschlange über die Übertragungsschicht
zu dem Ausgangspuffer übertragen werden
können.
-
Diese Übertragung
benötigt
jedoch ein bestimmtes Zeitintervall. Wenn die Datenübertragungsrate
auf den physikalischen Leitungen sehr hoch ist, kann dies zu dem
Problem führen,
dass der Ausgangspuffer, der das Besetztsignal eingestellt hat, schon
leer ist, wenn die neuen Zellen aus der Schalterwarteschlange von
diesem Ausgangspuffer eintreffen, da das Zeitintervall, das für die Übertragung der
Zellen erforderlich ist, länger
ist als das Zeitintervall, das erforderlich ist, um einen Ausgangspuffer, der
sein Besetztsignal eingestellt hat, zu leeren. Um eine solche Situation
zu verhindern, wird das Besetztsignal durch einen Ausgangs puffer
behauptet, wenn sich eine minimale Zahl von M Zellen in seiner Ausgangswarteschlange
befinden.
-
Die
Zahl M wird so gewählt,
dass die Zeitintervalle, die nötig
sind, um die Ausgangswarteschlange von M Zellen in dem Ausgangspuffer
zu leeren, mit dem Zeitintervall vom Einstellen des Besetztsignals
durch denselben Ausgangspuffer bis zum Eintreffen einer neuen Zelle
aus der entsprechenden Schalterwarteschlange über die Übertragungsschicht übereinstimmen.
-
Kurze Beschreibung
der Zeichnungen
-
Die
Erfindung wird nun beispielhaft und mit Bezug auf die begleitenden
Zeichnungen beschrieben, in denen:
-
1 ein
Beispiel eines standardisierten ATM-Netzwerkes ist;
-
2 eine
diagrammatische Darstellung einer Standard-ATM-Zelle ist;
-
3 ein
Blockdiagramm eines ATM-Schalters nach dem Stand der Technik zeigt;
-
4 ein
Blockdiagramm eines Übertragungsschalters
gemäß einer
ersten Ausführungsform
der Erfindung zeigt;
-
5 ein
Blockdiagramm eines Übertragungsschalters
gemäß einer
zweiten Ausführungsform
der Erfindung zeigt.
-
In 4 werden
gleiche Bezugszeichen für Teile
des Übertragungsschalters
gemäß der Erfindung
verwendet, die Teilen des Übertragungsschalters
nach dem Stand der Technik von 3 entsprechen,
denen eine führende "1" zu den Bezugszeichen hinzugefügt wurde.
Der Übertragungsschalter der
ersten Ausführungsform
der Erfindung, der in 4 gezeigt wird, umfasst einen
Schalter 116, der einen Satz von FIFOs S0 bis
Sn–1 aufweist.
Die Speicherplätze
der FIFOs des Schalters 116 werden in derselben Weise bezeichnet,
wie die Speicherplätze des
Schalters 16 von 3.
-
Der
Schalter 116 ist durch einen Zellenbus 119 mit
der Übertragungsschicht 117 verbunden.
Die Übertragungsschicht 117 hat
eine Zahl N von FIFOs T0 bis TN–1.
Die Eingänge
der FIFOs T0 bis Tn–1 sind mit
dem Zellenbus 119 verbunden, während die Ausgänge dieser
FIFOs über
einen Zellenbus 127 mit den Kommunikationskanälen 118 verbunden
sind. Die Kommunikationskanäle 118 umfassen
eine Zahl N physikalischer Leitungen, wobei jede physikalische Leitung
ihren eigenen Ausgangspuffer aufweist. Die physikalischen Leitungen
und ihre Ausgangspuffer sowie die Speicherplätze in den Ausgangspuffern werden
in derselben Weise bezeichnet, wie die entsprechenden Teile der
Kommunikationskanäle 18 von 3.
-
Wie
nach dem Stand der Technik, wird eine Zelle, die sich in einer Zellenwarteschlange
befindet, die in dem FIFO Sx gespeichert
ist, immer an ihren zugewiesenen Ausgangspuffer Bx der
physikalischen Leitung Lx, zu der er gehört, übertragen.
Gemäß der bevorzugten
Ausführungsform
der Erfindung, die in 4 gezeigt wird, wird die Zelle,
die aus dem FIFO Sx des Schalters 116 hervorgeht, über den
Zellenbus 119 in ihre zugewiesene Übertragungswarteschlange Tx eingegeben. Mit anderen Worten bilden die
FIFOs, S0, T0, B0; S1, T1,
B1; S2, T2, B2; ...; SN–1,
TN–1,
BN–1 Sätze von
drei FIFOs. Eine Zelle wird aus dem Schalter 116 an die
Kommunikationskanäle 118 ausschließlich durch
Verwenden der FIFOs eines Satzes von FIFOs, zu dem die spezifische
Zelle gehört, übertragen.
-
Wenn
eine Zelle z. B. an dem Speicherplatz C03 in
dem FIFO S0 des Schalters 116 gespeichert wird,
dann wird sie immer an ihre zugewiesenen FIFOs T0 der Übertragungsschicht 117 und
B0 der Kommunikationskanäle 118 zum Übertragen über die physikalischen
Leitungen L0 übertragen. Da in jede der Übertragungswarteschlangen,
die in den FIFOs T0 bis TN–1 gespeichert
sind, nur Zellen eingegeben werden, die aus einer spezifischen der
Schalterwarteschlangen hervorgehen, wird das Auftreten einer Warteschlangenkopfblockiersituation
ausgeschlossen.
-
Wenn
z. B. der Ausgangspuffer B0 voll ist, können keine
weiteren Zellen der Übertragungswarteschlange,
die in dem FIFO T0 der Übertragungsschicht 117 gespeichert
sind, aus dem FIFO T0 ausgegeben werden.
Die Zellen dieser Übertragungswarteschlange,
die in dem FIFO T0 gespeichert sind, müssen warten,
bis der Puffer B0 anfängt sich zu leeren, so dass
es zum Eingeben einer neuen Zelle aus dem FIFO T0 in
den Ausgangspuffer FIFO B0 wieder Platz
gibt. Während
sich alle Zellen in der Zellenwarteschlange des FIFO T0 in
einem Wartezustand befinden, bis es Platz in dem Ausgangspuffer
B0 für
die Eingabe neuer Zellen über
den Zellenbus 127 gibt, kann es sein, dass die anderen
Ausgangspuffer B1 bis BN–1 nicht
voll sind, so dass ihre entsprechenden Zellen aus dem FIFO T1 bis TN–1 über den
Zellenbus 127 an ihre zugewiesenen Ausgangspuffer ausgegeben
werden können.
-
Obwohl
sich die Zellenwarteschlange des FIFO T0 in
einem Wartezustand befindet, weil sich der FIFO B0 in
einem Besetztzustand befindet, können
die anderen Zellenwarteschlangen, die in den anderen FIFOs T1 bis TN–1,
die sich nicht in einem Wartezustand befinden, gespeichert sind,
fortfahren an ihre zugewiesenen Ausgangspuffer B1 bis
BN–1 ausgegeben
zu werden. Somit wird eine Warteschlangenkopfblockiersituation prinzipiell
ausgeschlossen.
-
Im
Folgenden wird nun mit Bezug auf 5 die zweite
Ausführungsform
der Erfindung ausführlicher
beschrieben. In 5 werden gleiche Bezugszeichen
für Teile
verwendet, die Teilen des Übertragungsschalters
von 3 entsprechen, wobei ihnen eine führende "2" zu den Bezugszeichen hinzugefügt wurde.
-
Der
in 5 gezeigte Übertragungsschalter umfasst
einen Schalter 216 und die Kommunikationskanäle 218,
die jeweils dem Schalter 16 und den Kommunikationskanälen 18 in 3 entsprechen. Die
individuellen Speicherplätze
in den FIFOs des Schalters 216 und der Kommunikationskanäle 218 werden
in derselben Weise bezeichnet, wie die entsprechenden Speicherplätze, die
in 3 gezeigt werden. Der Schalter 216 ist über einen
Zellenbus 219 mit einer Übertragungsschicht 217 verbunden. Die Übertragungsschicht 217 umfasst
einen FIFO T, das eine Speicherkapazität aufweist, die ausreicht, um
eine Zellenwarteschlange zu speichern, die eine Länge von
bis zu L Zellen aufweist. Der Eingang des FIFO T ist mit dem Zellenbus 219 verbunden.
Der Ausgang des FIFO T ist über
den Zellenbus 227 mit den Eingängen der FIFOs B0 bis
BN_1 verbunden.
-
Zusätzlich umfasst
die Übertragungsschicht 217 die
Logikschaltung 229 und die Logikschaltung 230.
Die Logikschaltung 229 ist über den Besetztbus 228 mit
den Signalausgängen
der FIFOs B0 bis Bn–1 verbunden.
Das Signal "besetzt" wird an einem Signalausgang
eines der FIFOs der Kommunikationskanäle 218 ausgegeben,
wenn dieser FIFO in einem Besetztzustand ist. Jeder FIFO der Kommunikationskanäle 218 hat
seinen eigenen Signalausgang, um einen solchen Besetztzustand anzuzeigen.
Wenn der Besetztzustand in einem spezifischen FIFO des Kommunikationskanals 218 vorüber ist,
wird das Signal "besetzt" an dem Ausgang dieses
FIFO eingestellt.
-
Die
Logikschaltung 229 hat N Ausgänge, die mit einer Zahl N der
Flip-Flops F0 bis FN–1 verbunden sind.
Nur die Flip-Flops F0 und FN–1 werden
in der Zeichnung gezeigt. Die Ausgänge der Flip-Flops F0 bis FN–1 sind
mit der Logikschaltung 230 verbunden. Der Ausgang der Logikschaltung 230 ist über den Bus 231 mit
den Sperreingängen
der FIFOs S0 bis SN–1 verbunden.
-
Wenn
sich ein Ausgangspuffer FIFO Bx eines der
FIFOs B0 bis BN–1 in
einem Besetztzustand befindet, gibt der Signalausgang dieses FIFO
Bx das Signal "besetzt" aus, das über den Bus 228 an
die Logikschaltung 229 übertragen
wird. In Reaktion auf den Empfang des "Besetzt"-Signals aus dem FIFO Bx, gibt
die Logik 229 ein "Einstell"-Signal an die Flip-Flops
Fx aus. Dadurch wird der Besetztzustand des
Ausgangspuffers FIFO Bx in dem FIFO Fx gespeichert, das eines der FIFOs F0 bis FN–1 ist.
Als eine Konsequenz erscheint die Information, dass der FIFO Bx in einem Besetztzustand ist, an dem Ausgang
der Flip-Flops Fx und wird zur Logikschaltung 230 übertragen.
In Reaktion auf das Einstellen des Flip-Flops Fx und
dem Empfang des entsprechenden Signals, gibt die Logikschaltung 230 ein
Sperrsignal für
den FIFO Sx von einem der FIFOs S0 bis SN_1 aus. Der Empfang des Sperrsignals durch
den FIFO Sx sperrt die Ausgabe von Zellen
aus der Schalterwarteschlange, die in dem FIFO Sx gespeichert
ist, über den
Zellenbus 219. Als eine Konsequenz werden nur Zellen aus
anderen FIFOs des Schalters 216, die nicht gesperrt sind,
in den FIFO T der Übertragungsschicht 217 eingegeben.
-
Dadurch
wird das Risiko des Blockierens der Übertragungswarteschlange, die
in dem FIFO T gespeichert ist, durch Zellen, die aus dem FIFO Sx stammen, verringert. Somit ist es unwahrscheinlich, dass
eine Warteschlangenkopfblockiersituation auftritt.
-
In
der bevorzugten Ausführungsform
der Erfindung, die in 5 gezeigt wird, wird das Risiko
einer Warteschlangenkopfblockiersituation aus den folgenden Gründen sogar
auf Null verringert:
-
Jeder
der Ausgangspuffer FIFOs B0 bis Bn–1 hat
eine Speicherkapazität,
die für
eine Zellenwarteschlange ausreicht, die eine Länge von bis zu P Zellen aufweist,
wo in diesem Falle gilt: P = 10. In dem hier berücksichtigten Beispiel hat der
FIFO T der Übertragungsschicht 217 eine
Speicherkapazität zum
Speichern einer Zellenwarteschlange, die eine Länge von bis zu L Zellen aufweist,
wo: L = 6. Ein FIFO Bx von einem der FIFOs
B0 bis BN–1 der
Kommunikationskanäle 218 wird
definiert in einem Besetztzustand zu sein, wenn eine minimale Zahl
M von Zellen in diesem spezifischen FIFO Bx gespeichert
wird, wo M die Differenz wischen P und L ist, die in diesem Falle 4 ist.
-
Dies
bedeutet, dass sobald mindestens vier Zellen in dem FIFO Bx gespeichert sind, sich dieser FIFO in einem
Besetztzustand befindet. Der Besetztzustand wird über den
Signalausgang dieses spezifischen FIFO Bx über den
Besetztbus 228 an die Logikschaltung 229 signalisiert,
die das Flip-Flop Fx einstellt. Als eine
Konsequenz sperrt die Logikschaltung 230 den FIFO Sx des Schalters 216, so dass keine Zellen
mehr der physikalischen Leitung Lx zugewiesen
werden, und somit wird der FIFO Bx in den
FIFO T der Übertragungsschicht 217 eingegeben.
-
Hinsichtlich
einer Warteschlangenkopfblockiersituation ist der schlimmste Fall
in dem hier berücksichtigten
Beispiel der, dass die Zellenwarteschlange, die in dem FIFO T der Übertragungsschicht 217 gespeichert
ist, ausschließlich
aus Zellen besteht, die dem FIFO Bx der
Kommunikationskanäle 218,
der sich in einem Besetztzustand befindet, zugewiesen werden. Sogar
in diesem Falle hat der FIFO Bx genug freie
Speicherplätze,
d. h. die Speicherplätze
Dx,5, Dx,6, Dx,7, ..., Dx,10,
um die Zellen zu empfangen, die in dem FIFO T auf die Ausgabe über den
Zellenbus 227 an den FIFO Bx warten.
Somit wird eine Warteschlangenkopfblockiersituation sogar in dem
schlechtesten, hier berücksichtigten
Fall ausgeschlossen.
-
Wenn
der in 5 gezeigte Übertragungsschalter
der ATM-Norm entsprechen soll, muss ein kontinuierlicher Fluss von
Zellen auf den physikalischen Leitungen L0 bis
LN–1 unter
allen Umständen aufrechterhalten
bleiben. Dies bedeutet, dass sogar nach dem Ende eines Besetztzustandes
keine Diskontinuität
in dem entsprechenden Kommunikationskanal zugelassen ist. In dem
hier berücksichtigten Beispiel
endet der Besetztzustand des FIFO Bx, wenn
nur 3 Zellen in diesem FIFO an den Speicherplätzen Dx,1,
Dx,2, Dx,3 gespeichert
sind.
-
Danach
wird das "Besetzt"-Signal an dem Signalausgang
des FIFO Bx eingestellt, so dass die Logikschaltung 229 das
Rücksetzen
des Flip-Flops Fx verursacht, und die Logikschaltung 230 gibt
daraufhin die Eingabe der Zellen, die der physikalischen Leitung
Lx zugewiesen sind, in den FIFO T wieder frei.
Um den FIFO Bx vollständig von den drei restlichen
Speicherzellen zu befreien, bedarf es des Zeitintervalls T1; das Zeitintervall zwischen dem Einstellen des "Besetzt"-Signals und der
Eingabe einer neuen Zelle in den FIFO Bx ist
das Zeitintervall T2.
-
Um
das vollständige
Leeren des FIFO Bx zu verhindern, ist es
erforderlich, dass das Zeitintervall T2 kürzer oder
gleich dem Zeitintervall T1 ist. Dies wird
durch Auswählen
von M unter Berücksichtigung der Übertragungsrate
auf den physikalischen Leitungen Lx sowie
der Übertragungsgeschwindigkeit
der internen Komponenten des Schalters erreicht, d. h. des Besetztbusses 228,
der Logik 229, des Flip-Flops F, der Logikschaltung 230,
des Busses 231, des Zellenbusses 219, des FIFO
T und des Zellenbusses 227. Somit hängt die Wahl von M von den Hardwaremerkmalen
des Schalters sowie von der Übertragungsrate
der physikalischen Leitungen ab.
-
Es
ist zu beachten, dass in der Praxis die Zahlen L, M, P viel größer als
in dem oben berücksichtigten
Beispiel sein können.