DE10034404A1 - Blockierungsüberwachung und Nachrichtenfluss-Steuerung in einem blockierenden Netzwerk - Google Patents

Blockierungsüberwachung und Nachrichtenfluss-Steuerung in einem blockierenden Netzwerk

Info

Publication number
DE10034404A1
DE10034404A1 DE10034404A DE10034404A DE10034404A1 DE 10034404 A1 DE10034404 A1 DE 10034404A1 DE 10034404 A DE10034404 A DE 10034404A DE 10034404 A DE10034404 A DE 10034404A DE 10034404 A1 DE10034404 A1 DE 10034404A1
Authority
DE
Germany
Prior art keywords
network
sending
node
packet
round trip
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.)
Ceased
Application number
DE10034404A
Other languages
English (en)
Inventor
Paul D Dinicola
Rama Krishna Govindaraju
Mandayam Thondanur Raghunath
Gautam H Shah
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 DE10034404A1 publication Critical patent/DE10034404A1/de
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • H04L47/115Identifying congestion using a dedicated packet

Abstract

Ein Verfahren, ein System und eine Programmspeichervorrichtung sind vorgesehen zum Überwachen und Verbessern der Blockierung in einem eng gekoppelten Netzwerk. Gleichzeitig mit dem Senden eines Pakets in das Netzwerk wird ein erster Zeitstempel aufgezeichnet. Bei Empfang einer Quittung zurück durch das Netzwerk als Reaktion auf das Senden des Pakets wird ein zweiter Zeitstempel aufgezeichnet. Die Umlaufzeit des Pakets wird bestimmt und ein Umfang der Blockierung wird eingeschätzt unter Verwendung der erfaßten Umlaufzeit und einer statisch vorgegebenen Umlaufzeit, repräsentativ für mindestens eine Neztwerk-Nichtblockierung oder ein bekanntes Ausmaß der Netzwerkblockierung. Die Anzahl der Flußsteuerungstoken für den Zielknoten kann dynamisch variiert werden als Reaktion auf das Abschätzen des Ausmaßes der Netzwerkblockierung. Falls gewünscht, können Überwachung und Abschätzung der Netzwerkblockierung erst nach der Identifizierung des Vorkommens der Netzwerkblockierung eingeleitet werden, zum Beispiel repräsentiert durch ein Fehlen von Flußsteuerungstoken an einem Sendeknoten für einen Zielknoten.

Description

Gegenstand der Erfindung
Die vorliegende Anmeldung betrifft Nachrichtenverarbeitungssysteme, und im einzelnen, Techniken zur Identifizierung und Minimierung von Blockierungen in einem dicht gekoppelten Nachrichtenverarbeitungssystem, das durch ein blockierendes Netzwerk zusammengeschaltet ist.
Zugrundeliegender Stand der Technik
Der Netzwerkverkehr in einem Nachrichtenverarbeitungssystem tendiert häufig dazu, daß er ungleich verteilt ist, was dazu führt, daß eine beträchtliche Menge Nachrichten durch eine kleine Untermenge des Netzwerks läuft. Dieses Ungleichgewicht der Belastung wird als "Netzwerkengpass" oder synonym als "Netzwerkblockierung" (congestion) bezeichnet. Herkömmlicherweise reagieren Netzwerkbestandteile (wie Router) auf Blockierung durch Abwerfen von Paketen. Die Kommunikations-Protokollstapel reagieren auf abgeworfene Pakete durch Reduzieren der Verkehrsrate, so daß die Belastung durch den blockierten Teil des Netzwerks auf eine akzeptable Rate absinkt. Solche Netzwerke werden paketabwerfende Netzwerke bezeichnet.
In Hochgeschwindigkeitsnetzen (z. B. bestimmte Schaltnetze) werfen Routers bei Auftreten einer Blockierung keine Pakete ab. Statt dessen wird Gegendruck auf die stromaufwärts stehenden Router des Netzwerks ausgeübt. Mit anderen Worten, Router blockieren den Verkehr anstatt Pakete abzuwerfen. Der Konstruktionspunkt Blockieren gegen Abwerfen wird gewählt, um sicherzustellen, daß die Kommunikationsprotokollstapel schneller arbeiten können, da die Stapel annehmen können, daß alle eingegebenen Pakete mit sehr hoher Wahrscheinlichkeit ihr Ziel erreichen. Diese enggekoppelten Netzwerke werden als Blockierende Netzwerke angesprochen.
Kurzbeschreibung und Vorteile der Erfindung
Blockierende Netzwerke bringen ein Problem im Hinblick auf Blockierungsvermeidung mit sich, weil das Kommunikationsprotokoll keinen Hinweis auf Verkehrsblockierung erhält (d. h. verlorene Pakete). Statt dessen führt die Blockierung zu verlängerten Durchlaufzeiten. Herkömmliche Netzwerkprotokolle wie TCP/IP reagieren auf verlängerte Durchlaufzeiten durch Verstärken der Menge des Netzwerkverkehrs, weil sie die verlängerte Durchgangszeit als eine längere Netzwerkpipeline interpretieren.
Bei blockierenden Netzwerken war die herkömmliche Lösung für die Blockierung ganz einfach, mit dem Problem zu leben, oder das Netzwerk in nichtüberlappende Abschnitte zu unterteilen, so daß eine Blockierung in einem Teil andere Teile nicht beeinflußt. Ein weiteres Schema ist das Benutzen virtueller Kanäle, um den Eindruck multipler unabhängiger Netzwerke zu schaffen, und die Blockierung innerhalb einer virtuellen Kanalebene zu halten.
Die Partitionierungsmethode läßt sich nur schwer anwenden, wenn unterschiedliche Applikationen zwischen den gleichen Knotensätzen verkehren müssen, oder die gleiche Anwendung mit unterschiedlichen Knotensätzen verkehren muß. Die virtuelle Kanallösung benötigt zusätzliche Hardwarebetriebsmittel in den Routern und ist daher im Umfang begrenzt.
Es ist erwünscht, Blockierungen in Blockierungsnetzen zu vermeiden, weil Netzwerkblockierung für alle Anwender des Netzwerks zu einem beträchtlichen Leistungsabfall führt. Insbesondere, wenn es zur Blockierung kommt, kann der gesamte Netzwerkverkehr, der durch den blockierten Bereich laufen muß, stark verlangsamt werden. Wenn unterschiedliche Verkehrstypen das gleiche blockierende Netzwerk benutzen, wirkt sich die Blockierung, die durch einen Verkehrstyp bewirkt wird, auch auf andere Verkehrstypen aus, was eindeutig unerwünscht ist.
Somit wird hier, in einem Aspekt, ein Verfahren zur Blockierungsüberwachung in einem Netzwerk, d. h. in einem Blockierungsnetzwerk gezeigt. Dieses Verfahren umfaßt: Senden eines Pakets in das Netzwerk, und damit im Zusammenhang, Aufzeichnung eines ersten Zeitstempels; Empfangen einer Quittung zurück durch das Netzwerk, als Reaktion auf das Senden des Pakets, und Aufzeichnen eines zweiten Zeitstempels mit dem Empfang der Quittung; Bestimmen einer Umlaufzeit des Pakets und Quittung durch das Netzwerk unter Verwendung des ersten Zeitstempels und des zweiten Zeitstempels, wobei die Umlaufzeit ein Anzeichen für das Ausmaß der Blockierung im Netzwerk ist; und Abschätzen des Ausmaßes der Blockierung im Netzwerk aufgrund der Umlaufzeit, wobei die Abschätzung das Vergleichen der bestimmten Umlaufzeit mit einer vorgegebenen Umlaufzeit enthält, die für keine Netzwerkblockierung oder für einen bekannten Grad der Netzwerkblockierung repräsentativ ist.
In einem weiteren Aspekt ist ein Verfahren zur Verbesserung der Blockierung in einem Netzwerk vorgesehen. Dieses Verfahren beinhaltet: Identifizieren, wenn das Netzwerk zwischen einem Sendeknoten und einem Zielknoten blockiert ist; anschließend an die Identifizierung Feststellen einer Umlaufzeit für ein Paket und eine entsprechende Rücklaufquittung, gesendet zwischen dem Sendeknoten und dem Zielknoten durch das Netzwerk; und Variieren der Anzahl der Flußsteuerungstoken am Sendeknoten zum Zielknoten mit Hilfe der festgestellten Umlaufzeit.
In noch einem anderen Aspekt ist ein System zum Überwachen der Blockierung in einem Netzwerk vorgesehen. Dieses System umfaßt Mittel zum Senden eines Pakets in das Netzwerk und zum Aufzeichnen eines ersten Zeitstempels auf dieser Grundlage, sowie Mittel zum Empfangen einer Quittung zurück durch das Netzwerk als Reaktion auf das Paket, und zum Aufzeichnen eines zweiten Zeitstempels beim Empfang der Quittung. Das System beinhaltet ferner: Mittel zum Bestimmen einer Rücklaufzeit des Pakets und die Quittung durch das Netzwerk unter Verwendung des ersten Zeitstempels und des zweiten Zeitstempels, wobei die Rücklaufzeit hinweisend auf das Ausmaß der Blockierung im Netzwerk ist; und Mittel zum Abschätzen des Ausmaßes der Blockierung im Netzwerk unter Verwendung der Rücklaufzeit, wobei das Mittel zum Abschätzen Mittel zum Vergleichen der bestimmten Rücklaufzeit mit einer vorgegebenen Rücklaufzeit enthält, die für keine Netzwerkblockierung oder für ein bekanntes Ausmaß der Netzwerkblockierung repräsentativ ist.
In noch einem anderen Aspekt ist ein System zum Verbessern der Blockierung in einem Netzwerk vorgesehen. Das System beinhaltet Mittel zum Identifizieren, wenn das Netzwerk zwischen einem Sendeknoten und einem Zielknoten blockiert ist, und Mittel zum Feststellen der Umlaufzeit eines Pakets und eine entsprechende Rücklaufquittung, die zwischen dem Sendeknoten und dem Zielknoten durch das Netzwerk gesendet wird im Anschluß an die Identifizierung, daß das Netzwerk blockiert ist. Das System beinhaltet ferner Mittel zum Variieren der Anzahl der Flußsteuerungstoken am Sendeknoten zum Zielknoten mit Hilfe der festgestellten Umlaufzeit.
In einem weiteren Aspekt umfaßt die Erfindung mindestens eine von einer Maschine lesbare Programmspeichervorrichtung, die materiell mindestens ein Programm mit Anweisungen beinhaltet, die von der Maschine ausführbar sind, zum Durchführen eines Verfahrens der Überwachung von Blockierungen in einem Netzwerk. Das Verfahren beinhaltet Senden eines Pakets in das Netzwerk und Aufzeichnen eines ersten Zeitstempels auf dieser Grundlage; Empfangen einer Quittung zurück durch das Netzwerk als Reaktion auf das Paket, und Aufzeichnen eines zweiten Zeitstempels beim Empfang der Quittung; Bestimmen einer Umlaufzeit des Pakets und der Quittung durch das Netzwerk unter Verwendung des ersten Zeitstempels und des zweiten Zeitstempels, wobei die Umlaufzeit hinweisend für das Ausmaß der Blockierung im Netzwerk ist; und Abschätzen des Ausmaßes der Blockierung im Netzwerk unter Verwendung der bestimmten Umlaufzeit, wobei die Abschätzung das Vergleichen der bestimmten Umlaufzeit mit einer vorgegebenen Umlaufzeit umfaßt, die für keine Netzwerkblockierung oder für einen bekannten Grad der Netzwerkblockierung repräsentativ ist.
In einem weiteren Aspekt beinhaltet die Erfindung mindestens eine von einer Maschine lesbare Programmspeichervorrichtung, die materiell mindestens ein Programm mit Anweisungen beinhaltet, die von der Maschine ausführbar sind, zum Durchführen eines Verfahrens zur Verbesserung der Blockierung in einem Netzwerk. Das Verfahren beinhaltet Identifizieren, wenn das Netzwerk zwischen einem Sendeknoten und einem Zielknoten blockiert ist; anschließend an die Identifizierung Feststellen einer Umlaufzeit eines Pakets und einer entsprechenden Rücklaufquittung, gesendet zwischen dem Sendeknoten und dem Zielknoten durch das Netzwerk; und Variieren der Anzahl der Flußsteuerungstoken am Sendeknoten für den Zielknoten mit Hilfe der festgestellten Umlaufzeit.
Mit anderen Worten: Hier vorgestellt wird ein Verfahren zum Überwachen und Minimieren der Blockierung in einem dicht gekoppelten (d. i. blockierenden) Netzwerk. Die Lösung umfaßt eine auf einem Protokoll beruhende Methode, die in existierenden blockierenden Netzwerken leicht implementiert werden kann. Herkömmliche Verfahren zum Vermeiden von Blockierungen auf der Grundlage verlorener Pakete sind auf blockierende Netzwerke nicht anwendbar, weil blockierende Netzwerke bei einer Blockierung keine Pakete abwerfen. Statt dessen verläßt sich das hier vorgestellte Verfahren auf eine beobachtete Umlaufzeit, die so zeitbestimmt ist, daß sie Blockierungen entdeckt und vermeidet. Daher gibt es keinen Aufwand für verlorene Pakete und Nachsenden verlorener Pakete zum Erfassen und Vermeiden oder Behebung von Blockierungen.
Vorteilhafterweise verbessert die hier vorgeführte Lösung Netzwerkblockierungen ohne die Notwendigkeit der Unterteilung des Netzwerks in Unterabschnitte. Ferner, wenn ein blockierendes Netzwerk nicht unterteilt wird und von einer Vielzahl von Applikationen gemeinsam benutzt wird, könnte eine einzige Applikation, die ein Netzwerk blockiert, auch andere Applikationen nachteilig beeinflussen, die zu diesem Zeitpunkt das Netzwerk benutzen. Die hier vorgestellte Lösung verhindert, daß das geschieht, durch Vermindern des Umstands, daß eine Applikation das Netzwerk für andere Applikationen blockiert.
Im Normalfall, wenn es keine Netzwerkblockierung gibt, verlangt die hier dargestellte Technik keinen Protokollaufwand in der Form von Zeitstempelerfassen usw. Erst wenn ein sendender Prozessor keine Flußsteuerungstoken mehr hat (d. h. bei Beginn einer Blockierung) fallen die Extrakosten für das Nehmen der Zeitstempel und Messen der Umlaufzeit an. Die durch das Netzwerk gesendeten Pakete brauchen keine zusätzlichen Daten zu befördern, um das Blockierungsvermeidungsschema der Erfindung zu implementieren. Die einzige Forderung ist, daß es eine Fähigkeit zum Anpassen des Pakets und für seine Quittierung gibt, was üblicherweise in den meisten Kommunikationsprotokollen auf der Sendeseite schon gegeben ist. Alle Zeitstempel und Umlaufzeit-Messungen erfolgen örtlich in einem Sendeknoten. Damit wird die Nutzlast je Paket nicht beeinträchtigt. Ferner besteht kein Bedarf zum Synchronisieren von Taktgebern zwischen Sendern und Empfängern. Die Taktgeber können weitgehend asynchron laufen, da Zeitabstände nur relativ zu einem Taktgeber am Sender gemessen werden. Die hier vorgestellte Lösung ist abstimmbar auf weitgehend unterschiedliche Netzwerkgrößen und weitgehend unterschiedliche Latenzzeiten durch eine geeignete Einstellung der Zeitverzögerungs- und Tokenzählparameter. Ferner ist es nur erforderlich, einmal je enggekoppelte Netzwerkkonfiguration abzustimmen. Die hier vorgestellte Lösung benötigt keine Koordinierung zwischen Applikationen, die das gemeinsame Netzwerk benutzen, um eine Blockierung zu erfassen und zu vermeiden. Zustandspflege zum Implementieren des vorgestellten Entwurfs ist für jede Applikation örtlich, was die Implementierung einfacher und wirksamer macht.
Kurzbeschreibung der Zeichnungen
Die oben beschriebenen Aufgaben, Vorteile und Merkmale der vorliegenden Erfindung sowie noch weitere werden leichter verständlich aus der nachstehenden detaillierten Beschreibung bestimmter bevorzugter Ausführungsformen der Erfindung, wenn sie anhand der begleitenden Zeichnungen betrachtet werden; in diesen ist
Fig. 1 ein beispielhaftes Nachrichtenverarbeitungssystem in Form eines Multiprozessor-Datenverarbeitungssystems mit einer Vielzahl von Prozessoren, die über ein Schaltnetz oder Kommunikationsmedium gekoppelt sind;
Fig. 2 ist ein Flußdiagramm einer Paketsenderoutine für das Multiprozessor-Datenverarbeitungssystem der Fig. 1, wobei bei jedem i-ten Paket Zeitstempel genommen werden, nachdem das Paketesenden aus Mangel an Flußsteuerungstoken blockiert wird, wobei i einstellbar ist; und
Fig. 3 ist ein Flußdiagramm einer Empfangsquittierungsroutine für das Multiprozessor- Datenverarbeitungssystem der Fig. 1, in dem Zeitstempel bei Empfang einer Quittung auf ein entsprechendes zeitgestempeltes i-tes Paket erhalten werden, eine Umlaufzeit (diff) bestimmt wird, und die Anzahl der Flußsteuerungstoken aufgrund der Umlaufzeit gesetzt wird.
Beschreibung der bevorzugten Ausführungsform der Erfindung
Ganz allgemein gesagt, die Netzwerk-Durchgangszeit wird hier als Indikator für die Blockierung des Netzwerks verwendet. Im Zusammenhang mit der vorliegenden Erfindung ist ein "blockierendes Netzwerk" ein eng gekoppeltes oder eng gesteuertes Verarbeitungsnetzwerk, wie z. B. das IBM RISC System/6000 Scalable POWERparallel Systems (SP) Distributed Computer System, das bei der International Business Machines Corporation in Armonk, New York, erhältlich ist. Da Protokolle in der Regel Pakete quittieren, die sie erhalten, wird ein Sendeprozessor angewiesen, beim Absenden eines Pakets an einen anderen Prozessor einen Zeitstempel aufzuzeichnen, und auch einen Zeitstempel aufzunehmen, wenn der absendende Prozessor eine entsprechende Quittung vom Paketempfänger erhält. Der Unterschied zwischen diesen zwei Zeitstempeln ist als "Umlaufzeit" definiert. Diese Umlaufzeit wird dann benutzt, um das Ausmaß der Netzwerkblockierung abzuschätzen.
Wenn z. B. die Umlaufzeit kürzer als ein Parameter E0 ist, wird angenommen, daß es keine Netzwerkblockierung gibt. Wenn die Umlaufzeit zwischen E0 und E1 liegt, dann kann die Blockierung als leicht bezeichnet werden, während bei einer Umlaufzeit zwischen E1 und E2 die Blockierung als mittel bezeichnet werden kann usw. Die Bestimmung der Zeiten E0, E1, E2, . . . (und die Anzahl der Flußsteuerungstoken L0, L1, L2, . . .) wird während der Ersteinstellung durchgeführt. Mit anderen Worten, als Teil der ersten Maschinengestaltgebung und Konfiguration wird die Blockierung als kontrollierte Fassung im Labor und eingeführt und die Umlaufzeiten werden für unterschiedliche Blockierungsausmaße gemessen.
Im Abhängigkeit vom Blockierungsausmaß kann ein Flußsteuerfenster (d. i. Anzahl der Flußsteuerungstoken) am Sendeprozessor für den bestimmten Zielprozessor festgelegt werden. Wenn die Zeit kürzer als E0 ist, dann wird das Flußsteuerfenster bzw. die Paket-Token auf L0 gesetzt. Hier ist anzumerken, daß die Begriffe "Flow control window (Flußsteuerungsfenster)" oder "Flow Control Tokens (Flußsteuerungstoken)" im Fachgebiet verstanden werden und eine Menge Daten enthalten, die ein sendender Prozessor an einen bestimmten Zielprozessor senden kann, bevor er eine Quittung zurück erhält, d. i. eine Wiederauffüllung der Paket-Token. Das Konzept des Flußsteuerfensters oder Token wird in vielen Kommunikationsprotokollen verwendet, einschließlich solcher zum Abwerfen von Netzwerken und Blockieren von Netzwerken. In den meisten blockierenden Netzwerken ist jedoch das Flußsteuerfenster oder die Anzahl der verfügbaren Token fest. Weitere Erklärungen des Begriffs Flußsteuerfenster oder Token siehe Bd. 1 einer illustrierten TCP/IP-Veröffentlichung von W. Richard Stevens, verlegt bei Addison-Wesley, erhältlich unter ISBN 0-201-63346-9, und Bd. 2 der Veröffentlichung von Gary R. Wright und W. Richard Stevens, erhältlich unter ISBN 0-201-63354-X.
Somit wird hier das Konzept des dynamischen Angleichens der Fenstergröße oder der Anzahl der Flußsteuerungstoken in Abhängigkeit von der Netzwerkblockierung dargestellt. Zum Beispiel, wenn die gemessene Umlaufzeit zwischen E0 und E1 liegt, dann wird die Anzahl Paket-Token auf L1 gesetzt usw. In diesem Beispiel wird angenommen, daß E0 < E1 < E2 . . ., und L0 < L1 < L2 . . . ist. Die Parameter E0, E1, E2 usw. und L0, L1, L2 usw. sind für eine bestimmte Systemgröße statisch bestimmt (d. i., vorgegeben). Das ist möglich, weil die Umlaufzeiten in einem blockierenden Netzwerk, wie oben definiert, mit großer Genauigkeit vorhergesagt werden können. Somit steht für das Netzwerk eine gute Abschätzung der Leerlauf-Umlaufzeit zur Verfügung. Einem solchen System kann ein TCP/IP-Netzwerk gegenübergestellt werden, in dem keine Abschätzung der Umlaufzeit möglich ist, weil eine gegebene Verbindung zu einem benachbarten Prozessor oder aber auch zu einem Prozessor auf der anderen Seite der Erde führen kann.
Als Erweiterung der oben diskutierten Konzepte ist es möglich, Zeitstempel auf Paketen und entsprechende Quittungen nur dann aufzuzeichnen, wenn das Netzwerk im Verdacht steht, blockiert zu sein, damit die Auswirkungen des Aufwands für die Vermeidung der Blockierung minimiert werden. Spezifisch kann das Kommunikationsprotokoll Zustandsinformationen beinhalten, die sagen, ob der bestimmte Pfad zu einem bestimmten Zielort blockiert oder nicht blockiert ist. Wenn das Protokoll seinen Verkehr zu einem bestimmten Ziel einstellen muß, weil das Protokoll keine Flußsteuerungstoken für diesen bestimmten Zielort mehr hat, dann setzt das Kommunikationsprotokoll des Senders den Netzwerkzustand zu diesem Ziel auf "blockiert". Wenn der Zustand blockiert ist, dann werden Zeitstempel genommen und die Umlaufzeiten werden bestimmt. Wieder werden die Umlaufzeiten vom Protokoll benutzt, um die Fenstergröße (oder Anzahl der Token) zu verändern, wie oben beschrieben wurde. Wenn die Umlaufzeit schließlich unter E0 absinkt (d. h. die vorgegebene Zeit ist repräsentativ für keine Netzwerkblockierung), setzt das Protokoll die Anzahl der Tokenpakete auf L0 (d. h. die vorgegebene maximale Zahl) und den Zustand auf "nicht blockiert". Dadurch wird der Aufwand beim Nehmen der Zeitstempel während einer normalen Operation eliminiert. Auch müssen nicht für jedes Paket Zeitstempel genommen werden, das nach dem Entdecken der Blockierung gesendet wird. Zum Beispiel ist es möglich, Zeitstempel dann nur bei jedem i-ten Paket zu nehmen, wenn i ≧ 2 ist und das ist einstellbar.
Das Verwenden der Umlaufzeit als Indikator für Netzwerkblockierung wird hier als nur näherungsweise erkannt, weil es andere Faktoren gibt, die die Umlaufzeit verlängern können. Zum Beispiel kann die Zielaufgabe, die mit einer Quittierung übereinstimmen muß, möglicherweise bestimmte Verarbeitungen ausführen müssen, z. B. eine Fehlseitenbedingung erfüllen, bevor sie der Quittung entsprechen kann. Jedoch wird der hier zusammengefaßte Mechanismus trotzdem arbeiten, weil die Umlaufzeit ein Maß für die Anspruchsfähigkeit der andren Seite ist, und es ist daher vorzuziehen, die in das Netzwerk gesendeten Pakete zu verlangsamen, wenn die andere Seite (d. i. der Zielprozessor) weniger leicht anspricht als erwartet.
Fig. 1 stellt ein beispielhaftes Nachrichtenverarbeitungssystem in der Form eines Multiprozessor-Datenverarbeitungssystems 10 mit einer Vielzahl von Prozessoren 12 1 . . . 12 j dar. Jeder Prozessor kann einen entsprechenden Kommunikationsadapter 14 zum Betreiben einer entsprechenden Verbindung 16 mit einem allgemein verbundenen Medium oder Schaltnetz 20 aufweisen. Im System kann auch ein Speichermedium 22 vorgesehen sein zum Halten und/oder zum Unterstützen von Applikationssoftware sowie aller einschlägigen Datenstrukturen, Protokolle usw.
Als ein Beispiel kann das Multiprozessor- Datenverarbeitungssystem 10 das oben angezogene IBM RISC System/600 Scalable POWERparallel Systems (SP) Distributed Computer System, erhältlich bei International Business Machines Corporation, umfassen. Als spezifisches Beispiel kann ein SP-Rechner insgesamt 8 Rahmen umfassen, wobei jeder Rahmen bis zu 16 Prozessorknoten, d. i. insgesamt 128 Prozessorknoten, haben kann. Jeder Prozessorknoten kann selbst einen Computer, wie eine RISC System/6000 Workstation, ebenfalls erhältlich bei International Business Machines Corporation, umfassen.
Alle Knoten eines Rahmens des SP-Computers sind enthalten in einem Lokalnetz-(LAN)-Segment, das mit den anderen LAN- Segmenten durch LAN-Gates verbunden ist. Ebenso verbunden mit dem lokalen Netz ist eine Steuer-Workstation (CWS - Control Work Station), die die Operation des SP-Computers steuert. Die Steuer-Workstation hat eine Speichervorrichtung mit direktem Zugriff (DASD - Direct Access Storage Device), die als gemeinsame Systemfestplatte (System Shared Disk) bezeichnet wird, auf der die System-Datenablage-(SDR System Data Repository)-Dateien gespeichert sind. Die SDR-Dateien beinhalten Informationen, wie eine Liste der Knoten, die im System enthalten sind, sowie deren Konfiguration, und beinhalten Ressourcen und Objektdefinitionen für jeden der Knoten. Jeder Knoten kann auch eine DASD-Vorrichtung zum Speichern von Daten enthalten, die vom SP-Computer bearbeitet werden. Wie im Fachbereich wohlbekannt, sendet der CWS-Knoten Systemdaten und Steuersignale an die Rahmen des SP-Computers mittels des lokalen Netzes, während Nachrichten und Daten mittels der Hochleistungsschalter von einem Prozessorknoten zum anderen geschickt werden. In einer solchen Umgebung kann jeder Prozessorknoten einen sendenden Prozessor enthalten und jeder Prozessorknoten kann einen Zielprozessor (d. h. Empfänger) enthalten, wie die Ausdrücke im Zusammenhang mit der vorliegenden Erfindung zu verstehen sind.
In Fig. 2 wird eine Sendepaketroutine 30 gezeigt, die das ursprüngliche Abrufen beinhaltet, ob der sendende Prozessor gegen das Absenden eines Pakets an einen bestimmten Zielort infolge fehlender Token 32 blockiert ist. Wenn ja, ruft das Kommunikationsprotokoll den sendenden Prozessor auf, zu warten, bis ein (oder mehr) Paket-Token 34 verfügbar wird. Einmal blockiert, wird ein "Blockierungszustand" gesetzt und der sendende Prozessor muß für jedes i-te Paket, das in das Kommunikationsnetzwerk an den bestimmten Zielprozessor 36 gesendet wird, einen Zeitstempel abrufen.
Nachdem ein Token verfügbar ist, 34, und ein Zeitstempel für das i-te Paket abgerufen wurde, 36, wird das Paket in das Netzwerk eingespeist, 38. Hier wird darauf hingewiesen, daß, wenn das Netzwerk nicht blockiert ist, die Paket-Sende- Routine des Kommunikationsprotokolls das Paket direkt in das Netzwerk einspeisen würde, 38, unter Verwendung eines verfügbaren Tokens. Nach Einspeisen des Pakets in das Netzwerk wird die herkömmliche Sendebearbeitung abgeschlossen, 40.
Fig. 3 zeigt das Kommunikationsprotokoll für eine Eingangs- Quittungsroutine, 50, die zunächst festlegt, ob das entsprechende Paket zeitgestempelt war, d. h., ob die Quittung entsprechend einem i-ten Paket, das nach dem Blockieren des sendenden Prozessors übertragen wurde, blockiert wurde, 52. Wenn nicht, wird die herkömmliche Quittungsverarbeitung durchgeführt, 54. Ansonsten wird ein Zeitstempel entsprechend dem Empfang der Quittung genommen, und die Umlaufzeit, die "diff", wird bestimmt durch Subtrahieren des Paketübertragungs-Zeitstempels T0 vom Quittungszeitstempel T1, 56.
Dann bestimmt das Protokoll, ob die Umlaufzeit (diff) kürzer ist als eine erwartete Umlaufzeit E0, wobei E0 so vorgegeben wird, daß sie eine Umlaufzeit im Netzwerk repräsentiert, die hinweisend auf das Fehlen einer Blockierung ist. Wenn "ja", wird die Anzahl der Token auf L0 gesetzt, das Protokoll stellt das Netzwerk-Flag auf "nicht blockiert" zurück und stoppt das Zeitstempeln jedes gesendeten i-ten Pakets, 60. Wenn die Umlaufzeit länger als die erwartete Umlaufzeit E0 ist, dann bestimmt das Protokoll als nächstes, ob die diff kürzer ist als ein zweiter statistisch bestimmter Wert E1, 62. Im vorliegenden Beispiel wird angenommen, daß E0 < E1 < E2 < . . . < En, und daß L0 < L1 < L2 < . . . < 1. Wieder setzt das Protokoll, wenn der Unterschied kleiner ist als E1, die Anzahl der Token auf den Wert L1, 64. Ansonsten bestimmt die Verarbeitung, ob der Unterschied kleiner als die nächste vorgegebene Höhe E2 ist, und wenn "ja" setzt sie die Anzahl der Token auf L2. Das Protokoll fährt auf diese Weise fort, bis es bestimmt, daß der Unterschied größer ist als eine vorgegebene Höhe En der Blockierung 70, in welchem Fall die Anzahl der Paket-Token auf 0 gesetzt wird, 72. Nach Setzen der Anzahl der Token wird die herkömmliche Quittungsverarbeitung abgeschlossen, 74.
Hier ist anzumerken, daß im obigen Beispiel n vorgegebene Werte oder Bereiche zum dynamischen Setzen der Anzahl Paket- Token benutzt werden, die vom Sendeprozessor beim Kommunizieren mit einem bestimmten Ziel eingesetzt werden, nachdem das Netzwerk als blockiert identifiziert wurde. Falls gewünscht, könnte dieses Konzept auch auf nur einen oder zwei vorgegebene Werte begrenzt werden (z. B. E0 und E1). Weil die oben zusammengefaßte Technik auf einem Protokoll basiert, kann sie leicht in bestehende blockierte Netzwerke implementiert werden. Der Fachmann bemerkt auch aus der gegebenen Beschreibung, daß der geoffenbarte Mechanismus im Zusammenhang mit jedem dicht gekoppelten oder dicht gesteuerten Netzwerk angewandt werden kann.
Die vorliegende Erfindung kann beispielsweise in einen gefertigten Artikel (z. B. ein oder mehr Rechnerprogramm- Produkte) eingebaut werden, die z. B. computerbenutzbare Medien aufweisen. Dieses Medium hat zum Beispiel computerlesbare Programmcodemittel integriert zum Vorsehen und Bewirken der Möglichkeiten der vorliegenden Erfindung. Die gefertigten Artikel können als Teil des Computersystems eingebaut oder auch gesondert verkauft werden.
Zusätzlich kann mindestens eine maschinenlesbare Programmspeichervorrichtung vorgesehen werden, die greifbar mindestens ein Programm mit von der Maschine ausführbaren Anweisungen beinhaltet, um die Möglichkeiten der vorliegenden Erfindung durchzuführen.
Die hier gezeigten Flußdiagramme sind beispielhaft vorgesehen. Die hier beschriebenen Diagramme oder Schritte (bzw. Operationen) können variiert werden, ohne von Umfang und Wesensart der Erfindung abzuweichen. Zum Beispiel können in bestimmen Fällen die Schritte in abweichender Reihenfolge ausgeführt werden oder Schritte können hinzugefügt, entfernt oder abgeändert werden. Alle diese Variationen gelten als Teil der vorliegenden Erfindung, wie sie in den beiliegenden Ansprüchen erklärt ist.
Zwar wurde die Erfindung hier anhand einiger bevorzugter Ausführungsformen detailliert beschrieben, jedoch kann der Fachmann Änderungen und Umgestaltungen vornehmen. Dementsprechend ist beabsichtigt, daß die beiliegenden Ansprüche alle diese Abänderungen und Umgestaltungen abdecken, die unter Umfang und Wesensart der Erfindung fallen.

