-
TECHNISCHES GEBIET
-
Die vorliegende Erfindung betrifft das Gebiet der Computernetze und insbesondere Jobsteuersysteme in einer verteilten Rechnerumgebung.
-
HINTERGRUND DER ERFINDUNG
-
Die Jobsteuerung und der Lastausgleich zwischen einer Vielzahl mit einem Netzwerk verbundener Ressourcen spielen in einer IT-Umgebung eine immer wichtigere Rolle. Zahlreiche verteilte Rechnerumgebungen werden durch die Zuteilung der Arbeitsaufgaben auf eine Gruppe verteilter Ressourcen (z. B. Rechenkapazitäten, Speicher, Datenübertragungskapazitäten, Softwarelizenzen, Sonderausrüstungen usw.) organisiert. Im Wesentlichen geht es bei der Steuerung der Arbeitsaufgaben um ein Optimierungsproblem, das sich relativ einfach gestaltet, wenn es nur einen Ressourcentyp gibt. Da Verarbeitungsleistung durch Einbeziehung von weiteren Ressourcenvariablen in den Steuerungsprozess weiter gesteigert werden kann, ergibt sich aus der hierfür erforderlichen multivarianten Optimierung ein schwieriges mathematisches Problem.
-
Jobsteuersysteme nach dem Stand der Technik verwenden normalerweise eine Master/Agent-Architektur, wobei die Jobs von einem Zentralserver (unter der Bezeichnung „Masterserver” bekannt) aus eingerichtet, gesteuert und verwaltet werden. Die eigentliche Arbeit wird durch die auf den anderen Servern installierten Agenten erledigt. Im Rahmen seiner Aufgaben pflegt der Master die Informationen über die Jobs, die verfügbaren Server usw. und wertet sie aus, um dann zu entscheiden, wem die Jobs zugeordnet werden sollen. Die Agenten wiederum warten auf die vom Master kommenden Befehle, führen die Befehle aus und geben einen Endecode an den Master zurück. Zwar ermöglicht die Master/Agent-Architektur eine straffe Steuerung der Jobs, jedoch stellt die notwendige Synchronisation zwischen Master und Agenten (und die entsprechende Abhängigkeit von der Verfügbarkeit des Netzes und des Masters) eine beträchtliche Einschränkung der Architektur dar. Insofern kann die Gesamtleistung der Architektur wegen des stark zentralistischen Charakters des Datenverkehrs zwischen Master und Agenten beeinträchtigt werden. Ein weiteres Problem stellt die begrenzte Skalierbarkeit der Master/Agent-Architektur dar. Insbesondere kann ein Master nur eine begrenzte Anzahl von Agenten unterstützen, und durch das Schaffen eines neuen Masters oder eines neuen Exemplars entsteht eine neue und davon getrennte Verwaltungsstruktur, sodass die Verwaltungsvorgänge um so komplexer werden, je mehr Exemplare erzeugt werden.
-
In der
Europäischen Patentanmeldung 08154507.1 , eingereicht am 15. April 2008 durch denselben Anmelder, wird ein Laststeuersystem beschrieben, das äußerst skalierbar ist, um innerhalb einer heterogenen verteilten Rechnerumgebung immer mehr Arbeitsaufgaben abzuwickeln. Insbesondere bedient sich die bevorzugte Ausführungsart eines modifizierten Durchschnittskonsensalgorithmus (average consensus algorithm), um den Datenverkehr, um die Jobs im Netz gleichmäßig auf eine Vielzahl von Computern zu verteilen. Durch den modifizierten Durchschnittskonsensalgorithmus werden von jedem Computer Statusinformationen an die übrigen Computer gesendet, sodass die bevorzugte Ausführungsart auf einen Masterserver verzichten kann und die einzelnen Computer die Jobs selbstständig derart auswählen können, dass eine gewünschte Nutzung ihrer eigenen Ressourcen optimal zu den für die Jobs erforderlichen Ressourcen passt. Ein Nachteil des oben erwähnten Verfahrens besteht darin, dass der Benutzer ein virtuelles Netzwerk erstellen muss, das eine logische Topologie der Computer umfasst. Mit anderen Worten, nunmehr ist der Benutzer für die Auswahl der richtigen Topologie zuständig, was zu einer falschen Auswahl führen und die Leistung des Netzes gefährden kann.
-
Es wäre wünschenswert, wenn der Benutzer bei diesem Auswahlprozess angeleitet würde oder besser noch sich auf ein zuverlässiges Verfahren stützen könnte, das anhand vorgegebener Parameter die beste Lösung ermittelt.
-
Eine Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren bereitzustellen, das den oben erwähnten Nachteil nach dem Stand der Technik behebt.
-
ÜBERBLICK ÜBER DIE ERFINDUNG
-
Bei einer bevorzugten Ausführungsart stellt die vorliegende Erfindung ein Verfahren in einem Netz aus einer Vielzahl von N miteinander verbundenen Computern bereit, um die Jobs ausgehend von der Berechnung einer verbesserten Netztopologie auszuführen, wobei die verbesserte Netztopologie eine Anzahl C von in Bezug auf die aktuelle Topologie zusätzlichen Verbindungen beinhaltet und das Verfahren den Schritt des Darstellens der aktuellen Topologie des Netzwerks der Vielzahl von N Computern unter Verwendung einer N×N-Laplace-Matrix M beinhaltet, wobei die Werte l
i,j wie folgt definiert sind:
wobei deg(v
i) gleich der Anzahl der mit dem Knoten i verbunden Knoten und 1 ≤ i ≤ N und 1 ≤ j ≤ N ist; dann wird die N×N-Laplace-Matrix M
1 berechnet, bei der Tr(M
1) = Tr(M) + C·2 und der zweitkleinste Eigenwert so groß wie möglich ist; somit wird aus der Topologie durch Hinzufügen von C zusätzlichen Verbindungen gemäß der berechneten N×N-Laplace-Matrix M
1 eine verbesserte Topologie; dann wird, ausgehend von der modifizierten Netztopologie, das Verteilen der Jobs auf die Computer der modifizierten Netztopologie gesteuert.
-
Das Verfahren der vorliegenden Erfindung kann ausgehend von der aktuellen Netztopologie zur Lösung des Problems nach dem Stand der Technik durch Bereitstellen einer automatischen und optimierten Auswahl der Topologie und einer gewünschten Anzahl zusätzlicher Verbindungen beitragen. Dadurch stellt das Verfahren der vorliegenden Erfindung für den modifizierten Konsensalgorithmus im Vergleich z. B. zu einem einfachen ringförmigen Netzwerk eine höhere Konvergenzgeschwindigkeit bereit. Das Verfahren bedient sich so genannter Kleine-Welt-Netzwerke. Kleine-Welt-Netzwerke sind gegenüber anderen Netzarchitekturen weniger störanfällig; in der Tat führt in einem statistisch verteilten Netzwerk, in welchem alle Knoten nahezu dieselbe Anzahl von Verbindungen aufweisen, das Entfernen eines Knotens für fast jeden entfernten Knoten wahrscheinlich zu einer geringfügigen aber merklichen Verlängerung der mittleren kürzesten Pfadlänge. In diesem Sinne sind statistisch verteilte Netzwerke anfällig gegenüber zufälligen Störungen, während Kleine-Welt-Netzwerke beständiger sind.
-
Bei einer weiteren Ausführungsart der vorliegenden Erfindung wird ein System bereitgestellt, das Komponenten umfasst, die zur Umsetzung des oben erwähnten Verfahrens geeignet sind.
-
Bei einer anderen Ausführungsart wird ein Computerprogramm bereitgestellt, welches das oben erwähnte Verfahren auf einem Computer durchführt.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Im Folgenden werden Ausführungsarten der Erfindung unter Bezug auf die beiliegenden Zeichnungen lediglich beispielhaft beschrieben, wobei:
-
1 ein Funktionsschaubild einer Softwarearchitektur eines Laststeuersystems der bevorzugten Ausführungsart mit einer Darstellung einer Ringtopologie darstellt;
-
2 die Topologie von 1 zeigt, die gemäß dem Verfahren der vorliegenden Erfindung modifiziert wurde;
-
3a und 3b ein Beispiel eines Computernetzes zeigen, auf welches das Verfahren der vorliegenden Erfindung angewendet wird;
-
4 ein Blockschaltbild eines Universalcomputersystems zeigt, das zum Unterstützen des Verfahrens zur Laststeuerung der bevorzugten Ausführungsart geeignet ist; und
-
5 einen Ablaufplan zeigt, der die Schritte zum Ausführen eines Verfahrens gemäß einer bevorzugten Ausführungsart der vorliegenden Erfindung darstellt.
-
BESCHREIBUNG EINER BEVORZUGTEN AUSFÜHRUNGSART
-
1 zeigt die bevorzugte Ausführungsart 100, die eine Ablage 101 für die in einem verteilten heterogenen Netzwerk 103 auszuführenden Jobs umfasst.
-
Zur Vereinfachung wird angenommen, dass das verteilte Netzwerk 103 n Knoten umfasst, wobei jeder Knoten (Knoten i) über eine Anzahl von Ressourcen verfügt. Die bevorzugte Ausführungsart verwendet einen Topologiebildungsalgorithmus 105, der ausführlich erörtert wird; ein modifizierter Durchschnittskonsensalgorithmus 107 versetzt die Knoten im verteilten Netzwerk 103 in die Lage, den anderen Knoten im Netzwerk ihren aktuellen Status und ihre Verfügbarkeit zum Ausführen neuer Jobs mitzuteilen. Die bevorzugte Ausführungsart umfasst ferner ein Jobauswahlmodul 109, das die Knoten im verteilten Netzwerk 103 in die Lage versetzt, gemäß einer benutzerdefinierten gewünschten Nutzung der Ressourcen jedes Knotens (Knoten i) und der für den Job (jobk) benötigten Ressourcen einen optimalen Job (jobk) (als nächsten auszuführenden Job) aus der Jobablage 101 auszuwählen.
-
Der Topologiebildungsalgorithmus 105 richtet ein virtuelles Netzwerk ein, das eine logische Topologie der Knoten im verteilten heterogenen Netzwerk 103 umfasst. Innerhalb des virtuellen Netzwerks legt die logische Topologie fest, welche Knoten Daten miteinander austauschen können. Insbesondere ist die logische Topologie so definiert, dass jeder Knoten direkt mit j benachbarten Knoten (für j < n – 1) verbunden ist (und mit diesen Daten austauschen kann). Somit gehört zum Knoten i eine Nachbarschaft Ni, die j Knoten (Knoten p, p = 1 bis j) umfasst. Die Anzahl der Knoten, mit denen ein Knoten verbunden ist, kann durch den Benutzer definiert werden, wobei die Fehlertoleranz (und die Konvergenzrate) der bevorzugten Ausführungsart durch die erhöhte Anzahl solcher Knoten verbessert wird. Bei einer bevorzugten Ausführungsart der vorliegenden Erfindung kann der Benutzer ausgehend von einer Basistopologie, z. B. dem Netzwerk 103 von 1, gemäß der beobachteten Leistungsparameter des Netzwerkes und des Datenverkehrs eine Anzahl zusätzlicher Verbindungen festlegen. Alternativ kann die Anzahl der optimalen zusätzlichen Verbindungen mittels Überwachungsprogrammen festgelegt werden, welche die Leistungsparameter des Netzwerks überwachen, um die Leistungsfähigkeit und die Geschwindigkeit des Netzwerks einzuschätzen; eine andere Möglichkeit besteht darin, eine Statistik der vorher gemessenen Leistungsparameter zugrunde zu legen. Die einzige Bedingung, welche durch die Basistopologie zu erfüllen ist, besteht darin, dass der durch das virtuelle Netzwerk gebildete Graph durchgehend verknüpft ist, mit anderen Worten, ausgehend von jedem Knoten muss jeder andere Knoten über eine beliebige Anzahl von Schritten erreichbar sein.
-
Bei einer Ringtopologie wie der in
1 gezeigten verfügt jeder Knoten nur über zwei Verbindungen und zwei Nachbarn. So ist zum Beispiel der Knoten i in
1 direkt mit dem Knoten
2 und dem Knoten
6 verbunden. Desgleichen ist der Knoten
2 direkt mit dem Knoten
1 und dem Knoten
3 verbunden; und der Knoten
6 ist direkt mit dem Knoten
1 und dem Knoten
5 verbunden. Jede Topologie mit n Knoten kann durch eine n×n-Matrix dargestellt werden. Das Beispiel von
1 kann durch die folgende 6×6-Matrix M dargestellt werden:
-
Die Eigenwerte einer solchen Matrix sind: 0, 1, 1, 3, 3 und 4.
-
In „On maximizing the Second Smallest Eigenvalue of a State dependent Graph Laplacian”, IEEE TRANSACTIONS ON AUTOMATIC CONTROL, Band 51, Nr. 1, Januar 2006, beschreiben Yoonsoon Kim und Mehran Mesbahi, dass für einen Graphen G mit n Knoten (ohne Schleifen und Mehrfachkanten) die Laplace-Matrix L als
definiert ist, wobei deg(v
i) gleich der Anzahl der mit dem Knoten i verbundenen Knoten ist. Ausgehend von einer aktuellen Topologie (z. B. der oben dargestellten Laplace-Matrix M) und der Annahme, dass zu den vorhandenen Knoten C weitere Verbindungen hinzugefügt werden, besteht das zu lösende Problem darin, die Laplace-Matrix M
1 zu finden, deren Spur (Tr) gleich der Spur der Matrix M + C·2 mit dem größtmöglichen zweitkleinsten Eigenwert ist.
-
Mit anderen Worten: unter allen möglichen Laplace-Matrizen für Tr(M1) = Tr(M) + C·2 ist die Matrix M1 mit dem größtmöglichen zweitkleinsten Eigenwert zu ermitteln.
-
In dem oben zitierten Artikel von Yoonsoon Kim und Mehran Mesbahi wird gezeigt, dass für den Netzwerkgraphen bei Verwendung des vorgeschlagenen Protokolls die Konvergenzgeschwindigkeit dem zweitkleinsten Eigenwert der Laplace-Matrix proportional ist.
-
Zur Maximierung der Konvergenzgeschwindigkeit kann also der von Yoonsoon Kim und Mehran Mesbahi vorgeschlagene Ansatz verwendet werden, um die zur Lösung des Konsensproblems bestmögliche logische Topologie zu ermitteln. Unter Verwendung dieses Verfahrens kann eine logische Topologie erzielt werden, die das beste Kleine-Welt-Netzwerk darstellt.
-
In der Mathematik und in der Physis zählt ein Kleine-Welt-Netzwerk zu den mathematischen Graphen, in denen die meisten Knoten einander nicht benachbart sind, sondern untereinander über eine kleine Anzahl von Sprüngen oder Schritten erreicht werden können.
-
Auf diese Weise kann die kürzeste mittlere Pfadlänge verringert und somit die Weiterleitung der Betriebszustände beschleunigt werden.
-
Der Algorithmus von Yoonsoon Kim und Mehran Mesbahi (der Kim-Mesbahi-Algorithmus) startet zum Zeitpunkt t = 0 mit einem Ausgangsgraphen (Anfangskonfiguration) G0 und wird dann über die Zeitpunkte t = 0, 1, 2, ... iterativ fortgesetzt, bis die Graphen ermittelt sind, für die Lambda_2(LG(t + 1)) einen Maximalwert hat, wobei LG(t + 1) gleich der Laplace-Matrix des Graphen G zum Zeitpunkt t + 1 ist. Diese radikale Prozedur wird dann so lange wiederholt, bis der Wert von Lambda_2(LG(t)) nicht weiter verbessert werden kann. Der vorgeschlagene radikale Algorithmus konvergiert, da die ihm zugrundeliegende Sequenz nicht fallend und begrenzt ist.
-
Mit dem durch Yoonsoon Kim und Mehran Mesbahi beschriebenen Verfahren ist es möglich, ausgehend von einer aktuellen Topologie und durch Festlegen der Anzahl der angeforderten zusätzlichen Verbindungen die beste Topologie für eine größtmögliche Konvergenzgeschwindigkeit zu ermitteln, d. h. den zweitkleinsten Eigenwert in der Matrix, welche die Topologie darstellt. Durch Anwendung dieses Algorithmus auf die durch die oben erwähnte Matrix dargestellte Ringtopologie kann die folgende neue Matrix ermittelt werden:
die der in
2 dargestellten Topologie entspricht.
-
Die Eigenwerte der neuen Matrix sind: 0, 3, 3, 3, 3 und 6; das bedeutet, dass die Konvergenzgeschwindigkeit proportional 3 (dem zweitkleinsten Eigenwert) ist.
-
Es ist natürlich klar, dass die in 1 und 2 gezeigte Topologie nur als Beispiel dient und nicht als Einschränkung der bevorzugten Ausführungsart einer Ringtopologie zu verstehen ist. Insbesondere dem Fachmann ist klar, dass die bevorzugte Ausführungsart auf eine beliebige Topologie und Anzahl von Knoten im verteilten Netzwerk 103 angewendet werden kann (in Abhängigkeit von der oben erwähnten Randbedingung).
-
3a zeigt ein anderes (komplexeres) Beispiel. In dieser Basistopologie 26 sind die Knoten ringförmig miteinander verbunden. Eine solche Anordnung wird durch eine (hier nicht gezeigte) 26×26-Matrix mit dem zweitkleinsten Eigenwert von 0,0581 dargestellt. Wenn zu dieser Topologie sechs weitere Verbindungen hinzugefügt werden und der Kim-Mesbahi-Algorithmus angewendet wird, ergibt sich die in 3b gezeigte Topologie mit einem Eigenwert von 0,2413: das entspricht einer Konvergenzgeschwindigkeit von 415 des Wertes der vorherigen Topologiekonfiguration und stellt den höchstmöglich erreichbaren Wert beim Hinzufügen von sechs Verbindungen dar.
-
Jeder Knoten (Knoten i) im virtuellen Netzwerk umfasst eine Statusvariable für die genutzten Ressourcen, die das Ausmaß der durch die gerade darauf ausgeführten Jobs in Anspruch genommenen Ressourcen des Knotens anzeigen. Diese Information kann den durch eine Überwachungssoftware in Echtzeit erfassten Auslastungsdaten entnommen werden. Insbesondere kann o
i als Auslastungsdatenvektor, der zu einem bestimmten Ressourcenvektor res
i gehört, und das Ausmaß der (durch die gerade ausgeführten Jobs) in Anspruch genommenen Ressourcen eines bestimmten Knotens durch eine skalare Variable state
i angegeben werden, die gleich der gewichteten Summe der Auslastungsdaten der Ressourcenvariablen eines Knotens (Knoten i) (d. h.
[oder in Vektorschreibweise state = O
Tdiag(a), wobei state ∊
, O ∊
und α ∊
ist]. Der modifizierte Durchschnittskonsensalgorithmus
16 in der bevorzugten Ausführungsart erlaubt den Knoten die Weiterleitung dieser Information durch das gesamte virtuelle Netzwerk sogar bis zu den Knoten, die nicht direkt mit dem Ursprungsknoten verbunden sind.
-
Eine ähnliche Schreibweise kann zur Beschreibung der Anforderungen eines bestimmten Jobs (in der Jobablage) verwendet werden. Insbesondere können die Netzanforderungen (e
q) eines Jobs (job
q) als
definiert werden.
-
In der
Europäischen Patentanmeldung 08154507.1 wird erläutert, dass die Jobsteuereinheit auf einer modifizierten Version des so genannten Konsensalgorithmus beruht.
-
Das Durchschnittskonsensmodell eines Graphen liefert ein verteiltes Verfahren zur Berechnung der Entwicklung eines Graphen mit einer Eingabe u
i an einen Knoten i und seine Nachbarn (N
i). Somit kann, wenn die Entwicklung des Status i (state
i) des Knotens i durch state
' / i = f
i(state
i) + u
i(state
i, state
p), p = 1 to j, ∊ N
i ⇒ state
' / i = u
i(state
i, state
p) dargestellt werden kann, gezeigt werden, dass
(kontinuierliche Lösung) oder
(diskrete Lösung) die asymptotische Lösung des Konsensproblems in Gestalt eines durchgehend verknüpften Graphen darstellt. Demzufolge konvergiert das dynamische System gegen den Mittelwert der Ursprungszustände
(kontinuierliche Lösung) oder
(diskrete Lösung), wobei der Beweis für diese Grenzwerte aus dem diesbezüglichen Nyquistdiagramm abgeleitet wird.
-
Die bevorzugte Ausführungsart modifiziert den oben erwähnten herkömmlichen Durchschnittskonsensalgorithmus durch Einführen eines (nicht gezeigten) virtuellen Knotens V, der mit allen anderen Knoten innerhalb des virtuellen Netzwerks direkt verbunden ist. Somit ist der virtuelle Knoten V in die Nachbarschaft Ni eines Knotens i eingebunden. Unter Verwendung dieses Ansatzes berechnet jeder Knoten (Knoten i) seinen nächsten Status (statei(k + 1)) aus:
- – seinem aktuellen Status (statei(k)); und
- – den aktuellen Status der anderen Knoten (einschließlich des virtuellen Knotens V) in seiner Nachbarschaft Ni unter Verwendung der folgenden Formel
-
Der virtuelle Knoten V hat einen durch den Benutzer zu konfigurierenden, fest vorgegebenen Zustand, der die gewünschte Auslastung aller Knoten im virtuellen Netzwerk repräsentiert. Die Einbindung des virtuellen Knotens V in die Nachbarschaft jedes Knotens im virtuellen Netzwerk bewirkt, dass der Durchschnittskonsensalgorithmus an allen anderen Knoten im virtuellen Netzwerk einen Ausgleich und eine Annäherung an den fest vorgegebenen Zustand des virtuellen Knotens V anstrebt (wobei sich die Konvergenzgeschwindigkeit auf die Laplacematrix des Netzwerkgraphen bezieht). Somit liefert die bevorzugte Ausführungsart einen wirksamen Mechanismus zur Abstimmung eines Auslastungsplans, indem sie dem Benutzer gestattet, den Status des virtuellen Knotens V zu konfigurieren, um eine gewünschte Auslastung der Ressourcen der Knoten (d. h. den Arbeitspunkt) im virtuellen Netzwerk zu garantieren (d. h. den Arbeitspunkt des virtuellen Netzwerks wirksam zu verschieben).
-
Das Jobauswahlmodul 109 gestattet einem Knoten (Knoten i) die Auswahl eines demnächst auszuführenden Jobs (aus der Jobablage 10) gemäß dem aktuellen Status des Knotens und seinem berechneten nächsten Status. Insbesondere wird im nächsten Iterationsschritt kein neuer Job durch den Knoten ausgeführt, wenn statei(k + 1) < statei(k) ist. Wenn jedoch gilt ifstatei(k + 1) ≥ statei(k), wird eine Differenzvariable Δ = statei(k + 1) – statei(k) definiert (d. h. die Differenz zwischen dem berechneten nächsten Status und dem aktuellen Status des Knotens i). Als nächster Job (jobk+1) wird (aus der Jobablage) der Job (jobt) ausgewählt, dessen Anforderungsvariable (et) nur eine geringe Differenz zur Differenzvariablen Δ aufweist (d. h. et|mint(Δ – et)).
-
4 zeigt einen typischen Computer 450 des Systems (z. B. einen Computer, einen Internet-Server, einen Leitwegrechner, ferne Server). Der Computer 450 ist aus mehreren Einheiten aufgebaut, die parallel mit einem Systembus 453 verbunden sind. Genauer gesagt, ein oder mehrere Mikroprozessoren 456 steuern die Funktion des Computers 450; ein RAM 459 wird durch die Mikroprozessoren 456 direkt als Arbeitsspeicher verwendet, und in einem ROM 462 ist der Basiscode für ein Urladeprogramm des Computers 450 gespeichert. Um einen lokalen Bus 465 herum sind (mittels entsprechender Schnittstellen) Peripherieeinheiten angeordnet. Insbesondere besteht ein Massenspeicher aus einer Festplatte 468 und einem Laufwerk 471 zum Lesen von CD-ROMs 474. Außerdem beinhaltet der Computer 450 Eingabeeinheiten 477 (zum Beispiel eine Tastatur und eine Maus) und Ausgabeeinheiten 480 (zum Beispiel einen Monitor und einen Drucker). Eine Netzschnittstellenkarte 483 dient dazu, den Computer 450 mit dem Netzwerk zu verbinden. Eine Brückeneinheit 486 verbindet den Systembus 453 mit dem lokalen Bus 465. Jeder Mikroprozessor 456 und die Brückeneinheit 486 können als Masteragenten fungieren und zum Übertragen von Daten einen Zugriff auf den Systembus 453 anfordern. Eine Zuteilungseinheit 489 regelt die Zugriffsgewährung auf den Systembus 453 mit wechselseitigem Ausschluss. Ähnliche Überlegungen gelten, wenn das System eine andere Topologie aufweist oder auf anderen Netzwerken beruht. Alternativ weisen die Computer eine andere Struktur auf, beinhalten gleichwertige Einheiten oder bestehen aus anderen Datenverarbeitungseinrichtungen (beispielsweise PDSs, Mobiltelefone und Ähnliches).
-
5 zeigt schematisch die Schritte des Verfahrens gemäß einer bevorzugten Ausführungsart der vorliegenden Erfindung (500). Der Prozess beginnt mit Schritt 501 und legt in Schritt 503 die aktuelle Topologie des Netzwerks fest, die durch eine oben erläuterte Matrix M dargestellt wird. Gemäß einer bevorzugten Ausführungsart der vorliegenden Erfindung ist die Dimension der Matrix M gleich n×n, wobei n gleich der Anzahl von Knoten im Netzwerk ist. In Schritt 503 kann der Benutzer (oder der Systemadministrator) des Netzwerks angeben, wie viele zusätzliche Verbindungen gewünscht werden. Die Festlegung der Anzahl der gewünschten zusätzlichen Verbindungen kann diverse Parameter berücksichtigen (z. B. den Netzdatenverkehr, die Systemleistung, die geografische Struktur des Netzwerks) und auf unterschiedliche Weise erfolgen; dem Fachmann ist klar, dass diese Festlegung unter Zuhilfenahme vorhandener Dienstprogramme oder auch manuell durch den Systemadministrator erfolgen kann. Die optimale Anzahl der Verbindungen kann auch durch Überwachungsprogramme festgelegt werden, welche die Leistungsparameter des Netzwerks überwachen, um die Leistungsfähigkeit und die Geschwindigkeit des Netzwerks einzuschätzen; eine andere Möglichkeit besteht darin, auf die Statistik zuvor gemessener Leistungswerte zurückzugreifen. Die Matrix M und die Anzahl der zusätzlich gewünschten Verbindungen werden dann in den Kim-Mesbahi-Algorithmus eingegeben, der die optimale Topologie des Netzwerks festlegen kann, indem er die Matrix M1 mit dem größtmöglichen zweitkleinsten Eigenwert aller möglichen Lösungen ermittelt. Bei einer bevorzugten Ausführungsart der vorliegenden Erfindung wird der Prozess wie oben erläutert mit dem Jobsteuerprozess (Schritt 509) fortgesetzt, der auf dem modifizierten Konsensalgorithmus beruht. Wahlweise werden (in Schritt 511) die Leistungswerte des neuen Netzwerks überwacht, um zu ermitteln, ob sie zufriedenstellend sind. Wenn festgestellt wird, dass sie zufriedenstellend sind, können die normalen Jobsteueraktivitäten fortgesetzt werden, ansonsten wird eine Neuordnung des Netzwerks in Betracht gezogen, und der Prozess springt zurück zu Schritt 505. Eine andere Alternative kann darin bestehen, die Anzahl der zusätzlichen Verbindungen so lange um eins zu erhöhen, bis die Leistung in Schritt 511 als zufriedenstellend eingeschätzt wird.
-
An dem oben dargestellten Verfahren können Änderungen und Modifikationen vorgenommen werden, ohne vom Geltungsbereich der Erfindung abzuweichen. Zur Anpassung an lokale und spezielle Anforderungen kann ein Fachmann die oben beschriebene Lösung natürlich modifizieren und verändern. Obwohl die vorliegende Erfindung unter Bezug auf die bevorzugten Ausführungsarten der Erfindung mit einer gewissen Ausführlichkeit beschrieben worden ist, ist insbesondere klar, dass verschiedene Weglassungen, Ersetzungen und Änderungen an Form und Details sowie andere Ausführungsarten möglich sind; darüber hinaus wird ausdrücklich erklärt, dass bestimmte in Verbindung mit den beschriebenen Ausführungsarten der Erfindung beschriebene spezielle Elemente und/oder Verfahrensschritte als allgemeine Konstruktionselemente auch in andere Ausführungsarten aufgenommen werden können.
-
Zum Beispiel gelten ähnliche Überlegungen für den Fall, dass die Computer eine andere Struktur aufweisen oder gleichwertige Einheiten beinhalten; auf jeden Fall können die Computer durch eine beliebige Einheit ersetzt werden, die einen Code ausführt (beispielsweise einen PDA, ein Mobiltelefon und Ähnliches).
-
Ähnliche Überlegungen gelten auch, wenn das Programm (das zur Umsetzung jeder Ausführungsart der Erfindung verwendet werden kann) anders aufgebaut ist oder wenn zusätzliche Module oder Funktionen bereitgestellt werden; desgleichen können die Speicherstrukturen vom anderem Typ sein oder durch gleichwertige Einheiten ersetzt werden (die nicht unbedingt auf physischen Speichermedien beruhen müssen). Darüber hinaus eignet sich die vorgeschlagene Lösung zur Umsetzung durch ein gleichwertiges Verfahren (mit ähnlichen oder zusätzlichen Schritten, möglicherweise in einer anderen Reihenfolge). Auf jeden Fall kann das Programm eine beliebige Form annehmen, in der es durch oder in Verbindung mit einem beliebigen Datenverarbeitungssystem umgesetzt werden kann, beispielsweise in Form extern oder intern gespeicherter Software, Firmware oder Mikrocode (entweder als Objektcode oder als Quellcode). Darüber hinaus kann das Programm auf einem beliebigen computerlesbaren Medium bereitgestellt werden; bei dem Medium kann es sich um ein beliebiges Element handeln, welches das Programm enthalten, speichern, mitteilen, weiterleiten oder übertragen kann. Als Beispiele für ein solches Medium gelten fest eingebaute Speicherplatten (auf die das Programm vorgeladen werden kann), Wechselplatten, Magnetbänder, Karten, Leitungsdrähte, Lichtwellenleiter, drahtlose Verbindungen, Netzwerke, Rundfunkwellen und Ähnliches; vom Typ her kann zum Beispiel ein elektronische, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleitermedium infrage kommen.
-
Auf jeden Fall eignet sich die Lösung gemäß der vorliegenden Erfindung zur Ausführung mit einer Hardwarestruktur (die zum Beispiel in einen Chip aus Halbleitermaterial integriert ist) oder mit einer Kombination aus Software und Hardware.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-