DE60131596T2 - Stapelbare Sucheinrichtung - Google Patents

Stapelbare Sucheinrichtung Download PDF

Info

Publication number
DE60131596T2
DE60131596T2 DE60131596T DE60131596T DE60131596T2 DE 60131596 T2 DE60131596 T2 DE 60131596T2 DE 60131596 T DE60131596 T DE 60131596T DE 60131596 T DE60131596 T DE 60131596T DE 60131596 T2 DE60131596 T2 DE 60131596T2
Authority
DE
Germany
Prior art keywords
search
match
result
search engine
engine
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
DE60131596T
Other languages
English (en)
Other versions
DE60131596D1 (de
Inventor
Mathieu Verdale Tallegas
Abdelkahim Campbell Safir
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.)
Nokia of America Corp
Original Assignee
Alcatel Internetworking PE 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 Alcatel Internetworking PE Inc filed Critical Alcatel Internetworking PE Inc
Publication of DE60131596D1 publication Critical patent/DE60131596D1/de
Application granted granted Critical
Publication of DE60131596T2 publication Critical patent/DE60131596T2/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/52Multiprotocol routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • 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/742Route cache; Operation thereof
    • 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
    • H04L45/7452Multiple parallel or consecutive lookup operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2408Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2458Modification of priorities while in transit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/31Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches
    • H04L49/602Multilayer or multiprotocol switching, e.g. IP switching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Description

  • GEBIET DER ERFINDUNG
  • Diese Erfindung betrifft allgemein Adressen-Suchmaschinen, die dazu benutzt werden, Informationen durch ein Kommunikationsnetzwerk zu leiten. Insbesondere betrifft die Erfindung ein Verfahren zur Verarbeitung eines Datenpaketes gemäß dem Oberbegriff von Anspruch 1 sowie ein Paket-Verarbeitungssystem gemäß dem Oberbegriff von Anspruch 8.
  • HINTERGRUND DER ERFINDUNG
  • Datenkommunikations-Knoten mit hohen Datenraten, wie z. B. Router und Switches, kommunizieren miteinander, indem sie Datenpakete über Kommunikations-Protokolle, wie HTTP, TCP/IP, SMB und ähnliche, senden und empfangen. Wenn ein Knoten ein Datenpaket empfängt, führt er eine Adressensuche durch, um das Paket richtig zu verarbeiten. Bei der Durchführung einer Adressensuche wird ein Schlüssel, der Informationen von dem Paket enthält, mit Einträgen in einer Tabelle verglichen. Wenn eine Übereinstimmung gefunden wird, wird das Paket entsprechend Informationen verarbeitet, die dem übereinstimmenden Eintrag zugeordnet sind.
  • Eine Art der Suche ist eine Quellen-Suche, bei der eine Quelladresse an die Nachschlagetabelle angelegt wird, um zur Rechnungserstellung und Abrechung, zur Quellen-/Anwendungs-Überwachung und zum Quellen-Lernen den Absender des Paketes zu identifizieren. Eine zweite Art der Suche ist die Ziel-Suche, bei der ein Zieladressen-Schlüssel an die Nachschlagetabelle angelegt wird, um festzustellen, wie und wohin das Paket zu leiten ist.
  • Der weitere Stand der Technik wird in WO 98 12651 A , US-A-5 983 223 und EP0899743 beschrieben.
  • Da das Internet weiter an Größe und Komplexität zunimmt, explodiert weiterhin die Anzahl von Einträgen, die in den Nachschlagetabellen gespeichert werden müssen. Eine Art, auf der dieses explosionsartige Wachstum behandelt werden kann, ist die Einführung von Knoten mit Datenbanken immer größerer Kapazität. Angesichts der mit der Entwicklung neuer Produkte verbundenen Zeitverzögerungen und der einzigartigen Anforderungen jedes Netzwerks besteht der Bedarf an einer flexibleren und skalierbaren Lösung zur Unterstützung der erwarteten Anzahl von Einträgen in Nachschlagetabellen.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die aktuelle Erfindung erreicht dieses Ziel durch ein Verfahren gemäß Anspruch 1 und ein System gemäß Anspruch 8.
  • Die Erfindung liefert ein skalierbares System und Verfahren zur Erhöhung der Größe einer Nachschlagetabelle, ohne die Leitungs-Datenrate wesentlich zu beeinträchtigen und ohne dass ein Chip neu entwickelt werden muss, um eine erwartete Anzahl von Einträgen in der Nachschlagetabelle zu unterstützen.
  • Gemäß der Erfindung enthält ein Datenkommunikationsnetz eine Vielzahl von Datenkommunikations-Vermittlungen, die Datenpakete senden und empfangen. Bei der Verarbeitung eines eintreffenden Datenpaketes erzeugt eine bestimmte Vermittlung einen Such-Schlüssel für das Paket und sendet den Such-Schlüssel an eine Vielzahl von Suchmaschinen. Der Such-Schlüssel wird dazu benutzt, eine Nachschlagetabelle, die einer Suchmaschine zugeordnet ist, abzusuchen und ein Suchergebnis zu erzeugen. Das Suchergebnis enthält Übereinstimmungs-Qualitäts-Daten, die einen erzeugten Typ von Übereinstimmung anzeigen. In einem bestimmten Aspekt der Erfindung zeigen die Übereinstimmungs-Qualitäts-Daten eine exakte Übereinstimmung, eine teilweise Übereinstimmung oder keine Übereinstimmung an. Die Vermittlung vergleicht die Übereinstimmungs-Qualität von mindestens einem Paar von Suchergebnissen und gibt auf der Basis der Übereinstimmungs-Qualität ein Suchergebnis zurück.
  • In einem weiteren speziellen Aspekt der Erfindung wird ein erstes Suchergebnis, das von einer ersten Suchmaschine erzeugt wird, an eine zweite Suchmaschine übertragen, die mit der ersten Suchmaschine gekoppelt ist. Die Übereinstimmungs-Qualität des ersten Suchergebnisses wird mit der Übereinstimmungs-Qualität eines zweiten Suchergebnisses verglichen, das von der zweiten Suchmaschine erzeugt wurde. Wenn die Übereinstimmungs-Qualität des zweiten Suchergebnisses kleiner als die Übereinstimmungs-Qualität des ersten Suchergebnisses ist, wird das zweite Suchergebnis verworfen. Wenn die Übereinstimmungs-Qualität des zweiten Suchergebnisses jedoch größer als die Übereinstimmungs-Qualität des ersten Suchergebnisses ist, wird das erste Suchergebnis verworfen.
  • KURZBESCHREIBUNG DER ZEICHUNGEN
  • Diese und andere Eigenschaften, Aspekte und Vorteile der vorliegenden Erfindung werden vollständiger verstanden, wenn sie mit Bezug auf die folgende detaillierte Beschreibung, die beigefügten Ansprüche und begleitenden Zeichnungen betrachtet werden, in denen:
  • 1 eine schematische Darstellung eines Datenkommunikationsnetzes ist;
  • 2 ein detaillierteres Diagramm einer Vermittlungseinrichtung ist, die mehrere Suchmaschinen enthält;
  • 3 ein allgemeines Format eines Suchergebnisses zeigt, das von den Suchmaschinen in 2 erzeugt wird;
  • 4 ein Flussdiagramm eines Suchprozesses ist, der von den Suchmaschinen in 2 durchgeführt wird; und
  • 5 eine Darstellung einer Suche ist, die von den Suchmaschinen in 2 auf der Basis eines Beispiel-Schlüssels durchgeführt wird.
  • BESCHREIBUNG DER ERFINDUNG
  • 1 ist eine schematische Darstellung eines Datenkommunikationsnetzes 10. Das Netzwerk 10 enthält zwei lokale Segmente 12, 14 und eine Verbindung zu einem entfernten Netzwerk 16. Knoten, die mit A-J bezeichnet sind, repräsentieren Geräte, die mit den lokalen Segmenten verbunden sind. Die Geräte sind vorzugsweise Netzwerk-Endstationen, wie zum Beispiel Personal-Computer, Workstations oder Server, die entsprechende Netzwerk-Schnittstellen für die Paket-Kommunikation mit anderen Geräten haben.
  • Eine Vermittlungseinrichtung 20 enthält drei Anschlüsse 22, 23, 24 und vermittelt Netzwerk-Verkehr zwischen den Segmenten 12, 14 und dem entfernten Netzwerk 16. Das entfernte Netzwerk 16 kann auch andere Vermittlungseinrichtungen enthalten, wie z. B. Vermittlungseinrichtung 21, die dann andere Segmente (nicht gezeigt) mit dem Netzwerk verbindet. Die Vermittlungseinrichtungen 20, 21 sind vorzugsweise Gateway-Einrichtungen, wie zum Beispiel Switches und/oder Router und/oder andere ähnliche Einrichtungen. Die Vermittlungseinrichtung 20 erlaubt es den Geräten an einem Segment, mit Geräten an anderen Segmenten zu kommunizieren, sowie mit anderen Vermittlungseinrichtungen zu kommunizieren.
  • Die Geräte kommunizieren miteinander über ein Kommunikationsprotokoll, wie z. B. HTTP, TCP/IP oder SMB. Diese Protokolle erlauben es den Geräten, Netzwerk-Rahmen zu senden und zu empfangen, wobei jeder Netzwerk-Rahmen vorzugsweise eine Zieladresse, eine Quelladresse und ein Datenfeld enthält. Wenn die Vermittlungseinrichtung 20 einen Rahmen von einem Gerät empfängt, ruft sie vorzugsweise mehrere Suchmaschinen auf, um deren entsprechende Nachschlagetabellen nach den Quell- und/oder Zieladressen abzusuchen, um vorzugsweise Funktionen des Quellen-Lernens, der Rechnungserstellung, Abrechung, des Routing, der Überwachung und ähnliches durchzuführen. Weitere Hintergrundinformationen über Switches findet man in einer Vielzahl von Literaturhinweisen, wie z. B. Fast Ethernet (1997) von L. Quinn et al., Computer Networks (3. Auflage 1996) von A. Tannenbaum und High-Speed Networking with LAN Switches (1997) von G. Held.
  • 2 ist ein detaillierteres Diagramm der Vermittlungseinrichtung 20. Die Vermittlungseinrichtung 20 enthält vorzugsweise einen Paket-Prozessor 32 und mehrere Suchmaschinen 30a30d, wobei die mehreren Suchmaschinen 30a30d vorzugsweise identische Schaltkreis-Zusammensetzungen haben.
  • Die Suchmaschine 30a, die repräsentativ für die Suchmaschinen 30a30d ist, enthält einen Speicher 31, der eine Nachschlagetabelle (nicht gezeigt) enthält, in der vorzugsweise Informationen gespeichert sind, die verschiedenen Netzwerkadressen zugeordnet sind. Die Informationen können zum Beispiel Routing-Informationen zur Weiterleitung der Datenpakete und ähnliches enthalten. Die Nachschlagetabelle enthält vorzugsweise Einträge, die sich von den Einträgen in anderen Nachschlagetabellen unterscheiden, die von anderen Suchmaschinen unterhalten werden. Auf diese Weise tritt eine exakte Übereinstimmung für einen bestimmten Schlüssel nur in einer Suchmaschine auf. In einer alternativen Ausführung wird in einer einzigen Suchmaschine eine Haupt-Nachschlagetabelle für den Zugriff durch die anderen Suchmaschinen unterhalten.
  • Die Suchmaschine 30a enthält auch eine Suchlogik 33, die dazu benutzt wird, die Nachschlagetabelle abzusuchen. Die Suchlogik 33 kann eine Vielzahl von Suchverfahren umfassen, einschließlich Binär-, Linear-Suche, CAM, Binärbaum oder Hash-Verfahren. Die Suchmaschine 30a ist vorzugsweise ein ASIC (Application Specific Integrated Circuit, anwendungsspezifischer integrierter Schaltkreis), der es erlaubt, Suchen in der Nachschlagetabelle in Hardware durchzuführen. Alternativ ist die Suchmaschine ein Mikroprozessor, der es erlaubt, die Suchen in Software durchzuführen.
  • Die Vermittlungseinrichtung 20 enthält auch einen Paket-Prozessor 32, der mit den mehreren Suchmaschinen 30a30d kommuniziert. Der Paket-Prozessor 32 empfängt ein Datenpaket über einen Datenbus 34. Bei Empfang des Datenpaketes speichert der Paket-Prozessor 32 vorzugsweise das Paket in einem temporären Paketspeicher 35, bis mindestens ein endgültiges Suchergebnis von den Suchmaschinen zurück geliefert wird. Eine Paketanalyse- und Schlüssel-Extraktions-Logik 37 entnimmt vorzugsweise die Quell-/Zieladresse aus dem Paket, um einen Such-Schlüssel zu bilden, der vorzugsweise aus 144 Bit besteht. Ein Fachmann sollte jedoch erkennen, dass abhängig von der speziellen Anwendung der Such-Schlüssel jede beliebige Größe haben kann und jede gewünschte Information enthalten kann. Zum Beispiel kann der Such-Schlüssel die Quell-/Zieladresse, sowohl die Quell-, als auch die Zieladresse, die Quell- und die Zieladressen und zusätzliche Informationen (wie zum Beispiel Informationen über das virtuelle LAN), oder jeden Parameter und jede Kombination davon enthalten.
  • Der Paket-Prozessor 32 liefert den Such-Schlüssel vorzugsweise an jede Suchmaschine 30a30d gleichzeitig über den Bus 36. Ein Fachmann sollte jedoch erkennen, dass die Such-Schlüssel nicht gleichzeitig geliefert werden müssen, sondern sequentiell oder in jeder gewünschten Reihenfolge an jede Suchmaschine übertragen werden können. Der Paket-Prozessor 32 kann auch mit dem Schlüssel ein Kennzeichen zur Kennzeichnung des entsprechenden Paketes, das dem Schlüssel zugeordnet ist, erzeugen und senden. Bei Empfang des Schlüssels führt jede Suchmaschine 30a30d einzeln eine Suche in ihrer Nachschlagetabelle durch, um ein Suchergebnis zu erzeugen.
  • Die Suchmaschinen 30a30d können so beschrieben werden, dass sie aufeinander geschichtet sind, wobei jede Suchmaschine das Ergebnis ihrer Suche an eine benachbarte nachgeordnete Suchmaschine liefert, bis ein einziges endgültiges Ergebnis an den Paket-Prozessor 32 zurückgeliefert wird. In diesem Zusammenhang sendet die Suchmaschine ganz oben auf dem Stapel 30d ihr Ergebnis an eine benachbarte nachgeordnete Suchmaschine 30c, die das empfangene Ergebnis entweder bestätigt und sendet, oder auf der Grundlage der Qualität der Übereinstimmung ihr eigenes Ergebnis sendet. Das Ergebnis zeigt vorzugsweise eine exakte Übereinstimmung, eine teilweise Übereinstimmung oder keine Übereinstimmung an. Obwohl mehrere Suchmaschinen eine teilweise Übereinstimmung zurückliefern können, tritt eine exakte Übereinstimmung vorzugsweise nur in einer Suchmaschine auf.
  • Die Vergleichs-, Überprüfungs- und Übertragungs-Schritte werden von jeder nachgeordneten Suchmaschine wiederholt, wobei die Suchmaschine ganz unten im Stapel 30a die Überprüfung durchführt und ein endgültiges Ergebnis an den Paket-Prozessor 32 zurückliefert. Vorzugsweise hat nur die Suchmaschine unten im Stapel 30a ihre Schnittstelle zum Paket-Prozessor eingeschaltet.
  • Ein Fachmann sollte jedoch erkennen, dass die Suchmaschinen nicht übereinander gestapelt sein müssen, und das Suchergebnis nicht notwendigerweise von einer übergeordneten Suchmaschine an eine nachgeordnete Suchmaschine gesendet werden muss, solange jede Suchmaschine ihr Suchergebnis sequentiell an eine andere vorgesehene Suchmaschine sendet.
  • Das endgültige Ergebnis wird vorzugsweise an eine Weiterleitungs-Entscheidungs-Logik 39 weitergegeben, die das Ergebnis untersucht und einen vorher festgelegten Satz von Regeln anwendet, um zu bestimmen, ob das Paket weitergeleitet werden muss und an welchen Anschluss oder an welche Anschlüsse es weitergeleitet werden muss. Die Weiterleitungs-Entscheidungs-Logik kann auch die Prioritätsebene des Paketes untersuchen. Die Vermittlungseinrichtung 20 leitet im Allgemeinen die Rahmen mit höherer Priorität vor den Rahmen niedrigerer Priorität weiter.
  • 3 zeigt ein allgemeines Format eines Suchergebnisses 40, das von jeder Suchmaschine 30a30d erzeugt wird und an eine nachgeordnete Suchmaschine oder an den Paket-Prozessor 32 übertragen wird. Das Suchergebnis 40 enthält vorzugsweise eine Nutzinformation 40a, die Übereinstimmungs-Qualität 40b und das Kennzeichen 40c. Die Nutzinformation 40a besteht vorzugsweise aus 176 Bit, die Daten über einen exakt übereinstimmenden Eintrag aus der Nachschlagetabelle liefern. Solche Daten können zum Beispiel Routing-Informationen für das Paket, wie z. B. eine IP-Adresse und/oder Anschluss-Nummer enthalten. Vorzugsweise enthalten die Nutzinformations-Bits 40a gültige Informationen nur, wenn in der Nachschlagetabelle eine Übereinstimmung gefunden wurde. Die Übereinstimmungs-Qualität 40b besteht vorzugsweise aus zwei Bit, die Informationen über die Art der Übereinstimmung enthalten, die sich aus der Suche in der Nachschlagetabelle ergibt. Übereinstimmungs-Qualitäten umfassen vorzugsweise von der höchsten Qualität bis zur niedrigsten eine exakte Übereinstimmung (Übereinstimmungs-Typ "01"), eine teilweise Übereinstimmung (Übereinstimmungs-Typ "10") und keine Übereinstimmung (Übereinstimmungs-Typ "00"). Eine teilweise Übereinstimmung kann zum Beispiel eine teilweise IP-Adressen-Übereinstimmung widerspiegeln, wie z. B. eine IP-Subnetz-Übereinstimmung.
  • Das Kennzeichen 40c, das auch als Teil des Suchergebnisses bereitgestellt werden kann, ist vorzugsweise dasselbe Kennzeichen, das vom Paket-Prozessor 32 erzeugt wurde, um den Pfad 36a, 36b, 36c, 36d zu kennzeichnen, der zur Übertragung des Such-Schlüssels genommen wurde. Das Kennzeichen wird vorzugsweise mit dem Such-Schlüssel übertragen und mit dem Ergebnis der Suche zurückgegeben.
  • 4 ist ein Flussdiagramm eines Suchprozesses, der von den Suchmaschinen in 2 durchgeführt wird. Der Paket-Prozessor 32 sendet den Such-Schlüssel gleichzeitig an die Suchmaschinen 30a30d (50). Jede Suchmaschine benutzt den Such-Schlüssel und sucht in ihrer Nachschlagetabelle, um ein Suchergebnis zu erzeugen (52). Die Suchmaschine ganz oben auf dem Stapel 30d sendet ihr Suchergebnis zusammen mit einem Signal, dass die Suche durchgeführt wurde, an ihre benachbarte nachgeordnete Suchmaschine 30c (54). Das Signal, dass die Suche durchgeführt wurde, benachrichtigt die empfangende Suchmaschine, dass die sendende Suchmaschine ihre Suche beendet hat und somit, dass die gesendete Nutzinformation 40a, die Übereinstimmungs-Qualität 40b und das Kennzeichen 40c gültig sind.
  • Als nächstes wird die Übereinstimmungs-Qualität des empfangenen Suchergebnisses mit der Übereinstimmungs-Qualität des aktuellen Suchergebnisses verglichen, das von der empfangenden Suchmaschine erzeugt wird (58), und es wird eine Feststellung getroffen, ob das aktuelle Suchergebnis eine höhere Übereinstimmungs-Qualität hat als die Übereinstimmungs-Qualität des empfangenen Suchergebnisses (60). Wenn das aktuelle Suchergebnis eine kleinere Übereinstimmungs-Qualität hat als die Übereinstimmungs-Qualität des empfangenen Suchergebnisses, wird das empfangene Suchergebnis bestätigt (70). Danach wird erneut eine Feststellung getroffen, ob die empfangende Suchmaschine sich ganz unten im Stapel befindet (72). Falls ja, wird das empfangene Suchergebnis zum Paket-Prozessor 32 übertragen (74). Andernfalls wird das empfangene Suchergebnis an eine nächste benachbarte nachgeordnete Suchmaschine übertragen (76), und der Prozess geht weiter (56).
  • Wenn das aktuelle Suchergebnis eine größere Übereinstimmungs-Qualität hat als die Übereinstimmungs-Qualität des empfangenen Suchergebnisses, wird das aktuelle Suchergebnis bestätigt (62). Auf diese Weise wird das Suchergebnis mit der höchsten Übereinstimmungs-Qualität bei der Durchsicht aller Suchergebnisse von allen Suchmaschinen aufrechterhalten. Anschließend wird eine Feststellung getroffen, ob die empfangende Suchmaschine sich ganz unten im Stapel befindet (64). Falls ja, wird das aktuelle Suchergebnis zum Paket-Prozessor 32 übertragen (66). Andernfalls wird das aktuelle Suchergebnis an eine nächste benachbarte nachgeordnete Suchmaschine übertragen (68), und der Prozess geht weiter (56).
  • 5 ist eine Darstellung einer Suche, die von den in 2 gezeigten Suchmaschinen 30a30d auf der Basis eines Beispiel-Schlüssels "10.10.10.10" durchgeführt wird. Der Schlüssel wird vorzugsweise gleichzeitig an alle Suchmaschinen übertragen, damit jede Suchmaschine unabhängig ihre entsprechende Nachschlagetabelle durchsuchen kann. Die Suchergebnisse aller Suchmaschinen werden dann sequentiell durchgesehen, vorzugsweise von der Spitze des Stapels bis zum Boden des Stapels, oder entsprechend jeder anderen vorher festgelegten Reihenfolge.
  • In der Darstellung in 5 befindet sich Suchmaschine 3 an der Spitze des Stapels. Suchmaschine 3 enthält einen Eintrag in ihrer Nachschlagetabelle, der "10.10.XX.XX" entspricht. Eine Suche in der Nachschlagetabelle erzeugt somit eine Übereinstimmungs-Qualität von "10", was eine teilweise Übereinstimmung anzeigt. Suchmaschine 3 sendet ihre Nutzinformation, Übereinstimmungs-Qualitäts-Daten und Kennzeichen zusammen mit einem Signal, das die Suche durchgeführt wurde, an Suchmaschine 2.
  • Suchmaschine 2 enthält einen Eintrag in ihrer Nachschlagetabelle, der "10.10.10.XX" entspricht. Eine Suche in der Nachschlagetabelle erzeugt ebenfalls eine teilweise Übereinstimmung mit einer Übereinstimmungs-Qualität von "10". Suchmaschine 2 vergleicht ihre Übereinstimmungs-Qualität mit der Übereinstimmungs-Qualität von Suchmaschine 3 und stellt fest, dass sie gleiche Priorität haben. Somit bestätigt Suchmaschine 2 die von Suchmaschine 3 empfangene Nutzinformation, die Übereinstimmungs-Qualitäts-Daten und das Kennzeichen und sendet sie an Suchmaschine 1. In einer alternativen Ausführung werden, wenn eine spätere Suchmaschine eine bessere Übereinstimmung als eine vorherige Suchmaschine hat, die Nutzinformation, die Übereinstimmungs-Qualität und das Kennzeichen der späteren Suchmaschine bestätigt und benutzt. Suchmaschine 2 sendet an Suchmaschine 1 auch ein Signal, dass die Suche durchgeführt wurde.
  • Suchmaschine 1 enthält einen Eintrag in ihrer Nachschlagetabelle mit einer exakten Übereinstimmung mit dem Such-Schlüssel und erzeugt eine Übereinstimmungs-Qualität von "01". Suchmaschine 1 vergleicht ihre Übereinstimmungs-Qualität mit der von Suchmaschine 2 empfangenen Übereinstimmungs-Qualität und stellt fest, dass sie eine höhere Übereinstimmungs-Qualität hat. Somit bestätigt Suchmaschine 1 ihre eigene Nutzinformation, die Übereinstimmungs-Qualitäts-Daten und das Kennzeichen und sendet sie zusammen mit einem Signal, dass die Suche durchgeführt wurde, an Suchmaschine 0. Wenn Suchmaschine 1 keine bessere Übereinstimmung gehabt hätte, hätte sie die Nutzinformation, die Übereinstimmungs-Qualität und das Kennzeichen von Suchmaschine 2 benutzt.
  • Suchmaschine 0 enthält einen Eintrag in ihrer Nachschlagetabelle, der "15.15.15.15" entspricht. Dieser Eintrag erzeugt keine exakte oder teilweise Übereinstimmung. Somit erzeugt Suchmaschine 0 eine Übereinstimmungs-Qualität von "00", was anzeigt, dass keine Übereinstimmung gefunden wurde. Die Übereinstimmungs-Qualität von Suchmaschine 0 wird mit der von Suchmaschine 1 empfangenen Übereinstimmungs-Qualität verglichen, und es wird eine Feststellung getroffen, dass Suchmaschine 1 eine höhere Übereinstimmungs-Qualität hat. Folglich bestätigt Suchmaschine 0 die von Suchmaschine 1 empfangene Nutzinformation, die Übereinstimmungs-Qualitäts-Daten und das Kennzeichen und sendet sie zusammen mit einem Signal, dass die Suche durchgeführt wurde, an den Paket-Prozessor 32. Der Paket-Prozessor 32 empfängt somit ein einziges Suchergebnis mit der höchsten Übereinstimmungs-Qualität.
  • Obwohl diese Erfindung in bestimmten speziellen Ausführungen beschrieben wurde, wird ein Fachmann keine Schwierigkeiten haben, Änderungen abzuleiten, die in keiner Weise vom Umfang der vorliegenden Erfindung abweichen. Es muss daher verstanden werden, dass diese Erfindung anders als speziell beschrieben realisiert werden kann. Somit müssen die vorliegenden Ausführungen der Erfindung in jeder Hinsicht als beispielhaft und nicht einschränkend betrachtet werden, wobei der Umfang der Erfindung durch die beigefügten Ansprüche und nicht durch die obige Beschreibung angegeben wird.
  • 1
    • Vermittlungseinrichtung
    • Netzwerk
  • Fig. 2
    Lookup engine Suchmaschine
    31 Speicher
    33 Such-Logik
    Packet Prozessor Paket-Prozessor
    35 Temporärer Paket-Speicher
    37 Paket-Analyse & Entnahme des Schlüssels
    39 Weiterleitungs-Entscheidungs-Logik
    Payload Data Nutzinformations-Daten
    34 Paket-Daten
    Fig. 3
    40a Nutzinformation
    40b 2 Bit Übereinstimmung
    40c 8 Bit Kennzeichen
    Fig. 4
    50 Such-Schlüssel an alle Suchmaschinen senden
    52 Suchergebnis in jeder Suchmaschine erzeugen
    54 Suchergebnis und Signal, dass die Suche durchgeführt wurde, an nachgeordnete Suchmaschine senden
    58 Übereinstimmungs-Qualität des empfangenen Ergebnisses mit der Übereinstimmungs-Qualität des aktuellen Ergebnisses vergleichen
    60 Aktuelles Ergebnis hat höhere Übereinstimmungs-Qualität?
    N Nein
    Y Ja
    70 Empfangenes Ergebnis bestätigen
    72 Boden des Stapels?
    74 Empfangenes Suchergebnis an Paket-Prozessor senden
    76 Empfangenes Suchergebnis an nachgeordnete Suchmaschine senden
    62 Aktuelles Suchergebnis bestätigen
    64 Boden des Stapels?
    68 Aktuelles Suchergebnis an nachgeordnete Suchmaschine senden
    66 Aktuelles Suchergebnis an Paket-Prozessor senden
    End Ende
    Fig. 5
    Lookup engine Suchmaschine
    33 Such-Logik
    Payload Nutzinformation
    Tag Kennzeichen
    Sdone Suche durchgeführt
    Packet Processor Paket-Prozessor
    35 Temporärer Paket-Speicher
    37 Paket-Analyse & Entnahme des Schlüssels
    39 Weiterleitungs-Entscheidungs-Logik
    Payload Nutzinformation
    34 Paket-Daten

Claims (17)

  1. Verfahren zur Verarbeitung eines Datenpaketes, das von einer aus einer Vielzahl von Datenkommunikations-Vermittlungen (20) empfangen wird, die Datenpakete in einem Datenkommunikationsnetz (10) senden und empfangen, wobei die Kommunikations-Vermittlung (20) einen Paket-Prozessor (32) enthält und das Verfahren folgende Schritte umfasst: Erzeugen eines Such-Schlüssels für das Datenpaket; Gleichzeitiges Senden (50) des Such-Schlüssels an eine Vielzahl von Suchmaschinen (30a, 30b, 30c, 30d), wobei jede Suchmaschine eine Nachschlagetabelle unterhält und wobei eine Suchmaschine (301) eine Schnittstelle enthält, die zum Paket-Prozessor (32) freigegeben ist; Benutzen des Such-Schlüssels zum Absuchen der Nachschlagetabellen, wobei jede Suchmaschine ein Suchergebnis (40) erzeugt (52), das eine Übereinstimmungs-Qualität (40b) und eine Nutzinformation (40a) enthält, wobei die Nutzinformation (40a) Routing-Information enthält; Senden (54) des Suchergebnisses (40) durch jede Suchmaschine (30b, 30c, 30d) an eine benachbarte Suchmaschine (30a, 30b, 30c), bis ein einziges endgültiges Suchergebnis (40) von der einen Suchmaschine (30a) über die Schnittstelle zum Paket-Prozessor (32) gesendet wird, wobei jede Suchmaschine (30a, 30b, 30c), die ein Suchergebnis (40) empfängt, entweder das empfangene Ergebnis oder ihr eigenes Suchergebnis (40) sendet, was auf dem Vergleichen (58) der Übereinstimmungs-Qualität (40b) des empfangenen Suchergebnisses (40) mit der Übereinstimmungs-Qualität (40b) ihres eigenen Suchergebnisses (40) beruht; und Rückgabe eines der Suchergebnisse (40) auf der Basis der Übereinstimmungs-Qualität (40b) an den Paket-Prozessor (32).
  2. Verfahren aus Anspruch 1, wobei der Schritt der Rückgabe eines der Suchergebnisse (40) die Rückgabe des Suchergebnisses (40) mit der höchsten Übereinstimmungs-Qualität (40b) umfasst.
  3. Verfahren aus Anspruch 1, wobei die Übereinstimmungs-Qualität (40b) eine exakte Übereinstimmung, eine teilweise Übereinstimmung oder dass keine Übereinstimmung vorliegt, anzeigt.
  4. Verfahren aus Anspruch 1, wobei die Nachschlagetabellen Einträge enthalten, die sich von den Einträgen in anderen Nachschlagetabellen unterscheiden, die von anderen Suchmaschinen (5/10–12) unterhalten werden.
  5. Verfahren aus Anspruch 1, wobei das Suchergebnis zusammen mit einem Signal, dass die Suche durchgeführt wurde, an die benachbarte Suchmaschine übertragen wird (8/14–16; 10/11–12).
  6. Verfahren aus Anspruch 1, wobei das zurückgegebene der Suchergebnisse (40) Daten aus der Nachschlagetabelle enthält, die dem Such-Schlüssel zugeordnet sind.
  7. Verfahren aus Anspruch 1, das weiterhin die Bestätigung des empfangenen Suchergebnisses (40) durch die empfangende Suchmaschine umfasst.
  8. Paketverarbeitungssystem, das folgendes enthält: Mittel zum Empfang eines Datenpaketes; einen Paket-Prozessor (32), der mit dem Mittel zum Empfang des Datenpaketes gekoppelt ist, wobei der Paket-Prozessor (32) angepasst ist, einen Such-Schlüssel für das Datenpaket zu erzeugen; eine Vielzahl von Suchmaschinen (30a, 30b, 30c, 30d), die angepasst sind, gleichzeitig den Such-Schlüssel vom Paket-Prozessor (32) zu empfangen, wobei jede Suchmaschine eine Nachschlagetabelle unterhält und wobei eine Suchmaschine (301) eine Schnittstelle enthält, die zum Paket-Prozessor (32) freigegeben ist; wobei die Vielzahl von Suchmaschinen (30a, 30b, 30c, 30d) angepasst ist, den Such-Schlüssel dazu zu verwenden, die unterhaltene Nachschlagetabelle abzusuchen, um ein Suchergebnis (40) zu erzeugen, das eine Übereinstimmungs-Qualität (40b) und eine Nutzinformation (40a) enthält, wobei die Nutzinformation (40a) Routing-Information enthält; wobei jede Suchmaschine (30b, 30c, 30d) angepasst ist, das Suchergebnis (40) an eine benachbarte Suchmaschine (30a, 30b, 30c) zu senden (54), bis ein einziges endgültiges Suchergebnis (40) von der einen Suchmaschine (30a) über die Schnittstelle zum Paket-Prozessor (32) gesendet wird, wobei jede Suchmaschine (30a, 30b, 30c), die ein Suchergebnis (40) empfängt, angepasst ist, entweder das empfangene Ergebnis oder ihr eigenes Suchergebnis (40) zu senden, was auf dem Vergleichen (58) der Übereinstimmungs-Qualität (40b) des empfangenen Suchergebnisses (40) mit der Übereinstimmungs-Qualität (40b) ihres eigenen Suchergebnisses (40) beruht; und die eine Suchmaschine (30a) angepasst ist, eines der Suchergebnisse (40) auf der Basis der Übereinstimmungs-Qualität (40b) an den Paket-Prozessor (32) zurückzugeben.
  9. Das System aus Anspruch 8, wobei der Paket-Prozessor angepasst ist, das eine der Suchergebnisse (40) mit der höchsten Übereinstimmungs-Qualität (40b) zu empfangen.
  10. Das System aus Anspruch 8, wobei das Suchergebnis (40) Übereinstimmungs-Qualitäts-Daten enthält, die eine exakte Übereinstimmung, eine teilweise Übereinstimmung oder dass keine Übereinstimmung vorliegt, anzeigen.
  11. Das System aus Anspruch 8, wobei die Nachschlagetabellen Einträge enthalten, die sich von den Einträgen in anderen Nachschlagetabellen unterscheiden, die von anderen Suchmaschinen (5/10–12) unterhalten werden.
  12. Das System aus Anspruch 8, wobei die Suchmaschinen (30a, 30b, 30c, 30d) angepasst sind, das Suchergebnis zusammen mit einem Signal, dass die Suche durchgeführt wurde, an die benachbarte Suchmaschine zu übertragen (8/14–16; 10/11–12).
  13. Das System aus Anspruch 8, wobei das Suchergebnis (40) Daten aus der Nachschlagetabelle enthält, die dem Such-Schlüssel zugeordnet sind.
  14. Das System aus Anspruch 8, wobei die empfangende Suchmaschine angepasst ist, das empfangene Suchergebnis (40) zu bestätigen.
  15. Das System aus Anspruch 14, wobei die Feststellung, welches Suchergebnis (40) bestätigt wird, auf einem Vergleich der Übereinstimmungs-Qualität basiert.
  16. Das System aus Anspruch 8, wobei die benachbarte Suchmaschine eine nachgeordnete Suchmaschine ist.
  17. Das System aus Anspruch 8, wobei die erste Suchmaschine eine vorgelagerte Suchmaschine ist.
DE60131596T 2000-05-24 2001-05-23 Stapelbare Sucheinrichtung Expired - Lifetime DE60131596T2 (de)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US20661700P 2000-05-24 2000-05-24
US20699600P 2000-05-24 2000-05-24
US206996P 2000-05-24
US206617P 2000-05-24
US21573800P 2000-06-29 2000-06-29
US215738P 2000-06-29
US09/764,943 US6957272B2 (en) 2000-05-24 2001-01-18 Stackable lookup engines
US764943 2001-01-18

Publications (2)

Publication Number Publication Date
DE60131596D1 DE60131596D1 (de) 2008-01-10
DE60131596T2 true DE60131596T2 (de) 2008-10-23

Family

ID=27498618

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60131596T Expired - Lifetime DE60131596T2 (de) 2000-05-24 2001-05-23 Stapelbare Sucheinrichtung

Country Status (4)

Country Link
US (1) US6957272B2 (de)
EP (1) EP1158729B1 (de)
AT (1) ATE379904T1 (de)
DE (1) DE60131596T2 (de)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7343413B2 (en) 2000-03-21 2008-03-11 F5 Networks, Inc. Method and system for optimizing a network by independently scaling control segments and data flow
US8380854B2 (en) 2000-03-21 2013-02-19 F5 Networks, Inc. Simplified method for processing multiple connections from the same client
US7490162B1 (en) * 2002-05-15 2009-02-10 F5 Networks, Inc. Method and system for forwarding messages received at a traffic manager
JP4050559B2 (ja) * 2002-06-28 2008-02-20 富士通株式会社 コンテンツ検索処理プログラム、コンテンツ検索処理プログラムを記録した記録媒体およびオペレータ問合せ処理システム
US8411570B2 (en) * 2005-07-28 2013-04-02 Riverbed Technologies, Inc. Serial clustering
US7774484B1 (en) 2002-12-19 2010-08-10 F5 Networks, Inc. Method and system for managing network traffic
JP4355188B2 (ja) * 2003-10-03 2009-10-28 株式会社日立製作所 パケット転送装置
US9614772B1 (en) 2003-10-20 2017-04-04 F5 Networks, Inc. System and method for directing network traffic in tunneling applications
US7903555B2 (en) * 2003-12-17 2011-03-08 Intel Corporation Packet tracing
US8418233B1 (en) 2005-07-29 2013-04-09 F5 Networks, Inc. Rule based extensible authentication
US8533308B1 (en) 2005-08-12 2013-09-10 F5 Networks, Inc. Network traffic management through protocol-configurable transaction processing
US8565088B1 (en) 2006-02-01 2013-10-22 F5 Networks, Inc. Selectively enabling packet concatenation based on a transaction boundary
US8792497B2 (en) * 2006-06-05 2014-07-29 Tellabs Operations, Inc. Method and apparatus for performing link aggregation
US9106606B1 (en) 2007-02-05 2015-08-11 F5 Networks, Inc. Method, intermediate device and computer program code for maintaining persistency
US8073046B2 (en) * 2007-06-14 2011-12-06 Zoran Corporation Fast training equalization of a signal by using adaptive-iterative algorithm with main path phase correction
US8806053B1 (en) 2008-04-29 2014-08-12 F5 Networks, Inc. Methods and systems for optimizing network traffic using preemptive acknowledgment signals
US8218574B2 (en) * 2008-05-06 2012-07-10 Harris Corporation Scalable packet analyzer and related method
US9832069B1 (en) 2008-05-30 2017-11-28 F5 Networks, Inc. Persistence based on server response in an IP multimedia subsystem (IMS)
US9130846B1 (en) 2008-08-27 2015-09-08 F5 Networks, Inc. Exposed control components for customizable load balancing and persistence
US8566444B1 (en) 2008-10-30 2013-10-22 F5 Networks, Inc. Methods and system for simultaneous multiple rules checking
US7831609B1 (en) * 2009-08-25 2010-11-09 Vizibility Inc. System and method for searching, formulating, distributing and monitoring usage of predefined internet search queries
US10157280B2 (en) 2009-09-23 2018-12-18 F5 Networks, Inc. System and method for identifying security breach attempts of a website
US10721269B1 (en) 2009-11-06 2020-07-21 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
US8868961B1 (en) 2009-11-06 2014-10-21 F5 Networks, Inc. Methods for acquiring hyper transport timing and devices thereof
US9313047B2 (en) 2009-11-06 2016-04-12 F5 Networks, Inc. Handling high throughput and low latency network data packets in a traffic management device
US9141625B1 (en) 2010-06-22 2015-09-22 F5 Networks, Inc. Methods for preserving flow state during virtual machine migration and devices thereof
US10015286B1 (en) 2010-06-23 2018-07-03 F5 Networks, Inc. System and method for proxying HTTP single sign on across network domains
US8908545B1 (en) 2010-07-08 2014-12-09 F5 Networks, Inc. System and method for handling TCP performance in network access with driver initiated application tunnel
US8347100B1 (en) 2010-07-14 2013-01-01 F5 Networks, Inc. Methods for DNSSEC proxying and deployment amelioration and systems thereof
US9083760B1 (en) 2010-08-09 2015-07-14 F5 Networks, Inc. Dynamic cloning and reservation of detached idle connections
US8630174B1 (en) 2010-09-14 2014-01-14 F5 Networks, Inc. System and method for post shaping TCP packetization
US8886981B1 (en) 2010-09-15 2014-11-11 F5 Networks, Inc. Systems and methods for idle driven scheduling
US8463909B1 (en) 2010-09-15 2013-06-11 F5 Networks, Inc. Systems and methods for managing server resources
US8804504B1 (en) 2010-09-16 2014-08-12 F5 Networks, Inc. System and method for reducing CPU load in processing PPP packets on a SSL-VPN tunneling device
WO2012058486A2 (en) 2010-10-29 2012-05-03 F5 Networks, Inc. Automated policy builder
US9554276B2 (en) 2010-10-29 2017-01-24 F5 Networks, Inc. System and method for on the fly protocol conversion in obtaining policy enforcement information
US8627467B2 (en) 2011-01-14 2014-01-07 F5 Networks, Inc. System and method for selectively storing web objects in a cache memory based on policy decisions
US10135831B2 (en) 2011-01-28 2018-11-20 F5 Networks, Inc. System and method for combining an access control system with a traffic management system
US9246819B1 (en) 2011-06-20 2016-01-26 F5 Networks, Inc. System and method for performing message-based load balancing
US9270766B2 (en) 2011-12-30 2016-02-23 F5 Networks, Inc. Methods for identifying network traffic characteristics to correlate and manage one or more subsequent flows and devices thereof
US10230566B1 (en) 2012-02-17 2019-03-12 F5 Networks, Inc. Methods for dynamically constructing a service principal name and devices thereof
US9172753B1 (en) 2012-02-20 2015-10-27 F5 Networks, Inc. Methods for optimizing HTTP header based authentication and devices thereof
US9231879B1 (en) 2012-02-20 2016-01-05 F5 Networks, Inc. Methods for policy-based network traffic queue management and devices thereof
US10097616B2 (en) 2012-04-27 2018-10-09 F5 Networks, Inc. Methods for optimizing service of content requests and devices thereof
US10375155B1 (en) 2013-02-19 2019-08-06 F5 Networks, Inc. System and method for achieving hardware acceleration for asymmetric flow connections
US10187317B1 (en) 2013-11-15 2019-01-22 F5 Networks, Inc. Methods for traffic rate control and devices thereof
EP3131240B1 (de) * 2014-04-30 2020-06-10 Huawei Technologies Co., Ltd. Suchvorrichtung und -verfahren
US10015143B1 (en) 2014-06-05 2018-07-03 F5 Networks, Inc. Methods for securing one or more license entitlement grants and devices thereof
US11838851B1 (en) 2014-07-15 2023-12-05 F5, Inc. Methods for managing L7 traffic classification and devices thereof
US10122630B1 (en) 2014-08-15 2018-11-06 F5 Networks, Inc. Methods for network traffic presteering and devices thereof
US10182013B1 (en) 2014-12-01 2019-01-15 F5 Networks, Inc. Methods for managing progressive image delivery and devices thereof
US11895138B1 (en) 2015-02-02 2024-02-06 F5, Inc. Methods for improving web scanner accuracy and devices thereof
US9680749B2 (en) * 2015-02-27 2017-06-13 Arista Networks, Inc. System and method of using an exact match table and longest prefix match table as a combined longest prefix match
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US11350254B1 (en) 2015-05-05 2022-05-31 F5, Inc. Methods for enforcing compliance policies and devices thereof
US10505818B1 (en) 2015-05-05 2019-12-10 F5 Networks. Inc. Methods for analyzing and load balancing based on server health and devices thereof
US11757946B1 (en) 2015-12-22 2023-09-12 F5, Inc. Methods for analyzing network traffic and enforcing network policies and devices thereof
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US11178150B1 (en) 2016-01-20 2021-11-16 F5 Networks, Inc. Methods for enforcing access control list based on managed application and devices thereof
US10797888B1 (en) 2016-01-20 2020-10-06 F5 Networks, Inc. Methods for secured SCEP enrollment for client devices and devices thereof
US10791088B1 (en) 2016-06-17 2020-09-29 F5 Networks, Inc. Methods for disaggregating subscribers via DHCP address translation and devices thereof
US11063758B1 (en) 2016-11-01 2021-07-13 F5 Networks, Inc. Methods for facilitating cipher selection and devices thereof
US10505792B1 (en) 2016-11-02 2019-12-10 F5 Networks, Inc. Methods for facilitating network traffic analytics and devices thereof
US11496438B1 (en) 2017-02-07 2022-11-08 F5, Inc. Methods for improved network security using asymmetric traffic delivery and devices thereof
US10791119B1 (en) 2017-03-14 2020-09-29 F5 Networks, Inc. Methods for temporal password injection and devices thereof
US10812266B1 (en) 2017-03-17 2020-10-20 F5 Networks, Inc. Methods for managing security tokens based on security violations and devices thereof
US10931662B1 (en) 2017-04-10 2021-02-23 F5 Networks, Inc. Methods for ephemeral authentication screening and devices thereof
US10972453B1 (en) 2017-05-03 2021-04-06 F5 Networks, Inc. Methods for token refreshment based on single sign-on (SSO) for federated identity environments and devices thereof
US11343237B1 (en) 2017-05-12 2022-05-24 F5, Inc. Methods for managing a federated identity environment using security and access control data and devices thereof
US11122042B1 (en) 2017-05-12 2021-09-14 F5 Networks, Inc. Methods for dynamically managing user access control and devices thereof
US11122083B1 (en) 2017-09-08 2021-09-14 F5 Networks, Inc. Methods for managing network connections based on DNS data and network policies and devices thereof
US11658995B1 (en) 2018-03-20 2023-05-23 F5, Inc. Methods for dynamically mitigating network attacks and devices thereof
US11044200B1 (en) 2018-07-06 2021-06-22 F5 Networks, Inc. Methods for service stitching using a packet header and devices thereof

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5930359A (en) 1996-09-23 1999-07-27 Motorola, Inc. Cascadable content addressable memory and system
US5909440A (en) * 1996-12-16 1999-06-01 Juniper Networks High speed variable length best match look-up in a switching device
US6493347B2 (en) * 1996-12-16 2002-12-10 Juniper Networks, Inc. Memory organization in a switching device
US5983223A (en) 1997-05-06 1999-11-09 Novell, Inc. Method and apparatus for determining a longest matching prefix from a dictionary of prefixes
US5938736A (en) * 1997-06-30 1999-08-17 Sun Microsystems, Inc. Search engine architecture for a high performance multi-layer switch element
US6006306A (en) * 1997-07-02 1999-12-21 Xylan Corporation Integrated circuit with stage-implemented content-addressable memory cell
US6230236B1 (en) 1997-08-28 2001-05-08 Nortel Networks Corporation Content addressable memory system with cascaded memories and self timed signals
US6161144A (en) * 1998-01-23 2000-12-12 Alcatel Internetworking (Pe), Inc. Network switching device with concurrent key lookups
US6553000B1 (en) * 1998-01-27 2003-04-22 Alcatel Internetworking (Pe), Inc. Method and apparatus for forwarding network traffic
US6430527B1 (en) * 1998-05-06 2002-08-06 Avici Systems Prefix search circuitry and method
WO2000003516A1 (en) * 1998-07-08 2000-01-20 Broadcom Corporation Network switching architecture with multiple table synchronization, and forwarding of both ip and ipx packets
US6678269B1 (en) * 1998-10-05 2004-01-13 Alcatel Network switching device with disparate database formats
US6658015B1 (en) * 1999-05-28 2003-12-02 Advanced Micro Devices, Inc. Multiport switch with plurality of logic engines for simultaneously processing different respective data frames
US6665297B1 (en) * 1999-12-09 2003-12-16 Mayan Networks Corporation Network routing table
US6711153B1 (en) * 1999-12-13 2004-03-23 Ascend Communications, Inc. Route lookup engine
US6463067B1 (en) * 1999-12-13 2002-10-08 Ascend Communications, Inc. Submission and response architecture for route lookup and packet classification requests
EP1162797B1 (de) * 2000-06-09 2010-12-08 Broadcom Corporation Flexibler Protokoll-header für Netzwerk-switch
US6687715B2 (en) * 2001-06-28 2004-02-03 Intel Corporation Parallel lookups that keep order

Also Published As

Publication number Publication date
ATE379904T1 (de) 2007-12-15
EP1158729A3 (de) 2004-04-07
US20010037396A1 (en) 2001-11-01
EP1158729A2 (de) 2001-11-28
US6957272B2 (en) 2005-10-18
DE60131596D1 (de) 2008-01-10
EP1158729B1 (de) 2007-11-28

Similar Documents

Publication Publication Date Title
DE60131596T2 (de) Stapelbare Sucheinrichtung
DE60313371T2 (de) Verwendung von baumartigen "Bitmap" Datenstrukturen
DE60126647T2 (de) System und Verfahren um die Steuerung von Echtzeit-Transport-Protokollflüsse über mehrere Netzwerke zu unterstützen
DE60033529T2 (de) Netzprozessor, speicherorganisation und verfahren
DE69934644T2 (de) Netzwerkvermittlungseinrichtung mit auf der Basis von Benutzung verteilten Umleitungsdatenbanken
DE69738174T2 (de) Auf virtuellen pfaden basierte statische leitweglenkung
DE60123656T2 (de) System um die steuerung von echtzeit-transport-protokollflüsse über mehrere netzwerke zu unterstützen unter verwendung einer gruppe von sitzungsroutern
DE60128007T2 (de) Vorrichtung und verfahren zur sicherheitsbearbeitung von kommunikationspaketen
DE69531337T2 (de) Weglenkung von Transaktionsnachrichten in einem digitalen Kommunikationsnetz
DE69433126T2 (de) Verfahren zum Einrichten von virtuellen Mehrfachsendeverbindungen
DE69827201T2 (de) Verfahren und system zur server-netzwerkvermittlung-mehrverbindung
DE69730452T2 (de) Verfahren und vorrichtung zur cachespeicherung von politik zur verwendung in einem kommunikationsgerät
DE60029467T2 (de) Netzwerkschalter und komponenten und betriebsverfahren
DE602005002382T2 (de) Verteilte dynamische Leitweglenkung
DE69533122T2 (de) Rechnernetzwerkdurchschaltvermittlung
DE69835809T2 (de) Kommunikationssteuereinheit und Kommunikationssteuerungsverfahren angewendet für ein Mehrfachsende-unterstützendes LAN
DE60128733T2 (de) Regelbasiertes weitersenden in OSPF Netzwerken
DE69533533T2 (de) Kommunikationssystem, Server und Verfahren zur Adressenverwaltung
DE60311800T2 (de) Verfahren und vorrichtung zur verbesserung der netzwerkleitweglenkung
DE602004004060T2 (de) Verteilung von Mitgliedschaftsinformationen für Mehrfachteilnehmersitzungen auf der Applikationsebene
DE69937185T2 (de) Verfahren und vorrichtung zum paketbeförderungsnachschlagen mit einer reduzierten anzahl von speicherzugriffen
DE19860120B4 (de) Routensuchschaltung und diese verwendende Kommunikationsvorrichtung
DE10058443A1 (de) Verfahren zum Klassifizieren von Datenpaketen
DE60133175T2 (de) Kommunikationsnetz
DE60117554T2 (de) Verfahren und vorrichtung zur effizienten hashing in netze

Legal Events

Date Code Title Description
8364 No opposition during term of opposition