Claims (41)

1. Ein Verfahren zur Überwachung der Blockierung in einem Netzwerk, wobei das Verfahren umfaßt:
Senden eines Pakets in das Netzwerk, und Aufzeichnung eines ersten Zeitstempels auf dieser Grundlage;
Empfangen einer Quittung zurück durch das Netzwerk, als Reaktion auf das Senden des Pakets, und Aufzeichnen eines zweiten Zeitstempels bei Empfang der Quittung;
Bestimmen einer Umlaufzeit des Pakets und Quittung durch das Netzwerk unter Verwendung des ersten Zeitstempels und des zweiten Zeitstempels, wobei die Umlaufzeit ein Hinweis für das Ausmaß einer Blockierung im Netzwerk ist; und
Abschätzen des Ausmaßes der Blockierung im Netzwerk aufgrund der bestimmten Umlaufzeit, wobei das Abschätzen das Vergleichen der bestimmten Umlaufzeit mit einer vorgegebenen Umlaufzeit enthält, die für keine Netzwerkblockierung oder für einen bekannten Grad der Netzwerkblockierung repräsentativ ist.
2. Das Verfahren gemäß Anspruch 1, in dem das Netzwerk ein blockierendes Netzwerk umfaßt.
3. Das Verfahren gemäß Anspruch 1, in dem das Senden das Senden des Pakets von einem Sendeknoten enthält, und in dem das Verfahren ferner das dynamische Festsetzen einer Anzahl Flußsteuerungstoken an dem Sendeknoten umfaßt, als Reaktion auf ein Ausmaß der Netzwerkblockierung, die durch die vorbestimmte Umlaufzeit repräsentiert wird.
4. Das Verfahren gemäß Anspruch 1, das ferner umfaßt das Vergleichen der vorgegebenen Umlaufzeit mit einer Vielzahl vorgegebener Umlaufzeiten, wobei jede vorgegebene Umlaufzeit repräsentativ für ein unterschiedliches Ausmaß der Netzwerkblockierung ist, und Setzen einer Anzahl Flußsteuerungstoken zur Anwendung beim Senden von Paketen von einem Sendeknoten zu einem Zielknoten, wobei der Sendeknoten das Paket zum Zielknoten sendet und von diesem dafür die Quittung erhält.
5. Das Verfahren gemäß Anspruch 4, in dem das Senden des Pakets die Verfügbarkeit eines Flußsteuerungstokens an dem Sendeknoten für den Zielknoten erfordert, und in dem das Verfahren ferner dynamisch das Festsetzen der Anzahl der Flußsteuerungstoken enthält, nachdem der Sendeknoten gegen das Senden eines Pakets infolge der Nichtverfügbarkeit eines Flußsteuerungstokens blockiert wurde.
6. Das Verfahren gemäß Anspruch 1, das ferner beinhaltet:
Identifizieren, daß das Netzwerk vor dem Registrieren des ersten Zeitstempels in einem blockierten Zustand ist, das Registrieren des zweiten Zeitstempels und die Bestimmung der Umlaufzeit.
7. Das Verfahren gemäß Anspruch 6, in dem diese Identifizierung das Bestimmen umfaßt, daß das Senden des Flußsteuerungspakets in das Netzwerk infolge des Fehlens von Flußsteuerungstoken zum Senden von Paketen zwischen einem Sendeknoten und einem Zielknoten blockiert wird.
8. Das Verfahren gemäß Anspruch 7, das ferner umfaßt:
Identifizieren, daß sich das Netzwerk nicht mehr im Blockierungszustand zwischen dem Sendeknoten und dem Zielknoten befindet, Unterbrechen des Verzeichnens des ersten Zeitstempels, des zweiten Zeitstempels, und des Bestimmens der Umlaufzeit, sobald das Netzwerk nicht mehr blockiert ist.
9. Ein Verfahren zum Verbessern einer Blockierung in einem Netzwerk, wobei dieses Verfahren beinhaltet:
Identifizieren, wenn das Netzwerk zwischen einem Sendeknoten und einem Zielknoten blockiert ist;
anschließend an die Identifizierung Feststellen einer Umlaufzeit für ein Paket und eine entsprechende Rücklaufquittung, gesendet zwischen dem Sendeknoten und dem Zielknoten durch das Netzwerk; und
Variieren einer Anzahl von Flußsteuerungstoken am Sendeknoten zum Zielknoten mit Hilfe der festgestellten Umlaufzeit.
10. Das Verfahren gemäß Anspruch 9, das ferner beinhaltet:
Wiederholen dieser Überprüfung und Abänderung für jedes i-te Paket, das durch das Netzwerk vom Sendeknoten zum Zielknoten gesendet wird, wobei i ≧ 1 ist.
11. Das Verfahren gemäß Anspruch 9, in dem die Identifizierung die Bestimmung beinhaltet, daß der Sendeknoten gegen das Senden eines Pakets zum Zielknoten infolge unzureichender Flußsteuerungstoken blockiert ist.
12. Das Verfahren gemäß Anspruch 11, in dem das Netzwerk ein blockierendes Netzwerk beinhaltet und das Variieren das Vergleichen der festgestellten Umlaufzeit mit mindestens einer vorgegebenen Umlaufzeit umfaßt, um das Ausmaß der Netzwerkblockierung festzustellen und davon die Anzahl der Flußsteuerungstoken festzusetzen.
13. Das Verfahren gemäß Anspruch 9, das ferner das Identifizieren umfaßt, wann sich das Netzwerk nicht mehr im Blockierungszustand zwischen dem Sendeknoten und dem Zielknoten befindet und danach Unterbrechen des Bestimmens der Umlaufzeit und des Variierens der Flußsteuerungstoken.
14. Ein System zum Überwachen der Blockierung in einem Netzwerk, wobei das System umfaßt:
Mittel zum Senden eines Pakets in das Netzwerk und zum Aufzeichnen eines ersten Zeitstempels auf dieser Grundlage;
Mittel zum Empfangen einer Quittung zurück durch das Netzwerk als Reaktion auf das Paket, und zum Aufzeichnen eines zweiten Zeitstempels beim Empfang der Quittung;
Mittel zum Bestimmen einer Umlaufzeit des Pakets und die Quittung durch das Netzwerk unter Verwendung des ersten Zeitstempels und des zweiten Zeitstempels, wobei die Umlaufzeit hinweisend für das Ausmaß einer Blockierung im Netzwerk ist; und
Mittel zum Abschätzen des Ausmaßes der Blockierung im Netzwerk unter Verwendung der Umlaufzeit, wobei das Mittel zum Abschätzen ein Mittel zum Vergleichen der bestimmten Umlaufzeit mit einer vorgegebenen Umlaufzeit enthält, die für keine Netzwerkblockierung oder für ein bekanntes Ausmaß der Netzwerkblockierung repräsentativ ist.
15. Das System gemäß Anspruch 14, in dem das Netzwerk ein blockierendes Netzwerk enthält.
16. Das System gemäß Anspruch 14, in dem das Mittel zum Senden Mittel zum Senden des Pakets von einem Sendeknoten umfaßt, und in dem das System ferner Mittel zum dynamischen Setzen einer Anzahl Flußsteuerungstoken am Sendeknoten als Reaktion auf den Umfang der Blockierung umfaßt.
17. Das System gemäß Anspruch 14, das ferner umfaßt Mittel zum Vergleichen der bestimmten Umlaufzeit mit einer Vielzahl vorgegebener Umlaufzeiten, wobei jede vorgegebene Umlaufzeit repräsentativ für ein unterschiedliches Ausmaß einer Netzwerkblockierung zwischen einem Sendeknoten und einem Zielknoten ist, und Mittel zum Setzen einer Anzahl von Flußsteuerungstoken zur Anwendung beim Senden von Paketen vom Sendeknoten zum Zielknoten, wobei der Sendeknoten, das Paket an den Zielknoten sendet und von diesem dafür die Quittung erhält.
18. Das System gemäß Anspruch 17, in dem das Senden des Pakets die Verfügbarkeit eines Flußsteuerungstokens am Sendeknoten für den Zielknoten erfordert, und in dem das System ferner Mittel zum dynamischen Setzen der Anzahl der Flußsteuerungstoken enthält, nachdem der Sendeknoten gegen das Senden eines Pakets infolge der Nichtverfügbarkeit eines Flußsteuerungstoken blockiert ist.
19. Das System gemäß Anspruch 14, das ferner beinhaltet:
Mittel zum Identifizieren, daß sich das Netzwerk vor dem Registrieren des ersten Zeitstempels in einem blockierten Zustand befindet, das Registrieren des zweiten Zeitstempels und die Bestimmung der Umlaufzeit.
20. Das System gemäß Anspruch 19, in dem dieses Mittel zur Identifizierung Mittel umfaßt zum Bestimmen, daß das Senden des Pakets in das Netzwerk infolge des Fehlens von Flußsteuerungstoken zum Senden von Paketen zwischen einem Sendeknoten und einem Zielknoten blockiert wird.
21. Das System gemäß Anspruch 20, das ferner Mittel enthält zum Identifizieren, wann sich das Netzwerk nicht mehr im Blockierungszustand zwischen dem Sendeknoten und dem Zielknoten befindet, und zum Unterbrechen des Verzeichnens des ersten Zeitstempels, des zweiten Zeitstempels, und des Bestimmens der Umlaufzeit, sobald das Netzwerk zwischen dem Sendeknoten und dem Zielknoten nicht mehr blockiert ist.
22. Ein System zum Verbessern einer Blockierung in einem Netzwerk, enthaltend:
Mittel zum Identifizieren, wann das Netzwerk zwischen einem Sendeknoten und einem Zielknoten blockiert ist;
Mittel zum Feststellen einer Umlaufzeit eines Pakets und eine entsprechende Rücklaufquittung, die zwischen dem Sendeknoten und dem Zielknoten durch ein Netzwerk gesendet wird, und im Anschluß an die Identifizierung, daß das Netzwerk zwischen ihnen blockiert ist; und
Mittel zum Variieren einer Anzahl von Flußsteuerungstoken am Sendeknoten zum Zielknoten mit Hilfe der festgestellten Umlaufzeit.
23. Das System gemäß Anspruch 22, das ferner Mittel enthält zum Wiederholen der Mittel zum Feststellen und der Mittel zum Variieren für jedes i-te Paket, das durch das Netzwerk vom Sendeknoten zum Zielknoten gesendet wird, wobei i ≧ 1 ist.
24. Das System gemäß Anspruch 22, in dem das Mittel zum Identifizieren Mittel zum Bestimmen beinhaltet, daß der Sendeknoten gegen das Senden eines Pakets vom Sendeknoten zum Zielknoten infolge unzureichender Flußsteuerungstoken blockiert ist.
25. Das System gemäß Anspruch 24, in dem das Netzwerk ein blockierendes Netzwerk beinhaltet, und in dem das Mittel zum Variieren Mittel zum Vergleichen der festgestellten Umlaufzeit mit mindestens einer vorgegebenen Umlaufzeit umfaßt, um das Ausmaß der Netzwerkblockierung festzustellen und danach die Anzahl der Flußsteuerungstoken festzusetzen.
26. Das System gemäß Anspruch 22, das ferner Mittel zum Identifizieren enthält, wann das Netzwerk nicht mehr zwischen dem Sendeknoten und dem Zielknoten blockiert ist, und im Anschluß daran, zum Unterbrechen des Bestimmens der Umlaufzeit und des Variierens der Anzahl der Flußsteuerungstoken.
27. Mindestens eine von einer Maschine lesbare Programmspeichervorrichtung, die materiell mindestens ein Programm mit Anweisungen verwirklicht, die von der Maschine ausführbar sind, zum Durchführen eines Verfahrens der Überwachung von Blockierungen in einem Netzwerk, enthaltend:
Senden eines Pakets in das Netzwerk und Aufzeichnen eines ersten Zeitstempels auf dieser Grundlage;
Empfangen einer Quittung zurück durch das Netzwerk als Reaktion auf das Paket, und Aufzeichnen eines zweiten Zeitstempels beim Empfang der Quittung;
Bestimmen einer Umlaufzeit des Pakets und der Quittung durch das Netzwerk unter Verwendung des ersten Zeitstempels und des zweiten Zeitstempels, wobei die Umlaufzeit hinweisend für das Ausmaß einer Blockierung im Netzwerk ist; und
Abschätzen des Ausmaßes der Blockierung im Netzwerk unter Verwendung der bestimmten Umlaufzeit, wobei die Abschätzung das Vergleichen der bestimmten Umlaufzeit mit einer vorgegebenen Umlaufzeit umfaßt, die für keine Netzwerkblockierung oder für einen bekannten Grad der Netzwerkblockierung repräsentativ ist.
28. Mindestens eine Programmspeichervorrichtung gemäß Anspruch 27, wobei das Netzwerk ein blockierendes Netzwerk umfaßt.
29. Die mindestens eine Programmspeichervorrichtung gemäß Anspruch 27, in dem das Senden das Senden des Pakets von einem Sendeknoten, und ferner das dynamische Setzen einer Anzahl Flußsteuerungstoken am Sendeknoten als Reaktion auf ein Ausmaß der Netzwerkblockierung, repräsentiert durch die bestimmte Umlaufzeit, umfaßt.
30. Die mindestens eine Programmspeichervorrichtung gemäß Anspruch 27, die ferner umfaßt das Vergleichen der bestimmten Umlaufzeit mit einer Vielzahl vorgegebener Umlaufzeiten, wobei jede vorgegebene Umlaufzeit repräsentativ für ein unterschiedliches Ausmaß einer Netzwerkblockierung ist, und Setzen einer Anzahl von Flußsteuerungstoken zur Anwendung beim Senden von Paketen von einem Sendeknoten zu einem Zielknoten, wobei der Sendeknoten das Paket an den Zielknoten sendet und von diesem die Quittung erhält.
31. Die mindestens eine Programmspeichervorrichtung gemäß Anspruch 30, in dem das Senden des Pakets die Verfügbarkeit eines Flußsteuerungstokens am Sendeknoten für den Zielknoten erfordert, und ferner das dynamische Setzen der Anzahl der Flußsteuerungstoken umfaßt, nachdem der Sendeknoten gegen das Senden eines Pakets infolge der Nichtverfügbarkeit eines Flußsteuerungstoken blockiert ist.
32. Die mindestens eine Programmspeichervorrichtung gemäß Anspruch 27, ferner enthaltend das Identifizieren, daß sich des Netzwerks vor dem Registrieren des ersten Zeitstempels in einem blockierten Zustand befindet, das Registrieren des zweiten Zeitstempels und die Bestimmung der Umlaufzeit.
33. Die mindestens eine Programmspeichervorrichtung gemäß Anspruch 27, in dem diese Identifizierung das Bestimmen umfaßt, daß das Senden des Flußsteuerungspakets in das Netzwerk infolge des Fehlens von Flußsteuerungstoken zum Senden von Paketen zwischen einem Sendeknoten und einem Zielknoten blockiert wird.
34. Die mindestens eine Programmspeichervorrichtung gemäß Anspruch 33, die ferner das Identifizieren umfaßt, wann sich das Netzwerk nicht mehr im Blockierungszustand zwischen dem Sendeknoten und dem Zielknoten befindet, und in Abhängigkeit davon, Unterbrechen des Verzeichnens des ersten Zeitstempels, des zweiten Zeitstempels, und des Bestimmens der Umlaufzeit.
35. Mindestens eine von einer Maschine lesbare Programmspeichervorrichtung, die materiell mindestens ein Programm mit Anweisungen verwirklicht, die von der Maschine ausführbar sind, zum Durchführen eines Verfahrens der Verbesserung der Blockierung in einem Netzwerk, enthaltend:
Identifizieren, wann das Netzwerk zwischen einem Sendeknoten und einem Zielknoten blockiert ist;
anschließend an die Identifizierung Feststellen einer Umlaufzeit eines Pakets und einer entsprechenden Rücklaufquittung, die zwischen dem Sendeknoten und dem Zielknoten durch das Netzwerk gesendete wurde; und
Variieren einer Anzahl von Flußsteuerungstoken am Sendeknoten für den Zielknoten mit Hilfe der festgestellten Umlaufzeit.
36. Die mindestens eine Programmspeichervorrichtung gemäß Anspruch 35, die ferner das Wiederholen dieser Überprüfung und Abänderung für jedes i-te Paket umfaßt, das über ein Netzwerk vom Sendeknoten zum Zielknoten gesendet wird, wobei i ≧ 1 ist.
37. Die mindestens eine Programmspeichervorrichtung gemäß Anspruch 35, in der die Identifizierung die Bestimmung beinhaltet, daß der Sendeknoten infolge der unzureichenden Flußsteuerungstoken gegen das Senden eines Pakets zum Zielknoten blockiert ist.
38. Die mindestens eine Programmspeichervorrichtung gemäß Anspruch 37, in der das Netzwerk ein blockierendes Netzwerk beinhaltet und das Variieren das Vergleichen der festgestellten Umlaufzeit mit mindestens einer vorgegebenen Umlaufzeit umfaßt, um das Ausmaß der Netzwerkblockierung festzustellen und danach die Anzahl der Flußsteuerungstoken festzusetzen.
39. Die mindestens eine Programmspeichervorrichtung gemäß Anspruch 35, die ferner das Identifizieren umfaßt, wann das Netzwerk nicht mehr zwischen dem Sendeknoten und dem Zielknoten blockiert ist, und anschließend Unterbrechen des Bestimmens der Umlaufzeit und des Variierens der Anzahl der Flußsteuerungstoken.
40. Ein Verarbeitungssystem, enthaltend:
Eine Vielzahl Verarbeitungknoten, wobei die Vielzahl Verarbeitungsknoten einen Sendeknoten und einen Zielknoten umfaßt;
ein Netzwerk, das die Vielzahl Prozessorknoten zum Übertragen von Paketen und Quittungen zwischen ihnen verkoppelt;
wobei der Sendeknoten einen Prozessor beinhaltet, der eingerichtet ist zum Senden eines Pakets durch das Netzwerk an den Zielknoten und Aufzeichnen eines ersten Zeitstempels auf dieser Grundlage;
Empfangen einer Quittung zurück durch das Netzwerk als Reaktion auf das Paket, und Aufzeichnen eines zweiten Zeitstempels beim Empfang der Quittung;
Bestimmen einer Umlaufzeit des Pakets und der Quittung durch das Netzwerk unter Verwendung des ersten Zeitstempels und des zweiten Zeitstempels, wobei die Umlaufzeit hinweisend auf das Ausmaß einer Blockierung im Netzwerk ist; und
Abschätzung des Ausmaßes der Blockierung im Netzwerk unter Verwendung der bestimmten Umlaufzeit, wobei die Abschätzung das Vergleichen der bestimmten Umlaufzeit mit einer vorgegebenen Umlaufzeit beinhaltet, die repräsentativ für keine Blockierung bzw. für ein bekanntes Ausmaß der Blockierung des Netzwerkes ist.
41. Ein Verarbeitungssystem, enthaltend:
Eine Vielzahl Verarbeitungknoten, wobei die Vielzahl Verarbeitungsknoten einen Sendeknoten und einen Zielknoten umfaßt;
ein Netzwerk, das die Vielzahl Prozessorknoten zum Übertragen von Paketen und Quittungen zwischen ihnen verkoppelt;
der Sendeknoten einen Prozessor beinhaltet, der eingerichtet ist zum:
Identifizieren, wann das Netzwerk zwischen dem Sendeknoten und dem Zielknoten blockiert ist;
im Anschluß an die Identifizierung, Feststellen einer Umlaufzeit des Pakets und der entsprechenden Quittung, die zwischen dem Sendeknoten und dem Zielknoten durch das Netzwerk gesendet wird; und
Variieren einer Anzahl Flußsteuerungstoken am Sendeknoten für den Zielknoten mit Hilfe der festgestellten Umlaufzeit.
DE10034404A 1999-07-29 2000-07-14 Blockierungsüberwachung und Nachrichtenfluss-Steuerung in einem blockierenden Netzwerk Ceased DE10034404A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/354,750 US6700876B1 (en) 1999-07-29 1999-07-29 Congestion monitoring and message flow control in a blocking network

Publications (1)

Publication Number Publication Date
DE10034404A1 true DE10034404A1 (de) 2001-03-01

Family

ID=23394755

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10034404A Ceased DE10034404A1 (de) 1999-07-29 2000-07-14 Blockierungsüberwachung und Nachrichtenfluss-Steuerung in einem blockierenden Netzwerk

Country Status (2)

Country Link
US (1) US6700876B1 (de)
DE (1) DE10034404A1 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002009331A2 (en) * 2000-07-20 2002-01-31 Thomson Licensing S.A. Multi-media jitter removal in an asynchronous digital home network
MXPA03000543A (es) * 2000-07-26 2003-06-02 Thomson Licensing Sa Retiro de vibracion de multimedia en una red domestica digital asincrona.
US7200111B2 (en) * 2000-08-31 2007-04-03 The Regents Of The University Of California Method for improving TCP performance over wireless links
US6901050B1 (en) * 2001-03-05 2005-05-31 Advanced Micro Devices, Inc. Systems and methods for flow-based traffic shaping
US20030112829A1 (en) * 2001-12-13 2003-06-19 Kamakshi Sridhar Signaling for congestion control, load balancing, and fairness in a resilient packet ring
US7418494B2 (en) 2002-07-25 2008-08-26 Intellectual Ventures Holding 40 Llc Method and system for background replication of data objects
US7474627B2 (en) * 2004-12-17 2009-01-06 Nortel Networks Limited Voice over internet protocol (VoIP) call admission and call regulation in a wireless network
US8036123B1 (en) * 2005-01-07 2011-10-11 Marvell International Ltd. Integrated circuit for network stress testing
US7649845B2 (en) * 2005-09-30 2010-01-19 Intel Corporation Handling hot spots in interconnection networks
US20080082708A1 (en) * 2006-09-29 2008-04-03 Kar Leong Wong Token hold off for chipset communication
US7821937B1 (en) 2007-06-29 2010-10-26 Symantec Corporation Network protocol with damage loss resilient congestion control algorithm
US8233391B2 (en) * 2007-08-21 2012-07-31 International Business Machines Corporation System, method and computer program product for transmitting data entities
US9647950B2 (en) * 2015-05-11 2017-05-09 Ebay Inc. System and method of site traffic control
CN111510338B (zh) * 2020-03-09 2022-04-26 苏州浪潮智能科技有限公司 一种分布式块存储网络亚健康测试方法、装置及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5193151A (en) 1989-08-30 1993-03-09 Digital Equipment Corporation Delay-based congestion avoidance in computer networks
US5029164A (en) 1990-04-13 1991-07-02 Digital Equipment Corporation Congestion avoidance in high-speed network carrying bursty traffic
DE69330661T2 (de) 1992-04-27 2002-06-27 Nippon Telegraph & Telephone Paketnetzwerk und Verfahren zur Vermeidung von Überlastung eines solchen Netzwerks
US5276677A (en) 1992-06-26 1994-01-04 Nec Usa, Inc. Predictive congestion control of high-speed wide area networks
GB9402210D0 (en) 1994-02-04 1994-03-30 British Telecomm A method of communicating between nodes in a communications network
US5563875A (en) 1995-07-10 1996-10-08 International Business Machines Corporation Wrap-around route testing in packet communications networks
JP3388511B2 (ja) 1996-02-19 2003-03-24 日本電信電話株式会社 輻輳制御方法
US6038216A (en) * 1996-11-01 2000-03-14 Packeteer, Inc. Method for explicit data rate control in a packet communication environment without data rate supervision
US6292465B1 (en) * 1997-05-27 2001-09-18 Ukiah Software, Inc. Linear rule based method for bandwidth management

Also Published As

Publication number Publication date
US6700876B1 (en) 2004-03-02

Similar Documents

Publication Publication Date Title
DE69937241T2 (de) Vorrichtung zur messung der last eines netzwerkservers und berät und verfahren zur zuordnung
DE602005002006T2 (de) Verfahren und Vorrichtung zur Ermittlung der verfügbaren Bandbreite in einem Datenpaketnetzwerk
DE69827053T2 (de) Verfahren zur Zuteilung von Betriebsmitteln in einem digitalen Datenübertragungsnetzwerk
DE69636029T2 (de) Verfahren und Vorrichtung zur Datenübertragung
DE69927252T2 (de) Auf der Überwachung der Belegung von Puffern basierte Planung der Netzwerkkapazität
DE10034404A1 (de) Blockierungsüberwachung und Nachrichtenfluss-Steuerung in einem blockierenden Netzwerk
DE602005003142T2 (de) Vorrichtung und verfahren zur unterstützung von verbindungsherstellung in einem offload der netzwerkprotokollverarbeitung
DE69637275T2 (de) Verfahren zur auf Quittung basierten Flusssteuerung
DE60038538T2 (de) Vermittlungseinrichtung und Vermittlungsverfahren
DE60224713T2 (de) Signaturvergleichsverfahren und vorrichtungen zur durchführung der netzwerkdiagnose
DE60024228T2 (de) Dynamische zuweisung verkehrsklassen an einer prioritätswarteschlange in einer paketbeförderungsvorrichtung
DE602004004831T2 (de) Verfahren und Vorrichtung zur Ablauffolgeplanung von Paketen auf einer Netzwerkverbindung mit einer auf der Eingangsrate basierenden Priorität
DE3803326C2 (de)
DE60301202T2 (de) Verfahren und vorrichtung zur verkehrssteuerung einer web-farm
DE60302045T2 (de) Verfahren und System zur geordneten dynamischen Verteilung von Paketströmen zwischen Netzwerkprozessoren
DE102007038964A1 (de) Verfahren und Vorrichtung zum Verarbeiten von Netzwerkdaten
WO2002025821A2 (de) Verfahren zur messung von unidirektionalen übertragungseigenschaften in einem datennetz
DE19652541A1 (de) Nachrichtendatenflußdosierungsverfahren
EP0419959A2 (de) Schaltungsanordnung zum Überprüfen der Einhaltung festgelegter Übertragungsbitraten bei der Übertragung von Nachrichtenzellen
DE60132360T2 (de) Verwaltung von netzwerk-verkehr durch anwendung einer hashfunktion
DE112019003854T5 (de) Flusssteuerungssichtbarkeit
DE112019001647T5 (de) Netzwerk-Überlastungsverwaltung
DE60310146T2 (de) System und Methode zur Überwachung, mit geringer Zusatzinformation, des Leerzustandes der Senderwarteschlange
DE60210356T2 (de) Verwalter von Dienststufenübereinkommen in einem Datennetz
DE112011105003T5 (de) Sendevorrichtung, Empfangsvorrichtung, Kommunikationsvorrichtung, Kommunikationssystem und Sendeverfahren

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection