DE60303384T2 - Lastausgleich in datennetzwerken - Google Patents

Lastausgleich in datennetzwerken Download PDF

Info

Publication number
DE60303384T2
DE60303384T2 DE60303384T DE60303384T DE60303384T2 DE 60303384 T2 DE60303384 T2 DE 60303384T2 DE 60303384 T DE60303384 T DE 60303384T DE 60303384 T DE60303384 T DE 60303384T DE 60303384 T2 DE60303384 T2 DE 60303384T2
Authority
DE
Germany
Prior art keywords
hash
logic
routing path
routing
data
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
DE60303384T
Other languages
English (en)
Other versions
DE60303384D1 (de
Inventor
Edwin Hoyt CHAPEL HILL BOWEN
Patrick Droz
Lukas Cambridge KENCL
Bernhard Metzler
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE60303384D1 publication Critical patent/DE60303384D1/de
Application granted granted Critical
Publication of DE60303384T2 publication Critical patent/DE60303384T2/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
    • H04L45/22Alternate routing
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • 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/11Identifying congestion
    • 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/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • 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/17Interaction among intermediate nodes, e.g. hop by hop
    • 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/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/10015Access to distributed or replicated servers, e.g. using brokers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

  • Die vorliegende Erfindung betrifft allgemein den Lastausgleich in Datennetzen und insbesondere ein Verfahren und eine Vorrichtung zum Lastausgleich in einem Datennetz.
  • Ein Datennetz umfasst üblicherweise eine Vielzahl von Server-Computern, die über eine Datennetzinfrastruktur mit einer Vielzahl von Client-Computern verbunden sind. Die Datennetzinfrastruktur umfasst üblicherweise eine Vielzahl von zwischengeschalteten Datenübertragungseinheiten oder -knoten wie beispielsweise Switches (Vermittlungsrechner), Router und Ähnliches zum Weiterleiten von Datenpaketen zwischen den Client-Computern und den Server-Computern. Solche Datenübertragungseinheiten umfassen üblicherweise eine Vielzahl von Eingabe-/Ausgabeanschlüssen (E/A), ein Koppelnetz zum Weiterleiten der über einen Anschluss empfangenen Datenpakete zu einem oder mehreren anderen Anschlüssen und eine Steuerlogik zur Steuerung des Koppelnetzes, um anhand der in den durchlaufenden Datenpaketen enthaltenen Adressinformationen geeignete Verbindungen zwischen den Anschlüssen herzustellen.
  • Bei solchen Datennetzwerken stellt der Lastausgleich zwischen den unterschiedlichen Knoten in der Netzinfrastruktur ein Problem dar. Mit zunehmendem Umfang des von der Netzinfrastruktur zu bewältigenden Datenverkehrs lässt sich der Lastausgleich zwischen den Knoten in der Infrastruktur zum passenden Zeitpunkt immer schwieriger erreichen. Dadurch kommt es zu Engpässen und Verzögerungen im Datenverkehr.
  • Im Dokument EP-A-1 130 849 wird ein Verfahren zur Lastverteilung auf eine Vielzahl von Routing-Pfaden durch Zufügen oder Entfernen von Datenübertragungspfaden zu bzw. aus einer Gruppe von Datenverkehrsmerkmalen und anschließendes Ausgleichen der Last zwischen den Datenübertragungspfaden beschrieben.
  • Gemäß der vorliegenden Erfindung wird eine Lastausgleichsvorrichtung für ein Datenübertragungsnetz vorgeschlagen, wobei die Vorrichtung Folgendes umfasst: eine Hash-Logik zum Berechnen einer Hash-Funktion für die ankommenden Datenpakete; einen mit der Hash-Logik verbundenen Schwellenwertdetektor, um als Reaktion auf die Auslastung der nachfolgenden Objekte über einen definierten Schwellenwert hinaus Parameter der Hash-Funktion in der Hash-Logik neu zu definieren, d.h. aus einem ersten Satz von Parametern zum Umverteilen der Datenpakete auf die nachfolgenden Objekte einen zweiten Satz von Parametern zu erzeugen; wobei die verwendete Hash-Logik dafür sorgt, dass die zu den nachfolgenden Objekten im Netz weiterzuleitenden Datenpakete entsprechend einem aus dem ersten Satz von Parametern berechneten Hash-Wert einem ersten Routing-Pfad zugewiesen werden, während beim Überschreiten des Schwellenwertes Datenpakete in Abhängigkeit von den aus dem ersten und dem zweiten Satz von Parametern berechneten Hash-Werten selektiv entweder dem ersten oder dem zweiten Routing-Pfad zugewiesen werden, damit die Datenpakete anschließend in Abhängigkeit von den Ergebnissen der jeweils berechneten Hash-Werte selektiv entweder über den ersten oder über den zweiten Routing-Pfad weitergeleitet werden.
  • Vorzugsweise ordnet die verwendete Hash-Logik das Datenpaket dem ersten Routing-Pfad zu, wenn die Ergebnisse der separaten Hash-Wertberechnungen übereinstimmen, und ordnet das Datenpaket dem zweiten Routing-Pfad zu, wenn dies nicht der Fall ist. Bei einer bevorzugten Ausführungsart der vorliegenden Erfindung umfasst die Vorrichtung ferner einen mit der Hash-Logik verbundenen Filter, damit Datenströme mit einer Lebensdauer, welche einen vorgegebenen Wert überschreitet, selektiv an der Hash-Logik vorbeigeleitet werden. Bei einer besonders bevorzugten Ausführungsart der vorliegenden Erfindung umfasst die Vorrichtung ferner den ersten Routing-Pfad und den zweiten Routing-Pfad, wobei der erste Routing-Pfad eine mit der Hash-Logik verbundene erste Routing-Logik und der zweite Routing-Pfad eine mit der Hash-Logik verbundene zweite Routing-Logik umfasst, wobei der erste Routing-Pfad schneller als der zweite Routing-Pfad ist und bei Verwendung des zweiten Routing-Pfades nachfolgende Objekte anhand des Paketflussstatus ausgewählt werden.
  • Die erste Routing-Logik kann mindestens einen Netzprozessor und die zweite Routing-Logik mindestens einen Allzweckprozessor umfassen. Die zweite Routing-Logik kann so konfiguriert sein, dass sie in einem Fluss von Datenpaketen einen Datenflussbegrenzer erkennt und nach dem Erkennen des Startsignals den betreffenden Datenfluss entsprechend dem aus den zweiten Parametern berechneten Hash-Wert weiterleitet. Die zweite Routing-Logik kann auch so konfiguriert sein, dass sie Datenpaketflüsse erkennt, welche eine vorgegebene Leerlaufzeit überschreiten, und solche Datenpaketflüsse entsprechend dem aus den zweiten Parametern berechneten Hash-Wert weiterleitet. Ferner kann die zweite Routing-Logik so konfiguriert sein, dass sie Datenpaketflüsse erkennt, welche eine vorgegebene Lebensdauer überschreiten, und solche Datenpaketflüsse zur ersten Routing-Logik weiterleitet.
  • Die vorliegende Erfindung betrifft ferner eine anwendungsspezifische integrierte Schaltung, die eine oben beschriebene Lastausgleichsvorrichtung umfasst. Die vorliegende Erfindung betrifft auch einen Netzinfrastrukturknoten, welcher eine oben beschriebene Lastausgleichsvorrichtung umfasst. Außerdem betrifft die vorliegende Erfindung ein Datenübertragungsnetz, welches einen solchen Netzinfrastrukturknoten umfasst.
  • Unter einem anderen Aspekt stellt die vorliegende Erfindung ein Verfahren zum Lastausgleich in einem Datenübertragungsnetz zur Verfügung, wobei das Verfahren Folgendes umfasst: Berechnen einer Hash-Funktion für ankommende Datenpakete; Neudefinieren von Parametern der Hash-Funktion als Reaktion auf die einen vorgegebenen Schwellenwert überschreitende Auslastung nachfolgender Objekte, d.h. Erzeugen eines zweiten Satzes von Parametern aus einem ersten Satz von Parametern zum Umverteilen der Datenpakete auf die nachfolgenden Objekte; und Zuweisen der zu nachfolgenden Objekten des Netzes weiterzuleitenden Datenpakete entsprechend einem mit dem ersten Parametersatz berechneten Hash-Wert zu einem ersten Routing-Pfad und beim Überschreiten des Schwellenwertes selektives Zuweisen der Datenpakete in Abhängigkeit von den mit dem ersten und dem zweiten Parametersatz berechneten Hash-Werten entweder zum ersten oder zum zweiten Routing-Pfad, damit die Datenpakete anschließend in Abhängigkeit von den Ergebnissen der jeweils berechneten Hash-Werte selektiv entweder über den ersten oder über den zweiten Routing-Pfad weitergeleitet werden.
  • Bei einer bevorzugten Ausführungsart der vorliegenden Erfindung umfasst das verfahren das Zuweisen der Datenpakete zum ersten Routing-Pfad, wenn die separat berechneten Hash-Werte übereinstimmen, und zum zweiten Routing-Pfad, wenn dies nicht der Fall ist.
  • Um zehntausende oder hunderttausende Datenpaketflüsse möglichst gut durch Hardware auszugleichen, muss ein Schema erstellt werden, bei dem möglichst wenige Datenflusszustände verwaltet werden und gleichzeitig die Konnektivität aktiver Datenflüsse, wie beispielsweise TCP-Datenflüsse zwischen Hosts, aufrechterhalten wird.
  • Bei einer bevorzugten Ausführungsart der vorliegenden Erfindung wird ein auf Hardware beruhendes iteratives Lastausgleichsverfahren bereitgestellt, bei welchem eine Hash-Funktion zum Verteilen von Datenpaketflüssen auf eine Anzahl von Hosts, Verbindungsknoten und/oder Netzschnittstellen in einem Datenübertragungsnetz verwendet wird. Die Hash-Funktion wird auf einen Teil jedes Datenpaketes angewendet, der für die Dauer des Datenflusses konstant ist, zum Beispiel auf die Quellenadresse des betreffenden Datenflusses. Das Verfahren wechselt zwischen einem Zustand, bei welchem die Hash-Funktion nur aus einem Satz von Hash-Parametern berechnet wird, und einem Zustand, bei welchem zwei Sätze von Hash-Parametern vorgegeben sind. Beim ersten Zustand gibt es nur einen Hash-Wert. Beim zweiten Zustand ist die Differenz zwischen zwei Hash-Werten bekannt. Das Verfahren ermittelt einen schnellen und einen langsamen Routing-Pfad. Der schnelle Routing-Pfad kann durch spezielle Hardware realisiert werden, zum Beispiel durch Netzprozessoren oder ähnliche anwendungsspezifische integrierte Schaltungen (Application Specific Integrated Circuit, ASIC). Der langsame Routing-Pfad lässt sich besser durch Software in einem Allzweckprozessor (General Purpose Processor, GPP) realisieren. Zwischen Objekten mit Lastausgleich werden Datenflüsse nur so lange übertragen, wie die Kontinuität erhalten bleibt. Dadurch wird auf vorteilhafte Weise sichergestellt, dass die Datenflusskonnektivität nicht unterbrochen und die Reihenfolge der Datenpakete nicht geändert wird. Außerdem wird ein Status für Datenflüsse reserviert, bei denen die beiden Hash-Werte nicht übereinstimmen. Dieser reservierte Status wird jedoch ständig und radikal abgebaut. Dies bringt den Vorteil möglichst geringer Hardwarekosten. Durch die Weiterleitung der Datenpakete über schnelle Routing-Pfade mit Hilfe spezieller Hardware, zum Beispiel Netzprozessoren, wird die Leistung der Datenübertragung außerdem in ungekanntem Maße gesteigert.
  • Im Folgenden werden als Beispiele bevorzugte Ausführungsarten der vorliegenden Erfindung unter Bezug auf die beiliegenden Zeichnungen beschrieben, wobei:
  • 1 ein Blockschaltbild eines Datenübertragungsnetzes ist;
  • 2 ein Blockschaltbild eines Infrastrukturknotens des Datenübertragungsnetzes ist;
  • 3 ein anderes Blockschaltbild des Infrastrukturknotens ist;
  • 4 ein Flussdiagramm einer Steuereinheit des Infrastrukturknotens ist;
  • 5 ein Flussdiagramm einer Lastausgleichseinheit des Infrastrukturknotens ist; und
  • 6 ein weiteres Flussdiagramm einer Lastausgleichseinheit des Infrastrukturknotens ist.
  • Ein Datenübertragungsnetz 140 umfasst gemäß 1 eine Vielzahl von Netzobjekten 10 bis 120. Die Netzobjekte beinhalten Netzknoten 10 bis 90 und dazwischen Netzverbindungen 100 bis 120 zum Übertragen von Datenpaketen zwischen den Netzknoten 10 bis 30. Die Netzknoten beinhalten Endpunktknoten 10 bis 60 und Infrastrukturknoten 70 bis 90. Die Infrastrukturknoten 70 bis 90 der Verbindungen 110 bis 130 bilden zusammen eine Netzinfrastruktur 130. Die Endpunktknoten 10 bis 60 beinhalten eine Vielzahl von Client-Datenverarbeitungseinheiten 10 bis 30 und eine Vielzahl von Server-Computersystemen 40 bis 60. Die Clients 10 bis 30 und die Server 40 bis 60 sind über eine Netzinfrastruktur 100 miteinander verbunden. Jeder Client 10 bis 30 kann ein Personal Computer, ein Laptopcomputer, ein PDA (Personal Digital Assistent), ein Mobiltelefon oder Ähnliches sein. Jeder Server 40 bis 60 kann ein Dateiserver, ein Druckerserver oder ähnlicher Host als Datenverarbeitungs- oder Datenspeicherressource sein.
  • In der Praxis erfolgt die Datenübertragung zwischen den Clients 10 bis 30 und den Servern 40 bis 60 mittels Datenpaketflüssen durch die Netzinfrastruktur 100. Die Datenpaketflüsse werden auf dem Weg zwischen den Clients 10 bis 30 und den Servern 40 bis 60 gemäß einem oder mehreren Datenübertragungsprotokollen durch die Infrastrukturknoten 70 bis 90 der Netzinfrastruktur geleitet. Jeder Infrastrukturknoten 70 bis 90 führt eine Routing-Funktion aus, um die von ihm empfangenen Datenpakete zum richtigen Empfängerobjekt weiterzuleiten.
  • 2 zeigt, dass jeder Infrastrukturknoten 70 bis 90 eine erste Routing-Logik 220, eine zweite Routing-Logik 210 und einen mit der ersten Routing-Logik 220 und der zweiten Routing-Logik 210 verbundenen Lastverteiler 200 umfasst. Die erste Routing-Logik 220 und die zweite Routing-Logik 210 führen dieselbe Routing-Funktion aus. Dabei führt die erste Routing-Logik 220 jedoch die Routing-Funktion schneller als die zweite Routing-Logik 210 aus. Somit stellt die erste Routing-Logik 220 einen relativ schnellen Routing-Pfad und die zweite Routing-Logik 210 einen relativ langsamen Routing-Pfad zur Verfügung.
  • 3 zeigt eine besonders bevorzugte Ausführungsart der vorliegenden Erfindung, bei welcher jeder Infrastrukturknoten einen mit einem Steuerpunkt 400 verbundenen Netzprozessor (Network Processor, NP) 300 umfasst. Im NP 300 sind sowohl die Lastausgleichsvorrichtung 200 als auch die erste Routing-Logik 220 implementiert. Der NP 300 umfasst insbesondere eine ausführbare Software zum Ausführen von Lastausgleichsentscheidungen in der Lastausgleichsvorrichtung 200 zusammen mit einer fest verdrahteten Logikimplementierung der ersten Routing-Logik 220 zum Ausführen der Paket-Routing-Funktion. Die Lastausgleichsvorrichtung 200 umfasst einen Filter 230 und eine mit diesem verbundene Hash-Logik 240.
  • Ein mit dem NP 300 verbundener Steuerpunkt (Control Point, CP) 400 umfasst eine mit einem Speicher 420 verbundene Allzweck-Datenverarbeitungseinheit (General Purpose Processing, GPP). Im Speicher 420 ist ein im GPP 410 ausgeführter Computerprogrammcode gespeichert, mittels dessen ein Flussstatuscontroller 430, Schwellenwertdetektoren 440 und 490, ein Hashparametergenerator 450, eine Konfliktdatenflussstatustabelle 460, eine „Langzeit"-Flussstatustabelle 480 und ein Router 470 implementiert werden. Der Flussstatuscontroller 430 berechnet für die Datenpaketflüsse zwischen Client und Server einen Status. Der Schwellenwertdetektor 440 überwacht den aktuellen Laststatus der Server 40 bis 60, um die Last zu verteilen. Der Router 470 implementiert die zweite Routing-Logik 210. Der CP 400 führt die Paket-Routing-Funktion langsamer aus als der NP 300.
  • Im Betrieb ermittelt die Lastausgleichsvorrichtung 200 aus dem aktuellen Status des Filters 230 sowie der Hash-Logik 240 für jeden ankommenden Datenpaketfluss, ob dieser durch die erste Routing-Logik 220 oder den CP 400 bearbeitet wird. Der Status sowohl des Filters 230 als auch der Hash-Logik 240 wird ausgehend von den vorliegenden Anforderungen für eines oder mehrere der nachfolgenden Objekte im Netz 140 durch den CP 400 gesteuert. Ein solcher Lastausgleich ist wünschenswert, um zum Beispiel vermeidbare Überlastungen eines oder mehrerer der nachfolgenden Objekte durch suboptimal verteilte Client-Anforderungen zu verhindern. Durch das Verhindern der vermeidbaren Überlastungen wird die Verfügbarkeit der Kapazitäten im Netz 140 optimiert. Die Lastausgleichsvorrichtung 200 führt mittels ihrer Hash-Logik 240 Hash-Funktionen aus, um Datenpaketflüsse zwischen Objekten im Netz auszugleichen. Insbesondere führt die Hash-Logik 240 die Hash-Funktionen an bestimmten Teilen der ankommenden Datenpakete aus, die während eines Datenpaketflusses konstant bleiben, zum Beispiel an der Quellenadresse. Die Lastausgleichsvorrichtung 200 wechselt zwischen zwei Status hin und her: einem Status, bei dem die Differenz zwischen den Ergebnissen von zwei Hash-Funktionen bekannt ist, und einem Status, bei dem nur das Ergebnis einer Hash-Funktion bekannt ist. Der Filter 230 kann bestimmte Datenpaketflüsse an der Hash-Logik 240 vorbeileiten.
  • Die Funktion des Filters 230 im Betrieb besteht darin, ankommende Datenpaketflüsse entweder zur ersten Routing-Logik 220 oder zur Hash-Logik 240 zu leiten. Die Hash-Logik 240 leitet die Datenpakete entsprechend einem Steuersignal vom CP 400 entweder zur ersten Routing-Logik 220 oder zum CP 400, in welchem die zweite Routing-Logik 210 implementiert ist. Wenn das Datenpaket zur ersten Routing-Logik 220 weitergeleitet wird, wird ihm entweder in der Hash-Logik 240 oder im Filter 230 eine Routing-Information zugefügt. Diese zusätzliche Routing-Information veranlasst die erste Routing-Logik 220, einen bestimmten Routing-Pfad auszuwählen. Die Routing-Information wird dem Datenpaket auch hinzugefügt, wenn die Hash-Funktion ein Datenpaket zur zweiten Routing-Logik 210 weiterleitet.
  • 4 zeigt das Blockschaltbild des Steuerpunkts 400, wo in Schritt 500 die Initialisierung sowohl der Hash-Logik 240 als auch des Filters 230 der Lastausgleichsvorrichtung 200 erfolgt. Der Filter 230 wird deaktiviert. Die Startparameter der Hash-Logik 240 können vom Bediener vorgegeben werden. Alternativ können die Startparameter der Hash-Logik 240 von einer automatischen Abfrage der Ressourcenkapazitäten der Objekte 40 bis 60 stammen, für die der Lastausgleich durchgeführt werden soll. CPU-Geschwindigkeiten, Schnittstellengeschwindigkeiten und Ähnliches sind Beispiele für solche Ressourcenparameter. In Schritt 510 sammelt der CP 400 im Rückmeldespeicher 430 statistische Daten zur Ressourcenauslastung in den Objekten 40 bis 60, für die der Lastausgleich durchgeführt werden soll.
  • In Schritt 520 vergleicht der Schwellenwertdetektor 440 die im Flussstatuscontroller 430 gesammelten statistischen Daten mit einem vorgegebenen Schwellenwert und ermittelt, ob mindestens eines der Objekte 40 bis 60 gegenüber den anderen Objekten zu stark ausgelastet ist. Wenn das Ergebnis der Prüfung positiv ist, werden in Schritt 530 im Hashparametergenerator 450 neue Hash-Parameter berechnet und als zweiter Parametersatz in die Hash-Logik 240 geladen. Die neuen Hash-Parameter verteilen den Datenaustausch im Netz anhand der gesammelten statistischen Daten optimal. In Schritt 540 fungiert der CP 400 als zweite Routing-Logik 210. Insbesondere empfängt der CP 400 Datenpakete von der Lastausgleichsvorrichtung 200, die bei der Berechnung der Hash-Funktion in der Hash-Logik 240 mit dem alten und dem neuen Parametersatz unterschiedliche Hash-Werte erhalten hat. Für solche „konkurrierenden Datenflüsse" speichert der CP 400 für jeden Datenflussstatus Informationen in der Statustabelle für konkurrierende Datenflüsse 460. Wenn der CP 400 während eines einstellbaren Zeitraums keine Datenpakete für einen konkurrierenden Datenfluss empfängt oder wenn der CP 400 mindestens einmal eine Anzeige für das Datenflussende empfängt, zum Beispiel ein TCP-Bit FIN, wird der betreffende Datenfluss als abgeschlossen betrachtet und sein Status als „alt beendet" markiert.
  • In Schritt 545 leitet der CP 400 das Datenpaket durch die zweite Routing-Logik 470 zu einem der Objekte 40 bis 60, für die der Lastausgleich durchgeführt werden soll. Wenn der Status des Datenflusses, zu welchem das Datenpaket gehört, als „alt beendet" markiert ist, wird das Datenpaket entsprechend dem Ergebnis der Hash-Berechnung mit den neuen Hash-Parametern weitergeleitet. Wenn dies nicht der Fall ist, wird das Datenpaket entsprechend dem Ergebnis der Hash-Berechnung mit den alten Hash-Parametern weitergeleitet.
  • Nach einem Zeitintervall, das nicht kürzer als das zur Erkennung des Datenflussendes in Schritt 540 zugewiesene Zeitintervall ist, vergleicht der Schwellenwertdetektor 490 in Schritt 550 die Anzahl der nicht beendeten konkurrierenden Datenpaketflüsse mit einem vorgegebenen Schwellenwert. Wenn der Schwellenwertdetektor 490 feststellt, dass die Anzahl der Datenpaketflüsse den Schwellenwert unterschreitet oder diesem gleich ist, werden in Schritt 560 alle lokalen Status nicht beendeter konkurrierender Datenpaketflüsse in die Statustabelle 480 für „langlebige Datenpaketflüsse" eingetragen und die Statustabelle 460 für „konkurrierende Datenpaketflüsse" gelöscht. In diesem Fall wird der Inhalt der Statustabelle 480 für „langlebige Datenpaketflüsse" in Schritt 560 zur Filterfunktion 230 der Lastausgleichsvorrichtung 200 übertragen und werden die alten Hash-Parameter der Hash-Logik 240 entfernt. Wenn der Schwellenwertdetektor 490 in Schritt 550 feststellt, dass die Anzahl der nicht beendeten konkurrierenden Datenpaketflüsse den Schwellenwert überschreitet, empfängt der CP 400 weiterhin Datenpakete mit konkurrierenden Hash-Werten von der Lastausgleichsvorrichtung 200.
  • In Schritt 570 empfängt der CP 400 Kopien von Datenpaketen, die zu „langlebigen" Datenpaketflüssen gehören. In Schritt 580 ermittelt der CP 400, ob ein Datenpaket eine Anzeige für das Datenflussende enthält, zum Beispiel ein TCP-Bit FIN, oder ob ein „langlebiger Datenpaketfluss" eine bestimmte Zeit lang inaktiv war. Wenn das Ergebnis der beiden Prüfungen negativ ist, springt der CP 400 zurück zu Schritt 570 und empfängt weiterhin Kopien von Datenpaketen, die zu „langlebigen Datenflüssen" gehören.
  • Wenn in Schritt 580 ein Datenflussende ermittelt wurde, wird in Schritt 585 der entsprechende Datenflusseintrag aus der Tabelle 480 für „langlebige Datenflüsse" und dem Filter 230 entfernt. In Schritt 590 prüft der CP 400, ob die Tabelle 480 für „langlebige Datenflüsse" leer ist. Wenn dies der Fall ist, wechselt der Status des CP 400 zurück zum Sammeln von Rückmeldeinformationen in Schritt 510. Wenn die Tabelle 480 für „langlebige Datenflüsse" nicht leer ist, springt der CP 400 zurück zu Schritt 570 und empfängt Kopien von Datenpaketen, die zu „langlebigen Datenflüssen" gehören.
  • Mittels einer eingehenderen Datenpaketverarbeitung kann der CP 400 laufende Datenflüsse ermitteln, die als beendet anzusehen sind. Zum Beispiel können laufende FTP-Datenflüsse (File Transfer Protocol) unter Umständen ohne Probleme zu einem neuen Server umgeleitet werden.
  • In Schritt 600 von 5 prüft der Filter 230, ob für jedes ankommende Datenpaket eine Filterbedingung besteht. Wenn dies der Fall ist, vergleicht der Filter 230 in Schritt 610, ob eine Datenpaketflusskennung die lokalen Filterbedingungen erfüllt. Wenn keine Filterbedingung besteht oder keine Bedingung erfüllt ist, wird das Datenpaket in Schritt 620 zur Hash-Logik 240 weitergeleitet. Wenn das Datenpaket eine Filterbedingung erfüllt, wird ihm entsprechend dieser erfüllten Bedingung in Schritt 630 seine Routing-Information zugewiesen. Das Datenpaket wird in Schritt 640 in den CP 400 kopiert und in Schritt 650 zur ersten Routing-Logik 220 gesendet.
  • Die Hash-Logik 240 in 6 wechselt zwischen zwei Status, je nachdem, ob entweder nur ein alter Hash-Parametersatz oder ein alter und ein neuer Hash-Parametersatz bekannt sind. In Schritt 700 berechnet die Hash-Logik 240 den Hash-Wert mit dem neuen Parametersatz. In Schritt 710 ermittelt die Hash-Logik 240, ob ein alter Hash-Parametersatz vorhanden ist. Wenn kein alter Parametersatz vorhanden ist, werden das Datenpaket und der Hash-Wert in Schritt 720 zur ersten Routing-Logik 220 weitergeleitet, damit diese das Datenpaket zum betreffenden Zielobjekt 40 bis 60 sendet. Wenn ein alter Hash-Parametersatz vorhanden ist, wird in Schritt 730 der Hash-Wert noch einmal mit dem alten Parametersatz berechnet. In Schritt 740 wird der Hash-Wert geprüft und ermittelt, ob die beiden Hash-Berechnungen zum selben Ergebnis führen. Wenn dies der Fall ist, gelangt das Datenpaket in Schritt 720 zur ersten Routing-Logik 220, um von dort zum betreffenden Zielobjekt 40 bis 60 weitergeleitet zu werden. wenn sich die Ergebnisse der beiden Hash-Berechnungen jedoch voneinander unterscheiden, werden das Datenpaket und die beiden Hash-Werte in Schritt 750 zum CP 400 geschickt, um auf dem langsamen Routing-Pfad weitergeleitet zu werden.
  • Bei den oben beschriebenen Ausführungsarten der vorliegenden Erfindung umfasst jede Infrastruktur 90 bis 110 im Netz 130 eine Lastausgleichsfunktionalität. Es ist jedoch klar, dass auch Netze 130 aufgebaut werden können, bei denen nur ein Teil der Infrastrukturknoten eine Lastausgleichsfunktionalität umfasst.
  • Eine Lastausgleichsvorrichtung für ein Datenübertragungsnetz umfasst eine Hash-Logik zum Berechnen einer Hash-Funktion für ankommende Datenpakete. Mit der Hash-Logik ist ein Schwellenwertdetektor verbunden, der als Reaktion auf die einen vorgegebenen Schwellenwert übersteigende Auslastung der nachfolgenden Objekte eine Neudefinition der Parameter der Hash-Funktion von einem ersten Parametersatz zu einem zweiten Parametersatz in der Hash-Logik auslöst, um die Datenpakete auf die nachfolgenden Objekte umzuverteilen. Die verwendete Hash-Logik bewirkt, dass die zu nachfolgenden Objekten im Netz weiterzuleitenden Datenpakete ausgehend von einer Berechnung des Hash-Wertes mit dem ersten Parametersatz einem ersten Routing-Pfad zugewiesen werden, während die Pakete bei Überschreitung des Schwellenwertes ausgehend von der separaten Berechnung von Hash-Werten mit dem ersten und dem zweiten Parametersatz selektiv dem ersten oder zweiten Routing-Pfad zugewiesen werden, damit sie anschließend in Abhängigkeit von den Ergebnissen einer der separaten Hash-Wert-Berechnungen über den ausgewählten ersten bzw. zweiten Routing-Pfad weitergeleitet werden.
  • Oben wurde als Beispiel der vorliegenden Erfindung eine Lastausgleichsvorrichtung 200 für ein Datenübertragungsnetz beschrieben, wobei die Lastausgleichsvorrichtung eine Hash-Logik 240 zum Berechnen einer Hash-Funktion für ankommende Datenpakete umfasst. Mit der Hash-Logik 240 ist ein Schwellenwertdetektor 440 verbunden, der als Reaktion auf die Auslastung der nachfolgenden Objekte über einen vorgegebenen Schwellenwert hinaus eine Neudefinition der Parameter der Hash-Funktion 240 von einem ersten Parametersatz zu einem zweiten Parametersatz in der Hash-Logik auslöst, um die Datenpakete auf die nachfolgenden Objekte umzuverteilen. Die Hash-Logik 240 weist die an nachfolgende Objekte im Netz weiterzuleitenden Datenpakete ausgehend von einer Berechnung des Hash-Wertes mit dem ersten Parametersatz einem ersten Routing-Pfad zu, während die Datenpakete bei Überschreitung des Schwellenwertes ausgehend von der separaten Berechnung von Hash-Werten mit dem ersten und dem zweiten Parametersatz selektiv dem ersten oder zweiten Routing-Pfad zugewiesen werden, damit sie anschließend in Abhängigkeit von den Ergebnissen einer der separaten Hash-Wert-Berechnungen über den ausgewählten ersten bzw. zweiten Routing-Pfad weitergeleitet werden. Es ist jedoch klar, dass die vorliegende Erfindung nicht auf zwei Hash-Parametersätze beschränkt ist. Bei anderen Ausführungsarten der vorliegenden Erfindung kann die Hash-Logik 240 mehr als zwei Hash-Parametersätze verarbeiten.

Claims (13)

  1. Lastausgleichsvorrichtung (200) für ein Datenübertragungsnetz (140), wobei die Vorrichtung Folgendes umfasst: eine Hash-Logik (240) zum Berechnen einer Hash-Funktion für ankommende Datenpakete; einen mit der Hash-Logik (240) verbundenen Schwellenwertdetektor (440) zum Auslösen einer Neudefinition der Parameter der Hash-Funktion in der Hash-Logik von einem ersten Parametersatz zu einem zweiten Parametersatz als Reaktion auf die Auslastung der nachfolgenden Objekte über einen vorgegebenen Schwellenwert hinaus, um die Datenpakete auf die nachfolgenden Objekte umzuverteilen; wobei die verwendete Hash-Logik (240) über Mittel zum Zuweisen der an die nachfolgenden Objekte im Netz weiterzuleitenden Datenpakete zu einem ersten Routing-Pfad (220) anhand einer Hashwert-Berechnung mit dem ersten Parametersatz, und wenn der Schwellenwert überschritten wird, zum selektiven Zuweisen der Datenpakete zu einem ersten Routing-Pfad (220) oder einem zweiten Routing-Pfad (210) in Abhängigkeit von separaten Hashwert-Berechnungen mit dem ersten und dem zweiten Parametersatz verfügt, damit die Datenpakete anschließend in Abhängigkeit von den Ergebnissen einer der separaten Hashwert-Berechnungen über den zwischen dem ersten und dem zweiten Routing-Pfad (220, 210) ausgewählten Routing-Pfad weitergeleitet werden.
  2. Vorrichtung (200) nach Anspruch 1, bei welcher die verwendete Hash-Logik über Mittel zum Zuweisen des Datenpakets zum ersten Routing-Pfad (220), wenn die Ergebnisse der separaten Hashwert-Berechnungen übereinstimmen, und zum Zuweisen des Datenpakets zum zweiten Routing-Pfad (210) verfügt, wenn dies nicht der Fall ist.
  3. Vorrichtung (200) nach Anspruch 1 oder Anspruch 2, welche ferner einen mit der Hash-Logik (240) verbundenen Filter (230) umfasst, um selektiv Datenflüsse, deren Lebensdauer einen vorgegebenen Wert überschreitet, an der Hash-Logik vorbeizuleiten.
  4. Vorrichtung (200) nach Anspruch 1, welche ferner den ersten Routing-Pfad (220) und den zweiten Routing-Pfad (210) umfasst, wobei der erste Routing-Pfad (220) eine mit der Hash-Logik (240) verbundene erste Routing-Logik und der zweite Routing-Pfad (210) eine mit der Hash-Logik (240) verbundene zweite Routing-Logik umfasst, wobei der erste Routing-Pfad (220) schneller als der zweite Routing-Pfad (210) ist und auf dem zweiten Routing-Pfad (210) nachfolgende Objekte ausgehend vom Datenpaketflussstatus ausgewählt werden.
  5. Vorrichtung (200) nach Anspruch 4, bei welcher die erste Routing-Logik mindestens einen Netzprozessor (300) und die zweite Routing-Logik mindestens einen Allzweckprozessor (410) umfasst.
  6. Vorrichtung (200) nach Anspruch 4 oder Anspruch 5, bei welcher die zweite Routing-Logik so konfiguriert ist, dass sie in einem Datenpaketfluss einen Datenflussbegrenzer erkennt und nach Erkennung des Startsignals den betreffenden Datenfluss gemäß der Hash-Funktion mit dem zweiten Parametersatz weiterleitet.
  7. Vorrichtung (200) nach Anspruch 6, bei welcher die zweite Routing-Logik so konfiguriert ist, dass sie Datenpaketflüsse erkennt, die eine vorgegebene Ruhezeit überschreiten, und solche Datenflüsse gemäß der Hash-Funktion mit dem zweiten Parametersatz weiterleitet.
  8. Vorrichtung (200) nach Anspruch 7, bei welcher die zweite Routing-Logik so konfiguriert ist, dass sie Datenpaketflüsse erkennt, die eine vorgegebene Lebensdauer überschreiten, und solche Datenflüsse der ersten Routing-Logik zuweist.
  9. Anwendungsspezifische integrierte Schaltung, welche eine Lastausgleichsvorrichtung (200) nach einem der vorangehenden Ansprüche umfasst.
  10. Netzinfrastrukturknoten, welcher eine Lastausgleichsvorrichtung nach einem der Ansprüche 1 bis 7 umfasst.
  11. Datenübertragungsnetz (140), welches einen Netzinfrastrukturknoten nach Anspruch 10 umfasst.
  12. Verfahren zum Lastausgleich (200) in einem Datenübertragungsnetz (140), wobei das Verfahren Folgendes umfasst: Berechnen einer Hash-Funktion für ankommende Datenpakete; als Reaktion auf eine Auslastung nachfolgender Objekte über einen vorgegebenen Schwellenwert (520) hinaus, Auslösen der Neudefinition von Parametern (530) der Hash-Funktion von einem ersten Parametersatz zu einem zweiten Parametersatz zum Umverteilen der Datenpakete auf die nachfolgenden Objekte; und Zuweisen der an die nachfolgenden Objekte im Netz weiterzuleitenden (540) Datenpakete zu einem ersten Routing-Pfad (220) anhand einer Hashwert-Berechnung mit dem ersten Parametersatz, und wenn der Schwellenwert überschritten wird, selektives Zuweisen der Datenpakete zu einem ersten Routing-Pfad (220) oder einem zweiten Routing-Pfad (210) in Abhängigkeit von separaten Hashwert-Berechnungen mit dem ersten und dem zweiten Parametersatz, damit die Datenpakete anschließend in Abhängigkeit von den Ergebnissen einer der separaten Hashwert-Berechnungen über den zwischen dem ersten und dem zweiten Routing-Pfad (220, 210) ausgewählten Routing-Pfad weitergeleitet werden.
  13. Verfahren nach Anspruch 12, welches das Zuweisen der Datenpakete zum ersten Routing-Pfad (220), wenn die Ergebnisse der separaten Hashwert-Berechnungen übereinstimmen, und das Zuweisen der Datenpakete zum zweiten Routing-Pfad (210) umfasst, wenn dies nicht der Fall ist.
DE60303384T 2002-06-24 2003-06-20 Lastausgleich in datennetzwerken Expired - Lifetime DE60303384T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP02014116 2002-06-24
EP02014116 2002-06-24
PCT/IB2003/002409 WO2004002109A1 (en) 2002-06-24 2003-06-20 Load balancing in data networks

Publications (2)

Publication Number Publication Date
DE60303384D1 DE60303384D1 (de) 2006-04-13
DE60303384T2 true DE60303384T2 (de) 2006-08-17

Family

ID=29797140

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60303384T Expired - Lifetime DE60303384T2 (de) 2002-06-24 2003-06-20 Lastausgleich in datennetzwerken

Country Status (7)

Country Link
US (2) US20060087968A1 (de)
EP (1) EP1516475B1 (de)
JP (1) JP4452176B2 (de)
CN (1) CN100539580C (de)
AU (1) AU2003232413A1 (de)
DE (1) DE60303384T2 (de)
WO (1) WO2004002109A1 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7693050B2 (en) 2005-04-14 2010-04-06 Microsoft Corporation Stateless, affinity-preserving load balancing
US7764612B2 (en) * 2005-06-16 2010-07-27 Acme Packet, Inc. Controlling access to a host processor in a session border controller
GB2429869A (en) * 2005-09-02 2007-03-07 Data Connection Ltd Party identifiers in a multi-telephony service environment
CN100407705C (zh) * 2006-04-12 2008-07-30 华为技术有限公司 一种路由器控制方法和系统
US7684352B2 (en) * 2006-11-02 2010-03-23 Nortel Networks Ltd Distributed storage of routing information in a link state protocol controlled network
US8218553B2 (en) * 2009-02-25 2012-07-10 Juniper Networks, Inc. Load balancing network traffic on a label switched path using resource reservation protocol with traffic engineering
US8259585B1 (en) * 2009-04-17 2012-09-04 Juniper Networks, Inc. Dynamic link load balancing
US20100274893A1 (en) * 2009-04-27 2010-10-28 Sonus Networks, Inc. Methods and apparatus for detecting and limiting focused server overload in a network
US8699343B2 (en) 2009-04-27 2014-04-15 Sonus Networks, Inc. Adaptive rate control based on overload signals
US9705977B2 (en) * 2011-04-20 2017-07-11 Symantec Corporation Load balancing for network devices
US9225651B2 (en) 2011-07-08 2015-12-29 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for load balancing
KR101383905B1 (ko) * 2011-12-19 2014-04-17 주식회사 솔박스 해시 함수 결과를 이용한 서버 부하 분산 처리 방법 및 그 장치
US9923798B1 (en) 2012-06-28 2018-03-20 Juniper Networks, Inc. Dynamic load balancing of network traffic on a multi-path label switched path using resource reservation protocol with traffic engineering
US9331891B2 (en) * 2012-10-11 2016-05-03 International Business Machines Corporation Virtual consolidated appliance
CN106656842A (zh) * 2015-10-29 2017-05-10 华为数字技术(苏州)有限公司 一种负载均衡方法和流量转发设备
US10230621B2 (en) 2017-05-09 2019-03-12 Juniper Networks, Inc. Varying a per-hop-bandwidth constraint in multi-path label switched paths

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6044080A (en) * 1996-11-19 2000-03-28 Pluris, Inc. Scalable parallel packet router
JP3369445B2 (ja) * 1997-09-22 2003-01-20 富士通株式会社 ネットワークサービスサーバ負荷調整装置、方法および記録媒体
GB2349296B (en) * 1999-04-21 2001-04-04 3Com Corp Reduction of imbalance in transmit traffic queues in a network switch
CA2328011A1 (en) * 2000-01-18 2001-07-18 Lucent Technologies Inc. Method and apparatus for load balancing of network services
JP4150159B2 (ja) * 2000-03-01 2008-09-17 富士通株式会社 伝送経路制御装置及び伝送経路制御方法並びに伝送経路制御プログラムを記録した媒体
US6553005B1 (en) * 2000-07-26 2003-04-22 Pluris, Inc. Method and apparatus for load apportionment among physical interfaces in data routers

Also Published As

Publication number Publication date
US20080219258A1 (en) 2008-09-11
CN1659845A (zh) 2005-08-24
US7769025B2 (en) 2010-08-03
WO2004002109A8 (en) 2004-03-18
EP1516475A1 (de) 2005-03-23
WO2004002109A1 (en) 2003-12-31
CN100539580C (zh) 2009-09-09
EP1516475B1 (de) 2006-01-25
JP2005536087A (ja) 2005-11-24
JP4452176B2 (ja) 2010-04-21
AU2003232413A1 (en) 2004-01-06
US20060087968A1 (en) 2006-04-27
DE60303384D1 (de) 2006-04-13

Similar Documents

Publication Publication Date Title
DE60303384T2 (de) Lastausgleich in datennetzwerken
DE60221556T2 (de) Verfahren und system zur zustandslosen lastverteilung für ein server-cluster in einem auf ip basierenden telekommunikationsnetz
DE60302876T2 (de) Master-knotenauswahl in geclusterten knotenkonfigurationen
DE60313037T2 (de) Flusssteuerung in Netzwerkeinheiten
DE102006012614B4 (de) Verfahren und Vorrichtung für den Durchlauf von Paketen durch eine Einrichtung zur Netzwerkadressenübersetzung
DE602005001815T2 (de) Verfahren zur effizienten Mehrfachverbreitung von Inhalten in einem Peer-to-peer Netzwerk
DE60317403T2 (de) Mehrstufige Cache-Speicherarchitektur und Cache-Speicherverwaltungsverfahren für gleichrangiges Namensauflösungs-Protokoll
DE602005002158T2 (de) Lastausgleichtechnik für Verkehrstechnik zwischen Domänen
DE60031776T2 (de) Verfahren und vorrichtung für ein kommunkationsnetz
DE69634928T2 (de) Netzwerkverwaltungssystem mit verbesserter Knotenerkennung und -überwachung
DE60301202T2 (de) Verfahren und vorrichtung zur verkehrssteuerung einer web-farm
DE3780799T2 (de) Anordnung zur ueberlastregelung durch bandbreitenverwaltung fuer paketvermittlungssystem.
DE112010004940B4 (de) Automatisches Erkennen von Adressbereichen für IP-Netzwerke
DE69917308T2 (de) Rechnerkommunikation mit versorgung der dienstqualität
DE602004008550T2 (de) Speichervorrichtung und System zum Bereitstellen einer Reservierungsfunktion für einen Kommunikationspuffer.
DE60114097T2 (de) Verfahren und System zur Verbesserung der Netzleistungsfähigkeit unter Verwendung eines leistungssteigernden Proxies
DE69937241T2 (de) Vorrichtung zur messung der last eines netzwerkservers und berät und verfahren zur zuordnung
DE60216534T2 (de) Vorrichtung und Verfahren zur Bandbreitenverwaltung, dazugehöriges Rechnerprogramm, und Aufzeichnungsmedium, welches das Programm gespeichert hat
DE102006021591B3 (de) Verfahren und Anordnung zur Datenübertragung zwischen Peer-to-Peer-Netzwerken
DE69927457T2 (de) Verfahren und Vorrichtung zur Cache-Speicherung von Informationen im Netzwerk
DE112011103561T5 (de) Netzwerkprozessor und Verfahren zum Beschleunigen der Datenpaket-Syntaxanalyse
DE102017122738A1 (de) Virtueller Router mit dynamischer Flussauslagerungsfähigkeit
DE60100927T2 (de) Verbesserter Internet Protocolpaketrouter
DE10247164B4 (de) Verfahren und Vorrichtung für eine Netzwerkbandbreitenoptimierung
DE202015009244U1 (de) Routing von Datenverkehr innerhalb von und zwischen autonomen Systemen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)