DE69937241T2 - Vorrichtung zur messung der last eines netzwerkservers und berät und verfahren zur zuordnung - Google Patents

Vorrichtung zur messung der last eines netzwerkservers und berät und verfahren zur zuordnung Download PDF

Info

Publication number
DE69937241T2
DE69937241T2 DE69937241T DE69937241T DE69937241T2 DE 69937241 T2 DE69937241 T2 DE 69937241T2 DE 69937241 T DE69937241 T DE 69937241T DE 69937241 T DE69937241 T DE 69937241T DE 69937241 T2 DE69937241 T2 DE 69937241T2
Authority
DE
Germany
Prior art keywords
server
load
client
communication
connection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69937241T
Other languages
English (en)
Other versions
DE69937241D1 (de
Inventor
Eiichi-Fujitsu Limited Kawasaki-shi TAKAHASHI
Takeshi Tama-shi AOKI
Ken-Fujitsu Limited Kawasaki-shi YOKOYAMA
Shinji-Fujitsu Limited Kawasaki-shi KIKUCHI
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Application granted granted Critical
Publication of DE69937241D1 publication Critical patent/DE69937241D1/de
Publication of DE69937241T2 publication Critical patent/DE69937241T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • 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/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • 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/43Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]
    • H04L47/431Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR] using padding or de-padding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1017Server selection for load balancing based on a round robin mechanism
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0847Transmission error
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/10015Access to distributed or replicated servers, e.g. using brokers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs

Landscapes

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

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft im Allgemeinen das Aufteilen von Serverressourcen und insbesondere ein Verfahren zum Aufteilen von Diensten auf Server, um Netzwerkdienste durchzuführen.
  • Stand der Technik
  • Mit einer schnellen Ausbreitung des Internets und Intranets in den letzten Jahren wurden eine effiziente Verwendung und Dienststabilität eines Netzwerkdienstservers erforderlich. Ein optimales Aufteilen der Dienste auf die Server ist für die effiziente Verwendung und stabile Dienstversorgung der Server unbedingt notwendig, und, um diese optimale Aufteilung zu erreichen, ist es erforderlich, dass eine Belastung des Servers genau erkannt wird.
  • Die folgenden sind im Stand der Technik bekannte Verfahren zum Erkennen der Belastung des Servers.
  • (1) Agentenverfahren
  • Dies ist ein Verfahren, in welchem ein Programm zum Zählen einer Aktivitätskennzahl von Ressourcen, wie z.B. einer CPU, eines Speichers etc., auf dem Server installiert ist. Wenn ein Agent selbst die Serverbelastung erhöht und mit Außen kommuniziert, tritt eine Interferenz mit einer Belastungsmessgenauigkeit durch den Agenten auf, wie z.B. das Verbrauchen eines Bands dafür. Des Weiteren muss das Agentenprogramm auf dem Server installiert werden, und infolgedessen tritt ein Problem auf, dass keine Mehrzweckcharakteristik und hohe Instruktionskosten vorhanden sind.
  • (2) Belastungsmessungskommunikationsverfahren
  • Dies ist ein Verfahren zum Ausgeben eines Pingbefehls an den Server und Durchführen einer Pseudodienstkommunikation damit, und zum Erhalten einer Serverbelastung aus einer Antwortzeit. Die Kommunikation für die Messung verbraucht jedoch ein Band auf der Strecke, und der Server wird auch mit einer Last für die Antwort belastet, was zu einer Interferenz mit der Belastungsmessung führt. Des Weiteren muss der Server ein Protokoll etc. unterstützen, welches für die Messung verwendet wird, und es besteht weiterhin das Problem, dass keine Mehrzweckcharakteristik vorhanden ist.
  • (3) Zählverfahren von VC-Zählung, Verbindungszeit, Verbindungsfrequenz, Verbindungsfehlerrate und Antwortzeit
  • Dies ist ein Verfahren zum Erhalten der Serverbelastung aus einer VC-Zählung, einer Verbindungszeit, einer Verbindungsfrequenz, einer Verbindungsfehlerrate und einer Antwortzeit in Bezug auf den Server, welche während eines Routingprozesses in einem Router zum Leiten eines Pakets von einem Client zum Server gezählt werden. Dieses Verfahren basiert jedoch auf einem Verhalten des Servers, wenn die Verbindung hergestellt wird, und daher ist ein Fehler groß. Eine große Anzahl von Verbindungen ist notwendig, um die Genauigkeit zu verbessern, so dass dieses Verfahren nicht für die Dienste geeignet ist, bei denen eine große Menge von Kommunikationen mit einer geringen Anzahl von Verbindungen durchgeführt wird. Des Weiteren ist das Routing unbedingt notwendig und infolgedessen besteht ein Problem darin, dass ein Durchsatz des Servers durch einen Durchsatz des Zählverfahrens beschränkt ist.
  • (4) Trefferzählungs-/Trefferratenberechnungsverfahren
  • Dies ist ein Verfahren, bei dem eine Zugriffszählung (Trefferzählung) und eine Zugriffsfrequenz (Zugriffsrate) pro Inhalt gezählt werden, wie z.B. eine Zugriffszieldatei, indem die Pakete an einen WWW-Server überprüft werden, und die Serverbelastung wird aus einem Ergebnis dieser Zählung erhalten. Dieses Verfahren benötigt einen Paketanalysierungsprozess pro Protokoll zum Spezifizieren der Zugriffszieldatei und ist nicht in der Lage, sich auf einen neuen Dienst zu beziehen. Außerdem muss eine Leistung des Servers bereits bekannt sein. Es gibt keine Alternative außer die Serverleistung aus Katalogwerten oder empirisch zu erhalten, um die Serverleistung im Voraus anzugeben. Die Serverleistung wird jedoch zum größten Teil durch eine Systemarchitektur und einen Betriebsmodus beeinflusst. Daher besteht ein Problem darin, dass der Katalogleistungswert basierend auf der Standardarchitektur und -Modus nicht präzise ist, und zumindest ein Problem unvermeidbar ist, wenn sie empirisch erhalten werden.
  • Wie oben erklärt sind alle Verfahren nicht in der Lage, die Serverbelastung effizient bei einer hohen Geschwindigkeit zu erkennen, ohne dem Server eine Last aufzuerlegen.
  • Des Weiteren kann die Serverbelastung nicht so genau erkannt werden, und es ist daher schwierig die Dienste zuzuteilen, welche durch den Server bereitgestellt werden.
  • Die folgenden Verfahren werden nur bezüglich des Aufteilens der Dienste vorgeschlagen.
  • (5) Round-Robin-DNS-Verfahren
  • Dies ist ein Verfahren, worin, in DNS- (Domain Name System) Diensten, ein Mapping eines Domainnamens auf eine Mehrzahl von IP-Adressen des Servers in einer Eintragungstabelle festgelegt wird, in Antwort auf eine Anforderung des Client für eine Abfrage der IP-Adresse des Servers, die jeweiligen Server entsprechend der Eintragungstabelle zyklisch zugeteilt werden (Round Robin), und die LP-Adresse des zugeteilten Servers ausgewählt wird, um dem Client zu antworten, wodurch die Dienste auf die Mehrzahl von Servern aufgeteilt werden.
  • Gemäß diesem Round-Robin-DNS-Verfahren können die Dienste jedoch nur bei einer gleichen oder einfachen Dienstaufteilungsrate aufgeteilt werden, und jeder Server muss den Dienst in Übereinstimmung mit der Aufteilungsrate durchführen, die ungeachtet seiner Leistungsfähigkeit und dynamischen Belastungszustand zugeteilt wird. Daher besteht ein Unterschied beim Belastungszustand zwischen den Servern, und das Verfahren ist im Ganzen ineffizient. Des Weiteren werden Teile einer DNS-Abfrageinformation normalerweise auf der Clientseite in den Cache kopiert, und infolgedessen besteht ein Problem darin, dass, selbst wenn sich die Rate ändert, diese Änderung nicht sofort reflektiert werden kann.
  • (6) Aufteilungsverfahren, das eine Hashtabelle verwendet
  • Dies ist ein Verfahren zum Zuteilen von Einträgen in einer Hashtabelle zum Verwalten der Verbindungen zu den Servern, und die Dienste werden mit einer Rate auf die Server aufgeteilt, welche der Anzahl von Einträgen entspricht, die zuzuteilen sind.
  • In diesem Verfahren, wenn der Client den Dienst anfordert, wird zunächst der Eintrag sowohl aus der Clientadresse als auch dem Dienst bestimmt. Diese Anforderung wird an den Server gesendet, dem dieser Eintrag zugeteilt ist. Dann werden die Dienste, deren Anzahl einer Kennzahl der Anzahl zugeteilter Einträge entspricht, auf die Server aufgeteilt. Somit wird die effiziente Verwendung der Server aktualisiert durch Zuteilen der vielen Einträge an den Hochleistungsserver oder durch Neuzuteilen der Einträge an den Server mit der hohen Belastung an Server mit einer vergleichsweise geringen Belastung.
  • Gemäß diesem Aufteilungsverfahren, welches die Hashtabelle verwendet, ist jedoch eine Hashfunktion zum Erzeugen eines Hashwerts ohne Tendenz (engl. bias) notwendig, um eine Kennzahl der Anzahl von Hasheinträgen in der Dienstaufteilungsrate richtig zu reflektieren. Im Allgemeinen ist es jedoch nicht möglich, die Hashfunktion zum Erzeugen des Hashwerts ohne Tendenz herauszufinden, in Bezug auf alle Verteilungsarten von Hashschlüsseln (Clientadresse, Port nummern, etc.). Des Weiteren ist die Genauigkeit der Aufteilungsrate proportional zu der Anzahl von Hasheinträgen, und infolgedessen wird eine Vielzahl von Einträgen benötigt, um die Genauigkeit zu verbessern, was zu einem erhöhten Verbrauch von Speicherressourcen (Puffern) führt, die einsetzbar sind, um die Verbindungen zu verwalten. Dort entsteht das Problem, dass eine große Anzahl von Zugriffen nicht bearbeitet werden kann.
  • (7) Aufteilungsverfahren basierend auf einem Zustand und einer Leistung des Servers
  • Dies ist ein Verfahren zum Aufteilen der Dienste, deren Anzahl der Belastung und einer Leistungskennzahl entspricht, durch Vorhersagen eines Ausmaßes der Serverbelastung oder Vorhersagen einer Leistungskennzahl zwischen den Servern, durch Zählen einer Antwortzeit, indem der Pingbefehl an den Server ausgegeben und eine Verbindungszeit und eine Verbindungsfehlerrate während einem Routingprozess durch Leiten des Pakets von dem Client gezählt wird.
  • Gemäß diesem Verfahren sind jedoch die Dienste für jeden Client gleichmäßig auf die Server aufgeteilt, ohne Rücksicht auf einen Durchsatz des Clients, einer Länge der Strecke zum Client und einer Bandbreite, so dass die Verwendungseffizienz des Servers nicht maximiert werden kann.
  • Ein Unterschied in der Leistung (insbesondere einer Geschwindigkeit) und der Belastung des Servers zeigen sich dem Client, dessen Strecke aufgrund einer kleinen oder großen Bandbreite der Strecke eine Engstelle ist, und dem Client mit einem geringen Durchsatz nicht in der QoS (Dienstgüte, engl. Quality of Service).
  • Umgekehrt nimmt der Unterschied in der Leistung und der Belastung des Servers einen großen Einfluss auf eine QoS für den Client, der an eine nahe und Hochgeschwindigkeitsleitung angeschlossen ist, oder für den Client, der einen hohen Durchsatz aufweist. Wenn dies der Fall ist, be steht ein Problem darin, dass, wenn versucht wird, alle Dienste für die Clients gleichmäßig aufzuteilen, daraus folgt, dass mehr Serverressourcen aufgeteilt werden als für die Clients benötigt werden, oder nicht anderes übrig bleibt als die ungenügenden Serverressourcen aufzuteilen.
  • US-A-5459837 (Caccavale; DEC) verwendet Sonden zwischen den Clients in einem "Broker Performance Mechanism" und führt Servergrundfunktionen aus, um eine Serverbelastung zu überwachen. US-A-5341477 von Pitkin et al. (DEC) wählt Server basierend auf einem Modellierungsverfahren aus. Der Artikel "Network Dispatcher: a connection router for scalable Internet services", Computer Networks and ISDN systems 30 (1998), Seiten 347–357, von Hunt et al. (IBM), beschreibt ein System zum Bearbeiten großer Internetbelastungen.
  • Wie oben beschrieben sind die Probleme im Stand der Technik inhärent, sowohl in dem Erkennungsverfahren einer Serverbelastung als auch dem Serveraufteilungsverfahren.
  • Die vorliegende Erfindung, die entwickelt wurde, um die obigen Probleme zu vermeiden, zielt darauf ab, die Serverbelastung bei hoher Geschwindigkeit effizient zu erkennen, ohne dem Server eine Last aufzuerlegen, wobei die Dienste in Übereinstimmung mit dem dynamischen Belastungszustand im Server aufgeteilt werden, wobei die Dienstaufteilungsrate genau reflektiert wird, welche durch ein Festlegen und das Anpassen der Dienstaufteilung erhalten wird, und wobei die Verwendungseffizienz des Servers maximiert wird, indem die Dienste durch Vorhersagen der notwendigen Serverressourcen für jeden Client aufgeteilt werden.
  • Die vorliegende Erfindung ist in den Ansprüchen 1 und 8 als ein Verfahren, in Anspruch 10 als ein System und in Anspruch 11 als eine Vorrichtung definiert.
  • In einem Verfahren der vorliegenden Erfindung umfasst ein Erkennungsverfahren für eine Netzwerkserverbelastung einen Schritt zum Überwachen einer Kommunikation von einem Client zu einem Server, und Zählen einer Kommunikationsdatengröße pro Verbindung als eine Belastung des Servers, einen Schritt zum Erkennen einer Änderung der Kommunikationsdatengröße pro Verbindung, und Aufzeichnen eines Maximalwerts davon, und einen Schritt zum Beurteilen, wenn die Kommunikationsdatengröße pro Verbindung zu diesem Zeitpunkt in Bezug auf den Maximalwert abnimmt, dass der Server unter einer hohen Last ist.
  • Gemäß TCP (Transmission Control Protocol) etc. teilt der Server pro Verbindung die Speicherressourcen (Puffer) zum Speichern der Paketdaten gleichmäßig auf, die von den Clients übermittelt werden. Bei einem nächsten Empfang teilt der Server dem Client eine Datengröße mit, die in der Speicherressource (Puffer) gespeichert werden kann, und der Client sendet die Daten an den Server, welche die Größe besitzen, die der Server mitgeteilt hat. Dementsprechend ist der Server, wenn er eine hohe Belastung erreicht, nicht in der Lage, die Daten sofort zu verarbeiten, die von dem Client gesendet werden, und infolgedessen bleiben alle oder einige Teile der Daten in der Speicherressource (Puffer) des Servers gespeichert. Demzufolge hat der Server keine Alternative außer dem Client eine Datengröße kleiner mitzuteilen, durch die Daten, die in der Speicherressource (Puffer) gespeichert bleiben.
  • Dementsprechend wird die Datengröße pro Verbindungszeit auf der Kommunikationsleitung erkannt, wodurch der Hochbelastungszustand des Servers erkannt wird.
  • Gemäß einem zweiten Merkmal kann das Erkennungsverfahren für eine Netzwerkserverbelastung gemäß dem ersten Aspekt des Weiteren einen Schritt zum Zählen einer Verbindungszählung und der Kommunikationsdatengröße umfassen, bis eine Zählung überwachter Kommunikationen eine Mindestzählung überwachter Kommunikationen erreicht und bis eine Zäh lungszeit eine Überwachungsmindestzeit erreicht, durch Verwendung der Mindestzahlung überwachter Kommunikationen und der Überwachungsmindestzeit.
  • Gemäß einem dritten Merkmal kann das Erkennungsverfahren für eine Netzwerkserverbelastung gemäß dem ersten Aspekt des Weiteren einen Schritt zum Erkennen der Kommunikationen eines Starts und Endes der Verbindung, und Ausschließen von Kommunikationsdatengrößen des Starts und Endes der Verbindung von einem Belastungserkennungsziel umfassen.
  • Die Kommunikationsdaten eines Starts und eines Endes der Verbindung, welche klein sind und nicht von der Serverbelastung abhängen, werden daher vom Zählen einer Gesamtkommunikationsdatengröße ausgeschlossen, wodurch sich ein Effekt einer Verbesserung der Genauigkeiten des Messens der Last und des Beurteilens der hohen Belastung ergibt.
  • Gemäß einem vierten Merkmal kann das Erkennungsverfahren für eine Netzwerkserverbelastung gemäß dem ersten Aspekt des Weiteren einen Schritt zum Beibehalten von Information der Kommunikation des Starts der Verbindung umfassen, bis die Verbindung beendet oder hergestellt ist, einen Schritt zum Erkennen der Kommunikation des Starts der Verbindung für eine erneute Verbindung umfassen, der ausgeführt wird, wenn beurteilt wird, dass sich der Client nicht basierend auf der beibehaltenen Information verbindet, und einen Schritt zum Festlegen einer Rate umfassen, bei welcher die Kommunikation der erneuten Verbindung die Anzahl der Kommunikationen des Starts einer Verbindung als eine Last des Servers belegt, und, wenn diese Rate hoch ist, Beurteilen, dass der Server unter einer hohen Last ist.
  • Wenn die Serverbelastung hoch ist, kommt der Server nicht dazu, eine Antwortmitteilung auf die Verbindungsanforderung, die vom Client gemacht wird, zurückzusenden. Dementsprechend kommt der Client dazu, die Verbindungsan forderung erneut zu übermitteln. Dementsprechend kann die hohe Belastung des Servers beurteilt werden, indem die erneute Übermittlung der Verbindungsanforderung durch den Client auf der Kommunikationsleitung erkannt wird.
  • Gemäß einem fünften Merkmal kann das Erkennungsverfahren für eine Netzwerkserverbelastung gemäß dem ersten Aspekt des Weiteren einen Schritt zum Erhalten einer Verteilung der Kommunikationsdatengrößen von den Clients umfassen, einen Schritt zum Unterscheiden zwischen extrem kleinen Teilen von Kommunikationsdaten, die nicht mit der Belastung des Servers in Beziehung stehen, von der Kommunikationsdatengrößenverteilung umfassen, und einen Schritt zum Eliminieren der extrem kleinen Teile von Kommunikationsdaten von der Beurteilung über die Belastung umfassen.
  • Es ergibt sich ein Effekt einer Verbesserung der Genauigkeiten des Messens der Belastung und des Erkennens der hohen Belastung durch Ausschließen der extrem kleinen Teile von Kommunikationsdaten vom Zählen, die nicht mit der Serverbelastung in Beziehung stehen.
  • Gemäß einem sechsten Merkmal kann das Erkennungsverfahren für eine Netzwerkserverbelastung gemäß dem ersten Aspekt des Weiteren einen Schritt zum Erhalten mindestens einer Laufnummer aus der Kommunikation von dem Client zu dem Server umfassen, einen Schritt zum Beibehalten eines Maximalwerts der Laufnummer umfassen, bis die Verbindung beendet ist, von dem Verbindungsstart an, einen Schritt zum Vergleichen der Laufnummer der empfangenen Kommunikation mit der beibehaltenen Laufnummer umfassen, und einen Schritt zum Ausschließen dieser Kommunikation vom Zählen umfassen, wenn die Laufnummer, die aus der Kommunikation erhalten wird, kleiner ist als die beibehaltene Laufnummer.
  • Die Laufnummern sind normalerweise in der aufsteigenden Reihenfolge angeordnet, jedoch, wenn eine Kommunikation sequentiell zerstört wird oder verloren geht, aufgrund ei ner Überlastung auf der Kommunikationsleitung, wird die aufsteigende Reihenfolge durcheinander gebracht. Der Server kann die Daten nach den Daten nicht verarbeiten, die noch nicht angekommen sind, und infolgedessen wird eine Datengröße, die durch den Server empfangen werden kann, ungeachtet der Serverbelastung klein. Dann steigt eine Kommunikationsdatengröße des Clients entsprechend an. Es wird ein Effekt einer Verbesserung der Genauigkeiten des Messens der Serverbelastung und des Erkennens der hohen Last erzeugt, indem der Einfluss der Strecke mit dem oben beschriebenen Verfahren vermieden wird.
  • Gemäß einem siebten Merkmal kann das Erkennungsverfahren für eine Netzwerkserverbelastung gemäß dem ersten Aspekt des Weiteren einen Schritt zum Zählen, wenn die Laufnummer, die aus der Kommunikation erhalten wird, kleiner ist als die beibehaltene Laufnummer, der Kommunikationsdaten umfassen, nachdem ein Gewichtungsprozess an ihnen ausgeführt wurde, oder Vorhersagen einer Kommunikationsdatengröße, wenn es auf einer Strecke der zwei Laufnummern kein Problem gibt, und Zählen der vorhergesagten Datengröße zum Erkennen der Belastung.
  • Gemäß einem zweiten Verfahrenstyp der vorliegenden Erfindung umfasst ein Erkennungsverfahren für eine Netzwerkserverbelastung einen Schritt zum Überwachen einer Kommunikation von einem Server zu einem Client, und Zählen einer empfangbaren Datengröße und einer Verbindungszählung, welche der Server dem Client mitteilt, einen Schritt zum Erhalten der empfangbaren Datengröße pro Verbindung als eine Serverbelastung, einen Schritt zum Speichern eines Maximalwerts der empfangbaren Datengröße pro Verbindung, und Beurteilen, wenn die empfangbare Datengröße pro Verbindung klein wird in Bezug auf den Maximalwert, dass der Server unter hoher Belastung ist.
  • In einer Vorrichtung der vorliegenden Erfindung umfasst ein Erkennungssystem für eine Serverbelastung zum Überwachen einer Kommunikation von einem Client zu einem Server und Erkennen eines Belastungszustands des Servers eine Datengrößenberechnungsmodul zum Berechnen einer Größe von Kommunikationsdaten pro Verbindung, eine Speichereinheit zum Erkennen einer Änderung der Kommunikationsdatengröße pro Verbindung und Speichern eines Maximalwerts, und ein Belastungserkennungsmodul zum Erkennen einer hohen Belastung des Servers, wenn die Kommunikationsdatengröße pro Verbindung zu diesem Zeitpunkt in Bezug auf den Maximalwert gleich oder kleiner ist als ein festgelegter Wert.
  • In einem System, das nicht Gegenstand der vorliegenden Erfindung ist, umfasst ein Netzwerkserveraufteilungssystem zum Übertragen von Daten von einem Client an eine Mehrzahl von Servern über ein Netzwerk eine Routingeinheit zum Übertragen der Daten, die von dem Client an irgendeinen der Server übermittelt werden, durch Ändern eines Ziels der Daten, ein Verbindungsverwaltungsmodul, um ein Mapping zwischen den Daten und dem Server beizubehalten und um dem Routingmittel das Ziel anzuzeigen, und ein Serveraufteilungsmodul zum Erhalten von Durchsätzen des Servers, des Clients und einer Strecke, indem sie gezählt werden, zum Bestimmen einer Korrespondenz zwischen den Daten und dem Server durch Verwendung einer Funktion gemäß einer Dienstverteilungsrate basierend auf dem Durchsatz, und zum Übertragen dieser Korrespondenz an das Verbindungsverwaltungsmodul.
  • Die Dienste werden basierend auf Algorithmen aufgeteilt, die durch Messen der Leistung und Belastung des Servers und der Leistung und Belastung auf der Seite des Clients erhalten werden, und es ist daher machbar, automatisch einer Änderung eines dynamischen Belastungszustands des Servers zu entsprechen. Des Weiteren gibt es den Ef fekt, bei dem die Server, die notwendig sind, um eine QoS aus der Sicht des Clients beizubehalten, aufgeteilt werden können, und eine Verwendungseffizienz des Servers maximiert werden kann. Ein weiterer Effekt ist, dass die Serveraufteilung durch die Verwendung einer Funktion bestimmt wird, und infolgedessen eine Dienstaufteilungsrate beim Aufteilen genau reflektiert werden kann. Außerdem kann ein ausreichender Effekt nur durch das einzelne Verbindungsverwaltungsmodul erhalten werden.
  • Gemäß einem weiteren Merkmal, in dem Netzwerkserveraufteilungssystem gemäß dem zehnten Aspekt, legt die Serveraufteilungseinheit eine modifizierte Wahrscheinlichkeitsverteilung als die Verteilungsrate fest, die durch Modifizieren einer Wahrscheinlichkeitsverteilung entsprechend dem Durchsatz des Servers erhalten wird, so dass die Wahrscheinlichkeitsverteilung besser an eine gleichmäßige Verteilung angenähert wird, wenn die Durchsätze des Clients und der Strecke niedriger werden.
  • Eine proportionale Kennzahl, in welchem Maße die Durchsätze des Clients und der Strecke und der Durchsatz des Servers einen Einfluss auf die QoS haben, wird in der Dienstaufteilungsrate reflektiert, und daher ist ein Effekt so, dass der Server, der den hohen Durchsatz aufweist, bevorzugt dem Client zugeteilt ist, in welchem der Serverdurchsatz eine großen Einfluss auf die QoS hat.
  • Gemäß einem weiteren Merkmal, in dem Netzwerkserveraufteilungssystem gemäß dem zehnten Aspekt, erhält die Serveraufteilungseinheit eine Verteilung der Durchsätze des Clients und der Strecke in Bezug auf den Client, der nun in Betrieb ist, erhält auch eine modifizierte Wahrscheinlichkeitsverteilung durch Ausführen solch einer Modifikation, um die Wahrscheinlichkeitsverteilung entsprechend dem Durchsatz des Servers besser an die gleichmäßige Verteilung anzunähren, wenn die Durchsätze eines neu angeschlossenen Clients und der Strecke für die Verteilung niedriger werden, und um umgekehrt den Durchsatz des Servers herausragender zu machen, wenn die Durchsätze eines neu angeschlossenen Clients und der Strecke höher werden, und legt diese modifizierte Wahrscheinlichkeitsverteilung als eine Verteilungsrate fest.
  • Die Dienstaufteilungsrate wird in Bezug auf eine Verteilung der Durchsätze des Clients im Betrieb und der Strecke angepasst, und infolgedessen ist ein Effekt, dass es möglich ist, automatisch auf einen Fall zu antworten, in dem sich eine Kennzahl der Clients von einem entfernten Platz und einem nahen Platz verändert.
  • Gemäß einem weiteren Merkmal, in dem Netzwerkserveraufteilungssystem gemäß dem zehnten Aspekt, wird eine Mehrzahl von Serveraufteilungseinheiten bereitgestellt und jede pro Client und Dienst ausgewählt.
  • Eine Skala des Verbindungsverwaltungsmoduls hängt nicht von der Dienstaufteilung ab, so dass es einen Effekt gibt, worin die Verwendungseffizienz der Speicherressource (Puffer) verbessert wird.
  • Es gibt dort auch solch einen Effekt, dass eine Servergruppe eines Aufteilungsziels separat pro Service und pro Client verwendet werden kann, und eine Dienstverteilungsmethode wird umgeschaltet, wodurch ein einzelnes System in der Lage ist, die Dienstaufteilung in einer Vielzahl von Formen auszuführen.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Diagramm, welches eine Topologie eines Belastungserkennungssystems in einem Ausführungsbeispiel der vorliegenden Erfindung zeigt;
  • 2 ist ein Graph, welcher ein Verhältnis zwischen einer Zeit und einer Datengröße zur Hilfe beim Beurteilen einer hohen Belastung eines Servers in dem Ausführungsbeispiel zeigt;
  • 3 ist ein Flussdiagramm (1), welches ein Paketüberwachungsverfahren in einem Ausführungsbeispiel 1 zeigt;
  • 4 ist ein Flussdiagramm (2), welches das Paketüberwachungsverfahren in dem Ausführungsbeispiel 1 zeigt;
  • 5 ist ein erklärendes Diagramm, welches eine Verbindungsanforderung von einem Client an einen Server und einen Antwortprozess entsprechend einem Zustand eines Puffers zeigt;
  • 6 ist ein erklärendes Diagramm, welches eine erneute Übertragung der Verbindungsanforderung von dem Client an den Server zeigt;
  • 7 ist ein erklärendes Diagramm, welches ein Beispiel einer Unterscheidung zeigt, ob die Daten als Zieldaten abhängig von einer Datengröße bei einer Belastungserkennung festgelegt werden;
  • 8 ist ein erklärendes Diagramm, welches einen Prozess des Servers basierend auf einer Laufnummer zeigt,
  • 9 ist ein erklärendes Diagramm, welches zeigt, wie eine Kommunikation von dem Server an den Client überwacht wird;
  • 10 ist ein Blockdiagramm, welches eine Architektur eines Serveraufteilungssystems in dem Ausführungsbeispiel zeigt;
  • 11 ist ein Graph zum Erklären einer Wahrscheinlichkeitsverteilung PsD einer Serveraufteilung;
  • 12 ist ein erklärendes Diagramm (1), welches eine Modifikationsfunktion zeigt;
  • 13 ist ein Diagramm, welches ein Beispiel einer Tabelle zeigt, die durch ein Serverauswahlmodul in dem Ausführungsbeispiel erzeugt wird;
  • 14 ist ein Graph, der ein Beispiel einer Verteilung von Durchsatzwerten auf der Clientseite in der Vergangenheit zeigt; und
  • 15 ist ein erklärendes Diagramm (2), welches die Modifikationsfunktion zeigt.
  • Bester Modus zum Ausführung der Erfindung
  • [Ausführungsbeispiel 1]
  • 1 zeigt eine Architektur von Funktionen eines Erkennungssystems 4 für eine Serverbelastung in einem Ausführungsbeispiel 1. Wie in der gleichen Figur gezeigt, ist das Erkennungssystem 4 für eine Serverbelastung an eine Kommunikationsleitung 3 angeschlossen, die mit einem Client 1 und einem Server 2 verbunden ist, und kann, um genau zu sein, in einen Router etc. implementiert werden.
  • Dieses Erkennungssystem 4 für eine Serverbelastung umfasst, wie in der gleichen Figur gezeigt, ein Erfassungsmodul 5 für Kommunikationsdaten zum Erfassen von Paketdaten (TCP-Paket: Transmission Control Protocol Paket), welche über die Kommunikationsleitung 3 übermittelt werden. Ein Erkennungsmodul 6 für eine Verbindungszählung, ein Paketzählermodul 8 und ein Berechnungsmodul 7 für eine Paketgröße werden an dieses Erfassungsmodul 5 für Kommunikationsdaten angeschlossen.
  • Das Erkennungsmodul 6 für eine Verbindungszählung besitzt eine Funktion zum Erkennen einer Verbindungszählung C pro Einheit Zeit von den TCP-Paketen, welche durch das Erfassungsmodul 5 für Kommunikationsdaten erfasst werden. Dieses Erkennungsmodul 6 für eine Verbindungszählung addiert 1, wenn sie ein SYN-Paket erkennt, welches ein Kopfpaket repräsentiert, und subtrahiert 1, wenn sie ein FIN-Paket erkennt, welches das letzte Paket repräsentiert. Die Anzahl von Clients, die gegenwärtig an den relevanten Server angeschlossen ist, kann dadurch erkannt werden.
  • Das Paketzählermodul 8 besitzt eine Funktion zum Zählen einer Paketzählung N der TCP-Pakete, die pro Einheit Zeit durch das Erfassungsmodul 5 für Kommunikationsdaten erfasst werden. Das Berechnungsmodul 7 für eine Paketgröße besitzt eine Funktion zum Berechnen einer Gesamtgröße S der TCP-Pakete, die pro Einheit Zeit durch das Erfassungsmodul 5 für Kommunikationsdaten erfasst werden.
  • Berechnungs-/Zählungsdaten dieser Module werden an ein Belastungserkennungsmodul 10 übertragen, worin eine Belastung basierend auf einem vorbestimmten arithmetischen Prozess beurteilt wird, der später erklärt werden wird.
  • Die Paketgesamtgröße S, welche durch das Berechnungsmodul 7 für eine Paketgröße berechnet wird, wird sequenziell erhöht durch eine Paketgröße des Pakets, das jede Zeit erreicht wird, wobei die Größe S auf 0 festgelegt wird, wenn die Zählung begonnen wird. Es sollte beachtet werden, dass eine Größe jedes der SYN- und FIN-Pakete kleiner ist als das Datenpaket, und ihr Einfluss auf die Serverbelastung klein genug ist, um ignoriert zu werden.
  • Die Paketzählung N der Pakete, welche durch das Paketzählermodul 8 gezählt wird, addiert 1, jedes mal wenn das Paket erreicht wird, wobei die Paketzählung auf 0 gesetzt wird, wenn die Zählung begonnen wird. Es sollte beachtet werden, dass die Zählung der SYN- und FIN-Pakete aus dem oben erklärten Grund ignoriert werden kann.
  • Das Paketzählermodul 8 fährt fort zu zählen, bis N einen bestimmten Wert Nmin überschreitet, jedoch, wenn eine Zählungszeit vom Start an kürzer ist als eine vorgegeben Zeit Tmin, selbst wenn über Nmin, fährt die Zählung weiter fort, bis die Zeit Tmin abläuft.
  • Hier werden Nmin und Tmin vorher in dem Paketzählermodul 8 festgelegt. Somit werden Nmin und Tmin in Kombination verwendet, und dies macht es möglich, einen Berechnungsfehler zu reduzieren, der aufgrund einer geringen Probezählung auftrat, welche die Belastung erkennt, um einen Überlauf zu vermeiden, der aufgrund der Probezählung auftrat, die zu viel war, und um eine Belastungserkennungsgenauigkeit zu verbessern.
  • Das Belastungserkennungsmodul 10 erkennt die Belastung durch Ausführen der folgenden arithmetischen Prozesse.
  • Zunächst erhält das Belastungserkennungsmodul 10, wenn es die Verbindungszählung C von dem Erkennungsmodul 6 für eine Verbindungszählung und die Paketgröße S von dem Berechnungsmodul 7 für eine Paketgröße empfängt, einen Indexwert L einer Serverbelastung basierend auf der Formel, die folgt.
  • Es sollte beachtet werden, dass T hier eine Messzeit ist, welche durch einen Timer 11 gemessen wird. Wenn die Paketzählung N, welche die Proben anzeigt, Nmin überschreitet wenn Tmin abläuft, wird die Messzeit T beispielsweise auf T = Tmin festgelegt. L = (S/C)/T wo L eine Datentransferanzahl pro Verbindung für die Einheit Zeit ist. Eine Belastung des Servers 2 kann durch die Verwendung von L erkannt werden.
  • Des Weiteren aktualisiert das Lasterkennungsmodul 10 einen Voraussagewert Lmax für ein Durchsatzlimit. Hier ist ein Anfangswert von Lmax 0, und, wenn L Lmax überschreitet, wird ein Wert von Lmax als L festgelegt. Hier kann, wenn die folgende Beziehung zwischen L und Lmax hergestellt wird, beurteilt werden, dass der Server unter einer hohen Last ist. L < αLmax (1) mit 0 < α < = 1, und α ist eine vorgegebene Konstante.
  • 3 ist ein Flussdiagramm, welches zeigt, wie das Belastungserkennungsmodul 10, das oben beschrieben wird, die Belastung erkennt.
  • Zunächst, bei einem Start einer Zählung, werden die Paketzählung N und der Indexwert L einer Serverbelastung zurückgesetzt, und der Timer 11 wird gestartet (Schritt 301). Dann, wenn ein Empfang des Pakets über das Erfassungsmodul 5 für Kommunikationsdaten gestartet wird (302), wird beurteilt, ob das Paket ein Verbindungsstartpaket SYN ist oder nicht (303) beziehungsweise ob das Paket ein Verbindungsendepaket FIN ist oder nicht (305). Hier wird, wenn es das Verbindungsstartpaket SYN ist, eine Variable V um 1 erhöht (304). Des Weiteren wird, wenn es das Verbindungsendepaket FIN ist, die Variable V um 1 erniedrigt (306).
  • Als nächstes wird die Paketzählung N jedes Mal um 1 erhöht, wenn ein neues Paket empfangen wird, und das Belastungserkennungsmodul 10 berechnet den Indexwert L einer Serverbelastung (307). Diese Berechung wird basierend auf der Berechnungsformel durchgeführt, die vorher erklärt wurde. Dann, wenn der Indexwert L einer Serverbelastung αLmax in der Formel (1), die oben angegeben wird, überschreitet, wird beurteilt, dass der Server in einem Zustand hoher Belastung ist.
  • Ein Ende dieser Beurteilung hoher Belastung wird ausgelöst, wenn der Timerwert gleich oder größer wird als die vorgegebene Zeit Tmin und wenn die Paketzählung N gleich oder größer wird als der vorgegebene Wert Nmin (308).
  • Hier teilt der Server 2 gemäß TCP Speicherressourcen (Puffer) zum Speichern der Paketdaten auf, die von dem Client 1 gleichmäßig pro Verbindung übermittelt werden. Der Server 2 teilt dem Client 1 eine Datengröße mit, die in der Speicherressource (Puffer) gespeichert werden kann, wenn das nächste Mal empfangen wird. Der Client 1 sendet die Datengröße, welche ihm der Server 2 mitgeteilt hat, über die Kommunikationsleitung 3 an den Server 2.
  • Dementsprechend ist der Server 2, wenn er die hohe Belastung erlangt, nicht mehr in der Lage, die Daten sofort zu verarbeiten, die von dem Client 1 gesendet werden, und infolgedessen bleiben alle oder einige Teile der Daten in der Speicherressource (Puffer) des Servers 2 gespeichert. Demzufolge hat der Server 2 keine Alternative, außer dem Client eine Datengröße mitzuteilen, die kleiner ist, durch die Daten, die in der Speicherressource (Puffer) gespeichert bleiben.
  • Hier ist TCP ein Protokoll, das zum Senden und Empfangen der Daten konzipiert ist, deren Größe so groß wie möglich ist, und daher ist die Datengröße der Daten, die von dem Client 1 an den Server übermittelt werden, maximal in einem Zustand, bevor der Server 2 die hohe Belastung erlangt. Danach, wenn die Last am Server 2 ansteigt, nimmt die Datengröße der Daten auch ab, die auf der Kommunikationsleitung 3 übermittelt werden. In diesem Ausführungsbeispiel, wie in 2 gezeigt, wird der Zustand hoher Belastung des Servers mit einer Gewichtung erkannt, dass die Datengröße abnimmt.
  • In diesem Ausführungsbeispiel werden die Daten in der Datenbank 12 gespeichert, wobei die Datengröße der Daten, die auf der Kommunikationsleitung 3 in dem Zustand übermittelt werden, bevor der Server 2 die hohe Belastung erlangt, den Maximalwert Lmax besitzt. Dann, wie in der Formel (1) gezeigt, wird der Wert (Schwellenwert), der durch Multiplizieren von Lmax mit der Konstante α erhalten wird, mit L verglichen. Wenn L gleich oder kleiner ist als der Schwellenwert, wird beurteilt, dass der Server 2 im Zustand hoher Belastung ist.
  • Somit ist es in diesem Ausführungsbeispiel möglich, eine falsche Beurteilung mit einer Reduzierung der Gesamtdatengröße zu verhindern, aufgrund der Abnahme der Verbindungszählung selbst, indem die Datengröße pro Verbindung überprüft wird, und die falsche Erkennung der hohen Belastung kann aufgrund von L-Schwankungen, die sich durch eine Störung ergeben, durch Verwendung der Konstante α verhindert werden.
  • Es sollte beachtet werden, dass 4 ein Flussdiagramm ist, welches im Wesentlichen das gleiche wie das Flussdiagramm in 3 ist, und Schritte zum Beurteilen der hohen Belastung zeigt, ohne das Kommunikationsstartpaket SYN und das Kommunikationsendepaket FIN zu betrachten.
  • [Ausführungsbeispiel 2]
  • Ein Ausführungsbeispiel 2 veranschaulicht ein Erkennungsverfahren für eine hohe Belastung, wobei ein Neuübermittlungsprozess von dem Client 1 an den Server 2 eingesetzt wird.
  • Eine Systemarchitektur, die im Ausführungsbeispiel 2 verwendet wird, ist im Wesentlichen die gleiche wie jene, die in 1 in dem Ausführungsbeispiel 1 gezeigt ist, und infolgedessen wird ihre Erläuterung ausgelassen.
  • Im Ausführungsbeispiel 2 wird die Information des einzelnen Kommunikationsstartpakets SYN in der Datenbank 12 aufgezeichnet (siehe 6(a)~6(c)). Dann wird die Information des einzelnen Kommunikationsstartpakets SYN durch ein Tupel einer Clientadresse (IP), einer Clientportnummer (sp) und einer Serverportnummer (dp) identifiziert.
  • Gemäß TCP, wenn der Server 2 das Kommunikationsstartpaket SYN vom Client 1 empfängt, wird ein SYN-Empfangsbestätigungspaket zurück an den Client 1 gesendet. Hier wird, wenn der Client 1 nicht in der Lage ist, das SYN-Empfangsbestätigungspaket von dem Server 2 zu empfangen, selbst wenn eine festgelegte Zeitdauer abläuft, das Kommunikationsstartpaket SYN erneut an den Server 2 übermittelt.
  • 5 zeigt dieses Konzept. Bezug nehmend auf 5(a), sendet der Client 1a zuerst eine Verbindungsanfrage (das Kommunikationsstartpaket SYN) an den Server 2. Andererseits sendet auch der andere Client 1b die Verbindungs anfrage (das Kommunikationsstartpaket SYN) an den Server 2. Hier, wenn ein Puffer 51 des Servers 2 eine Erlaubnis besitzt, das heißt, wenn er in einem Zustand niedriger Belastung ist, sendet der Server 2 eine Antwortmitteilung (Empfangsbestätigungspaket) an die Clients 1a und 1b, wohingegen wenn der Puffer 51 des Servers 2 keine Erlaubnis besitzt, wie in 5(b) gezeigt, nicht auf die Verbindungsanforderung (das Kommunikationsstartpaket SYN) von dem Client 1 geantwortet werden kann. Dann sendet der Client 1, wie in 5(c) gezeigt, wenn er nicht in der Lage ist, die Antwortmitteilung (Empfangsbestätigungspaket) von dem Server 2 innerhalb der festgelegten Zeitdauer zu empfangen, die Verbindungsanforderung erneut an den Server 2.
  • In dem Ausführungsbeispiel 2 zählt das Erkennungsmodul 6 für eine Verbindungszählung eine Anzahl Cs der Startpakete SYN, und die Anzahl von Neuübermittlungsprozessen des Startpakets SYN von dem Client 1 wird erkannt, wodurch eine Rate Rs der Anzahl von Neuübermittlungsprozessen des Startpakets SYN berechnet wird. Diese Rate Rs wird als ein Indexwert Crs einer Serverbelastung festgelegt.
  • Hier kann das Startpaket SYN beurteilt werden, um erneut übermittelt zu werden, wenn die SYN-Information, die aus dem Startpaket SYN extrahiert wird, bereits in der Datenbank 12 aufgezeichnet wurde. 6 zeigt wie dies ist. Bezug nehmend auf 6(a), werden SYN1 (IP1, sp1, dp1), SYN2 (IP2, sp2, dp2) und SYN3 (IP3, sp3, dp3) als die SYN-Information in der Datenbank des Belastungserkennungssystems 4 aufgezeichnet. Zu diesem Zeitpunkt sendet der Client 1 die Verbindungsanforderung (Startpaket SYN4) über die Kommunikationsleitung 3 an den Server. Das Belastungserkennungssystem 4, wenn diese Verbindungsanforderung eine Verbindungsanforderung ist, die nicht in der Selbstdatenbank 12 gespeichert ist, das heißt, wenn dies die erste Verbindungsanforderung ist, speichert diese Verbindungsanforde rung (SYN4: IP4, sp4, dp4) in der gleichen Datenbank 12 (6(b)).
  • Dann, wenn der Server 2 dem Client 1 nicht irgendeine Antwort auf diese Verbindungsanforderung (SYN4) mitteilt, sendet der Client 1 die gleiche Verbindungsanforderung (SYN4) erneut an den Server 2. Das Erfassungsmodul 5 für Kommunikationsdaten erfasst diese Verbindungsanforderung (SYN4) und das Belastungserkennungsmodul 10 durchsucht die Datenbank 12, wobei das Belastungserkennungssystem 4 weiß, dass die Verbindungsanforderung bereits in dem System 4 selbst gespeichert wurde, und beurteilt demzufolge, dass die gleiche Verbindungsanforderung (SYN4) eine Neuverbindungsanforderung ist.
  • Ein spezielles Zählverfahren in dem Belastungserkennungsmodul 10 basiert auf dem Zählverfahren der Verbindungszählung C und dem Erkennungsverfahren der Paketgröße S, die in Ausführungsbeispiel 1 erklärt wurden.
  • Hier, wenn die folgende Formel (2) in Bezug auf die erhaltene Rate Rs der Anzahl von Neuübermittlungsprozessen des Startpakets SYN eingeführt wird, das heißt Crs, wird der Server 1 beurteilt, eine hohe Belastung zu besitzen. Crs > β (2)mit 0 < β < 1, β ist eine vorgegebene Konstante.
  • Der Server 2 teilt die Puffer 51 zum Speichern der Daten von dem Client 1 pro Verbindung auf. Wenn die Puffer 51, die aufzuteilen sind, aufgebraucht sind, wird die Antwortmitteilung (SYN-Empfangsbestätigungspaket) nicht zurück an den Client 1 gesendet, ohne die Verbindung herzustellen. Daher folgt, dass der Client 1 eine erhöhte Rate der Neuübermittlungsprozesse des Startpakets SYN besitzt. Dementsprechend kann die hohe Belastung des Servers aus der Formel (2) erkannt werden. 6(d) ist ein Graph, der eine Beziehung zwischen der Neuübermittlungskennzahl (die Anzahl von Neuübermittlungsprozessen/die Anzahl von Kommunikatio nen), die oben beschrieben wird, und der Serverbelastung zeigt.
  • Es sollte beachtet werden, dass die Konstante β in der Formel (2), die oben angegeben wird, festgelegt wird, um die falsche Erkennung aufgrund der Störung und dem vorübergehenden Zustand hoher Belastung zu verhindern. Der vorübergehende Zustand hoher Belastung besitzt eine geringe Wahrscheinlichkeit aufzutreten, dauert jedoch nicht lange an, und kann daher ignoriert werden.
  • [Ausführungsbeispiel 3]
  • Ein Ausführungsbeispiel 3 veranschaulicht eine Technologie, um eine Unterscheidung eines Zählungsziels zu machen, abhängig von der Kommunikationsdatengröße, wenn die Belastung erkannt wird. Es sollte beachtet werden, dass die Systemarchitektur in dem Ausführungsbeispiel 3 auch im Wesentlichen die gleiche ist wie jene, die in 1 gezeigt ist, und wird daher mit Bezugnahme auf 1 erklärt.
  • In dem Ausführungsbeispiel 3 erkennt das Belastungserkennungsmodul 10, wenn die folgende Beziehung zwischen einer Paketgröße Si des Pakets von dem Client 1 und Ds hergestellt wird, die Belastung, ohne Si zu der Gesamtpaketgröße L hinzuzufügen. Si < γDs (3)mit 0 < γ < 1, Ds = f(S1, S2, ...Si – 1), γ ist eine vorgegebene Konstante, Ds ist eine Funktion zum Erhalten eines Verteilungsindex der gezählten Paketgröße und kann als ein Mittelwert festgelegt werden. Des Weiteren, wenn eine Mehrzahl von Werten als ein Ergebniswert von Ds angegeben ist, können diese Werte als ein einzelner Wert festegelegt werden, durch eine gewichtete Addition und Auswahl.
  • Gemäß TCP legt der Client 1 nach der Verbindung die Übertragungsdatengrößer kleiner fest als die Datengröße, die der Server 2 mitgeteilt hat, startet dann die Übertragung und erhöht nach und nach die Datengröße bis zu der mitgeteilten Datengröße. Daher ist die Paketgröße, die von dem Client 1 angegeben wird, kurz nachdem die Verbindung gestartet wird, klein, ungeachtet der Last am Server 2.
  • Dementsprechend, wenn eine große Anzahl der Clients 1 kurz nach dem Start der Verbindung vorhanden ist, wird die Datentransferanzahl L in der Formel (1) klein vorhergesagt, aufgrund einer Vielzahl kleiner Teile von Übertragungsdaten, und es kann eine Möglichkeit geben, bei der sich Genauigkeiten der Messung der Belastung und eine Erkennung der hohen Belastung verschlechtern.
  • 7 zeigt konzeptionell wie dies ist. Bezug nehmend auf 7(a), übermittelt der Client 1a Paketdaten A mit einer vergleichsweise großen Größe an den Server 2. Der Client 1b übermittelt jedoch Paketdaten B mit einer vergleichsweise kleine Größe, wie z.B. einen Befehl und ein Antwortsignal, da dies kurz nach dem Start der Kommunikation ist. Wenn solch eine kleine Größe von Paketdaten ignoriert werden kann, wenn die Last am Server erkannt wird, kann kein Problem auftreten.
  • In solch einem Fall, in Übereinstimmung mit dem Ausführungsbeispiel 3, durch Verwendung der Formel (3), wird das Paket vom Client 1 kurz nach dem Start der Verbindung erkannt und vom Zählungsziel ausgeschlossen, wodurch die Genauigkeiten des Messens der Belastung und des Erkennens der hohen Belastung verbessert werden.
  • Wenn der Server eine hohe Belastung erreicht, nimmt die Datengröße der Daten aller verbundenen Clients ab, jedoch ist die Reduzierung in den Puffern 51 zum Speichern der Daten vergleichsweise moderat, und infolgedessen ist auch die Abnahme von L moderat. Des Weiteren ist sie gering bezüglich der Wahrscheinlichkeit, dass alle Clients die neuen Verbindungen gleichzeitig starten, so dass die Formel (3) ausreichend ist.
  • Ein unterer Grenzwert Dsmin von Ds wird als eine angewendete Bedingung in der Formel (3) festgelegt, um die Genauigkeit zu erhöhen, und, wenn Ds gleich oder kleiner als Dsmin ist, wird die Formel (3) nicht angewendet. Si kann nämlich zu L hinzu addiert werden.
  • [Ausführungsbeispiel 4]
  • Ein Ausführungsbeispiel 4 veranschaulicht eine Technologie zum Verhindern einer falschen Erkennung der hohen Belastung des Servers, aufgrund eines Paketwiderrufs, welcher durch eine Überlastung etc. auf der Kommunikationsleitung auftritt, wenn die Belastung in der Diskussion des Ausführungsbeispiels 1 erkannt wird.
  • Eine Systemarchitektur in dem Ausführungsbeispiel 4 ist die gleiche wie jene in 1. Hier werden von dem Paket von dem Client 1 zu dem Server 2 ein Tupel (Paketkennung) einer Clientadresse (IP), einer Clientportnummer (sp) und einer Serverportnummer (dp) und eine Laufnummer von dem Start der Verbindung bis zu dem Ende davon in der Datenbank 12 gespeichert. Zu diesem Zeitpunkt soll die gespeichert Laufnummer ein Maximalwert sein (der letzte Wert zu diesem Zeitpunkt).
  • Das Belastungserkennungssystem 4 erhält, wenn das Paket empfangen wird, das von dem Client 1 an den Server 2 übermittelt wird, die Paketkennung und die Laufnummer Pi von diesem Paket, und vergleicht sie mit einer Laufnummer Pj der gleichen Paketkennung, die in der Datenbank 12 gespeichert ist.
  • Hier kann es, wenn eine Beziehung, wie z.B. Pi < Pj hergestellt wird, basierend auf einer Beurteilung des Belastungserkennungsmoduls 10, bekannt sein, dass ein Vorbeiziehen des Pakets auf der Kommunikationsleitung 3 auftritt, oder ein Paket erneut übermittelt wird, aufgrund des Verschwindens des Pakets auf der Strecke.
  • Auf jeden Fall folgt daraus, dass die Daten, welche durch den Server 2 in diesem Zustand empfangen werden, einen Verlust auf halber Strecke besitzen, und der Server 2 nicht in der Lage ist, die Daten nach dem verlorenen Teil zu verarbeiten. Es folgt, dass die Daten nach dem verlorenen Teil in dem Puffer 51 gespeichert bleiben. Die Datengröße, die durch den Server 2 empfangen werden kann, wird dadurch verringert, jedoch ist der Grund dafür nicht die Serverbelastung sondern eine Überlastung etc. auf der Strecke zwischen dem Client und dem Server. 8 zeigt konzeptionell wie dies ist. In 8 werden Teile von Paketdaten [1~3] von dem Client 1 an den Server 2 übertragen, und nur die Paketdaten [2] gehen durch einen Faktor wie z.B. die Streckenüberlastung etc. verloren. Der Client 2 speichert die Paketdaten [1, 3], die im Puffer 51 empfangen wurden. Hier wird dem Client 1 eine Antwort mitgeteilt (eine Anforderung zum erneuten Übermitteln der Paketdaten [2]), jedoch werden die Paketdaten [2] nicht im Puffer des Servers 2 selbst empfangen, und infolgedessen tritt ein Zustand auf, in dem er nicht in der Lage ist, die Daten nach den Paketdaten [3] zu verarbeiten, die ihn bereits erreicht haben.
  • Der Client 1, wenn er die Antwortmitteilung über die Paketdaten [2] doppelt empfängt, übermittelt erneut die Paketdaten [2]. Somit sind die Paketdaten [2~5] alle angekommen, wodurch der Server 2 einen Zustand erreicht, in dem er in der Lage ist, diese Teile von Paketdaten zu verarbeiten, die er empfangen hat, jedoch nicht in der Lage ist, sofort auf die Verarbeitung umzuschalten. Infolgedessen ist eine freie Größe des Puffers, die dem Client 1 mitgeteilt wird, n, was bei weitem kleiner ist als eine ursprüngliche Puffergröße N.
  • Als nächstes überträgt der Client 1 die Paketdaten [6], deren Größe in einer Größe n gespeichert werden kann, die der Server 2 mitgeteilt hat. Tatsächlich werden jedoch, in dem Schritt zum Empfangen dieses Teils von Paketdaten [6], die Paketdaten [1~5] verarbeitet, und daher existiert ein großer freier Platz im Puffer, so dass der Zustand hoher Belastung nicht auftritt.
  • Das heißt, in dem Ausführungsbeispiel 4 wird der Zustand, der in 8 gezeigt ist, in der Regel nicht als die hohe Belastung beurteilt.
  • Aus den oben erläuterten Gründen wird das Paket Pi mit einem Einführen von Pi < Pj aus der Zählung ausgeschlossen. Alternativ kann der Wert durch Angeben eines bestimmten Gewichts oder durch weiteres Hinzufügen von Pj – Pi zu der Paketgröße in dem Belastungserkennungsmodul 10 berechnet werden.
  • Hier impliziert die Berechnung von Pj – Pi, dass, wenn kein Datenverlust auftritt durch Hinzufügen einer Vorhersagegröße der Daten, die in dem Puffer 51 innerhalb des Servers 2 gespeichert bleiben, zu der Paketgröße, eine Datengröße vorhergesagt werden kann, das heißt, eine vorliegende Paketgröße, die der Server 2 dem Client 1 mitteilt.
  • [Ausführungsbeispiel 5]
  • Ein Ausführungsbeispiel 5 ist, dass der Server 2 die Paketdaten überwacht, die an den Client 1 übertragen werden, wodurch die Last am Server 2 beurteilt wird.
  • In dem Belastungserkennungssystem 4 in dem Ausführungsbeispiel 5 überwacht der Server 2 einen Gesamtwert Sw einer Fenstergröße und eine Verbindungszählung C in dem Paket, welches durch den Server 2 an den Client 1 übermittelt wird. Die Fenstergröße ist eine Datengröße, die empfangen werden kann und die der Server 2 dem Client 1 mitteilt.
  • Ein Wert der Verbindungszählung C wird erhalten, indem um 1 erhöht wird, wenn das Startpaket SYN erkannt wird, welches von dem Server 2 an den Client 1 übermittelt wird, und indem um 1 erniedrigt wird, wenn das Endpaket FIN er kannt wird. Hier ist die Zählung von Sw und C die gleiche wie im Ausführungsbeispiel 1.
  • Ein Indexwert L3 einer Belastung des Servers 2 wird durch die folgende Formel erhalten. T ist das gleiche wie T im Ausführungsbeispiel 1, ist jedoch nicht notwendigerweise unbedingt notwendig. L3 = (Sw/c)/T (4)Der Indexwert L3 einer Belastung impliziert eine Fenstergröße pro Verbindung. Das Folgende ist ein Verfahren zum Erkennen der hohen Last am Server 2 durch die Verwendung von L3.
  • Zunächst wird ein Vorhersagewert L3max einer Durchsatzbeschränkung des Servers 2 aktualisiert. Ein anfänglicher Wert von L3max ist 0, und, wenn L3 L3max überschreitet, wird ein Wert von L3max auf L3 festgelegt.
  • Hier, wenn die folgende Beziehung zwischen L3 und L3max hergestellt wird, wird beurteilt, dass der Server 2 unter hoher Last ist. L3 = α3·Lmax (5)Mit 0 < α3 < = 1, und α3 ist eine vorgegebene Konstante.
  • Der Server 2 teilt dem Client 1 eine freie Größe des Puffers 51 mit, bei der er selbst in der Lage ist zu Arbeiten, das heißt die Fenstergröße (9(a)). Hier, wenn jedoch der Server 2 eine erhöhte Belastung besitzt, ausreichend um nicht in der Lage zu sein, die Daten vollständig zu verarbeiten, die vom Client 1 übertragen werden, wie in 9(b) gezeigt, teilt der Server 2 dem Client 1 die Fenstergröße n mit, die kleiner ist als davor (was insbesondere die Datengröße ist, die das nächste Mal empfangen werden kann). Daher ist 9(b) ein Graph, welcher eine Beziehung zwischen der Zeit und der Fenstergröße zeigt, welche der Server 2 dem Client mitteilt.
  • Die Last am Server 2 hat einen Einfluss auf alle verbundenen Clients, und infolgedessen nimmt L3 mit einem Anstieg der Serverbelastung ab. Dementsprechend kann die Serverbelastung durch die Formel (4) berechnet werden, und die hohe Last kann durch die Formel (5) erkannt werden.
  • [Ausführungsbeispiel 6]
  • Ein Ausführungsbeispiel 6 zeigt einen Fall, bei dem ein Serveraufteilungssystem der vorliegenden Erfindung als ein Router zum Leiten des TCP-Pakets zwischen dem Client und dem Server aktualisiert wird.
  • Bezug nehmend auf 10, eine Adressübersetzungs-/Paketroutingeinheit 1002 gibt, wenn ein Paket 1010, das vom Client 1 empfangen wird, das Startpaket SYN ist, welches die Verbindungsanforderung impliziert, einen Serveraufteilungshinweis 1020 an ein Serverauswahlmodul 1007 einer Serveraufteilungseinheit 1001 aus, um einen Server zum Aufteilen der Dienste zu bestimmen. Dann übergibt die Adressübersetzungs-/Paketroutingeinheit 1002 einen Zählungshinweis 1021 an ein Durchsatzzählungsmodul 1008 auf der Clientseite.
  • Eine Zähleinheit 1004 für einen Serverdurchsatz berechnet einen Durchsatz jedes Servers und sendet Ergebnisdaten 1013 an ein Berechnungsmodul 1006 für eine Serveraufteilungswahrscheinlichkeit. Der Durchsatz jedes Servers kann aus einer Antwortzeit nach der Übertragung eines Ping, etc. an den Server 2 berechnet werden, oder der Benutzer kann den Durchsatz vorgeben. Des Weiteren kann auch das Erkennungssystem für eine Serverbelastung, das in den Ausführungsbeispielen 1~5 beschrieben wird, verwendet werden.
  • Das Durchsatzzählungsmodul 1008 auf der Clientseite berechnet bei einem Hinweis, der von der Routingeinheit 1002 gegeben wird, Durchsätze 1018 des Clients 1 und der Kommunikationsleitung 3, und informiert ein Datenerzeugungsmodul 1009 über eine Wahrscheinlichkeitsänderung der Serveraufteilung. Hier kann der Durchsatz auf der Clientseite aus einer Antwortzeit nach dem Übertragen erhalten werden, beispielsweise eines Ping, etc. an den Client. Des Weiteren kann der Durchsatz auf der Clientseite auch durch die Verwendung eines Bandmessungsverfahrens, wie z.B. Bprob etc., und aus vergangenen Aufzeichnungen der Kommunikationen über den Client 1 wie auch aus der Fenstergröße und TTL (Time-To-Live), was aus dem Paket extrahiert wird, erhalten werden.
  • Das Datenerzeugungsmodul 1009 für eine Änderung der Serveraufteilung erzeugt eine Änderungsfunktion 1022 in Bezug auf eine Wahrscheinlichkeitsverteilung der Serveraufteilung aus dem Durchsatz 1018 auf der Clientseite.
  • 11 zeigt ein Beispiel einer Wahrscheinlichkeitsverteilung PsD einer Serveraufteilung. 12 zeigt ein Beispiel einer Änderungsfunktion M (1022) in dem unteren Teil.
  • Dass Berechnungsmodul 1006 für eine Serveraufteilungswahrscheinlichkeit wendet die Änderungsfunktion M (1022) auf die Wahrscheinlichkeitsverteilung PsD der Serveraufteilung an, wodurch eine Wahrscheinlichkeitsverteilung MPsD der Serveraufteilung erhalten wird.
  • Die Wahrscheinlichkeitsverteilung PsD wird mit solch einer Verteilung festgelegt, dass die Aufteilungswahrscheinlichkeit größer wird, wenn der Server einen höheren Durchsatz zu der vorgegebenen Zeit besitzt. Wenn beispielsweise p1, p2, ... pn (n ist die Anzahl von Server) Durchsatzwerte (was später erklärt werden wird) der jeweiligen Server zu der vorgegebenen Zeit sind, kann eine Aufteilungswahrscheinlichkeit Pi auf den Server Si durch die folgende Formel erhalten werden: Pi = pi/(p1 + p2 +, ... + pn) (6)
  • Die Änderungsfunktion M der Wahrscheinlichkeit wird, wie in 12 gezeigt, eine Funktion zum Ändern von PsD, so dass PsD besser an eine gleichmäßige Verteilung angenähert wird, wenn der Durchsatz auf der Clientseite niedriger wird. Wenn beispielsweise eine Antwortzeit Tping, basierend auf einem ging, als ein Durchsatz auf der Clientseite behandelt wird, kann ein geändertes Pi' jedes Serverdurchsatzes Pi auch aus der folgenden Formel erhalten werden: Pi' = Pi + (Pav – Pi)·2/π·arc_tan (α·Tping) (7)wo Pav ein Mittelwert von Pi ist, α eine vorgegebene Zahl größer als 0 ist und arc_tan(x) tan – 1(x) repräsentiert.
  • Die modifizierte Wahrscheinlichkeitsverteilung MPsD wird aus diesem Pi' erhalten.
  • Das Berechnungsmodul 1006 für eine Serveraufteilungswahrscheinlichkeit sendet die erhaltene Verteilung MPsD an das Serveraufteilungsmodul (1007). Das Serveraufteilungsmodul (1007) wird durch Erzeugen einer Tabelle, die in 13 gezeigt ist, aus MPsD aktualisiert, wobei einheitliche Zufallswerte verwendet werden, die zufällige Werte von 0~1 annehmen. Die Tabelle in 13 wird beispielsweise durch ein Array von Feldern aktualisiert, von denen jedes eine Servernummer enthält, wobei jedes Feld ein Tupel von Maximal- und Minimalwerten in einem Bereich Pi von 0~1 und eine Serveradresse enthält. Die Serveradresse in dem Feld, welches einen Bereich besitzt, der die gleichmäßige Zufallszahl enthält, kann als eine Serveradresse für eine Dienstaufteilung festgelegt werden. Der Bereich jedes Felds ist jedoch entworfen, um nicht mit den Bereichen anderer Felder zu überlappen.
  • In Bezug auf die Wahrscheinlichkeitsverteilung von PsD und MPsD können die Serverdurchsatzwerte Pi und Pi' als eine Verteilungsmaß aktualisiert werden. In diesem Fall nehmen die gleichmäßigen Zufallswerte einen Bereich von 0 bis zu einem Gesamtwert aller Pi an.
  • Das Serverauswahlmodul 1007 sendet nach dem Bestimmen des Aufteilungsservers eine Serveradresse 1012 davon an die Verbindungsverwaltungseinheit 1003.
  • Die Verbindungsverwaltungseinheit 1003 extrahiert ein Tupel von Daten, wie z.B. die Clientadresse (IP), die Clientportnummer (sp), die Zielportnummer (dp), aus dem Startpaket SYN oder einem Teil dieses Pakets, das von der Adressübersetzungs-/Paketroutingeinheit empfangen wird. Dann zeichnet die Verbindungsverwaltungseinheit 1003 ein Mapping des Tupels von Daten und die Serveradresse auf, die von der Serveraufteilungseinheit 1001 erhalten wird. Hier kann die Aufzeichnung die Verwendung einer Hash-Tabelle bedingen, wobei das Tupel von Daten als ein Schlüssel dient. Die Verbindungsverwaltungseinheit 1003 überträgt die Serveradresse 1012 an die Adressübersetzungs-/Paketroutingeinheit 1002.
  • Die Adressübersetzungs-/Paketroutingeinheit 1002 übersetzt ein Ziel des Pakets, das vom Client 1 empfangen wird, in die Serveradresse 1012, die von der Verbindungsverwaltungseinheit 1003 empfangen wird, und überträgt die Serveradresse 1012 an den Server 2.
  • Während der Servierung übermittelt die Adressübersetzungs/Paketroutingeinheit 1002 ein Paket 1014 an die Verbindungsverwaltungseinheit 1003. Diese Verbindungsverwaltungseinheit 1003 erhält die Aufteilungsserveradresse 1012 von dem Tupel von Daten, die aus dem Paket 1014 extrahiert werden, und sendet die Adresse 1012 an die Adressübersetzungs-/Paketroutingeinheit 1002. Wie in dem Fall des Startpakets SYN übersetzt die Adressübersetzungs-/Paketroutingeinheit 1002 das Ziel des Pakets, das von dem Client 1 empfangen wird, in die Serveradresse 1012, die von der Verbindungsverwaltungseinheit 1003 erhalten wird, und überträgt die Serveradresse 1012 an den Server 2.
  • Wenn die Servierung beendet ist, das heißt, wenn das Endpaket FIN emfpangen wird, obwohl ähnlich zu dem Betriebsprozess, verwirft die Verbindungsverwaltungseinheit 1003, welche dieses Paket empfängt, das Tupel von Daten entsprechend dem Paket.
  • In diesem Ausführungsbeispiel wird die Dienstaufteilung durch Verwendung der Wahrscheinlichkeitsverteilung bestimmt, wodurch ein Aufteilen des Servers vereinfacht wird, welcher einen höheren Durchsatz für den Client aufweist, der einen höheren Durchsatz aufweist. Daher können die Dienste entsprechend danach aufgeteilt werden, wie stark der Serverdurchsatz die QoS beeinflusst, wie z.B. die Antwortzeit.
  • Das Datenerzeugungsmodul 1009 für eine Wahrscheinlichkeitsänderung der Serveraufteilung der Serveraufteilungseinheit 1001 erhält eine Verteilung (14) der Durchsätze auf der Clientseite in der Vergangenheit, erhält auch einen Zwischenraum 6 aus der Verteilung der Durchsatzwerte auf der Clientseite eines neu angeschlossenen Clients, und erhält einen Zwischenraum 6c aus einer Verteilung der Durchsatzwerte auf der Clientseite eines neu angeschlossenen Clients. Dann fügt das Datenerzeugungsmodul 1009 für eine Wahrscheinlichkeitsänderung der Serveraufteilung 6c zu der Änderungsfunktion M hinzu, wodurch die Wahrscheinlichkeitsverteilung verändert wird (15). Hier wird δc beispielsweise durch die folgende Formel erhalten: δc = Pca – pciwo Pca ein Durchsatzmittelwert auf der Clientseite in der Vergangenheit ist und pci ein Durchsatzwert auf der Clientseite des neu angeschlossenen Clients ist. Die Änderungsfunktion M wird so festgelegt, dass der Serverdurchsatzwert pi besser an den Durchschnittswert aller pi angenähert wird, wenn δc kleiner wird, und wird von dem Durch schnittswert weiter entfernt, wenn δc größer wird. Wenn der Zwischenraum von dem Durchschnittswert groß festgelegt wird, muss der modifizierte Wert pi' von pi keine negative Zahl sein. Beispielsweise kann die Formel (7) wie folgt verändert werden: pi' = pi + (Pav – pi)·β·2/π·arc_tan (α·δc + γ) (7')wo Pav ein Mittelwert von pi ist, α, γ vorgegebene Zahlen größer als 0 sind und arc_tan(x) tan-1(x) repräsentiert. Wenn β – 1 ist, δc < 0 und wenn –dpj/pj, δ > = 0. Pj ist der Mindestwert von pi, und dpi = Pav – pj.
  • Somit wird die Dienstaufteilung basierend auf dem Zwischenraum aus der Verteilung der vergangenen Durchsatzwerte auf der Clientseite der Durchsatzwerte auf der Clientseite des neu verbundenen Clients ausgeführt, wodurch die Serveraufteilung entsprechend dem Client zu jedem Zeitpunkt erreicht werden kann. Beispielsweise kann die Serveraufteilung automatisch einem Fall entsprechen, indem die Clientkennzahlen von einem entfernten Ort und einem benachbarten Ort abhängig von einer Zeitzone schwanken.
  • Des Weiteren kann in diesem Ausführungsbeispiel eine Mehrzahl von Serveraufteilungseinheiten (1001) angeordnet werden und jede ausgewählte entspricht der Clientadresse, der Clientportnummer und der Dienstportnummer.
  • Eine Aufteilungszielservergruppe kann separat pro Dienst und pro Client verwendet werden, und eine Dienstverteilungsmethode kann umgeschaltet werden, wodurch ein einzelnes System in der Lage ist, die Dienstaufteilung in einer Vielzahl von Arten auszuführen.
  • Wie oben diskutiert wird gemäß der vorliegenden Erfindung die Serverbelastung gemessen, und die hohe Belastung wird durch Überwachen der Kommunikationen zwischen dem Client und dem Server erkannt. Infolgedessen wird weder eine technische Ergänzung am Server benötigt noch werden andere Pakete als für die Dienste ausgegeben. Dementsprechend gibt es sich ergebende Effekte, wobei das System in der Lage ist, jedem Server zu entsprechen, und es tritt keine Interferenz mit der Last auf, mit niedrigen Kosten für die Einführung. Des Weiteren werden die Belastungsmessung und die Erkennung der hohen Belastung mit dem Index durchgeführt, der nicht vom Protokoll abhängt, so dass ein Effekt ist, dass das System in der Lage ist, irgendeinem Dienst zu entsprechen. Es gibt auch einen Effekt, bei dem der Einfluss der Störung gering ist und die Genauigkeit hoch ist, aufgrund der Überwachung des Kommunikationszustands während dem Dienst.
  • Außerdem, wenn die Dienste, die durch den Server bereitgestellt werden, durch die Vielzahl von Servern aufgeteilt werden, werden die Belastungen der jeweiligen Server automatisch effizient aufgeteilt, entsprechend dazu, wie stark sich der Serverdurchsatz, aus Sicht des Clients auf die QoS auswirkt, entsprechend den Änderungen der Serverarchitektur und des Serverzustands. Daher ist ein Effekt, dass der Client eine prompte Lieferung der Dienste empfangen kann.
  • Gewerbliche Anwendbarkeit
  • Die vorliegende Erfindung kann auf das Belastungsmesssystem in dem Netzwerksystem angewendet werden, welches durch die Server und die Clients konfiguriert wird.

Claims (11)

  1. Ein Erkennungsverfahren für eine Netzwerkserverbelastung zur Verwendung in einem Erkennungssystem (4), das an eine Kommunikationsleitung (3) zwischen einem Server (2) und einem Client (1) angeschlossen ist, welche durch Datenpakete miteinander kommunizieren, umfassend die folgenden Schritte: – Überwachen einer Kommunikation von dem Client (1) zu dem Server (2), und Zählen der Kommunikationsdatengröße pro Verbindung als die Belastung des Servers; – Erkennen einer Änderung der Kommunikationsdatengröße für jede Verbindung, und Aufzeichnen des Maximalwerts der Größe; und – Beurteilen, wenn die Kommunikationsdatengröße pro Verbindung zu diesem Zeitpunkt in Bezug auf den Maximalgrößenwert abnimmt, dass der Server unter einer hohen Belastung ist.
  2. Ein Erkennungsverfahren für eine Netzwerkserverbelastung nach Anspruch 1, des Weiteren umfassend einen Schritt zum Zählen einer Verbindungszählung und der Kommunikationsdatengröße bis die Zahlung überwachter Kommunikationen eine Mindestzählung überwachter Kommunikationen erreicht und die Zählungszeit eine Überwachungsmindestzeit erreicht, durch Verwendung der Mindestzählung überwachter Kommunikationen und der Überwachungsmindestzeit.
  3. Ein Erkennungsverfahren für eine Netzwerkserverbelastung nach Anspruch 1 oder 2, des Weiteren umfassend einen Schritt zum Erkennen der Kommunikationen eines Starts und Endes der Verbindung, und Ausschließen von Kommunikations datengrößen des Starts und Endes der Verbindung von einem Belastungserkennungsziel.
  4. Ein Erkennungsverfahren für eine Netzwerkserverbelastung nach einem der vorhergehenden Ansprüche, des Weiteren umfassend: einen Schritt zum Beibehalten von Information der Kommunikation des Starts der Verbindung bis die Verbindung beendet oder hergestellt ist; einen Schritt zum Erkennen der Kommunikation des Starts der Verbindung für eine erneuten Verbindung, der ausgeführt wird, wenn beurteilt wird, dass sich der Client nicht basierend auf der beibehaltenen Information verbindet; und einen Schritt zum Festlegen der Rate, bei welcher die Kommunikation der erneuten Verbindung die Anzahl der Kommunikationen des Starts der Verbindung als die Belastung des Servers belegt, und, wenn diese Rate hoch ist, Beurteilen, dass der Server unter einer hohen Belastung ist.
  5. Ein Erkennungsverfahren für eine Netzwerkserverbelastung nach einem der vorhergehenden Ansprüche, des Weiteren umfassend: einen Schritt zum Erhalten der Verteilung der Kommunikationsdatengrößen von den Clients; einen Schritt zum Unterscheiden zwischen extrem kleinen Teilen von Kommunikationsdaten, die nicht mit der Belastung des Servers in Beziehung stehen, von der Verteilung der Kommunikationsdatengröße; und einen Schritt zum Eliminieren der extrem kleinen Teile von Kommunikationsdaten von der Beurteilung über die Belastung.
  6. Ein Erkennungsverfahren für eine Netzwerkserverbelastung nach einem der vorhergehenden Ansprüche, des Weiteren umfassend: einen Schritt zum Erhalten einer Laufnummer aus der Kommunikation von dem Client zu dem Server; einen Schritt zum Beibehalten des Maximalwerts der Laufnummer bis die Verbindung beendet ist, von dem Start der Verbindung an; einen Schritt zum Vergleichen der Laufnummer der empfangenen Kommunikation mit der beibehaltenen Laufnummer; und einen Schritt zum Ausschließen dieser Kommunikation vom Zählen, wenn die Laufnummer, die aus der Kommunikation erhalten wird, kleiner ist als die beibehaltene Laufnummer.
  7. Ein Erkennungsverfahren für eine Netzwerkserverbelastung nach einem der vorhergehenden Ansprüche, des Weiteren umfassend: einen Schritt zum Zählen, wenn die Laufnummer, die aus der Kommunikation erhalten wird, kleiner ist als die beibehaltene Laufnummer, der Kommunikationsdaten nach einem Ausführen eines Gewichtungsprozesses daran, oder Vorhersagen einer Kommunikationsdatengröße, wenn es auf einer Strecke der zwei Laufnummern kein Problem gibt, und Zählen der vorhergesagten Datengröße zum Erkennen der Belastung.
  8. Ein Erkennungsverfahren für eine Netzwerkserverbelastung zur Verwendung in einem Erkennungssystem (4), das an eine Kommunikationsleitung (3) zwischen einem Server (2) und einem Client (1) angeschlossen ist, welche durch Datenpakete miteinander kommunizieren, umfassend die folgenden Schritte: – Überwachen einer Kommunikation von dem Server (2) zu dem Client (1), und Zahlen der empfangbaren Datengröße und der Verbindungszählung, welche der Server dem Client mitteilt; – Erhalten der empfangbaren Datengröße für jede Verbindung als die Serverbelastung; und – Speichern des Maximalwerts der empfangbaren Datengröße pro Verbindung, und Beurteilen, wenn die empfangbare Datengröße pro Verbindung klein wird in Bezug auf den Maximalwert, dass der Server unter hoher Belastung ist.
  9. Ein Verfahren zum Betreiben eines Netzwerks, welches eine Mehrzahl von Servern (2) umfasst, wobei die Belastungen der Server durch ein Verfahren gemäß einem der vorhergehenden Ansprüche überwacht werden, und eine Serverauswahl basierend auf den so bestimmten Serverbelastungen durchgeführt wird.
  10. Ein Erkennungssystem (4) für eine Netzwerkserverbelastung zum Überwachen einer Kommunikation von einem Client (1) zu einem Server (2) und Erkennen des Belastungszustands des Servers, umfassend: – Berechnungsmittel (7) für eine Datengröße zum Berechnen der Größe von Kommunikationsdaten pro Verbindung; – Speichermittel (12) zum Erkennen einer Änderung der Kommunikationsdatengröße pro Verbindung und Speichern eines Maximalwerts; und – Belastungserkennungsmittel (10) zum Erkennen einer hohen Belastung des Servers, wenn die Kommunikationsdatengröße pro Verbindung zu diesem Zeitpunkt in Bezug auf den Maximalwert gleich oder kleiner ist als ein festgelegter Wert.
  11. Eine Netzwerkserverzuteilungsvorrichtung, umfassend ein Belastungserkennungssystem (4) gemäß Anspruch 10.
DE69937241T 1998-09-08 1999-07-08 Vorrichtung zur messung der last eines netzwerkservers und berät und verfahren zur zuordnung Expired - Lifetime DE69937241T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP25431898 1998-09-08
JP25431898A JP3270012B2 (ja) 1998-09-08 1998-09-08 ネットワークサーバ負荷検出装置、割当装置および方法
PCT/JP1999/003692 WO2000014931A1 (fr) 1998-09-08 1999-07-08 Dispositif de mesure de charge sur un serveur de reseau et dispositif et procede d'attribution

Publications (2)

Publication Number Publication Date
DE69937241D1 DE69937241D1 (de) 2007-11-15
DE69937241T2 true DE69937241T2 (de) 2008-01-10

Family

ID=17263344

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69937241T Expired - Lifetime DE69937241T2 (de) 1998-09-08 1999-07-08 Vorrichtung zur messung der last eines netzwerkservers und berät und verfahren zur zuordnung

Country Status (5)

Country Link
US (1) US7383331B2 (de)
EP (1) EP1102442B1 (de)
JP (1) JP3270012B2 (de)
DE (1) DE69937241T2 (de)
WO (1) WO2000014931A1 (de)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6889257B1 (en) * 1999-12-03 2005-05-03 Realnetworks, Inc. System and method of transmitting data packets
EP1303952A1 (de) * 2000-07-27 2003-04-23 Siemens Aktiengesellschaft Verfahren und vorrichtung zur überlastabwehr bei diensten mit datenübertragung
US6772375B1 (en) * 2000-12-22 2004-08-03 Network Appliance, Inc. Auto-detection of limiting factors in a TCP connection
US20070005809A1 (en) * 2001-09-14 2007-01-04 Youichi Kobayashi Network information processing system and network information processing method
GB0122507D0 (en) * 2001-09-18 2001-11-07 Marconi Comm Ltd Client server networks
US7216164B1 (en) * 2002-10-09 2007-05-08 Cisco Technology, Inc. Methods and apparatus for determining the performance of a server
US20040254931A1 (en) * 2003-05-29 2004-12-16 Marconi Communications, Inc. Multiple key self-sorting table
JP4337538B2 (ja) * 2003-12-12 2009-09-30 日本電気株式会社 ホストインタフェース制御装置及び制御方法並びに制御プログラム
US20050267981A1 (en) * 2004-05-13 2005-12-01 Alan Brumley System and method for server side detection of client side popup blocking
EP1806658B1 (de) * 2004-10-28 2016-04-13 Fujitsu Limited Analyseverfahren und -einrichtung
JP4543916B2 (ja) * 2004-12-21 2010-09-15 日本電気株式会社 ネットワーク性能計測方法およびその装置
US7761592B2 (en) * 2005-02-28 2010-07-20 Telecom Italia S.P.A. Method of managing a congestion state in a server of a communication network
US20060245433A1 (en) * 2005-04-28 2006-11-02 International Business Machines Corporation Apparatus and method for dynamic routing of messages with target validation and peer forwarding
JP4627508B2 (ja) * 2006-03-09 2011-02-09 株式会社日立ソリューションズ サーバの接続リソース使用状況出力方法
US20070260641A1 (en) * 2006-05-02 2007-11-08 Mypoints.Com Inc. Real-time aggregate counting in a distributed system architecture
JP4126707B2 (ja) * 2006-07-28 2008-07-30 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報システムの状態を解析する技術
JP2008083939A (ja) * 2006-09-27 2008-04-10 Hitachi Ltd 計算機システム及び動的ポート割当方法
WO2008041302A1 (en) 2006-09-29 2008-04-10 Fujitsu Limited Server disposing program and server disposing method
US8296438B2 (en) * 2007-07-11 2012-10-23 International Business Machines Corporation Dynamically configuring a router to find the best DHCP server
US8326977B2 (en) * 2008-07-16 2012-12-04 Fujitsu Limited Recording medium storing system analyzing program, system analyzing apparatus, and system analyzing method
EP2161896A1 (de) * 2008-09-05 2010-03-10 Zeus Technology Limited Lieferung von Datendateien an Anfragestationen
US8032799B2 (en) * 2008-09-17 2011-10-04 International Business Machines Corporation System and method for managing server performance degradation in a virtual universe
US20110310756A1 (en) * 2009-02-10 2011-12-22 Telefonaktiebolaget Lm Ericsson Network element and a method of operating a network element in a telecommunications network
US8972870B2 (en) 2009-08-27 2015-03-03 International Business Machines Corporation Providing alternative representations of virtual content in a virtual universe
US20110106935A1 (en) * 2009-10-29 2011-05-05 International Business Machines Corporation Power management for idle system in clusters
US9891931B2 (en) * 2010-06-15 2018-02-13 Microsoft Technology Licensing, Llc Techniques for efficient remote presentation session connectivity and routing
CN102347887A (zh) * 2010-08-03 2012-02-08 鸿富锦精密工业(深圳)有限公司 路由器及设置多重地址的方法
ES2913069T3 (es) 2011-03-02 2022-05-31 Sensulin Llc Composiciones de vesículas
CN107210925B (zh) 2014-11-25 2020-07-14 诺基亚通信公司 用于分布式***内的资源管理的方法和装置
US20170346932A1 (en) * 2016-05-24 2017-11-30 Cisco Technology, Inc. In-band path-to-path signals using tcp retransmission
KR102354058B1 (ko) * 2017-08-24 2022-01-20 삼성에스디에스 주식회사 서버 모니터링 방법과 이를 수행하기 위한 장치 및 시스템
CN112783740B (zh) * 2020-12-30 2022-11-18 科大国创云网科技有限公司 一种基于时间序列特征的服务器性能预测方法及***
CN114844806B (zh) * 2022-04-15 2023-08-25 中国信息通信研究院 网络设备的吞吐量测量方法及装置、测试***及存储介质

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5167035A (en) * 1988-09-08 1992-11-24 Digital Equipment Corporation Transferring messages between nodes in a network
US5341477A (en) * 1989-02-24 1994-08-23 Digital Equipment Corporation Broker for computer network server selection
US5193151A (en) * 1989-08-30 1993-03-09 Digital Equipment Corporation Delay-based congestion avoidance in computer networks
US5283897A (en) * 1990-04-30 1994-02-01 International Business Machines Corporation Semi-dynamic load balancer for periodically reassigning new transactions of a transaction type from an overload processor to an under-utilized processor based on the predicted load thereof
EP0576122B1 (de) * 1992-04-27 2001-08-29 Nippon Telegraph And Telephone Corporation Paketnetzwerk und Verfahren zur Vermeidung von Überlastung eines solchen Netzwerks
US5459837A (en) * 1993-04-21 1995-10-17 Digital Equipment Corporation System to facilitate efficient utilization of network resources in a computer network
JPH08163209A (ja) * 1994-12-01 1996-06-21 Matsushita Electric Ind Co Ltd 携帯無線装置
JP2773764B2 (ja) 1994-12-08 1998-07-09 日本電気株式会社 オンライン回線トラフィック監視システム
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US6104717A (en) * 1995-11-03 2000-08-15 Cisco Technology, Inc. System and method for providing backup machines for implementing multiple IP addresses on multiple ports
JP2912225B2 (ja) * 1996-04-18 1999-06-28 四国日本電気ソフトウェア株式会社 通信処理システム
US5774660A (en) * 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
AU714865B2 (en) * 1996-10-18 2000-01-13 Intervu, Inc. System and method for optimized storage and retrieval of data on a distributed computer network
US5943480A (en) * 1996-11-19 1999-08-24 Telcordia Technologies, Inc. Method and system for detecting camouflaged congestion on a network resource
JPH10224356A (ja) * 1997-02-04 1998-08-21 Matsushita Electric Ind Co Ltd ネットワークシステムおよびその負荷調整方法
US5933606A (en) * 1997-02-19 1999-08-03 International Business Machines Corporation Dynamic link page retargeting using page headers
JPH10262044A (ja) * 1997-03-19 1998-09-29 Mitsubishi Electric Corp 中継装置及び中継装置による中継方法
US6263368B1 (en) * 1997-06-19 2001-07-17 Sun Microsystems, Inc. Network load balancing for multi-computer server by counting message packets to/from multi-computer server
US6070191A (en) * 1997-10-17 2000-05-30 Lucent Technologies Inc. Data distribution techniques for load-balanced fault-tolerant web access
US5987493A (en) * 1997-12-05 1999-11-16 Insoft Inc. Method and apparatus determining the load on a server in a network
CA2237208A1 (en) * 1998-05-08 1999-11-08 Northern Telecom Limited Congestion notification from router
JP3602972B2 (ja) * 1998-07-28 2004-12-15 富士通株式会社 通信性能測定装置及びその測定方法
US6643259B1 (en) * 1999-11-12 2003-11-04 3Com Corporation Method for optimizing data transfer in a data network

Also Published As

Publication number Publication date
JP2000092052A (ja) 2000-03-31
EP1102442A4 (de) 2004-10-20
JP3270012B2 (ja) 2002-04-02
US20010029545A1 (en) 2001-10-11
WO2000014931A1 (fr) 2000-03-16
EP1102442B1 (de) 2007-10-03
EP1102442A1 (de) 2001-05-23
US7383331B2 (en) 2008-06-03
DE69937241D1 (de) 2007-11-15

Similar Documents

Publication Publication Date Title
DE69937241T2 (de) Vorrichtung zur messung der last eines netzwerkservers und berät und verfahren zur zuordnung
DE69918923T2 (de) Verfahren und Vorrichtung für Grossraumlastverteilung
DE69725791T2 (de) Lastausgleichsgerät und -verfahren
DE60317588T2 (de) Verfahren zur Ermittlung der peer-to-peer Servicequalität (QOS)
DE69927457T2 (de) Verfahren und Vorrichtung zur Cache-Speicherung von Informationen im Netzwerk
DE60210733T2 (de) System und Verfahren zur Überlastregelung in Netzwerken
DE69835400T2 (de) Netzbelastungsausgleich für Mehrrechner Anbieter
DE69927252T2 (de) Auf der Überwachung der Belegung von Puffern basierte Planung der Netzwerkkapazität
DE60128155T2 (de) Verfahren und anordnungen zur erzielung einer dynamischen betriebsmittelverteilungsrichtlinie in paketgestützten kommunikationsnetzen
DE60306823T2 (de) Schutzvorrichtung und Verfahren für Server-Computer zur Steuerung von Datenübertragung durch dieselbe
DE3780799T2 (de) Anordnung zur ueberlastregelung durch bandbreitenverwaltung fuer paketvermittlungssystem.
DE69213779T2 (de) Verfahren und System für die Steuerung der Paketrate im Nachrichtennetz
DE19929516B4 (de) Hochgeschwindigkeits-Netzwerkschalter
DE102018204859A1 (de) Dynamischer Lastenausgleich in Netzschnittstellenkarten für eine optimale Leistung auf Systemebene
DE60132312T2 (de) Lastregelung
DE69030037T2 (de) Verfahren zur Verkehrsregelung in einem Hochgeschwindigkeitsdatennetz
DE60032310T2 (de) Netzsystem
DE69219266T2 (de) Zuweisung von Mitteln in einem dienste-integrierenden Satelliten-Netzwerk durch vorzeitige Reservierung
DE3872145T2 (de) Datenuebertragungsnetzwerk.
DE60030508T2 (de) Netzwerkzustandsserver, Informationsverteilungssystem, Steuerverfahren, und Speichermedium zur Speicherung eines Steuerungsprogramms
DE602004010224T2 (de) Vorrichtung zur Verkehrssteuerung und entsprechendes Servicesystem
DE60303384T2 (de) Lastausgleich in datennetzwerken
DE60215723T2 (de) Netzwerküberwachungssystem, Datenmengenzählverfahren und Computerprogramm zur Verwendung im System
DE60311528T2 (de) Präventive Wiederübertragung von gepufferten Daten in einem Netwerk
DE602005001550T2 (de) Verfahren und vorrichtung zur unterstützung von transaktionen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: SEEGER SEEGER LINDNER PARTNERSCHAFT PATENTANWAELTE