DE60030737T2 - Hochleistungs-Vermittlungselement und -Vermittlungssystem - Google Patents

Hochleistungs-Vermittlungselement und -Vermittlungssystem Download PDF

Info

Publication number
DE60030737T2
DE60030737T2 DE60030737T DE60030737T DE60030737T2 DE 60030737 T2 DE60030737 T2 DE 60030737T2 DE 60030737 T DE60030737 T DE 60030737T DE 60030737 T DE60030737 T DE 60030737T DE 60030737 T2 DE60030737 T2 DE 60030737T2
Authority
DE
Germany
Prior art keywords
port
generic
ports
switch
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60030737T
Other languages
English (en)
Other versions
DE60030737D1 (de
Inventor
R. William Minneapolis GEORGE
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
QLogic Switch Products LLC
Original Assignee
QLogic Switch Products LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by QLogic Switch Products LLC filed Critical QLogic Switch Products LLC
Application granted granted Critical
Publication of DE60030737D1 publication Critical patent/DE60030737D1/de
Publication of DE60030737T2 publication Critical patent/DE60030737T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/101Packet switching elements characterised by the switching fabric construction using crossbar or matrix

Description

  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich allgemein auf das Gebiet der Hochleistungsvermittlung, einschließlich Vermittlungen, Vermittlungssystemen und Netzwerken, sowie auf Verbindungs- und Adressierungsverfahren, die zur Implementierung von Hochleistungs-Vermittlungsfunktionen geeignet sind, wie sie zum Beispiel in den Fibre Channel-Standards definiert sind.
  • Hintergrund der bekannten Technik
  • Der Bedarf an leistungsfähigen Vermittlungslösungen im Bereich der Computer- und Datenverarbeitungssysteme wächst weiter. Beispiele für solche Systeme sind unter anderem die Verbindung von Computern und Hochleistungs-Speichergeräten, die Verbindung von Computern in Betriebsumgebungen mit mehreren Rechnern sowie andere Anwendungen, bei denen mehrere schnelle Datenverbindungen zwischen bestimmten Knoten oder Gruppen von Knoten in einem Datenverarbeitungsnetz hergestellt werden müssen. Höhere Bandbreiten und größere Flexibilität bei der Vermittlung sind wichtige Überlegungen für die in solchen Systemen verwendeten Vermittlungen und Geräte.
  • Der Fibre Channel-Standard ANSI X3.T11 soll sich mit diesen Überlegungen beschäftigen. Der Fibre Channel-Standard selbst definiert ganz allgemein Leistungsklassen und -standards, schreibt jedoch die zur Bereitstellung dieser Funktionen zu verwendenden Implementierungstechnologien nicht vor. Ein bestimmtes Design einer Vermittlung zur Implementierung von Fibre Channel-Funktionen wird als Struktur der Vermittlung bezeichnet.
  • Die meisten gegenwärtig verfügbaren Vermittlungsstrukturen implementieren nicht alle Fibre Channel-Funktionen. Hierfür gibt es eine Reihe von Gründen, teils technischer und teils wirtschaftlicher Natur. Für einige Anwendungen ist nur eine Teilmenge der Fibre Channel-Funktionen nötig. In anderen Fällen jedoch wäre eine größere Gruppe von Fibre Channel-Funktionen wünschenswert, aber die Kosten und die technische Komplexität der Realisierung sind nach wie vor beträchtliche Hindernisse.
  • In US-Patent 6.597.691 B1 vom 22. Juli 2003 mit dem Titel „HIGH PERFORMANCE SWITCHING" werden bestimmte Methoden und Vermittlungskonfigurationen zur Bereitstellung leistungsfähiger Fibre Channel- oder sonstiger Vermittlungssysteme beschrieben. Diese Systeme basieren auf einzigartigen Vermittlungsgestellen und einzigartigen Methoden zur Verbindung der Gestelle, um größere Netze zu schaffen. Das Verfahren zum Verbinden von Gestellen in dieser Patentanmeldung könnte als „Mehrstufenverbindung" bezeichnet werden, denn es sieht die Verbindung von einzelnen Vermittlungsgestellen in bevorzugter Weise vor, um größere Netze zu erhalten.
  • Die vorliegende Erfindung stellt weitere Verbesserungen für Hochleistungs-Vermittlungsnetze und -methoden durch Verbesserungen bei den Vermittlungsmodulen und deren Verbindungen in einem Vermittlungsgestell bereit, um eine höhere Leistung, geringere Komplexität und größere Flexibilität zu erzielen.
  • Bei Hochleistungs-Vermittlungsgestellen nach dem Stand der Technik wird üblicherweise versucht, mehrere gleiche Vermittlungsmodule zu verwenden und Möglichkeiten zu deren Verbindung auf einer Leiterplatte oder auf andere Weise in einem Gestell vorzusehen. Oft können die Vermittlungsmodule aus spezifischen Vermittlungsmodulen mit einer bestimmten Anzahl von zum Beispiel zwei, vier oder acht Eingabe- oder Ausgabe-Anschlüssen bestehen. Im Idealfall sind die meisten oder alle der spezifischen Vermittlungsmodule in einem einzigen ASIC (anwendungsspezifische integrierte Schaltung) realisiert, gegebenenfalls mit zusätzlichen Hilfselementen oder Chips. Je nach den implementierten Fibre Channel-Funktionen kann es bei solchen Systemen nach dem Stand der Technik erforderlich sein, eine Anzahl von unterschiedlichen spezifischen Vermittlungsmodul- und ASIC-Typen vorzusehen, um unterschiedliche Typen von Fibre Channel-Anschlüssen abzudecken. Das spezifische Vermittlungsmodul kann im Allgemeinen angeforderte Vermittlungsverbindungen in sich selbst und mit seinen eigenen Anschlüssen handhaben. Um ein Vermittlungsgestellprodukt mit einer sinnvolleren Anzahl von Kanälen, zum Beispiel 32, 48 oder 64 zu schaffen, ist es wünschenswert, mehrere dieser spezifischen Vermittlungsmodule in dem Gestell auf irgendeine Weise miteinander zu verbinden.
  • Die übliche Methode hierfür besteht darin, einen schnellen Bus vorzusehen, der oft als Backplane bezeichnet wird und alle spezifischen Vermittlungsmodule verbindet. Ein Struktur-Controller kann ebenfalls programmiert werden, um den Verkehr zwischen spezifischen Vermittlungsmodulen entsprechend den jeweils angeforderten Vermitt lungsverbindungen zu leiten. Es ist leicht ersichtlich, dass bei diesen Systemen die Bandbreite der Backplane und der Betrieb des Struktur-Controllers kritisch sind. In der Praxis ist die Backplane der einschränkende Faktor, was die Anzahl der Gestellkanäle, die Leistung und die Kosten angeht. Bei solchen Systemen nach dem Stand der Technik führen Versuche, die Anzahl der Kanäle in einem Gestell zu erhöhen, schnell zu hohen Anforderungen an die Backplane und den Struktur-Controller im Hinblick auf technische Einschränkungen, Komplexität und Kosten. Diese Faktoren haben in der Praxis die Anzahl der Kanäle bei der Auslegung von Vermittlungsgestellen nach dem Stand der Technik begrenzt, wenn angemessen hohe Datenraten aufrechterhalten werden sollen.
  • WO98/36537 beschreibt eine Fibre Channel-Vermittlungsstruktur zum Verbinden mehrerer angeschlossener Geräte mit einer Reihe von Anschlusssteuermodulen für die Kommunikation mit den Geräten, die eine Routenanforderung und eine Route-lesen-Antwort bilden, einem Routermodul, das durch eine Routenanforderung und eine Routenantwortverbindung mit den Anschlusssteuermodulen verbunden wird, und einem mit den Anschlusssteuermodulen verbunden Vermittlungskern.
  • EP-A-0856969 beschreibt ein n-Anschluss-Vermittlungselement, umfassend:
    n Anschlüsse, wobei jeder Anschluss auf der Vermittlung aufweist:
    einen Eingabelink zum Empfangen von Datenblöcken von einem vom Vermittlungselement entfernten Ursprungsort,
    einen Ausgabelink zum Übertragen von Datenblöcken an einen vom Vermittlungselement entfernten Zielort und
    einen Vermittlungscrossbar zum Einrichten eines verfügbaren Datenkanals zwischen jedem Anschluss und jedem anderen Anschluss im Vermittlungselement.
  • Eine Steuerungszustandsmaschine ist in Form eines Adressheader-Erzeugungsabschnitts zum Leiten von Daten an den richtigen Anschluss vorgesehen.
  • Zusammenfassung der Erfindung
  • Nach einem Aspekt stellt die vorliegende Erfindung ein Vermittlungssystem mit mehreren n-Anschluss-Vermittlungselementen bereit, umfassend:
    n Anschlüsse und einen zusätzlichen Anschluss, der als ein Anschluss für einen Eingabe-Ausgabe-Prozessor dienen soll, wobei jeder der n Anschlüsse enthält:
    einen Eingabelink zum Empfangen von Datenblöcken von einem vom Vermittlungselement entfernten Ursprungsort,
    einen Ausgabelink zum Übertragen von Datenblöcken an einen vom Vermittlungselement entfernten Zielort,
    einen Vermittlungscrossbar zum Einrichten eines verfügbaren Datenkanals zwischen jedem Anschluss und jedem anderen Anschluss auf dem Vermittlungselement und
    eine Steuerungszustandsmaschine zum Richten empfangener Datenblöcke vom Eingabelink an den Ausgabelink eines oder mehrerer generischer Anschlüsse auf dem Vermittlungselement, dadurch gekennzeichnet, dass
    jeder der n Anschlüsse jedes Vermittlungselements ein generischer Anschluss ist, der dazu in der Lage ist, als einer der Typen von Fibre Channel-Anschlüssen F_Port, FL_Port und E_Port zu dienen, wobei jeder Anschluss einen ausgesuchten Schleifenpfad aufweist, der zwischen dem Eingabelink des Anschlusses und dem Ausgabelink verläuft, sowie als eine Schleifenzustandsmaschine zu dienen, die Übertragungs- und Empfangsfunktionen steuert, so dass von einem Anschluss empfangene Daten im Betriebszustand des Überwachens der ausgesuchten Schleife sowie des Bypassmodus über den ausgesuchten Schleifenpfad zum Ausgabelink desselben Anschlusses zurück übertragen werden können, und
    eine einzelne integrierte Schaltung die n generischen Anschlüsse und den Vermittlungscrossbar des Vermittlungselements enthält, und
    die n-Anschluss-Vermittlungselemente miteinander verbunden sind, um ein Vermittlungsgestell zu bilden, das mindestens eine der folgenden Linkverbindungstechniken verwendet:
    eine Kaskadenlinkverbindung, bei der jedes Vermittlungselement Anschlüsse aufweist, die mit einem benachbarten Vermittlungselement im Gestell verbunden sind,
    eine Gitterlinkverbindung, bei der jedes Vermittlungselement Anschlüsse aufweist, die direkt mit jedem anderen Vermittlungselement im Gestell verbunden sind, und
    eine Mikrostufenfinkverbindung, bei der einige Vermittlungselemente mit den Gestellkanälen verbunden sind und Anschlüsse aufweisen, die ebenfalls mit jedem einer weiteren Anzahl von Vermittlungselementen verbunden sind, die Links dazwischen zur Verfügung stellen.
  • Typischerweise hat jedes Strukturelement die Form eines ASIC. Die Links zwischen allen Anschlüssen des ASIC sind intern im ASIC ausgeführt. Das Strukturelement kann mehrfach verwendet werden, um Hochleistungs-Vermittlungsgestelle mit einer deutlich größeren Anzahl von Anschlüssen bereitzustellen, als mit der bekannten Technik erreicht werden können. Ein Beispiel der Erfindung sieht ein einzelnes Strukturelement mit 16 Vermittlungsanschlüssen und einem blockierungsfreien Crossbar (Kreuzschiene) 17 × 17 mit intern voller Bandbreite vor, um die Übertragung von Blöcken zwischen beliebigen Paaren von Anschlüssen zu ermöglichen. Bei einer bevorzugten Form sind alle Strukturelement-Vermittlungsanschlüsse individuell konfigurierbar, um als ein Fibre Channel-Anschluss F_Port, FL_Port oder E_Port dienen zu können, je nachdem, was an den Anschluss angeschlossen werden soll.
  • Die Strukturelementanschlüsse können jeweils eine eindeutige lokale Routing-Tabelle aufweisen. Dadurch wird die Notwendigkeit einer globalen Routing-Tabelle für Anschlüsse wie bei der bekannten Technik verhindert. Außerdem gestattet dies das Adressieren und Weiterleiten von Anschluss zu Anschluss in dem Strukturelement, ohne dass Nachschlagereferenzen von außerhalb des Strukturelements nötig sind, was zur Geschwindigkeit beiträgt.
  • Ein Vermittlungsschienensystem mit mehreren Vermittlungsschienen kann zur Verbesserung der Blockübertragung verwendet werden.
  • Blockübermittlungsentscheidungen können anhand von Senderblockkennzeichen vorgenommen werden, die auf dem Senderbedarf und dem „Block-Pulling" basieren anstatt auf dem „Block-Pushing" durch den Empfänger.
  • Die Blocksteuerung kann entweder auf geparsten Blockzieladressfeldern für Systeme mit hoher Skalierbarkeit oder auf Zieladressfeldwerten für die Alias-Steuerung basieren, wobei beide Methoden an jedem Anschluss gleichzeitig zur Verfügung stehen. Die Steuerungslogik kann daher ein vollständiges Hardware-Routing für Unicast- und Multicast-Funktionen oder Ausstrahlungsfunktionen vorsehen.
  • Das harte Verzonen kann durch Setzen von Berechtigungs-Bits in der Steuerungs logik vorgesehen werden, so dass Blöcke für bestimmte Ziele blockiert werden können.
  • Die Linkverbindungstechniken nach der vorliegenden Erfindung erlauben Kaskaden-, Gitter- und Mikrostufenlinkverbindungen sowie Kombinationen davon. Nach dem Mikrostufen-Aspekt der Erfindung verwendet eine vorbestimmte Anzahl von Strukturelementen eine vorbestimmte Anzahl ihrer Anschlüsse als Kanaleingabe-/-ausgabeverbindungen für das Vermittlungsgestell. Vorzugsweise verwenden diese Strukturelemente die Hälfte ihrer Anschlüsse für diesen Zweck, wobei die verbleibende Hälfte für Linkverbindungen verwendet wird. Darüber hinaus werden bei Vermittlungsgestellen mit einer größeren Anzahl von Anschlüssen einige Strukturelemente nur für die Verbindung zwischen den Strukturelementen verwendet, die als Kanalanschlüsse dienen.
  • Nach einem weiteren Aspekt der Erfindung erlaubt ein einzelnes Strukturelement die Implementierung einer Domain mit bis zu 16 Bereichsanschlüssen mit einem blockierungsfreien Crossbar mit voller Bandbreite.
  • Nach einer derzeit bevorzugten Ausführungsform der Erfindung wird ein Strukturelement mit 16 Anschlüssen bereitgestellt, und Mikrostufenverbindungen werden bereitgestellt, um Vermittlungsgestelle mit 32, 64 oder 128 Kanälen zu bilden. Darüber hinaus kann die Ausführungsform des Mikrostufen-Vermittlungsgestells mit 128 Kanälen erweitert werden, um 256 Kanäle zu unterstützen, was einer vollen Fibre Channel-Domain entspricht. Mehrstufenverfahren können zum Verbinden mehrerer Domains verwendet werden, unter anderem Kaskaden-, Gitter- oder Kreuzverbindungen, um das Fibre Channel-Maximum von 239 Domains zu ermöglichen. Dies ergibt die maximale Anzahl von Domain-/Bereichsvermittlungsanschlüssen nach dem Fibre Channel-Standard von 239 × 256 Leitungsanschlüssen oder ca. 61.000 Anschlüsse.
  • Diese und weitere Merkmale und Vorteile werden mit der vorliegenden Erfindung bereitgestellt, wie in den nachstehenden ausführlichen Beschreibungen der bevorzugten Ausführungsformen gezeigt.
  • Kurzbeschreibung der Zeichnungen
  • 1 zeigt ein Blockdiagramm mit den Funktionsdetails eines ASIC-Strukturelements mit 16 Anschlüssen nach einem Aspekt der Erfindung.
  • 2 zeigt ein Blockdiagramm eines einzelnen Vermittlungsgestells (Domain) mit 16 Anschlüssen unter Verwendung des ASIC-Strukturelements in 1.
  • 3 zeigt ein Blockdiagramm eines 32-Kanal-Gestells mit Kaskadenlinkverbindung.
  • 4 zeigt ein Blockdiagramm eines 32-Kanal-Gestells mit Gitterlinkverbindung.
  • 5 zeigt ein Blockdiagramm eines 32-Kanal-Gestells mit Mikrostufenlinkverbindung.
  • 6 zeigt ein Blockdiagramm eines 64-Kanal-Gestells mit Mikrostufenlinkverbindung.
  • 7 zeigt ein Blockdiagramm eines 128-Kanal-Gestells mit Mikrostufenlinkverbindung.
  • 8 zeigt ein Blockdiagramm eines 256-Kanal-Gestells mit einer Mikrostufen-/Kaskadenlink-Hybridverbindung.
  • 9A zeigt ein Diagramm des Fibre Channel D_ID-Adressfelds.
  • 9B zeigt ein Diagramm für die Verwendung des Fibre Channel D_ID-Adressfelds zum Adressieren in 8- oder 16-Kanal-Gestellen nach der vorliegenden Erfindung.
  • 9C zeigt ein Diagramm für die Verwendung des Fibre Channel D_ID-Adressfelds zum Adressieren in 32- bis 256-Kanal-Gestellen nach der vorliegenden Erfindung.
  • 10 zeigt ein Blockdiagramm eines Strukturelements in größerem Detail mit Einzelheiten der Adressdecodierungs- und Blocksteuerungstechniken nach der vorliegenden Erfindung.
  • Ausführliche Beschreibung der bevorzugten Ausführungsformen
  • 1 zeigt ein Blockdiagramm eines ASIC-Strukturelements mit 16 Anschlüssen nach einem Aspekt der Erfindung, und 1 zeigt in Form eines Blockdiagramms den allgemeinen Aufbau eines 16-Kanal-Vermittlungsgestells mit dem Strukturelement mit 16 Anschlüssen in 1. In der bevorzugten Ausführungsform umfasst das Strukturelement den ASIC 20. In dieser bevorzugten Ausführungsform verfügt der ASIC 20 über 16 Anschlüsse mit vollem blockierungsfreien Fibre Channel-Service der Klasse 2 (verbindungslos, bestätigt) und Klasse 3 (verbindungslos, unbestätigt) zwischen allen Anschlüssen. Es ist erkennbar, dass das Strukturelement ASIC 20 im Rahmen des Umfangs und der Anwendung der hier beschriebenen Erfindung auch für den Service der Klasse 1 (Verbindung) ausgelegt werden könnte. Für Anwendungen jedoch, die keinen Klasse 1-Service erfordern, kann ein einfacheres Design benutzt werden, und dieses ist in den bevorzugten Ausführungsformen der vorliegenden Erfindung gezeigt.
  • Das Strukturelement nach der vorliegenden Erfindung ist gegenwärtig als ein einzelner CMOS-ASIC ausgeführt, und aus diesem Grund werden die Begriffe Strukturelement und ASIC im vorliegenden Dokument beide so verwendet, dass sie auf die bevorzugte Ausführungsform des Strukturelements verweisen. Die Erfindung ist jedoch weder auf eine Implementierung mit einem ASIC noch auf einen einzelnen Chip beschränkt. Andere Technologien können verwendet werden, zum Beispiel PGA-Bauelemente (Programmable Gate Array), aber auch andere Implementierungstechnologien, die einen Chip oder einen Chipset mit den hier beschriebenen Strukturelementfunktionen vorsehen.
  • In gleicher Weise ist die Auswahl von 16 Anschlüssen keine Einschränkung der Erfindung, sondern lediglich eine Möglichkeit, die besondere Vorteile im Hinblick auf Leistung und Flexibilität bietet. Jede Anzahl von Anschlüssen kann unterstützt werden. Zur Diskussion der Überlegungen hinsichtlich der Anzahl der Anschlüsse folgt die nachstehende Erläuterung der Mikrostufenverbindung. Ein Merkmal der Erfindung besteht darin, dass ein einzelner Strukturelementtyp vorteilhaft für alle Vermittlungsfunktionen und Stellen in einem Gestell verwendet werden kann, was zur Wirtschaftlichkeit in Design, Entwicklung und Produktion beiträgt. Es ist jedoch nicht erforderlich, dass ein einzelner Typ verwendet wird, und Auslegungen mit mehreren Strukturelementen können bei Bedarf ebenfalls in dieser Erfindung verwendet werden.
  • Der ASIC 20 weist 16 Anschlüsse auf, die in 1 von GL0 bis GL15 nummeriert sind. Nach einem Aspekt der Erfindung sind diese Anschlüsse generisch für die üblichen Typen von Fibre Channel-Anschlüssen F_Port, FL_Port und E_Port. Mit anderen Worten, jeder GL-Anschluss kann als einer dieser Typen funktionieren, je nachdem, an was er angeschlossen ist. Die Verwendung von generischen Anschlüssen bietet Vorteile im Hinblick auf die Flexibilität im Gebrauch, aber bei Bedarf können auch getrennte Anschlusstypen verwendet werden. Darüber hinaus können diese GL-Anschlüsse als ein spezieller Typ von Anschluss (nicht dem Fibre Channel-Standard entsprechend) dienen, der nachstehend als B_Port bezeichnet wird und für das Verlinken von Strukturelementen nützlich ist, wie nachstehend beschrieben.
  • Zur Illustration sind in 1 alle Anschlüsse GL0 bis GL15 so gezeigt, dass sie auf derselben Seite des ASIC 20 liegen. In anderen nachstehend beschriebenen Zeichnungen sind Gruppen von je acht Anschlüssen auf gegenüberliegenden Seiten eines ASIC gezeigt. Dies erfolgt lediglich zur einfacheren Darstellung in den Zeichnungen und impliziert keine Unterschiede im Design der Anschlüsse. Die tatsächliche Anordnung der Anschlüsse richtet sich selbstverständlich nach dem Hardware-Layout des ASIC.
  • Jeder der generischen Anschlüsse GL0 bis GL15 weist Übermittlungs- und Empfangsverbindungen zum Vermittlungscrossbar 50 auf. Eine Verbindung erfolgt über einen Empfangspuffer 52, der zum Empfangen und vorübergehenden Speichern eines Blocks während eines Routingvorgangs dient. Die andere Verbindung erfolgt über einen Übermittlungspuffer 54. Der Vermittlungscrossbar 50, der weiter unten in Zusammen hang mit 10 gezeigt und ausführlich beschrieben ist, umfasst praktisch mehrere Vermittlungscrossbars zur Handhabung bestimmter Arten von Daten und Datenfluss-Steuerungsinformationen. Für die Zwecke der Aufsichtsdarstellung in 1 sind diese Vermittlungscrossbars jedoch als ein einzelner Vermittlungscrossbar 50 gezeigt. Der Vermittlungscrossbar 50 ist ein verbindungsloser Crossbar (Paketvermittlung) mit bekanntem herkömmlichem Design in einer Größe zum Verbinden von 17 × 17 Pfaden. Dies dient zur Unterbringung der 16 GL-Anschlüsse plus einen Anschluss für eine Verbindung zu einem Struktur-Controller außerhalb des ASIC.
  • Bei den bevorzugten Ausführungsformen des hier beschriebenen Vermittlungsge stells ist der Struktur-Controller ein mittels Firmware programmierter Mikroprozessor, der auch als Eingabe-Ausgabe-Prozessor (IOP) bezeichnet wird. Der IOP 66 ist in 2 als Teil eines Vermittlungsgestells mit einem oder mehreren ASICs 20 gezeigt. Wie in 1 gezeigt, ist die bidirektionale Verbindung zum IOP über den Anschluss 67 geführt, der intern mit einem Steuerbus 60 verbunden ist. Der Übermittlungspuffer 56, der Empfangspuffer 58, das Steuerregister 62 und das Statusregister 64 sind ebenfalls mit dem Bus 60 verbunden. Der Übermittlungspuffer 56 und der Empfangspuffer 58 verbinden den internen verbindungslosen Vermittlungscrossbar 50 mit dem externen IOP, so dass er Blöcke aussenden oder empfangen kann. Die Funktion des Steuerregisters 62 besteht darin, Steuerungsinformationen vom IOP zu empfangen und zu speichern, damit der IOP die Merkmale oder Betriebskonfiguration des ASIC ändern kann, indem er Steuerwörter in das Register eingibt. Der IOP kann den Status des ASIC lesen, indem er verschiedene Codes überwacht, die durch Überwachung der Schaltungen auf dem ASIC (nicht gezeigt) in das Statusregister 64 gegeben werden.
  • 2 zeigt ein 16-Kanal-Vermittlungsgestell S2 mit einem ASIC 20 als Strukturelement. Das Gestell S2 umfasst den ASIC 20 und den IOP 66. Zusätzlich enthält es meist weitere Komponenten wie zum Beispiel eine Stromversorgung (nicht gezeigt). Die 16 GL-Anschlüsse GL0 bis GL15 des ASIC 20 entsprechen den 16 Kanälen Co bis C15. Falls aus irgendeinem Grund ein Gestell mit weniger Kanälen als der Anzahl der ASIC-Anschlüsse gewünscht wird, würden die nicht verwendeten Kanäle nicht nach außen geführt.
  • Wie in 2 gezeigt, weist jeder der Anschlüsse GL0 bis GL15 einen Parallel-Serien-/Serien-Parallel-Umsetzer (SERDES – Serialisierer/Deserialisierer) auf, mit dem er kommuniziert. Diese sind in der Zeichnung mit S0 bis S15 bezeichnet. Hierbei handelt es sich um herkömmliche Komponenten, die über normale Parallelschnittstellen mit den GL-Anschlüssen verbunden sind. Im Idealfall könnte die Serialisierer-/Deserialisierer-Funktion aus Gründen der Effizienz auf dem ASIC 20 implementiert werden. Die derzeitigen SERDES-Typen können jedoch allgemein zu viel Strom verbrauchen und zu starke Geräusche erzeugen, um sie in den Vermittlungs-ASIC zu integrieren. Aus diesen Gründen ist es besser, sie getrennt von dem ASIC, jedoch mit diesem verbunden auf einer kleinen Leiterplatte oder einem anderen Modul zu belassen. Wenn sich der Stromverbrauch und die Geräuschentwicklung der SERDES verbessern, können sie auf dem ASIC integriert werden.
  • Jeder GL-Anschluss weist auch einen optoelektrischen Umsetzer OE0 bis OE15 auf, der über serielle Leitungen mit seinem SERDES verbunden ist, um faseroptische Eingabe-/Ausgabeverbindungen bereitzustellen, wie dies in der Hochleistungs-Vermittlungstechnik allgemein bekannt ist. Die Umsetzer verbinden die Vermittlungskanäle C0 bis C15. Als Option können die Anschlüsse auch über Kupferpfade anstelle der optoelektrischen Umsetzer verbunden werden.
  • Während die Ausführungsform in 2 jeden der ASIC-Anschlüsse mit Verbindungen über SERDES zeigt, gibt es in der Praxis Gründe, weshalb einige Anschlüsse ohne SERDES betrieben werden. Wie bereits erwähnt, können diese GL-Anschlüsse als ein spezieller Typ von Anschluss dienen, der nachstehend als B_Port bezeichnet wird und für das Verlinken von Strukturelementen nützlich ist. Bei bestimmten Arten von Vermittlungstopologien mit mehreren ASICs ist es vorteilhaft, einen Anschluss auf einem ASIC mit dem Anschluss eines anderen ASIC im selben Gestell zu verbinden. In diesem Fall können die Anschlüsse als B_Ports dienen, und die SERDES für diese Anschlüsse können bei der Herstellung weggelassen werden, was zu Kosteneinsparungen führt. In diesem Fall sind in dem ROM für den IOP für das Gestell Informationen darüber gespeichert, dass bestimmte Anschlüsse B_Ports sind, was das Setzen von Steuerbits bewirkt, die die betreffende Anschlusslogik anweist, als B_Ports zu funktionieren. Der Hauptunterschied zwischen einem B_Port und einem F_Port sind Änderungen in den Taktsignalen aufgrund des Fehlens der SERDES. Ob eine Verbindung ohne SERDES möglich ist, ist im Allgemeinen von dem elektrischen Abstand zwischen den Anschlüssen und den Merkmalen der verwendeten Leiterplatte und Steckverbinder abhängig.
  • Um Vermittlungsgestelle mit mehr als 16 Kanälen bereitzustellen, können mehrere Strukturelemente in dem Gestell verwendet werden. Zwischen den mehreren Strukturelementen müssen bestimmte Einrichtungen für die Kommunikation vorgesehen werden, um vollständige Flexibilität bei der Adressierung zwischen allen Anschlüssen zu ermöglichen. Das Strukturelement nach der vorliegenden Erfindung bietet einzigartige und besonders vorteilhafte Verbindungstechniken für mehrere Strukturelemente mit deutlichen Verbesserungen in Leistung und Konfigurationsflexibilität im Vergleich zur bisherigen Technik. Vermittlungen nach dem Stand der Technik verwenden einen Bus, der oft als Backplane bezeichnet wird, zur Verbindung verschiedener Anschlussschaltungen in einem Vermittlungssystem. Auf einem Chip sind zum Beispiel in der Regel mehrere Anschlüsse vorgesehen, und mehrere Chips werden in der Vermittlung verwendet, um die gewünschte Anzahl von Gestellanschlüssen zu bilden. Diese Anschluss-Chips sind alle mit dem Backplane-Bus verbunden, und auf diese Weise können Verbindungen zwischen Anschlüssen auf verschiedenen Chips hergestellt werden. Diese Art von bekannter Technik war bis zu einem gewissen Punkt erfolgreich. In solchen Vermittlungen wird jedoch der Backplane-Bus mit zunehmender Anzahl von Anschlüssen zu einem kritischen einschränkenden Faktor im Hinblick auf Kosten und Leistung. Aufgrund dieser Einschränkungen erreichen Ausführungen mit Backplane-Bus nach dem Stand der Technik mit heutigen Komponenten eine praktische Grenze bei etwa 32 Kanälen pro Gestell. Darüber hinaus wird das Bus-Design zu einem die Bandbreite einschränkenden Faktor. Im Vergleich dazu können die Strukturelemente und Linkverbindungstechniken nach der vorliegenden Erfindung ohne weiteres Vermittlungen mit bis zu 256 Kanälen ermöglichen.
  • Diese Vorteile der vorliegenden Erfindung werden durch spezielle Linkverbindungskonfigurationen ermöglicht, die nachstehend beschrieben werden, sowie durch die Verwendung moderner Adressierungstechniken, die ohne weiteres eine große Vielzahl derartiger Linkverbindungstopologien unterstützen können. In Vermittlungsgestellen nach der vorliegenden Erfindung gibt es keinen Backplane-Bus. Stattdessen erfolgen alle Verbindungen unter Verwendung der verfügbaren Anschlüsse auf den Strukturelementen als Verbindungslinks. Ermöglicht wird dies durch die flexiblen Adressierungstechniken, die mit den einzelnen Anschlüssen auf den Strukturelementen möglich sind.
  • Die von der vorliegenden Erfindung unterstützten Linkverbindungstechniken umfassen mehrere Arten, die nachstehend als Kaskaden-, Gitter- und Mikrostufenlinkverbindungen bezeichnet werden, sowie bestimmte Hybridkombinationen davon.
  • Die Kaskadenlinkverbindung ist in 3 gezeigt. Das Vermittlungsgestell S3 weist vier Strukturelemente M0 bis M3 auf. Außerdem weist es einen oder mehrere IOPs 66 auf. Je nach Größe und Anzahl der Strukturelemente auf dem Gestell können einer oder mehrere IOPs vorgesehen sein. Jedes Strukturelement könnte auch seinen eigenen IOP aufweisen, oder ein einzelner IOP könnte mit mehr als einem Strukturelement kommunizieren. Daher ist bei den Zeichnungen, die verschiedene Vermittlungsgestelle zeigen, zu beachten, dass der gezeigte einzelne IOP auch mehrere IOPs darstellen könnte.
  • Diese Strukturelemente in 3 weisen jeweils acht Anschlüsse auf, die als Gestellkanäle, nummeriert von C0 bis C31, in Gruppen zu je acht herausgeführt sind. Die anderen Anschlüsse der Strukturelemente werden für die Kaskadenlinkverbindung verwendet. Im Einzelnen weist jedes der Strukturelemente M0 bis M3 vier Anschlüsse auf, die mit ihrem benachbarten Strukturelement verbunden sind. So weist M0 zum Beispiel vier Anschlüsse auf, die mit M1 verbunden sind, das wiederum vier Anschlüsse aufweist, die mit M2 verbunden sind usw. Die vier Anschlüsse an jedem Ende der Kaskade können unbelegt bleiben oder zu dem Strukturelement am anderen Ende geschleift werden, wie gezeigt. Theoretisch ist nur eine Verbindung zum jeweiligen Nachbarn unbedingt erforderlich, aber aus Gründen der Bandbreite und Leistung ist es besser, vier solcher Links vorzusehen. Auf diese Weise kann jeder Kanal mit jedem anderen Kanal kommunizieren, entweder direkt im Falle eines Ziels auf demselben Strukturelement oder indirekt durch Kaskadenverbindung für Ziele auf anderen Strukturelementen. Durch die nachstehend beschriebenen Adressierungstechniken kann jeder Kanal jeden anderen Kanal auf dem Gestell S3 adressieren. Zum Adressieren eines anderen Kanals auf demselben ASIC kann die Vermittlung intern in dem ASIC erfolgen. Zum Adressieren eines Kanals auf einem anderen ASIC muss die Vermittlung eine oder mehrere der Kaskadenlinkverbindungen benutzen, um den gewünschten Kanal zu erreichen.
  • Obwohl 3 ein 32-Kanal-Gestell zeigt, ist zu erkennen, dass die Anzahl der Strukturelemente und Kanäle nach Belieben erweitert werden kann, indem einfach weitere Strukturelemente kaskadenartig hinzugefügt werden. Weil jedes hinzugefügte Strukturelement eine Linkverbindung mit seinem Nachbarn herstellen kann, gibt es kei ne mathematische Grenze für die Anzahl der Elemente, die hinzugefügt werden können. Im Kontext der Fibre Channel-Vermittlung beträgt die Grenze jedoch 256 Kanäle, was einer vollen Domain entspricht. Aus Leistungsgründen werden Kaskadenlinkverbindungen jedoch vermutlich nicht für große Vermittlungen verwendet, und zwar wegen der Verzögerungen aufgrund der großen Anzahl von Sprüngen im ungünstigsten Fall bis zum entferntesten Strukturelement. Die Vorteile der Kaskadenlinkverbindung sind Einfachheit und niedrige Kosten. Der Nachteil ist eine geringe Leistung im Falle von großen Vermittlungen mit vielen Kanälen. Je nach Anwendung und Art der zu verbindenden Datengeräte kann die Kaskadenlinkverbindung jedoch eine gute Wahl sein. Die sorgfältige Auswahl der Geräteverbindung kann zur Vermeidung von Leistungsproblemen beitragen. Geräte, die erwartungsgemäß häufig miteinander kommunizieren, können mit Kanälen im selben Strukturelement verbunden werden, während solche, die vermutlich nur sporadisch miteinander kommunizieren werden, auf verschiedene Strukturelemente verteilt werden können.
  • Die Gitterlinkverbindung ist in 4 gezeigt. Das Vermittlungsgestell S4 weist vier Strukturelemente M0 bis M3 auf. Diese Strukturelemente weisen jeweils acht Anschlüsse auf, die als Gestellkanäle, nummeriert von C0 bis C31, in Gruppen zu je acht herausgeführt sind. Die anderen Anschlüsse der Strukturelemente werden für die Gitterlinkverbindung verwendet. Im Einzelnen ist jedes der Strukturelemente M0 bis M3 direkt mit jedem anderen Strukturelement verbunden. Aus Gründen der Bandbreite und Leistung sind vorzugsweise mehrere Links zu jedem anderen Strukturelement vorgesehen. Die Anzahl dieser Links ist durch die Anzahl der verfügbaren Anschlüsse begrenzt. Im Falle von vier 16-Kanal-Strukturelementen sieht eine bevorzugte Topologie so aus, dass jedes Strukturelement drei Links aufweist, die mit zweien der Strukturelemente verbunden sind, sowie zwei Links zu dem anderen Strukturelement. Die drei Verbindungen können zum Beispiel vorteilhaft zum Anschließen von Geräten an die Kanäle auf der Grundlage der erwarteten Nutzung bestimmter Kanäle verwendet werden. Die Adressierungstechniken nach der vorliegenden Erfindung können ebenfalls verwendet werden, um jeden Kanal in jeder Verbindungstopologie zu adressieren.
  • Der Vorteil der Gitterlinkverbindung ist die höhere Leistung gegenüber der Kaskadenlinkverbindung, da jedes Strukturelement direkt mit jedem anderen verbunden ist. Der Nachteil ist eine Begrenzung der maximalen Vermittlungsgröße bei Verwendung der Gitterlinkverbindung. Bei Verwendung von 16-Kanal-Strukturelementen beträgt das Maximum 72 Kanäle, was durch die Anzahl der Strukturelementanschlüsse begrenzt ist, die für Linkverbindungen zu jedem anderen Strukturelement verfügbar sind.
  • Eine dritte und sehr wichtige Art der Linkverbindung, die nachstehend als Mikrostufenverbindung bezeichnet wird, ist in 5 bis 7 gezeigt. 5 zeigt ein 32-Kanal-Gestell S5 mit sechs Strukturelementen M0 bis M3 und M20 bis M21. Der terminologischen Einfachheit halber werden M0 bis M3 als vordere Reihe bezeichnet, in dem Sinne, dass sie mit den Gestellkanälen verbunden sind, und M20 bis M21 werden als hintere Reihe bezeichnet, in dem Sinne, dass sie die Mikrostufenverbindung für die Elemente in der vorderen Reihe bereitstellen. Wie bereits erwähnt, sind alle vorzugsweise identisch. Die als Mikrostufenlinks verwendeten Anschlüsse können jedoch als B_Ports programmiert werden, wodurch die Kosten für die SERDES für diese Anschlüsse gespart werden.
  • Die Strukturelemente M0 bis M3 weisen jeweils acht Anschlüsse auf, die als Gestellkanäle, nummeriert von C0 bis C31, in Gruppen zu je acht herausgeführt sind, entsprechend den vorderen Strukturelementen. Die übrigen acht Anschlüsse jedes der vorderen Strukturelemente sind mit den hinteren Strukturelementen als Mikrostufenlinks verbunden. Im Einzelnen weist jedes vordere Strukturelement vier Anschlüsse auf, die mit zwei hinteren Strukturelementen M20 bis M21 verbunden sind. Auf diese Weise weist jedes vordere Strukturelement mehrere Pfade zu jedem anderen Element in der vorderen Reihe auf. Mit dem nachstehend beschriebenen Adressformat kann jeder Kanal jeden anderen Kanal im Gestell S5 adressieren.
  • Der Vorteil der Mikrostufenlinkverbindung ist die höhere Leistung im Vergleich zur Kaskadenlinkverbindung und die höhere Anzahl von Kanälen pro Gestell im Vergleich zur Gitterlinkverbindung. Ein Nachteil im Falle eines kleinen 32-Kanal-Gestells ist der, dass zusätzliche Strukturelemente erforderlich sind, nämlich sechs anstelle von vier bei den Gitter- oder Kaskadenausführungen. Dies wird jedoch durch eine bessere Leistung mit mehr möglichen Verbindungen ausgeglichen sowie durch die Tatsache, dass die Mikrostufenverbindung größere Vermittlungen ermöglicht. Außerdem ist im Vergleich zu einer Vermittlung mit Backplane-Bus nach der bisherigen Technik eine Vermittlung mit Mikrostufenlinkverbindung deutlich unkomplizierter und preiswerter, und sie unterliegt nicht den Leistungseinschränkungen aufgrund der Backplane.
  • Bei dem 64-Kanal-Gestell S6 in 6 werden die Vorteile der Mikrostufenlinkverbindung noch deutlicher. Das Gestell S6 weist 12 Strukturelemente auf. Die acht Elemente M0 bis M7 bilden die vordere Reihe, und jedes dieser Elemente weist acht mit Kanälen verbundene Anschlüsse für insgesamt 64 Kanäle C0 bis C63 auf. Jedes Strukturelement in der vorderen Reihe weist acht andere Anschlüsse auf, die mit den Strukturelementen M20 bis M23 in der hinteren Reihe verbunden sind. Im Einzelnen weist jedes Strukturelement in der vorderen Reihe zwei Anschlüsse auf, die mit jedem Strukturelement in der hinteren Reihe verbunden sind. (Der Übersichtlichkeit halber sind in 6 nur einige Verbindungen gezeigt.) Während es nur zwei Pfade von jedem vorderen Strukturelement zu jedem hinteren Strukturelement gibt, verglichen mit den vier Pfaden in dem 32-Kanal-Gestell, gibt es jetzt doppelt so viele hintere Strukturelemente, so dass jedes vordere Strukturelement immer noch acht mögliche Pfade zu jedem anderen Strukturelement in der vorderen Reihe aufweist, genau wie in dem 32-Kanal-Gestell. Die Mikrostufenverbindung hat in diesem Punkt einen klaren Vorteil gegenüber einer herkömmlichen Ausführung, die im Vergleich einen Backplane-Bus zum Verbinden aller acht kanalverbundenen Strukturelemente vorsehen müsste.
  • 7 zeigt ein 128-Kanal-Gestell S7 mit Mikrostufenverbindung. Das Gestell S7 weist 24 Strukturelemente auf. Davon bilden 16 Strukturelemente, M0 bis M15, die vordere Reihe und weisen jeweils acht mit Kanälen verbundene Anschlüsse für insgesamt 128 Kanäle C0 bis C127 auf. Die anderen acht Anschlüsse jedes vorderen Strukturelements sind jeweils mit den hinteren Strukturelementen M20 bis M27 verbunden. Im Einzelnen ist bei jedem Strukturelement ein Anschluss mit einem hinteren Strukturelement verbunden. (Der Übersichtlichkeit halber sind in 7 nur einige Verbindungen gezeigt.) Während es nur einen Pfad von jedem vorderen Strukturelement zu jedem hinteren Strukturelement gibt, verglichen mit den zwei Pfaden in dem 64-Kanal-Gestell, gibt es wiederum doppelt so viele hintere Strukturelemente, so dass jedes vordere Strukturelement immer noch acht mögliche Pfade zu jedem anderen Strukturelement in der vorderen Reihe aufweist, genau wie in dem 32- und 64-Kanal-Gestell.
  • Die Mikrostufenverbindung hat in diesem Punkt einen klaren Vorteil gegenüber einer herkömmlichen Ausführung, die im Vergleich einen Backplane-Bus zum Verbinden aller 16 kanalverbundenen Strukturelemente vorsehen müsste. Es stellt sich die Frage, ob eine solche Backplane auch zu vertretbaren Kosten oder mit vernünftiger Leistung vorgesehen werden könnte. Ein weiterer Vorteil der Mikrostufenverbindung ist der, dass die Verbindungen zwischen verschiedenen Strukturelementen passiv sind, während ein Backplane-Verbindungsbus viele aktive Komponenten aufweisen müsste.
  • Dadurch ergeben sich höhere Kosten und auch ein Mangel an Flexibilität. Weil die Linkverbindungen selbst bei der vorliegenden Erfindung passiv sind, können die Verbindungsmuster in dem Gestell vorgesehen werden, und die Strukturelemente können austauschbar sein.
  • Mit einem 16-Kanal-Strukturelement stellt das 128-Kanal-Gestell das Maximum für die direkte Mikrostufenverbindung dar, denn es verwendet alle verfügbaren acht Anschlüsse für die acht hinteren Strukturelemente. Andere Techniken können jedoch zusammen mit der Mikrostufenverbindung verwendet werden, um eine größere Anzahl von Kanälen bereitzustellen. 8 zeigt ein 256-Kanal-Gestell S8, das dem vollen Fibre Channel Domain-Adressraum entspricht.
  • Das Gestell S8 ist mit 40 Strukturelementen und einer Hybridform der Linkverbindung gebildet, die eine Kreuzung zwischen Mikrostufen- und Kaskadenverbindung ist. Die 32 Strukturelemente M0 bis M31 bilden die vordere Reihe und weisen jeweils acht mit Kanälen verbundene Anschlüsse für insgesamt 256 Kanäle C0 bis C255 auf. Die acht Strukturelemente M200 bis M207 bilden die hintere Reihe. Aufgrund von Einschränkungen bezüglich der Anzahl von Anschlüssen ist jedes Strukturelement in der vorderen Reihe nur mit jedem zweiten Strukturelement in der hinteren Reihe in einer modifizierten Mikrostufenlinkverbindung verbunden. In einer bevorzugten Form weisen die geraden Strukturelemente in der vorderen Reihe jeweils einen Anschluss auf, der mit einem Anschluss auf jedem geraden Strukturelement in der hinteren Reihe verbunden ist, und die ungeraden Strukturelemente in der vorderen Reihe weisen jeweils einen Anschluss auf, der mit einem Anschluss auf jedem ungeraden Strukturelement in der hinteren Reihe verbunden ist. (Der Übersichtlichkeit halber sind in 8 nur einige Verbindungen gezeigt.) Darüber hinaus weist jedes vordere Strukturelement M0 bis M31 zwei Anschlüsse auf, die in Kaskadenform mit beiden Nachbarn verbunden sind. Die Strukturelemente M0 und M31 am Ende weisen zwei Anschlüsse auf, die unbelegt bleiben oder zum anderen Ende zurückgeschleift werden können, so dass M0 und M31 Kaskadennachbarn werden.
  • Auf diese Weise verbunden kann jeder der 256 Kanäle mit jedem anderen Kanal kommunizieren. Sofern im selben Strukturelement, kann die Verbindung intern in dem Strukturelement hergestellt werden. Für Verbindungen zu Kanälen auf anderen Strukturelementen in der vorderen Reihe kann die Vermittlung die Mikrostufenlinkverbindungen zu den Strukturelementen in der hinteren Reihe oder die Kaskadenlinkverbin dungen zwischen den Strukturelementen in der vorderen Reihe oder eine Kombination der beiden verwenden. Befindet sich der Zielkanal zum Beispiel auf einem benachbarten Strukturelement, kann die Kaskadenlinkverbindung verwendet werden. Befindet sich der Zielkanal nicht auf einem benachbarten Strukturelement, kann die Mikrostufenlinkverbindung zur hinteren Reihe verwendet werden. Für bestimmte Fälle ist eine Kombination von Mikrostufen- und Kaskadenverbindung nötig.
  • Betrachtet man den Fall der Mikrostufenlinkverbindung, kann mit einer größeren Anzahl von Anschlüssen pro Strukturelement ein Gestell entsprechend größer ausgeführt werden. Die maximale Anzahl von Kanälen, die mit Mikrostufenlinkverbindungen von Strukturelementen unterstützt werden kann, ist abhängig von der Anzahl der Anschlüsse pro Element. Bei Mikrostufenverbindungen von Strukturelementen mit X Anschlüssen pro Element kann ein Vermittlungsgestell bis zu n Kanäle unterstützen, wobei
    Figure 00170001
    ist. Dies gilt für die Mikrostufenverbindung allein: kombiniert mit anderen Techniken können zusätzliche Kanäle bereitgestellt werden.
  • Bei der Betrachtung der Beziehung
    Figure 00170002
    müssen Auslegungsentscheidungen in der Anwendung der Mikrostufenverbindung getroffen werden. Eine geringere Anzahl von Anschlüssen pro Strukturelement hat den Vorteil einer geringeren Komplexität des Strukturelements, aber auch den Nachteil einer geringeren Anzahl möglicher Kanäle in Mikrostufen-Anwendungen. In gleicher Weise kann eine größere Anzahl von Anschlüssen pro Strukturelement die Mikrostufenverbindung für Gestelle mit mehr Kanälen ermöglichen, aber auf Kosten der Komplexität bei der Auslegung des Strukturelements, wobei sich dies in den Herstellungskosten oder der Leistung niederschlagen kann.
  • Ein Strukturelement mit acht Anschlüssen könnte zum Beispiel maximal ein 32-Kanal-Gestell ergeben. Während dies nützlich ist, ergibt sich kein sehr großes Gestell, und Gestelle dieser Kapazität können auch mit bekannten Techniken hergestellt werden. Wird ein Strukturelement mit 16 Anschlüssen vorgesehen, wie in den vorstehenden Beispielen beschrieben, ergeben sich Gestelle mit bis zu 128 Kanälen (und mehr mit Hybridtechniken). Dies ist eine wesentliche Verbesserung gegenüber herkömmlichen Backplane-Ausführungen, die im Vergleich dazu mit heutigen Komponenten eine praktische Grenze bei etwa 32 Kanälen pro Gestell erreichen. Ein Strukturelement mit 32 Anschlüssen könnte ein 512-Kanal-Gestell ergeben. Dies kann jedoch aus einer Reihe von Gründen praktisch nicht wünschenswert sein. Die Komplexität eines Strukturelements mit 32 Anschlüssen kann zu möglichen Kompromissen bei der Auslegung und Leistung des Strukturelements führen. Der Bedarf für ein einzelnes Gestell mit 512 Kanälen ist fraglich angesichts der vermutlichen Abmessungen und der Tatsache, dass sich Systeme mit dieser Anzahl von Kanälen flexibler durch mehrere kleinere Einheiten bereitstellen lassen.
  • Es ist natürlich möglich, Strukturelemente mit einer anderen Anzahl von Anschlüssen, nicht nur mit Zweierpotenzen, zum Beispiel mit 12 oder 20 Anschlüssen herzustellen. In der Tat scheint eine Anzahl von etwa 12 Anschlüssen ein Optimum an Effizienz in Bezug auf Geschwindigkeit und Größe zu bieten. In Anbetracht der Verbreitung von binären oder Byte-basierten Adressierungssystemen sind solche anderen Werte jedoch vermutlich nicht die beste Wahl. Dies gilt insbesondere für die Verwendung in Fibre Channel-Vermittlungen zur Wahrung der Kompatibilität mit bestehenden Adressfeldern.
  • Aus den vorstehend diskutierten Beispielen ist ersichtlich, dass eine große Zahl von unterschiedlichen Vermittlungstopologien unter Verwendung von Kombinationen der Strukturelemente und Linkverbindungen nach der vorliegenden Erfindung möglich ist. In der Praxis muss auch ein umfassendes, aber dennoch einfaches und flexibles Adressierungs- und Blocksteuerungsmodell bereitgestellt werden, um das Potenzial dieser Topologien nutzen zu können. Die vorliegende Erfindung stellt eine Adressierung zur Durchführung dieser Aufgaben bereit.
  • 9A, B und C zeigen, wie das Fibre Channel D_ID-Adressfeld mit 24 Bit zum Adressieren innerhalb der mittels Links verbundenen Gestelle nach der vorliegenden Erfindung verwendet wird. Das definierte Fibre Channel D_ID-Feld ist in 9A gezeigt. Die niederwertigen Bits 0 bis 7 werden zum Adressieren innerhalb einer ausgesuchten Schleife (AL_PA in der Fibre Channel-Terminologie) verwendet. Die Bits 8 bis 15 werden für den Fibre Channel-Bereich verwendet, das heißt die Anschlussnummer innerhalb einer Domain, und die Bits 16 bis 23 werden für die Domain oder das Gestell als das Adressierungskonzept höchster Ordnung verwendet.
  • In der vorliegenden Erfindung werden die Bereichsbits des D_ID-Felds als die Anschlussadresse in mittels Links verbundenen Gestellen verwendet. Die Bits für die ausgesuchte Schleife und für die Domain entsprechen unverändert dem Fibre Channel-Standard. 9B zeigt, wie das Bereichsfeld in der vorliegenden Erfindung bei einem 8- oder 16-Kanal-Gestell verwendet wird. In beiden Fällen ist nur ein Strukturelement mit 16 Anschlüssen mit seinem ASIC mit 16 Anschlüssen vorgesehen. Daher können die Bits 8 bis 11 zum Adressieren der 16 Anschlüsse verwendet werden. Die Bits 12 bis 15 werden nicht benötigt.
  • 9C zeigt, wie das Bereichsfeld in der vorliegenden Erfindung bei einem 32-, 64-, 128- oder 256-Kanal-Gestell verwendet wird. In diesen Fällen gibt es mehrere Strukturelemente, aber von jedem Strukturelement werden nur acht seiner Anschlüsse als Kanäle verwendet (die übrigen acht Anschlüsse werden in Linkverbindungen verwendet). Daher sind nur die drei Bits 8 bis 10 für die Kanal-Anschlussnummer im ASIC nötig. Weil jedoch bis zu 32 Strukturelemente (ASICs) in der vorderen Reihe vorgesehen sein können, sind für diese fünf Adressbits 11 bis 15 nötig.
  • Auf diese Weise kann das normale Fibre Channel D_ID-Adressfeld verwendet werden, um jeden der 256 Kanäle in dem in 8 gezeigten Gestell einzeln zu adressieren. Selbstverständlich gilt dies auch für die kleineren Gestelle in 3 bis 7, außer dass in diesen Fällen nicht alle Bits verwendet werden. Ein Fibre Channel-Block, der auf einem beliebigen Kanal erscheint, kann daher gezielt jeden anderen Kanal in dem Gestell adressieren.
  • Mit dem Strukturelement mit 16 Anschlüssen und den Adressierungs- und Steuerungstechniken nach der Erfindung können bis zu 256 Domains mit jeweils 256 Kanälen für insgesamt 65.536 Kanäle (abzüglich der Anzahl der als Verbindungsleitungen verwendeten Kanäle) unterstützt werden.
  • Nachstehend folgt eine Zusammenfassung dessen, wie die Adressfelder für die Blocksteuerung verwendet wird. Wenn eines der Gestelle in 3 bis 8 allein verwendet wird, befinden sich alle Kanäle im Netz in derselben Domain. Ein mittels Links verbundenes Gestell nach 3 bis 8 kann jedoch über eine Mehrstufenverbindung mit anderen Gestellen verbunden sein, wobei die verschiedenen Gestelle in diesem Fall unterschiedliche Domainnummern haben. Bei dieser Mehrstufenverbindung können die einzelnen Gestelle mittels Kaskaden-, Gitter- oder Kreuzverbindung oder einer anderen Verbindung verbunden sein. Wird ein Block als eine Eingabe an einem Kanalanschluss präsentiert, wird zuerst die Domain des D_ID untersucht. Ist die Zieldomain dieselbe wie die Eingabeanschluss-Domain, bleibt der Block in dem Gestell; ist sie unterschiedlich, wird er an ein anderes Gestell geleitet; im Einzelnen wird er an den richtigen Kanal geleitet, der mit dem nächsten Gestell entsprechend der aktuellen Systemtopologie ver bunden ist. Danach kontrolliert der Eingabeanschluss die ASIC-Nummer. Stimmt der Ziel-ASIC mit der ASIC-Nummer des Eingabeanschlusses überein, bleibt der Block in dem ASIC und wird durch den Anschlussnummernteil des D_ID einfach an den entsprechenden Anschluss geleitet. Natürlich wird er am Zielanschluss, wenn dort eine ausgesuchte Schleife ist, durch den AL_PA-Teil der Adresse weitergeleitet.
  • Ist die Domain korrekt, die Ziel-ASIC-Nummer jedoch nicht dieselbe wie der Eingabekanal-ASIC, muss der Eingabeanschluss die Route zur Ziel-ASIC-Nummer nachschlagen. Weil mehrere Links zwischen den Strukturelementen vorgesehen sind, wie in 3 bis 8 gezeigt, gibt es mehrere Routen zu dem gewünschten Strukturelement. In 6 könnte zum Beispiel ein Anschluss im Strukturelement M0 unter Verwendung jeder der acht Links von M0 und jeder der Links zu M1 durch das Strukturelement M20 oder M21 zu einem Anschluss an einem Anschluss im Strukturelement M1 geführt werden. Ein einzelner Pfad von einem bestimmten Anschluss zu einem anderen bestimmten Anschluss, bezeichnet als ein virtueller Kanal, kann bei der Einrichtung eindeutig ausgewählt und programmiert werden, so dass dies im Betrieb der einzige Pfad für die betreffende Verbindung sein wird, um die richtige Übertragungsreihenfolge der Blöcke zu gewährleisten. Sobald der Block am Ziel-ASIC ankommt, erfolgt das Routing durch die Anschlussnummer, wie vorstehend beschrieben.
  • 10 zeigt eine weitere Ansicht des ASIC 20 in 1 mit mehr Details, einschließlich der Crossbars 120 bis 123. In 1 sind die Crossbars zusammenfassend als ein einzelner Funktionsblock mit dem Bezugszeichen 50 versehen. In der detaillierten Ansicht in 10 ist zu erkennen, dass diese Crossbarfunktion eigentlich von vier getrennten Vermittlungscrossbars bereitgestellt wird. Dies sind der Blockkennzeichencrossbar 120, der Blockzustandscrossbar 121, der Blockanfragecrossbar 122 und der Zustands-/Blockübermittlungscrossbar 123. Darüber hinaus zeigt 10 einen Eingabelink und einen Ausgabelink sowie die damit verbundene Adressverarbeitung und Blocksteuerung. Jeder ASIC weist 16 solcher Paare von Eingabe-/Ausgabelinks auf. Der Übersichtlichkeit halber ist in der Zeichnung jedoch nur ein Paar gezeigt. Die übrigen 15 Paare sind in gleicher Weise mit den Crossbars 120 bis 123 verbunden, ebenso wie der Anschluss zum IOP. Die Crossbars 120 bis 123 werden zusammen mit dem Steuerungssystem verwendet, um jeden Block zu dem (den) gewünschten Ziel(en) zu leiten, wie nachstehend beschrieben.
  • Das Bezugszeichen 101 (DES) bezeichnet den Deserialisiererabschnitt des SERDES Sn in 2 und das Bezugszeichen 131 (SER) den Serialisiererabschnitt. Diese sind mit den entsprechenden Datenlink-Eingabe- und Datenlink-Ausgabe-Optokopplern verbunden. Der DES 101 setzt ankommende serielle Linkdaten in mit den Fibre Channel-„Komma"-Zeichen synchronisierte parallele 10-Bit-Daten um und gibt die Daten an die Empfangs-Pipe (RCVR) 102 weiter. Der Empfänger RCVR empfängt parallele 10-Bit-10-B-Daten von dem DES und demultiplext sie in 20-Bit-Daten, decodiert 10B-Daten zu 8B-Daten mit Fehlerprüfung und fügt ein Paritätsbit hinzu. Darüber hinaus führt der RCVR zahlreiche Fibre Channel-1- und -2-Funktionen wie zum Beispiel das Erkennen von Blockanfang, Blockende, Freizuständen, R_RDYs und dergleichen durch, die hier nicht im Detail erläutert sind, da es sich um Standardfunktionen handelt. Die vom RCVR 102 empfangenen Blöcke werden schließlich in den Empfangspuffer (RBUF) 115 geschrieben (mit Ausnahme bestimmter Fibre Channel AL-Blöcke). Der RCVR 102 ist auch mit dem Glättungs-FIFO (SMF) 103 verbunden, der durch FC_AL geforderte Glättungsfunktionen ausführt, um Taktfrequenzschwankungen zwischen den entfernten Übermittlungs- und lokalen Empfangsgeräten auszugleichen.
  • Das Bezugszeichen 104 bezeichnet den Blockeingabepfad. Alle Blöcke, die an diesem Anschluss der Vermittlungsstruktur ankommen, folgen diesem Pfad, um in den RBUF 115 geschrieben zu werden, im Gegensatz zu Blöcken, die dem AL-Pfad 105 folgen und auf derselben Verbindung zurückübertragen werden. Der Pfad 105 wird verwendet, wenn der Link im AL-Überwachungs- oder AL-Bypassmodus ist, wie durch FC_AL angegeben. In diesem Fall werden alle auf dem Link empfangenen Daten auf dem Link zurückübertragen, mit Ausnahme des Fibre Channel Ordered Set, der durch den SMF gelöscht oder eingefügt wird.
  • Der CRC-Prüfer (CRC) 106 verarbeitet die in die Struktur eingegebenen Blöcke weiter, indem die CRC- und Verarbeitungsfehler entsprechend den FC_PH-Regeln kontrolliert werden. Danach gibt er die Blöcke an den RBUF 115 weiter, wo sie später an den entsprechenden Ausgabelink geleitet werden.
  • Auch die Steuerungszustandsmaschine (SSM) 107 empfängt den Block und bestimmt, an welches der 17 möglichen Ziele in der Struktur (16 GL_Ports und der Struktur-Controller) der Block weitergeleitet werden muss. Die SSM erzeugt eine 17-Bit-Zielmaske mit einem Bit für jedes Ziel. Jedes auf 1 gesetzte Bit gibt ein gültiges Ziel an, und es können mehrere Bits gesetzt sein, da es mehrere Ziele für denselben Block gibt.
  • Die SSM 107 führt diese Bestimmung anhand von Informationen durch, die in dem Alias-Cache (AC) 108, dem nativen Kennungsregister (NID) 109, der Anschlusssteuerungstabelle (PST) 113, der ASIC-Steuerungstabelle (AST) 112, der Domainsteuerungstabelle (DST) 111 und dem Topologieregister (TOP) 110 enthalten sind. Alle Tabellen werden vom IOP auf der Basis der Topologie der vorhandenen Vermittlungsstruktur geschrieben, so dass die richtigen Ausgabepfade für die gewünschten Zielanschlussadressen gewählt werden.
  • Der AC 108 speichert ausgewählte Adressen zur Unterstützung der Fibre Channel-Alias-Adressfunktion. Der AC 108 stellt das komplette Hardware-Routing für Ausstrahlungs- und Multicastfunktionen sowie alle anderen Fibre Channel-Alias-Funktionen bereit. Für Fibre Channel-Alias-Funktionen ist D_ID ein Wert oder ein Befehl und keine Adresse. Der AC ist ein Cache mit mehreren Einträgen, der 24-Bit-D_ID-Werte, drei Bits für den Vergleich wichtiger Kennungs- oder ID-Felder für Domain, Bereich und Anschluss für zusätzliche Flexibilität und eine 17-Bit-Zielmaske enthält. Im Betrieb vergleicht die SSM die Block-D_ID mit allen Einträgen im AC; wird eine Übereinstimmung mit einem Eintrag festgestellt, wird die zugehörige Zielmaske für die Steuerung verwendet. Die Anzahl der AC-Einträge ist eine Implementierungsoption.
  • Gibt es keine Übereinstimmung im AC 108, steuert die SSM bei Unicast-Funktionen mit Hilfe von TOP-, NID-, DST-, AST- und PST-Befehlen, wie nachstehend beschrieben.
  • NID 109 ist ein programmierbarer 16-Bit-Wert, der die native Kennung des jeweiligen GL_Ports angibt und die native Domainnummer, Bereichsnummer und Anschlussnummer liefert. Er wird zum Vergleich mit der Block-D_ID (Bits 23:16) beim Routing durch Parsen der Block-D_ID verwendet.
  • TOP 110 ist ein programmierbarer 2-Bit-Wert, der die Position dieses betreffenden ASIC in einer Topologie angibt, um der SSM anzuzeigen, wie die Block-D_ID beim Routing durch die Steuerungstabellen zu parsen ist.
  • Die Domainsteuerungstabelle (DST) 111 ist eine programmierbare Lookup-Tabelle mit einem Eintrag für jeden einzelnen aller unterstützten Domainwerte. Jeder Eintrag enthält ein 4-Bit-Zielfeld, das angibt, über welchen Chip-Pfad die betreffende Domain zu erreichen ist, und ein 1-Bit-Gültigkeitsfeld, das angibt, ob die betreffende Domain existiert oder in dem konfigurierten System verfügbar ist. Die DST-Tabelle wird konsultiert, wenn die Block-D_ID eine andere Domainnummer als die NID angibt. Die Anzahl der unterstützten Domainwerte ist eine Implementierungsoption.
  • Das Gültigkeitsbit für die DST kann verwendet werden, um eine sehr praktische Form des harten Verzonens zu ermöglichen. Das Gültigkeitsbit würde gelöscht, wenn die Domain in einem bestimmten Netz überhaupt nicht existiert; zusätzlich kann das Gültigkeitsbit gelöscht werden, wenn die Domain existiert, aber für diesen betreffenden Kanal nicht verfügbar sein soll. Aus Sicherheitsgründen ist es in einigen Netzinstallationen wichtig, dass bestimmte Kanäle oder Gruppen von Kanälen von der Kommunikation zu oder von bestimmten anderen Kanälen oder Gruppen ausgeschlossen sind. Die Systemadministratoren benötigen einen Mechanismus, um sicherzustellen, dass bestimmte Benutzer oder Geräte, die mit dem Netz verbunden sind, keinen Zugriff auf bestimmte Kanäle und die daran angeschlossenen Geräte erhalten. Eine vollständige physikalische Trennung ist möglicherweise nicht erwünscht, weil es trotzdem wichtig sein kann, dass bestimmte Kanäle an andere senden können, während das Senden in entgegengesetzter Richtung verhindert wird. In Vermittlungsnetzen nach der bisherigen Technik wurde dieses Verzonen realisiert, indem die Struktur-Controller programmiert wurden, die Domains und Adressen im Fibre Channel-Alias-Server zu kontrollieren und den Zugang von und zu bestimmten Kanälen auf dieser Grundlage zu gestatten oder zu verweigern. Benutzer von mit dem Netz verbundenen Geräten könnten jedoch unter bestimmten Umständen durch bewusstes „Hacking", Scannen aller Adressen oder Ändern von Namen im Alias-Server Zugriff auf gesperrte Geräte erhalten. Das mit der vorliegenden Erfindung bereitgestellte harte Verzonen kann nicht durch einen mit einem Kanal verbundenen Benutzer geändert werden. Dies ist nur einem Systemadministrator möglich, indem er das Gültigkeitsbit für bestimmte Domains im Voraus in die DST von ausgewählten Strukturelementen lädt. Durch diese Auswahl können bestimmte Kanalgruppen durch hartes Verzonen am Senden an Zielkanäle in bestimmten Domains gehindert werden.
  • Die ASIC-Steuerungstabelle (AST) 112 ist eine programmierbare Lookup-Tabelle mit einem Eintrag für jeden von 32 ASIC-Werten. Jeder Eintrag enthält ein 4-Bit-Zielfeld, das angibt, über welchen Chip-Pfad der betreffende ASIC zu erreichen ist, und ein 1-Bit-Gültigkeitsfeld, das angibt, ob der betreffende ASIC in dem System existiert. Das Gültigkeitsbit würde gelöscht, wenn der ASIC überhaupt nicht existiert oder wenn er existiert, aber für diesen betreffenden Anschluss nicht verfügbar ist, was eine Form des harten Verzonens darstellt. Die AST-Tabelle wird konsultiert, wenn die Block-D_ID eine andere ASIC-Nummer angibt als die NID.
  • Die Anschlusssteuerungstabelle (PST) 113 ist eine programmierbare Lookup-Tabelle mit einem Eintrag für jeden von 16 Anschlusswerten. Jeder Eintrag enthält ein 1-Bit-Gültigkeitsfeld, das angibt, ob der Anschluss in dem System vorhanden ist. Das Gültigkeitsbit würde gelöscht, wenn der Anschluss überhaupt nicht existiert oder wenn er existiert, aber für diesen bestimmten Anschluss nicht verfügbar ist, was ebenfalls eine Form des harten Verzonens darstellt. Ist der Eintrag gültig, gibt die Block-D_ID (11:8) die Anschlussnummer an, zu der der Block zu leiten ist. Diese Tabelle wird konsultiert, wenn der Block sich im Ziel-ASIC befindet; danach muss nur noch das Routing an den richtigen GL_Port vorgenommen werden.
  • Der Empfangspuffer (RBUF) 115 ist der in der Fibre Channel-Spezifikation vorgesehene Standard-Linkempfängerpuffer und kann mehrere Blöcke aufnehmen. Die maximale Anzahl von Blöcken ist der verbindungslose „Kreditzähler" des Puffers, der in der Anmeldeantwort an das angeschlossene Gerät mitgeteilt wird. Jeder Wert zwischen 1 und 256 kann implementiert werden.
  • Der Kennzeichenschreiber (TWT) 114 dient zum Schreiben von Kennzeichen an alle Ziele, die in der von der SSM 107 erzeugten Zielmaske angegeben sind. Er schreibt immer mindestens ein Kennzeichen (Unicast-Aussendung oder adressiert an die Struktur), kann aber auch mehrere Kennzeichen für die Multicast-Aussendung schreiben. Jedes vom TWT 114 geschriebene Kennzeichen gibt den entsprechenden Block an, indem es die Slotnummer im RBUF 115 enthält, wo sich der Block befindet, und einen Hinweis, dass das Kennzeichen gültig ist.
  • Das Bezugszeichen 116 bezeichnet das RBUF-Kennzeichenregister (RTAG). Jeder Slot im RBUF 115 weist eine zugehörige Gruppe von Kennzeichen auf, die verwendet werden, um die Verfügbarkeit des Slots zu steuern. Die primären Kennzeichen sind eine Kopie der bei der Verarbeitung des Blocks durch die SSM 107 erzeugten Zielmaske. Wie nachstehend ausführlich beschrieben, wird so jedes Ziel für einen Block mitgeteilt, und das Ziel fordert dann eine Kopie des Blocks an und empfängt diese. Wenn jedes Ziel eine Kopie des Blocks angefordert hat, wird das entsprechende Zielmaskenbit im RTAG 116 gelöscht. Wenn alle Zielmaskenbits gelöscht sind, haben alle angegebenen Ziele eine Kopie des Blocks empfangen, und der entsprechende Blockslot im RBUF 115 ist leer und für einen neuen Block verfügbar.
  • Darüber hinaus enthält das RTAG 116 andere Kennzeicheninformationen mit Blockinhaltsinformationen, die an das anfordernde Ziel gegeben werden müssen, um das Ziel für den zu übertragenden Blocktyp vorzubereiten. Diese Kennzeichen werden über den Lesemultiplexer (RMUX) 119 und den Zustands-/Blockübermittlungscrossbar 123 an das Ziel übertragen.
  • Zur Illustration sind sowohl das RTAG 116 als auch der RBUF 115 mit vier Krediten gezeigt, aber es ist ersichtlich, dass es in der Praxis allgemein wünschenswert ist, erheblich mehr als vier Kredite zu haben, nämlich bis zu 256, und dass es so viele RTAG-Sätze wie RBUF-Kredite gibt.
  • Die RBUF-Schreibsteuerung (RWT) 117 gibt an, in welchen leeren Slot des RBUF 115 geschrieben wird, wenn ein neuer Block über die Datenverbindung vom CRC 106 ankommt. Die RWT 117 steuert die Schreibadresse des RBUF 115 und liefert die Slotnummer an den TWT 114 zur Weitergabe an die angegebenen Ziele.
  • Die RBUF-Lesesteuerung (RRD) 118 verarbeitet die Blockübertragungsanfragen von verschiedenen Zielen für alle Slots im RBUF 115. Die Blöcke können in beliebiger Reihenfolge aus dem RBUF 115 ausgelesen werden, unabhängig von der Reihenfolge, in der sie geschrieben wurden, und die Reihenfolge des Auslesens wird durch die Reihenfolge bestimmt, in der die Ziele die Blöcke anfordern. Die RRD 118 steuert „Lesefenster", in denen mehrere Ziele gleichzeitig eine Kopie desselben Blocks empfangen können. Die RRD 118 löscht auch die Zielmaskenbits im RTAG 116, wenn die Blöcke übertragen werden.
  • Der Lesemultiplexer (RMUX) 119 ermöglicht die Weitergabe der Informationen in dem von dem Ziel angegebenen Slot an ein Ziel. Zuerst wird der Blockzustand im RTAG 116 weitergegeben, bis das Ziel die Blockübertragung anfordert, woraufhin der Block aus dem RBUF weitergegeben wird. Die RRD 118 steuert, was der RMUX 119 weitergibt.
  • Der Blockkennzeichencrossbar 120 ist ein Koppelfeld 17 × 17, das es allen TWTs ermöglicht, ihre Kennzeichen an jedes Ziel zu schreiben. Jeder TWT 114 weist 17 sog. Ziel-„Strobes" und einen „Slot"-Indikator mit 4 Bits auf. Für einen bestimmten Block aktiviert der TWT 114 die „Strobes" zu allen in der Zielmaske angegebenen Zielen, wodurch das Schreiben der Slotnummer aus dem RBUF 115 auf die entsprechenden Übertragungskennzeichen (TTAG) 124 veranlasst wird.
  • Der Blockslotcrossbar 121 ist ein Koppelfeld 17 × 17, das die Weitergabe zusätzlicher Blockinformationen im RTAG 116 an ein Ziel ermöglicht, nachdem das Ziel diesen Block für die Übertragung ausgewählt hat. Das Ziel liefert die Slotnummer im RBUF 115 für den ausgewählten Block, und das RTAG übermittelt den Blockzustand an den RMUX 119 und den Zustands-Blockübermittlungscrossbar 123.
  • Der Blockanfragecrossbar 122 ist ein Koppelfeld 17 × 17, das es Zielen ermöglicht, die Übertragung des Blocks aus dem angegebenen Slot im RBUF 115 anzufordern. Das Ziel nimmt die Anfrage vor, und der RBUF 115 überträgt entweder den Block an das Ziel oder kann wahlweise die Übertragung ablehnen.
  • Der Zustands-Blockübermittlungscrossbar 123 ist ein Koppelfeld 17 × 17, das die Übertragung eines Blocks aus einem Slot im RBUF 115 an ein Ziel ermöglicht. Der übertragene Zustand/Block stammt aus dem angegebenen Pufferslot auf dem Blockslotcrossbar 121. Zuerst wird der Blockzustand auf diesem Pfad weitergegeben, um das Ziel für die ordnungsgemäße Handhabung des Blocks vorzubereiten, ehe der Block selbst übertragen wird.
  • Das Übertragungskennzeichenregister (TTAG) 124 liefert für jedes Ziel eine Liste aller Blöcke auf dem Chip, die von dem Ziel übermittelt werden müssen. Der Übertragungszuteiler (TARB) 125 kann dann frei entscheiden, welche Quelle und welcher Block aus dieser Quelle als Nächstes verarbeitet werden sollen. Jedes Blockkennzeichen enthält einen Gültigkeitsindikator und einen Indikator für die Slotnummer im RBUF 115.
  • Das TTAG 124 ist eine Sammlung von Kennzeichen-FIFOs, einer für jede Quelle, so dass insgesamt 17 FIFOs vorgesehen sind. Für jede Quelle schreiben die TWTs 114 die Kennzeichen an einem Ende des FIFO ein, während der TARB 125 die Kennzeichen am anderen Ende ausliest. Dies liefert die grundlegende Funktion, um sicherzustellen, dass Blöcke in derselben Reihenfolge übermittelt werden, wie sie von der Quelle empfangen wurden, um die richtige Übertragungsreihenfolge zu gewährleisten. Für jede gegebene Quelle gibt es so viele Zellen in den FIFOs des TTAG 124 wie Kredite im RBUF 115.
  • Das älteste Blockkennzeichen stellt einen Gültigkeitsindikator für den TARB 125 dar und liefert die Slotnummer an die Quelle, so dass der Blockzustand durch den Zustands-/Blockübermittlungscrossbar 123 verfügbar ist, damit der TARB 125, wenn er zur Verarbeitung des Blocks bereit ist, alle nötigen Informationen hat, um die Übertragung zu beginnen.
  • Zur Illustration ist das TTAG 124 so gezeigt, als gebe es fünf Quellen, jeweils mit vier Krediten. In der Praxis sind jedoch 17 FIFOs für 17 unterschiedliche Quellen (16 GL_Ports und der IOP) vorgesehen, und die Tiefe jedes FIFO entspricht der Anzahl der Kredite an jeder Quelle, die zwischen 1 und 256 für GL_Ports und eine beliebige Anzahl von IOPs betragen kann.
  • Der Übertragungszuteiler (TARB) 125 bestimmt, welche Quelle die nächste ist und wie viele Blöcke von dieser Quelle abgearbeitet werden, ehe er eine weitere Quelle bedient. Das Verfahren zum Auswählen der Quellen und Festlegen, wie lange eine Quelle bedient wird, richtet sich vorzugsweise danach, welche Übertragungseigenschaften für den jeweiligen Markt bei einer bestimmten Implementierung gewünscht sind.
  • Der TARB 125 wird jedes Mal aktiviert, wenn eines oder mehrere gültige Blockkennzeichen im TTAG 124 vorliegen. Wenn der TARB 125 eine Quelle bedient, erzwingt das älteste Blockkennzeichen für diese Quelle die Übertragung des Blockzustands für diese Quelle und den Slot an das Ziel. Sobald der TARB 125 die Vorbereitung seiner Kontrollen für den Block abgeschlossen hat, fordert er den Block an und wartet darauf, dass der Block auf dem Zustands-/Blockübermittlungscrossbar 123 erscheint und dann in den Übermittlungspuffer (TBUF) 127 geschrieben wird. Nach Ende der Übertragung kann der TARB 125 einen weiteren Block von derselben Quelle anfordern oder entscheiden, eine andere Quelle mit einem gültigen Blockindikator zu bedienen.
  • Der Blockmultiplexer (FMUX) 126 ist ein 17-Wege-Multiplexer, der verwendet wird, um zunächst den Blockzustand an den TARB 125 und dann den Block selbst an den TBUF 127 zu übertragen. Die Wahl des Eingabepfads für den FMUX 126 wird durch den TARB 125 bestimmt, der die Quelle auswählt.
  • Zur Illustration ist der FMUX in 10 so gezeigt, als gebe es fünf Quellen. In der Praxis gibt es bei einem ASIC mit 16 Anschlüssen jedoch 17 Quellen, bestehend aus 16 GL_Ports und dem IOP.
  • Der Übertragungspuffer (TBUF) 127 ist ein Puffer, der einen Block von 2.148 Bytes aufnehmen kann und vom FMUX 126 gespeist wird. Der TBUF 127 ist der Pfad zum Linksender. In der Regel landen die Blöcke nicht vollständig im TBUF 127, wie etwa im RBUF 115, sondern durchlaufen den TBUF 127 auf dem Weg zum Sender. Der TBUF 127 dient auch zur Bereitstellung einer Elastizitätsfunktion in Fällen, in denen sich die Leserate des TBUF 127 von der Schreibrate des TBUF 127 unterscheidet.
  • Der TBUF 127 dient auch zur Bereitstellung der Funktion von Pfad 134 zum Struktur-Controller für Blöcke, die Ausnahmen darstellen und vom Struktur-Controller verarbeitet werden müssen (nicht gezeigt). Der TARB 125 überträgt den Ausnahmeblock aus einem RBUF 115 in den TBUF 127, ehe der Block sofort zu Verarbeitung an den IOP weitergegeben wird.
  • Der Übertragungsmultiplexer (TMUX) 128 entscheidet, welcher Datenpfad mit dem Sender verbunden wird. Die Quellen sind vom IOP angegebene Primitivsequenzen, durch die TXSM 129 angegebene Primitivsequenzen und Signale, dem Schleifenpfad folgende Blöcke oder Steuerblöcke, die die Struktur über den TBUF 127 verlassen.
  • Die Übertragungszustandsmaschine (TXSM) 129 wählt die genauen Daten aus, die an den Linksender gesendet werden, und setzt alle Fibre Channel-Regeln für die Übertragung um. Die TXSM 129 erhält Übertragungsanfragen von der LPSM 132, vom TBUF 127 und von verschiedenen IOP-Funktionen.
  • Die Schleifenzustandsmaschine (LPSM) 132 steuert die Übertragungs- und Empfangsfunktionen, wenn sich der GL_Port im Schleifenmodus befindet. Die LPSM 132 unterstützt die in FC-AL und FC-AL-2 angegebenen Schleifenfunktionen.
  • Die TXSM 129 handhabt auch alle Kreditmanagementfunktionen, so dass verbindungslose Fibre Channel-Blöcke nur übertragen werden, wenn ein entsprechender Linkkredit vorliegt.
  • Der Sender (XMTR) 130 bringt die ausgewählte Übertragungsquelle in das richtige Format für die Übertragung auf dem Ausgabedatenlink. Bei Blöcken prüft er zuerst auf Paritätsfehler in dem Block, ehe sie von 8B in 10B codiert werden, wobei Blöcke nach den Fibre Channel-Regeln als ungültig markiert werden, wenn ein Paritätsfehler vorliegt. Für alle Fibre Channel-Übertragungsworte setzt er sie dann in 10B um und multiplext die Daten in das vom Serialisierer 131 benötigte Format.
  • Der Serialisierer (SER) 131 wandelt parallele Übertragungsdaten in serielle Daten um, ehe die Daten an das Linkmedium weitergegeben werden. Der SER 131 kann intern im ASIC oder extern ausgeführt werden.
  • Nachdem die Funktionen der einzelnen Komponenten in 10 vorstehend beschrieben worden sind, folgt nachstehend eine Zusammenfassung des Betriebs der Steuerungs- und Routingfunktionen.
  • Die Steuerregister 109 bis 113 und der Alias-Cache 108 werden beim Hochfahren geladen. Dies kann durch Laden von Parametern aus einem Programm erfolgen, das entsprechend der Vermittlungs- und Netztopologie konfiguriert ist, in der die einzelnen Strukturelemente verbunden sind. Dies kann auch automatisch als Teil des in Fibre Channel verwendeten Topologieerkennungsverfahrens erfolgen. Dieses Verfahren muss erst wiederholt werden, wenn die Vermittlungs- oder Netztopologie geändert werden soll. Mit dem Laden dieser Parameter wird jeder ASIC in der Vermittlung über seine native Kennung und den Ausgabepfad von dem ASIC selbst zu jedem anderen Anschluss irgendwo in der Vermittlung und, wenn das Vermittlungsgestell in ein Netz eingebunden ist, zu jedem anderen Anschluss irgendwo im Netz informiert. Bei diesen letzteren Informationen handelt es sich implizit um die Topologieinformationen, soweit die Blocksteuerung betroffen ist.
  • Aufgabe der SSM 107 ist das Erzeugen der Zielmaske für jeden empfangenen Block. Auch hierbei muss die SSM das komplexe allgemeine Problem der gesamten Steuerung zum Erreichen des endgültigen Ziels nicht kennen oder lösen, sondern nur das unmittelbare Problem der Steuerung des Blocks zu einem (oder mehreren) der eigenen Anschlüsse der ASICs. Keines der Strukturelemente muss jemals für das vollständige Routing durch die gesamte Vermittlung oder das Netz verantwortlich sein. Jedes einzelne Element trifft lokale Entscheidungen für seinen eigenen Ausgabeanschlüsse. Wird ein Block empfangen und an den RBUF 115 gesendet, beginnt die SSM 107 gleichzeitig mit dem Decodieren der Zieladresse für den Block. Die Adresse wird gleichzeitig mit dem Alias-Cache 108 und den Steuerregistern 109 bis 113 vergleichen. Liegt ein Treffer im Alias-Cache 108 vor, muss das Decodieren in den Steuerregistern nicht abgeschlossen werden. In diesem Fall liefert der Alias-Cache 108 die Steuerungsmaske für die betreffende Adresse, und der Vorgang des Schreibens der Kennzeichen und des Übertragen des Blocks an die in dieser Maske angegebenen Ausgabeanschlüsse kann fortgesetzt werden.
  • Liegt kein Treffer im Alias-Cache 108 vor, kommen die Steuerregister 109 bis 113 ins Spiel. Die Domain der Zieladresse wird mit der Domain der nativen Kennung des ASIC verglichen, und wenn sie nicht übereinstimmen, gibt die DST eine Zielmaske für den Block zur Steuerung an den richtigen Anschluss (zuvor bei der Initialisierung programmiert) von diesem ASIC aus, um zu der richtigen Domain zu gelangen.
  • Stimmen die Domains überein, wird die ASIC-Nummer der Zieladresse mit der ASIC-Nummer der nativen Kennung des ASIC verglichen. Stimmen sie überein, kann das Routing durch die Anschlussnummer abgeschlossen werden, und die Zielmaske wird dementsprechend aus der PST 113 erzeugt.
  • Gibt es eine Übereinstimmung für die Domain und eine Nichtübereinstimmung für die ASIC-Nummer, wird in der AST 113 nach der Zielmaske gesucht, um den Ziel-ASIC von diesem ASIC zu erhalten, und das Routing wird von dort fortgesetzt.
  • Sobald die Zielmaske für den Block erzeugt ist, wird der Block unter Verwendung der Kennzeichen, Crossbars und Übertragungszuteiler an den Ausgabeanschluss des ASIC geleitet, wie vorstehend beschrieben. Ein wichtiges Merkmal der Erfindung besteht darin, dass das eigentliche Routing der Blöcke von Anschluss zu Anschluss innerhalb des ASIC auf der Grundlage der frühesten Verfügbarkeit des Zielanschlusses zum Empfangen eines bestimmten Blocks beruht. Daher basiert die bei der bevorzugten Ausführungsform der Erfindung verwendete Blockübertragungsmethode auf Senderblockkennzeichen und dem Senderbedarf, um zu bestimmen, welche im Cache gespeicherten Blöcke als Nächstes übertragen werden. Dies wird als Sender-Block-Pull bezeichnet, im Gegensatz zum Empfänger-Block-Push. Hierbei tritt kein Zeilenkopfblockieren auf, wie es der Fall wäre, wenn die Blöcke von einem Empfangspuffer auf „first in, first out"-Basis gehandhabt würden. Wenn eine Verzögerung bei dem Zielanschluss auftritt, wird in solchen Systemen der gesamte Blockverkehr auf dem Strukturelement angehalten, bis das Problem gelöst ist. Die verschiedenen Crossbar-, Kennzeichen-, Zustands- und Auswahltechniken nach der vorliegenden Erfindung verhindern ein Zeilenkopfblockieren.
  • Ein weiteres wichtiges Merkmal der vorliegenden Erfindung ist die Einfachheit und Flexibilität, mit der die Adressierung und Blocksteuerung erreicht werden, auch in Anbetracht komplexer und unterschiedlicher Topologien, in denen die Strukturelemente miteinander verbunden sein können. Wie unter Bezugnahme auf 4 bis 9 erläutert, können einzelne Strukturelemente in unterschiedlicher Anzahl und mit unterschiedlichen Verbindungstopologien miteinander verbunden werden, um viele verschiedene Vermittlungsgestelle zu bilden. Diese wiederum können in unterschiedlicher Anzahl und mit unterschiedlichen Topologien miteinander verbunden werden, um viele verschiedene Vermittlungsnetze zu bilden. Für den eigentlichen Routing-Pfad von einem Kanalanschluss zu einem bestimmten anderen Kanalanschluss gibt es enorm viele Mög lichkeiten, woraus sich eine entsprechend große Anzahl von Komplexitäten beim Routing von Blöcken ergibt. Bei der vorliegenden Erfindung muss jedoch das gesamte Problem des Routing nicht für jeden Block in jedem Strukturelement gelöst werden. Stattdessen muss jedes Strukturelement den Block nur an den richtigen seiner Anschlüsse leiten und an das nächste Strukturelement übergeben (sofern sich der Zielanschluss nicht auf demselben Strukturelement befindet). Das nächste Strukturelement muss den Block wiederum nur an den richtigen seiner Anschlüsse leiten und so weiter, bis der endgültige Zielkanal erreicht ist. Die Zuordnung von jedem Eingabeanschluss zu jedem möglichen Zielanschluss für das gesamte Vermittlungsnetz wird durch die Steuerungslogik vorgenommen, die im Wesentlichen die Adressbits für jeden Block prüft und mit der bekannten Position in der Topologie des ASIC vergleicht, um die Zielmaske zu erzeugen. Die Topologieposition jedes ASIC oder Strukturelements muss nur einmal in jeden ASIC geschrieben werden, entweder beim Start oder automatisch bei der Topologieerkennung beim Start. Danach kann, bis die Konfiguration der Vermittlung aus irgendeinem Grund geändert werden soll, jeder ASIC einfach das Routing zu seinem richtigen Ausgabeanschluss auf der Grundlage dieser Topologieinformationen ausführen.
  • Diese Methodik ermöglicht auch virtuelle Kanäle, wie vorstehend beschrieben. Weil jeder Anschluss, der einen Block empfängt, eine eigene Steuerungslogik aufweist, können die Zielmasken durch den IOP programmiert werden, so dass immer ein bestimmter Pfad von einem bestimmten Anschluss zu einem bestimmten Zielanschluss genommen wird. Dies ist möglich, weil die Steuerungstabellen lokal für jeden einzelnen Anschluss vorgesehen sind. Wären die Steuerungstabellen global für die Strukturelemente vorgesehen, würde das vorgesehene Lookup-Verfahren alle Blöcke an ein bestimmtes Strukturelement über denselben Pfad schicken. Es gäbe keine Möglichkeit zur Unterscheidung. Mit virtuellen Kanälen ist es jedoch möglich, den gesamten Pfad anzugeben, der von einem bestimmten Anschluss zu einem anderen bestimmten Anschluss verwendet wird, auch wenn sie sich auf unterschiedlichen Strukturelementen befinden und auch wenn mehrere Sprünge erforderlich sind, um das Zielstrukturelement zu erreichen. Dieser virtuelle Kanal kann definiert werden und durch das gesamte Gestell und das gesamte Netz von mehreren Gestellen verlaufen, indem die Zielmasken für jeden Linkempfänger bei der Programmierung festgelegt werden. Dieses Merkmal kann zum Lastausgleich sowie dazu benutzt werden, die richtige Übertragungsreihenfolge von Blöcken zwischen bestimmten Anschlüssen sicherzustellen.
  • Aus der vorstehenden Beschreibung ist ersichtlich, dass die vorliegende Erfindung ein verbessertes Hochleistungs-Vermittlungsstrukturelement sowie Verbindungs- und Adressierungstechniken zur Schaffung großer, leistungsfähiger Vermittlungen und Netze bereitstellt. Obwohl bestimmte Ausführungsformen der Erfindung beschrieben worden sind, ist zu erkennen, dass die Erfindung nicht auf diese spezifischen Anwendungen beschränkt ist und dass viele Variationen innerhalb des Umfangs der Erfindung möglich sind.

Claims (22)

  1. Vermittlungssystem, das mehrere n-Anschluß-Vermittlungselemente (20, m0-m207) aufweist, umfassend: n Anschlüsse (GL0–GL15) und einen zusätzlichen Anschluß (67), der als ein Anschluß für einen Eingabe-Ausgabe-Prozessor (66) dienen soll, wobei jeder der n Anschlüsse (GL0–GL15) enthält: einen Eingabelink zum Empfangen von Datenblöcken von einem vom Vermittlungselement entfernten Ursprungsort, einen Ausgabelink zum Übertragen von Datenblöcken an einen vom Vermittlungselement entfernten Zielort, einen Vermittlungscrossbar (50) zum Einrichten eines verfügbaren Datenkanals zwischen jedem Anschluß und jedem anderen Anschluß im Vermittlungselement, und eine Steuerungszustandsmaschine (107) zum Richten empfangener Datenblöcke vom Eingabelink an den Ausgabelink eines oder mehrerer der Anschlüsse auf dem Vermittlungselement, dadurch gekennzeichnet, daß jeder der n Anschlüsse (GL0–GL15) jedes Vermittlungselements ein generischer Anschluß ist, der dazu in der Lage ist, als einer der Typen von Faserkanalanschlüssen F_Port, FL_Port und E_Port zu dienen, wobei jeder Anschluß einen ausgesuchten Schleifenpfad (105) aufweist, der zwischen dem Eingabelink des Anschlusses und dem Ausgabelink verläuft, sowie als eine Schleifenzustandsmaschine (132) zu dienen, die dazu ausgelegt ist, Vermittlungs- und Empfangsfunktionen zu steuern, so daß von einem Anschluß empfangene Daten im Betriebszustand des Überwachens der ausgesuchten Schleife sowie des Bypassmodus über den ausgesuchten Schleifenpfad (105) zum Ausgabelink desselben Anschlusses zurück übertragen werden können, und eine einzelne integrierte Schaltung (20) die n generischen Anschlüsse (GL0–GL15) und den Vermittlungscrossbar (50) des Vermittlungselements enthält, und die n-Anschluß-Vermittlungselemente miteinander verbunden sind, um ein Vermittlungsgestell (S2–S8) zu bilden, das mindestens eine der folgenden Linkverbindungstechniken verwendet: eine Kaskadenlinkverbindung, bei der jedes Vermittlungselement Anschlüsse aufweist, die mit einem benachbarten Vermittlungselement im Gestell (S3) verbunden sind, eine Gitterlinkverbindung, bei der jedes Vermittlungselement Anschlüsse aufweist, die direkt mit jedem anderen Vermittlungselement im Gestell (S4) verbunden sind, und eine Mikrostufenlinkverbindung, bei der einige Vermittlungselemente mit den Gestellkanälen verbunden sind und Anschlüsse aufweisen, die ebenfalls mit jedem einer weiteren Anzahl von Vermittlungselementen (m20–m27, m200–m207) verbunden sind, die Links dazwischen zur Verfügung stellen.
  2. System nach Anspruch 1, wobei der Vermittlungscrossbar zwei oder mehr unabhängige Crossbars (120, 121, 122, 123) enthält.
  3. System nach Anspruch 2, wobei der Vermittlungscrossbar enthält: einen Blockkennzeichencrossbar (120), um es jedem generischen Anschluß zu ermöglichen, Kennzeichen an irgendeinen oder irgendwelche der generischen Anschlüsse auf dem IC-Vermittlungselement zu schicken, einen Blockanfragecrossbar (121), um es jedem generischen Anschluß zu ermöglichen, eine Blockanfrage an irgendeinen generischen Anschluß auf dem IC-Vermittlungselement, von dem aus ein Kennzeichen empfangen worden ist, zu schicken, einen Blockzustandscrossbar (122), um es jedem generischen Anschluß zu ermöglichen, zusätzliche Blockinformationen an irgendeinen oder irgendwelche der generischen Anschlüsse auf dem IC-Vermittlungselement auf die Blockanfrage hin zu schicken, und einen Zustands-/Blockübermittlungscrossbar (123), um es jedem generischen Anschluß zu ermöglichen, vorkonditionierende Blockzustandsinformationen zur ordentlichen Handhabung der Blöcke zu schicken und einen angefragten Block an irgendeinen oder irgendwelche der generischen Anschlüsse auf dem IC-Vermittlungselement auf die Blockanfrage hin zu schicken.
  4. System nach einem der vorhergehenden Ansprüche, wobei alle n generischen Anschlüsse (GL0–GL15) auf dem IC-Vermittlungselement ähnlich sind, wobei jeder generische Anschluß ein Herkunftskennzeichen (109) zur Identifikation einer Herkunftsdomain, eines Herkunftsbereichs und eines Herkunftsanschlusses zur Verwendung bei der Steuerung empfangener Datenblöcke enthält.
  5. System nach einem der vorhergehenden Ansprüche, wobei jeder generische Anschluß auf dem IC-Vermittlungselement Schaltungen (114125) zum Übermitteln von Blöcken mittels einer Block-Pull-Übermittlungsmethode enthält, so daß ein Ursprungsanschluß Datenblöcke an einen Zielanschluß schickt, wenn der Zielanschluß die Datenblöcke anfragt, um Zeilenkopfblockieren zu verhindern.
  6. System nach einem der vorhergehenden Ansprüche, wobei die Steuerungszustandsmaschine dazu ausgelegt ist, mehrfachen generischen Anschlüssen auf dem IC-Vermittlungselement mehrfache Kennzeichen zuzuschreiben, um den mehrfachen generischen Anschlüssen Datenblöcke auf Multicastweise zuzusenden.
  7. System nach einem der vorhergehenden Ansprüche, wobei die Steuerungszustandsmaschine eine oder mehrere Tabellen (111, 112, 113) enthält, wobei jede Tabelle einen oder mehrere Einträge enthält, wobei jeder Eintrag ein gültiges Bit zur Verhinderung davon enthält, das Datenblöcke an einen oder mehrere der verfügbaren Datenkanäle geroutet werden.
  8. System nach einem der vorhergehenden Ansprüche, wobei die Steuerungszustandsmaschine einen Alias-Cache (108) zum Speichern ausgewählter Adressen zur Ausstrahlung, Multicast-Aussendung und Unicast-Aussendung von Datenblöcken an mehrfa che generische Anschlüsse auf dem IC-Vermittlungselement enthält.
  9. System nach einem der vorhergehenden Ansprüche, wobei die Steuerungszustandsmaschine eine Topologieidentifikationseinrichtung (111) zum Identifizieren einer Position auf dem IC-Vermittlungselement in einer Topologie zum Parsen des empfangenen Datenblockes enthält.
  10. System nach einem der vorhergehenden Ansprüche, wobei die Steuerungszustandsmaschine eine Domainsteuerungstabelle (111) zur Identifikation eines Chip-Pfads zu einer gewünschten Vermittlungsdomain, eine Gebietssteuerungstabelle (112) zur Identifikation eines Chip-Pfads zu einem gewünschten IC-Vermittlungselement in der gewünschten Vermittlungsdomain sowie eine Anschlußsteuerungstabelle (113) zur Identifikation eines Chip-Pfads zu einem gewünschten Anschluß in dem gewünschten IC-Vermittlungselement und der gewünschten Vermittlungsdomain enthält.
  11. System nach einem der vorhergehenden Ansprüche, wobei die Domainsteuerungstabelle, die Gebietssteuerungstabelle und die Anschlußsteuerungstabelle jeweils einen oder mehrere Einträge aufweisen, wobei jeder Eintrag in jeder Tabelle ein gültiges Bit zur Verwendung beim harten Verzonen zur Verhinderung davon enthält, das Datenblöcke an einem oder mehreren der verfügbaren Datenkanäle geroutet werden.
  12. System nach einem der vorhergehenden Ansprüche, wobei die Steuerungszustandsmaschine enthält: einen Alias-Cache (108) zum Speichern ausgewählter Adressen zum Ausstrahlen, Multicast-Aussenden und Unicast-Aussenden von Datenblöcken an mehrfache generische Anschlüsse auf dem IC-Vermittlungselement und eine oder mehrere Tabellen (111, 112, 113) zur Identifikation eines Chip-Pfads für einen gewünschten Datenkanal zum Unicast-Aussenden von Datenblöcken an einen einzelnen generi schen Anschluß auf dem IC-Vermittlungselement, wenn die empfangenen Datenblöcke nicht mit einem Eintrag im Alias-Cache übereinstimmen.
  13. System nach Anspruch 12, wobei der Alias-Cache eine Anzahl von Alias-Cache-Einträgen enthält, die mit einer Zielblockadresse zu vergleichen sind, und der Alias-Cache das wahlweise Steuern an eine oder mehrere generische Anschlüsse innerhalb eines ausgewählten Ziels auf der Grundlage eines Vergleichs der Alias-Cache-Einträge zumindest mit einem Teil der Zielblockadresse ermöglicht.
  14. System nach einem der Ansprüche 1 bis 13, wobei die Alias-Cache-Einträge drei Bits enthalten, um das Vergleichen von Domain-ID-Feldern, Gebiet-ID-Feldern und Anschluß-ID-Feldern zu ermöglichen.
  15. System nach einem der Ansprüche 1 bis 14 mit einer Anzahl von Gestellanschlüssen (C0–C15, C0–C31, C0–C23, C0–C127, C0–C255) die mit Anschlüssen von Geräten und von anderen Vermittlungsgestellen verbunden werden können, wobei zumindest einige der n generischen Anschlüsse (Gl0–Gl15) mit der Anzahl von Gestellanschlüssen verbunden sind.
  16. System nach Anspruch 15, wobei jeder der n generischen Anschlüsse (Gl0–Gl15) der Vermittlungselemente mit einem der Gestellanschlüsse verbunden ist.
  17. System nach einem der Ansprüche 1 bis 16, wobei bei jedem der mehrfachen n-Anschluß-Vermittlungselemente die n generischen Anschlüsse eine erste Gruppe generischer Anschlüsse und eine zweite Gruppe generischer Anschlüsse enthalten, das Vermittlungsgestell ferner zwischen den IC-Vermittlungselementen mittels der ersten Gruppe generischer An schlüsse in den mehrfachen n-Anschluß-Vermittlungselementen gebildete Zwischenelementlinks enthält und das Vermittlungsgestell ferner mittels der zweiten Gruppe generischer Anschlüsse gebildete Datenlinks zu den Gestellanschlüssen enthält.
  18. System nach einem der Ansprüche 15 bis 17, wobei die Zwischenelementlinks in einer Kaskadenkonfiguration aufgebaut sind.
  19. System nach einem der Ansprüche 15 bis 17, wobei die Zwischenelementlinks in einer Gitterkonfiguration aufgebaut sind.
  20. System nach einem der Ansprüche 15 bis 17, wobei das Vermittlungselement eine erste Gruppe von n-Anschluß-Vermittlungselementen und eine zweite Gruppe von n-Anschluß-Vermittlungselementen enthält, bei jedem der n-Anschluß-Vermittlungselemente der ersten Gruppe die n generischen Anschlüsse eine erste Gruppe von generischen Anschlüssen und eine zweite Gruppe von generischen Anschlüssen enthalten, das Vermittlungsgestell ferner zwischen der ersten Gruppe generischer Anschlüsse in der ersten Gruppe von n-Anschluß-IC-Vermittlungselementen und den generischen Anschlüssen in der zweiten Gruppe von n-Anschluß-Vermittlungselementen gebildete Zwischenelementlinks enthält, und das Vermittlungsgestell ferner zwischen dem Gestellanschluß und der zweiten Gruppe generischer Anschlüsse in der ersten Gruppe von n-Anschluß-Vermittlungselementen gebildete Datenlinks enthält.
  21. System nach Anspruch 18, wobei bei jedem Vermittlungselement der ersten Gruppe die n generischen Anschlüsse ferner eine dritte Gruppe generischer Anschlüsse enthalten und das Vermittlungsgestell ferner zwischen einzelnen Elementen in der ersten Gruppe von IC-Vermittlungselementen mittels der dritten Gruppe generischer Anschlüsse in der ersten Gruppe von IC-Vermittlungselementen gebildete kaskadenförmige Zwischenelementlinks enthält.
  22. System nach einem der Ansprüche 1 bis 21, wobei das Vermittlungsgestell mit einem oder mehreren anderen Vermittlungsgestellen zur Bildung eines Vermittlungsnetzes verbunden ist.
DE60030737T 1999-07-02 2000-06-30 Hochleistungs-Vermittlungselement und -Vermittlungssystem Expired - Lifetime DE60030737T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US346793 1999-07-02
US09/346,793 US6697359B1 (en) 1999-07-02 1999-07-02 High performance switch fabric element and switch systems
PCT/US2000/018157 WO2001003384A1 (en) 1999-07-02 2000-06-30 High performance switch fabric element and switch systems

Publications (2)

Publication Number Publication Date
DE60030737D1 DE60030737D1 (de) 2006-10-26
DE60030737T2 true DE60030737T2 (de) 2007-11-08

Family

ID=23361073

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60030737T Expired - Lifetime DE60030737T2 (de) 1999-07-02 2000-06-30 Hochleistungs-Vermittlungselement und -Vermittlungssystem

Country Status (6)

Country Link
US (2) US6697359B1 (de)
EP (1) EP1206860B1 (de)
JP (1) JP2003503955A (de)
AT (1) ATE339828T1 (de)
DE (1) DE60030737T2 (de)
WO (1) WO2001003384A1 (de)

Families Citing this family (185)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7382736B2 (en) * 1999-01-12 2008-06-03 Mcdata Corporation Method for scoring queued frames for selective transmission through a switch
US6697359B1 (en) * 1999-07-02 2004-02-24 Ancor Communications, Inc. High performance switch fabric element and switch systems
ATE411675T1 (de) * 1999-12-10 2008-10-15 Qlogic Switch Products Inc Verfahren und vorrichtung zur kreditbasierten flusskontrolle in fibre-channel systemen
JP4436960B2 (ja) * 2000-05-16 2010-03-24 日本電気株式会社 パケット通信システムおよび移動通信システム
CA2410932C (en) * 2000-06-05 2010-04-13 Qlogic Switch Products, Inc. Hardware-enforced loop-level hard zoning for fibre channel switch fabric
US7978695B2 (en) * 2000-06-05 2011-07-12 Qlogic Switch Products, Inc. Hardware-enforced loop and NPIV hard zoning for fibre channel switch fabric
US7111072B1 (en) 2000-09-13 2006-09-19 Cosine Communications, Inc. Packet routing system and method
US7574495B1 (en) 2000-09-13 2009-08-11 Fortinet, Inc. System and method for managing interworking communications protocols
US7272643B1 (en) * 2000-09-13 2007-09-18 Fortinet, Inc. System and method for managing and provisioning virtual routers
US8250357B2 (en) 2000-09-13 2012-08-21 Fortinet, Inc. Tunnel interface for securing traffic over a network
US7487232B1 (en) * 2000-09-13 2009-02-03 Fortinet, Inc. Switch management system and method
US7236490B2 (en) * 2000-11-17 2007-06-26 Foundry Networks, Inc. Backplane interface adapter
US7596139B2 (en) * 2000-11-17 2009-09-29 Foundry Networks, Inc. Backplane interface adapter with error control and redundant fabric
US6735218B2 (en) * 2000-11-17 2004-05-11 Foundry Networks, Inc. Method and system for encoding wide striped cells
US7356030B2 (en) 2000-11-17 2008-04-08 Foundry Networks, Inc. Network switch cross point
US7002980B1 (en) * 2000-12-19 2006-02-21 Chiaro Networks, Ltd. System and method for router queue and congestion management
US20020161887A1 (en) * 2001-04-27 2002-10-31 Foster Michael S. Method and system for performing security via de-registration in a communications network
US7206283B2 (en) * 2001-05-15 2007-04-17 Foundry Networks, Inc. High-performance network switch
US7181547B1 (en) 2001-06-28 2007-02-20 Fortinet, Inc. Identifying nodes in a ring network
US6606322B2 (en) * 2001-08-17 2003-08-12 Mcdata Corporation Route lookup caching for a fiber channel switch
US7054312B2 (en) * 2001-08-17 2006-05-30 Mcdata Corporation Multi-rate shared memory architecture for frame storage and switching
US6804245B2 (en) * 2001-08-17 2004-10-12 Mcdata Corporation Compact, shared route lookup table for a fiber channel switch
US7362751B2 (en) 2001-10-03 2008-04-22 Topside Research, Llc Variable length switch fabric
US7046660B2 (en) * 2001-10-03 2006-05-16 Internet Machines Corp. Switching apparatus for high speed channels using multiple parallel lower speed channels while maintaining data rate
US20030088694A1 (en) * 2001-11-02 2003-05-08 Internet Machines Corporation Multicasting method and switch
US6862293B2 (en) * 2001-11-13 2005-03-01 Mcdata Corporation Method and apparatus for providing optimized high speed link utilization
US7227870B2 (en) * 2001-11-20 2007-06-05 Broadcom Corporation Systems including packet interfaces, switches, and packet DMA circuits for splitting and merging packet streams
US20040205252A1 (en) * 2002-01-31 2004-10-14 Brocade Communications Systems, Inc. Methods and devices for converting between trunked and single-link data transmission in a fibre channel network
US7468975B1 (en) * 2002-05-06 2008-12-23 Foundry Networks, Inc. Flexible method for processing data packets in a network routing system for enhanced efficiency and monitoring capability
US7649885B1 (en) 2002-05-06 2010-01-19 Foundry Networks, Inc. Network routing system for enhanced efficiency and monitoring capability
US7266117B1 (en) 2002-05-06 2007-09-04 Foundry Networks, Inc. System architecture for very fast ethernet blade
US20090279558A1 (en) * 2002-05-06 2009-11-12 Ian Edward Davis Network routing apparatus for enhanced efficiency and monitoring capability
US20120155466A1 (en) * 2002-05-06 2012-06-21 Ian Edward Davis Method and apparatus for efficiently processing data packets in a computer network
US7187687B1 (en) * 2002-05-06 2007-03-06 Foundry Networks, Inc. Pipeline method and system for switching packets
US7203192B2 (en) 2002-06-04 2007-04-10 Fortinet, Inc. Network packet steering
US7177311B1 (en) * 2002-06-04 2007-02-13 Fortinet, Inc. System and method for routing traffic through a virtual router-based network switch
US7376125B1 (en) 2002-06-04 2008-05-20 Fortinet, Inc. Service processing switch
US7161904B2 (en) * 2002-06-04 2007-01-09 Fortinet, Inc. System and method for hierarchical metering in a virtual router based network switch
US7340535B1 (en) 2002-06-04 2008-03-04 Fortinet, Inc. System and method for controlling routing in a virtual router system
US7230929B2 (en) * 2002-07-22 2007-06-12 Qlogic, Corporation Method and system for dynamically assigning domain identification in a multi-module fibre channel switch
US7154886B2 (en) 2002-07-22 2006-12-26 Qlogic Corporation Method and system for primary blade selection in a multi-module fiber channel switch
US7334046B1 (en) 2002-08-05 2008-02-19 Qlogic, Corporation System and method for optimizing frame routing in a network
US7096383B2 (en) 2002-08-29 2006-08-22 Cosine Communications, Inc. System and method for virtual router failover in a network routing system
US7397768B1 (en) 2002-09-11 2008-07-08 Qlogic, Corporation Zone management in a multi-module fibre channel switch
US7362717B1 (en) 2002-10-03 2008-04-22 Qlogic, Corporation Method and system for using distributed name servers in multi-module fibre channel switches
US6886141B1 (en) 2002-10-07 2005-04-26 Qlogic Corporation Method and system for reducing congestion in computer networks
US7266120B2 (en) 2002-11-18 2007-09-04 Fortinet, Inc. System and method for hardware accelerated packet multicast in a virtual routing system
JP4474574B2 (ja) * 2003-03-13 2010-06-09 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータ
US6901072B1 (en) * 2003-05-15 2005-05-31 Foundry Networks, Inc. System and method for high speed packet transmission implementing dual transmit and receive pipelines
US7620059B2 (en) * 2003-07-16 2009-11-17 Qlogic, Corporation Method and apparatus for accelerating receive-modify-send frames in a fibre channel network
US7525910B2 (en) * 2003-07-16 2009-04-28 Qlogic, Corporation Method and system for non-disruptive data capture in networks
US7355966B2 (en) * 2003-07-16 2008-04-08 Qlogic, Corporation Method and system for minimizing disruption in common-access networks
US7453802B2 (en) * 2003-07-16 2008-11-18 Qlogic, Corporation Method and apparatus for detecting and removing orphaned primitives in a fibre channel network
US7463646B2 (en) * 2003-07-16 2008-12-09 Qlogic Corporation Method and system for fibre channel arbitrated loop acceleration
US7152132B2 (en) * 2003-07-16 2006-12-19 Qlogic Corporation Method and apparatus for improving buffer utilization in communication networks
US7388843B2 (en) * 2003-07-16 2008-06-17 Qlogic, Corporation Method and apparatus for testing loop pathway integrity in a fibre channel arbitrated loop
US7646767B2 (en) 2003-07-21 2010-01-12 Qlogic, Corporation Method and system for programmable data dependant network routing
US7792115B2 (en) * 2003-07-21 2010-09-07 Qlogic, Corporation Method and system for routing and filtering network data packets in fibre channel systems
US7894348B2 (en) * 2003-07-21 2011-02-22 Qlogic, Corporation Method and system for congestion control in a fibre channel switch
US7522529B2 (en) * 2003-07-21 2009-04-21 Qlogic, Corporation Method and system for detecting congestion and over subscription in a fibre channel network
US7580354B2 (en) * 2003-07-21 2009-08-25 Qlogic, Corporation Multi-speed cut through operation in fibre channel switches
US7466700B2 (en) * 2003-07-21 2008-12-16 Qlogic, Corporation LUN based hard zoning in fibre channel switches
US7522522B2 (en) * 2003-07-21 2009-04-21 Qlogic, Corporation Method and system for reducing latency and congestion in fibre channel switches
US7525983B2 (en) * 2003-07-21 2009-04-28 Qlogic, Corporation Method and system for selecting virtual lanes in fibre channel switches
US7558281B2 (en) * 2003-07-21 2009-07-07 Qlogic, Corporation Method and system for configuring fibre channel ports
US7477655B2 (en) * 2003-07-21 2009-01-13 Qlogic, Corporation Method and system for power control of fibre channel switches
US7430175B2 (en) * 2003-07-21 2008-09-30 Qlogic, Corporation Method and system for managing traffic in fibre channel systems
US7573909B2 (en) * 2003-07-21 2009-08-11 Qlogic, Corporation Method and system for programmable data dependant network routing
US7583597B2 (en) * 2003-07-21 2009-09-01 Qlogic Corporation Method and system for improving bandwidth and reducing idles in fibre channel switches
US7512067B2 (en) * 2003-07-21 2009-03-31 Qlogic, Corporation Method and system for congestion control based on optimum bandwidth allocation in a fibre channel switch
US7420982B2 (en) * 2003-07-21 2008-09-02 Qlogic, Corporation Method and system for keeping a fibre channel arbitrated loop open during frame gaps
US7684401B2 (en) * 2003-07-21 2010-03-23 Qlogic, Corporation Method and system for using extended fabric features with fibre channel switch elements
US7447224B2 (en) * 2003-07-21 2008-11-04 Qlogic, Corporation Method and system for routing fibre channel frames
US7406092B2 (en) * 2003-07-21 2008-07-29 Qlogic, Corporation Programmable pseudo virtual lanes for fibre channel systems
US7630384B2 (en) * 2003-07-21 2009-12-08 Qlogic, Corporation Method and system for distributing credit in fibre channel systems
WO2005020515A1 (en) * 2003-08-15 2005-03-03 Thomson Licensing S.A. Broadcast router with multiple expansion capabilities
US7720095B2 (en) 2003-08-27 2010-05-18 Fortinet, Inc. Heterogeneous media packet bridging
US7352701B1 (en) 2003-09-19 2008-04-01 Qlogic, Corporation Buffer to buffer credit recovery for in-line fibre channel credit extension devices
US7103504B1 (en) 2003-11-21 2006-09-05 Qlogic Corporation Method and system for monitoring events in storage area networks
CN100352196C (zh) * 2003-12-30 2007-11-28 国际商业机器公司 在无限带宽网络中传送数据包的系统和方法
US7535844B1 (en) * 2004-01-28 2009-05-19 Xilinx, Inc. Method and apparatus for digital signal communication
US7480293B2 (en) * 2004-02-05 2009-01-20 Qlogic, Corporation Method and system for preventing deadlock in fibre channel fabrics using frame priorities
US7564789B2 (en) * 2004-02-05 2009-07-21 Qlogic, Corporation Method and system for reducing deadlock in fibre channel fabrics using virtual lanes
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
US7817659B2 (en) * 2004-03-26 2010-10-19 Foundry Networks, Llc Method and apparatus for aggregating input data streams
US7340167B2 (en) * 2004-04-23 2008-03-04 Qlogic, Corporation Fibre channel transparent switch for mixed switch fabrics
US7930377B2 (en) * 2004-04-23 2011-04-19 Qlogic, Corporation Method and system for using boot servers in networks
US8730961B1 (en) 2004-04-26 2014-05-20 Foundry Networks, Llc System and method for optimizing router lookup
US7669190B2 (en) 2004-05-18 2010-02-23 Qlogic, Corporation Method and system for efficiently recording processor events in host bus adapters
US7609705B2 (en) * 2004-05-20 2009-10-27 Hewlett-Packard Development Company, L.P. Determination of a plurality of paths before selection of one path of the plurality of paths for transmission of one or more packets
US7382734B2 (en) * 2004-05-20 2008-06-03 Hewlett-Packard Development Company, L.P. Directing a path verification request along a specific path to a mesh network switch to test operability of the specific path
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US7404020B2 (en) * 2004-07-20 2008-07-22 Qlogic, Corporation Integrated fibre channel fabric controller
US8000322B2 (en) * 2004-07-30 2011-08-16 Hewlett-Packard Development Company, L.P. Crossbar switch debugging
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
US7499419B2 (en) 2004-09-24 2009-03-03 Fortinet, Inc. Scalable IP-services enabled multicast forwarding with efficient resource utilization
US7593997B2 (en) * 2004-10-01 2009-09-22 Qlogic, Corporation Method and system for LUN remapping in fibre channel networks
US7411958B2 (en) * 2004-10-01 2008-08-12 Qlogic, Corporation Method and system for transferring data directly between storage devices in a storage area network
US7676611B2 (en) * 2004-10-01 2010-03-09 Qlogic, Corporation Method and system for processing out of orders frames
US7380030B2 (en) * 2004-10-01 2008-05-27 Qlogic, Corp. Method and system for using an in-line credit extender with a host bus adapter
US8295299B2 (en) * 2004-10-01 2012-10-23 Qlogic, Corporation High speed fibre channel switch element
US7657703B1 (en) * 2004-10-29 2010-02-02 Foundry Networks, Inc. Double density content addressable memory (CAM) lookup scheme
CA2586763C (en) 2004-11-08 2013-12-17 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
US7808904B2 (en) 2004-11-18 2010-10-05 Fortinet, Inc. Method and apparatus for managing subscriber profiles
US7830887B2 (en) * 2004-11-30 2010-11-09 Broadcom Corporation Method and apparatus for direct memory access based on class-of-service
US7519058B2 (en) * 2005-01-18 2009-04-14 Qlogic, Corporation Address translation in fibre channel switches
JP5093986B2 (ja) * 2005-01-19 2012-12-12 富士通株式会社 プロセッサ間通信方法及びプロセッサ間通信装置
US7668925B1 (en) 2005-01-28 2010-02-23 Pmc-Sierra, Inc. Method and apparatus for routing in SAS using logical zones
US7346050B2 (en) * 2005-01-31 2008-03-18 International Business Machines Corporation Method, system, and storage medium for delay optimization for scheduling in bufferless crossbar switches
US9075657B2 (en) 2005-04-07 2015-07-07 Adaptive Computing Enterprises, Inc. On-demand access to compute resources
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
US20060248374A1 (en) * 2005-04-18 2006-11-02 Macadam A D S Packet Processing Switch and Methods of Operation Thereof
US7685349B2 (en) * 2005-06-03 2010-03-23 Telect Inc. Modules and backplanes
US7554818B2 (en) 2005-06-03 2009-06-30 Telect Inc. Telecommunications module storage apparatus and method
US8457017B2 (en) * 2005-06-30 2013-06-04 Infinera Corporation Multi-chassis interconnect
US20070058620A1 (en) * 2005-08-31 2007-03-15 Mcdata Corporation Management of a switch fabric through functionality conservation
US9143841B2 (en) 2005-09-29 2015-09-22 Brocade Communications Systems, Inc. Federated management of intelligent service modules
US20070147364A1 (en) * 2005-12-22 2007-06-28 Mcdata Corporation Local and remote switching in a communications network
US8448162B2 (en) 2005-12-28 2013-05-21 Foundry Networks, Llc Hitless software upgrades
US8464238B1 (en) 2006-01-31 2013-06-11 Qlogic, Corporation Method and system for managing storage area networks
US7548560B1 (en) 2006-02-27 2009-06-16 Qlogic, Corporation Method and system for checking frame-length in fibre channel frames
US7668920B2 (en) * 2006-03-01 2010-02-23 Fortinet, Inc. Electronic message and data tracking system
US7953866B2 (en) 2006-03-22 2011-05-31 Mcdata Corporation Protocols for connecting intelligent service modules in a storage area network
US20070258443A1 (en) * 2006-05-02 2007-11-08 Mcdata Corporation Switch hardware and architecture for a computer network
US20070288690A1 (en) * 2006-06-13 2007-12-13 Foundry Networks, Inc. High bandwidth, high capacity look-up table implementation in dynamic random access memory
US7903654B2 (en) * 2006-08-22 2011-03-08 Foundry Networks, Llc System and method for ECMP load sharing
US7613816B1 (en) 2006-11-15 2009-11-03 Qlogic, Corporation Method and system for routing network information
US8238255B2 (en) * 2006-11-22 2012-08-07 Foundry Networks, Llc Recovering from failures without impact on data traffic in a shared bus architecture
US8155011B2 (en) * 2007-01-11 2012-04-10 Foundry Networks, Llc Techniques for using dual memory structures for processing failure detection protocol packets
US8037399B2 (en) * 2007-07-18 2011-10-11 Foundry Networks, Llc Techniques for segmented CRC design in high speed networks
US8271859B2 (en) * 2007-07-18 2012-09-18 Foundry Networks Llc Segmented CRC design in high speed networks
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US8509236B2 (en) 2007-09-26 2013-08-13 Foundry Networks, Llc Techniques for selecting paths and/or trunk ports for forwarding traffic flows
US8190881B2 (en) 2007-10-15 2012-05-29 Foundry Networks Llc Scalable distributed web-based authentication
US8582500B2 (en) * 2008-05-02 2013-11-12 Rochester Institute Of Technology Methods for providing an ad hoc mobile communication network and systems thereof
US8321596B2 (en) * 2008-09-05 2012-11-27 Lsi Corporation SAS paired subtractive routing
US8244948B2 (en) * 2008-09-05 2012-08-14 Lsi Corporation Method and system for combining multiple SAS expanders into a SAS switch
US8265071B2 (en) 2008-09-11 2012-09-11 Juniper Networks, Inc. Methods and apparatus related to a flexible data center security architecture
US8755396B2 (en) * 2008-09-11 2014-06-17 Juniper Networks, Inc. Methods and apparatus related to flow control within a data center switch fabric
US8340088B2 (en) * 2008-09-11 2012-12-25 Juniper Networks, Inc. Methods and apparatus related to a low cost data center architecture
US8730954B2 (en) * 2008-09-11 2014-05-20 Juniper Networks, Inc. Methods and apparatus related to any-to-any connectivity within a data center
US8804710B2 (en) * 2008-12-29 2014-08-12 Juniper Networks, Inc. System architecture for a scalable and distributed multi-stage switch fabric
US11271871B2 (en) 2008-09-11 2022-03-08 Juniper Networks, Inc. Methods and apparatus related to a flexible data center security architecture
US9847953B2 (en) 2008-09-11 2017-12-19 Juniper Networks, Inc. Methods and apparatus related to virtualization of data center resources
US8804711B2 (en) * 2008-12-29 2014-08-12 Juniper Networks, Inc. Methods and apparatus related to a modular switch architecture
US20100061367A1 (en) * 2008-09-11 2010-03-11 Pradeep Sindhu Methods and apparatus related to lossless operation within a data center
US8335213B2 (en) * 2008-09-11 2012-12-18 Juniper Networks, Inc. Methods and apparatus related to low latency within a data center
KR101574603B1 (ko) 2008-10-31 2015-12-04 삼성전자주식회사 컨디셔널 프로세싱 방법 및 장치
US8798045B1 (en) 2008-12-29 2014-08-05 Juniper Networks, Inc. Control plane architecture for switch fabrics
US8918631B1 (en) 2009-03-31 2014-12-23 Juniper Networks, Inc. Methods and apparatus for dynamic automated configuration within a control plane of a switch fabric
US9225666B1 (en) 2009-03-31 2015-12-29 Juniper Networks, Inc. Distributed multi-stage switch fabric
US8090901B2 (en) 2009-05-14 2012-01-03 Brocade Communications Systems, Inc. TCAM management approach that minimize movements
US8599850B2 (en) 2009-09-21 2013-12-03 Brocade Communications Systems, Inc. Provisioning single or multistage networks using ethernet service instances (ESIs)
US8184933B1 (en) 2009-09-22 2012-05-22 Juniper Networks, Inc. Systems and methods for identifying cable connections in a computing system
US8599863B2 (en) 2009-10-30 2013-12-03 Calxeda, Inc. System and method for using a multi-protocol fabric module across a distributed server interconnect fabric
US20130107444A1 (en) 2011-10-28 2013-05-02 Calxeda, Inc. System and method for flexible storage and networking provisioning in large scalable processor installations
US9054990B2 (en) 2009-10-30 2015-06-09 Iii Holdings 2, Llc System and method for data center security enhancements leveraging server SOCs or server fabrics
US9465771B2 (en) 2009-09-24 2016-10-11 Iii Holdings 2, Llc Server on a chip and node cards comprising one or more of same
US9069929B2 (en) 2011-10-31 2015-06-30 Iii Holdings 2, Llc Arbitrating usage of serial port in node card of scalable and modular servers
US9077654B2 (en) 2009-10-30 2015-07-07 Iii Holdings 2, Llc System and method for data center security enhancements leveraging managed server SOCs
US9876735B2 (en) * 2009-10-30 2018-01-23 Iii Holdings 2, Llc Performance and power optimized computer system architectures and methods leveraging power optimized tree fabric interconnect
US20110103391A1 (en) 2009-10-30 2011-05-05 Smooth-Stone, Inc. C/O Barry Evans System and method for high-performance, low-power data center interconnect fabric
US9426083B2 (en) * 2009-09-29 2016-08-23 Hewlett Packard Enterprise Development Lp Consistency checking for credit-based control of data communications
US9648102B1 (en) 2012-12-27 2017-05-09 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US9311269B2 (en) 2009-10-30 2016-04-12 Iii Holdings 2, Llc Network proxy for high-performance, low-power data center interconnect fabric
US9680770B2 (en) 2009-10-30 2017-06-13 Iii Holdings 2, Llc System and method for using a multi-protocol fabric module across a distributed server interconnect fabric
US8705500B1 (en) 2009-11-05 2014-04-22 Juniper Networks, Inc. Methods and apparatus for upgrading a switch fabric
US9632930B2 (en) * 2010-03-03 2017-04-25 Cisco Technology, Inc. Sub-area FCID allocation scheme
US8358658B2 (en) * 2010-03-19 2013-01-22 International Business Machines Corporation Implementing ordered and reliable transfer of packets while spraying packets over multiple links
US8694654B1 (en) 2010-03-23 2014-04-08 Juniper Networks, Inc. Host side protocols for use with distributed control plane of a switch
US9813252B2 (en) 2010-03-23 2017-11-07 Juniper Networks, Inc. Multicasting within a distributed control plane of a switch
US8369321B2 (en) 2010-04-01 2013-02-05 Juniper Networks, Inc. Apparatus and methods related to the packaging and cabling infrastructure of a distributed switch fabric
US8718063B2 (en) 2010-07-26 2014-05-06 Juniper Networks, Inc. Methods and apparatus related to route selection within a network
KR101142983B1 (ko) 2010-10-07 2012-05-08 한국과학기술원 패킷 스위칭 시스템 및 방법
US8560660B2 (en) 2010-12-15 2013-10-15 Juniper Networks, Inc. Methods and apparatus for managing next hop identifiers in a distributed switch fabric system
US9282060B2 (en) 2010-12-15 2016-03-08 Juniper Networks, Inc. Methods and apparatus for dynamic resource management within a distributed control plane of a switch
US9106527B1 (en) 2010-12-22 2015-08-11 Juniper Networks, Inc. Hierarchical resource groups for providing segregated management access to a distributed switch
US9391796B1 (en) 2010-12-22 2016-07-12 Juniper Networks, Inc. Methods and apparatus for using border gateway protocol (BGP) for converged fibre channel (FC) control plane
US8830838B2 (en) * 2011-09-14 2014-09-09 Hewlett-Packard Development Company, L.P. Node interface indicators
US9531644B2 (en) 2011-12-21 2016-12-27 Juniper Networks, Inc. Methods and apparatus for a distributed fibre channel control plane
US9282036B2 (en) 2013-02-20 2016-03-08 International Business Machines Corporation Directed route load/store packets for distributed switch initialization
US9276760B2 (en) 2013-03-15 2016-03-01 International Business Machines Corporation Directed route load/store packets for distributed switch initialization

Family Cites Families (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4162375A (en) 1972-03-23 1979-07-24 Siemens Aktiengesellschaft Time-divison multiplex switching network with spatial switching stages
GB2074815B (en) 1980-04-24 1984-06-27 Plessey Co Ltd Telecommunications switching network using digital switching modules
US4475192A (en) 1982-02-16 1984-10-02 At&T Bell Laboratories Data packet flow control scheme for switching networks
US4546468A (en) 1982-09-13 1985-10-08 At&T Bell Laboratories Switching network control circuit
US4569043A (en) 1983-06-22 1986-02-04 Gte Automatic Electric Inc. Arrangement for interfacing the space stage to the time stages of a T-S-T digital switching system
JPH0695693B2 (ja) * 1984-04-17 1994-11-24 日本電気株式会社 時分割多重時間スイッチ回路
US4725835A (en) 1985-09-13 1988-02-16 T-Bar Incorporated Time multiplexed bus matrix switching system
JP2972257B2 (ja) * 1990-01-24 1999-11-08 株式会社日立製作所 パケット交換機
US4821034A (en) 1987-02-06 1989-04-11 Ancor Communications, Inc. Digital exchange switch element and network
US5144622A (en) * 1988-02-15 1992-09-01 Hitachi, Ltd. Network system
AU629794B2 (en) * 1988-05-28 1992-10-15 Alcatel N.V. Communication system and switching element used therein
FR2646036B1 (fr) * 1989-04-13 1995-08-18 Cit Alcatel Centre satellite numerique multiservice en technique temporelle asynchrone de raccordement d'abonnes
LU87975A1 (de) * 1991-03-14 1992-04-15 Siemens Ag Zweistufige,zumindest gedoppelte atm-umkehr-koppelanordnung mit(2nx2n)-koppelvielfachen
JP3077089B2 (ja) * 1991-03-18 2000-08-14 富士通株式会社 Atmネットワークのループバックテスト方法
US5367520A (en) * 1992-11-25 1994-11-22 Bell Communcations Research, Inc. Method and system for routing cells in an ATM switch
US5412653A (en) * 1993-10-15 1995-05-02 International Business Machines Corporation Dynamic switch cascading system
GB9401092D0 (en) * 1994-01-21 1994-03-16 Newbridge Networks Corp A network management system
GB9408574D0 (en) * 1994-04-29 1994-06-22 Newbridge Networks Corp Atm switching system
US5633867A (en) 1994-07-01 1997-05-27 Digital Equipment Corporation Local memory buffers management for an ATM adapter implementing credit based flow control
US5598541A (en) 1994-10-24 1997-01-28 Lsi Logic Corporation Node loop port communication interface super core for fibre channel
US5687172A (en) * 1994-12-30 1997-11-11 Lucent Technologies Inc. Terabit per second distribution network
US5528591A (en) 1995-01-31 1996-06-18 Mitsubishi Electric Research Laboratories, Inc. End-to-end credit-based flow control system in a digital communication network
JPH0946350A (ja) * 1995-07-27 1997-02-14 Oki Electric Ind Co Ltd 物理ループバック制御回路及びatm交換機
US5748612A (en) * 1995-08-10 1998-05-05 Mcdata Corporation Method and apparatus for implementing virtual circuits in a fibre channel system
US6047323A (en) * 1995-10-19 2000-04-04 Hewlett-Packard Company Creation and migration of distributed streams in clusters of networked computers
JPH09116937A (ja) * 1995-10-23 1997-05-02 Oki Electric Ind Co Ltd 構内交換機の回線系インタフェース
US5610745A (en) 1995-10-26 1997-03-11 Hewlett-Packard Co. Method and apparatus for tracking buffer availability
JPH09247176A (ja) 1996-03-11 1997-09-19 Hitachi Ltd 非同期転送モード交換方式
US5894481A (en) * 1996-09-11 1999-04-13 Mcdata Corporation Fiber channel switch employing distributed queuing
KR100194813B1 (ko) 1996-12-05 1999-06-15 정선종 멀티채널/멀티캐스트 스위칭 기능을 갖는 패킷 스위칭장치 및 이를 이용한 패킷 스위칭 시스템
US6188690B1 (en) * 1996-12-12 2001-02-13 Pmc-Sierra, Inc. Method and apparatus for high speed, scalable communication system
JP3156623B2 (ja) * 1997-01-31 2001-04-16 日本電気株式会社 ファイバチャネルファブリック
US6014383A (en) 1997-02-10 2000-01-11 Compaq Computer Corporation System and method for controlling multiple initiators in a fibre channel environment
US6185203B1 (en) 1997-02-18 2001-02-06 Vixel Corporation Fibre channel switching fabric
US6118776A (en) 1997-02-18 2000-09-12 Vixel Corporation Methods and apparatus for fiber channel interconnection of private loop devices
US6160813A (en) 1997-03-21 2000-12-12 Brocade Communications Systems, Inc. Fibre channel switching system and method
US5825748A (en) 1997-04-08 1998-10-20 International Business Machines Corporation Credit-based flow control checking and correction system
US5987028A (en) * 1997-05-12 1999-11-16 Industrial Technology Research Insitute Multiple channel ATM switch
US6081512A (en) * 1997-06-30 2000-06-27 Sun Microsystems, Inc. Spanning tree support in a high performance network device
US6246680B1 (en) * 1997-06-30 2001-06-12 Sun Microsystems, Inc. Highly integrated multi-layer switch element architecture
US6324181B1 (en) 1998-04-16 2001-11-27 3Com Corporation Fibre channel switched arbitrated loop
WO1999056433A2 (en) 1998-04-29 1999-11-04 Abrizio, Inc. Packet-switch system
US6289386B1 (en) 1998-05-11 2001-09-11 Lsi Logic Corporation Implementation of a divide algorithm for buffer credit calculation in a high speed serial channel
US6411599B1 (en) * 1998-05-29 2002-06-25 International Business Machines Corporation Fault tolerant switching architecture
US6330236B1 (en) 1998-06-11 2001-12-11 Synchrodyne Networks, Inc. Packet switching method with time-based routing
US7756986B2 (en) 1998-06-30 2010-07-13 Emc Corporation Method and apparatus for providing data management for a storage system coupled to a network
US7165152B2 (en) 1998-06-30 2007-01-16 Emc Corporation Method and apparatus for managing access to storage devices in a storage system with access control
US6885664B2 (en) 1998-07-22 2005-04-26 Synchrodyne Networks, Inc. Distributed switching system and method with time-based routing
US6597691B1 (en) 1998-09-01 2003-07-22 Ancor Communications, Inc. High performance switching
US6765919B1 (en) 1998-10-23 2004-07-20 Brocade Communications Systems, Inc. Method and system for creating and implementing zones within a fibre channel system
US6308220B1 (en) * 1999-01-29 2001-10-23 Neomagic Corp. Circulating parallel-search engine with random inputs for network routing table stored in a wide embedded DRAM
US6424658B1 (en) * 1999-01-29 2002-07-23 Neomagic Corp. Store-and-forward network switch using an embedded DRAM
US6697359B1 (en) * 1999-07-02 2004-02-24 Ancor Communications, Inc. High performance switch fabric element and switch systems
ATE411675T1 (de) 1999-12-10 2008-10-15 Qlogic Switch Products Inc Verfahren und vorrichtung zur kreditbasierten flusskontrolle in fibre-channel systemen
US6484173B1 (en) 2000-02-07 2002-11-19 Emc Corporation Controlling access to a storage device
CA2410932C (en) 2000-06-05 2010-04-13 Qlogic Switch Products, Inc. Hardware-enforced loop-level hard zoning for fibre channel switch fabric

Also Published As

Publication number Publication date
ATE339828T1 (de) 2006-10-15
US6697359B1 (en) 2004-02-24
EP1206860B1 (de) 2006-09-13
DE60030737D1 (de) 2006-10-26
US7408927B2 (en) 2008-08-05
EP1206860A1 (de) 2002-05-22
WO2001003384A9 (en) 2002-07-25
JP2003503955A (ja) 2003-01-28
US20040141521A1 (en) 2004-07-22
WO2001003384A1 (en) 2001-01-11

Similar Documents

Publication Publication Date Title
DE60030737T2 (de) Hochleistungs-Vermittlungselement und -Vermittlungssystem
DE69832769T2 (de) Netzwerkkommunikationsvorrichtung mit gebundenen Toren für erhöhte Bandbreite
DE60031274T2 (de) Mehrfachanschlussverfahren und -gerät für vituelle ports
DE69233588T2 (de) ATM-Vermittlungsanordnung
DE60226268T2 (de) Verfahren und vorrichtung zur bereitstellung einer optimierten ausnutzung schneller strecken
DE69734968T2 (de) Vermittlungssystem mit verteilten Elementen zur Verbindung mit Leitungsanpassern und mit Mehrfachübertragungsmöglichkeit
DE69934644T2 (de) Netzwerkvermittlungseinrichtung mit auf der Basis von Benutzung verteilten Umleitungsdatenbanken
DE60309947T2 (de) Hochgeschwindigkeitsprotokoll für die Verbindung von modularen Netzwerkelementen
DE19849776B4 (de) Skalierbare mehrstufige Verbindungsnetzarchitektur und Verfahren zum Durchführen einer Erweiterung dieser Architektur während des Betriebes
DE60212626T2 (de) Endknotenunterteilung mittels lokaler identifikatoren
DE60316357T2 (de) Port-adapter für einen bus mit hoher bandbreite
EP0447841B1 (de) Verfahren zum Einrichten von virtuellen Verbindungen in nach einem asynchronen Transfermodus arbeitenden Vermittlungseinrichtungen
DE60303026T2 (de) System, verfahren und produkt zur verwaltung des datenverkehrs in einem netzwerk
DE102015102871A1 (de) Technologien für verteilten Leitweglenkungstabellennachschlag
DE60032357T2 (de) Verbindungsarchitektur um minderbandbreitige verbindungen über eine hoch-bandbreitige verkettung zu verwalten
DE60317155T2 (de) Netzwerkeinheiten zur Verwendung in und Organisation von Kaskadensystemen
DE60130082T2 (de) Vermittlungsanordnung mit mehreren Modulen in einem Rahmen
DE60125678T2 (de) Vermittlungstelle mit Flusssteurungverwaltung
DE112013001426B4 (de) Dynamische Optimierung einer Multicast-Baumhierarchie für einen verteilten Switch
DE69937185T2 (de) Verfahren und vorrichtung zum paketbeförderungsnachschlagen mit einer reduzierten anzahl von speicherzugriffen
DE60112011T2 (de) Verfahren und Vorrichtung zum Filtern von Paketen basierend auf Datenströme unter Verwendung von Addressentabellen
WO2003054644A2 (de) Datenübertragungsverfahren, serielles bussystem und anschalteinheit für einen passiven busteilnehmer
DE69938257T2 (de) Interne leitweglenkung durch einen mehrstufigen atm knoten
DE19609265B4 (de) Kommunikationseinrichtung mit asynchronem Übertragungmodus und daraus aufgebautes Kommunikationsnetzwerk
DE60125300T2 (de) Schaltungsanordnung zum Übertragen von Daten mit Datenpacketierung und-Depacketierung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition