DE60302876T2 - Master-knotenauswahl in geclusterten knotenkonfigurationen - Google Patents

Master-knotenauswahl in geclusterten knotenkonfigurationen Download PDF

Info

Publication number
DE60302876T2
DE60302876T2 DE60302876T DE60302876T DE60302876T2 DE 60302876 T2 DE60302876 T2 DE 60302876T2 DE 60302876 T DE60302876 T DE 60302876T DE 60302876 T DE60302876 T DE 60302876T DE 60302876 T2 DE60302876 T2 DE 60302876T2
Authority
DE
Germany
Prior art keywords
node
pair
group
master
nodes
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
DE60302876T
Other languages
English (en)
Other versions
DE60302876D1 (de
Inventor
Govindaraj Sampathkumar
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 DE60302876D1 publication Critical patent/DE60302876D1/de
Application granted granted Critical
Publication of DE60302876T2 publication Critical patent/DE60302876T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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
    • 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/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Hardware Redundancy (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
  • Control Of Turbines (AREA)
  • Control Of Eletrric Generators (AREA)
  • Image Generation (AREA)
  • Small-Scale Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft allgemein Computernetze und insbesondere den Lastausgleich in Cluster-Netzumgebungen.
  • HINTERGRUND DER ERFINDUNG
  • Wenn Websites im Internet sehr bekannt werden, kann es dazu kommen, dass ein einzelner Server die im System anfallende Last nicht mehr bewältigen kann. Diese Situation kann gelöst werden, indem mehrere Server, die auch als Knoten bezeichnet werden, zu einer Knotengruppe zusammengefasst werden. Gegenüber Clients verhält sich die auch als Lastverteilungsgruppe bezeichnete Knotengruppe immer noch wie ein einzelner Server. Intern wird jedoch die an der Knotengruppe ankommende Last gleichmäßig auf die Mitglieder der Knotengruppe verteilt, damit keiner der einzelnen Knoten überlastet wird.
  • In manchen Netzkonfigurationen werden mehrere Knotengruppen gebildet, um unterschiedliche Systemressourcen zu verwalten. Zum Beispiel kann eine Knotengruppe für das Übertragen von Datendateien zuständig sein, während eine andere Knotengruppe den E-Mail-Dienst einer Website verwaltet. Darüber hinaus können manche Knoten des Netzes zu mehreren Knotengruppen gehören und so einander überlappende Knotengruppen erzeugen. Solche flexiblen Konfigurationen von Knotengruppen weisen zwar den Vorteil auf, dass sie eine sehr effiziente Ressourcenzuordnung ermöglichen, jedoch lassen sie sich mitunter nur schwer verwalten.
  • Ein Netzadministrator konfiguriert üblicherweise mindestens einen Knoten in einer Knotengruppe als Masterknoten, der im Folgenden auch als lb-Knoten bezeichnet wird. Im Allgemeinen übernimmt der Masterknoten die Eigentumsrechte für die Knotengruppe und ist für die Zuordnung der Tasks auf die Mitglieder der Knotengruppe zuständig. Der Masterknoten erledigt somit dieselben Aufgaben wie die anderen Knoten der Knotengruppe und ist zusätzlich noch für die Verteilung der Arbeit auf die Knoten der Knotengruppe zuständig.
  • Im Allgemeinen wählt der Netzadministrator den Masterknoten manuell aus. Obwohl der Netzadministrator der Auswahl eines Masterknotens beliebige Kriterien zugrunde legen kann, werden die Masterknoten normalerweise nach einer möglichst hohen Verfügbarkeit ausgewählt. Eine hohe Verfügbarkeit bezieht sich auf die Fähigkeit eines Knotens, auch beim Auftreten schwerwiegender Störungen im Netz weiterhin ständigen Zugriff auf Netzressourcen zu gewährleisten. Somit steht der Netzadministrator oft vor der Aufgabe, in der Knotengruppe den Knoten mit der höchsten Verfügbarkeit zu finden, um ihn zum Masterknoten der Gruppe zu bestimmen. Die Suche nach den Knoten mit der höchsten Verfügbarkeit in möglicherweise überlappenden Knotengruppen kann ein schwieriges Unterfangen sein und vom Netzadministrator die Anwendung zeitaufwändiger Trial-and-Error-Methoden (Näherungsverfahren) verlangen.
  • Ein anderes Verfahren zur Erhöhung der Verfügbarkeit einer Knotengruppe besteht darin, für die Knotengruppe einen Primär-Masterknoten und einen Sekundär-Masterknoten festzulegen, die auch als primärer lb-Knoten und als sekundärer lb-Knoten bezeichnet werden. Der Primär-Masterknoten nimmt den Lastausgleich für die Knotengruppe vor, während der Sekundär-Masterknoten als Sicherungsmasterknoten dient, der den Lastausgleich übernehmen kann, wenn der Primär-Masterknoten ausfällt.
  • Eine solche Sicherungskonfiguration wird zum Beispiel in der US-Patentschrift 5,774,660 von Brendel et al. gezeigt, in welcher ein Sicherungs-Lastverteiler zur Übernahme der Funktion des Primär-Lastverteilers für den Fall bereitgestellt wird, dass letzterer ausfällt.
  • Die Bildung eines Masterknotenpaares führt zu einer Redundanz der Knotengruppe und erhöht somit ihre Verfügbarkeit.
  • Das Hinzufügen eines Sekundär-Masterknotens verkompliziert jedoch die Situation insofern, als der Netzadministrator jetzt zwei Knoten in der Knotengruppe ermitteln muss, die als lb-Knoten dienen können. Im Allgemeinen müssen auch der Primär- und der Sekundär-lb-Knoten in möglicherweise überlappenden Knotengruppen auf der Basis maximaler Verfügbarkeit ausgewählt werden.
  • ÜBERBLICK ÜBER DIE ERFINDUNG
  • Die vorliegende Erfindung löst die oben genannten Probleme nach dem Stand der Technik, indem sie ein Verfahren zum Auswählen von Masterknoten zur Verfügung stellt, um eine Zielknotengruppe in einem Computernetz zu verwalten, welches mehrere Knoten und Knotengruppen aufweist.
  • Das Verfahren beinhaltet eine Ermittlungsoperation zur Bestimmung eines Hammingabstands von Knotenpaaren im Netz. Jedes Knotenpaar weist zwei Knotenpaarmitglieder auf, wobei mindestens ein Knoten des Knotenpaars zu einer Knotengruppe gehört und der Hammingabstand des Knotenpaars gleich der Anzahl der Knotengruppen ist, an denen die Knoten des Knotenpaars nicht beteiligt sind. Durch eine andere Ermittlungsoperation wird ein Partizipationsindex für Knoten innerhalb des Netzes ermittelt. Der Partizipationsindex ist gleich der Anzahl der Knotengruppen, zu denen der Knoten gehört. Ferner wird auch ein Verfügbarkeitspotenzial für die Knotenpaare ermittelt. Das Verfügbarkeitspotenzial ist gleich der um den Hammingabstand des Knotenpaars verminderten Summe der Partizipationsindizes der Knoten des Knotenpaars. Eine optimale Kombination von Knotenpaaren ergibt sich durch Lokalisierung der Knotenpaarkombination mit dem größtmöglichen Verfügbarkeitspotenzial im Netz. Durch eine Auswahloperation wird aus der optimalen Kombination von Knotenpaaren ein Masterknotenpaar ausgewählt, dessen beide Knoten zur Zielknotengruppe gehören. Wenn es für die Zielknotengruppe kein Masterknotenpaar gibt, wird ein zur Zielknotengruppe gehörender Knoten als Masterknoten für die Zielknotengruppe ausgewählt.
  • Ein weiterer Aspekt der Erfindung ist ein Computerprogrammprodukt nach Anspruch 6, das auf einem physischen Medium gespeichert ist.
  • Noch ein weiterer Aspekt der Erfindung ist ein System nach Anspruch 11 zur Auswahl von Masterknoten, mit dem eine Zielknotengruppe in einem Computernetz, das mehrere Knoten und Knotengruppen umfasst, verwaltet wird.
  • Die obigen sowie weitere Merkmale, Nutzen und Vorteile der Erfindung werden aus der folgenden ausführlichen Beschreibung verschiedener Ausführungsarten der Erfindung unter Bezug auf die beiliegenden Zeichnungen deutlich.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt ein Beispiel für eine Computernetzumgebung zum Realisieren der vorliegenden Erfindung.
  • 2 zeigt ein Computernetz zum Realisieren der vorliegenden Erfindung, das in mehrere Knotengruppen aufgeteilt ist.
  • 3A zeigt den ersten Abschnitt eins Flussdiagramms eines beispielhaften Algorithmus zur Auswahl eines Masterknotens gemäß der vorliegenden Erfindung.
  • 3B zeigt den zweiten Abschnitt eines Flussdiagramms eines beispielhaften Algorithmus zur Auswahl eines Masterknotens gemäß der vorliegenden Erfindung.
  • 4A zeigt eine Matrix einer Knotengruppenkonfiguration.
  • 4B zeigt eine Matrix von Partizipationsindizes.
  • 4C zeigt eine Matrix von Hammingabständen.
  • 4D zeigt eine Matrix von Verfügbarkeitspotenzialen.
  • 4E zeigt eine Matrix bevorzugter Anordnungen.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Die vorliegende Erfindung dient allgemein zur automatischen Auswahl von Masterknoten unter Erreichung einer optimalen Verfügbarkeit der Knotengruppe. Die Erfindung wird im Folgenden unter Bezug auf die 1 bis 4E ausführlich beschrieben. In den Figuren werden gleiche Strukturen und Elemente durchweg mit gleichen Bezugsnummern bezeichnet.
  • 1 zeigt ein Beispiel einer Computernetzumgebung 102, in welcher die vorliegende Erfindung realisiert ist. Der dort dargestellte Client 104 steht über ein Weitverkehrsnetz (Wide Area Network, WAN) 108 mit einer Knotengruppe 106 in Verbindung. Der Kommunikationspfad zwischen dem Client 104 und der Knotengruppe 106 kann verschiedene dem Fachmann bekannte Netzeinheiten enthalten. Zum Beispiel kann ein Router 110 eingesetzt werden, um Nchrichten vom Client 104 zur Knotengruppe 106 gerichtet weiterzuleiten.
  • Die Knotengruppe 106 besteht aus mehreren Knoten 112, welche mindestens eine allgemein verfügbare Netzressource 114, zum Beispiel Daten, gemeinsam nutzen. Ein Knoten in der Knotengruppe 106 wird als Masterknoten 116 ausgewählt, der im Folgenden auch als Primär-lb-Knoten bezeichnet wird. Der Masterknoten 116 überwacht üblicherweise die Verfügbarkeit und die Last jedes Knotens und leitet neue Sitzungsanforderungen von Clients an die Knoten 112 mit freier Verarbeitungskapazität weiter. Auf diese Weise bewirkt der Masterknoten 116 einen Lastausgleich, indem er ankommende Verbindungen und Datenpakete denjenigen Knoten 112 in der Knotengruppe 106 zuteilt, welche die Arbeit übernehmen können.
  • Die Knotengruppe 106 kann auch einen zweiten Masterknoten 118 beinhalten, der im Folgenden als Sekundär-lb-Knoten oder als Sicherungsmasterknoten bezeichnet wird. Der Primär-lb-Knoten 116 und der Sekundär-lb-Knoten 118 werden im vorliegenden Dokument zusammen als Masterknotenpaar oder lb-Knoten bezeichnet. Der erste und der zweite Masterknoten 116 und 118 überwachen ständig gegenseitig ihren Status, was als Überwachungssignal (Heartbeat) bekannt ist, sodass der zweite Masterknoten 118 die Eigentumsrechte der Knotengruppe übernehmen kann, wenn der erste Masterknoten 116 ausfällt. Dadurch wird in das System eine Redundanz eingebracht und die Weiterführung von Clientsitzungen im Falle eines Fehlers in einem der lb-Knoten unterstützt.
  • Bei einer Konfiguration der vorliegenden Erfindung nutzen die lb-Knoten die Software „Network Dispatcher" von IBM als Lastausgleicher im Netz. IBM ist ein eingetragenes Warenzeichen von International Business Machines Corporation. Der Network Dispatcher gewährleistet bei extrem hoher Last eine hohe Verfügbarkeit, indem er viele einzelne Knoten zu einem einzigen logischen Netzserver verknüpft. Darüber hinaus verfolgt der Network Dispatcher die Verfügbarkeit und die Last injedem einzelnen Knoten, sodass der Masterknoten neu ankommende Sitzungsanforderungen an Knoten mit freier Verarbeitungskapazität weiterleiten kann. Ferner ist denkbar, dass die vorliegende Erfindung auch mit anderen Netzlastverteilern, die nach dem Konzept von aktiven Sicherungs-lb-Knoten arbeiten (zum Beispiel dem „Linux Virtual Server"), mit verschiedenen speziell angepassten Lastverteilungseinheiten oder anderen geclusterten Knotenumgebungen verwendet werden kann.
  • 2 zeigt ein Computernetz 201 zum Realisieren der vorliegenden Erfindung, das in mehrere Knotengruppen 106, 202, 204 und 206 aufgeteilt ist. Eine solche Anordnung ist typisch für eine Netzeinheit, die zur Verarbeitung von Netzverkehr mit großen Datenvolumina konfiguriert ist. Die Figur zeigt, dass einige Knoten des Netzes zu zwei oder mehr Knotengruppen gehören und so einander überlappende Knotengruppen bilden. Somit ermöglicht die vorliegende Erfindung das beliebige Zusammenfassen von Knoten zu Knotengruppen, natürlich unter der Voraussetzung, dass jeder Knoten in der Knotengruppe auf die Netzressourcen zugreifen kann, mit denen seine Knotengruppe zusammenarbeitet.
  • Im Folgenden wird als eine Ausführungsart der vorliegenden Erfindung ein System ausführlich beschrieben, das zur automatischen Auswahl von lb-Knoten für die Verwaltung von Knotengruppen in einem Computernetz dient. Die lb-Knoten werden so ausgewählt, dass die Verfügbarkeit des Netzes und die Fortsetzung von Sitzungen im Falle eines Fehlers in einem lb-Knoten optimiert werden. Dadurch befreit die Erfindung den Netzadministrator auf vorteilhafte Weise von der Notwendigkeit, den besten Masterknoten zur Verwaltung jeder Knotengruppe im Netz zu ermitteln.
  • Allgemein ist die optimale Einsätzstrategie für lb-Knoten wie folgt definiert: Bei einem gegebenen Satz von Knoten N = {N1, N2, ...Nn} und einem gegebenen Satz einander möglicherweise überlappender Knotengruppierungen in den Gruppen G1, G2, ... Gm, mit Gi = {Np, Nq, ...} , wobei Np, Nq, ... zum Satz N gehören, soll für jede Knotengruppe Gi ein Masterknotenpaar ausgewählt werden, unter der Bedingung, dass:
    • 1. ein Knoten des Masterknotenpaars zum Primär-Masterknoten (Primär-lb-Knoten) und der andere Knoten des Masterknotenpaars zum Sicherheitsmasterknoten (Sekundär-lb-Knoten) bestimmt wird; und
    • 2. wenn zwei Knoten Np und Nq als Masterknoten der Gruppe G; gewählt werden, weder der Knoten Np noch der Knoten Nq als Masterknoten einer anderen Knotengruppe Gj mit einem dritten Knoten Nr in Frage kommen.
  • Wenn die maximal mögliche Anzahl von Gruppen im Netz Masterknoten enthält, welche den oben genannten Bedingungen genügen, liegt eine optimale Einsatzstrategie vor. Darüber hinaus bieten die Gruppen, welche den oben genannten Bedingungen genügen, eine hohe Verfügbarkeit. Dabei ist zu beachten, dass bei manchen Netzkonfigurationen möglicherweise nicht für jede Gruppe eine hohe Verfügbarkeit erreicht werden kann. Für die Gruppen, welche keine hohe Verfügbarkeit erreichen können, wählt der Auswahlalgorithmus der vorliegenden Erfindung ein Mitglied der Knotengruppe als Masterknoten aus.
  • Bei einer Ausführungsart der Erfindung erfüllt der Algorithmus auch noch die folgende schwache Bedingung: die Masterknoten-Funktionen für die Gruppen G1, G2, ... Gm werden so gleichmäßig wie möglich auf die Knoten im Satz N verteilt. Mit anderen Worten, wenn es m Gruppen und n > m Knoten gibt und die Konfiguration dies zulässt, fungiert keiner der n Knoten als Masterknoten für zwei verschiedene Gruppen. Eine solche Einsatzstrategie ist wünschenswert, da hierdurch die Eingangspunkte im Netz auf die verschiedenen Knoten des Systems verteilt, die verfügbare Eingangsbandbreite erhöht und der Datenverkehr zur Lastverteilung auf die Knoten verteilt wird.
  • Die 3A und 3B zeigen ein Flussdiagramm eines beispielhaften Algorithmus zur Auswahl von Masterknoten gemäß der vorliegenden Erfindung. In der ersten Phase des in 3A gezeigten Algorithmus werden die Knoten ausgehend von Informationen über die Netzkonfiguration optimal gepaart. In der in 3B gezeigten zweiten Phase des Algorithmus wird für jede Knotengruppe ein Masterknoten ausgewählt. Hierzu ist anzumerken, dass die logischen Operationen des Algorithmus 1.) als eine Folge von durch einen Computer in einem Computersystem ausgeführten Schritten und/oder 2.) durch miteinander verknüpfte Maschinenmodule im Computersystem implementiert werden können. Die Wahl der Implementierungsform hängt von den Leistungsanforderungen des Systems ab, in welchem die Erfindung implementiert wird. Demzufolge werden die logischen Operationen der hier beschriebenen Ausführungsarten der vorliegenden Erfindung alternativ als Operationen, als Schritte oder als Module bezeichnet.
  • Der erste Schritt des Algorithmus, Schritt 302, ist die Ermittlung des Hammingabstands. In diesem Schritt wird der Hammingabstand (d) für jedes Knotenpaar berechnet. Der Hammingabstand für jedes Knotenpaar im Netz ist definiert als die Anzahl von Knotengruppen, an denen die Knoten des Knotenpaars nicht beteiligt sind. Beispielsweise weist das Knotenpaar (n5, n6) in 2 einen Hammingabstand von 0 auf, da der Knoten n5 und der Knoten n6 zu denselben Knotengruppen gehören. Das Knotenpaar (n5, n10) hingegen weist einen Hammingabstand von 2 auf, da der Knoten n10 zu zwei Knotengruppen gehört, zu welchen der Knoten n5 nicht gehört. Nach der Ermittlung des Hammingabstands für jedes Knotenpaar geht der Prozess in 3A weißer zu Schritt 304, in welchem der Partizipationsindex ermittelt wird.
  • In Schritt 304 wird der Partizipationsindex (pi) für jeden Knoten im Netz berechnet. Der Partizipationsindex (pi) jedes Knotens wird durch Berechnung der Anzahl der Knotengruppen ermittelt, zu welchen der Knoten gehört. Beispielsweise weist der Knoten n7 in 2 einen Partizipationsindex von 2 auf, da er zu den Knotengruppen LBG-B und LBG-D gehört. Nach der Ermittlung des Partizipationsindexes geht der Prozess weiter zu Schritt 306, in welchem das Verfügbarkeitspotenzial ermittelt wird.
  • In Schritt 306 wird das Verfügbarkeitspotenzial (P) für jedes Knotenpaar berechnet. Das Verfügbarkeitspotenzial (P) eines Knotenpaars ist definiert als Summe der um den Hammingabstand (d) des Knotenpaars verminderten Partizipationsindizes (pi) des Knotenpaars. Da die Summe der Partizipationsindizes (pi) der Knotenpaarmitglieder die Gesamtzahl der Knotengruppen liefert, zu denen das Knotenpaar gehört, und der Hammingabstand (d) die Anzahl der Knotengruppen liefert, an denen die Knotenpaarmitglieder nicht beteiligt sind, zeigt das Verfügbarkeitspotenzial (P) eines Knotenpaars somit die Anzahl möglicher Knotengruppen an, denen das Knotenpaar eine hohe Verfügbarkeit zur Verfügung stellen kann. Wenn also pi(np) der Partizipationsindex des Knotens np, pi(nq) der Partizipationsindex des Knotens nq und d(np, nq) der Hammingabstand des Knotenpaars (np, nq) ist, dann ist (pi(np) + pi(nq) – d(np, nq))/2 gleich der Anzahl möglicher Knotengruppen, für welche das Knotenpaar (np, nq) als Masterknoten in Frage kommt. Nach der Ermittlung des Verfügbarkeitspotenzials in Schritt 306 geht der Prozess weiter zur Suchoperation 308.
  • In der Suchoperation 308 wird eine optimale Kombination von Knotenpaaren für das Netz ermittelt. Die Kombination von Knotenpaaren ist dann optimal, wenn das größtmögliche Verfügbarkeitspotenzial (P) für das gesamte Netz erreicht wird. Mit anderen Worten, die optimale Knotenpaarung ist dann erreicht, wenn die Summe Σ(pi – d) über alle Knotenpaare einen Maximalwert aufweist. Unter optimal ist zu verstehen, dass die Kombination der erzeugten Knotenpaare vielleicht nicht unbedingt die einzige bestmögliche Einsatzstrategie darstellt, für eine bestimmte Konfiguration jedoch keine bessere als die vom Algorithmus erzeugte Einsatzstrategie gefunden werden kann.
  • Bei einer Ausführungsart der Erfindung wird die optimale Kombination von Knotenpaaren durch iterative Suche nach dem größtmöglichen Gesamtverfügbarkeitspotenzial in einer geordneten Matrix der Verfügbarkeitspotenziale von Knotenpaaren ermittelt. Beginnend mit dem obersten Element (dem Element mit dem größten Potenzialwert) in der Matrix werden alle Knotenpaare jeweils mit ihrem Verfügbarkeitspotenzial in die Matrix eingetragen. Nachdem alle Knoten erfasst worden sind, wird das Gesamtverfügbarkeitspotenzial mit dem zuvor berechneten Gesamtverfügbarkeitspotenzial verglichen. Wenn der Wert des neuen Gesamtverfügbarkeitspotenzials größer ist, wird die betreffende Kombination von Knotenpaaren als optimale Paarung gespeichert und mit der nächsten Kombination von Knotenpaaren verglichen. Der Prozess wird so lange wiederholt, bis das Verfügbarkeitspotenzial des optimalen Paars größer ist als das größte betrachtete Knotenpaarpotenzial, mit der Gesamtknotenzahl multipliziert. Der Pseudo-Programmcode zur Ermittlung der optimalen Kombination von Knotenpaaren kann beispielsweise wie folgt aussehen:
  • Figure 00120001
  • Die 4A bis 4D zeigen zur besseren Veranschaulichung des obigen Prozesses beispielhafte Datenstrukturen, die vom Algorithmus zur Auswahl von Masterknoten verwendet werden. Gemäß der vorliegenden Erfindung können für die im Folgenden beschriebenen Datenstrukturen beliebige Medien verwendet werden, auf die der Auswahlalgorithmus zugreifen kann. Bei einer bestimmten Ausführungsart der Erfindung werden die Datenstrukturen als computerlesbare Medien realisiert. Beispielsweise, aber nicht ausschließlich, können computerlesbare Medien Computerspermedien und Kommunikationsmedien umfassen. Als Computerspeichermedien kommen flüchtige und nicht flüchtige, wechselbare und fest installierte Medien in Frage, die durch beliebige Verfahren oder Technologien zur Informationsspeicherung implementiert werden, zum Beispiel computerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten. Computerspeichermedien sind beispielsweise (aber nicht ausschließlich) Speicherarten wie RAM, ROM, EEPROM und Flash-Speicher, optische Speicher wie CD-ROM und DVD, Magnetspeichereinheiten wie Magnetbandkassetten, Magnetbänder und Magnetplattenspeicher oder beliebige andere Medien, die zur Speicherung der gewünschten Informationen geeignet sind und auf die der Auswahlalgorithmus zugreifen kann. Kommunikationsmedien realisieren üblicherweise computerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten als modulierte Datensignale, die sich durch das Modulieren einer Trägerfrequenz oder die Verwendung eines anderen Transportmechanismus ergeben, und beinhalten jegliche Art von Medien zur Informationsbereitstellung. Unter dem Begriff „moduliertes Datensignal" ist ein Signal zu verstehen, bei dem eine oder mehrere Eigenschaften in bestimmter Weise eingestellt oder verändert wurden, um Informationen in das Signal zu codieren. Als Kommunikationsmedien kommen zum Beispiel leitungsgebundene Medien wie Leitungsnetze oder direkt verdrahtete Verbindungen sowie drahtlose Medien wie beispielsweise akustische, HF-, Infrarot-Medien in Frage. Der Begriff „computerlesbare Medien" umfasst auch beliebige Kombinationen der oben genannten Medien.
  • 4A zeigt die Matrix 402 einer Konfiguration von Knotengruppen. In der Matrix 402 vom Typ (m, n) für die Konfiguration der Knotengruppen sind die Beziehungen zwischen jedem Knoten und jeder Knotengruppe im Netz gespeichert, wobei m die Anzahl der Knotengruppen im Netz und n die Anzahl der Knoten im Netz ist. Bei einer bestimmten Ausführungsart der Erfindung beschreibt jede Spalte in der Knotengruppenkonfigurationsmatrix 402 einen Netzknoten und jede Zeile eine Knotengruppe des Netzes. Eine „1" oder ein Booleschier Wert „wahr" in einer Matrixzelle besagt, dass der entsprechende Knoten zu der jeweiligen Knotengruppe gehört, während eine „0" oder ein Boolescher Wert „falsch" besagt, dass der Knoten nicht zu dieser Knotengruppe gehört. Beispielsweise gehört der Knoten n1 zu den Knotengruppen LBG-A, LBG-C und LBG-D, nicht aber zu den Knotengruppen LBG-B und LBG-E.
  • 4B zeigt eine Matrix 404 der Partizipationsindizes. Die Partizipationsindex-Matrix 404 ist eine Matrix vom Typ (1, n), in welcher der Partizipationsindex (pi) jedes Knotens gespeichert ist. Gemäß der obigen Beschreibung gibt der Partizipationsindex (pi) die Anzahl der Knotengruppen wieder, zu denen ein Knoten gehört. Somit enthält jede Matrixzelle in der Partizipationsindex-Matrix 404 die Anzahl Einsen in jeder Spalte, die jeweils einem Knoten in der Knotengruppenkonfigurationsmatrix 402 entspricht.
  • 4C zeigt eine Matrix 406 für die Hammingabstände. Die Matrix 406 für die Hammingabstände ist eine Matrix vorn Typ (n, n), in welcher für jedes Knotenpaar der Hammingabstand (d) gespeichert ist. Gemäß der obigen Erörterung gibt der Hammingabstand für ein Knotenpaar die Anzahl der Knotengruppen wieder, an denen die Knoten der Knotengruppe nicht beteiligt sind. Bei einer Ausführungsart der Erfindung wird der Hammingabstand durch Ausführen einer XOR-Operation (exklusives ODER) zwischen zwei Spalten der Matrix 402 für die Konfiguration der Knotengruppen und Addieren der Anzahl Einsen in diesem Ergebnis berechnet. Zum Beispiel liefert eine XOR-Operation zwischen den Spalten n1 und n2 in der Matrix 402 für die Konfiguration der Knotengruppen das Ergebnis „11010". Durch Addition der Einsen in diesem Ergebnis erhält man einen Hammingabstand (d) von 3.
  • 4D zeigt eine Matrix 408 des Verfügbarkeitspotenzials. Die Verfügbarkeitspotenzial-Matrix 408 ist eine Matrix vom Typ (n, n), in welcher für jedes Knotenpaar das Verfügbarkeitspotenzial (P) gespeichert ist. Gemäß der obigen Erörterung wird das Verfügbarkeitspotenzial für ein Knotenpaar durch Addieren der Partizipationsindizes der einzelnen Knoten des Knotenpaars und Subtrahieren des Hammingabstands des Knotenpaars von diesem Ergebnis berechnet. Somit ist das Verfügbarkeitspotenzial für das Knotenpaar (n3, n5) gleich pi(n3) + pi(n5) – d(n3, n5) oder gleich 4 + 4 – 2.
  • Die Verfügbarkeitspotenzial-Matrix 408 dient zur Ermittlung der optimalen Kombination von Knotenpaaren im Netz. Gemäß der obigen Erörterung gilt als optimale Kombination von Knotenpaaren die Knotenpaarkombination mit dem größtmöglichen Verfügbarkeitspotenzial (P). Wie oben ausgeführt, müssen die Knotenpaare der Bedingung genügen, dass, wenn zwei Knoten Np, Nq eines Knotenpaars zu Masterknoten einer Knotengruppe Gi bestimmt werden, weder Np noch Nq als Masterknoten einer anderen Knotengruppe Gj mit einem dritten Knoten Nr fungieren kann. Auf der Suche nach Knotenpaarkombinationen mit maximalem Gesamtverfügbarkeitspotenzial (P) erhält man die optimale Knotenpaarkombination (n3, n4) und (n1, n5) mit einem Gesamtverfügbarkeitspotenzial (P) von 12. Dies ist der größtmögliche Wert für das Verfügbarkeitspotenzial (P) des Netzes und entspricht somit der optimalen Kombination von Knotenpaaren. Bei einer Ausführungsart der vorliegenden Erfindung wird die optimale Kombination von Knotenpaaren in einem Computerspeicher gespeichert.
  • Nachdem im Flussdiagramm der 3A die optimale Kombination von Knotenpaaren gefunden wurde, geht der Masterknotenauswahl-Algorithmus weiter zur Auswahloperation 310 in 3B. Während der Auswahloperation 310 wird jeder Knotengruppe ein Knotenpaar als Masterknotenpaar dieser Knotengruppe zugewiesen. Das ausgewählte Knotenpaar muss zu der optimalen Kombination von Knotenpaaren und jeder Knoten dieses Knotenpaars zu der Knotengruppe gehören. Somit muss das Masterknotenpaar für eine bestimmte Zielknotengruppe aus der optimalen Kombination von Knotenpaaren ausgewählt werden und jeder Knoten des Knotenpaars zur Zielknotengruppe gehören.
  • Anhand der Knotengruppenkonfigurationsmatrix 402 von 4A wurde beispielsweise berechnet, dass die Konfiguration (n3, n4) und (n1, n5) für diese Netzkonfiguration die optimale Kombination von Knotenpaaren darstellt. Das einzige Knotenpaar aus der optimalen Kombination von Knotenpaaren, dessen beide Knoten zur Knotengruppe LBG-B gehören, ist das Knotenpaar (n3, n4). Deshalb wird das Knotenpaar (n3, n4) zum Masterknotenpaar der Knotengruppe LBG-B bestimmt. Desgleichen wird das Knotenpaar (n3, n4) zum Masterknotenpaar der Knotengruppen LBG-C und LBG-E bestimmt. Ferner ist das einzige Knotenpaar aus der optimalen Kombination von Knotenpaaren, dessen beide Knoten zur Knotengruppe LBG-D gehören, das Knotenpaar (n1, n5). Somit wird das Knotenpaar (n1, n5) zum Masterknotenpaar der Knotengruppe LBG-D bestimmt. Schließlich können die beiden Knotenpaare (n1, n5) und (n3, n4) zu Masterknotenpaaren der Knotengruppe LBG-A bestimmt werden, da die Knoten beider Knotenpaare zur Knotengruppe LBG-A gehören. Im Folgenden wird bei einer Ausführungsart der Erfindung erörtert, dass zur Auswahl eines Masterknotenpaars aus zwei oder mehr in Frage kommenden Knotenpaaren eine bevorzugte Auswahlreihenfolge eingehalten wird.
  • Nach Beendigung der Auswahloperation 310 in 3B geht der Prozess weiter zur Abfrageoperation 312. In der Abfrageoperation 312 prüft der Algorithmus, ob es noch Knotengruppen gibt, denen kein Masterknotenpaar zugewiesen wurde. Einer Zielknotengruppe ist möglicherweise kein Masterknotenpaar zugewiesen worden, wenn es in der optimalen Kombination von Knotenpaaren keine Knotenpaare gibt, deren beide Knoten zur Zielknotengruppe gehören. Wenn das Ergebnis der Abfrageoperation 312 lautet, dass allen Knotengruppen Masterknotenpaare zugewiesen wurden, endet der Algorithmus. Wenn das Ergebnis der Abfrageoperation 312 jedoch lautet, dass es eine oder mehrere Knotengruppen gibt, denen kein Masterknotenpaar zugewiesen wurde, geht der Prozess weiter zur Auswahloperation 314.
  • Während der Auswahloperation 314 wird jeder Knotengruppe, der noch kein Masterknotenpaar zugewiesen wurde, ein Masterknoten zugewiesen. Der hierfür ausgewählte Masterknoten braucht nicht notwendigerweise zur optimalen Kombination von Knotenpaaren zu gehören; allerdings muss der Masterknoten zur Zielknotengruppe gehören. Wenn die Zielknotengruppe mehr als einen Knoten enthält, kann einer dieser Knoten als Masterknoten fungieren. Im Folgenden wird erörtert, dass bei einer Ausführungsart der Erfindung bei der Auswahl eines Masterknotens aus den zur Zielknotengruppe gehörenden Knoten eine bevorzugte Auswahlreihenfolge eingehalten wird. Nachdem jeder Knotengruppe ohne Masterknotenpaar ein Masterknoten zugewiesen wurde, endet der Algorithmus.
  • Wie oben bereits erwähnt, wird bei einer Ausführungsart der vorliegenden Erfindung bei der Auswahl der Masterknotenpaare eine bevorzugte Reihenfolge eingehalten. Wenn mehr als ein Knotenpaar zur Verfügung steht, das als Masterknotenpaar für eine Knotengruppe in Frage kommt, wird als Masterknotenpaar das Knotenpaar mit dem kleinsten Partizipationsindex (pi) ausgewählt. Zum Beispiel wurde in den 4A bis 4D ermittelt, dass (n3, n4) und (n1, n5) die optimale Kombination der Knotenpaare für die Netzkonfiguration ist. Es wurde auch ermittelt, dass die beiden Knotenpaare (n3, n4) und (n1, n5) als Masterknotenpaare für die Knotengruppe LBG-A dienen können. Der Partizipationsindex (pi) des Knotenpaars (n3, n4), d. h. pi(n3) + pi(n4), hat den Wert B. Der Partizipationsindex (pi) des Knotenpaars (n1, n5) hingegen hat den Wert 7. Deshalb wird das Knotenpaar (n1, n5) zum Masterknotenpaar der Knotengruppe LBG-A bestimmt, da es einen kleineren Partizipationsindex (pi) als das Knotenpaar (n3, n4) hat.
  • 4E zeigt eine Matrix 410 der bevorzugten Reihenfolge. Die Matrix 410 der bevorzugten Reihenfolge ist im Computerspeicher gespeichert und enthält für jede Knotengruppe im Computernetz die Rangfolge der Masterknoten. Zum Beispiel ist die bevorzugte Reihenfolge der Masterknoten für die Knotengruppe LBG-A: zuerst Knotenpaar (n1, n5), dann Knotenpaar (n3, n4). Daher kann bei einem Fehler im Knotenpaar (n1, n5) über die Matrix 410 der bevorzugten Reihenfolge rasch das Knotenpaar (n3, n4) ausgewählt und zum neuen Masterknotenpaar der Knotengruppe LBG-A bestimmt werden.
  • Anhand des Partizipationsindexes (pi) kann nicht nur für die Masterknotenpaare, sondern auch für die Masterknoten eine bevorzugte Reihenfolge ermittelt werden. Es wurde erwähnt, dass, wenn kein Knotenpaar als Masterknotenpaar für eine Zielknotengruppe in Frage kommt, jeder zur Zielknotengruppe gehörende Knoten als Masterknoten dienen kann. Kommt für den Masterknoten einer Knotengruppe mehr als ein Knoten in Betracht, wird als Masterknoten der Knoten mit dem kleinsten Partizipationsindex (pi) ausgewählt.
  • Gemäß 4E ist die bevorzugte Reihenfolge für die Knotengruppe LBG-B in der Matrix 410 der bevorzugten Reihenfolge: zuerst Knotenpaar (n3, n4), dann Knoten n2 und zum Schluss Knoten n5. Wenn es also im Masterknotenpaar (n3, n4) zu einem Fehler kommt, wird als nächster Masterknoten für die Knotengruppe LBG-B der Knoten n2 ausgewählt. Falls auch dieser Masterknoten n2 ausfällt, wird als nächster Masterknoten für die Knotengruppe LBG-B der Knoten n5 ausgewählt. Dabei ist zu beachten, dass die Matrix 410 der bevorzugten Reihenfolge auch zur Auswahl von Masterknoten herangezogen werden kann, wenn Knoten wieder in den Online-Zustand gehen. Wenn beispielsweise der Knoten n5 der Masterknoten der Knotengruppe LBG-B ist und das Knotenpaar (n3, n4) wieder in den Online-Zustand geht, kann mit Hilfe der Matrix 410 der bevorzugten Reihenfolge das Knotenpaar (n3, n4) rasch zum neuen Masterknotenpaar für die Knotengruppe LBG-B bestimmt werden.
  • Bei einer anderen Ausführungsart der Erfindung wird die optimale Kombination von Knotenpaaren – statt durch Ermittlung des größtmöglichen Gesamtverfügbarkeitspotenzials – durch Ermittlung des kleinstmöglichen Gesamt-Hammingabstands für das Netz gefunden. Diese Ausführungsart beinhaltet somit eine Ermittlungsoperation zur Bestimmung eines Hammingabstands für Knotenpaare im Netz. Im nächsten Schritt wird nach der Kombination von Knotenpaaren mit dem kleinstmöglichen Gesamt-Hammingabstand für das Netz gesucht und so die optimale Kombination von Knotenpaaren ermittelt. In einer Auswahloperation wird aus der optimalen Kombination von Knotenpaaren ein Masterknotenpaar ausgewählt, dessen beide Knoten zur Zielknotengruppe gehören. Wenn es für die Zielknotengruppe kein Masterknotenpaar gibt, wird als Masterknoten für die Zielknotengruppe ein Knoten ausgewählt, der zur Zielknotengruppe gehört.
  • Die vorangehende Beschreibung der Erfindung dient der Veranschaulichung und Erläuterung. Die obigen Darlegungen können auf beliebige geclusterte Knotengruppen angewendet werden, wobei die Masterknoten so aus einer Gruppe von einander überlappenden Knotengruppen ausgewählt werden müssen, dass 1) die Knoten der Masterknoten jeweils zu der Knotengruppe gehören, deren Masterknoten sie sind, und 2) die Masterknoten bestimmte Statusinformationen (zum Beispiel Überwachungssignale) über die Gruppe widerspiegeln. Somit ist die obige Beschreibung nicht als umfassend oder als Beschränkung der Erfindung auf genau die dargelegte Ausführungsform anzusehen – die Erfindung schließt auch Modifikationen und Varianten ein.

Claims (11)

  1. Verfahren zum Auswählen von Masterknoten zur Verwaltung einer Zielknotengruppe in einem Computernetz mit mehreren Knoten und Knotengruppen, wobei das Verfahren Folgendes umfasst: Ermitteln eines Hammingabstands für Knotenpaare im Netz, wobei jedes der Knotenpaare zwei Knoten aufweist, mindestens ein Knoten des Knotenpaars zu einer Knotengruppe gehört und der Hammingabstand gleich der Anzahl der Knotengruppen ist, an denen die Knoten des Knotenpaars nicht beteiligt sind; Ermitteln eines Partizipationsindexes für Knoten im Netz, wobei der Partizipationsindex gleich der Anzahl der Knotengruppen ist, zu denen ein Knoten gehört; Ermitteln eines Verfügbarkeitspotenzials für jedes der Knotenpaare, wobei das Verfügbarkeitspotenzial gleich der um den Hammingabstand des Knotenpaars verminderten Summe der Partizipationsindizes der Knoten des Knotenpaars ist; Ermitteln einer optimalen Kombination von Knotenpaaren, wobei eine Kombination von Knotenpaaren dann optimal ist, wenn sie ein größtmögliches Gesamtverfügbarkeitspotenzial für das Netz aufweist; Auswählen eines Masterknotenpaars für die Zielknotengruppe, wobei das Masterknotenpaar dasjenige Knotenpaar aus der optimalen Kombination von Knotenpaaren ist, dessen beide Knoten zur Zielknotengruppe gehören; und wenn es kein Masterknotenpaar für die Zielknotengruppe gibt, Auswählen eines Knotens, der zur Zielknotengruppe gehört, als Masterknoten für die Zielknotengruppe.
  2. Verfahren nach Anspruch 1, bei welchem keiner der Knoten des für die Zielknotengruppe ausgewählten Masterknotenpaars als Masterknoten für eine andere Knotengruppe mit einem dritten Knoten fungiert.
  3. Verfahren nach Anspruch 1, bei welchem das Auswählen eines Masterknotenpaars für die Zielknotengruppe ferner Folgendes beinhaltet: Auswählen des Knotenpaars mit der kleinsten Summe der Partizipationsindizes der Knoten dieses Knotenpaars, wenn die optimale Kombination von Knotenpaaren mehr als ein Knotenpaar enthält, dessen beide Knoten zur Zielknotengruppe gehören.
  4. Verfahren nach Anspruch 1, bei welchem das Auswählen eines Masterknotens für die Zielknotengruppe ferner das Auswählen des Knotens mit dem kleinsten Partizipationsindex beinhaltet, wenn mehr als ein Knoten zur Zielknotengruppe gehört.
  5. Verfahren nach Anspruch 1, bei welchem das Ermitteln eines Hammingabstands für Knotenpaare im Netz das Ausführen einer XOR-Operation mit den Knoten des Knotenpaars beinhaltet.
  6. Computerprogrammprodukt, welches auf einem physischen Medium gespeichert ist und Folgendes umfasst: mit dem physischen Medium verbundene computerlesbare Programmcodes zum Auswählen von Masterknoten zur Verwaltung einer Zielknotengruppe in einem Computernetz mit mehreren Knoten und Knotengruppen, wobei die computerlesbaren Programmcodes Folgendes umfassen: einen ersten computerlesbaren Programmcode, der so konfiguriert ist, dass er das Programm veranlasst, einen Hammingabstand von Knotenpaaren im Netz zu ermitteln, wobei jedes der Knotenpare zwei Knoten aufweist, mindestens ein Knoten des Knotenpaars zu einer Knotengruppe gehört und der Hammingabstand gleich der Anzahl der Knotengruppen ist, an denen die Knoten des Knotenpaars nicht beteiligt sind; einen zweiten computerlesbaren Programmcode, der so konfiguriert ist, dass er das Programm veranlasst, einen Partizipationsindex für Knoten im Netz zu ermitteln, wobei der Partizipationsindex gleich der Anzahl der Knotengruppen ist, zu denen ein Knoten gehört; einen dritten computerlesbaren Programmcode, der so konfiguriert ist, dass er das Programm veranlasst, ein Verfügbarkeitspotenzial für jedes Knotenpaar zu ermitteln, wobei das Verfügbarkeitspotenzial gleich der um den Hammingabstand des Knotenpaars verminderten Summe der Partizipationsindizes der Knoten eines Knotenpaars ist; einen vierten computerlesbaren Programmcode, der so konfiguriert ist, dass er das Programm veranlasst, eine optimale Kombination von Knotenpaaren zu finden, wobei die optimale Kombination von Knotenpaaren das größtmögliche Gesamtverfügbarkeitspotenzial für das Netz aufweist; und einen fünften computerlesbaren Programmcode, der so konfiguriert ist, dass er das Programm veranlasst, ein Masterknotenpaar für die Zielknotengruppe auszuwählen, wobei das Masterknotenpaar dasjenige Knotenpaar aus der optimalen Kombination von Knotenpaaren ist, dessen beide Knoten zur Zielknotengruppe gehören; und einen sechsten computerlesbaren Programmcode, der so konfiguriert ist, dass er, wenn es für die Zielknotengruppe kein Masterknotenpaar, das Programm veranlasst, einen Masterknoten für die Zielknotengruppe auszuwählen, wobei der Masterknoten ein Knoten ist, der zur Zielknotengruppe gehört.
  7. Computerprogrammprodukt nach Anspruch 6, wobei das physische Medium eine Magnetspeicherplatte umfasst.
  8. Computerprogrammprodukt nach Anspruch 6, wobei das physische Medium eine optische Speicherplatte umfasst.
  9. Computerprogrammprodukt nach Anspruch 6, wobei das physische Medium ein sich fortpflanzendes Signal umfasst.
  10. Computerprogrammprodukt nach Anspruch 6, wobei das physische Medium einen Arbeitsspeicher umfasst.
  11. System zum Auswählen von Masterknoten zur Verwaltung einer Zielknotengruppe in einem Computernetz mit mehreren Knoten und Knotengruppen, wobei das System Mittel zum Ausführen aller Schritte des Verfahrens nach einem der Ansprüche 1 bis 5 umfasst.
DE60302876T 2002-01-18 2003-01-07 Master-knotenauswahl in geclusterten knotenkonfigurationen Expired - Lifetime DE60302876T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/052,551 US6950855B2 (en) 2002-01-18 2002-01-18 Master node selection in clustered node configurations
US52551 2002-01-18
PCT/EP2003/001209 WO2003061237A2 (en) 2002-01-18 2003-01-07 Master node selection in clustered node configurations

Publications (2)

Publication Number Publication Date
DE60302876D1 DE60302876D1 (de) 2006-01-26
DE60302876T2 true DE60302876T2 (de) 2006-07-20

Family

ID=21978344

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60302876T Expired - Lifetime DE60302876T2 (de) 2002-01-18 2003-01-07 Master-knotenauswahl in geclusterten knotenkonfigurationen

Country Status (11)

Country Link
US (1) US6950855B2 (de)
EP (1) EP1477008B1 (de)
JP (1) JP3809872B2 (de)
KR (1) KR100537581B1 (de)
CN (1) CN100452794C (de)
AT (1) ATE313906T1 (de)
AU (1) AU2003235606A1 (de)
CA (1) CA2456836A1 (de)
DE (1) DE60302876T2 (de)
TW (1) TWI229990B (de)
WO (1) WO2003061237A2 (de)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3693896B2 (ja) * 2000-07-28 2005-09-14 三菱電機株式会社 通信方法および通信システム
US7376743B1 (en) * 2002-04-02 2008-05-20 Cisco Technology, Inc. Method and apparatus for load balancing in a virtual private network
US20040006622A1 (en) * 2002-07-03 2004-01-08 Burkes Don L. Optimized process for balancing load for data mirroring
US7519008B2 (en) * 2003-06-05 2009-04-14 International Business Machines Corporation Ineligible group member status
JP4088246B2 (ja) * 2003-12-05 2008-05-21 富士通株式会社 リングネットワークのマスタ設定方法及び装置
US7751327B2 (en) * 2004-02-25 2010-07-06 Nec Corporation Communication processing system, packet processing load balancing device and packet processing load balancing method therefor
WO2005086756A2 (en) * 2004-03-09 2005-09-22 Scaleout Software, Inc. Scalable, software based quorum architecture
CN100362801C (zh) * 2004-05-26 2008-01-16 华为技术有限公司 一种仲裁主对象的方法
US10862994B1 (en) 2006-11-15 2020-12-08 Conviva Inc. Facilitating client decisions
DE102004046858B4 (de) * 2004-09-27 2007-03-15 Siemens Ag Verfahren zur Bestimmung eines leitenden Teilnehmers in einem Netzwerk
CN100420251C (zh) * 2005-02-01 2008-09-17 北京北方烽火科技有限公司 一种集群中主控节点自适应选举算法
US8135806B2 (en) * 2005-05-06 2012-03-13 Broadcom Corporation Virtual system configuration
CN100479415C (zh) * 2005-06-06 2009-04-15 腾讯科技(深圳)有限公司 一种实现数据通讯的系统及其方法
US7969919B1 (en) * 2005-08-08 2011-06-28 Rockwell Collins, Inc. System and method for thermal load sharing between nodes in a communications network
US7631050B2 (en) * 2005-10-27 2009-12-08 International Business Machines Corporation Method for confirming identity of a master node selected to control I/O fabric configuration in a multi-host environment
US20070157016A1 (en) * 2005-12-29 2007-07-05 Dayan Richard A Apparatus, system, and method for autonomously preserving high-availability network boot services
US7735494B2 (en) * 2006-03-03 2010-06-15 Xerosmoke, Llc Tabacco smoking apparatus
US20080052455A1 (en) * 2006-08-28 2008-02-28 Dell Products L.P. Method and System for Mapping Disk Drives in a Shared Disk Cluster
US8874725B1 (en) 2006-11-15 2014-10-28 Conviva Inc. Monitoring the performance of a content player
US8751605B1 (en) 2006-11-15 2014-06-10 Conviva Inc. Accounting for network traffic
US8489923B1 (en) 2006-11-15 2013-07-16 Conviva Inc. Detecting problems in content distribution
US9124601B2 (en) 2006-11-15 2015-09-01 Conviva Inc. Data client
US8671151B2 (en) * 2007-01-24 2014-03-11 Oracle International Corporation Maintaining item-to-node mapping information in a distributed system
EP2099165A1 (de) * 2008-03-03 2009-09-09 Thomson Licensing Deterministisches Back-off-Verfahren und Vorrichtung für Peer-to-Peer-Kommunikationen
US7631034B1 (en) 2008-09-18 2009-12-08 International Business Machines Corporation Optimizing node selection when handling client requests for a distributed file system (DFS) based on a dynamically determined performance index
US7738504B1 (en) 2008-12-22 2010-06-15 The United States Of America As Represented By The Director National Security Agency Method of establishing and updating master node in computer network
US8489721B1 (en) * 2008-12-30 2013-07-16 Symantec Corporation Method and apparatus for providing high availabilty to service groups within a datacenter
KR101042908B1 (ko) * 2009-02-12 2011-06-21 엔에이치엔(주) 네트워크 분리 장애 상황에서 메이저 그룹을 결정하기 위한방법, 시스템, 및 컴퓨터 판독 가능한 기록 매체
US8402494B1 (en) 2009-03-23 2013-03-19 Conviva Inc. Switching content
JP5307610B2 (ja) * 2009-04-17 2013-10-02 キヤノン株式会社 無線通信システムと通信方法
JP2013520754A (ja) * 2010-02-26 2013-06-06 ロヴィ テクノロジーズ コーポレイション コンピュータ化方法およびシステム
US9083762B2 (en) * 2010-05-28 2015-07-14 Greg Saunders System and method for providing hybrid on demand services to a work unit
US8583773B2 (en) 2011-01-11 2013-11-12 International Business Machines Corporation Autonomous primary node election within a virtual input/output server cluster
US9438476B2 (en) 2011-03-17 2016-09-06 Hewlett Packard Enterprise Development Lp Self-organization of a satellite grid
US9026560B2 (en) 2011-09-16 2015-05-05 Cisco Technology, Inc. Data center capability summarization
US8595546B2 (en) * 2011-10-28 2013-11-26 Zettaset, Inc. Split brain resistant failover in high availability clusters
KR101696911B1 (ko) * 2011-11-01 2017-01-17 한국전자통신연구원 분산 데이터 베이스 장치 및 그 장치에서의 스트림 데이터 처리 방법
US9077580B1 (en) * 2012-04-09 2015-07-07 Symantec Corporation Selecting preferred nodes for specific functional roles in a cluster
US9613042B1 (en) 2012-04-09 2017-04-04 Conviva Inc. Dynamic generation of video manifest files
EP3279789A1 (de) * 2012-06-29 2018-02-07 Mpstor Limited Datenspeicher mit virtuellen anwendungen
US10182096B1 (en) 2012-09-05 2019-01-15 Conviva Inc. Virtual resource locator
US9246965B1 (en) 2012-09-05 2016-01-26 Conviva Inc. Source assignment based on network partitioning
US8996769B2 (en) 2013-08-06 2015-03-31 Netapp, Inc. Storage master node
US10382527B2 (en) 2013-10-16 2019-08-13 International Business Machines Corporation Performing optimized collective operations in an irregular subcommunicator of compute nodes in a parallel computer
CN103530404B (zh) * 2013-10-23 2016-09-14 中国联合网络通信集团有限公司 社区发现处理方法和装置
US10305955B1 (en) 2014-12-08 2019-05-28 Conviva Inc. Streaming decision in the cloud
US10178043B1 (en) 2014-12-08 2019-01-08 Conviva Inc. Dynamic bitrate range selection in the cloud for optimized video streaming
US10412012B2 (en) 2015-09-22 2019-09-10 Arris Enterprises Llc Intelligent, load adaptive, and self optimizing master node selection in an extended bridge
US10721123B2 (en) 2015-09-30 2020-07-21 Arris Enterprises Llc Provisional modes for multi-mode network devices
US10193789B2 (en) 2015-10-07 2019-01-29 Arris Enterprises Llc Handling port identifier overflow in spanning tree protocol
US10218641B2 (en) 2015-10-09 2019-02-26 Arris Enterprises Llc Handling dynamic cascade port/LAG changes in a non-blocking manner
US10153944B2 (en) 2015-10-09 2018-12-11 Arris Enterprises Llc Lag configuration learning in an extended bridge
US10148595B2 (en) 2015-10-16 2018-12-04 Arris Enterprises Llc Handling dynamic port/LAG changes without breaking communication in an extended bridge
US10284389B2 (en) 2015-10-21 2019-05-07 Arris Enterprises Llc High availability for distributed network services in an extended bridge
DE112016004860T5 (de) 2015-10-21 2018-07-26 Arris International Ip Ltd. Verteilte Regelbereitstellung in einer Extended Bridge
US10374868B2 (en) * 2015-10-29 2019-08-06 Pure Storage, Inc. Distributed command processing in a flash storage system
CN106161450B (zh) * 2016-07-20 2019-12-20 上海携程商务有限公司 分布式https监控方法
US10250527B2 (en) 2016-09-01 2019-04-02 Arris Enterprises Llc Port extender ID assignment in an extended bridge
US10389656B2 (en) 2016-09-07 2019-08-20 Arris Enterprises Llc Determining port-to-port connectivity in an extended bridge
US10203987B2 (en) * 2017-01-01 2019-02-12 International Business Machines Corporation Technology for increasing data processing by users
CN107147696B (zh) * 2017-04-07 2019-11-01 北京信息科技大学 在复杂网络中分配缓存服务器的方法和装置
US10735250B2 (en) * 2018-11-30 2020-08-04 International Business Machines Corporation Dynamic distributor selection for network load balancing
EP3703342B1 (de) 2019-03-01 2023-07-26 ABB Schweiz AG Dynamischer lastausgleich in netzwerkzentrischen prozesssteuerungssystemen
CN114745393A (zh) * 2022-03-31 2022-07-12 阿里云计算有限公司 会话同步系统及其方法、云计算中心和云计算设备

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL99923A0 (en) * 1991-10-31 1992-08-18 Ibm Israel Method of operating a computer in a network
US5612897A (en) * 1996-03-21 1997-03-18 Digital Equipment Corporation Symmetrically switched multimedia system
US5748958A (en) * 1996-04-30 1998-05-05 International Business Machines Corporation System for utilizing batch requests to present membership changes to process groups
US6104871A (en) * 1996-04-30 2000-08-15 International Business Machines Corporation Utilizing batch requests to present membership changes to process groups
US5774660A (en) * 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
US6173311B1 (en) * 1997-02-13 2001-01-09 Pointcast, Inc. Apparatus, method and article of manufacture for servicing client requests on a network
US6119143A (en) * 1997-05-22 2000-09-12 International Business Machines Corporation Computer system and method for load balancing with selective control
US6070191A (en) * 1997-10-17 2000-05-30 Lucent Technologies Inc. Data distribution techniques for load-balanced fault-tolerant web access
US5999712A (en) * 1997-10-21 1999-12-07 Sun Microsystems, Inc. Determining cluster membership in a distributed computer system
US6226640B1 (en) * 1997-11-17 2001-05-01 Telecordia Technologies, Inc. Method for determining approximate hamming distance and approximate nearest neighbors of a query
US6266335B1 (en) 1997-12-19 2001-07-24 Cyberiq Systems Cross-platform server clustering using a network flow switch
EP1019858A1 (de) 1998-08-07 2000-07-19 E2 Software Corporation System zum folgen von netzwerkkontakten
US6253230B1 (en) * 1998-09-22 2001-06-26 International Business Machines Corporation Distributed scalable device for selecting a server from a server cluster and a switched path to the selected server
US6412079B1 (en) 1998-10-09 2002-06-25 Openwave Systems Inc. Server pool for clustered system
US6236999B1 (en) * 1998-11-05 2001-05-22 Bea Systems, Inc. Duplicated naming service in a distributed processing system
DE19851981C2 (de) 1998-11-11 2000-09-14 Daimler Chrysler Ag Verfahren zur Steuerung eines aktiven Insassenkopfschutzsystems in einem Fahrzeug
WO2000062502A2 (en) 1999-04-12 2000-10-19 Rainfinity, Inc. Distributed server cluster for controlling network traffic
EP1049307A1 (de) 1999-04-29 2000-11-02 International Business Machines Corporation System und Verfahren zur Zuweisung von Klientsitzungen in einem Verband von mit dem World Wide Web verbundenen Servern
AU6902300A (en) 1999-08-13 2001-03-13 Sun Microsystems, Inc. Graceful distribution in application server load balancing
US6662219B1 (en) * 1999-12-15 2003-12-09 Microsoft Corporation System for determining at subgroup of nodes relative weight to represent cluster by obtaining exclusive possession of quorum resource
US6196680B1 (en) * 2000-04-10 2001-03-06 Unique Industries, Inc. Chemiluminescent eyeglass frame
US20030041138A1 (en) * 2000-05-02 2003-02-27 Sun Microsystems, Inc. Cluster membership monitor
JP3693896B2 (ja) * 2000-07-28 2005-09-14 三菱電機株式会社 通信方法および通信システム
US6839752B1 (en) * 2000-10-27 2005-01-04 International Business Machines Corporation Group data sharing during membership change in clustered computer system
US7451199B2 (en) * 2002-05-10 2008-11-11 International Business Machines Corporation Network attached storage SNMP single system image

Also Published As

Publication number Publication date
AU2003235606A1 (en) 2003-07-30
ATE313906T1 (de) 2006-01-15
TW200302645A (en) 2003-08-01
DE60302876D1 (de) 2006-01-26
CA2456836A1 (en) 2003-07-24
TWI229990B (en) 2005-03-21
WO2003061237A2 (en) 2003-07-24
JP2005515713A (ja) 2005-05-26
US20030140108A1 (en) 2003-07-24
CN100452794C (zh) 2009-01-14
WO2003061237A3 (en) 2003-12-24
EP1477008B1 (de) 2005-12-21
JP3809872B2 (ja) 2006-08-16
EP1477008A2 (de) 2004-11-17
US6950855B2 (en) 2005-09-27
KR100537581B1 (ko) 2005-12-20
KR20040066785A (ko) 2004-07-27
CN1557086A (zh) 2004-12-22

Similar Documents

Publication Publication Date Title
DE60302876T2 (de) Master-knotenauswahl in geclusterten knotenkonfigurationen
DE60016283T2 (de) Arbeitsbelastungsverwaltung in einer rechnerumgebung
DE602004008550T2 (de) Speichervorrichtung und System zum Bereitstellen einer Reservierungsfunktion für einen Kommunikationspuffer.
DE69838506T2 (de) Verfahren für transaktionen zwischen verteilten datenbanken
DE60006499T2 (de) System und verfahren zur gruppenzugehörigkeitsbestimmung in einem heterogenen verteilten rechnersystem
DE60301202T2 (de) Verfahren und vorrichtung zur verkehrssteuerung einer web-farm
DE69814900T2 (de) Verfahren und system zur unterstützung verteilter software- entwicklung ohne bewusstsein der verteilten charakteristik der software
DE60129480T2 (de) Technik zur bestimmung von konnektivitätslösungen für netzwerkelemente
DE69634928T2 (de) Netzwerkverwaltungssystem mit verbesserter Knotenerkennung und -überwachung
DE69829759T2 (de) Verteilung von nachrichten zu dienststeuereinrichtungen
DE102020113347A1 (de) Ausführung von containerisierten prozessen innerhalb der beschränkungen der verfügbaren host-knoten
DE69734432T2 (de) Verfahren und Vorrichtung zur Absendung von Clientverfahrenanrufen in einem Server Rechnersystem
EP1711892B1 (de) Verfahren zum bestimmen eines übernahmeszenarios der softwareeinheiten bei einem rechnerausfall in einer serverfarm
DE112005001995B4 (de) Computeranordnung und Verfahren zum Anbieten von Diensten für Benutzer über ein Netzwerk
DE202016009092U1 (de) System zum Ausgleichen von Speicherdatenverkehr in konvergierten Netzwerken
DE102016219854A1 (de) Computersystem und Verfahren zum dynamischen Anpassen eines software-definierten Netzwerks
DE60221156T2 (de) Verfahren und system zur verteilung der arbeitslast in einem netzwerk von rechnersystemen
DE10260351A1 (de) Lastverteilungssystem für die Steuervorrichtung einer Basisstation
WO2004114143A2 (de) Clusteranordnung
EP3475819B1 (de) Verfahren zur automatischen und dynamischen zuteilung der zuständigkeit für aufgaben an die verfügbaren rechenkomponenten in einem hochverteilten datenverarbeitungssystem
DE112012006160B4 (de) Netzwerkknotenelement, Subnetzmanager, System und Verfahren zur effizienten Verteilung von Subnetzverwaltungsdaten über ein RDMA-Netzwerk
DE102019211908A1 (de) Verfahren und Vorrichtung zum Verteilen einer Anwendung
DE112018007888T5 (de) System welches von CDN-Unternehmen verwendet wird zur Verbesserung der den Benutzern angebotenen Qualität und zur Optimierung der Ressourcennutzung
EP2120144A2 (de) Rechnerverbund und Verfahren zur Konfiguration eines Rechnerverbundes
EP1054528B1 (de) Verfahren zum Ausführen einer Anforderung einer Netzwerkverwaltungseinrichtung

Legal Events

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