DE69838204T2 - Integrierte Überlaststeuerung für verteilte Echtzeitsysteme - Google Patents

Integrierte Überlaststeuerung für verteilte Echtzeitsysteme Download PDF

Info

Publication number
DE69838204T2
DE69838204T2 DE69838204T DE69838204T DE69838204T2 DE 69838204 T2 DE69838204 T2 DE 69838204T2 DE 69838204 T DE69838204 T DE 69838204T DE 69838204 T DE69838204 T DE 69838204T DE 69838204 T2 DE69838204 T2 DE 69838204T2
Authority
DE
Germany
Prior art keywords
overload
term
modules
level
long
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 - Fee Related
Application number
DE69838204T
Other languages
English (en)
Other versions
DE69838204D1 (de
Inventor
Gopal Menghraj Lisle Gehi
Kazem Anaraky Lincroft Sohraby
Sheng Ling Lisle Lin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lucent Technologies Inc filed Critical Lucent Technologies Inc
Application granted granted Critical
Publication of DE69838204D1 publication Critical patent/DE69838204D1/de
Publication of DE69838204T2 publication Critical patent/DE69838204T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Description

  • Die vorliegende Patentschrift steht mit EP-A-0913771 , G. Gehi, S. Lin und K. Sohraby: „Autonomous Overload Control for Distributed Real Time Systems" (Integrierte Überlastregelung für dezentrale Echtzeitsysteme) in Beziehung.
  • Technisches Gebiet:
  • Die vorliegende Erfindung betrifft ein Verfahren zum Reagieren auf Überlastzustände in Echtzeitsystemen.
  • Aufgabe:
  • Echtzeitsysteme wie beispielsweise Telekommunikationssysteme müssen auf Anforderungen wie beispielsweise von Benutzern getätigte Anforderungen nach Verbindungen reagieren, die nicht durch das Echtzeitsystem geregelt werden können. Dementsprechend sind diese Systeme einer Überlastung unterworfen, wenn ein ungewöhnlich großer Anteil der Benutzer gleichzeitige Anforderungen an das System stellt. Im allgemeinen reagieren in Anordnungen des Standes der Technik die Systeme auf die Überlastzustände mit Zurückstellung von zurückstellbarer Arbeit und mit Lastabruf, d.h. Verweigerung der Annahme irgendeines Bruchteils der Benutzeranforderung von Verbindungen in einem oder mehreren Modulen des Systems. Ein Problem des Standes der Technik besteht darin, daß es sich als schwierig herausgestellt hat, die Durchführung von zurückstellbaren Aufgaben so schnell wiederherzustellen, wie es im Rückblick darauf möglich gewesen sein könnte, diese Aufgaben wieder zu beginnen und die Lastannahme so schnell wieder aufzunehmen, wie im Rückblick diese Last wieder aufgenommen werden könnte.
  • Lösung:
  • Die obigen Probleme werden bedeutend gelindert und gegenüber der Lehre des Standes der Technik wird gemäß der in Anspruch 1 definierten Erfindung ein Fortschritt erzielt, wobei einzelne Module eines verteilten Systems als Funktion der gegenwärtigen Überlastanzeigen mehrerer oder aller Module des Systems Überlastregelungshandlungen durchführen. Von einem zentralen Prozessor werden Anzeigen (Modulzustände) von jedem Modul empfangen und jedem Modul eine Regelungshandlung zugewiesen. In einer bevorzugten Ausführungsform ist die Lastanzeige die Identität der Kurzzeit- oder Langzeit-Überlaststufe und die Regelungshandlung ist die Handlung für eine dieser Stufen, obwohl nicht unbedingt die gleiche Stufe wie die, die gegenwärtige Last- oder Überlaststufe des Moduls beschreibende Stufe. Vorteilhafter Weise erlaubt ein solches System dem System, auf beinahe optimale Weise innerhalb jeden Moduls auf Anzeigen von Überlast innerhalb dieses Moduls und Überlast in anderen Modulen zu reagieren.
  • In einer Ausführungsform wird der systemweite Ansatz nur dann aufgerufen, wenn sich mindestens eines der Module auf einer Langzeit-Überlaststufe befindet. Kurzzeitsituationen werden vorteilhafterweise örtlich, d.h. innerhalb eines Moduls, behandelt, aber die ernsthafteren Langzeitüberlastungen, die möglicherweise den Beistand von Sonderhandlungen in anderen Modulen erfordern, werden auf systemweiter Basis behandelt.
  • In W. Zhu et al.: "Comparing the Performance Differences Between Centralized Load Balancing Methods" (Vergleich der Leistungsunterschiede zwischen zentralen Belastungsausgleichverfahren), 1996, IEEE International Conference an Systems, Man and Cybernetics Information Intelligence and Systems, Peking, 14.-17. Oktober 1996, Band 3, 14. Oktober 1996, Seiten 1830-1835, Institute of Electrical and Electronics Engineers, sind Anordnungen zum Belastungsausgleich in einem verteilten Computersystem mit einer Mehrzahl von Modulen offenbart, wobei ein zentraler Belastungsausgleicher Lastanzeigen von den Modulen erhält und darauf durch entsprechende Zuteilung von neuen Aufgaben zu den Modulen reagiert.
  • In J. Gehring et al.: "MARS – A Framework for Minimizing the Job Execution Time in a Metacomputing Environment" (MARS, ein Rahmen zum Minimieren der Job-Ausführungszeit in einer Metacomputerumgebung), Future Generation Computer Systems, Band 12, Nr. 1, 1. Mai 1996, Seiten 87-99, werden Anordnungen zum Belastungsausgleich besprochen, wobei die Anordnungen durch sowohl Langzeitmessungen als auch Kurzzeitmessungen beeinflußt werden.
  • US-A-5 655 120 bezieht sich auf Anordnungen zum Belastungsausgleich auf Grundlage einzelner Module und funktionsmäßig benachbarter Module.
  • Kurze Beschreibung der Zeichnung:
  • 1 ist ein Blockschaltbild einer Mehrzahl von Modulen in einem beispielhaften Vermittlungssystem;
  • 2 ist ein Gesamt-Flußdiagramm des Verfahrens zum Bestimmen von Überlaststufen und selbsttätigen Reagieren auf diese Überlast in einem Modul;
  • 3 und 4 sind Flußdiagramme des Verfahrens zur selbsttätigen Einleitung von Überlast-Reaktionshandlungen, die die Stufe der Überlast ändern und zwischen Langzeit- und Kurzzeit-Überlaststufen umschalten; und
  • 5 und 6 zeigen, wie Modulen auf Anzeigen ihrer eigenen Überlast zuzüglich derjenigen in anderen Modulen reagieren.
  • Ausführliche Beschreibung:
  • In dieser Schrift wird eine Überlastregelung beschrieben, die aus zwei untereinander zusammenhängenden Mechanismen besteht: kurzzeitig und langzeitig. In vielen Situationen haben Kurzzeitregelhandlungen eine geringere Auswirkung auf die Systemleistung, während Langzeithandlungen stärkere Leistungsfolgen bewirken. So ist es wünschenswert, zwischen kurzzeitig und langzeitig zu unterscheiden. Insbesondere ist es wichtig, daß ein vereinigtes Regelungsverfahren, das nicht zwischen den beiden unterscheidet, nicht an das System unter Überlastung angelegt werden sollte. Der Begriff Überlastzustand soll bei seiner Benutzung den Überlastzustand Null einschließen, das heißt den Normalzustand, bei dem keine Überlast in einem Modul besteht.
  • Bei dem zuerst beschriebenen autonomen Regelungsverfahren messen die einzelnen Vermittlungskomponenten (Knoten oder Modulen) ihre Leistung und unternehmen auf Grundlage diese Messungen eine Handlung. Alle Knoten sind autonom und unabhängig und ihre Handlung ist möglicherweise nicht für die Zustände und/oder Handlungen anderer Knoten relevant. Demgegenüber werden bei dem angewandten „integrierten" Überlastansatz bei einer Ausführungsform, wenn ein oder mehrere Modulen in eine Langzeitüberlaststufe eintreten, die Zustände aller Knoten gleichzeitig bei der Bestimmung des Verlaufs der Handlung während der Regelung in Betracht gezogen.
  • Wie durch den Namen angedeutet arbeitet die Kurzzeitregelung als Reaktion auf Messungen der Systemleistung über kurze Zeitperioden. Damit sollen die vorübergehenden und kurzzeitigen Überlastzustände erfaßt werden, die möglicherweise nicht lange dauern und daher keine Handlungen erfordern würden, die schwere Nachteile mit sich führen (z.B. hohe Verbindungsblockierungsraten). Typische Kurzzeitregelung kann auch dem Zurückstellen der Verarbeitung von nichtkritischen Aufgaben bestehen; diese Aufgaben werden nach Verschwinden der vorübergehenden Überlast verarbeitet werden. Die Schärfe der Handlung ist in diesem Fall nicht kritisch und ist vorübergehend. Beispielsweise kann eine nichtkritische Aufgabe sein, auf eine Anforderung zum Rücksetzen von Registern und Speicherplatten zu reagieren, die der Vermittlungswartung und -verwaltung zugeordnet sind und keine sofortigen Bedeutungen für die Hauptaufgaben wie beispielsweise die Bearbeitung von laufenden Gesprächen in der Vermittlung haben. Es ist wichtig, zu beachten, daß solche nichtkritischen Aufgaben nicht für eine lange Zeitdauer zurückgestellt werden können, da in diesem Fall die Funktionsweise der Vermittlung oder des Hintergrundnetzes unterbrochen werden könnte. Kurzzeithandlungen können auch das Zurückstellen einer durch die Vermittlungen durchgeführten kritischen Aufgabe umfassen, nur wenn die Schärfe des Zustandes bedeutet, daß weitere kritische Handlung benötigt wird. Beispielsweise kann es eine typische scharfe Kurzzeithandlung sein, die Verbindungszeichengabenachrichten niedrigerer Priorität, die an der Vermittlung ankommen, auf eine niedrigere Rate herabzusetzen und die Vermittlungsknoten von der Verarbeitungslast zu entlasten, die sonst durch die blockierten Verbindungen entstehen würde.
  • Bei Langzeitregelung bringt die Zurückstellung von Aufgaben (wie beispielsweise der nichtkritischen Signalverarbeitung) allein keine Abhilfe. Eine schärfere Handlung wie beispielsweise durch Blockieren von ankommenden Signalen in dem System zusammen mit dem Zurückstellen nichtkritischer Aufgaben könnte notwendig sein. Die Blockierungsrate ist in diesem Fall höher als diejenigen, die möglicherweise im kurzzeitigen Fall angewandt worden sind.
  • Eine Aufgabe des hier beschriebenen Verfahrend besteht in der Unterscheidung zwischen diesen beiden Fällen und dem Ausarbeiten eines bestimmten Verfahrens zur Messung und Regelung in jedem Fall.
  • In der nachfolgenden Beschreibung ist das bestimmte Knotenleistungsmaß, das überwacht wird, die Prozessornutzung. Dieses Maß wird jedoch hier nur als bevorzugte beispielhafte Ausführungsform angesehen. Es können andere Maße wie beispielsweise Warteschlangenlänge, Puffergebrauchnutzung, Anzahl besetzter Leitungen in den Verbindungsnetzwerksteuerungen usw. benutzt werden. Diese Wahlmöglichkeiten sind von den bestimmten Implementierungen, der Vermittlungsarchitektur und auch von den Gesamt-Vermittlungsleistungsmaßen abhängig. In der vorliegenden Beschreibung wird der Begriff „Last" als der repräsentative gemessene Regelungsparameter benutzt werden.
  • Knotenprozessornutzung wird als der repräsentative Regelungsparameter gemessen und überwacht, der eine Anzeige eines Knotenüberlastzustandes bietet. Dieser Anzeiger wird dann auf die entsprechende Überlaststufe abgebildet und eine entsprechende Regelungshandlung unternommen. Hiernach wird der gesamte Vorgang beschrieben, der damit beginnt, wie (Kurzzeit- und Langzeit-)Messungen durchgeführt werden. Prozessornutzung entspricht dem Prozentsatz an Zeit, für den ein Prozessor (wie beispielsweise die Zentraleinheit (CPU – Central Processing Unit) eines Knotens in einer Vermittlung beschäftigt ist). Um zu diesen Maßen zu kommen, werden Prozessorarbeitszeiten angesammelt und durch die Gesamtlänge der Meßzeit geteilt. Dieses Verhältnis wird Prozessornutzung genannt. Bei der bevorzugten Ausführungsform wird ein gefiltertes Maß (unter Verwendung beispielsweise eines exponentiellen Glättungsverfahrens) von mehreren Meßintervallen benutzt. Wenn das gemessene Verhältnis unter einer annehmbarmäßigen Höhe liegt (gewöhnlich um 40%-50%), wird gesagt, daß sich der Knoten in einem Normalzustand befindet und gewöhnlich keine Überlasthandlung erforderlich ist, es sei denn es befinden sich andere Modulen in einem Überlastzustand wie hiernach besprochen. Wenn das Verhältnis Höhen von 80%-90% oder höher erreicht, befindet sich das Modul wahrscheinlich in einem Zustand starker Überlast und eine Handlung sollte unternommen werden. Zwischen den zwei Höhen von 50% und 90% kann man sich entscheiden, Handlungen zu unternehmen, die nicht so scharf wie bei der Höhe von 90% sind. Keine Handlung ist jedoch ebenfalls nicht zutreffend.
  • Um den Unterschied zwischen kurzzeitig und langzeitig darzustellen nehme man an, daß bei einer ungeregelten Vermittlung über Intervallen von sage 100 ms (Millisekunden), der bestimmte überwachte Knotenprozessor die folgenden, hiernach Regelparameter genannten Meßergebnisse über drei aufeinanderfolgende Intervalle in zwei getrennten (als Fälle A und B bezeichneten) Messungen zeigt:
    Fall (A): 80%, 40%, 50%,
    Fall (B): 80%, 75%, 90%.
  • Im Fall (A) wird der Knoten, obwohl er sich über das erste Intervall von 100 ms in 80% Nutzung befindet, in den nächsten zwei Intervallen nicht so hoch genutzt. Dies ist im Fall (B) nicht der Fall, wo, obwohl die Nutzung im ersten Intervall ebenso hoch ist, sie in den nächsten zwei Intervallen ebenfalls hoch bleibt. Der Fall (A) wird als einer bezeichnet, der möglicherweise eine Kurzzeitregelhandlung erfordert, während im Fall (B) eine längerzeitige Handlung benötigt wird. Anfänglich sind die Handlungen über das erste Intervall von 100 ms in beiden Fällen A und B die gleichen; sowie jedoch Messungen der nächsten Intervalle verfügbar werden, wird im Fall (A) die Kurzzeitregelung rückgesetzt und Normalbetrieb wieder aufgenommen, während im Fall (B) die vorherige Regelung aufrechterhalten wird (bzw. die Schärfe der Regelhandlung gesteigert wird). Zu der Zeit, wenn Messungen für das dritte Intervall verfügbar werden, zeigt der Fall (A) ein normalarbeitendes Modul während Fall (B) die Notwendigkeit einer noch schärferen Handlung wie beispielsweise der Blockierung von ankommenden Signalen mit höherer Rate als anfänglich vorgestellt bedeuten kann. Die Schärfe der Handlung (wie beispielsweise die Rate der Blockierung ankommender Signale) ist von der Gesamtleistung des bestimmten Moduls abhängig. Wenn beispielsweise das Gesamtleistungsmaß des Moduls im Fall (B) während des dritten Intervalls so schlecht ist, daß die Nutzung auf eine Zielnutzung von, man sage 65% herabgebracht werden sollte, dann wird eine höhere Blockierungsrate benötigt, als wenn die Zielnutzung 75% beträgt.
  • Die Bezeichnungsweise und Konzepte in diesem Abschnitt sind denen der Flußdiagramme ähnlich. Zeitintervalle werden mit (n) numeriert. Es wurde angenommen, daß diese Intervalle im obigen Beispiel T = 100 ms in Länge betrugen. Zusätzlich zur Beobachtung der Ergebnisse der Nutzungsmessung über ein Intervall T = 100 ms werden diese Messungen auch über ein Fenster mit Größe W (S) beobachtet, das die Anzahl von aufeinanderfolgenden Intervallen T darstellt, die dazu benutzt werden, eine Kurzzeitregelungsentscheidung zu treffen. Auf ähnliche Weise stellt W(L) die Anzahl aufeinanderfolgender T Intervalle dar, die dazu benutzt werden, eine Kurzzeitregelungshandlung zu entscheiden. X(n) stellt die gemessene Nutzung über Intervall (n) dar. Das zur Kurzzeitregelung während des Intervalls (n) benutzte Maß wird als S(n) dargestellt. Dieses Maß ist eine gefilterte Version von X(n) wie beispielsweise aus dem nachfolgenden Ausdruck: S(n) = a(1)X(n) + a(2)X(n – 1) + ... + a(W(S))X(n + 1 – S(S)) wobei a(j) der für die gemessene Nutzung über das j-te Intervall aus der jüngsten Messung angelegte Filterungs-(Flättungs-)Faktor ist und a(1) der Glättungsfaktor für das jünste Messintervall ist. Wenn S(n) in einem gegebenen Zeitintervall (n) gemessen wird, reflektiert es den geglätteten Wert der Nutzung über die letzten W(S) aufeinanderfolgenden Intervalle. S(n) wird in jedem Intervall aktualisiert, indem der früheste Meßwert X (n – W(S)) verworfen wird und aus der Probe, und die an die Messungen angelegten Glättungskoeffizienten um Eins verschoben werden. Dann wird eine neue Meßprobe zu der Menge von W(S) Messungen hinzuaddiert.
  • Auf ähnliche Weise wird der Langzeitmeßwert im Intervall (n) L(n) bestimmt. Die Fenstergröße für L(n) beträgt W(L), wobei W(L) > W(S).
  • Das Verfahren zur Überwachung und Regelung funktioniert wie folgt: Werte von S(n) und L(n) werden für jedes Intervall n gemessen und gespeichert. Zu Beginn jedes Intervalls wird S(n) mit den zwei Schwellwerten X(min, i) und X(max, i) verglichen, wobei i die gegenwärtige Kurzzeitüberlast-„Stufe” des Vermittlungsmoduls darstellt. Wenn beispielsweise im Normalbetrieb ein Modul angefahren wird, ist die Überlaststufe die Stufe keine Überlast (i = 0). Die Schwellwerte sind so gewählt, daß sie ein Vermittlungsverhalten widerspiegeln, das für die bestimmte Stufe (i) annehmbar ist. Wenn der Meßwert S(n) X(max, i) auf dieser Stufe überschreitet, dann wird die Stufe geändert, sodaß sie auf Stufe (i + 1) über das nächste Intervall liegt. Wenn auf ähnliche Weise der Meßwert S(n) unter X(min, i) liegt, dann wird die Stufe geändert, sodaß sie auf Stufe (i – 1) im nächsten Intervall liegt. Wenn S(n) in eine gegebenen Stufe (i) fällt (das heißt S(n) zwischen X(min, i) und X(max, i) liegt), ist es nicht notwendig, den Langzeit-Meßparameter (L(n)) zu überprüfen. In diesem Fall ist eine Entscheidung bezüglich des Zustandes der Knotenüberlast getroffen worden und die entsprechenden Regelungen für Stufe (i) werden angelegt (diese würde aus für die Stufe (i) ausgelegten Kurzzeit-Überlastregelungshandlungen bestehen). Wenn jedoch der Meßwert S(n) die höchste Stufe überschritten hat, nachdem er schrittweise den nächsthöheren Schwellwert auf jeder Stufe überschritten hat, dann hat der Knoten die Kurzzeitüberlaststufe überschritten und befindet sich nunmehr in Langzeitüberlast. In diesem Fall wird der gemessene Parameter L(n) mit ähnlichen Langzeitüberlastschwellwerten verglichen und entsprechende Regelungshandlungen werden angewandt.
  • Man beachte, daß mit jedem Schritt der Knoten aus seinem bestehenden Zustand nur um 1 hoch- oder herabschreiten kann. Wenn der Zustand eines Knotens unter die niedrigste Langzeitüberlast abfällt, tritt er in die höchste Kurzzeitüberlaststufe ein. Auf ähnliche Weise tritt er in die niedrigste Langzeitüberlaststufe ein, wenn er die höchste Kurzzeitüberlaststufe überschreitet. Wenn ein System die höchste Langzeitstufe erreicht, bleibt es auf dieser Stufe; wenn im System der Zustand des Knotens unter die niedrigste Kurzzeitüberlast abfällt, tritt es vollständig aus dem Überlastzustand aus.
  • 1 zeigt die diesbezüglichen Aspekte der Architektur einer Vermittlung 1, an der die Erfindung in einer bevorzugten Ausführungsform implementiert ist. Die Vermittlung umfaßt eine Mehrzahl von Nachrichtenprozessoren (MP – Message Processors) 10, ..., 11, die durch ein Bussystem 15 miteinander verbunden sind. Die Nachrichtenprozessoren kommunizieren miteinander und außerhalb der Vermittlungen, um Nachrichten zu verarbeiten, die Verbindungs- und Abtrennungsanforderungen darstellen.
  • Die Nachrichtenprozessoren kommunizieren über das Bussystem 15 mit einer Mehrzahl von Steuerprozessoren 20, ..., 21 zum Steuern einer Mehrzahl von Netzmodulen 30, ..., 31. Die Steuerprozessoren und Netzmodulen kommunizieren miteinander über das Bussystem 25. Der Nachrichtenprozessor, Steuerprozessor und die Netzmodulen enthalten jeweils ein programmgesteuertes Prozessorsystem zur Ausführung der vom Prozessor erforderten Funktion und zur Ausführung des hier weiterhin beschriebenen Überlastregelungsprogramms.
  • 2 zeigt den Vorgang der Bestimmung eines Überlastzustandes in einem der Modulen auf hoher Stufe. Handlungsblock 201 zeigt an, daß ein Kurzzeit-Überlastmeßintervall T(S) zum Messen von Anzeigen einer Kurzzeitüberlast ausgewählt wird. Das Meßintervall T(S) wird bei Initialisierung des Systems ausgewählt. Bei einer bevorzugten Ausführungsform ist T(L), das Meßintervall für Langzeitüberlast, das gleiche wie T(S), nur werden mehr Intervalle zur Regelung und zum Glätten benutzt. Bei alternativen Ausführungsformen kann das Intervall dynamisch ausgewählt werden. Im Handlungsblock 203 wird ein Fenster W(S) zum Beobachten einer Anzahl aufeinanderfolgender Messungen zur Bestimmung einer Kurzzeitüberlast ausgewählt (Handlungsblock 203). Dieses Fenster wird auch bei Initialisierung ausgewählt. Im Handlungsblock 205 wird ein Fenster W(L) zum Beobachten einer Anzahl von aufeinanderfolgenden Überlastmessungen zur Bestimmung der Stufe einer Langzeitüberlast ausgewählt. W(L) wird wiederum bei Initialisierung ausgewählt. Ein typischer Wert bei einer Vermittlung hoher Kapazität mit Modul mit hoher Kapazität könnte T(S) = 0,1 Sekunde, W(S) = 3 und W(L) = 10 sein. Bei diesen Zahlen werden Lang- und Kurzzeitüberlastmessungen alle 0,1 Sekunde durchgeführt und werden zur Überwachung des Kurzzeitüberlastzustandes über eine Periode von 0,3 Sekunden gefiltert und zum Ändern des Langzeitüberlastzustandes über eine Periode von 1 Sekunde gefiltert.
  • Es ist möglich, verschiedene Systemleistungsmaße bzw. Anreizparameter zum Erkennen der Kurz- und Langzeitüberlastzustände zu messen. In diesem Fall können T(S) und T(L) (entsprechend den Kurz- bzw. Langzeitmeßintervallen) unabhängig und auch für verschiedene Regelungsparameter gewählt werden.
  • Der Regelungsparameter X(n) für das n-te Intervall wird für jedes Intervall gemessen und die vergangenen W(L) Messungen werden gespeichert (Handlungsblock 207). Diese Werte werden dann im Handlungsblock 209 zur Bestimmung einer gefilterten Version der Messungen benutzt. Auf Grundlage des in Handlungsblock 209 bestimmten gemessenen Regelungsparameters wird das Vorhandensein von Überlast erkannt; wenn Überlast vordem erkannt worden ist, wird die Überlaststufe gemäß der Lehre der 3 und 4 verstellt.
  • Bei einer bevorzugten Ausführungsform führt die höchste Stufe der Kurzzeitüberlastregelung zur niedrigsten Stufe der Langzeitüberlast, wenn die Überlast ansteigt, und die niedrigste Stufe der Langzeitüberlastregelung führt zur höchsten Stufe der Kurzzeitüberlast, wenn die Überlast abnimmt. Handlungsblöcke 207, 209 und 211 werden in Echtzeit in einem funktionierenden System durchgeführt. Der Regelungsparameter wird über ein Intervall in der Anzahl von Intervallen gemessen, die im wesentlichen die Zeit darstellen, beispielsweise die Zeit seit Initialisierung des Systems. Während des Intervalls beträgt die Regelungsparametermessung der Last X(n). Auf Grundlage der gegenwärtigen und mehrerer vergangener Werte des Regelungsparameters werden S(n) oder L(n) für Kurzzeit- bzw. Langzeitlast berechnet. Eine typische Formel zum Berechnen von S(n) ist S(n) = a(1)X(n) + a(2)X(n – 1) + a(3)X(n – 2). Mit dieser Filterungsfunktion werden nur die drei jünsten Werte der Lastmessung benutzt. Bei diesem typischen Beispiel ist a(1) = 0,5, a(2) = 0,4 und a(3) = 0,1. Für den Fall der Berechnung des Langzeitregelungsparameters L(n) werden dieselben Verfahren benutzt, nur wird eine Reihe von zehn Messungen benutzt, um die gefilterte Langzeitlast zu erstellen, und eine Reihe von 10 Koeffizienten werden für die Filterungsfunktionen benutzt. Die zehn Koeffizienten b(1), b(2), ..., b(10) besitzen in einer Ausführungsform die Werte 0,23, 0,17, 0,11, 0,1, 0,09, 0,08, 0,07, 0,06, 0,05 und 0,04.
  • Während mit obigen Beispiel die Filterung einfach eine lineare Addition gewichteter Regelungsparameter für die gegenwärtigen und vorangegangenen Intervalle ist, können andere Filterungsverfahren wie beispielsweise exponentielle Glättung benutzt werden. Das Verfahren der Filterung solcher Daten wird vom gewöhnlichen Fachmann wohl verstanden.
  • Nach der Bestimmung der Zustandsstufen der verschiedenen Prozessoren und Verbindungsnetzwerke gibt es zwei Möglichkeiten zur Anwendung von Regelung. Diese sind:
    • 1. Autonome Handlung von jedem Knoten in der Vermittlung: In diesem Fall werden von jedem Prozessor bzw. Verbindungsnetz unabhängige Handlungen unternommen. Das heißt eine Handlung entsprechend jeder Überlaststufe. Diese Art Regelung ergibt im allgemeinen eine weniger als optimale Leistung. Sie kann jedoch weniger kostspielig als die anderen Ansätze sein, da kein Erfordernis für eine zentrale Steuerung besteht. Die Zuverlässigkeit der zentralen Steuerung ist in diesem Fall kein Problem. Auch werden die Kosten des Einsammelns und Verarbeitens von Zustandsinformationen vieler Modulen, um ein Gesamtsystem definieren zu können, vermieden.
    • 2. Ansatz des integrierten (Gesamt-)Systemzustands: Da Vermittlungsknoten heutzutage zuverlässiger sind und die Verarbeitungskosten rapide abnehmen, ist es möglich, anzunehmen, daß die Zustände der einzelnen Knoten bestimmt und in einem zentralen Prozessor oder in jedem Prozessor kombiniert werden können, um einen „Gesamt-"Systemzustand zu erstellen. In diesem integrierten Fall berufen Handlungen auf dem gesamten beobachteten Systemzustand anstatt den Zuständen der einzelnen Knoten. Eine dezentrale Vermittlung mit integrierter Regelung weist eine bessere Überlastleistung als die Art mit autonomer Überlastregelung auf.
  • Da Langzeitüberlast einen ernsthafteren Zustand darstellt, besteht eine Anordnung darin, selbsttätig zu handeln, solange wie sich keines der Modulen in Langzeitüberlast befindet, und auf integrierte Handlung umzuwechseln, sobald wie sich irgendein Modul in einem Langzeitüberlastzustand befindet. Es ist klar, daß ein solcher Wechsel auch entsprechend irgendwelchen anderen Kriterien durchgeführt werden kann, die auf dem Überlastzustand der Modulen beruhen.
  • In vielen Umständen können verschiedene Prozessoren oder Verbindungsnetzwerke in einer dezentralen Vermittlung heterogen sein; es ist daher vorteilhaft, für einzelne Prozessoren und Verbindungsnetzwerke unterschiedliche Meßintervalle zu wählen. Beispielsweise kann ein längeres Meßintervall für langsamere Prozessoren und Verbindungsnetzwerke gewählt werden, während ein kürzeres Meßintervall für schnellere geeignet ist. Alle derartigen Messungen sollten daher auf eine Menge von Zuständen abgebildet werden, die letztendlich zur Entscheidung über die Überlasthandlungen benutzt werden. Auch können die gemessenen Parameter für jeden unterschiedlich sein.
  • Während beispielsweise die Puffergröße ein richtiges Maß zur Entscheidung des Überlastzustandes eines Nachrichtenprozessors (z.B. MP 10) in einer Vermittlung sein kann, steht diese Messung im Fall eines pufferlosen Verbindungsnetzwerks (z.B. Netzmodul 31) nicht zur Verfügung und kann daher nicht angewandt werden. Im letzteren Fall könnte ein anderes Maß wie beispielsweise die Anzahl bestehender Verbindungen oder die Anzahl offenstehender Verbindungsanforderungen oder sonstige verbindungsnetzwerkspezifische Maße geeigneter für Messung und Regelung sein.
  • Auf ähnliche Weise kann die Fenstergröße für Kurzzeit- und Langzeitmessungen unterschiedlich gewählt werden.
  • Weiterhin könnte es auf Grundlage der vergangenen Meßwerte sinnvoll sein, daß die zukünftigen Meßintervalle verstellt werden. Dynamische Einstellung von Meßintervallen kann auch als Ergebnis der Tageszeit oder von tatsächlichen Messungen von Regelungsparametern an unterschiedlichen Verbindungsnetzwerken und/oder Prozessoren stattfinden.
  • 3 und 4 zeigen den Vorgang des Eintretens in eine Überlaststufe, des Änderns von Überlastregelungshandlungen im Kurzzeit- oder Langzeit-Überlastregelungssystem und des Übergangs zwischen der Kurzzeit- und Langzeitüberlastregelung. In die 3 wird im Handlungsblock 301 eingetreten. Eine der zulässigen gegenwärtigen Stufen von Überlastregelung i ist die Stufe 0, die den Zustand keiner Überlast darstellt. Dies ist der Zustand, in den bei Initialisierung des Systems eingetreten wird. Im Block 301 wird das Kurzzeitüberlastmaß S(n) berechnet. Dieser Kurzzeitregelungsparameter wird mit dem mit der gegenwärtigen Stufe i des Kurzzeitüberlastzustandes (Prüfung 303) verbundenen Höchstwert von Regelungsparameter verglichen. Wenn die Last diesen Schwellwert nicht überschreitet, dann wird die Prüfung 305 dazu benutzt, zu bestimmen, ob der Regelungsparameter nunmehr unterhalb des Mindestschwellwerts für die Stufe i liegt. Wenn nicht, d.h. wenn die Ergebnisse beider Prüfungen 303 und 305 negativ sind, ist dies eine Anzeige dafür, daß der Regelungsparameter innerhalb der Stufe der gegenwärtigen Überlast liegt und das Modul auf dieser Stufe bleibt (Handlungsblock 307). Dann wird wieder in den Handlungsblock 301 eingetreten, um die nächste gefilterte Regelungsparameterprobe zu berechnen.
  • Wenn das Ergebnis der Prüfung 303 positiv ist, d.h. wenn der Regelungsparameter den maximalen Schwellwert für die gegenwärtige Stufe überschreitet, wird die Prüfung 311 dazu benutzt, zu bestimmen, ob die höchste Stufe der Kurzzeitüberlast überschritten worden ist. Wenn nicht, dann wird die Überlaststufe auf die nächst höhere Kurzzeitüberlaststufe erhöht und wieder in den Handlungsblock 301 eingetreten, um auf den nächsten gefilterten Lastwert zu warten. Auf ähnliche Weise wird, wenn das Ergebnis der Prüfung 305 positiv ist, d.h. wenn die Last weniger als der untere Schwellwert der gegenwärtigen Überlaststufe beträgt, diese Stufe erniedrigt (Handlungsblock 315) und wieder in den Handlungsblock 301 eingetreten, um den nächsten gefilterten Kurzzeit-Regelungsparameterwert zu berechnen. (Es ist klar, daß es keinen Mindestschwellwert für den Fall von i = 0 gibt, der das Nichtvorhandensein von Überlast darstellt, sodaß ein positives Ergebnis für Prüfung 305 bedeutet, daß eine niedrigere Stufe, möglicherweise die Stufe i = 0, besteht.)
  • Wenn das Ergebnis der Prüfung 311 positiv ist, d.h. wenn der maximale Schwellwert für die höchste Stufe der Kurzzeitüberlast überschritten worden ist, dann wird in den Handlungsblock 321 der 4 eingetreten. Wenn in den Handlungsblock 321 von der Prüfung 311 aus eingetreten wird, beträgt der Anfangswert der Langzeitüberlastregelung j 1 (Handlungsblock 312, 3). (Der Einfachheit halber bei der Erläuterung der 2 und 3 wird angenommen, daß j = 1 der niedrigste Langzeitüberlastzustand ist. In der Praxis ist es wahrscheinlicher, daß der niedrigste Wert von j um Eins höher als der höchste Wert von i ist). Im Handlungsblock 321 wird die Langzeitfilterung der Last berechnet, um zu bestimmen, ob die Last innerhalb der gegenwärtigen Stufe von Langzeitüberlast liegt. Die Prüfung 323 wird dazu benutzt, zu bestimmen, ob die gegenwärtige Last den maximalen Schwellwert für die gegenwärtige Stufe von Langzeitüberlastregelung überschreitet. Wenn nicht, dann wird die Prüfung 325 dazu benutzt, zu bestimmen, ob der Regelungsparameter unter dem Mindestschwellwert für die gegenwärtige Stufe von Langzeitüberlastregelung liegt. Wenn die Ergebnisse der beiden Prüfungen 323 und 325 negativ sind, dann wird in den Handlungsblock 327 eingetreten, was bedeutet, daß die Überlastregelung auf der gegenwärtigen Stufe verbleibt und wieder in den Handlungsblock 321 eingetreten wird.
  • Wenn der Handlungsblock 323 anzeigt, daß der maximale Schwellwert für die gegenwärtige Stufe überschritten worden ist, dann wird die Überlastregelungsstufe erhöht (Handlungsblock 329) und wieder in den Handlungsblock 321 eingetreten.
  • Wenn die gegenwärtige gefilterte Last weniger als der Mindestschwellwert für den gegenwärtigen Langzeitüberlastzustand beträgt (positives Ergebnis der Prüfung 325), dann wird die Prüfung 331 dazu benutzt, zu bestimmen, ob j bereits auf Stufe 1 liegt. Wenn ja, dann wird j auf 0 erniedrigt und wieder in den Handlungsblock 301 eingetreten, mit i auf seiner höchsten Stufe (Handlungsblock 332). Wenn das Ergebnis der Prüfung 331 negativ ist, d.h. daß die Langzeitüberlaststufe noch erniedrigt werden kann, ohne auf eine Kurzzeitüberlaststufe überzugehen, dann wird j erniedrigt und wieder in den Handlungsblock 321 eingetreten, um den nächsten Wert von L(n) zu berechnen.
  • Das Ergebnis der Ausführung des durch die Flußdiagramme der 3 und 4 angegebenen Programms besteht darin, daß im Fall einer übermäßigen Belastung in eine Kurzzeitüberlaststufe eingetreten wird, die allmählich erhöht wird, wenn die gefilterte Kurzzeitlast verschiedene Schwellwerte überschreitet; wenn der höchste Schwellwert überschritten wird, dann wird in eine Langzeitüberlaststufe eingetreten und die Langzeitüberlaststufe erhöht, wenn die gefilterte Langzeitlast die verschiedenen Langzeitüberlastschwellwerte überschreitet.
  • Auf ähnliche Weise ermöglicht eine Abnahme der Last die Erniedrigung der Überlaststufe und das Ausweichen aus einer Langzeitüberlaststufe auf eine Kurzzeitüberlaststufe.
  • In diesem Teil der Beschreibung sind Regelungshandlungen (autonome Regelung) auf das Modul mit entweder Kurzzeit- oder Langzeitüberlast beschränkt und die Regelungshandlung für ein Modul entspricht der Überlaststufe dieses Moduls. Manchmal ist es jedoch wünschenswert, Überlastregelungen auf Grundlage der gleichzeitigen Zustände mehrerer oder aller Modulen zu ändern (integrierte Regelung). Man betrachte beispielsweise ein System mit einem einzelnen MP10 und einem einzelnen CP 20. Wenn sich sowohl MP als auch CP in einem Normalzustand oder einem Kurzzeitüberlastzustand befinden, dann werden die normalen oder Kurzzeitüberlastregelungen in jedem Modul aufgerufen. Wenn sich jedoch eines der Modulen auf einer von zwei Langzeitüberlaststufen befindet, dann werden die folgenden Handlungen durchgeführt, die eine bessere Überlastleistung als im autonomen Fall ergeben.
    • 1. Verbindungsprozessor im Zustand niedriger Langzeitüberlast, Nachrichtenprozessor im Zustand keiner Langzeitüberlast: Nachrichtenprozessor blockiert neue ankommende Verbindungen mit Wahrscheinlichkeit P(1). Verbindungsprozessor benachrichtigt externe Vermittlungen, Verkehr auf Drosselstufe 1 abzudrosseln.
    • 2. Verbindungsprozessor im Zustand hoher Kurzzeitüberlast, Nachrichtenprozessor nicht im Langzeitüberlastzustand: Nachrichtenprozessor blockiert neue ankommende Verbindungen mit Wahrscheinlichkeit P(2), die größer als P(1) ist. Verbindungsprozessor benachrichtigt externe Vermittlungen, den Verkehr weiter abzudrosseln (Drosselstufe 2).
    • 3. Nachrichtenprozessor im Langzeitüberlastzustand, Verbindungsprozessor nicht im Langzeitüberlastzustand: Nachrichtenprozessor stellt Zusatz-Nachrichtenverarbeitung zurück und blockiert neue ankommende Verbindungen mit Wahrscheinlichkeit P(3), wobei P(3) > P(2). Verbindungsprozessor verringert seine Zusatz-Nachrichtenverarbeitung.
    • 4. Verbindungsprozessor im Zustand niedrigerer Langzeitüberlast, Nachrichtenprozessor im Langzeitüberlastzustand: Nachrichtenprozessor stellt Zusatz-Nachrichtenverarbeitung zurück und blockiert neue ankommende Verbindungen mit Wahrscheinlichkeit P(4), wobei P(4 > P(3). Verbindungsprozessor benachrichtigt seine kommenden Vermittlungen, den Verkehr auf Drosselebene 1 abzudrosseln.
    • 5. Verbindungsprozessor im Zustand hoher Langzeitüberlast, Nachrichtenprozessor im Langzeitüberlastzustand: Nachrichtenprozessor stellt seine Zusatz-Nachrichtenverarbeitung zurück und blockiert neue ankommende Verbindungen mit Wahrscheinlichkeit P(5), die größer als P(4) ist. Verbindungsprozessor benachrichtigt seine Ursprungsvermittlungen, Verkehr auf Drosselstufe 2 abzudrosseln.
  • In diesem Beispiel sind keine Handlungen zum gerechteren Angleichen der Last unter ähnlichen Prozessoren in Betracht gezogen worden. Es wird angenommen, daß die im Stand der Technik wohlbekannten Verfahren zum Angleichen der Last unter ähnlichen Prozessoren benutzt werden, sodaß im allgemeinen alle ähnlichen Prozessoren auf den gleichen oder annähernd den gleichen Überlaststufen liegen. Wo diese nicht gleich sind, kann die Systemreaktion so abgeändert werden, daß eine niedrigere Stufe von Systemüberlastregelung aufgerufen wird, wenn sich nur einige der Prozessoren einer Art auf der Langzeitüberlaststufe des am schwersten überlasteten Prozessors einer bestimmten Art befinden. Wenn es beispielsweise im obigen Beispiel zwei Nachrichtenprozessoren gäbe, von denen sich nur einer auf einer Langzeitüberlaststufe befindet, dann ist die mit der vierten Überlastkategorie (Drosselstufe 1 und neue ankommende Verbindungen blockiert mit Wahrscheinlichkeit P(4)) verbundene Systemüberlastreakion wünschenswert.
  • 5 zeigt eine Ausführungsform des Ansatzes mit integriertem Systemzustand. Ein zentraler Prozessor, der zur Initialisierungszeit zugeordnet und im Störungsfall neu zugeordnet wird, erfaßt den Überlastzustand jedes Moduls des Systems. Dieser Prozessor leitet dann entweder durch Anwendung eines Halb-Markov-Entscheidungsverfahrens oder einer sonstigen Heuristik oder über einen vorgespeicherten Vektor einen Vektor ab, der für jedes Modul die zutreffende Reaktionshandlung angibt. Von einem zentralen Prozessor wird der Zustand jedes Moduls eines Systems erfaßt (Handlungsblock 501). Der zentrale Prozessor berechnet dann einen den in jedem Modul des Systems auszuführenden Handlungszustand angebenden Handlungsvektor (Handlungsblock 503). Dann werden die Modulen über den Handlungszustand für das nächste Intervall benachrichtigt. Dieses Verfahren wird in regelmäßigen Zeitabständen wiederholt.
  • Angenommen, ein Vermittlungssystem besteht aus 3 Modulen M1, M2 und C1. Jedes Modul weist mehrere Schwellwerte auf, die bei der Bestimmung ihrer jeweiligen Zustände benutzt werden. Wie schon besprochen sind diese Schwellwerte Stufen von Puffergröße, Prozessorinitialisierung usw., die für Überlastmessung als kritisch angesehen werden. Angenommen, daß S = (S(1), S(2), S(3)) den Systemzustand in irgendeinem Beobachtungsintervall darstellt. Hier ist S(1) der Zustand (z.B. belegte Puffergröße, belegte Warteschlangenlänge, Prozessornutzungshöhe für M(1), S(2) der Zustand für M(2) und S(3) für C(1). In der folgenden Tabelle wird ein beispielhafter heuristischer Zustand/Handlung angegeben: TABELLE I
    S(1) S(2) S(3) A(1) A(2) A(3)
    0 0 0 0 0 0
    1 0 0 0 0 0
    1 1 0 1 0 0
    1 1 1 1 1 0
    2 0 0 2 1 0
    2 1 1 2 2 1
  • Wenn der Systemzustand S = (0,0,0), was einem Zustand von keiner Überlast in irgendeinem der Modulen entspricht, beträgt A = (0,0,0) entsprechend keiner Handlung in irgendeinem der Modulen. Wenn S = (1,0,0), was M(1) auf Überlaststufe 1 aber M(2) und C(1) ohne Überlast entspricht, beträgt A = (0,0,0) entsprechend keiner Handlung an irgendeinem der Modulen. Heuristisch ist der Grund dafür, daß angenommen wird, daß eine leichte Veränderung der Zustandes eines Moduls eine Störung ist, die keine Handlung erfordert, es sei denn sie wird ernsthafter, wenn S = (1,1,0), wo nur das Modul M(1) Handlung unternimmt „1". Diese Handlung kann beispielsweise der Zurückstellung des Betriebes von 0, A und M entsprechen.
  • Die beim integrierten Ansatz benutzten Meßverfahren sind dem autonomen/unabhängigen Fall gleich. Wie bei dem autonomen/unabhängigen Fall gibt es kurzzeitige und langzeitige Meßintervalle und nach Verlassen der höchsten Kurzzeitüberlaststufe tritt ein bestimmtes Modul in die niedrigste Langzeitüberlaststufe ein usw. Im integrierten Fall liegt der Unterschied darin, daß, anstatt eine Entscheidung für eine Handlung in einem bestimmten Modul nur auf Grundlage dessen eigenen Zustandes zu treffen beruht die Entscheidung auf der Summenmenge der Zustände aller Modulen. So bezieht sich im Beispiel der obigen Tabelle „0" auf den niedrigsten Langzeitzustand für M(1). In der Tabelle, wenn S = (2,0,0), was dem niedrigsten Langzeitüberlastzustand von M(1) entspricht während sich M(2) und C(1) in Zuständen keiner Überlast befinden, ist die entsprechende Handlung als A = (2,1,0) angezeigt. Diese Handlung entspricht beispielsweise der Blockierung von Verbindungen in M mit einer gegebenen Rate (z.B. 5%) und gleichzeitig der Zurückstellung von OAM-Verarbeitung (Operations, Administration and Maintenance – Betrieb, Verwaltung und Wartung) in M(2) (als Handlung „1" im Beispiel bezeichnet) und „nichts tun" in C(1). Diese Handlung A = (2,1,0) kontrastiert mit der Handlung, wenn S = (2,1,1) in der Tabelle. In diesem letzteren Fall befindet sich M(1) im Zustand niedrigster Langzeitüberlast während sich M(2) und C(1) im Zustand „1" befinden, was irgendeinem Kurzzeitzustand für diese Modulen entspricht. In diesem Fall ist A = (2,2,1) entsprechend 5% Blockierung bei M(1), 5% bei M(2) und Zurückstellung von OAM in C. Man beachte, daß, wenn Modulen heterogen sind, die Zustände „1" oder „2" oder ... unterschiedliche Überlastzustände bedeuten und die Handlungen „1", „2" usw. ebenfalls unterschiedliche Handlungen bedeuten können. Wenn beispielsweise in dem obigen Beispiel M(2) zweimal so schnell wie M(1) ist, kann S(2) = 1 eine größere Puffergröße als S1 = 1 bedeuten. Auf ähnliche Weise kann A(2) = 2 z.B. 2% Blockierung bedeuten, während A(1) = 2 5% Blockierung bedeuten kann, usw.
  • Allgemeiner gesagt ist eine optimale Anordnung zur Regelung von Überlast eine, bei der ein Prozessor fortlaufend den Lastzustand jedes Moduls des Systems überwacht und auf Grundlage des Zustandes aller dieser Modulen gezielt Überlastregelung an einen zutreffenden dieser Modulen anlegt. Eine derartige Anordnung kann eine aufwendige Berechnung erfordern, um eine optimale Reaktion in jedem Modul zu bestimmen. An dem idealen Modell können auf verschiedene Weisen Kompromisse getroffen werden. Anstatt der Verwendung einer fortlaufenden Lastmessung kann die Lastmessung in diskreten Zeitabständen wie beispielsweise dem Meßintervall für den oben beschriebenen autonomen Überlastregelungsfall bereitgestellt werden. Weiterhin kann, anstatt genaue Lastwerte zu benutzen, die oben beschriebene Überlaststufe zur Beschreibung der Lasteigenschaften jedes Moduls benutzt werden. Ein weiterer Kompromiß kann für gewisse Systeme veranlaßt werden, wobei Systemregelung nur dann aufgerufen wird, wenn sich mindestens ein Modul im Langzeitüberlastzustand befindet. Noch ein weiterer Kompromiß kann die Verwendung von nur den ausgewählten Überlastregelungsstufen als die Gesamt-Lastregelungsreaktionen sein, die der Steuerprozessor einzelnen Modulen auferlegen kann.
  • 5 ist ein allgemeines Verfahren zur Verwendung eines Ansatzes eines integrierten Systems zur Überlastregelung. Ein beispielhaftes System ist das in 2 gezeigte, das drei Gruppen von Prozessoren MP10, ....MP11; CP20, ....CP21 und N30, ....N31 aufweist. Es wird angenommen, daß MP10, ....MP11, und CP20, ....CP21 homogene Gruppen von Prozessoren sind, sodaß jeder Prozessor jede Eingangsnachricht und jeder Verbindungsprozessor jede Ausgangsnachricht von einem Nachrichtenprozessor bearbeiten kann. Für den autonomen Fall berechnet jeder Prozessor einfach seine eigene Last und leitet auf Grundlage dieser Last eine Überlaststufe ab, die eine entsprechende Gruppe von Überlastregelungshandlungen angibt. Demgegenüber berechnet für den Fall des integrierten Systems jeder Prozessor noch seine eigene Überlaststufe, überträgt aber diese Stufe entweder als Überlastzahl oder als Überlaststufe zu einem zentralen Prozessor. Der zentrale Prozessor hat die Aufgabe, zu entscheiden, welche Überlastregelungsstufe in der Tat an jeden der Prozessoren im System angelegt werden sollte. Bei einer Ausführungsform stellt der zentrale Prozessor nicht die Überlastregelungsstufe irgendeines Prozessors ein, wenn nicht mindestens ein Prozessor eine Last aufweist, die einer Langzeitüberlaststufe entspricht. In diesem Fall werden die oben für 5 beschriebenen Handlungen nur dann ausgeführt, wenn sich einer oder mehrere Prozessoren im Langzeitüberlastzustand befinden. Als Alternative werden die für 5 beschriebenen Handlungen selbst dann ausgeführt, wenn keiner der Prozessoren im System eine Last aufweist, die einer Langzeitüberlast entspricht.
  • 6 zeigt ein nicht so allgemeines Verfahren, das aber den Vorteil aufweist, daß der im zentralen Prozessor erforderliche Rechenaufwand sehr verringert ist. Die Grundphilosophie des Verfahrends der 6 besteht darin, daß die Auswirkung von Überlast anderer Prozessoren dadurch vereinfacht werden kann, daß nur die „durchschnittliche" Überlast jeder anteiligen Gruppe von Prozessoren, d.h. der MP, der CP und der N, in Betracht gezogen wird. Im Grundansatz werden zwei Verfahren zur Einstellung einer Handlungsstufe in bezug auf die Überlaststufe eines bestimmten Prozessors benutzt. Zuerst wird, wenn der Prozessor eine Überlaststufe aufweist, die weit von den Überlaststufen der anderen Prozessoren in der Gruppe entfernt ist, die Handlungsstufe nach oben oder nach unten auf die Überlaststufe der Prozessoren der Gruppe zu eingestellt. Zweitens wird, wenn die „durchschnittliche" Überlaststufe der Gruppe sich bedeutend von der Überlaststufe einer benachbarten Gruppe unterscheidet, die Handlungsstufe der Mitglieder der Gruppe auf die Überlaststufe der Nachbargruppe zu eingestellt. Beide Arten von Einstellungen dienen effektiv zur „Abflachung" der Handlungsstufen sowohl horizontal (innerhalb einer Gruppe) als auch vertikal (von Gruppe zu Gruppe).
  • Dies ist in 6 dargestellt. Der zentrale Prozessor empfängt Meldungen über den Überlastzustand jedes Prozessors (Handlungsblock 601). Es ist wünschenswert, daß diese Meldung nur dann gesendet wird, wenn eine Änderung eingetreten ist. Der zentrale Prozessor leitet eine „durchschnittliche" Überlaststufe für die Gruppe ab. Dieser „Durchschnitt" kann zu den höheren Überlastzuständen in der Gruppe hin gewichtet werden, da die Überlastlücken nicht in allen Überlastzustandsübergangen unbedingt gleich sind. Auch muß die „durchschnittliche" Überlaststufe nicht eine Ganzzahl sein, sondern kann Bruchteile enthalten. Dann werden an den Überlaststufen jedes Prozessors zwei Arten von Einstellungen durchgeführt, um die Handlungsstufe für diesen Prozessor abzuleiten. Wenn ein bedeutender Unterschied besteht, d.h. mehr als ein vorbestimmter Betrag, der zweckentsprechend zu den höheren Überlastzuständen hin gewichtet und experimentell in einem System eingestellt worden ist, dann wird die durchschnittliche Handlungsstufe einer Prozessorgruppe zu der höheren der Überlaststufen der benachbarten Prozessorgruppen hin eingestellt. Als nächstes wird, wenn die Überlaststufe eines Prozessors sich um mehr als einen zweiten entsprechend gewichteten vorbestimmten Betrag vom durchschnittlichen Überlastzustand des Prozessors unterscheidet, die Handlungsstufe dieses Prozessors zum Durchschnitt hin eingestellt. Die Einstellungen können bruchförmig und kumulativ sein und werden auf eine ganzzahlige Einstellung der Handlungsstufe im Vergleich zur Überlaststufe abgerundet. Im allgemeinen ist es unwahrscheinlich, daß die Einstellung größer als ein einziger Schritt zwischen der Handlungsstufe und der vorhergehenden Stufe sein wird. Die neue Regelungshandlungsstufe wird dann zu jedem Prozessor übertragen, dessen Handlungszustand sich geändert hat (Handlungsblock 609). Man beachte, daß für den Fall der integrierten Regelung die Anzahl von Regelungshandlungsstufen größer als die Anzahl von Überlaststufen für jedes Modul sein kann.
  • Für den Fall von nichthomogenen Prozessoren in einer Funktionsgruppe kann der Zustand der einzelnen Prozessoren bei der Ableitung des Durchschnittswerts der Gruppe gewichtet werden. Wenn beispielsweise einer der MP langsamer als die anderen ist, sollte sein Überlastzustand bei der Ableitung des Überlastzustandes der Gruppe weniger schwer gewichtet werden.
  • Die obige Beschreibung betrifft eine Ausführungsform der Erfindung. Von dem gewöhnlichen Fachmann können viele andere Variationen gefunden werden. Die Erfindung ist nur durch die beiliegenden Ansprüche begrenzt.

Claims (3)

  1. Verfahren zum Reagieren auf Überlastung in einem verteilten Echtzeitsystem mit einer Mehrzahl von Modulen (10, 11, 20, ..., 21, 30, ..., 31) mit folgenden Schritten: in jedem Modul, Messen der Last zum Ableiten einer Lastanzeige; in einem Zentralrechner des Systems, Empfangen (501) von Lastanzeigen von jedem Modul des Systems; und als Reaktion auf den Empfang der Lastanzeigen, Zuteilen neuer Aufgaben zutreffend für jedes der Module; dadurch gekennzeichnet, daß jedes der Module seine eigene Menge von Überlaststeuerhandlungen aufweist; der auf den Empfang der Lastanzeigen reagierende Zentralprozessor eine Steuerhandlung für jedes der Module ableitet (503); und der Zentralprozessor jedes der Module über seine Steuerhandlung informiert (609); wobei diese Steuerhandlungen jedem Modul (201, 203, 205, 207, 209, 211) intern sind; wobei die Lastanzeigen langfristige (321) und kurzfristige (301) Überlaststufen umfassen und wobei die langfristigen Überlaststufen auf über eine längere Zeitdauer als die kurzfristigen Überlaststufen getätigten Messungen beruhen; und die Steuerhandlungen für die langfristigen Überlaststufen mehr Aufgaben als für die kurzfristigen Überlaststufen aufschieben.
  2. Verfahren nach Anspruch 1, wobei der Zentralprozessor die Module über angeforderte Steuerhandlungen zu informieren beginnt, wenn mindestens eines der Module sich in einer langfristigen Überlaststufe befindet (501, 503), und wobei jedes der Module selbsttätig seine eigene Steuerhandlung ableitet, wenn vom Zentralprozessor keine angeforderten Steuerhandlungen empfangen werden.
  3. Verfahren nach Anspruch 1, wobei der Zentralprozessor ein Durchschnitts-Überlastniveau für jede Gruppe von Modulen ableitet, wobei die Module funktionsmäßig in eine Mehrzahl von Gruppen gruppiert sind, und wobei die für ein bestimmtes Modul angeforderte Steuerhandlung auf der Überlaststufe des bestimmten Moduls, der Durchschnitts-Überlaststufe einer Gruppe, zu der das bestimmte Modul gehört, und den Durchschnitts-Überlaststufen von Gruppen in Nachbarschaft der Gruppe, zu der das bestimmte Modul gehört (601, 603, 605, 607, 609) beruht.
DE69838204T 1997-10-29 1998-10-19 Integrierte Überlaststeuerung für verteilte Echtzeitsysteme Expired - Fee Related DE69838204T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US959936 1992-10-13
US08/959,936 US6134216A (en) 1997-10-29 1997-10-29 Integrated overload control for overload control for distributed real time systems

Publications (2)

Publication Number Publication Date
DE69838204D1 DE69838204D1 (de) 2007-09-20
DE69838204T2 true DE69838204T2 (de) 2008-05-15

Family

ID=25502602

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69838204T Expired - Fee Related DE69838204T2 (de) 1997-10-29 1998-10-19 Integrierte Überlaststeuerung für verteilte Echtzeitsysteme

Country Status (6)

Country Link
US (1) US6134216A (de)
EP (1) EP0913772B1 (de)
JP (1) JPH11265365A (de)
KR (1) KR100334871B1 (de)
CA (1) CA2249691C (de)
DE (1) DE69838204T2 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5943232A (en) * 1997-10-29 1999-08-24 Lucent Technologies Inc. Autonomous overload control for distributed real time systems
US6327361B1 (en) * 1998-07-13 2001-12-04 Lucent Technologies Inc. Multivariate rate-based overload control for multiple-class communications traffic
US6434713B1 (en) * 1998-09-03 2002-08-13 Lg Information & Communications, Ltd. Processor management method of mobile communication home location register (HLR) system
US7584472B1 (en) * 1999-02-08 2009-09-01 Alcatel-Lucent Canada Inc. Method and apparatus for processing call signaling messages
US6591301B1 (en) * 1999-06-07 2003-07-08 Nortel Networks Limited Methods and systems for controlling network gatekeeper message processing
KR20020022907A (ko) * 2000-09-21 2002-03-28 문홍주 부하 분산장치의 성능개선 및 고속동작을 위한 구성방법및 그시스템
US7366521B2 (en) * 2001-12-31 2008-04-29 Samsung Electronics Co., Ltd. Distributed identity server for use in a telecommunication switch
US6947752B2 (en) * 2001-12-31 2005-09-20 Samsung Electronics Co., Ltd. System and method for distributed call processing using load sharing groups
US6917819B2 (en) * 2001-12-31 2005-07-12 Samsung Electronics Co., Ltd. System and method for providing a subscriber database using group services in a telecommunication system
GB0207507D0 (en) * 2002-03-28 2002-05-08 Marconi Corp Plc An apparatus for providing communications network resource
US20030210649A1 (en) * 2002-05-03 2003-11-13 Bondi Andre B. Managing network loading by control of retry processing at proximate switches associated with unresponsive targets
US7783759B2 (en) * 2002-12-10 2010-08-24 International Business Machines Corporation Methods and apparatus for dynamic allocation of servers to a plurality of customers to maximize the revenue of a server farm
US6912481B2 (en) * 2003-03-14 2005-06-28 Ge Medical Systems, Inc. Medical equipment predictive maintenance method and apparatus
US7539748B2 (en) * 2003-05-16 2009-05-26 Time Warner Cable, A Division Of Time Warner Entertainment Company, L.P. Data transfer application monitor and controller
US7512949B2 (en) * 2003-09-03 2009-03-31 International Business Machines Corporation Status hub used by autonomic application servers
DE10341071B3 (de) * 2003-09-05 2005-03-24 Siemens Ag Verfahren zur Überlastabwehr, besonders für Call Processsing Plattformen
US8463282B2 (en) * 2003-12-03 2013-06-11 Qualcomm Incorporated Overload detection in a wireless communication system
JP4058038B2 (ja) * 2004-12-22 2008-03-05 株式会社日立製作所 負荷監視装置および負荷監視方法
US8559514B2 (en) * 2006-07-27 2013-10-15 Qualcomm Incorporated Efficient fetching for motion compensation video decoding process
US8838774B2 (en) 2007-08-21 2014-09-16 Inmon Corporation Method, system, and computer program product for identifying common factors associated with network activity with reduced resource utilization
US8427950B2 (en) * 2007-08-28 2013-04-23 Inmon Corporation Method, system, and computer program product for identifying common factors associated with network threshold violations
US8224955B2 (en) 2009-05-07 2012-07-17 International Business Machines Corporation Ensuring affinity at all affinity domains by folding at each affinity level possible for a partition spanning multiple nodes
CN102096605B (zh) * 2011-02-17 2012-10-03 成电汽车电子产业园(昆山)有限公司 一种嵌入式实时操作系统中多级资源管理的实现方法
CN104424017B (zh) * 2013-08-21 2017-06-30 中国科学院沈阳计算技术研究所有限公司 一种适用于数控系统的容错低功耗调度方法
KR101968816B1 (ko) 2017-05-23 2019-08-13 지병욱 기능성 차 우림 물병

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01318344A (ja) * 1988-06-17 1989-12-22 Fujitsu Ltd 発信規制方式
JPH04123252A (ja) * 1990-09-14 1992-04-23 Agency Of Ind Science & Technol マルチプロセッサ・システムの負荷分散制御方式
JPH0589046A (ja) * 1991-09-28 1993-04-09 Kyushu Nippon Denki Software Kk Cpu高負荷による業務の規制方法及び装置
IL99923A0 (en) * 1991-10-31 1992-08-18 Ibm Israel Method of operating a computer in a network
GB2272085A (en) * 1992-10-30 1994-05-04 Tao Systems Ltd Data processing system and operating system.
ES2149794T3 (es) * 1993-09-24 2000-11-16 Siemens Ag Procedimiento para compensar la carga en un sistema multiprocesador.
JPH07302242A (ja) * 1994-04-30 1995-11-14 Mitsubishi Electric Corp 負荷分散方式
JP3166118B2 (ja) * 1994-09-09 2001-05-14 日本電信電話株式会社 サービス制御ノードにおける自律輻輳制御方法
FR2727540B1 (fr) * 1994-11-30 1997-01-03 Bull Sa Outil d'aide a la repartition de la charge d'une application repartie
JPH08185377A (ja) * 1994-12-28 1996-07-16 Mitsubishi Electric Corp 分散計算機システム
JPH08272750A (ja) * 1995-03-30 1996-10-18 Nec Corp 分散処理システムおよびその処理方法
JP3969764B2 (ja) * 1995-04-20 2007-09-05 富士通株式会社 集中管理・制御型ネットワークの負荷規制制御システム
JP2776338B2 (ja) * 1995-10-03 1998-07-16 日本電気株式会社 ジョブスケジューリング方式
JPH09160887A (ja) * 1995-12-08 1997-06-20 Sanyo Electric Co Ltd 並列処理装置
US5943232A (en) * 1997-10-29 1999-08-24 Lucent Technologies Inc. Autonomous overload control for distributed real time systems

Also Published As

Publication number Publication date
US6134216A (en) 2000-10-17
KR100334871B1 (ko) 2002-10-11
CA2249691C (en) 2002-10-01
CA2249691A1 (en) 1999-04-29
EP0913772A2 (de) 1999-05-06
EP0913772B1 (de) 2007-08-08
JPH11265365A (ja) 1999-09-28
DE69838204D1 (de) 2007-09-20
KR19990037569A (ko) 1999-05-25
EP0913772A3 (de) 1999-06-23

Similar Documents

Publication Publication Date Title
DE69838204T2 (de) Integrierte Überlaststeuerung für verteilte Echtzeitsysteme
DE69725791T2 (de) Lastausgleichsgerät und -verfahren
DE69825118T2 (de) Autonome Überlaststeuerung für verteilte Echtzeitsysteme
DE60022151T2 (de) Auf Messungen basierendes Verwaltungsverfahren für paketorientierte Kommunikationsnetzwerke
DE69635092T2 (de) Verfahren zur Zugangssteuerung und Lenkung von Virtuelle Verbindungen
EP0940048B1 (de) Verfahren und routing-system zur dynamischen verkehrslenkung in einem kommunikationsnetz
DE69829759T2 (de) Verteilung von nachrichten zu dienststeuereinrichtungen
DE60301202T2 (de) Verfahren und vorrichtung zur verkehrssteuerung einer web-farm
DE69532842T2 (de) System und Verfahren für prädiktive abgehende Wahl
DE69533760T2 (de) Verbindungszulassungssteuerung in einem hochgeschwindigkeits-paketvermittlungsnetz
DE602004009732T2 (de) Verfahren und Vorrichtung zum Lastausgleich in einem Netzwerk von Servern basierend auf die Wahrscheinlichkeit der Bedienung innerhalb einer Bedienungssollzeit
DE4445800C1 (de) Verfahren zum Bilden von für die nachfolgende Vermittlung von Verkehrsbeziehungen vorgesehenen Routinginformationen in einem Kommunikationsnetz
EP0941619A1 (de) Verfahren und routing-system zur dynamischen verkehrslenkung in einem kommunikationsnetz
DE69629890T2 (de) ATM-Vermittlungssystem und Prioritätensteuerungsverfahren
DE4445734A1 (de) Verfahren zum Steuern der Überlast eines Hauptprozessors eines verteilten Vermittlungssystems mit einem hierarchischen Aufbau
DE2731829C3 (de) Zentralgesteuerte Fernmeldevermittlungs anlage
DE19755129A1 (de) Laststeuerung und Überlastschutz für ein Echtzeit-Kommunikationssystem
EP1149338B1 (de) Lastverteilungsverfahren eines multiprozessorsystems und multiprozessorsystem
DE4444790A1 (de) Verfahren zum Steuern der Überlast in einem zentral und verteilt arbeitenden Hybrid-Vermittlungssystem
EP0510222A1 (de) Verfahren zur Überlastabwehr bei einer Vermittlungsstelle eines Kommunikationsnetzes
EP1700434B1 (de) Verfahren zur bestimmung von grenzwerten für eine verkehrskontrolle in kommunikationsnetzen mit zugangskontrolle
EP2804134A2 (de) Verfahren und System zur Fuzzy-basierten Regelung einer Zuordnung von Ressourcen in einem System
DE69734878T2 (de) Atm-netzwerkverwaltung
DE4444156A1 (de) Verfahren zum Steuern der Überlast von verteilten Prozessoren eines vollelektronischen Vermittlungssystems
EP1817879B1 (de) Adaptives bandbreitenmanagementsystem für kapazitäts-tunnel zeitlich variabler verkehrsmatrizen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee