DE60116401T2 - Netzwerkvermittlung mit der Möglichkeit Anschlüsse zu blockieren - Google Patents

Netzwerkvermittlung mit der Möglichkeit Anschlüsse zu blockieren Download PDF

Info

Publication number
DE60116401T2
DE60116401T2 DE60116401T DE60116401T DE60116401T2 DE 60116401 T2 DE60116401 T2 DE 60116401T2 DE 60116401 T DE60116401 T DE 60116401T DE 60116401 T DE60116401 T DE 60116401T DE 60116401 T2 DE60116401 T2 DE 60116401T2
Authority
DE
Germany
Prior art keywords
port
packet
ports
bitmap
block mask
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
DE60116401T
Other languages
English (en)
Other versions
DE60116401D1 (de
Inventor
Morah 94087 KALKUNTE
Shekhar 95117 AMBE
Sam 94087 SAMPATH
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.)
Broadcom Corp
Original Assignee
Broadcom Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Broadcom Corp filed Critical Broadcom Corp
Application granted granted Critical
Publication of DE60116401D1 publication Critical patent/DE60116401D1/de
Publication of DE60116401T2 publication Critical patent/DE60116401T2/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/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches

Landscapes

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

Description

  • HINTERGRUND DER ERFINDUNG:
  • Gebiet der Erfindung
  • Die Erfindung betrifft ein Verfahren und eine Vorrichtung für das Hochleistungs-Schalten in Lokalbereichs-Kommunikationsnetzwerken wie Token Ring-, ATM-, Ethernet-, Fast Ethernet-, und Gigabit Ethernet-Umgebungen.
  • Beschreibung des einschlägigen Standes der Technik:
  • Mit der steigenden Computerleistung sind in den vergangenen Jahren auch die Anforderungen an Computernetze wesentlich gestiegen; schnellere Computerprozessoren und höhere Speicherkapazitäten erfordern Netzwerke mit hohen Bandbreitenfähigkeiten, um den Hochgeschwindigkeits-Transfer von bedeutenden Datenmengen zu ermöglichen. Die bekannte Ethernet-Technologie, die auf einer Vielzahl von IEEE Ethernetstandards basiert, ist ein Beispiel einer Computernetzwerk-Technologie, die so modifiziert und verbessert werden konnte, dass sie eine brauchbare Computertechnologie geblieben ist. Eine vollständigere Diskussion von Netzwerksystemen des Standes der Technik findet sich beispielsweise in SWITCHED AND FAST ETHERNET, von Breyer und Riley (Ziff-Davis, 1996) und in zahlreichen IEEE-Veröffentlichungen, die sich mit IEEE 802-Standards befassen. Auf der Grundlage des Open Systems Interconnect (OSI) 7-Schicht-Referenzmodells sind die Netzwerkfähigkeiten durch die Entwicklung von Repeatern, Brücken, Routern, und neuerdings Schaltern ("Switches"), die mit verschiedenen Typen von Kommunikationsmedien arbeiten, gestiegen. Thinwire, Thickwire, Twisted Pair und Optical Fiber sind Beispiele von Medien, die für Computernetzwerke verwendet wurden. Switches, die sich auf Computervernetzung und auf Ethernet beziehen, sind auf Hardware basierende Vorrichtungen, die den Fluss von Datenpaketen oder Zellen auf der Grundlage von Zieladressinformationen steuern, die in jedem Paket vorliegen. Ein ordnungsgemäß gestalteter und implementierter Schalter sollte ein Paket empfangen und das Paket mit sogenannter Wirespeed oder Linespeed, die die maximale Geschwindigkeit des jeweiligen Netzwerks darstellt, an einen entsprechenden Ausgangsport schalten können. Die grundlegende Wirespeed bei Ethernet beträgt bis zu 10 Megabit pro Sekunde, bei Fast Ethernet bis zu 100 Megabit pro Sekunde, und Gigabit Ethernet kann Daten mit einer Geschwindigkeit von bis zu 1000 Megabit pro Sekunde über ein Netzwerk übertragen. Das neueste Ethernet wird als 10 Gigabit Ethernet bezeichnet und kann Daten mit einer Geschwindigkeit von bis zu 10.000 Megabit pro Sekunde über ein Netzwerk übertragen. Mit der Zunahme der Geschwindigkeit sind auch die Einschränkungen und Anforderungen für das Design hinsichtlich des geeigneten Designs und der Protokollregeln sowie hinsichtlich der Bereitstellung einer kostengünstigen, kommerziell brauchbaren Lösung immer komplexer geworden.
  • Bezug nehmend auf das vorstehend erläuterte OSI 7-Schicht-Referenzmodell enthalten die höheren Schichten typischerweise mehr Informationen. Es gibt unterschiedliche Arten von Produkten zur Durchführung von Switching Funktionen auf unterschiedlichen Ebenen des OSI-Modells. Hubs oder Repeater arbeiten in Schicht 1 und kopieren und senden ("broadcast") ankommende Daten im Wesentlichen zu einer Mehrzahl von "Speichen" des Hubs. Auf Switching bezogene Vorrichtungen von Schicht 2 werden typischerweise als Multiport-Brücken bezeichnet und sind in der Lage, zwei separate Netzwerke zu überbrücken. Brücken können eine Tabelle von Weiterleitungsregeln darauf basierend aufbauen, auf welchen MAC(Media Access Controller)-Adressen Ports der Brücke vorhanden sind, und geben Pakete weiter, die für eine auf einer gegenüberliegenden Seite der Brücke gelegene Adresse bestimmt sind. Brücken verwenden typischerweise einen als "Spanning Tree" bekannten Algorithmus, um potenzielle Datenschleifen zu eliminieren; eine Datenschleife ist eine Situation, in der ein Paket auf der Suche nach einer bestimmten Adresse endlos eine Schleife in einem Netzwerk durchläuft. Der Spanning Tree-Algorithmus definiert ein Protokoll zum Vermeiden von Datenschleifen. Schalter der Schicht 3, die zuweilen als Router bezeichnet werden, können Pakete basierend auf der Ziel-Netzadresse weiterleiten. Schalter der Schicht 3 sind in der Lage, Adressen zu lernen und Tabellen davon zu führen, die Port-Abbildungen entsprechen. Die Verarbeitungsgeschwindigkeit für Schalter der Schicht 3 kann durch die Verwendung von spezialisierter, hochleistungsfähiger Hardware und Offloaden der Host-CPU verbessert werden, so dass Befehlsentscheidungen die Weiterleitung von Paketen nicht verzögern.
  • Die EP-A-0 961 443 betrifft einen Schalter gemäß dem Oberbegriff von Anspruch 1.
  • Es ist Aufgabe der vorliegenden Erfindung, eine hohe Fluidität für paketvermittelte Kommunikationsnetzwerke zur Verfügung zu stellen.
  • Erfindungsgemäß wird diese Aufgabe durch den Schalter nach Anspruch 1 und das Verfahren nach Anspruch 5 gelöst. Vorteilhafte Ausführungsformen der Erfindung sind in den Unteransprüchen definiert.
  • Die vorliegende Erfindung ist in einer Ausführungsform auf einen Schalter gerichtet, der so konfiguriert ist, dass er Pakete von der Übertragung durch designierte Ports abblockt. Der Schalter kann einen Port Bitmap Generator aufweisen, der so konfiguriert ist, dass eine Port Bitmap erhalten wird, und eine Tabelle, die so konfiguriert ist, dass eine Blockmaske gespeichert wird, die angibt, an welchen Port das Paket nicht übertragen werden soll. Eine Blockmasken-Nachschlageeinrichtung kann so konfiguriert sein, dass sie die Blockmaske für das Paket aus der Tabelle bestimmt, und ein Sendeport Bitmap Generator kann so konfiguriert sein, dass er unter Verwendung der Port Bitmap und der Blockmaske bestimmt, an welche Ports das Paket übertragen werden soll.
  • Bei einer anderen Ausführungsform der Erfindung kann der Schalter eine Port Bitmap Erzeugungseinrichtung zum Erhalten einer Port Bitmap aufweisen, sowie eine Tabellenspeichereinrichtung zum Speichern einer Blockmaske, die angibt, an welchen Port das Paket nicht übertragen werden soll. Der Schalter kann auch eine Blockmasken-Nachschlageeinrichtung zum Ermitteln der Blockmaske für das Paket aus der Tabelle aufweisen, sowie eine Sendeport Bitmap Erzeugungseinrichtung zum Ermitteln, unter Verwendung der Port Bitmap und der Blockmaske, an welche Ports das Paket übertragen werden soll.
  • Bei einer weiteren Ausführungsform ist die Erfindung ein Verfahren zum Verhindern, dass ein Paket an einen Port gesendet wird. Das Verfahren kann die folgenden Schritte aufweisen: Empfangen eines Paketes in einem Port, und Bestimmen einer Port Bitmap, die angibt, auf welchen Ports das Paket gesendet werden soll. Daraufhin wird eine Blockmaske ermittelt, die angibt, auf welchen Ports das Paket nicht gesendet werden soll, und die Ports, auf denen das Paket nicht gesendet werden soll, werden unter Verwendung der Port Bitmap und der Blockmaske bestimmt.
  • KURZBESCHREIBUNG DER ZEICHNUNG:
  • Ein besseres Verständnis der Aufgaben und Merkmale der Erfindung ergibt sich unter Bezugnahme auf die folgende Beschreibung und die beigefügte Zeichnung.
  • Es zeigt:
  • 1A ein Blockdiagramm von mehreren Schaltern, die miteinander verbunden sind, gemäß einer Ausführungsform der Erfindung;
  • 1B ein Blockdiagramm eines Schalters mit einer Port-Blockierfähigkeit gemäß einer Ausführungsform der Erfindung.
  • 2 eine Darstellung eines Pakets auf einem Stack Link gemäß der Erfindung;
  • 3 eine Darstellung eines Stack Tags gemäß der Erfindung;
  • 4 eine Darstellung einer PTABLE gemäß der Erfindung;
  • 5A und 5B Indices für die PTABLE gemäß der Erfindung; und
  • 6 ein Flussdiagramm der Schritte, die gemäß einer Ausführungsform der Erfindung beim Blockieren von Ports verwendet werden können.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN:
  • 1A ist eine Darstellung einer Ausführungsform der Erfindung, bei der ein 5-Blade-Schaltergehäuse vier Port Blades und ein Fabric Blade aufweist. Es sind verschiedene Konfigurationen möglich. Jede der vier Port Blades weist Anschlüsse für einen Schalter auf, der für Ein- und Ausgänge verwendet wird. Wie in 1A dargestellt ist, sitzt Schalter 1 auf einer ersten Port Blade, Schalter 2 sitzt auf einer zweiten Port Blade, Schalter 3 sitzt auf einer dritten Port Blade, und Schalter 4 sitzt auf einer vierten Port Blade.
  • Jede der Port Blades kann gemäß der Darstellung in 1A einen Mikro-Controller aufweisen. Jeder der Mikro-Controller kann mit einem Hochgeschwindigkeitsbus verbunden sein und kann dazu verwendet werden, die Ein- und Ausgänge zu verwalten, die jedem der Schalter, d.h. Schalter 1, Schalter 2, Schalter 3 und Schalter 4, zugeordnet sind.
  • Ein fünfter Schalter, Schalter 5, kann mit der Fabric Blade verbunden sein. Die Fabric Blade gemäß der Darstellung in 1A kann mit einer CPU verbunden sein. Bei diesem Beispiel kann es nötig oder wünschenswert werden, Informationen wie etwa Steuerrahmen oder Steuerpakete, auch bekannt als BPDUs, und jeden Verwaltungsverkehr an die mit der Fabric Blade verbundene CPU zu senden. Dies kann be werkstelligt werden, indem jeder der Schalter auf den Port Blades durch einen Stacking Link mit der Fabric Blade verbunden wird und eine Port-Steuerfunktion eines Fast Filtering Processors (FFP) anwendet. Bei der in 1A veranschaulichten Ausführungsform ist jeder der Schalter auf den Port Blades, Schalter 1, 2, 3 und 4, mit Schalter 5 auf dem Fabric Blade durch ein Gigabit Port verbunden.
  • 1B ist ein Blockdiagramm eines Schalters mit Port-Blockierfähigkeit gemäß einer Ausführungsform der Erfindung. Der Schalter weist eine Blockmaskentabelle auf. Die Blockmaskentabelle kann Bitmaps der Ports in dem Schalter aufweisen, wobei jedes Bit für einen Port in dem Schalter steht. Wenn ein Bit, das einem Port entspricht, gesetzt ist, so kann dies anzeigen, dass ein Paket an diesen Port übertragen werden kann. Wenn das Bit nicht gesetzt ist, ist der Port also blockiert, und es sollen keine Pakete an diesen Port übertragen werden. Somit kann die Blockmaskentabelle dazu verwendet werden, anzugeben, an welche Ports ein Paket gesendet bzw. nicht gesendet werden soll. Eine Blockmasken-Nachschlageeinrichtung ist vorgesehen, so dass eine Bitmap in der Blockmaskentabelle aufgefunden werden kann. Bei einer Ausführungsform der Erfindung wird die Bitmap durch die Blockmasken-Nachschlageeinrichtung in der Blockmaskentabelle auf der Grundlage davon, auf welchem Port das Paket verschickt wurde, nachgeschlagen.
  • Jeder Schalter kann auch einen Port Bitmap Generator aufweisen, der eine Port Bitmap des Schalters erzeugt, um zu bestimmen, an welchen Port bzw. welche Ports ein Paket gesendet werden soll. Eine Port Bitmap kann beispielsweise den Bitmaps von Ports ähnlich sein, die in der Blockmaskentabelle gespeichert sind. Jedes Bit in der Bitmap kann einem Port in dem Schalter entsprechen. Wenn ein Bit gesetzt ist, so kann dies anzeigen, dass das Paket an den entsprechenden Port gesendet werden soll. Wenn das Bit nicht gesetzt ist, soll das Paket nicht an den Port gesendet werden.
  • Um zu bestimmen, ob ein Paket an einen bestimmten Port gesendet werden soll, kann ein Transmit Port Generator vorgesehen werden, der Bitmaps vom Port Bitmap Generator und von der Blockmaskentabelle durch die Blockmasken-Nachschlageeinrichtung empfangen kann. Der Transmit Port Generator kann beispielsweise ein logisches UND zwischen der Bitmap vom Port Bitmap Generator und der Bitmap von der Blockmaskentabelle durchführen. Wenn das Ergebnis eine logische Eins ist, soll das Paket an den designierten Port gesendet werden. Andernfalls wird das Paket nicht an den Port gesendet.
  • Wenn ein Paket beispielsweise nicht an Port 3 eines Schalters gesendet werden soll, kann die Bitmap von der Blockmaskentabelle 11011111 sein. Die Null in dem dritten Bit zeigt an, dass das Paket nicht an den dritten Port gesendet werden soll. Bei diesem Beispiel sei nun angenommen, dass das Paket an die Ports 3, 4, 5 und 8 gesendet werden soll. Die Bitmap vom Port Bitmap Generator könnte 00111001 sein. Der Transmit Port Generator kann bei einer Ausführungsform der Erfindung dann ein logisches UND zwischen der Bitmap von der Blockmaskentabelle (11011111) und der Bitmap vom Port Bitmap Generator (00111001) durchführen. Das Resultat dieses logischen UND wäre eine Bitmap 00011001, und das Paket wird an die Ports 4, 5 und 8 gesendet. Es wird angemerkt, dass, obgleich das Paket an Port 3 des Schalters gesendet werden sollte, das Senden des Paketes an Port 3 abgeblockt wurde, da in der Bitmap von der Blockmaskentabelle das dritte Bit, das Port 3 entspricht, auf Null gesetzt war.
  • 2 ist eine Darstellung einiger der Felder eines Paketes auf einem Stack Link. Das Feld DA kann verwendet werden, um die Zieladresse anzugeben, das Feld SA kann verwendet werden, um die Quelladresse anzugeben, der VLAN Tag kann verwendet werden, um anzugeben, ob das Paket Teil eines Virtual Local Area Network (VLAN) ist, und kann angeben, zu welchem VLAN das Paket gehört, der Stack Tag kann verwendet werden, um nützliche Informationen in Bezug auf ein Paket zu übertragen, und das Feld Type/Len kann verwendet werden, um die Länge und/oder den Typ des Datenfeldes anzugeben.
  • 3 ist eine Darstellung eines Stack Tags, der bei der vorliegenden Erfindung verwendet werden kann und nützliche Informationen für ein Paket enthält. Bei einer Ausführungsform der Erfindung kann der Stack Tag Informationen enthalten, die für Link Aggregation oder Trunking, Mirroring und/oder Port Blocking relevant sind.
  • Trunking bezieht sich darauf, dass mehrere Ports eines Schalters gebündelt werden, um als ein einziger Schalter mit einer großen Bandbreite zu fungieren. Wenn beispielsweise zwei 8-Port-Schalter gebündelt werden, wobei zwei der Ports für Bündelungszwecke verwendet werden, werden sechs Ports an jedem Schalter als Ein/Ausgangports verwendet, und zwei Ports an jedem Schalter werden als ein einziger Port identifiziert, um Informationen zwischen den Schaltern zu übertragen. Daher würden die beiden zusammen gebündelten Ports als ein einziger Port mit der doppelten Bandbreite arbeiten.
  • Mirroring wird dazu verwendet, Informationen in Bezug auf die Aktivität, die an einem Port auf einem Schalter stattfindet, an einen Mirror-to-Port (MTP) auf einem Schalter zu übertragen. Diese Funktion kann beim Überwachen der Aktivität an einem Port nützlich sein. Beispielsweise wenn es erwünscht ist, einen Port an einem Schalter zu überwachen, könnte eine Spiegelung für den Port aktiviert werden. Wenn eine Spiegelung für diesen Port aktiviert ist, wird jede Aktivität, die an dem Port stattfindet, an den MTP weitergeleitet und kann weiter analysiert werden.
  • Port Blocking kann verwendet werden, um das Übertragen bestimmter Informationen an einen Port zu blockieren. Beispielsweise wenn Studenten, die einen Port in einer Schulnetzumgebung verwenden, keinen Zugriff auf bestimmte Arten von schutzwürdigen Informationen haben sollen, kann eine Portblockierung verwendet werden, um den Transfer dieser schutzwürdigen Informationen an bestimmte Ports zu blockieren.
  • Der Stack Tag kann verwendet werden, um wertvolle Informationen zu übertragen, um die oben genannte und weitere Funktionen durchzuführen. Einige Beispiele für die Felder des Stack Tags sind nachstehend beschrieben.
  • Das Feld Stack_Cnt kann beispielsweise fünf Bit lang sein und gibt die Anzahl von Stationen an, die das Paket durchlaufen kann, bevor es gelöscht wird. Die Anzahl von Stationen bezieht sich darauf, wie oft das Paket von einem Schalter zu einem anderen Schalter übertragen wird.
  • Das Feld SRC_T ist in der Darstellung dieses Beispiels ein Bit lang. Wenn dieses Bit gesetzt ist, dann ist der Quellport Teil der Bündelgruppe (Trunk Group).
  • Das Feld SRC_TGID kann drei Bit lang sein. Dieses Feld identifiziert die Bündelgruppe, wenn das SRC_T-Bit gesetzt ist.
  • Das Feld SRC_RTAG kann drei Bit lang sein und identifiziert die Bündelwahl für den Quellbündel-Port.
  • Das Feld DST_T kann ein Bit lang sein, und wenn dieses Bit gesetzt ist, gibt es an, dass der Zielport Teil einer Bündelgruppe ist.
  • Das Feld DST_TGID kann drei Bit lang sein und identifiziert die Bündelgruppe, wenn das DST_T-Bit gesetzt ist.
  • Das Feld DST_RTAG kann drei Bit lang sein. Dieses Feld identifiziert das Bündelwahlkriterium, wenn das DST_T-Bit gesetzt ist.
  • Das Feld PFM ist zwei Bit lang und gibt den Port-Filtermodus für einen Eintrittport an.
  • Das Feld M kann ein Bit lang sein. Wenn dieses Bit gesetzt ist, so ist dies ein gespiegeltes Paket.
  • Das Feld MD kann 1 Bit lang sein. Wenn dieses Bit gesetzt ist und das M-Bit gesetzt ist, wird das Paket nur an den Mirrored-to-Port gesendet. Wenn dieses Bit nicht gesetzt ist und das M-Bit gesetzt ist, wird das Paket an den Mirrored-to-Port (MTP) sowie den Zielport gesendet (für Eintritt-Mirroring). Wenn dieses Bit gesetzt ist und das M-Bit nicht gesetzt ist, wird das Paket fallen gelassen, ohne gespiegelt zu werden.
  • Das Feld EM ist ein Bit lang. Dieses Bit wird gesetzt, wenn – und nur wenn – das Paket von einem Modul weiter geleitet wurde, dessen MTP nicht der Stack Link ist, ohne an den MTP weiter geleitet zu werden.
  • Das Feld ED ist ein Bit lang. Dieses Bit wird gesetzt, wenn – und nur wenn – das Paket an einen MTP weiter geleitet wurde, der nicht Teil eines Bündels ist.
  • Das Feld Stack_Modid ist fünf Bit lang. Jedes Modul in dem Stack besitzt eine ID. Das Quellmodul setzt seine ID in dieses Feld ein, wenn ein Paket gesendet wird. Dies wird in der Hauptsache für Software verwendet, um zu bestimmen, ob ein Schalter in dem Stack außer Betrieb ist.
  • Für einen Fachmann auf diesem Gebiet ist es offensichtlich, dass diese Feldlängen und die auf der Basis des Feldstatus ergriffenen Aktionen obenstehend nur als Bei spiele beschrieben sind. Andere Längen und Aktionen sind innerhalb des Schutzbereiches der Erfindung möglich.
  • Der Stack Tag kann verwendet werden, um Quellport-Informationen über die Stacking Ports zu übertragen. Bei einer Ausführungsform der Erfindung, wenn das Paket an einem Trunk Port eintrifft, hängt die Eintrittlogik den Stack Tag mit dem Feld SRC_T gesetzt und das SRC_TGID und das SRC_RTAG an. Wenn ein Paket jedoch an einem Port eintrifft, der kein Trunk Port ist, ist SRC_T Null, und das SRC_TGID und das SRC_RTAG werden ignoriert oder sind unbeachtliche Felder.
  • Wenn während des Eintritts ein Paket an einem Port eintrifft, der kein Trunk Port ist, schreibt die Eintrittlogik den Quellport in die Felder SRC_TGID und SRC_RTAG. Obgleich SRC_TGID und SRC_RTAG Felder mit jeweils drei Bit sind, mit insgesamt 6 Bit-Feldern in der Kombination, werden nur die ersten fünf Bit benötigt. Wenn die Fabric-CPU ein Paket mit einem Stack Tag empfängt, wobei das SRC_T-Bit Null ist, werden die Felder SRC_TGID und SRC_RTAG als der Quellport interpretiert, um zu bestimmen, wohin das Paket gesendet werden soll.
  • 4 ist eine Darstellung eines Beispiels für eine PTABLE der vorliegenden Erfindung, bei der es sich um eine Software- oder Hardwaretabelle handeln könnte. Die PTABLE könnte in der Fabrik vordefiniert werden oder so eingerichtet sein, dass sie von einem Endverbraucher konfiguriert wird. Bei einer Ausführungsform der Erfindung stellt die PTABLE eine Per-Port-Bitmaske zur Verfügung, die verwendet wird, um die Gruppe von Austrittports zu definieren, die für einen spezifischen Eintrittport blockiert sein soll. Wenn ein Paket an einem Eintrittport empfangen wird, wird die von dem Schalter berechnete Austritt-Bitmap mit der Bitmaske UND-verarbeitet, um zu bestimmen, auf welchen Ports das Paket weiter geleitet werden soll. Bei einer Ausführungsform der Erfindung wird der Quellport im Stack Tag weiter gegeben.
  • Die Quellport-Informationen können in dem gleichen Feld wie SRC_TGID und SRC_RTAG weiter gegeben werden. Wenn das SRC_T-Bit im Stack Tag gesetzt ist, gibt das Feld SRC_TGID die Quellbündelgruppen-Identifikation an. Andernfalls geben die Felder SRC_TGID und SRC_RTAG den Quellport an.
  • Die PTABLE kann als eine STACKMASK-Tabelle für den Stacking Port verwendet werden. Eine STACKMASK-Tabelle kann bei einer Ausführungsform der Erfindung eine Per-Port-Bitmaske zur Verfügung stellen, die verwendet wird, um die Gruppe von Austrittports zu definieren, die für einen spezifischen Eintrittport blockiert sein soll, wenn ein Paket über den Stacking Port gesendet wird. Diese Tabelle kann 256 Bit tief und 32 Bit breit sein. Der Index für diese Tabelle ist Stack_modid + SRC_T + SRC_TGID/Src_Port. Die Felder Stack_modid, SRC_T, SRC_TGID, und Src_Port können aus dem Stack Tag erhalten werden. Der Antwortwert, PORT_BLOCK_MASK, ist eine Bitmaske, welche die Gruppe von Austrittports angibt, an die das Paket nicht weiter geleitet werden soll. Wenn das SRC_T-Bit gesetzt ist, ist der Index Stack_modid + SRC_T + SRC_TGID. Wenn das SRC_T-Bit nicht gesetzt ist, ist der Index Stac_modid + SRC_T + Src_Port. Das Blockieren von Ports über einen Stapel von zumindest vier Vorrichtungen kann durch eine Tabelle zur Verfügung gestellt werden, die 256 Bit tief ist, und kann durch Stack_Modid + SRC_T + SRC_TGID/Src_Port indiziert sein.
  • Der Index der Tabelle wird gemäß der Darstellung in 5A berechnet, wenn das SRC_T-Bit im Stack Tag gesetzt ist. Bei diesem Beispiel werden die niedrigen 2 Bit von Stack_Modid für zwei Bit des Index verwendet, und SRC_T wird als ein Bit des Index verwendet. Schließlich werden zwei Nullen an die drei Bit SRC_TGID angehängt, um die fünf Bit des Index zu erhalten.
  • Der Index der Tabelle wird gemäß der Darstellung in 5B berechnet, wenn das SRC_T-Bit im Stack Tag nicht gesetzt ist. Die niedrigen 2 Bit von Stack_Modid werden als zwei Bit des Index verwendet, und SRC_T wird als ein Bit des Index verwendet. Fünf Bit von Src_Port werden schließlich als fünf Bit des Index verwendet.
  • 6 ist ein Flussdiagramm von Schritten, die bei einer Ausführungsform der Erfindung ausgeführt werden, um zu verhindern, dass ein Paket an einen Port gesendet wird. Der erste Schritt 610 ist es, ein Paket im Eintritt eines Port zu empfangen. Anfänglich, wenn ein Paket im Eintritt eines Port empfangen wird, wird eine Adressresolution (ARL) an dem Paket vorgenommen.
  • In Schritt 620 kann eine ARL an dem Paket vorgenommen werden, um eine Port Bitmap zu ermitteln, die alle Ports angibt, an die das Paket weiter geleitet werden muss. In Schritt 630 wird eine Blockmaske ermittelt, um anzugeben, an welche Ports das Paket nicht weiter geleitet werden soll. Es kann beispielsweise eine Tabelle ge mäß der Darstellung in 4 verwendet werden, um eine PORT_BLOCK_MASK für ein Paket zu ermitteln.
  • In Schritt 640 kann die Port Bitmap logisch mit der PORT_BLOCK_MASK UNDverarbeitet werden, um eine Port Bitmap zu ermitteln, die angibt, an welche Ports das Paket nicht weiter geleitet werden soll. Diese Port Bitmap kann ermittelt werden, bevor die Verarbeitung in die FFP- und Minoring-Logik eintritt. Wenn das Paket etikettiert ist, entnimmt die Logik die PORT_BLOCK_MASK für den Eintrittport und eine VLAN-Bitmap aus einer VTABLE. Dies ermöglicht es, dass das Paket an den Ports in der lokalen Vorrichtung abgeblockt wird. Wenn das Paket an einem Stack Port eintrifft, durchläuft es die ARL-Logik, um die Port Bitmap für die gegenwärtige Vorrichtung zu erhalten. Die PORT_BLOCK_MASK für den Stapelport wird durch Indizieren der STACKMASK-Tabelle mit dem vom Stack Tag erhaltenen Src_Modid + SRC_T + Src_Port erhalten. Die Port Bitmap wird mit der Bitmaske UND-verarbeitet. Dies ermöglicht es, dass das Paket basierend auf dem Eintritt einer anderen Vorrichtung auf der gegenwärtigen Vorrichtung abgeblockt wird.
  • Bei diesem Beispiel können die folgenden Pakete unabhängig von der PORT_BLOCK_MASK für die CPU zur CPU gehen:
    • 1) BPDUs
    • 2) VLAN miss, VID = 0xfff (wenn C_DROP nicht gesetzt ist)
    • 3) Eintrag in der ARL-Tabelle mit C-Bit gesetzt
    • 4) L2 Stationsbewegung auf einem statischen Eintrag in der ARL-Tabelle
    • 5) CML = 1 in der PTABLE
    • 6) CPU-Bit in der PTABLE
  • Eine Portblockierung hat die folgenden Auswirkungen beim Spiegelverhalten. Wenn ein Paket beim Eintritt gespiegelt wurde und das Paket wegen einer Portblockierung nicht an den Zielport weiter geleitet wird, wird das Paket dennoch an den MTP gesendet. Wenn ein bekanntes, unicast-gesendetes Paket wegen einer Portblockierung nicht an einen Austrittport weiter geleitet wird und dieser Port beim Austritt gespiegelt wird, wird das Paket nicht an den MTP gesendet. Wenn mehrere Austrittports gespiegelt werden und mindestens ein Austrittport vorhanden ist, der nicht blockiert ist, wird das Paket an den MTP gesendet.
  • Um Stapeln zu ermöglichen, sollte das Bit in der PORT_BLOCK_MASK, das dem Stack Port entspricht, auf Eins gesetzt sein. Es sollten alle Ports einer Bündelgruppe entweder blockiert oder nicht blockiert sein.
  • Der FFP kann effektiv ein Paket steuern, dessen Übergang von einem Port zu einem anderen Port blockiert wurde. Der Port, zu dem das Paket gesteuert wird, sollte jedoch nicht blockiert sein. Daher sollte der FFP so programmiert sein, dass er keinen Konflikt mit der Portblockierung verursacht.
  • Die obenstehend an einer Ausführungsform erörterte Konfiguration der Erfindung ist auf einem Halbleitersubstrat wie etwa Silizium mit geeigneten Halbleiterherstellungsverfahren ausgeführt und basiert auf einem Schaltungs-Layout, das basierend auf den obenstehend erörterten Ausführungsformen für den Fachmann ersichtlich wäre. Ein Fachmann auf dem Gebiet des Entwurfs und der Herstellung von Halbleitern wäre in der Lage, die verschiedenen Module, Schnittstellen und Tabellen, Puffer usw. der vorliegenden Erfindung basierend auf der obenstehend erörterten architektonischen Beschreibung auf einem einzigen Halbleitersubstrat auszuführen. Es läge auch innerhalb des Schutzbereiches der Erfindung, die offen gelegten Elemente der Erfindung als diskrete elektronische Komponenten und/oder eine Verifizierung von Hardware- und Softwarekomponenten auszuführen, und dadurch die Vorteile der funktionalen Aspekte der Erfindung zu nutzen, ohne die Vorteile durch die Verwendung eines einzigen Halbleitersubstrates zu maximieren.

Claims (8)

  1. Schalter, der so konfiguriert ist, dass er ein Paket von der Übertragung durch designierte Ports abblockt, wobei der Schalter aufweist: Port Bitmap Erzeugungsmittel zum Erhalten einer Port Bitmap; und Sendeport Bitmap Erzeugungsmittel zum Ermitteln, an welche Ports das Paket übertragen werden soll, unter Verwendung der Port Bitmap und einer Blockmaske, die angibt, an welchen Port das Paket nicht übertragen werden soll, dadurch gekennzeichnet, dass der Schalter des Weiteren aufweist: Tabellenspeichermittel zum Speichern von Blockmasken; und Blockmasken-Nachschlagemittel zum Ermitteln einer individuellen Blockmaske für das Paket von den Tabellenspeichermitteln.
  2. Schalter nach Anspruch 1, wobei die Sendeport Bitmap Erzeugungsmittel ein logisches UND zwischen der Port Bitmap und der Blockmaske ausführen.
  3. Schalter nach Anspruch 1, wobei die Port Bitmap Erzeugungsmittel Adressresolutionslogik durchführen können, um die Port Bitmap zu bestimmen.
  4. Schalter nach Anspruch 1, wobei die Tabellenspeichermittel die Blockmaske unter Verwendung einer Quellenportidentifizierung indizieren können.
  5. Verfahren zum Verhindern, dass ein Paket zu einem Port gesendet wird, wobei das Verfahren folgende Schritte aufweist: Empfangen eines Pakets in einem Port; Bestimmen einer Port Bitmap, die angibt, an welche Ports das Paket gesendet werden soll; Bestimmen blockierter Ports, die angeben, an welche Ports das Paket nicht gesendet werden soll, unter Verwendung der Port Bitmap und der Blockmaske; und Verhindern, dass Pakete an die blockierten Ports geschickt werden, dadurch gekennzeichnet, dass das Verfahren des Weiteren den folgenden Schritt aufweist: Ermitteln einer individuellen Blockmaske, die angibt, an welche Ports das Paket nicht gesendet werden soll.
  6. Verfahren nach Anspruch 5, wobei der Schritt des Bestimmens blockierter Ports, die angeben, an welche Ports das Paket nicht gesendet werden soll, des Weiteren den Schritt des Ausführens eines logischen UND zwischen der Port Bitmap und der Blockmaske aufweist.
  7. Verfahren nach Anspruch 5, wobei der Schritt des Bestimmens einer Port Bitmap des Weiteren die folgenden Schritte aufweist: Strippen eines Stack Tags von dem Paket; und Durchführen von Adressresolution auf dem Stack Tag.
  8. Verfahren nach Anspruch 5, wobei der Schritt des Ermittelns einer Port-Blockmaske des Weiteren den Schritt des Lesens der Port-Blockmaske aus einer Tabelle umfasst, die unter Verwendung einer Quellenportidentifizierung des Pakets indiziert worden ist.
DE60116401T 2000-09-20 2001-09-19 Netzwerkvermittlung mit der Möglichkeit Anschlüsse zu blockieren Expired - Lifetime DE60116401T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US23415600P 2000-09-20 2000-09-20
US234156P 2000-09-20

Publications (2)

Publication Number Publication Date
DE60116401D1 DE60116401D1 (de) 2006-03-30
DE60116401T2 true DE60116401T2 (de) 2006-09-07

Family

ID=22880183

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60116401T Expired - Lifetime DE60116401T2 (de) 2000-09-20 2001-09-19 Netzwerkvermittlung mit der Möglichkeit Anschlüsse zu blockieren

Country Status (3)

Country Link
US (1) US7099315B2 (de)
EP (2) EP1193917B1 (de)
DE (1) DE60116401T2 (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030014535A1 (en) * 2001-07-16 2003-01-16 Oscar Mora Collision avoidance method for home automation devices using an ethernet hub
TW550900B (en) * 2002-01-30 2003-09-01 Via Tech Inc Data packet transmission method and network switch using same
GB2384956B (en) * 2002-02-02 2004-01-21 3Com Corp Stacked network routers
GB0227048D0 (en) * 2002-11-20 2002-12-24 3Com Corp Network units for use in and organisation of cascade systems
JP2004320389A (ja) * 2003-04-16 2004-11-11 Nec Corp データ転送システム及びデータ転送装置並びにその転送方法及び制御プログラム
CN100471106C (zh) * 2003-04-29 2009-03-18 华为技术有限公司 根据端口集合隔离网络的方法
US7716363B1 (en) * 2004-02-10 2010-05-11 Cisco Technology, Inc. Method and apparatus of providing zero configuration single source multicasting reporting
US7505403B2 (en) * 2004-10-28 2009-03-17 Alcatel Lucent Stack manager protocol with automatic set up mechanism
US20070081463A1 (en) * 2005-10-11 2007-04-12 Subash Bohra System and Method for Negotiating Stack Link Speed in a Stackable Ethernet Switch System
US8144630B1 (en) * 2006-12-15 2012-03-27 Marvell International Ltd. Apparatus, systems, methods, algorithms and software for control of network switching devices
US9032057B2 (en) 2009-04-06 2015-05-12 Brocade Communications Systems, Inc. Secure stacking setup implementing user interface of stacking device
CN101594304B (zh) * 2009-07-02 2012-02-08 杭州华三通信技术有限公司 防止堆叠系统产生环路的方法和堆叠系统中的成员设备
US9559897B2 (en) 2012-12-21 2017-01-31 Brocade Communications Systems, Inc. Device ID assignment in a system of devices
CN103200101B (zh) * 2013-04-15 2015-12-23 昆山天元昌电子有限公司 基于交换芯片的openflow多表查询的方法及装置
US9148387B2 (en) 2013-05-10 2015-09-29 Brocade Communications Systems, Inc. Hardware hash table virtualization in multi-packet processor networking systems
US9313102B2 (en) 2013-05-20 2016-04-12 Brocade Communications Systems, Inc. Configuration validation in a mixed node topology
US9853889B2 (en) 2013-05-20 2017-12-26 Brocade Communications Systems, Inc. Broadcast and multicast traffic reduction in stacking systems
US10284499B2 (en) 2013-08-22 2019-05-07 Arris Enterprises Llc Dedicated control path architecture for systems of devices
US9185049B2 (en) 2013-10-31 2015-11-10 Brocade Communications Systems, Inc. Techniques for simplifying stacking trunk creation and management
US9577932B2 (en) 2014-02-12 2017-02-21 Brocade Communications Systems, Inc. Techniques for managing ternary content-addressable memory (TCAM) resources in heterogeneous systems
US9692695B2 (en) 2014-03-27 2017-06-27 Brocade Communications Systems, Inc. Techniques for aggregating hardware routing resources in a multi-packet processor networking system
US9692652B2 (en) 2014-04-03 2017-06-27 Brocade Communications Systems, Inc. Framework for reliably communicating port information in a system of devices
US10091059B2 (en) 2014-12-16 2018-10-02 Arris Enterprises Llc Handling connections between network devices that support multiple port communication modes
CN111478858B (zh) * 2020-02-29 2022-05-27 新华三信息安全技术有限公司 一种流量处理的方法、流量的Hash方法和装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2566081B2 (ja) * 1990-12-19 1996-12-25 エイ・ティ・アンド・ティ・コーポレーション 光パケットのエンコーディング方法及びスイッチングノード
JP3178949B2 (ja) * 1993-09-30 2001-06-25 富士通株式会社 Atmスイッチ方式
US6154462A (en) 1997-08-21 2000-11-28 Adc Telecommunications, Inc. Circuits and methods for a ring network
GB9725372D0 (en) * 1997-11-28 1998-01-28 3Com Ireland Trunking in stacked communication devices
US6226292B1 (en) * 1998-03-19 2001-05-01 3Com Corporation Frame replication in a network switch for multi-port frame forwarding
EP0961443B1 (de) * 1998-05-29 2003-08-13 International Business Machines Corporation Vermittlungssystem mit einem Maskiermechanismus zur Änderung des internen Leitweglenkungsprozesses
US6396841B1 (en) * 1998-06-23 2002-05-28 Kingston Technology Co. Dual-speed stackable repeater with internal bridge for cascading or speed-linking
US6389030B1 (en) * 1998-08-21 2002-05-14 Adc Telecommunications, Inc. Internet access over a ring network
US6570875B1 (en) * 1998-10-13 2003-05-27 Intel Corporation Automatic filtering and creation of virtual LANs among a plurality of switch ports
US6512768B1 (en) * 1999-02-26 2003-01-28 Cisco Technology, Inc. Discovery and tag space identifiers in a tag distribution protocol (TDP)
EP1161817B1 (de) * 1999-03-17 2006-10-25 Broadcom Corporation Netzwerkvermittlung
US6628646B1 (en) * 1999-05-14 2003-09-30 Nortel Networks Limited Programmable multicast scheduling for a network device
AU5586400A (en) * 1999-05-21 2000-12-12 Broadcom Corporation Stacked network switch configuration
US6813268B1 (en) * 1999-05-21 2004-11-02 Broadcom Corporation Stacked network switch configuration
GB2350530B (en) * 1999-05-25 2001-05-30 3Com Corp Port mirroring across a trunked stack of multi-port communication devices
US6785272B1 (en) * 1999-06-24 2004-08-31 Allied Telesyn, Inc. Intelligent stacked switching system
US6735198B1 (en) * 1999-12-21 2004-05-11 Cisco Technology, Inc. Method and apparatus for updating and synchronizing forwarding tables in a distributed network switch
US6711161B1 (en) * 2000-02-24 2004-03-23 Advanced Micro Devices, Inc. Arrangement for providing linearly scaleable address forwarding tables within multiple network switch modules
GB2359692B (en) * 2000-02-26 2003-06-25 3Com Corp Stackable network unit including registers for identifying stack members and trunk ports
US6765914B1 (en) * 2000-04-07 2004-07-20 3Com Corporation Generic switch architecture to support flexible subnets across layer-3 devices
US6343078B1 (en) * 2000-05-12 2002-01-29 3Com Corporation Compression of forwarding decisions in a network device
GB2362538B (en) * 2000-05-20 2002-05-08 3Com Corp Method for synchronising databases in stacked network units

Also Published As

Publication number Publication date
EP1193917B1 (de) 2006-01-04
EP1221789A2 (de) 2002-07-10
EP1193917A2 (de) 2002-04-03
US20020057685A1 (en) 2002-05-16
DE60116401D1 (de) 2006-03-30
EP1221789A3 (de) 2002-07-31
US7099315B2 (en) 2006-08-29
EP1193917A3 (de) 2003-02-05

Similar Documents

Publication Publication Date Title
DE60116401T2 (de) Netzwerkvermittlung mit der Möglichkeit Anschlüsse zu blockieren
DE60309947T2 (de) Hochgeschwindigkeitsprotokoll für die Verbindung von modularen Netzwerkelementen
DE60133352T2 (de) Gebundene Netzvermittlungskonfiguration
DE60126222T2 (de) Verbundene Netzvermittlungskonfiguration
DE60126223T2 (de) Anordnung zur Verbindung von Netzvermittlungsstellen
DE60005993T2 (de) Verfahren und netzwerkvermittlungsstelle mit datenserialisierung durch gefahrlose mehrstufige störungsfreie multiplexierung
DE69716451T2 (de) Lastverteilung für redundante netze
DE19929517B4 (de) Vorrichtung und Verfahren zum Zuordnen von VLAN-Markierungen
DE112015004008B4 (de) Selektives abtasten von netzwerkpaketverkehr unter verwendung von virtuelle-maschinen-werkzeugplattformen auf cloud-basis
DE60031274T2 (de) Mehrfachanschlussverfahren und -gerät für vituelle ports
DE60031515T2 (de) Netzwerkvermittlung
DE112012001320B4 (de) Prioritätsgestützte Flusssteuerung in einer Switching-Netzwerkarchitektur mit einem Protokoll einer verteilten Struktur (Distributed Fabric Protocol DFP)
DE69836684T2 (de) Unterstützung von vollständigen bäumen in hochleistungsnetzwerkgeräten
DE60212916T2 (de) Verfahren und Vorrichtung zum Ermöglichen von Zugriffen in einer Vermittlungsstelle
DE60112011T2 (de) Verfahren und Vorrichtung zum Filtern von Paketen basierend auf Datenströme unter Verwendung von Addressentabellen
DE60030737T2 (de) Hochleistungs-Vermittlungselement und -Vermittlungssystem
DE69834823T2 (de) Paketvermittlungsvorrichtung und -verfahren mit zentraler Speicherarchitektur
DE60317155T2 (de) Netzwerkeinheiten zur Verwendung in und Organisation von Kaskadensystemen
DE69423101T2 (de) Virtuelle mehrfachsende-durchschaltvermittlung unter verwendung von zellenrecycling
DE69826680T2 (de) Hochintegrierte mehrschichtige Vermittlungsstellenelementarchitektur
DE69937598T2 (de) Auf Identifikationsmarken basierendes Paketvermittlungssystem
DE69917555T2 (de) Vermittlungseinrichtung mit mehrstufiger Warteschlangeschema
DE60125678T2 (de) Vermittlungstelle mit Flusssteurungverwaltung
DE60130082T2 (de) Vermittlungsanordnung mit mehreren Modulen in einem Rahmen
DE112012002080T5 (de) Switching-Netzwerk-Architektur gemäss dem Distributed Fabric Protocol (DFP)

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: BOSCH JEHLE PATENTANWALTSGESELLSCHAFT MBH, 80639 M