DE10012123A1 - Speicherzugriff im Ethernet - Google Patents

Speicherzugriff im Ethernet

Info

Publication number
DE10012123A1
DE10012123A1 DE10012123A DE10012123A DE10012123A1 DE 10012123 A1 DE10012123 A1 DE 10012123A1 DE 10012123 A DE10012123 A DE 10012123A DE 10012123 A DE10012123 A DE 10012123A DE 10012123 A1 DE10012123 A1 DE 10012123A1
Authority
DE
Germany
Prior art keywords
filter table
address filter
memory
address
bits
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.)
Granted
Application number
DE10012123A
Other languages
English (en)
Other versions
DE10012123B4 (de
Inventor
Jan-Kai Chen
Wei-Pin Chen
Jiann-Hwa Liou
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.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
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 Via Technologies Inc filed Critical Via Technologies Inc
Publication of DE10012123A1 publication Critical patent/DE10012123A1/de
Application granted granted Critical
Publication of DE10012123B4 publication Critical patent/DE10012123B4/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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • 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

Abstract

Eine im Ethernet verwendete Speicherstruktur umfaßt eine Anzahl mehrzeiliger Pufferspeicher. Jeder der mehrzeiligen Pufferspeicher wird auf einen Hash-Schlüssel abgebildet, welcher aus einer MAC-Adresse abgeleitet wird. Jeder der mehrzeiligen Pufferspeicher weist eine Anzahl von Adreßfiltertabellenabschnitten auf, die jeweils eine Anzahl der Adreßfiltertabelleneinträge speichern. Wenn zwei Adreßfiltertabelleneinträge in jedem Adreßfiltertabellenabschnitt eines 4-zeiligen Pufferspeichers gespeichert werden, können 1/4 des Speicherplatzes und 1/2 der Zugriffszeit eingespart werden. So kann die Suche in der Adreßfiltertabelle gemäß der MAC-Adresse im zentralen Ethernet-Logikbaustein (14) durchgeführt werden.

Description

Die vorliegende Anmeldung enthält durch Verweis die taiwanesi­ sche Anmeldung Nr. 88112055, eingereicht am 16.01.1999.
Die Erfindung betrifft generell einen Speicherzugriff im Ethernet, und insbesondere ein verbessertes Hash-Schema, bei welchem die Ursprungseinträge in dem mehrzeiligen Pufferspei­ cher als Einträge und Port-Masken in verschiedenen Speicher­ plätzen getrennt sind.
Die Suche in der Adreßfiltertabelle nach den Ethernet- Zieladressen (MAC-Adressen) ist eine Grundoperation in dem zentralen Switch-Logikbaustein des Ethernet-Switches. Im Ethernet ist ein Server an einem Ethernet-Switch angeschlos­ sen, um Daten zwischen verschiedenen Endgeräten zu übertragen. Ein in dem Ethernet-Switch angeordneter Switch-IC-Chip verbin­ det die Endgeräte gemäß der Adreßfiltertabelle. Herkömmlicher­ weise ist die Adreßfiltertabelle in einem statischen Schreib- Lese-Speicher (SRAM) eingerichtet, um Systemkosten zu senken.
In Fig. 1 ist ein Sender (Rechner) 10 mit einem Port 12 des Ethernet-Switch 11 verbunden, während ein Empfänger (Rechner) 16 mit dem Ethernet-Switch 11 über ein Port 15 verbunden ist. Die Daten, welche von dem Sender 10 weitergeleitet werden, werden durch einen Switch-IC-Chip 14 des Ethernet-Switch 11 empfangen und anschließend zu dem Empfänger 16 weitergegeben.
In Fig. 1 können die Daten des Senders 10 durch den Empfänger 16 empfangen werden, da die MAC-Adresse des Empfängers 16 ebenfalls zusammen mit den Daten gesendet werden. Die MAC- Adresse, welche die Adresse des Ports 15 enthält, das durch den Empfänger 16 verbunden ist, wird durch den Switch-IC-Chip 14 empfangen und anschließend an einen SRAM 18 zur Suche in der Adreßfiltertabelle durch einen 128-Bit-Datenbus 17 über­ tragen. Die Suche der Adreßfiltertabelle gemäß der MAC-Adresse bestimmt das Ziel, an welches die Daten zu übertragen sind.
Die Größe der MAC-Adresse beträgt 48 Bits, und die Gesamtan­ zahl von Rechnern in einem lokalen Netzwerk (LAN) beläuft sich gewöhnlich auf mehrere Zehn bzw. Hundert. Herkömmlicherweise wird ein Hash-Algorithmus angewandt zum Abbilden der MAC- Adresse auf einen Hash-Schlüssel für eine Suche. Der Hash- Schlüssel besteht aus 11 Bits in der 48-Bit-MAC-Adresse, so daß der benötigte Speicher nicht teuer ist.
Jedoch kann aufgrund der Tatsache, daß die MAC-Adressen ver­ schiedener Rechner den gleichen entsprechenden Hash-Schlüssel aufweisen können, der oben erwähnte Hash-Algorithmus zu dem Problem führen, daß die Hash-Schlüssel verschiedener Rechner miteinander in Konflikt sein können. Beispielsweise kann ein 11-Bit-Hash-Schlüssel insgesamt 211 verschiedenen MAC-Adressen entsprechen. In einer Firma ist, wenn sich 400 Clients in dem Ethernet befinden, die Wahrscheinlichkeit, daß sämtliche Hash- Schlüssel voneinander verschieden sind, gleich (2 11 - 1)/211 × (2 11 - 2)/211 × (2 11 - 3)/211 × . . . (2 11 - 397)/211 × (2 11 - 398)/211 × (2 11 - 399)/211 0. Das heißt, es ist sehr wahrscheinlich, daß minde­ stens zwei dieser Hash-Schlüssel in diesem Fall gleich sind.
Bei dem Stand der Technik wird ein Schema eines mehrzeiligen Pufferspeichers angewandt, um die Wahrscheinlichkeit einer Hash-Schlüssel-Gleichheit zu verringern. Die Adreßfiltertabel­ le besteht aus kontinuierlichen mehrzeiligen Pufferspeichern, wobei jeder Pufferspeicher einem eindeutigen Hash-Schlüssel entspricht und mehrere Zeilen aufweist, um einzelne Einträge der Adreßfiltertabelle zu speichern. Bei einer gegebenen MAP- Adresse kann ein Hash-Schlüssel abgeleitet und auf den ent­ sprechenden mehrzeiligen Pufferspeicher abgebildet werden.
Der 4-zeilige Pufferspeicher wird, wie in Fig. 2 dargestellt, als Beispiel herangezogen. Die Suche in der Adreßfiltertabelle wird wie nachfolgend beschrieben ausgeführt. Der aus einer ge­ gebenen MAC-Adresse abgeleitete Hash-Schlüssel wird auf den entsprechenden k-ten 4-zeiligen Pufferspeicher abgebildet. An­ schließend wird die MAC-Adresse für einen Vergleich mit dem ersten Eintrag (k, 0) der Adreßfiltertabelle des k-ten 4- zeiligen Pufferspeichers verwendet. Wenn das MAC-Feld dieses Eintrags (k, 0) nicht mit dem Inhalt der MAC-Adresse überein­ stimmt, so wird wieder der nächste Eintrag (k, 1) versucht. Die Einträge (k, 2) und (k, 3) der Adreßfiltertabelle werden nacheinander versucht, wenn die vorhergehenden Einträge (k, 0) und (k, 1) nicht mit der MAC-Adresse identisch sind. Daher existieren bis zu 4 Versuche für eine Suche. In der Praxis ist die Wahrscheinlichkeit eines Mißlingens einer Suche sehr nied­ rig. Jedoch erfordert diese im ungünstigsten Fall vier Tabel­ leneintragszugriffe auf einen SRAM.
Der Speicherplatz und die Zugriffszeit werden gewöhnlich als die wichtigsten Aspekte bei der IC-Entwicklung angesehen. Da­ her kann, wenn der Speicherraum, welcher zum Suchen in der Adreßfiltertabelle verwendet wird, und die Zugriffszeit des Speichers wirksam verringert werden können, die Wirksamkeit des herkömmlichen Hash-Algorithmus in hohem Maße verbessert werden.
Es ist daher eine Aufgabe der Erfindung, ein verbessertes Hash-Schema im Ethernet zu schaffen, bei welchem das selten verwendete Feld von jedem Adreßfiltertabelleneintrag (50, 52) getrennt wird, so daß der Speicherraum zum Speichern von mehr Adreßfiltertabelleneinträgen eingespart wird, wodurch die Zu­ griffszeit des Speichers wirksam verkürzt werden kann.
Erfindungsgemäß wird die Aufgabe durch die Merkmale der An­ sprüche 1, 6, 16 bzw. 22 gelöst, die Unteransprüche zeigen weitere vorteilhafte Ausgestaltungen der Erfindung.
Die Erfindung löst die oben genannten Aufgaben durch ein Vor­ sehen einer Speicherstruktur im Ethernet. Die Speicherstruktur umfaßt eine Vielzahl von mehrzeiligen Pufferspeichern. Jeder der mehrzeiligen Pufferspeicher wird auf einen Hash-Schlüssel abgebildet, welcher aus einem Tel der Bits einer MAC-Adresse besteht. Ferner weist jeder der mehrzeiligen Pufferspeicher eine Anzahl von Bereichen der Adreßfiltertabelle auf, welche jeweils eine Anzahl von Adreßfiltertabelleneinträgen spei­ chern. Wenn zwei Adreßfiltertabelleneinträge gespeichert und durch eine Mehrfachdaten-Lese-Zugriffsart in jedem Bereich der Adreßfiltertabelle eines 4-zeiligen Pufferspeichers gelesen werden, so können ¼ des Speicherplatzes und ½ der Zugriffszeit eingespart werden.
Die Erfindung löst eine weitere Aufgabe durch ein Vorsehen ei­ nes Speicherzugriffsverfahrens. Zuerst wird ein Hash-Schlüssel einer MAC-Adresse auf einen mehrzeiligen Pufferspeicher einer Adreßfiltertabelle in einem Speicher abgebildet. Anschließend wird eine Anzahl von Adreßfiltertabelleneinträgen aus einem Abschnitt der Adreßfiltertabelle des mehrzeiligen Pufferspei­ chers durch eine Mehrfachdaten-Lese-Zugriffsart gelesen. Wenn zwei Adreßfiltertabelleneinträge in jedem Abschnitt der Adreß­ filtertabelle eines 4-zeiligen Pufferspeichers gespeichert sind, so können ¼ des Speicherplatzes und ½ der Zugriffszeit eingespart werden. Daher kann die Suche in der Adreßfilterta­ belle gemäß der MAC-Adresse in dem zentralen Switch- Logikbaustein des Ethernet-Switches wirksam ausgeführt werden.
Weitere Aufgaben, Merkmale und Vorteile der Erfindung gehen aus der nachfolgenden genauen Beschreibung der bevorzugten, jedoch nicht einschränkenden Ausführungsbeispiele deutlich hervor. Die Beschreibung erfolgt unter Bezugnahme auf die bei­ liegende Zeichnung. Es zeigt:
Fig. 1 (Stand der Technik) ein Blockdiagramm des Such- Systems von Adreßfiltertabellen des Ethernet;
Fig. 2 (Stand der Technik) die Struktur eines herkömmlichen 4-zeiligen Pufferspeichers;
Fig. 3 (Stand der Technik) die Struktur des herkömmlichen 128-Bit-Adreßfiltertabelleneintrags;
Fig. 4 die Struktur eines Adreßfiltertabelleneintrags gemäß einem bevorzugten Ausführungsbeispiel der Erfindung; und
Fig. 5 die erfindungsgemäße Struktur von 4-zeiligen Puffer­ speichern bei der Adreßfiltertabelle.
Wie oben erwähnt, kann der herkömmliche Hash-Algorithmus ver­ bessert werden, indem Speicherraum in den mehrzeiligen Puffer­ speichern eingespart wird.
In Fig. 3 ist die Struktur des herkömmlichen 128-Bit- Adreßfiltertabelleneintrags dargestellt. Der 128-Bit- Adreßfiltertabelleneintrag (0, 127) besteht aus 37 Bits für den MAC-Inhalt (0, 36), 5 Bits für das Empfangs-Port (source port)(37, 41), 9 Bits für die Port-Maske (42, 60), einem Bit für das statische Flag (61), 18 Bits für andere Felder (62, 79) und 48 reservierten Bits (80,127). Außer dem Hash- Schlüssel (11 Bits) umfaßt die MAC-Adresse (48 Bits) weitere 37 Bits zum Vergleichen mit dem MAC-Inhalt (0, 36). Das stati­ sche Flag (61) und die Port-Maske (42, 60) werden gewöhnlich für bekannte Multicast-Ethernet-Adressen (Multicast: Punkt-zu- Mehrpunkt), wie Multicast-Ethernet-Adressen bezüglich des Übertragungspakets des Internet Group Management Protocol (IGMP), verwendet.
Hingegen wird der statische Multicast-Inhalt, wie das stati­ sche Flag und die Port-Maske, in dem oben erwähnten Adreßfil­ tertabelleneintrag selten verwendet. Erfindungsgemäß wird die selten verwendete Port-Maske von dem ursprünglichen Adreßfil­ tertabelleneintrag getrennt und zu dem nächsten benachbarten Eintrag verschoben, und die erhaltenen Bits (80, 127) werden weggelassen. Daher umfaßt der angepaßte Adreßfiltertabellen­ eintrag lediglich den MAC-Inhalt, das Empfangs-Port, das sta­ tische Flag und andere Felder.
In Fig. 4 ist die Struktur eines Adreßfiltertabelleneintrags gemäß einem bevorzugten Ausführungsbeispiel der Erfindung dar­ gestellt. Wird als Beispiel ein 128-Bit- Adreßfiltertabelleneintrag herangezogen, so besteht jeder Adreßfiltertabelleneintrag aus 37 Bits für den MAC-Inhalt (0, 36), 5 Bits für das Empfangs-Port (37, 41), einem Bit für das statische Flag (42), 21 Bits für andere Felder (43, 63), 37 Bits für einen weiteren MAC-Inhalt (64, 100), 5 Bits für ein weiteres Empfangs-Port (101, 105), einem Bit für ein weiteres statisches Flag (106) und 21 Bits für weitere Felder (107, 127). Das heißt, jeder 128-Bit-Adreßfiltertabelleneintrag ist in zwei 64-Bit-Adreßfiltertabelleneinträge unterteilt. Daher wird lediglich ein 64-Bit-Datenbus benötigt, um auf diese Ein­ träge zuzugreifen. Ferner kann unter Verwendung der Mehrfach­ daten-Lese-Zugriffsart der Zugriff auf die beiden 64-Bit- Einträge geteilt werden durch den den ursprünglichen 128-Bit- Adreßfiltertabelleneintrag gleichzeitig erreicht werden.
In Fig. 5 ist die erfindungsgemäße Struktur von 4-zeiligen Pufferspeichern in der Adreßfiltertabelle dargestellt. Ein Hash-Schlüssel wird zuerst auf den k-ten 4-zeiligen Puffer­ speicher abgebildet. Der erste Adreßfiltertabelleneintrag (k, 0) und der zweite Adreßfiltertabelleneintrag (k, 1) des k-ten 4-zeiligen Pufferspeichers befinden sich in dem ersten Adreß­ filtertabellenbereich 50. Der dritte Eintrag (k, 2) und der vierte Bereich (k, 3) des k-ten 4-zeiligen Pufferspeichers be­ finden sich in dem zweiten Adreßfiltertabellenbereich 52. Fer­ ner befinden sich die von den Ursprungseinträgen getrennten Port-Masken in dem dritten Adreßfiltertabellenbereich 54. Un­ ter Verwendung der Mehrfachdateh-Lese-Zugriffsart können die beiden Eintragspaare (k, 0), (k, 1) und (k, 2), (k, 3) gleich­ zeitig gelesen werden.
Da die beiden Adreßfiltertabelleneinträge (k, 0), (k, 1) bzw. (k, 2), (k, 3) gleichzeitig gelesen werden können, ist die Wahrscheinlichkeit, daß die Suche in der Adreßfiltertabelle gemäß der MAC-Adresse in dem ersten Adreßfiltertabellenbereich 50 vollendet werden kann, sehr hoch. Wenn die Suche scheitert, das heißt, keines der beiden MAC-Felder (k, 0), (k, 1) stimmt mit dem Inhalt der MAC-Adresse überein, so werden die Einträge (k, 2), (k, 3) in dem nächsten Adreßfiltertabellenbereich 52 wieder probiert. Selbstverständlich wird bei dem zweiten Ver­ such ebenfalls die Mehrfachdaten-Lese-Zugriffsart verwendet.
Generell existieren drei Übertragungstypen im Ethernet. Es gibt das Broadcast (einer an alle), den Multicast (einer an mehrere) und den Unicast (einer an einen). Beim Broadcast wer­ den eingehende Daten an sämtliche Netzwerkadressen gesendet, während Multicast bedeutet, daß die eingehenden Daten an eine Anzahl festgelegter Netzwerkadressen gesendet werden, und Uni­ cast bedeutet, daß die eingehenden Daten an eine einzige Netz­ werkadresse gesendet werden. Wenn das Multicast im Ethernet verwendet werden soll, so werden die Bits für die Port-Maske benötigt. Jedoch wird diese Art der Netzwerkübertragung selten verwendet.
Wenn die Bits der Port-Maske verwendet werden, so sollte der dritte Adreßfiltertabellenbereich 54 des k-ten 4-zeiligen Puf­ ferspeichers verwendet werden. Der dritte Adreßfiltertabellen­ bereich 54 umfaßt die Bits für die erste Port-Maske (k, 0), die Bits für die zweite Port-Maske (k, 1), die Bits für die dritte Port-Maske (k, 2) und die Bits für die vierte Port- Maske (k, 3), wie in Fig. 5 dargestellt. Ferner kann, da die Port-Masken in dem dritten Adreßfiltertabellenbereich 54 sel­ ten verwendet werden, der dritte Adreßfiltertabellenbereich 54 ebenfalls von dem 4-zeiligen Pufferspeicher getrennt werden, so daß die Anordnung des 4-zeiligen Pufferspeichers einfacher ist.
Daher sind gemäß dem Ausführungsbeispiel der Erfindung für ei­ ne Suche in der Adreßfiltertabelle höchstens 3 Versuche erfor­ derlich. Da durch die Mehrfachdaten-Lese-Zugriffsart zwei Adreßfiltertabelleneinträge gleichzeitig gelesen werden, kann die Suche meistens in dem ersten Versuch abgeschlossen werden. Wenn die Suche in dem ersten Versuch nicht scheitert, so ist der zweite Versuch bzw. Speicherzugriff nicht erforderlich. Jedoch kann die Suche spätestens beim zweiten Zugriff abge­ schlossen werden. Gegenüber dem herkömmlichen Algorithmus, bei welchem bis zu 4 Versuche für eine Suche existieren, spart die Erfindung durchschnittlich ½ der Zugriffszeit ein. Außerdem werden bei dem 4-zeiligen Pufferspeicher lediglich drei Adreß­ filtertabellenabschnitte mit jeweils 128 Bits zum Speichern der vier 128-Bit-Adreßfiltertabelleneinträge benötigt, da die erhaltenen Bits weggelassen werden. Daher kann ferner 4 des Speicherplatzes eingespart werden. Was die MAC-Adresse des statischen Multicast (Punkt-zu-Mehrpunkt) anbelangt, so kann die Suche in der Adreßfiltertabelle meistens im zweiten Ver­ such und im ungünstigsten Fall sogar im dritten Versuch abge­ schlossen werden. Gegenüber dem herkömmlichen Algorithmus, welcher einen viermaligen Zugriff erfordert, wird auch die Zu­ griffszeit eines Speichers bei der Erfindung verkürzt.
Bei diesem bevorzugten Ausführungsbeispiel werden der 4- zeilige Pufferspeicher und die Adreßfiltertabellenabschnitte zum Speichern zweier Adreßfiltertabelleneinträge als Beispiele herangezogen. Jedoch sind die durch die Erfindung offenbarten technischen Merkmale nicht auf das oben erwähnte Ausführungs­ beispiel beschränkt. Beispielsweise kann die Erfindung auf die Technologie angewandt werden, bei welcher eine Anzahl von Adreßfiltertabelleneinträgen in dem gleichen Adreßfiltertabel­ leneintrag jedes mehrzeiligen Pufferspeichers gespeichert wird.
Es ist daher ein Merkmal der Erfindung, das Hash-Schema des mehrzeiligen Pufferspeichers zu verbessern. Das heißt, die er­ haltenen Bits in dem Adreßfiltertabelleneintrag werden wegge­ lassen, und die selten verwendeten Bits für die Port-Maske werden von dem ursprünglichen Eintrag getrennt. Ferner kann jeder Adreßfiltertabellenabschnitt in dem mehrzeiligen Puffer­ speicher nicht lediglich einen Adreßfiltertabelleneintrag, sondern mindestens zwei Adreßfiltertabelleneinträge speichern. Daher können der Speicherplatz für die Adreßfiltertabellenein­ träge und die Zugriffszeit verringert werden.
Es ist ein weiteres Merkmal der Erfindung, das die Bandbrei­ tenanforderung eines kontinuierlichen Speicherzugriffs herab­ gesetzt werden kann. Da die Größe jedes Adreßfiltertabellen­ eintrags lediglich 64 Bits bei dem verbesserten Hash-Schema des mehrzeiligen Pufferspeichers beträgt, weist der für eine Übertragung benötigte Datenbus ebenfalls lediglich 64 Bits auf. Ferner wird die Mehrfachdaten-Lese-Zugriffsart dazu ver­ wendet, auf zwei Einträge gleichzeitig zuzugreifen. Daher kann die Bandbreitenanforderung eines kontinuierlichen Speicherzu­ griffs herabgesetzt werden.
Es ist ein weiteres Merkmal der Erfindung, daß mehr als ein Adreßfiltertabelleneintrag bei jedem Zugriff gelesen werden kann, da jeder Adreßfiltertabellenabschnitt in dem mehrzeili­ gen Pufferspeicher mehr als einen Adreßfiltertabelleneintrag aufweist. Beispielsweise kann gegenüber dem herkömmlichen Schema, wenn zwei Adreßfiltertabelleneinträge in jedem Adreß­ filtertabellenabschnitt des 4-zeiligen Pufferspeichers gespei­ chert werden können, etwa ½ der Zugriffszeit eingespart wer­ den. Daher kann die Suche in der Adreßfiltertabelle bei dem Ethernet-Switch-IC wirksam abgeschlossen werden.
Zusammenfassend betrifft die vorliegende Erfindung eine im Ethernet verwendete Speicherstruktur, welche eine Anzahl mehr­ zeiliger Pufferspeicher (multi-slot bucket) umfaßt. Jeder der mehrzeiligen Pufferspeicher wird auf einen Hash-Schlüssel ab­ gebildet, welcher aus einer MAC-Adresse abgeleitet wird. Jeder der mehrzeiligen Pufferspeicher weist eine Anzahl von Adreß­ filtertabellenabschnitten auf, die jeweils eine Anzahl der Adreßfiltertabelleneinträge speichern. Wenn zwei Adreßfilter­ tabelleneinträge in jedem Adreßfiltertabellenabschnitt eines 4-zeiligen Pufferspeichers gespeichert werden, können ¼ des Speicherplatzes und ½ der Zugriffszeit eingespart werden. So kann die Suche in der Adreßfiltertabelle gemäß der MAC-Adresse im zentralen Ethernet-Logikbaustein durchgeführt werden.
Während die Erfindung anhand eines Beispiels und in Form eines bevorzugten Ausführungsbeispiels beschrieben wurde, ist die Erfindung selbstverständlich nicht auf das offenbarte Ausfüh­ rungsbeispiel beschränkt. Vielmehr wird beabsichtigt, ver­ schiedene Abwandlungen und ähnliche Anordnungen und Verfahren abzudecken, und dem Umfang der beiliegenden Ansprüche sollte daher die breitest mögliche Auslegung gewährt werden, so daß sämtliche der Abwandlungen sowie ähnlicher Anordnungen und Verfahren darin eingeschlossen sind.

Claims (30)

1. Speicherstruktur im Ethernet, umfassend eine Vielzahl mehrzeiliger Pufferspeicher, wobei jeder der mehrzeiligen Pufferspeicher auf einen Hash-Schlüssel abgebildet wird, wobei der Hash-Schlüssel durch Teilbits in einer Ziela­ dresse (MAC-Adresse) gebildet wird, welche zur Datenüber­ tragung verwendet wird, wobei jeder der mehrzeiligen Puf­ ferspeicher mindestens umfaßt: einen ersten Adreßfiltertabellenabschnitt zum Speichern einer Vielzahl von Adreßfiltertabelleneinträgen.
2. Speicherstruktur nach Anspruch 1, ferner umfassend: einen Adreßfiltertabellenabschnitt zum Speichern von Port- Masken (54) in den Adreßfiltertabelleneinträgen.
3. Speicherstruktur nach Anspruch 1, wobei jeder der Adreß­ filtertabelleneinträge umfaßt:
einen MAC-Inhalt;
ein Empfangs-Port; und
ein statisches Flag.
4. Speicherstruktur nach Anspruch 1, wobei die MAC-Adresse 48 Bits umfaßt.
5. Speicherstruktur nach Anspruch 1, wobei der Hash-Schlüssel 11 Bits umfaßt.
6. Speicherstruktur im Ethernet, umfassend eine Vielzahl mehrzeiliger Pufferspeicher, wobei jeder mehrzeiligen Puf­ ferspeicher auf einen Hash-Schlüssel abgebildet wird, wo­ bei der Hash-Schlüssel durch Teilbits in einer Ethernet- Adresse (MAC-Adresse) gebildet wird, welche zur Datenüber­ tragung verwendet wird, wobei jeder der mehrzeiligen Puf­ ferspeicher umfaßt:
einen ersten Adreßfiltertabellenabschnitt zum Speichern eines ersten Adreßfiltertabelleneintrags (50, 52) und ei­ nes zweiten Adreßfiltertabelleneintrags (50, 52); und
einen zweiten Adreßfiltertabellenabschnitt zum Speichern eines dritten Adreßfiltertabelleneintrags (50, 52) und ei­ nes vierten Adreßfiltertabelleneintrags (50, 52).
7. Speicherstruktur nach Anspruch 6, ferner umfassend: einen dritten Adreßfiltertabellenabschnitt zum Speichern von Port-Masken (54) in dem ersten, dem zweiten, dem drit­ ten und dem vierten Adreßfiltertabelleneintrag (50, 52).
8. Speicherstruktur nach Anspruch 7, wobei der erste, der zweite und der dritte Adreßfiltertabellenabschnitt die gleichen Bits aufweisen.
9. Speicherstruktur nach Anspruch 8, wobei der erste, der zweite und der dritte Adreßfiltertabellenabschnitt jeweils 128 Bits umfassen.
10. Speicherstruktur nach Anspruch 6, wobei die MAC-Adresse 48 Bits umfaßt.
11. Speicherstruktur nach Anspruch 6, wobei der Hash-Schlüssel 11 Bits umfaßt.
12. Speicherstruktur nach Anspruch 6, wobei jeder des ersten, des zweiten, des dritten und des vierten Adreßfiltertabel­ leneintrags (50, 52) umfaßt:
einen MAC-Inhalt;
ein Empfangs-Port; und
ein statisches Flag.
13. Speicherstruktur nach Anspruch 12, wobei der MAC-Inhalt 37 Bits umfaßt, das Empfangs-Port 5 Bits umfaßt und das sta­ tische Flag 1 Bit umfaßt.
14. Speicherstruktur nach Anspruch 6, wobei die mehrzeiligen Pufferspeicher 4-zeilige Pufferspeicher sind.
15. Speicherstruktur nach Anspruch 6, wobei die Speicherstruk­ tur durch einen 64-Bit-Datenbus mit einem zentralen Ether­ net-Logikbaustein (14) verbunden ist.
16. Speicherzugriffsverfahren im Ethernet zum Suchen in einer Adreßfiltertabelle in einem Speicher, umfassend die Schritte eines:
Abbildens eines Hash-Schlüssels einer MAC-Adresse auf ei­ nen mehrzeiligen Pufferspeicher der Adreßfiltertabelle; und
Lesens einer Vielzahl von Adreßfiltertabelleneinträgen aus einem ersten Abschnitt des mehrzeiligen Pufferspeichers durch eine Mehrfachdaten-Lese-Zugriffsart.
17. Speicherzugriffsverfahren nach Anspruch 16, ferner umfas­ sen den Schritt eines: Lesens von Port-Masken (54) in den Adreßfiltertabellenein­ trägen aus einem zweiten Abschnitt des mehrzeiligen Puf­ ferspeichers durch eine Mehrfachdaten-Lese-Zugriffsart.
18. Speicherzugriffsverfahren nach Anspruch 16, wobei jeder der Adreßfiltertabelleneinträge umfaßt:
einen MAC-Inhalt;
ein Empfangs-Port; und
ein statisches Flag.
19. Speicherzugriffsverfahren nach Anspruch 16, wobei die MAC- Adresse 48 Bits umfaßt.
20. Speicherzugriffsverfahren nach Anspruch 16, wobei der Hash-Schlüssel 11 Bits umfaßt.
21. Speicherzugriffsverfahren nach Anspruch 16, wobei der Speicher ein statischer Schreib-Lese-Speicher (SRAM) (18) ist.
22. Speicherzugriffsverfahren im Ethernet zum Suchen einer Adreßfiltertabelle in einem Speicher, umfassend die Schritte eines:
Abbildens eines Hash-Schlüssels einer MAC-Adresse auf ei­ nen mehrzeiligen Pufferspeicher der Adreßfiltertabelle; und
Lesens eines ersten Adreßfiltertabelleneintrags (50, 52) und eines zweiten Adreßfiltertabelleneintrags (50, 52) aus einem ersten Abschnitt des mehrzeiligen Pufferspeichers durch eine Mehrfachdaten-Lese-Zugriffsart.
23. Speicherzugriffsverfahren nach Anspruch 22, ferner umfas­ send den Schritt eines: Lesens eines dritten Adreßfiltertabelleneintrags (50, 52) und eines vierten Adreßfiltertabelleneintrags (50, 52) aus einem zweiten Abschnitt des mehrzeiligen Pufferspeichers.
24. Speicherzugriffsverfahren nach Anspruch 23, wobei jeder der Adreßfiltertabelleneinträge umfaßt:
einen MAC-Inhalt;
ein Empfangs-Port; und
ein statisches Flag.
25. Speicherzugriffsverfahren nach Anspruch 24, wobei der MAC- Inhalt 37 Bits umfaßt, das Empfangs-Port 5 Bits umfaßt und das statische Flag 1 Bit umfaßt.
26. Speicherzugriffsverfahren nach Anspruch 23, ferner umfas­ send: ein Lesen von Port-Masken (54) des ersten, des zweiten, des dritten und des vierten Adreßfiltertabelleneintrags (50, 52) aus einem dritten Abschnitt des mehrzeiligen Puf­ ferspeichers durch eine Mehrfachdaten-Lese-Zugriffsart.
27. Speicherzugriffsverfahren nach Anspruch 26, wobei der er­ ste, der zweite und der dritte Abschnitt jeweils 128 Bits umfassen.
28. Speicherzugriffsverfahren nach Anspruch 22, wobei die MAC- Adresse 48 Bits umfaßt.
29. Speicherzugriffsverfahren nach Anspruch 22, wobei der Hash-Schlüssel 11 Bits umfaßt.
30. Speicherzugriffsverfahren nach Anspruch 22, wobei der Speicher ein SRAM (18) ist.
DE10012123A 1999-07-16 2000-03-13 Verfahren zum Suchen einer MAC-Adresse in einem Netzwerk-Switch Expired - Lifetime DE10012123B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW088112055 1999-07-16
TW088112055A TW431094B (en) 1999-07-16 1999-07-16 Memory access of Ethernet

Publications (2)

Publication Number Publication Date
DE10012123A1 true DE10012123A1 (de) 2001-01-25
DE10012123B4 DE10012123B4 (de) 2010-01-28

Family

ID=21641524

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10012123A Expired - Lifetime DE10012123B4 (de) 1999-07-16 2000-03-13 Verfahren zum Suchen einer MAC-Adresse in einem Netzwerk-Switch

Country Status (3)

Country Link
US (1) US6615336B1 (de)
DE (1) DE10012123B4 (de)
TW (1) TW431094B (de)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1319279B1 (it) * 2000-05-31 2003-10-10 Cit Alcatel Metodo e dispositivo per tradurre indirizzi ip di reti pertelecomunicazioni usando una memoria con oblio controllato.
TW501009B (en) * 2001-05-03 2002-09-01 Via Tech Inc Data access method for asymmetric dual-slot address table and the associated exchange device
ES2185496B1 (es) * 2001-07-17 2005-06-01 Universidad Politecnica De Valencia Equipo y metodo en linea para la deteccion, determinacion de la evolucion y cuantificacion de biomasa microbiana y otras sustancias que absorben a lo largo del espectro de luz durante el desarrollo de procesos biotecnologicos.
US7813346B1 (en) 2001-11-21 2010-10-12 Juniper Networks, Inc. Filter-based forwarding in a network
US7286528B1 (en) 2001-12-12 2007-10-23 Marvell International Ltd. Multiple address databases in a switch without the need for extra memory
US7664909B2 (en) * 2003-04-18 2010-02-16 Nextio, Inc. Method and apparatus for a shared I/O serial ATA controller
US7174413B2 (en) * 2003-01-21 2007-02-06 Nextio Inc. Switching apparatus and method for providing shared I/O within a load-store fabric
US7219183B2 (en) * 2003-01-21 2007-05-15 Nextio, Inc. Switching apparatus and method for providing shared I/O within a load-store fabric
US7917658B2 (en) 2003-01-21 2011-03-29 Emulex Design And Manufacturing Corporation Switching apparatus and method for link initialization in a shared I/O environment
US8102843B2 (en) * 2003-01-21 2012-01-24 Emulex Design And Manufacturing Corporation Switching apparatus and method for providing shared I/O within a load-store fabric
US7502370B2 (en) * 2003-01-21 2009-03-10 Nextio Inc. Network controller for obtaining a plurality of network port identifiers in response to load-store transactions from a corresponding plurality of operating system domains within a load-store architecture
US7698483B2 (en) * 2003-01-21 2010-04-13 Nextio, Inc. Switching apparatus and method for link initialization in a shared I/O environment
US7188209B2 (en) * 2003-04-18 2007-03-06 Nextio, Inc. Apparatus and method for sharing I/O endpoints within a load store fabric by encapsulation of domain information in transaction layer packets
US7103064B2 (en) 2003-01-21 2006-09-05 Nextio Inc. Method and apparatus for shared I/O in a load/store fabric
US7953074B2 (en) * 2003-01-21 2011-05-31 Emulex Design And Manufacturing Corporation Apparatus and method for port polarity initialization in a shared I/O device
US7617333B2 (en) * 2003-01-21 2009-11-10 Nextio Inc. Fibre channel controller shareable by a plurality of operating system domains within a load-store architecture
US7512717B2 (en) * 2003-01-21 2009-03-31 Nextio Inc. Fibre channel controller shareable by a plurality of operating system domains within a load-store architecture
US7493416B2 (en) * 2003-01-21 2009-02-17 Nextio Inc. Fibre channel controller shareable by a plurality of operating system domains within a load-store architecture
US8346884B2 (en) 2003-01-21 2013-01-01 Nextio Inc. Method and apparatus for a shared I/O network interface controller
US7457906B2 (en) * 2003-01-21 2008-11-25 Nextio, Inc. Method and apparatus for shared I/O in a load/store fabric
US8032659B2 (en) 2003-01-21 2011-10-04 Nextio Inc. Method and apparatus for a shared I/O network interface controller
US7046668B2 (en) 2003-01-21 2006-05-16 Pettey Christopher J Method and apparatus for shared I/O in a load/store fabric
US7836211B2 (en) * 2003-01-21 2010-11-16 Emulex Design And Manufacturing Corporation Shared input/output load-store architecture
US7644177B2 (en) * 2003-02-28 2010-01-05 Cisco Technology, Inc. Multicast-routing-protocol-independent realization of IP multicast forwarding
US7930757B2 (en) * 2003-10-31 2011-04-19 Adobe Systems Incorporated Offline access in a document control system
US8108672B1 (en) * 2003-10-31 2012-01-31 Adobe Systems Incorporated Transparent authentication process integration
US8627489B2 (en) * 2003-10-31 2014-01-07 Adobe Systems Incorporated Distributed document version control
US7554990B2 (en) * 2004-05-13 2009-06-30 Micrel, Inc. Static address reservation protocol in a data network
US7827182B1 (en) 2004-06-02 2010-11-02 Cisco Technology, Inc Searching for a path to identify where to move entries among hash tables with storage for multiple entries per bucket during insert operations
US7995758B1 (en) 2004-11-30 2011-08-09 Adobe Systems Incorporated Family of encryption keys
US20060250966A1 (en) * 2005-05-03 2006-11-09 Yuan-Chi Su Method for local area network security
US8832047B2 (en) 2005-07-27 2014-09-09 Adobe Systems Incorporated Distributed document version control
US20070177597A1 (en) * 2006-02-02 2007-08-02 Yu Ju Ethernet connection-based forwarding process
WO2012131697A1 (en) * 2011-03-31 2012-10-04 Tejas Networks Limited Optimizing forward database for a bursty network traffic
US10218524B2 (en) 2013-09-17 2019-02-26 Cisco Technology, Inc. Bit indexed explicit replication for layer 2 networking
US10461946B2 (en) 2013-09-17 2019-10-29 Cisco Technology, Inc. Overlay signaling for bit indexed explicit replication
US9438432B2 (en) 2013-09-17 2016-09-06 Cisco Technology, Inc. Bit indexed explicit replication packet encapsulation
US11451474B2 (en) 2013-09-17 2022-09-20 Cisco Technology, Inc. Equal cost multi-path with bit indexed explicit replication
US9544230B2 (en) 2013-09-17 2017-01-10 Cisco Technology, Inc. Migration support for bit indexed explicit replication
US9571897B2 (en) 2013-09-17 2017-02-14 Cisco Technology, Inc. Bit indexed explicit replication for professional media networks
US10003494B2 (en) 2013-09-17 2018-06-19 Cisco Technology, Inc. Per-prefix LFA FRR with bit indexed explicit replication
US9806897B2 (en) 2013-09-17 2017-10-31 Cisco Technology, Inc. Bit indexed explicit replication forwarding optimization
WO2015042156A1 (en) 2013-09-17 2015-03-26 Cisco Technology, Inc. Bit indexed explicit replication
US9935831B1 (en) * 2014-06-03 2018-04-03 Big Switch Networks, Inc. Systems and methods for controlling network switches using a switch modeling interface at a controller
US9906378B2 (en) 2015-01-27 2018-02-27 Cisco Technology, Inc. Capability aware routing
US10341221B2 (en) 2015-02-26 2019-07-02 Cisco Technology, Inc. Traffic engineering for bit indexed explicit replication
US10630743B2 (en) 2016-09-23 2020-04-21 Cisco Technology, Inc. Unicast media replication fabric using bit indexed explicit replication
US10637675B2 (en) 2016-11-09 2020-04-28 Cisco Technology, Inc. Area-specific broadcasting using bit indexed explicit replication
US10447496B2 (en) 2017-03-30 2019-10-15 Cisco Technology, Inc. Multicast traffic steering using tree identity in bit indexed explicit replication (BIER)
US10164794B2 (en) 2017-04-28 2018-12-25 Cisco Technology, Inc. Bridging of non-capable subnetworks in bit indexed explicit replication

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5649109A (en) * 1992-10-22 1997-07-15 Digital Equipment Corporation Apparatus and method for maintaining forwarding information in a bridge or router using multiple free queues having associated free space sizes
US5914938A (en) * 1996-11-19 1999-06-22 Bay Networks, Inc. MAC address table search unit
US6266705B1 (en) * 1998-09-29 2001-07-24 Cisco Systems, Inc. Look up mechanism and associated hash table for a network switch
US6366617B1 (en) * 1998-10-09 2002-04-02 Matsushita Electric Industrial Co., Ltd. Programmable filter for removing selected user data from an MPEG-2 bit stream
US6192051B1 (en) * 1999-02-26 2001-02-20 Redstone Communications, Inc. Network router search engine using compressed tree forwarding table
US6343078B1 (en) * 2000-05-12 2002-01-29 3Com Corporation Compression of forwarding decisions in a network device

Also Published As

Publication number Publication date
TW431094B (en) 2001-04-21
US6615336B1 (en) 2003-09-02
DE10012123B4 (de) 2010-01-28

Similar Documents

Publication Publication Date Title
DE10012123B4 (de) Verfahren zum Suchen einer MAC-Adresse in einem Netzwerk-Switch
DE60203380T2 (de) Verfahren und vorrichtung zur mehrfachsendung
DE60214670T2 (de) Verfahren und vorrichtung zur leitweglenkungstabellenverwaltung
DE60313371T2 (de) Verwendung von baumartigen "Bitmap" Datenstrukturen
DE69927109T2 (de) Speicher zur Informationssuche durch Präfixanalyse für Knoten von Hochgeschwindigkeitsnetzen
DE2346525C3 (de) Virtuelle Speichereinrichtung
DE102005035201B4 (de) Netzknoteneinheit und Verfahren zur Weiterleitung von Datenpaketen
DE60131596T2 (de) Stapelbare Sucheinrichtung
DE602004011721T2 (de) Zugriffssteurungsmechanismus für Router
EP0619667A1 (de) Verfahren zum Zugriff auf Adressmerkmale von Kommunikationsteilnehmern mit einem ersten Adress Bereich, beim Versenden von Datenpaketen
DE3011552C2 (de)
DE60026229T2 (de) Verfahren und Vorrichtung für Klassifizierung von Datenpaketen
DE69934192T2 (de) Verfahren und Einrichtung zur Netzverbindung mittels Brücken
DE60307241T2 (de) Vlan tabellenverwaltungssystem in hardwarebasierten paketvermittlungsstellen für speichereffizientes auslesen und einschreiben
DE2920490C2 (de) Datenverarbeitungssystem
DE102013208213B4 (de) System zur Verringerung von Hash-Kollisionen
DE19860120B4 (de) Routensuchschaltung und diese verwendende Kommunikationsvorrichtung
DE10028563B4 (de) Kommunikationssteuerungseinheit
DE10058443A1 (de) Verfahren zum Klassifizieren von Datenpaketen
DE2856133A1 (de) Verarbeitungssystem fuer einen assoziativspeicher
DE2231146A1 (de) Verfahren zum steuern der datenuebertragung in einer datenverarbeitungsanlage und anlage zur durchfuehrung dieses verfahrens
DE60032674T2 (de) Verfahren zum Suchen von Adressen
DE2637054B2 (de)
DE10143356A1 (de) Akzeptanz-Filter
DE602004012210T2 (de) Verfahren and System für eine beschleunigte Paketverarbeitung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G06F 1320

8364 No opposition during term of opposition
R071 Expiry of right