-
GEBIET DER
ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich auf eine Vermittlung (switch)
zum Vermitteln von sowohl Paketen variabler Länge als auch ATM-Zellen fixierter
Länge.
Genauer bezieht sich die vorliegende Erfindung auf eine Vermittlung
zum Vermitteln von sowohl Paketen variabler Länge als auch ATM-Zellen fixierter
Länge unter Verwendung
einer Segmentierungsfunktion, um ein Paket zu Zellen zu konvertieren,
und eine Wiederzusammensetzungsfunktion, um die Pakete zu Zellen
zu konvertieren.
-
HINTERGRUND
DER ERFINDUNG
-
In
einem System, wo sowohl Pakete variabler Länge als auch ATM-Zellen fixierter
Länge behandelt werden
müssen,
ist es typischerweise notwendig, ein "natives" Format (Zellen oder Pakete) für alle Daten
auszuwählen,
die das System durchlaufen. Es ist notwendig, "nicht-nativen" Verkehr zu dem "nativen" Format auf der Eingangsseite des Systems
zu konvertieren. Dies erlegt typischerweise beliebigem "nicht-nativen" Verkehr Belastungen
in den Formen von zusätzlicher
Gestaltungskomplexität,
potenziell verringertem Leistungsverhalten und zusätzlichen
Kosten auf.
-
US 5,802,052 offenbart ein
skalierbares hochperformantes Vermittlungselement für eine gemeinsam genutzte
Speicherpaket- oder
ATM-Zellen-Vermittlungsnetzeinrichtung. Es lehrt, dass jedes Vermittlungselement,
da es mit jeder der Anschlussgruppenschichtverarbeitungseinrichtungen
verbunden ist, die Daten von allen Anschlussgruppenschichtverarbeitungseinrichtungen
empfangen kann. Dies ist lediglich ein Standardvermittlungsdesign.
US 5,802,052 lehrt nirgendwo
noch schlägt
es vor ein Paket, das in Fragmente aufgebrochen wird und dann diese
Fragmente zu Netzeinrichtungen als unterschiedliche Streifen gesendet
werden, wie in der vorliegenden Anmeldung beschrieben wird.
-
Die
vorliegende Erfindung beschreibt einen Weg, auf dem sowohl ATM-Zellen
als auch Pakete durch das System gesendet werden können und
dann auf der Ausgangsseite des Systems konvertiert werden. Dies beseitigt
die Notwendigkeit, von Paketen zu Zellen oder Zellen zu Paketen
auf der Eingangsseite des Systems zu konvertieren. Dies führt zu einem
verbesserten Gesamtsystemleistungsverhalten. Konvertieren von Zellen zu
Paketen oder Paketen zu Zellen fügt
Verzögerung/Overhead
hinzu. Empfänger
macht es richtig fügt
nur diese Verzögerung/Overhead
in notwendigen Pfaden in einem Ausgang hinzu, wo andere Anschlüsse nicht
beeinflusst werden. Eine Vermittlung, die Daten auf viele Netzeinrichtungen
streift und Paritätsdaten
zu einer anderen Netzeinrichtung sendet, wurde in EP-Patentanmeldung
Nr. 00304944.2 (
EP 1061766 )
beschrieben. Siehe auch EP-Patentanmeldung Nr. 00302910.5 (
EP 1045558 ), die ein Breitspeicher-TDM-Vermittlungssystem beschreibt.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Gemäß der vorliegenden
Erfindung wird eine Vermittlung zum Vermitteln von ATM-Zellen fixierter
Größe und Paketen
variabler Länge
eines Netzes vorgesehen, gekennzeichnet durch:
einen Eingangsanschlussmechanismus
mit einer Vielzahl von Eingangsanschlüssen, jeder fähig, Zellen
und Pakete von dem Netz zu empfangen, wobei der Eingangsanschlussmechanismus
die Zellen und Pakete in Streifen von Fragmenten der Zellen und
Pakete unter Verwendung von RAID-Techniken bildet;
einen Ausgangsanschlussmechanismus
mit einer Vielzahl von Ausgangsanschlüssen, jeder fähig, Zellen
und Pakete zu dem Netz zu senden, wobei der Ausgangsanschlussmechanismus
die Zellen und Pakete aus den Streifen von Fragmenten unter Verwendung
von RAID-Techniken bildet;
eine Vielzahl von Vermittlungsnetzeinrichtungen,
verbunden mit dem Eingangsanschlussmechanismus zum Vermitteln von
entweder Streifen von Fragmenten von Paketen oder Streifen von Fragmenten
von Zellen von dem Eingangsanschlussmechanismus zu dem Ausgangsanschlussmechanismus;
und
einen Mechanismus zum Konvertieren von Paketen zu Zellen,
wenn der Eingangsanschluss ein Paketanschluss ist und der Ausgangsanschluss
ein Zellenanschluss ist, bzw. Zellen zu Paketen, wenn der Eingangsanschluss
ein Zellenanschluss ist und der Ausgangsanschluss ein Paketanschluss
ist, oder Nicht-Konvertieren von
Zellen oder Paketen, wenn der Eingangsanschluss bzw. der Ausgangsanschluss
beide Zellenanschlüsse oder
beide Paketanschlüsse
sind, der Konvertierungsmechanismus mit dem Ausgangsanschlussmechanismus
und den Vermittlungsnetzeinrichtungen verbunden ist.
-
Gemäß einem
anderen Aspekt der Erfindung wird ein Kommunikationssystem vorgesehen,
gekennzeichnet durch: ein Ethernet, entlang dem sich Pakete bewegen;
ein ATM-Netz, entlang dem sich ATM-Zellen bewegen; und eine Vermittlung,
verbunden mit dem Ethernet und dem ATM-Netz, die Pakete, die von
dem Ethernet empfangen werden, in ATM-Zellen konvertiert, die zu
dem ATM-Netz zu senden sind, und Fragmente der Pakete und Zellen über die
Vermittlung als Streifen unter Verwendung von RAID-Techniken sendet,
und ATM-Zellen, die von dem ATM-Netz emp fangen werden, zu Paketen
konvertiert, die zu dem Ethernet zu senden sind.
-
Gemäß einem
anderen Aspekt der Erfindung wird ein Verfahren zum Transferieren
von ATM-Zellen fixierter Größe und Paketen
variabler Größe in einem
Netz vorgesehen, gekennzeichnet durch die Schritte zum:
Empfangen
von ATM-Zellen fixierter Größe in einem
ersten Eingangsanschluss einer Vermittlung;
Transferieren von
Streifen von Fragmenten der ATM-Zellen zu Vermittlungsnetzeinrichtungen;
Lenken
der Streifen der ATM-Zellen fixierter Größe von den Vermittlungsnetzeinrichtungen
zu einem Mechanismus zum Konvertieren der Streifen der ATM-Zellen
fixierter Größe zu Paketen
variabler Länge;
Konvertieren
der Streifen der ATM-Zellen fixierter Größe zu Paketen variabler Länge mit
dem Konvertierungsmechanismus; und
Senden der Pakete variabler
Länge weg
von der Vermittlung durch einen ersten Ausgangsanschluss der Vermittlung.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
In
den begleitenden Zeichnungen werden die bevorzugte Ausführungsform
der Erfindung und bevorzugte Verfahren zum Praktizieren der Erfindung
veranschaulicht, in denen:
-
1 zeigt
eine schematische Darstellung eines Paket-Striping in der Vermittlung der vorliegenden Erfindung.
-
2 ist
eine schematische Darstellung einer OC48 Anschlusskarte bzw. Port-Karte.
-
3 ist
eine schematische Darstellung einer verknüpften Netzanschlussanordnung
(Blade).
-
4a und 4b zeigen
schematische Darstellungen bezüglich
der Konnektivität
der Netzeinrichtung ASICs.
-
5 zeigt
eine schematische Darstellung einer Synchronisationsimpuls- (Sync-Impuls)
Verteilung.
-
6 zeigt
eine schematische Darstellung bezüglich der Beziehung zwischen Übertragungs-
und Empfangssequenzzählern
für den
Separator und beziehungsweise Unstriper.
-
7 zeigt
eine schematische Darstellung einer Vermittlung der vorliegenden
Erfindung.
-
8 ist
eine schematische Darstellung einer Vermittlung der vorliegenden
Erfindung.
-
9 ist
eine schematische Darstellung eines Systems der vorliegenden Erfindung.
-
DETAILLIERTE
BESCHREIBUNG
-
Bezug
nehmend nun auf die Zeichnungen, worin gleiche Bezugszeichen ähnliche
oder identische Teile überall
in den verschiedenen Ansichten bezeichnen, und genauer auf 7 davon,
wird eine Vermittlung 10 zum Vermitteln von ATM-Zellen
fixierter Größe und Paketen
variabler Länge
eines Netzes 12 gezeigt. Die Vermittlung 10 umfasst
einen Eingangsanschluss mechanismus 14 mit einer Vielzahl
von Eingangsanschlüssen 16,
wobei jeder Zellen und Pakete von dem Netz 12 empfangen
kann. Die Vermittlung 10 umfasst einen Ausgangsanschlussmechanismus 18 mit
einer Vielzahl von Ausgangsanschlüssen 20, wobei jeder
in der Lage ist, Zellen und Pakete zu dem Netz 12 zu senden.
Die Vermittlung 10 umfasst eine Vermittlungsnetzeinrichtung 22,
die mit dem Eingangsanschlussmechanismus 14 und dem Ausgangsanschlussmechanismus 18 verbunden
ist, zum Vermitteln von entweder Paketen oder Zellen von einem beliebigen
Eingangsanschluss 16 zu einem beliebigen Ausgangsanschluss 20.
Die Vermittlung 10 umfasst einen Mechanismus zum Konvertieren
von Paketen zu Zellen, wenn der Eingangsanschluss 16 ein
Paketanschluss ist und der Ausgangsanschluss 20 ein Zellenanschluss
ist, bzw. Zellen zu Paketen, wenn der Eingangsanschluss 16 ein
Zellenanschluss und der Ausgangsanschluss 20 ein Paketanschluss
ist, oder Nicht-Konvertieren von Zellen oder Paketen, wenn jeweils der
Eingangsanschluss 16 und der Ausgangsanschluss 20 beide
Zellenanschlüsse
oder beide Paketanschlüsse
sind. Die Konvertierung geschieht, nachdem die Zelle oder das Paket
diese Netzeinrichtung durchlaufen hat. Vorzugsweise ist der Konvertierungsmechanismus 24 mit
dem Ausgangsanschlussmechanismus 18 und der Vermittlungsnetzeinrichtung 22 verbunden.
-
Vorzugsweise
inkludiert der Eingangsanschlussmechanismus 14 einen Erfassungsmechanismus 26, der
Zellen als Zellen und Pakete als Pakete identifiziert, wie sie durch
den Eingangsanschlussmechanismus 14 empfangen werden. Der
Erfassungsmechanismus 26 ist mit den Eingangsanschlüssen 16 verbunden.
Der Konvertierungsmechanismus 24 inkludiert vorzugsweise
einen Wiederzusammensetzungsmechanismus 28 zum Konvertieren
von Zellen zu Paketen. Vorzugsweise inkludiert der Konvertierungsmechanismus 24 einen Segmentierungsmechanismus 30 zum
Konvertieren von Paketen zu Zellen. Der Erfassungsmechanismus 26 platziert
vorzugsweise ein Tag mit jeder Zelle und jedem Paket, die/das durch
den Eingangsanschlussmechanismus 14 empfangen wird, das
jede Zelle als eine Zelle und jedes Paket als ein Paket identifiziert.
Der Wiederzusammensetzungsmechanismus und der Segmentierungsmechanismus
sind Standard-Wiederzusammensetzungs- und Segmentierungs-Engines,
die gewöhnlich
in Schnittstellen verwendet werden, die für einen Erwerb von FORE Systems,
Warrendale, Pennsylvania verfügbar
sind.
-
Vorzugsweise
bricht der Segmentierungsmechanismus 30 die Pakete variabler
Länge in
ATM-Zellen fixierter Länge
vor einer Sendung der Zellen zu dem Ausgangsanschlussmechanismus 18 auf.
Der Wiederzusammensetzungsmechanismus 28 reiht vorzugsweise 34 alle
Zellen, die erforderlich sind, um ein Paket zu bilden, in eine Schlange
ein und sendet nur ein vollständiges
Paket zu dem Ausgangsanschlussmechanismus 18. Vorzugsweise
inkludiert die Vermittlung 10 einen Puffer 32,
der mit der Vermittlungsnetzeinrichtung 22 verbunden ist,
worin die Zellen und Pakete gespeichert werden.
-
Der
Segmentierungsmechanismus 30 und der Wiederzusammensetzungsmechanismus 28 entfernt vorzugsweise
das Tag von den Zellen bzw. den Paketen, bevor die Zellen und die
Pakete zu dem Ausgangsanschlussmechanismus 18 gesendet
werden. Der Wiederzusammensetzungsmechanismus 28 begrenzt
vorzugsweise die Schlangen 34 in einer Rate um zu ermöglichen,
dass die Bandbreite des Segmentierungsmechanismus ein konstanter
Wert ist. Vorzugsweise hat der Puffer 32 Schlangen 34 und
die Zellen entsprechend einem Ausgangsanschluss 20 werden
in den Schlangen 34 gespeichert.
-
Die
vorliegende Erfindung betrifft ein Kommunikationssystem 36,
wie in 9 gezeigt. Das System 36 umfasst ein
Ethernet 38, entlang dem sich Pakete bewegen. Das System 36 umfasst
ein ATM-Netz 40, entlang dem sich ATM-Zellen bewegen. Das
System 36 umfasst eine Vermittlung 10, die mit
dem Ethernet 38 und dem ATM-Netz 40 verbunden
ist, die Pakete, die von dem Ethernet 38 empfangen werden,
in ATM-Zellen konvertiert, die zu dem ATM-Netz 40 zu senden
sind, und ATM-Zellen, die von dem ATM-Netz 40 empfangen
werden, in Pakete konvertiert, die zu dem Ethernet 38 zu
senden sind. Die Vermittlung ermöglicht
auch, dass Pakete, die von dem Ethernet 38 empfangen werden,
in dem Ethernet 38 fortfahren, und ATM-Zellen, die von
dem ATM-Netz empfangen werden, in dem ATM-Netz fortfahren.
-
Die
vorliegende Erfindung betrifft ein Verfahren zum Transferieren von
ATM-Zellen fixierter Größe und Paketen
variabler Größe in einem
Netz 12. Das Verfahren umfasst die Schritte zum Empfangen
von ATM-Zellen fixierter Größe in einem
ersten Eingangsanschluss 16 der Vermittlung 10.
Dann gibt es den Schritt zum Lenken der ATM-Zellen fixierter Größe von dem
Eingangsanschluss 16 zu einem Mechanismus zum Konvertieren
der ATM-Zellen zu Paketen variabler Länge mit einer Vermittlungsnetzeinrichtung 22.
Als Nächstes
gibt es den Schritt zum Konvertieren der ATM-Zellen zu Paketen variabler
Länge mit
dem Konvertierungsmechanismus 24. Dann gibt es den Schritt
zum Senden der Pakete variabler Länge weg von der Vermittlung 10 durch einen
ersten Ausgangsanschluss 20 der Vermittlung 10.
-
Nach
dem Empfangsschritt gibt es vorzugsweise die Schritte zum Empfangen
von Paketen variabler Länge
in einem zweiten Eingangsanschluss 16 der Vermittlung 10.
Dann gibt es den Schritt zum Lenken der Pakete variabler Länge von
dem zweiten Eingangsanschluss 16 zu dem Konvertierungsmechanismus 24 zum Konvertieren
der Pakete variabler Länge
zu ATM-Zellen fixierter Länge
mit der Vermittlungsnetzeinrichtung 22. Als Nächstes gibt
es den Schritt zum Konvertieren der Pakete variabler Länge zu ATM-Zellen
fixierter Länge mit
einem Konvertierungsmechanismus 24. Dann gibt es den Schritt
zum Senden der ATM- Zellen
fixierter Länge
weg von der Vermittlung 10 durch einen zweiten Ausgangsanschluss 20 der
Vermittlung 10.
-
Nach
dem Schritt des Lenkens der ATM-Zellen fixierter Größe gibt
es vorzugsweise die Schritte zum Empfangen von Paketen variabler
Länge in
dem ersten Eingangsanschluss 16 der Vermittlung 10.
Dann gibt es den Schritt zum Lenken der Pakete variabler Länge von
dem ersten Eingangsanschluss 16 zu dem Konvertierungsmechanismus 24 zum
Konvertieren der Pakete variabler Länge zu ATM-Zellen fixierter
Länge mit der
Vermittlungsnetzeinrichtung 22. Als Nächstes gibt es den Schritt
zum Konvertieren der Pakete variabler Länge zu ATM-Zellen fixierter
Länge mit
einem Konvertierungsmechanismus 24. Dann gibt es den Schritt
zum Senden der ATM-Zellen fixierter Länge weg von der Vermittlung 10 durch
den ersten Ausgangsanschluss 20 der Vermittlung 10.
-
Vorzugsweise
inkludiert der Schritt des Konvertierens der ATM-Zellen den Schritt
zum Konvertieren der ATM-Zellen zu Paketen variabler Länge mit
einem Wiederzusammensetzungsmechanismus 28 des Konvertierungsmechanismus 24.
Der Schritt des Konvertierens der Pakete variabler Länge inkludiert
vorzugsweise den Schritt zum Konvertieren der Pakete variabler Länge zu ATM-Zellen
fixierter Länge
mit einem Segmentierungsmechanismus 30 des Konvertierungsmechanismus 24.
Nach dem Schritt des Empfangens der ATM-Zellen gibt es vorzugsweise
die Schritte zum Erfassen mit dem Erfassungsmechanismus 26,
ob eine Zelle durch den ersten Eingangsanschluss 16 empfangen
wurde oder ein Paket durch den ersten Eingangsanschluss 16 empfangen
wurde. Nach dem Erfassungsschritt gibt es vorzugsweise den Schritt
zum Platzieren eines Tags mit jeder Zelle und mit jedem Paket, die/das
durch den ersten Eingangsanschluss 16 mit dem Erfassungsmechanismus 26 empfangen
wird, das jede Zelle als eine Zelle und jedes Paket als ein Paket
identifiziert.
-
Vor
dem Senden der Pakete variabler Länge weg von dem Vermittlungsschritt
gibt es vorzugsweise den Schritt zum Entfernen der Tags aus den
Paketen variabler Länge.
Der Schritt des Konvertierens der ATM-Zellen inkludiert vorzugsweise
den Schritt zum Einreihen aller Zellen, die erforderlich sind, um
ein Paket einer variablen Länge
zu bilden, in einer Schlange, sodass nur ein vollständiges Paket
zu dem Ausgangsanschlussmechanismus 18 gesendet werden
kann. Vorzugsweise inkludiert der Schritt des Konvertierens der
Pakete variabler Länge
den Schritt zum Aufbrechen der Pakete variabler Länge in ATM-Zellen
fixierter Länge
vor einem Senden von ihnen zu dem Ausgangsanschlussmechanismus 18.
-
In
dem Betrieb der Erfindung können
sowohl ATM-Zellen als auch Pakete durch das System 36 gesendet
und dann auf der Ausgangsseite des Systems 36 konvertiert
werden. Das System 36 besteht aus einer Zahl von Eingangsanschlüssen, einer
Zahl von Ausgangsanschlüssen
und einer Vermittlungsnetzeinrichtung 22, die die Eingangsanschlüsse mit
den Ausgangsanschlüssen
derart verbindet, dass ein beliebiger Eingangsanschluss 16 mit
einem beliebigen Ausgangsanschluss 20 verbunden werden
kann. Jeder Eingangsanschluss 16 kann entweder Zellen oder
Pakete empfangen. Jeder Ausgangsanschluss 20 kann entweder
Zellen oder Pakete senden. Die Vermittlungsnetzeinrichtung 22 ist
zum Vermitteln von entweder Paketen oder Zellen fähig.
-
In
dem Fall, wo der Eingangsanschluss 16 ein Paketanschluss
ist und der Ausgangsanschluss 20 ein Zellenanschluss ist,
werden Pakete über
die Netzeinrichtung 22 gesendet und es wird eine Segmentierungsfunktion
auf der Ausgangsseite der Vermittlungsnetzeinrichtung 22 durchgeführt, um
die Pakete zu Zellen zu konvertieren. Die Segmentierungsfunktion
involviert Aufbrechen des Paketes variabler Länge in irgendeine Zahl von ATM-Zellen
fixierter Länge
vor einem Senden von ihnen zu dem Ausgangsanschluss 20.
-
In
dem Fall, wo der Eingangsanschluss 16 ein Zellenanschluss
ist und der Ausgangsanschluss 20 ein Paketanschluss ist,
werden Zellen über
die Netzeinrichtung 22 gesendet und es wird eine Wiederzusammensetzungsfunktion
auf der Ausgangsseite der Netzeinrichtung 22 durchgeführt. In
dem Fall, wo der Eingangsanschluss 16 ein Zellenanschluss
ist und der Ausgangsanschluss 20 ein Zellenanschluss ist,
werden ähnlich Zellen über die
Netzeinrichtung 22 gesendet und es wird keine Konvertierung
auf der Ausgangsseite der Netzeinrichtung 22 durchgeführt. 8 zeigt
die wesentlichen Komponenten der Vermittlung 10.
-
Um
Interoperabilität
der verschiedenen Anschlusskarten der Vermittlung 10 sicherzustellen,
müssen Datagramme,
die durch die Netzeinrichtung 22 fließen, in einem gemeinsamen Format
sein. Ein "Format" ist zum Tragen von
entweder Rahmen oder Zellen fähig
(Ausgangsroutenwort identifiziert welches). Da die Vermittlung 10 nativ
sowohl Rahmen als auch Zellen unterstützt, werden tatsächlich zwei
verschiedene Formate unterstützt.
Heterogene Datagramme werden unterstützt, wo ATM-Karten Rahmen segmentieren
müssen
und Rahmen-Karten ATM-Zellen wiederzusammensetzen müssen. Die
Wiederzusammensetzungsfunktion kann unter Verwendung einer Teilmenge
der definierten und existierenden ATM-Adaptionsschichten implementiert werden.
Datagramme in der Rückwandplatine
sehen aus, wie nachstehend in Tabelle 1 gezeigt:
-
-
-
Allen
Datagrammen geht ein 32-Bit-"Ausgangsroutenwort" voraus, welches
Verbindungen zu der Ausgangsanschlusskarte identifiziert. Die Netzeinrichtung 22 leitet
Datagramme unter Verwendung eines "Netzeinrichtungsroutenwortes" weiter, welches
getrennt von dem Datagramm selbst übertragen wird. Zellen werden
in ihrem "nativen" Format übertragen,
mit einem leicht modifizierten Header (keine HEC), wobei HEC eine Prüfsumme zum
Validieren vom Header ist. Sobald verwendet, um einen Header zu
prüfen,
wird sie von den Daten weggeworfen. Rahmen sind hybrid: sie werden
mit dem geeigneten ATM-Header für
eine Verwendung in ATM-Anschlüssen
formatiert. Dieser Header wird im Ausgang durch Rahmenanschlüsse abgestreift.
Dies erlaubt eine zustandslose Segmentierungseinheit in den ATM-Blades.
-
Tabelle
2 fasst SAR (Segmentierung und Wiederzusammensetzung) in dem Ausgangsanschluss
zusammen:
-
-
Die
Vermittlung nutzt RAID-Verfahren zu einer Erhöhung einer Gesamtvermittlungsbandbreite
während
eine individuelle Netzeinrichtungsbandbreite minimiert wird. Bei
der Vermittlungsarchitektur werden alle Daten gleichmäßig über alle
Netzeinrichtungen verteilt, sodass die Vermittlung eine Bandbreite
vergrößert, durch
ein Hinzufügen
von Netzeinrichtungen, und die Netzeinrichtung muss ihre Bandbreitenkapazität nicht
erhöhen,
wenn die Vermittlung eine Bandbreitenkapazität erhöht.
-
Jede
Netzeinrichtung liefert 40G einer Vermittlungsbandbreite und das
System unterstützt
1, 2, 3, 4, 6 oder 12 Netzeinrichtungen, exklusive der redundanten/Reserveeinrichtung.
Mit anderen Worten kann die Vermittlung eine 40G, 80G, 120G, 160G,
240G, oder 480G Vermittlung sein, in Abhängigkeit davon, wie viele Netzeinrichtungen
installiert sind.
-
Eine
Anschlusskarte liefert 10G Anschlussbandbreite. Für jede 4
Anschlusskarten wird eine Netzeinrichtung benötigt. Die Vermittlungsarchitektur
unterstützt
keine beliebigen Installationen von Anschlusskarten und Netzeinrichtungen.
-
Die
Netzeinrichtungs-ASICs unterstützen
sowohl Zellen als auch Pakete. Insgesamt verwendet die Vermittlung
einen "mach es dem
Empfänger
recht" Ansatz, bei
dem ein Ausgangspfad auf ATM Anschlussanordnungen (Blades) Rahmen
in Zellen segmentieren muss und der Ausgangspfad von Rahmenanordnungen muss
eine Zusammenführung
von Zellen in Pakete durchführen.
-
Es
gibt momentan 8 Vermittlungs-ASICs, die in der Vermittlung verwendet
werden:
- 1. Striper – Der Striper sitzt auf der
Anschlusskarte und dem SCP-IM. Dieser formatiert die Daten in einen 12
Bit Datenstrom, fügt
ein Prüfwort
an, trennt den Datenstrom über
N, Nicht-Reserve, Netzeinrichtungen in dem System auf, erzeugt einen
Paritätsstreifen
einer Breite, die gleich den Streifen ist, die zu der anderen Netzeinrichtung
gehen, und die N + 1 Datenströme
hinaus zur Backplane.
- 2. Unstriper – Der
Unstriper ist der andere Anschlusskarten ASIC in der Vermittlungsarchitektur.
Er empfängt.
Datenstreifen von allen Netzeinrichtungen in dem System. Er rekonstruiert
dann den ursprünglichen Datenstrom
unter Verwendung des Prüfwortes
und des Paritätsstreifens,
um eine Fehlererfassung und Korrektur durchzuführen.
- 3. Aggregator – Der
Aggregator nimmt die Datenströme
und Leitworte von den Stripern auf, und multiplext diese in einen
einzelnen Eingangsstrom an den Speichercontroller.
- 4. Speichercontroller – Der
Speichercontroller implementiert die Warteschleifenbildungs- und
Abarbeitungsmechanismen (Queuing und De-Queuing) der Vermittlung.
Dieses enthält
die proprietäre
Breitspeicherschnittstelle, um das gleichzeitige Ein/Ausschleifen
mehrerer Zellen von Daten pro Taktzyklus zu erzielen. Die Abarbeitungs-
(De-Queuing) Seite des Speichercontrollers läuft mit 80 Gbps im Vergleich
zu 40 Gbps, um den Hauptanteil des Warteschleifenbildens und Formens
von Verbindungen zu tätigen,
die auf den Anschlusskarten auftreten.
- 5. Separator – Der
Separator implementiert den inversen Betrieb des Aggregators. Der
Datenstrom von dem Speichercontroller wird in mehrere Ströme von Daten
demultiplext, und zum geeigneten Unstriper ASIC weitergeleitet.
In der Schnittstelle zum Unstriper ist ein Warteschleifen- und Flusssteuerhandshaking enthalten.
-
Es
gibt 3 unterschiedliche Standpunkte, die man bezüglich der Verbindungen zwischen
der Netzeinrichtung nehmen kann: physikalisch, logisch und "aktiv". Physikalisch sind
die Verbindungen zwischen den Anschlusskarten und den Netzeinrichtungen
alle serielle Verbindungen mit differentiellen Paar mit Gigabitgeschwindigkeit.
Dieses ist genaugenommen ein Implementierungsansatz zur Reduzierung
der Anzahl von Signalen, die über
die Backplane gehen. Die "Aktiv"-Perspektive betrachtet
eine einzelne Vermittlungskonfiguration, oder kann als ein Schnappschuss
davon erachtet werden, wie Daten zu einem gegebenen Moment verarbeitet
werden. Die Schnittstelle zwischen den Netzeinrichtungs-ASIC auf
den Anschlusskarten und den Netzeinrichtungen ist effektiv 12 Bit
breit. Diese 12 Bits sind gleichmäßig über 1, 2, 3, 4, 6 oder 12 Netzeinrichtungen
verteilt beziehungsweise gestreift ("striped"), basierend darauf, wie die Netzeinrichtungs-ASICs
konfiguriert sind. Die "Aktiv"-Perspektive betrifft
die Anzahl von Bits, die durch jede Netzeinrichtung in der momentanen
Konfiguration verarbeitet werden, was genau 12 geteilt durch die
Anzahl von Netzeinrichtungen ist.
-
Die
logische Perspektive kann als die Verbindung oder Max-Funktion aller möglichen
Aktiv-Konfigurationen betrachtet werden. Der Netzeinrichtungsschlitz
#1 kann in Abhängigkeit
von einer Konfiguration 12, 6, 4, 3, 2 oder 1 Bit der Daten von
einem einzelnen Striper verarbeiten, und wird daher mit einem 12
Bit Bus bedient. Im Gegensatz dazu kann der Netzeinrichtungsschlitz
#3 nur für
eine Verarbeitung von 4, 3, 2 oder 1 Bits von einem einzelnen Striper
verwendet werden, und wird daher mit einem 4-Bit Bus bedient.
-
Anders
als frühere
Vermittlungen hat die Vermittlung genaugenommen kein Konzept eines
mit Software steuerbaren Netzeinrichtungsredundanzmodus. Die Netzeinrichtungs-ASICs
implementieren eine N + 1 Redundanz ohne Intervenierung, solange
die Bewerbenetzeinrichtung installiert ist.
-
Hinsichtlich
dessen, was sie bereitstellt bedeutet eine N + 1 Redundanz, dass
die Hardware automatisch einen einzelnen Fehler erfassen und korrigiert,
ohne einen Verlust irgendwelcher Daten.
-
Die
Art und Weise, mit der die Redundanz funktioniert, ist ziemlich
einfach, um es jedoch für
ein Verständnis
noch einfacher zu machen, wird ein spezieller Fall einer 120G Vermittlung
verwendet, die 3 Netzeinrichtungen (A, B und C) plus eine Reserve
(S) enthält.
Der Striper nimmt den 12 Bit Bus und erzeugt zuerst ein Prüfwort, das
an die Dateneinheit (Zelle oder Rahmen) angefügt wird. Die Dateneinheit und
das Prüfwort
werden dann in einen 4-Bit-pro-Taktzyklusdatenstreifen
für jeden
der A, B und C Netzeinrichtungen aufgetrennt (A3A2A1A0,
B3B2B1B0, und C3C2C1C0).
Diese Streifen werden dann dazu verwendet, den Streifen für die Reservenetzeinrichtung
S3S2S1S0 zu bilden, wobei Sn =
An XOR Bn XOR Cn, und diese 4 Streifen werden dann zu ihren
entsprechenden Netzeinrichtungen gesendet. Auf der anderen Seite
der Netzeinrichtungen empfängt
der Unstriper 4 4-Bit-Streifen von A, B, C und S. Alle möglichen
Kombinationen von 3 Netzeinrichtungen (ABC, ABS, ASC und SBC) werden
dann dazu verwendet, einen "vorläufigen" 12-Bit Datenstrom
zu rekonstruieren. Ein Prüfwort
wird dann für
jeden der 4 vorläufigen
Ströme
berechnet, und das berechnete Prüfwort
wird mit dem Prüfwort
am Ende der Dateneinheit verglichen. Falls kein Übertragungsfehler aufgetreten
ist, werden alle 4 Ströme übereinstimmende
Prüfworte
aufweisen, und der ABC Strom wird zum Unstriper-Ausgang weitergeleitet.
Falls ein (einzelner) Fehler aufgetreten ist, wird nur eine Prüfwortübereinstimmung
existieren, und der Strom mit der Übereinstimmung wird Off-Chip
weitergeleitet, und der Unstriper wird den fehlerhaften Netzeinrichtungsstreifen
identifizieren.
-
Für unterschiedliche
Vermittlungskonfigurationen, d.h. 1, 2, 4, 6 oder 12 Netzeinrichtungen,
ist der Algorithmus der Gleiche, es ändert sich jedoch die Streifenbreite.
-
Falls
2 Netzeinrichtungen fehlerhaft sind, werden mit höchster Wahrscheinlichkeit
alle durch die Vermittlung laufenden Daten korrupt sein.
-
Die
Netzeinrichtungsschlitze sind nummeriert und müssen in absteigender Reihenfolge
befüllt
werden. Weiter ist die Reservenetzeinrichtung ein spezieller Schlitz,
sodass ein Befüllen
von Netzeinrichtungsschlitzen 1, 2, 3 und 4 unterschiedlich von
einem Befüllen
von Netzeinrichtungsschlitzen 1, 2, 3 und der Reserve ist. Ersteres
ist eine 160G Vermittlung ohne Redundanz und Letzteres ist eine
120G Vermittlung mit Redundanz.
-
Zuerst
werden die ASICs aufgebaut, und die Backplane angeschlossen, sodass
die Verwendung von bestimmten Anschlusskartenschlitzen es erfordert,
dass zumindest eine bestimmte Minimalanzahl von Netzeinrichtungen
installiert ist, nicht die Reserve umfassend. Diese Beziehung ist
in Tabelle 0 gezeigt.
-
Zusätzlich ist
die Redundanz innerhalb der Vermittlung auf speziell gepaarte Anschlusskarten
beschränkt.
Anschlusskarten 1 und 2 sind gepaart, 3 und 4 sind gepaart, und
so weiter bis zu Anschlusskarten 47 und 48. Dieses bedeutet, dass,
falls eine APS Redundanz erforderlich ist, die gepaarten Schlitze
zusammen befüllt
werden müssen.
-
Um
ein einfaches Beispiel zu geben, nehme man eine Konfiguration mit
2 Anschlusskarten und nur einer Netzeinrichtung. Falls der Nutzer
keine APS Redundanz verwenden möchte,
dann können
die 2 Anschlusskarten mit beliebigen 2 von Anschlusskartenschlitzen
1 bis 4 installiert werden. Falls eine APS Redundanz erwünscht ist,
dann müssen
die 2 Anschlusskarten entweder in Schlitz 1 und 2 oder 3 und 4 installiert werden.
-
Tabelle
3: Netzeinrichtungsanforderungen für eine Anschlusskartenschlitznutzung
-
Um
eine Kapazität
hinzuzufügen,
füge man
eine oder mehrere neue Netzeinrichtungen hinzu, warte man darauf,
dass die Vermittlung die Änderung
erkennt und das System rekonfiguriert, um über der neuen Anzahl von Netzeinrichtungen
Streifen zu bilden. Man installiere die neuen Anschlusskarten.
-
Es
wird darauf hingewiesen, dass es technisch nicht notwendig ist,
die vollen 4 Anschlusskarten pro Netzeinrichtung zu haben. Die Vermittlung
wird mit 3 installierten Netzeinrichtungen und an einzigen Anschlusskarte
im Schlitz 12 richtig arbeiten. Dies ist nicht kosteneffizient,
wird jedoch funktionieren.
-
Um
eine Kapazität
zu entfernen, kehre man die Prozedur für ein Hinzufügen von
Kapazität
um.
-
Falls
die Vermittlung zu viele Teilnehmer hat, installiere man 8 Anschlusskarten
und nur eine Netzeinrichtung.
-
Es
sollte nur als ein Ergebnis eines ungeeigneten Aufrüstens der
Vermittlung oder eines Systemfehlers irgendeiner Art dazu kommen.
Die Realität
ist es, dass einer von zwei Fällen
auftreten wird, in Abhängigkeit
davon, wie diese Situation auftritt. Falls die Vermittlung als eine
40G Vermittlung konfiguriert ist und die Anschlusskarten vor der
Netzeinrichtung hinzugefügt
werden, dann werden die 5, bis 8. Anschlusskarte tot sein. Falls
die Vermittlung als 80G nicht-redundante
Vermittlung konfiguriert ist und die zweite Netzeinrichtung fehlerhaft
ist oder entfernt wird, dann werden alle Daten durch die Vermittlung
korrumpiert sein (unter der Annahme, dass die Reservenetzeinrichtung
nicht installiert ist). Und nur der Vollständigkeit halber, falls 8 Anschlusskarten
in einer 80G redundanten Vermittlung installiert wären und
die zweite Netzeinrichtung fehlerhaft wäre oder entfernt würde, dann
würde die
Vermittlung mit einem normalen Betrieb fortfahren, bei dem die Reserve
die fehlerhafte/entfernte Netzeinrichtung abdeckt.
-
1 zeigt
ein Paket-Stripen in der Vermittlung.
-
Der
Chipsatz unterstützt
ATM und POS Anschlusskarten sowohl in OC48 als auch OC192c Konfigurationen.
OC48 Anschlusskarten sind mit den Vermittlungsnetzeinrichtungen
mit vier getrennten OC48 Flüssen verbunden.
OC192 Anschlusskarten kombinieren logisch die 4 Kanäle in einen
10G Strom. Die Eingangsseite einer Anschlusskarte führt keine
Verkehrsumwandlungen für
ein Verkehrsändern
zwischen ATM Zellen und Paketen durch. Welche Art auch immer von
Verkehr empfangen wird, er wird zu den Vermittlungsnetzeinrichtungen
gesendet. Die Vermittlungsnetzeinrichtungen werden Pakete und Zellen
mischen und dann eine Mischung von Paketen und Zellen an die Ausgangsseite
einer Anschlusskarte abarbeiten.
-
Die
Ausgangsseite des Ports ist für
ein Umwandeln des Verkehrs in das geeignete Format für den Ausgangsport
verantwortlich. Diese Übereinkunft
wird im Kontext der Vermittlung als "mach es dem Empfänger recht" bezeichnet. Eine Zellenanschlussanordnung
(Blade) ist für
eine Segmentierung von Paketen verantwortlich und eine Zellenanschlussanordnung
(Blade) ist für
eine Zusammensetzung von Zellen in Pakete verantwortlich. Um eine
Netzeinrichtungsbeschleunigung zu unterstützen, unterstützt die
Ausgangsseite der Anschlusskarte eine Verbindungsbandbreite, die
das doppelte der der Eingangsseite der Anschlusskarte ist.
-
Das
Blockdiagramm für
eine Poseidon-basierte ATM Anschlusskarte ist in 2 gezeigt.
Jeder 2,5G Kanal besteht aus 4 ASICs: Eingangs TM und Striper ASIC
an der Eingangsseite und Unstriper ASIC und Ausgangs TM ASIC an
der Ausgangsseite.
-
An
der Eingangsseite werden OC48c oder 4 OC-12c Schnittstellen aggregiert,
Jeder Worttext sendet einen 2,5 großen G Zellenstrom in einen
bestimmten Striper ASIC (unter Verwendung des BIB Busses, wie unterhalb
beschrieben). Der Striper wandelt das gelieferte Leitwort in zwei
Stücke
um. Ein Abschnitt des Leitwortes wird zur Netzeinrichtung geführt, um
den Ausgangsport (oder die Ausgangsports) für die Zelle zu bestimmen. Das
gesamte Leitwort wird ebenso auf dem Datenabschnitt des Busses als
ein Leitwort für
eine Verwendung durch den Ausgangsspeichercontroller geführt. Das
erste Leitwort wird als "Netzeinrichtungsleitwort" (fabric routeword)
bezeichnet. Das Leitwort für
den Ausgangsspeichercontroller ist das "Ausgangsleitwort".
-
An
der Ausgangsseite nimmt der Unstriper ASIC in jedem Kanal Verkehr
von einer jeden der Anschlusskarten auf, prüft Fehler und korrigiert die
Daten und sendet dann die korrekten Pakete an seinem Ausgangsbus
aus. Der Unstriper nutzt die Daten von der Reservenetzeinrichtung
und die durch den Striper eingefügte
Prüfsumme,
um eine Datenkorruption zu erfassen und zu korrigieren.
-
2 zeigt
eine OC48 Anschlusskarte.
-
Die
OC192 Anschlusskarte unterstützt
einen einzelnen 10G Strom in die Netzeinrichtung und zwischen einem
10G und 20G Ausgangsstrom. Diese Karte nutzt auch 4 Striper und
4 Unstriper, die 4 Chips arbeiten jedoch parallel auf einem breiteren
Datenbus. Die zu jeder Netzeinrichtung gesendeten Daten sind identisch
für sowohl
OC48 als auch OC192 Ports, sodass Daten zwischen den Porttypen ohne
eine Notwendigkeit spezieller Umwandlungsfunktionen fließen können.
-
3 zeigt
eine 10G verknüpfte
Netzanordnung (Blade).
-
Jede
40G Vermittlungsnetzeinrichtung ordnet bis zu 40 Gbps Zellen/Rahmen
in Warteschleife an und arbeitet sie mit 80 Gbps ab. Diese 2X Geschwindigkeitserhöhung reduziert
ein Ausmaß eines
an der Netzeinrichtung gepufferten Verkehrs und erlaubt es dem Ausgangs-ASIC
Verkehrsspitzen weit über
einer Linienrate zu verarbeiten. Eine Vermittlungsnetzeinrichtung
besteht aus drei Arten von ASICs: Aggregatoren, Speichercontrollern
und Separatoren. Neun Aggregator-ASICs empfangen 40 Gbps Verkehr
von bis zu 48 Netzanordnungen und dem Steuerport. Die Aggregator-ASICs
kombinieren das Netzeinrichtungsleitwort und eine Nutzlast in einen
einzelnen Datenstrom und TDM zwischen den Quellen und setzen die
resultierenden Daten auf einen Bus mit breiter Ausgabe. Ein zusätzlicher
Steuerbus (destid) wird für
eine Steuerung verwendet, wie die Speichercontroller die Daten in
Warteschlange setzen. Der Datenstrom von jedem Aggregator-ASIC wird dann in
12 Speichercontroller bitmäßig aufgetrennt
(bit-sliced).
-
Der
Speichercontroller empfängt
bis zu 16 Zellen/Rahmen an jedem Taktzyklus. Jeder der 12 ASICs speichert
1/12 der aggregierten Datenströme.
Er speichert dann die ankommenden Daten basierend auf von dem destid-Bus
empfangener Steuerinformation. Eine Speicherung von Daten wird in
dem Speichercontroller vereinfacht, sodass sie vergleichsweise ohne
Berücksichtigung
von Paketgrenzen ist (Zwischenspeicherlinienkonzept). Alle 12 ASICs
arbeiten die Zellen gleichzeitig mit einer aggregierten Geschwindigkeit
von 80 Gbps ab.
-
Neun
Separator-ASICs führen
die umgekehrte Funktion der Aggregator-ASICs ab. Jeder Separator empfängt Daten
von allen 12 Speichercontrollern und decodiert die Leitworte, die
in die Datenströme
durch den Aggregator eingebettet sind, um Paketbegrenzungen zu finden.
Jeder Separator ASIC sendet dann die Daten bis zu 24 unterschiedlichen
Unstriper, in Abhängigkeit
von dem exakten Ziel, das durch den Speichercontroller angegeben
ist, als Daten zum Separator geführt
wurden.
-
Der
Abarbeitungsprozess wird durch einen rückwärtigen Druck getrieben. Falls
ein rückwärtiger Druck an
den Unstriper angelegt wird, wird der rückwärtige Druck zurück zum Separator
kommuniziert. Der Separator und Speichercontroller weisen ebenso
einen Mechanismus für
rückwärtigen Druck
auf, der steuert, wann ein Speichercontroller eine Verkehr zu einem
Ausgangsport abarbeiten kann.
-
Um
OC48 und OC192 effizient im Chipsatz zu unterstützen, werden die 4 OC48 Ports
von einer Anschlusskarte immer zu dem gleichen Aggregator und von
dem gleichen Separator geleitet (die Portverbindungen für den Aggregator & Separator sind
immer symmetrisch).
-
Die 4a und 4b zeigen
die Konnektivität
der Netzeinrichtungs-ASICs.
-
Die
externen Schnittstellen der Vermittlungen sind der Eingabebus (BIB)
zwischen dem Striper-ASIC und der Eingangsanordnungs-ASIC, wie beispielsweise
Vortex und der Ausgangsbus (BOB) zwischen dem Unstriper-ASIC und
dem Ausgangsanordnungs-ASIC wie beispielsweise Trident.
-
Der
Stiper-ASIC akzeptiert Daten von dem Eingangsport über den
Eingangbus (BIB) (auch als DIN_ST_bl_ch Bus bekannt).
-
Dieser
Bus kann entweder als 4 getrennte 32-Bit Eingangsbusse (4XOC48c)
oder als ein einzelner 128-Bit breiter Datenbus mit einem gemeinsamen
Satz von Steuerleitungen zu allen Stripern arbeiten. Dieser Bus
unterstützt
entweder Zellen oder Pakete basierend auf Softwarekonfigurationen
des Striperchips.
-
Der
Unstriper-ASIC sendet Daten zum Ausgangsport über den Ausgangsbus (BOB) (auch
als DOUT_UN_bl_ch Bus bekannt), der ein 64 (oder 256) Bit Datenbus
ist, der entweder eine Zelle oder ein Paket unterstützen kann.
Er besteht aus den folgenden Signalen:
Dieser Bus kann entweder
als 4 getrennte 32-Bit Ausgangsbusse (4XOC48c) oder als ein einzelner
128-B1t breiter Datenbus mit einem gemeinsamen Satz von Steuerleitungen
von allen Ent-Stipern
arbeiten. Dieser Bus unterstützt
entweder Zellen oder Pakete basierend auf einer Softwarekonfiguration
des Unstriperchips.
-
Der
Synchronizer hat zwei Hauptzwecke. Der erste Zweck ist ein Aufrechterhalten
einer logischen Zellen/Paket- oder Datagrammreihenfolge über allen
Netzeinrichtungen. An der Netzeinrichtungseingangsschnittstelle
müssen
an mehr als einer Netzeinrichtung von Kanälen einer Anschlusskarte ankommende
Datengramme in der gleichen Reihenfolge über alle Netzeinrichtungen
verarbeitet werden. Der zweite Zweck des Synchronizers ist es, dass
alle Ausgangskanäle
einer Anschlusskarte alle Segmente oder Streifen eines Datengramms,
die zusammengehören,
wieder zusammensetzen, obwohl die Datengrammsegmente von mehr als einer
Netzeinrichtung gesendet werden und an den Einrichtungsausgangseingängen zu
unterschiedlichen Zeitpunkten ankommen können. Dieser Mechanismus muss
in einem System, das unterschiedliche Netzverzögerungen und veränderliche
Größen einer
Taktdrift zwischen Anschlussanordnungen (Blades) und Netzeinrichtungen
(Fabrics) aufweist, aufrecht erhalten werden.
-
Die
Vermittlung nutzt ein System eines synchronisierten Fensters, wenn
Startinformation im System übertragen
wird. Jeder Transmitter und Empfänger
kann relative Taktzählungen
von der letzten Resynchronisierungsanzeige betrachten, um Daten
von mehreren Quellen zu synchronisieren. Der Empfänger wird
den Empfang von Daten verzögern,
welches der erste Taktzyklus von Daten in einer Synchronisationsperiode
ist, bis zu einer programmierbaren Verzögerung, nachdem er die globale
Synchronisationsanzeige empfängt.
An dieser Stelle werden alle Daten als gleichzeitig empfangen betrachtet,
und eine feste Reihenfolge wird angewendet. Auch wenn die Verzögerungen
für ein
Paket 0 und eine Zelle 0 bewirkt haben, dass sie aufgrund der Verzögerungen
durch die Einrichtung an den Empfängern in unterschiedlichen
Reihenfolgen gesehen werden, ist eine resultierende Reihenfolge
beider Ströme
zu einer Empfangszeit = 1 die gleiche, Paket 0, Zelle 0, basierend
auf dem physikalischen Bus, von dem sie empfangen wurden.
-
Mehrere
Zellen oder Pakete können
in einem Zählerschritt
gesendet werden. Alle Ziele werden alle Zellen von der ersten Schnittstelle
anfordern, bevor sie auf die nächste
Schnittstelle weitergehen, und so weiter. Dieses Zellensynchronisationsverfahren
wird auf allen Zellenschnittstellen angewendet. Unterschiedliche Auflösungen sind
für einige
Schnittstellen erforderlich.
-
Der
Synchronisierer besteht aus zwei Hauptblöcken, insbesondere dem Transmitter
und dem Empfänger.
Der Transmitterblock wird in den Striper- und Separator-ASIC angeordnet
sein, und der Empfängerblock wird
im Aggregator- und
Unstriper-ASIC angeordnet sein. Der Empfänger im Aggregator wird bis
zu 24 (6 Anschlusskarten × 4
Kanäle)
Eingangsleitungen handhaben. Der Empfänger im Unstriper wird bis
zu 13 (12 Netzeinrichtungen + 1 Paritäts-Netzeinrichtung) Eingangsleitungen
handhaben.
-
Wenn
ein Synchronisationsimpuls empfangen wird, berechnet der Transmitter
zuerst die Anzahl von Taktzyklen, wie schnell er ist (als N Takte
bezeichnet).
-
Der Übertragungssynchronisierer
wird den Ausgangsstrom unterbrechen und N K Zeichen übertragen, die
anzeigen, dass er abriegelt.
-
Am
Ende der Abriegelungssequenz überträgt der Transmitter
ein K Zeichen, was anzeigt, dass gültige Daten mit dem nächsten Taktzyklus
beginnen. Diese Gültiganzeige
mit dem nächsten
Zyklus wird durch die Empfänger
verwendet, um einen Verkehr von allen Quellen zu synchronisieren.
-
Beim
nächsten
Ende einer Übertragung
wird der Transmitter dann mindestens einen Frei- bzw. Leerlauf an
der Schnittstelle einfügen.
Diese Freiläufe
erlauben den 10-Bit Decodern, dass sie sich korrekt auf das serielle
10-Bit Codefenster resynchronisieren, falls sie die Synchronisation
verlieren.
-
Der
Empfangssynchronisierer empfängt
den globalen Synchronisierungsimpuls und verzögert den Synchronisierungsimpuls
um eine programmierte Zahl (die basierend auf der Maximalgröße einer
Transportverzögerung
basierend programmiert ist, die eine physikalische Einheit aufweisen
kann). Nach einem Verzögern
des Synchronisationsimpulses wird der Empfänger dann den Taktzyklus unmittelbar
nach dem Synchronisierungszeichen als für einen Empfang vorgesehen
betrachtet. Daten werden dann jeden Taktzyklus empfangen, bis das
nächste
Synchronisierungszeichen auf dem Eingangsstrom ersichtlich ist.
Diese Daten werden nicht als für
einen Empfang verfügbar
betrachtet, bis der verzögerte
globale Synchronisierungsimpuls ersichtlich ist.
-
Da
Transmitter und Empfänger
auf unterschiedlichen physikalischen Platinen angeordnet sein werden und
durch unterschiedliche Oszillatoren getaktet werden, werden Taktgeschwindigkeitsunterschiede
zwischen ihnen auftreten. Um die Anzahl von Taktzyklen zwischen
unterschiedlichen Transmittern und Empfängern zu begrenzen, wird ein
globaler Synchronisierungsimpuls auf der Systemebene verwendet,
um alle Sequenzzähler
zu resynchronisieren. Jeder Chip ist programmiert, um sicherzustellen,
dass unter allen gültigen
Taktverschiebungen jeder Transmitter und Empfänger denken wird, dass er um
mindestens einen Taktzyklus schnell ist. Jeder Chip wartet dann
die geeignete Anzahl von Taktzyklen, die in ihrem momentanen sync_pulse_window
sind. Dies stellt sicher, dass alle Quellen N* sync_pulse_window
gültige
Taktzyklen zwischen den Synchronisationsimpulsen laufen lassen.
-
Als
ein Beispiel könnte
das Synchronisationsimpulsfenster auf 100 Takte programmiert sein,
und die Synchronisationsimpulse könnten mit einer nominalen Rate
von einem Synchronisationsimpulse jede 10.000 Takte ausgesendet
werden. Basierend auf den Verschiebungen im schlimmsten Fall für die Synchronisationsimpulstransmitter-Taktgebung
und die Synchronisationsimpulsempfänger-Taktgebung können tatsächlich 9.995
bis 10.005 Takte am Empfänger
für 10.000
Takte am Synchronisationsimpulstransmitter vorliegen. In diesem
Fall würde
der Synchronisationsimpulstransmitter programmiert sein, Synchronisationsimpulse
jede 10.006 Taktzyklen auszusenden. Die 10.006 Takte garantieren,
dass alle Empfänger
in ihrem nächsten
Fenster sein müssen.
Ein Empfänger
mit einem zu schnellen Takt könnte
tatsächlich
10.012 Takte gesehen haben, falls der Synchronisationsimpulstransmitter
einen langsamen Takt aufweist. Da der Synchronisationsimpuls 12 Taktzyklen
in das Synchronisationsimpulsfenster hineinempfangen wurde, würde der
Chip um 12 Taktzyklen verzögern.
Ein weiterer Empfänger
könnte
10.006 Takte sehen und für
6 Taktzyklen am Ende des Synchronisationsimpulsfensters verriegeln.
In beiden Fällen
würde jede
Quelle 10.100 Taktzyklen laufen.
-
Wenn
eine Anschlusskarte oder Netzeinrichtung nicht vorhanden ist oder
gerade eingefügt
wurde, und beide als die Eingänge
eines Empfangssynchronisierers ansteuernd betrachtet werden, wird
das Schreiben von Daten an das spezielle Eingangs-FIFO unterbunden
sein, da der Eingangstakt nicht vorhanden sein wird oder instabil
sein wird, und der Status der Datenleitungen wird unbekannt sein.
Wenn die Anschlusskarte oder Netzeinrichtung eingefügt wird,
muss Software aktiv werden und den Eingang an die Byteleitung freigeben,
um eine Freigabe von Daten von dieser Quelle zu ermöglichen.
Schreibvorgänge
an den Eingangs-FIFO werden freigegeben. Es wird angenommen, dass
das Freigabesignal angeführt
wird, nachdem die Daten, das Leitwort und der Takt von der Anschlusskarte
oder Netzeinrichtung stabil sind.
-
Auf
einer Systemebene wird es einen primären und einen sekundären Synchronisationsimpulstransmitter
geben, die auf zwei getrennten Netzeinrichtungen liegen. Es wird
auch einen Synchronisationsimpulsempfänger auf jeder Netzeinrichtung
und Anordnung (Blade) geben. Dies ist in 5 ersichtlich.
Ein primärer Synchronisationsimpulstransmitter
wird ein freilaufender Synchronisationsimpulsgenerator sein, und
ein sekundärer
Synchronisationsimpulstransmitter wird seine Synchronisationsimpulse
an den primären
synchronisieren. Die Synchronisationsimpulsempfänger werden sowohl primäre als auch
sekundäre
Synchronisationsimpulse empfangen und basierend auf einem Fehlerprüfalgorithmus
den richtigen Synchronisationsimpuls auswählen, um ihn zu den ASICs weiterzuleiten,
die auf dieser Platine angeordnet sind. Der Synchronisationsimpulsempfänger wird
sicherstellen, dass ein Synchronisationsimpuls nur zu dem Rest der
Platine weitergeleitet wird, falls der Synchronisationsimpuls von
den Synchronisationsimpulstransmittern innerhalb seiner eigenen
Sequenz "0" Zählung fällt. Beispielsweise
werden der Synchronisationsimpulsempfänger und ein Ent-Streifer-ASIC
auf der gleichen Anschlussanordnung (Blade) liegen. Der Synchronisationsimpulsempfänger und
der Empfangssynchronisierer in dem Unstriper werden von dem gleichen
Kristalloszillator getaktet, und so sollte keine Taktdrift zwischen
den Takten, die für
eine Inkrementierung der internen Sequenzzähler verwendet werden, vorliegen.
Der Empfangssynchronisierer wird erforderlich machen, dass der Synchronisationsimpuls,
den er empfängt,
immer im "0" Zählerfenster
liegt.
-
Falls
der Synchronisationsimpulsempfänger
feststellt, dass der primäre
Synchronisationsimpulstransmitter die Synchronisation verloren hat,
wird er zu der sekundären
Synchronisationsimpulstransmitterquelle umschalten. Der sekundäre Synchronisationsimpulstransmitter
wird ebenso feststellen, dass der primäre Synchronisationsimpulstransmitter
die Synchronisation verloren hat, und wird damit beginnen, seinen
eigenen Synchronisationsimpuls unabhängig vom primären Synchronisationsimpulstransmitter
zu erzeugen. Dies ist der primäre
Betriebsmodus des sekundären
Synchronisationsimpulstransmitters. Falls der Synchronisationsimpulsempfänger feststellt,
dass der primäre
Synchronisationsimpulstransmitter wieder in Synchronisation liegt,
wird er auf die primäre
Seite umschalten. Der sekundäre
Synchronisationsimpulstransmitter wird ebenso feststellen, dass
der primäre
Synchronisationsimpulstransmitter wieder in Synchronisation liegt,
und wird in einen sekundären
Modus zurückschalten.
Im sekundären
Modus wird er seinen eigenen Synchronisationsimpuls mit dem primären Synchronisationsimpuls
synchronisieren. Der Synchronisationsimpulsempfänger wird weniger Toleranz
in seinem Synchronisationsimpuls-Filtermechanismus aufweisen, als
der sekundäre
Synchronisationsimpulstransmitter. Der Synchronisationsimpulsempfänger wird
schneller als der sekundäre
Synchronisationsimpulstransmitter umschalten. Dies wird vorgenommen,
um sicherzustellen, dass alle Empfängersynchronisierer auf ein
Verwenden der sekundären
Synchronisationsimpulstransmitterquelle umgeschaltet haben, bevor
der sekundäre
Synchronisationsimpulstransmitter in einen primären Modus umschaltet.
-
5 zeigt
eine Synchronisationsimpulsverteilung.
-
Um
die Backplaneübertragung
von einer Netzeinrichtung für
die in der Synchronisationsberechnung angezeigte Anzahl von Taktzyklen
abzuriegeln, muss die gesamte Netzeinrichtung praktisch für so viele
Taktzyklen eingefroren werden, um sicherzustellen, dass die gleichen
Warteschleifen und Abarbeitungsentscheidungen in Synchronisation
verbleiben. Dieses erfordert eine Unterstützung in jedem ASIC der Netzeinrichtung. Ein
Abriegeln hält
alle Funktionalität
an, einschließlich
spezieller Funktionen wie Warteschleifen-Resynchronisierung.
-
Das
Synchronisierungssignal von dem Synchronisierungsimpulsempfänger wird
an alle ASICs verteilt. Jeder ASIC der Netzeinrichtung enthält einen
Zähler
im Kerntaktbereich, der Taktzyklen zwischen globalen Synchronisationsimpulsen
zählt.
Nach einem Empfang des Synchronisationsimpulses berechnet jeder
ASIC die Anzahl von Taktzyklen, die er zu schnell ist. Da der globale
Sync nicht mit seinem eigenen Takt übertragen wird, kann der berechnete
Abriegelungszykluswert für
manche ASICs auf der gleichen Netzeinrichtung möglicherweise nicht der Gleiche
sein. Diese Differenz wird berücksichtigt,
indem alle Schnittstellen-FIFOs
auf einer Tiefe gehalten werden, an der sie die maximale Verschiebung
von Abriegelungszählungen
tolerieren können.
-
Abriegelungszyklen
auf allen Chips werden immer am gleichen logischen Punkt eingefügt, relativ
zum Beginn der letzten Sequenz von "nützlichen" (Nicht-Abriegelungs-)
Zyklen. Das heißt,
jeder Chip wird immer die gleiche Anzahl von "nützlichen" Zyklen zwischen
Abriegelungsereignissen ausführen,
auch wenn die Anzahl von Abriegelungszyklen veränderlich ist.
-
Ein
Abriegeln kann zu unterschiedlichen Zeitpunkten auf unterschiedlichen
Chips auftreten. Alle Netzeinrichtungseingangs-FIFOs werden anfangs
so eingestellt, dass ein Abriegeln auf beiden Seiten des FIFO zunächst auftreten
kann, ohne dass die FIFOs trockenlaufen oder überlaufen. Es gibt an jeder
Chip-Schnittstelle ein Synchronisations-FIFO, um Abriegelungszyklen
zu berücksichtigen
(wie auch Platinenspurlängen
und Taktverschiebungen). Die Transmittersignale werden abgeriegelt,
wenn dieser abgeriegelt wird. Der Empfänger schiebt während der
angezeigten Zyklen nichts an, und holt während der Abriegelung auch
nichts hervor (kein Push beziehungsweise Pop). Die FIFO-Tiefe wird
veränderlich
sein, in Abhängigkeit
davon, welcher Chip zuerst verriegelt, die Veränderlichkeit ist jedoch durch
die Maximalanzahl von Abriegelungszyklen begrenzt. Die Anzahl von
Abriegelungszyklen, die ein spezieller Chip während einer globalen Synchronisationsperiode sieht,
können
variieren, sie werden jedoch alle die gleiche Anzahl von nützlichen
Zyklen aufweisen. Die Gesamtanzahl von Abriegelungszyklen, die jeder
Chip auf einer speziellen Netzeinrichtung sieht, wird die gleiche sein,
innerhalb einer begrenzten Toleranz.
-
Der
Aggregatorenkerntaktbereich hält
für die
Abriegelungsdauer vollständig
an, alle Flip Flops und der Speicher halten ihren Zustand. Eingangs-FIFOs
wird es erlaubt, aufgebaut zu werden. Abriegelungsbuszyklen werden
in die Ausgangswarteschleifen eingefügt. Der genaue Zeitpunkt wann
die Kernabriegelung ausgeführt wird,
wird vorgegeben wenn das DOUT_AG Busprotokoll Abriegelungszyklen
für eine
Einfügung
erlaubt.). DOUT_AG Abrieglungszyklen werden auf dem DestID Bus angezeigt.
Der Speichercontroller muss alle Flip Flops für die geeignete Anzahl von
Zyklen abriegeln. Um einen Einfluss auf den Siliziumbereich im Speichercontroller
zu reduzieren, wird ein fortschreitendes Abriegeln genanntes Verfahren
verwendet.
-
Die
Auf-der-Netzteinrichtung-Chip-zu-Chip Synchronisation wird jeden
Synchronisationsimpuls ausgeführt.
Während
einiges an Synchronisationsfehler-Erkennungsfähigkeiten in einigen der ASICs
existieren kann, ist es die Aufgabe des Unstripers, Netzeinrichtungssynchronisationsfehler
zu erfassen, und die verstoßende
Netzeinrichtung zu entfernen. Die Chip-zu-Chip-Synchronisation ist eine kaskadierte
Funktion, die ausgeführt
wird, bevor irgendein Paketfluss auf der Netzeinrichtung freigegeben
wird. Die Synchronisation verläuft vom
Aggregator zum Speichercontroller, zum Separator, und zurück zum Speichercontroller.
Nach der Systemrücksetzung
warten die Aggregatoren auf das erste globale Synchrisationssignal.
Wenn empfangen, überträgt jeder
Aggregator einen lokalen Synchronisationsbefehl (Wert 0 × 2) auf
dem DestID Bus zu jedem Speichercontroller.
-
Die
Stripingfunktion weist Bits von eingehenden Datenströmen individuellen
Netzeinrichtungen zu. Zwei Elemente wurden bei einer Ableitung einer
Stripingzuordnung optimiert:
- 1. Eine Backplaneeffizienz
sollte für
OC48 und OC192 optimiert sein.
- 2. Eine Backplanezwischenverbindung sollte für einen OC192 Betrieb nicht
signifikant geändert
werden.
-
In
dieser Hinsicht wurde ein Kompromiss gebildet gegenüber zusätzlichen
MUX-Stellen für
den Striper- und Unstriper-AXIC. Ungeachtet der Optimierung muss
die Vermittlung das gleiche Datenformat im Speichercontroller für sowohl
OC48 als auch OC192 aufweisen.
-
Eine
Backplaneeffizienz erfordert, dass ein minimales Padding (Auffüllen) hinzugefügt wird,
wenn die Backplanebusse gebildet werden. Den 12 Bit Backplanebus
für OC48
und den 48 Bit Backplanebus für
OC192 gegeben, erfordert eine optimale Zuordnung, dass die Anzahl
von ungenutzten Bits für
eine Übertragung
gleich (number_of_bytes *8)/bus_width ist, wobei "/" eine ganzzahlige Division ist. Für OC48 kann
der Bus 0, 4 oder 8 ungenutzte Bits aufweisen. Für OC192 kann der Bus 0, 8,
16, 24, 32 oder 40 ungenutzte Bits aufweisen.
-
Dieses
bedeutet, dass kein Bit zwischen 12 Bit Grenzen verschoben werden
kann, oder anderweitig wäre
ein OC48 Padding für
bestimmte Paketlängen
nicht optimal.
-
Für OC192c
bedeutet eine maximale Bandbreitennutzung, dass jeder Striper die
gleiche Anzahl von Bits empfangen muss (was ein Bit verschachteln
in die Striper hinein impliziert). Wenn mit der gleichen Backplanezwischenverbindung
kombiniert bedeutet dies, dass bei OC192c jeder Streifen genau die
richtige Anzahl von Bits aufweisen muss, die von jedem Striper kommen,
der 1/4 der Bits aufweist.
-
Zum
Zwecke einer Zuordnung von Datenbits auf Netzeinrichtungen wird
ein 48 Bit Rahmen verwendet. Innerhalb des Stripers ist ein FIFO,
das 32 Bit breit bei 80–100
MHz beschrieben wird und 24 Bit breit bei 125 MHz liegt. Drei 32-Bit Worte werden
24 Bit Worte liefern. Jedes Paar von 24 Bit Worten wird als 48 Bit Rahmen
behandelt. Die Zuordnungen zwischen Bits und Netzeinrichtungen hängen von
der Anzahl von Netzeinrichtungen ab.
-
Tabelle
4: Bit Striping Funktion
-
Die
folgenden Tabellen geben die Bytespuren an, die zuerst in den Aggregator
eingelesen werden und zuerst in den Separator geschrieben werden.
Die vier Kanäle
werden mit A, B, C, D bezeichnet. Die unterschiedlichen Netzeinrichtungen
haben eine unterschiedliche Lese/Schreibreihenfolge der Kanäle, um zu
erlauben, dass alle Busse voll genutzt werden.
-
Eine Netzeinrichtung-40G
-
Die
nächste
Tabelle gibt die Schnittstellenlesereihenfolge für den Aggregator an.
-
-
Zwei
Netzeinrichtungen-80G
Tabelle
6
-
-
Vier
Netzeinrichtungen-160G
Tabelle
8
-
Sechs
Netzeinrichtungen-240G
Tabelle
9
-
Zwölf Netzeinrichtungen-480G
Tabelle
10
-
Schnittstellen
zu den Gigabit-Transceivern werden den Transceiver als einen geteilten
Bus mit zwei getrennten Leitwort- und Datenbussen nutzen. Der Leitwortbus
wird eine feste Größe aufweisen
(2 Bit für OC48
Eingang, 4 Bit für
OC48 Ausgang, 8 Bit für
OC192 Eingang und 16 Bit für
OC192 Ausgang), der Datenbus wird ein Bus mit variabler Größe sein.
Die Übertragungsreihenfolge
wird immer Leitwortbits an festen Orten aufweisen. Jede Stripingkonfiguration
weist einen Transceiver auf, der dazu verwendet wird, mit einem
Ziel in allen gültigen
Konfigurationen zu sprechen. Dieser Transceiver wird dazu verwendet,
sowohl Leitwortbusse zu senden, als auch ein Senden der Daten zu
beginnen.
-
Die
Backplaneschnittstelle wird physikalisch unter Verwendung der Schnittstellen
zu den Backplane-Transceivern implementiert. Der Bus für sowohl
einen Eingang als auch einen Ausgang wird als aus zwei Hälften bestehend
betrachtet, jede mit Leitwortdaten. Die zwei Bushälften können Information
bezüglich
getrennter Pakete haben, falls die erste Bushälfte ein Paket beendet.
-
Beispielsweise
hat eine zu den Netzeinrichtung gehende OC48 Schnittstelle logisch
gesagt 24 Datenbits und 2 Leitwortbits. Dieser Bus wird verwendet,
als ob er mit 2× (12
Bit Datenbus + 1 Bit Leitwortbus) arbeitet. Die zwei Bushälften werden
als A und B bezeichnet. Bus A sind die ersten Daten, gefolgt durch
Bus B. Ein Paket kann auf entweder Bus A oder B beginnen und auf
entweder Bus A oder B enden.
-
Ein
Zuordnen von Datenbits und Leitwortbits zu Transceiverbits werden
die Busbits verschachtelt. Dieses stellt sicher, dass alle Transceiver
den gleichen Gültig/Ungültigzustand
haben sollten, auch wenn sich das Stripingausmaß ändert. Leitworte sollten mit
Bus A interpretiert werden, bevor sie auf Bus B auftreten.
-
Das
Bus A/Bus B Konzept entspricht eng einem Bereitstellen von Schnittstellen
zwischen den Chips.
-
Alle
Backplanebusse unterstützen
eine Fragmentierung von Daten. Das verwendete Protokoll markiert die
letzte Übertragung
(über das
finale Segmentbit in dem Leitwort). Alle Transceiver, die nicht
im finalen Segment sind, müssen
die gesamte Busbreite verwenden, auch wenn dies keine gerade Anzahl
von Bytes ist. Ein beliebiges gegebenes Paket muss auf die gleiche
Anzahl von Netzeinrichtungen für
alle Übertragungen
dieses Pakets gestreift werden. Falls die Stripinggröße in dem
Striper während
einer Übertragung
eines Pakets aktualisiert wird, wird das Striping nur am Beginn
des nächsten
Pakets aktualisiert.
-
Jeder
Transmitter auf den ASICs wird die folgenden I/O (E/A) für jeden
Kanal aufweisen:
8 Bit Datenbus, 1 Bit Takt, 1 Bit Steuerung.
-
Auf
der Empfangsseite für
den Kanal, den der ASIC empfängt,
einen
Empfangstakt, einen 8 Bit Datenbus, einen 3 Bit Statusbus.
-
Die
Vermittlung optimiert die Transceiver, indem ein Transmitter auf
zwischen 1 und 3 Backplanepaare zugeordnet wird und jeder Empfänger auf
zwischen 1 und 3 Backplanepaare zugeordnet wird. Dieses erlaubt nicht
nur, dass genügend
Transmitter einen Verkehr unterstützen, benötigt in einer Konfiguration,
die auf der Platine zu bevölkern
ist, während
ein vollständiger
Satz von Backplanenetzen erhalten wird. Die Motivation für diese
Optimierung ist es, die Anzahl von benötigten Transceivern zu reduzieren.
-
Die
Optimierung wurde vorgenommen, während
immer noch gefordert wird, dass zu einem beliebigen Zeitpunkt zwei
unterschiedliche Stripingausmaße
in den Gigabit-Transceivern unterstützt werden müssen. Dieses
ermöglicht,
dass ein Verkehr von Stripingdaten zu einer Netzeinrichtung in Warteposition
geschleift wird und zur gleichen Zeit ein Striper Daten zu zwei
Netzeinrichtungen streift.
-
In
Abhängigkeit
von der Buskonfiguration können
multiple Kanäle
erforderlich sein, um aneinander geknüpft zu sein, um eine Leitung
mit größerer Bandbreite
zu bilden (zu beliebiger Zeit gibt es mehr als einen Transceiver
in einer logischen Verbindung). Obwohl Quad gbit Transceiver 4 Kanäle zusammenlegen
können, wird
diese Funktionalität
nicht verwendet. Stattdessen ist der Empfangs-ASIC für eine Synchronisierung
zwischen den Kanälen
von einer Quelle zuständig.
Dieses wird im gleichen Kontext wie der generische Synchronisierungsalgorithmus
vorgenommen.
-
Das
8b/10b Codieren/Decodieren in den Gigabit-Transceivern ermöglicht eine
Anzahl von Steuerereignissen, die über den Kanal zu übermitteln
sind. Die Notation für
diese Steuerereignisse sind K-Zeichen und sie sind basierend auf
dem codierten 10 Bitwert nummeriert. Mehrere dieser K-Zeichen werden
in dem Chipsatz verwendet. Die verwendeten K-Zeichen und deren Funktionen
sind in der untenstehenden Tabelle gegeben.
-
Tabelle
11: K-Zeichennutzung
-
Die
Vermittlung weist eine variable Anzahl von für jeden Backplanekanal unterstützten Datenbits
auf, in Abhängigkeit
von der Stripingkonfiguration für
ein Paket. Innerhalb eines Satzes von Transceivern werden Daten
in der folgenden Reihenfolge aufgefüllt:
F[fabric]_[oc192
port_number] [oc192 port_designation] (a,b,c,d) [transceiver_number]
-
Der
Chipsatz implementiert bestimmte Funktionen, die hier beschrieben
sind. Die meisten der Funktionen, die hier erwähnt werden, werden in mehreren
ASIC unterstützt,
und so ergibt eine Dokumentierung dieser auf einer pro ASIC Grundlage
kein klares Verständnis
des vollen Umfangs der erforderlichen Funktionen.
-
Der
Vermittlungschipsatz ist dazu ausgelegt, mit Paketen bis zu 64K
+ 6 Byte lang zu arbeiten. Auf der Eingangsseite der Vermittlung
gibt es Busse, die von mehreren Ports bzw. Anschlüssen gemeinsam
genutzt werden. Für
die meisten Pakete gilt, dass sie ohne irgendeine Unterbrechung
von Beginn des Pakets zum Ende des Pakets übertragen werden. Dieser Ansatz
kann jedoch zu großen
Verzögerungsveränderlichkeiten für einen
verzögerungsempfindlichen
Verkehr führen.
Um zu ermöglichen,
dass ein verzögerungssensitiver Verkehr
und ein langer Verkehr auf der gleichen Vermittlungsnetzeinrichtung
koexistieren, wird das Konzept langer Pakete eingeführt. Grundlegend
gesagt erlauben lange Pakete, dass Abschnitte von Daten an den Warteschleifenort
gesendet werden, an dem Warteschleifenort auf einer Quellengrundlage
aufgebaut werden, und dann in die Warteschleife komplett eingefügt werden,
wenn das Ende des langen Pakets übertragen
ist. Die Definition eines langen Pakets basiert auf der Anzahl von
Bits auf jeder Netzeinrichtung.
-
Falls
die Vermittlung in einer Umgebung läuft, in der Ethernet MTU im
gesamten Netz aufrechterhalten wird, werden in einer Vermittlung
keine langen Pakete gesehen, die größer als 40G groß sind.
-
Eine
gemeinsam genutzte Speichertechnik mit breiter Cacheleitung wird
dazu verwendet, um Zellen/Pakete in den Port/Prioritätswarteschleifen
zu speichern. Der gemeinsam genutzte Speicher speichert Zellen/Pakete
fortlaufend, sodass es praktisch keine Fragmentierung und Bandbreitenverschwendung
im gemeinsam genutzten Speicher gibt.
-
Es
gibt mehrere Warteschleifen im gemeinsam genutzten Speicher. Sie
sind bereitgestellt auf einer pro-Ziel- und Prioritäts-Grundlage.
Alle Zellen/Pakete, die die gleiche Ausgangsprioritäts- und
Anordnungs (Blade)/Kanal ID aufweisen, werden in der gleichen Warteschleife
gespeichert. Zellen werden immer von oben von der Liste abgearbeitet
und in das Ende der Warteschleife eingeschleift. Jede Zelle/Paket
besteht aus einem Abschnitt des Eingangsleitworts, einer Paketlänge, und
Paketdaten variabler Länge.
Zellen und Pakete werden fortlaufend gespeichert, d.h. der Speichercontroller
erkennt selbst keine Grenzen von Zellen/Paketen für die Unicast-Verbindungen.
Die Paketlänge
wird für
MC-Pakete gespeichert.
-
Der
Multicast-Anschlussmaskenspeicher 64K × 16-Bit wird zur Speicherung
der ZielAnschlussmaske für
die Multicast-Verbindungen
verwendet, ein Eintrag (oder mehrere Einträge) pro Multicast VC. Die Anschlussmasken
der Kopf-Multicast-Verbindungen,
die durch die Multicast DestID FIFOs bezeichnet sind, werden intern
für eine
Planungsreferenz gespeichert. Der Anschlussmaskenspeicher wird abgerufen,
wenn die Anschlussmaske der Kopfverbindung gelöscht wird und eine neue Kopfverbindung
bereitgestellt wird.
-
APS
bedeutet Automatic Protection Switching, welches ein SONST Redundanzstandard
ist. Um die APS-Eigenschaft in der Vermittlung zu unterstützen, senden
zwei Ausgangsports auf zwei unterschiedlichen Anschlusskarten ungefähr den gleichen
Verkehr. Die Speichercontroller halten einen Satz von Warteschleifen für einen
APS-Port und senden Duplikatdaten an beide Ausgangsports.
-
Um
eine Datenduplikation in dem Speichercontroller ASIC zu unterstützen, weist
eine von mehreren Unicast-Warteschleifen ein programmierbares APS
Bit auf. Falls das APS Bit auf eins gesetzt ist, wird ein Paket
an beide Ausgangsports abgearbeitet. Falls das APS Bit für einen
Port auf Null gesetzt ist, arbeitet die Unicast-Warteschleife im
Normalmodus. Falls ein Port als ein APS-Slave konfiguriert ist,
wird er von den Warteschleifen des APS-Masterports lesen. Für OC48 Ports
ist der APS-Port immer auf dem gleichen OC48 Port auf der benachbarten
Anschlusskarte.
-
Die
gemeinsam genutzten Speicherwarteschleifen in den Speichercontrollern
unter den Netzeinrichtungen können
eine Synchronisation verlieren (d.h. gleiche Warteschleifen auf
unterschiedlichen Speichercontroller-ASICs haben unterschiedliche
Tiefe) aufgrund von Taktverschiebungen oder einer neu eingefügten Netzeinrichtung.
Es ist wichtig, die Netzeinrichtungs-Warteschleifen auf die gültigen und
synchronisierten Zustände
von beliebigen Zuständen
zu bringen. Es ist weiter wünschenswert,
keine Zellen für
irgendeinen Wiederherstellungsmechanismus zu verwerfen.
-
Eine
Resynchronisierungszelle wird an alle Netzeinrichtungen ausgesendet
(neue und existierende), sodass diese den Resynchronisierungszustand
eingehen. Netzeinrichtungen werden versuchen, allen vor der Resynchronisierungszelle
empfangenen Verkehr auszuspülen,
bevor die Warteschleifen-Resynchronisierung endet,
es wird jedoch kein nach der Resynchronisierungszelle empfangener
Verkehr abfließen,
bis die Warteschleifen-Resynchronisierung endet. Eine Warteschleifen-Resynchronisierung
endet, wenn eines der zwei Ereignisse auftritt:
- 1.
Ein Zeitgeber läuft
ab.
- 2. Das Ausmaß von
neuem Verkehr (nach der Resynchronisierungszelle empfangener Verkehr) überschreitet
einen Schwellwert.
-
Am
Ende der Warteschleife-Resynchronisierung werden alle Speichercontroller
irgendwelchen übrig gebliebenen
alten Verkehr (Verkehr, der vor der Warteschleifen-Resynchronisierungszelle
empfangen wurde) herausspülen.
Der Freimachbetrieb ist schnell genug, um sicherzustellen, dass
alle Speichercontroller allen Speicher auffüllen können, ungeachtet der Tatsache,
wann der Resynchronisationszustand eingegangen wurde.
-
Eine
Warteschleifen-Resynchronisierunge beeinflusst alle drei Netzeinrichtungs-ASICs.
Die Aggregatoren müssen
Sicherstellen, dass die FIFOs nach einer Warteschleifen-Resynchronisierungszelle
identisch abfließen
lassen. Die Speichercontroller implementieren das in die Warteschleife
Setzen und davon Absetzen. Die Separatoren müssen handhaben, dass die Speichercontroller
einen Verkehr absetzen und die Längenanalysier(Parsing)-Zustandsmaschinen
rücksetzen,
wenn dies auftritt. Für
Details hinsichtlich einer Unterstützung einer Warteschleifen-Resynchronisierung
in individuellen ASICs nehme man auf die Chip-ADSs Bezug.
-
Für die Abarbeitungsseite
müssen
Multicast-Verbindungen unabhängige
32 Token pro Port aufweisen, jedes Wort bis zu 50 Bitdaten oder
ein komplettes Paket. Die Kopfverbindung und ihre Anschlussmaske
einer höheren
Prioritäts-Warteschleife
wird von dem Verbindungs-FIFO und dem Anschlussmaskenspeicher in
jedem Zyklus ausgelesen. Ein komplettes Paket wird von der Multicast-Cacheleitung
basierend auf dem Längenfeld
der Kopfverbindung isoliert. Das Kopfpaket wird an alle seine Zielports
gesendet. Die 8 Warteschleifen-Drainer (Absauger) übertragen
das Paket an die Separatoren, wenn Nicht-Null Multicast-Token für die Anschlüsse bzw.
Ports verfügbar
sind. Die nächste
Kopfverbindung wird nur dann verarbeitet, wenn das momentane Kopfpaket
an allen seinen Anschlüssen
ausgesendet ist.
-
Eine
Warteschleifenstruktur kann dynamisch geändert werden, über die
Netzeinrichtungs-Resynchronisierungszelle, wenn das Feld für eine Zahl
einer Priorität
pro Port verwendet wird, um anzuzeigen, wieviele Prioritäts-Warteschleifen
jeder Port innehat. Der Striper-ASIC liegt auf der Netzanordnung
(Blade). Die folgenden Worte haben ausreichend spezielle Bedeutungen
in dem Vokabular der Vermittlung. Viele sind anderweitig erwähnt, dies
ist jedoch ein Versuch, diese an einer Stelle mit Definitionen zusammenzubringen. Tabelle
12:
Wort | Bedeutung |
APS | Automatic
Protection Switching. Ein sonet/sdh-Standard für eine Implementierung einer
Redundanz auf physikalischen Verbindungen. Für die Vermittlung wird APS
auch dazu verwendet, von irgendwelchen erfassten Port-Kartenfehlern wieder
einzurichten. |
BackplaneSynchronisierung | Ein
generischer Ausdruck, der entweder den allgemeinen Prozess bezeichnet,
mit den Vermittlungsplatinen verwenden, um variierende Transportverzögerungen
zwischen Platinen und eine Taktverschiebung zu berücksichtigen,
oder die Logik, die die TX/RX-Funktionalität implementiert, die für den Vermittlungs-ASIC
erforderlich ist, um variierende Transportverzögerungen und Taktdriften zu
berücksichtigen. |
BIB | Der
Vermittlungseingangsbus. Der Bus, der dazu verwendet wird, Daten
zu den Stripern zu leiten. Siehe auch BOB. |
Anschlussanordnung
(Blade) | Ein
anderer für
eine Anschlusskarte verwendeter Ausdruck. Bezüge auf sollten aus diesem Dokument entfernt
sein, einige können
jedoch übriggeblieben sein. |
BOB | Der
Vermittlungsausgangsbus. Der Ausgangsbus von dem Striper, der mit
dem Ausgangsspeichercontroller verbunden ist. Siehe auch BIB. |
Ausgangs- (Egress) Leitwort | Dies
ist das Leitwort, das dem Chip nach dem Unstriper geliefert wird.
von einer Perspektive des internen Chipsatzes aus gesehen, wird
das Ausgangsleitwort als Daten behandelt. Siehe auch Netzeinrichtungsleitwort. |
Netzeinrichtungs-Leitwort | Leitwort,
das durch die Netzeinrichtung für
eine Bestimmung der Ausgangs-Warteschleife
verwendet wird. Dieses Leitwort wird nicht nach außerhalb
des Unstripers geführt.
Ein signifikanter Abschnitt dieses Leitworts wird in den Netzeinrichtungen
entfernt. |
Freeze
(Einfrieren) | Wenn
eine Logik ihre Werte während
Abriegelungszyklen aufrecht erhält. |
Abriegelung | Zeitperiode,
wenn die Netzeinrichtung effektiv ein Durchführen irgendwelcher Arbeiten
anhält,
um eine Taktdrift zu kompensieren. Falls die Backplane-Synchronisationslogik
feststellt, dass eine Netzeinrichtung 8 Taktzyklen zu schnell ist,
wird die Netzeinrichtung für
8 Takte abgeriegelt. |
Warteschleifenresynchronisierung
(Queue Resynch) | Eine
Warteschleifen-Resynchronisierung ist eine Serie von Schritten,
die ausgeführt
wird, um sicherzustellen, dass die logischen Zustände aller
Netzeinrichtungs-Warteschleifen für alle Ports zu einem logischen
Zeitpunkt alle identisch sind. Eine Warteschleifen-Resynchronisierung
ist nicht mit einer Backplane-Resynchronisierung (einschließlich Verriegelung) auf
irgendeine Weise verbunden, mit Ausnahme, dass eine Abriegelung
während
einer Warteschleifen-Resynchronisierung auftreten kann. |
SIB | Gestreifter
(striped) Eingangsbus. Ein im weitesten Sinn obloleter Ausdruck,
der dazu verwendet wird, den Ausgangsbus vom Striper und den Eingangsbus zum
Aggregator zu bezeichnen. |
SOB | Der
erste gestreifte Ausgangsbus, der der Ausgangsbus der Netzeinrichtung
und der Eingangsbus des Aggregators ist. Siehe auch SIB. |
Synchronisation
(Sync) | Hängt stark
vom Kontext ab. In Verbindung stehende Ausdrücke sind Warteschleifen-Resynchronisierung, Abriegelung,
Einfrieren, und Backplane-Synchronisation. |
Wacking | Das
implizite Bitsteuern, das an der OC192 Eingangsstufe auftritt, da
Daten unter Stripern Bit verschachtelt sind. Dieses Bitsteuern wird
durch die Aggregatoren umgekehrt. |
-
Das
Verhältnis
zwischen den Übertragungs-
und Empfangszählern
ist in 6 ersichtlich.
-
Obwohl
die Erfindung detailliert in den vorhergehenden Ausführungsbeispielen
zum Zwecke einer Veranschaulichung beschrieben wurde, versteht es
sich, dass alle diese Details lediglich diesem Zwecke dienen, und
dass Abänderungen
darin durch den Fachmann vorgenommen werden können, ohne vom Umfang der Erfindung
abzuweichen, mit Ausnahme dessen, wie es durch die folgenden Ansprüche beschrieben
sein kann.