DE69628682T2 - System und Verfahren um die Belastung einer Mehrzahl von Datei-Servern zu verteilen - Google Patents

System und Verfahren um die Belastung einer Mehrzahl von Datei-Servern zu verteilen Download PDF

Info

Publication number
DE69628682T2
DE69628682T2 DE69628682T DE69628682T DE69628682T2 DE 69628682 T2 DE69628682 T2 DE 69628682T2 DE 69628682 T DE69628682 T DE 69628682T DE 69628682 T DE69628682 T DE 69628682T DE 69628682 T2 DE69628682 T2 DE 69628682T2
Authority
DE
Germany
Prior art keywords
server
data
servers
video
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69628682T
Other languages
English (en)
Other versions
DE69628682D1 (de
Inventor
Hiroshi Chiyoda-ku Yoshida
Tatsuji Chiyoda-ku Munaka
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE69628682D1 publication Critical patent/DE69628682D1/de
Application granted granted Critical
Publication of DE69628682T2 publication Critical patent/DE69628682T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • 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/101Server selection for load balancing based on network conditions
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • 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
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23103Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23116Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving data replication, e.g. over plural servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5019Workload prediction
    • 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
    • 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/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Description

  • HINTERGRUND DER ERFINDUNG GEBIET DER ERFINDUNG
  • Die Erfindung bezieht sich auf ein Lastverteilungssystem, das Lasten zu mehreren Datei- oder Datenservern verteilt, die Dateien oder Daten übertragen, welche durch Benutzer- oder Kundenstationen angefordert werden, und auf Verfahren zur Lastverteilung für solche Systeme.
  • BESCHREIBUNG DES STANDES DER TECHNIK
  • 7 zeigt ein herkömmliches Videoserversystem, das z. B. zwei Videoserver (Server 1 und Server 2), drei Kundenstationen 35 und eine Netzwerk-Verbindungsvorrichtung 6 aufweist. Während die folgende Beschreibung zum Zwecke der Illustration mit Bezug auf Videoserversystem erfolgt, ist festzustellen, daß die angetroffenen Probleme auf jeden Typ von Daten- oder Datenserversystem anwendbar sind.
  • Herkömmlicherweise würde ein Kunde, der eine besondere Videodatei wünscht, direkt einen Videoserver über die Netzwerk-Verbindungsvorrichtung 6 auswählen und eine Anforderung zu diesem Videoserver senden zum Zwecke der Übertragung der Videodatei. Wenn jedoch die dem Videoserver auferlegte Last bereits bei der maximalen Kapazität ist, kann die Kundenstation nicht mit ihm verbunden werden. Wenn z. B. alle Kunden 3, 4 und 5 die Übertragung einer Videodatei anfordern, die nur von dem Videoserver 1 verfügbar ist, werden die Lasten für die drei Kunden nur dem Videoserver 1 auferlegt, während keine Übertragungslast dem Videoserver 2 auferlegt wird. Wenn die Anzahl von Kunden bei dem Netzwerk die Lastkapazität des Videoservers 1 überschreitet und alle diese Kunden die Übertragen derselben Videodatei anfordern, wird die Übertragungsfähigkeit des Videoservers 1 überschritten und die Übertragung von Daten durch den Videoserver 1 wir dann unmöglich.
  • Selbst wenn dieselbe Videodatei bei beiden Videoservern 1 und 2 verfügbar ist, können, solange wie die Auswahl bestimmter Videoserver den Kundenstationen überlassen ist, alle Lasten auf einen einzelnen Videoserver konzentriert sein.
  • Bei der Anordnung eines derartigen herkömmlichen Videoservers ist ein Problem dahingehend aufgetreten, daß Übertragungsanforderungen von Kundenstationen die Neigung haben, zu nur einem bestimmten Videoserver gerichtet zu werden, und somit werden alle Lasten diesem Server auferlegt. Weiterhin kann dieses Problem nicht dadurch gelöst werden, daß einfach die Anzahl von Videoservern erhöht wird.
  • Die Kundenstationen können einen Prozeß zum Verteilen von Lasten auf mehrere Videoserver durchführen. Um dies jedoch zu tun, müssen alle Kundenstationen Informationen betreffend die Lastzustände bei den individuellen Videoservern haben, und wenn die Verteilung der Serverlasten durch die Kundenstationen durchgeführt wird, werden die Bearbeitungszeit bei den Kundenstationen und die dem Netzwerk auferlegten Lasten erhöht.
  • Wenn eine bestimmte Videodatei häufig benutzt wird, kann die Videodatei auf mehrere Videoserver kopiert werden, um den Übertragungsdurchgang für die Videodatei in dem System zu erhöhen. Wenn jedoch ein derartiges Kopieren viele Male durchgeführt wird, wird der verfügbare Speicherraum reduziert, und Videodateien, welche weniger häufig verwendet werden, müssen gelöscht werden, um den Speicherraum freizumachen. Folglich ist ein Problem dahingehend aufgetreten, daß zusätzliche Arbeitskraft für die Bewältigung von Verwaltungsfunktionen erforderlich ist, wie das Kopieren und Löschen von Dateien.
  • EP-A-0 655 865 offenbart ein „Video auf Anforderung"-Serversystem mit einer Strategie zum lokalisieren verfügbarer Bankbreite und Zuteilen verfügbarer Bandbreite zu Abonnenten je nach Erfordernis. Die Eingabe/Ausgabe-Bandbreite von Speichervorrichtungen, die Daten für Videobildfolgen speichern, wird modelliert als eine Reihe von Bandbreiteneinheiten. Jeder Bandbreiteneinheit hat ausreichend Kapazität, um einem individuellen Abonnenten während eines planmäßigen Zyklus zu dienen. Videobildfolgen oder andere Datenfolgen werden derart streifenartig auf Speichervorrichtungen verteilt, dass Daten für eine Datenfolge zu dem Abonnenten geführt werden, indem aus einer Folge von Speichervorrichtungen in aufeinanderfolgenden Zeitrahmen gelesen wird.
  • ZUSAMMEN FASSUNG DER ERFINDUNG
  • Es ist eine Aufgabe der Erfindung, ein Lastverteilungssystem für mehrere Server vorzusehen, bei dem die CPUs und die Netzwerken auferlegten Lasten und die Anzahl von Speicherzugriffen oder die den Speicherzugriffskapazitäten der Server auferlegten Lasten verteilt sind. Es ist eine andere Aufgabe der Erfindung, ein Verfahren für die Lastverteilung auf mehrere Server anzugeben, um die bei den herkömmlichen Systemen anzutreffenden Probleme zu beseitigen.
  • Diese Aufgaben werden durch das System gemäß dem Anspruch 1 und das Verfahren gemäß dem Anspruch 12 gelöst. Bevorzugte Verbesserungen des Systems und des Verfahrens nach der Erfindung sind in den jeweiligen abhängigen Ansprüchen gegeben.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Diagramm, das die Struktur eines Lastverteilungssystem gemäß einem ersten bevorzugten Ausführungsbeispiel illustriert;
  • 2 ist ein Diagramm, das die Struktur eines Steuerservers gemäß dem Ausführungsbeispiel nach 1 illustriert;
  • 3 ist ein Diagramm, das den Inhalt einer Videoserver-Verwaltungstabelle gemäß dem Ausführungsbeispiel nach 1 illustriert;
  • 4 ist ein Diagramm, das den Inhalt einer Kundenverwaltungstabelle gemäß dem Ausführungsbeispiel nach 1 illustriert;
  • 5 ist ein Flußdiagramm der Lastverteilungsverarbeitung für ein Lastverteilungs-Verarbeitungsprogramm gemäß dem Ausführungsbeispiel nach 1 illustriert;
  • 6 ist ein Flußdiagramm der Dateikopierverarbeitung für das Lastverteilungs-Verarbeitungsprogramm gemäß dem Ausführungsbeispiel nach 1; und
  • 7 ist ein Diagramm, das die Struktur eines herkömmlichen Videoserversystems illustriert.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSBEISPIELE
  • Ein bevorzugten Ausführungsbeispiel der Erfindung wird nun Bezug auf die Zeichnungen beschrieben.
  • 1 ist ein Blockschaltbild, das die Anordnung eines Lastverteilungssystems gemäß einem ersten bevorzugten Ausführungsbeispiel illustriert. Das Lastverteilungssystem enthält zwei Videoserver 1 und 2, Kundenstationen 3, 4 und 5, eine Netzwerk-Verbindungsvorrichtung 6, einen Steuerserver 7, eine Datenbank 8 und einen Bibliotheksserver 9. Jeder Videoserver hat einen Speicher (wie z. B. einen Plattenspeicher), in welchem Videodaten in einem bestimmten Format wie Videodateien gespeichert sind, und der Server überträgt Videodaten, welche von Kundenarbeitsstationen angefordert werden. Kundenstationen 3, 4 und 5 fordern die Übertragung von Videodaten an.
  • Die Netzwerk-Verbindungsvorrichtung 6 liefert Kommu nikationsverbindungen zwischen den Servern und den Kundenstationen. Der Steuerserver 7 empfängt Übertragungsanforderungen von den Kundenstationen und wählt einen der Videoserver 1 und 2 für die Übertragung von angeforderten Daten aus, wobei die gegenwärtigen und künftigen Lasten der Videoserver 1 und 2 berücksichtigt werden. Die Datenbank 8 speichert eine Zugriffshistorie von Übertragungsanforderungen, welche der Steuerserver 7 empfangen hat, und sie speichert auch Standardwerte für das System. Der Bibliotheksserver 9 hat eine Sekundärspeichervorrichtung mit einer großen Speicherkapazität und speichert in der Sekundärspeichervorrichtung Videodateien, welche bei den Videoservern gelöscht sind.
  • Die Videoserver und die Kundenstationen können in jeder gewünschten Anzahl vorgesehen sein, wobei zwei Videoserver und drei Kundenstationen in 1 nur zum Zwecke der Erläuterung gezeigt sind. Die Netzwerk-Verbindungsvorrichtung und das Protokoll können in jeder geeigneten Weise implementiert sein, solange wie die Kundenstationen, Videoserver und der Steuerserver 7 miteinander kommunizieren können.
  • 2 ist ein Blockschaltbild, das die Struktur des Steuerservers 7 illustriert. Der Steuerserver 7 empfängt Eingangsdaten, welche Übertragungsanforderungsdaten wie den Namen einer angeforderten Videodatei enthalten, von den Kundenstationen 3 bis 5 und speichert die Daten in einem Puffer 11. Eine Videoserver-Verwaltungstabelle 12 speichert Daten betreffend verschiedene Parameter von Videoservern 1 und 2. Eine Kundenverwaltungstabelle 13 speichert Daten betreffend verschiedene Parameter von Kundenstationen 3 bis 5. Zu einem Ausgangspuffer 14 gesendete Ausgangs daten zeigen an, welcher der Videoserver 1 und 2 ausgewählt wurde. Ein Lastverteilungs-Verarbeitungsprogramm 15 führt eine Lastverteilungsverarbeitung durch, um den optimalen Videoserver 1 oder 2 gemäß den Eingangsdaten 11 auszuwählen. Die Eingangsdaten 11, die Videoserver-Verwaltungstabelle 12, die Kundenverwaltungstabelle 13 und die Ausgangsdaten 14 sind in dem Speicher des Steuerservers 7 gespeichert. In Übereinstimmung mit den Eingangsdaten wie dem Namen einer angeforderten Videodatei, die von dem Eingangsdatenpuffer 11 erhalten wurden, und den Daten in der Videoserver-Verwaltungstabelle 12, der Kundenverwaltungstabelle 13 und der Datenbank 8 werden die gegenwärtigen Betriebszustände der Videoserver 1 und 2 und Daten betreffend die angeforderte Videodatei von dem Lastverteilungsprogramm erhalten, um den optimalen Videoserver 1 oder 2 für die Bearbeitung der Anforderung zu bestimmen, und der optimale Videoserver wird in den Ausgangsdaten 14 angezeigt. Das Lastverteilungs-Verarbeitungsprogramm 15 funktioniert somit so, daß der optimale Videoserver berechnet und bestimmt wird auf der Grundlage des Inhalts der Eingangsdaten, der Videoserver-Verwaltungstabelle und der Kundenverwaltungstabelle.
  • Die in den Eingangsdaten 11 enthalten Daten können der nur der Name einer angeforderten Videodatei sein. Jedoch können statische Daten, die in der Datenbank 8 gespeichert sind, z. B. Spiegeldaten und die Bandbreite einer zu übertragenden Videodatei, auch in dem Eingangsdatenbereich 11 gespeichert sein, um Zugriffe zu der Datenbank 8 durch das Lastverteilungs-Verarbeitungsprogramm 15 auf ein Minimum zu reduzieren.
  • 3 ist ein Diagramm, das ein Beispiel des Inhalts der Videoserver-Verwaltungstabelle 12 zeigt. Das Lastverteilungs-Verarbeitungsprogramm 15 bezieht sich auf diese Werte, wenn es die Verarbeitung durchführt. Die Bezugszahl 21 bezeichnet Namen der Videoserver, die in dem System existieren (1 und 2 in dem beispielhaften Ausführungsbeispiel); die Bezugszahl 22 bezeichnet die maximalen Übertragungszählwerte der Videoserver; die Bezugszahl 23 bezeichnet die Anzahl von gegenwärtigen Übertragungen durch die Videoserver; die Bezugszahl 24 bezeichnet die maximalen Bandbreiten der Videoserver; die Bezugszahl 25 bezeichnet die von den Videoservern für die gegenwärtige Übertragung verwendeten Bandbreiten; die Bezugszahl 26 bezeichnet die gesamten Speicherkapazitäten der Videoserver; und die Bezugszahl 27 bezeichnet die maximalen gleichzeitigen Übertragungszählwerte für die Dateien der Videoserver.
  • Da die Videoservernamen 21, die maximalen Übertragungszählwerte 22, die maximalen Bandbreiten 24, die Gesamtspeicherkapazitäten 26 und die maximalen gleichzeitigen Übertragungszählwerte 27 statische Daten sind, die im Voraus bestimmt sind, können sie in die Verwaltungstabelle 12 eingesetzt werden, indem sie zur Zeit der Initialisierung des Steuerservers 7 aus der Datenbank 8 gelesen werden. Der gegenwärtige Übertragungszählwert 23 und die Bandbreiten 25, welche gegenwärtig verwendet werden, sind dynamische Daten, die entsprechend den Übertragungsanforderungen von den Kundenstationen 3 bis 5 aktualisiert werden. Wenn eine Übertragungsanforderung von einer der Kundenstationen bearbeitet wird und ein bestimmter Videoserver für die Datenübertragung ausgewählt ist, werden der Übertragungszählwert 23 und die gegenwärtige Bandbreite 25 für den bestimmten Videoserver in der Tabelle 12 aktualisiert.
  • 4 ist ein Diagramm, das ein Beispiel für den Inhalt der Kundenverwaltungstabelle 13 zeigt. Das Lastverteilungs-Verarbeitungsprogramm 15 bezieht sich auch auf diese Werte, wenn die Verarbeitung durchgeführt wird. Die Bezugszahl 31 bezeichnet die Kundennamen der Kundenstationen, die über die Netzwerk-Verbindungsvorrichtung mit dem Steuerserver 7 verbunden sind; die Bezugszahl 32 bezeichnet Dateinamen von Zielvideodateien; die Bezugszahl 33 bezeichnet eine Dateigröße der Zielvideodatei; die Bezugszahl 34 bezeichnet eine Bandbreite, die zum Übertragen der Zielvideodatei erforderlich ist; die Bezugszahl 35 bezeichnet einen maximalen Übertragungszählwert der Videodatei; die Bezugszahl 36 bezeichnet den Namen eines Videoservers, der ein gegenwärtiges Ziel ist; und die Bezugszahl 37 bezeichnet gegenwärtige Operationsinhalte. Jedes Mal, wenn eine Operation durch eine der Kundenstationen 3 bis 5 stattfindet, werden die Operationsinhalte 37 aktualisiert, um die Operationsanforderungen von den Kundenstationen zu speichern. Die anderen Daten werden nicht aktualisiert, solange wie eine Zieldatei unverändert ist.
  • 5 ist ein Flußdiagramm, das die von dem Lastverteilungs-Verarbeitungsprogramm 15 des Steuerservers 7 durchgeführte Verarbeitung erläutert. Der Prozeß wird durchgeführt, wenn eine der Kundenstationen 3 bis 5 verlangt, daß der Steuerserver 7 eine bestimmte Videodatei überträgt. Bei diesem Prozeß wird ein besonderer Videoserver als ein Übertragungsvideoserver bezeichnet, für welchen der gegenwärtige Übertragungszählwert 23 niedriger als der maximale Übertragungszählwert 22 ist, für welchen ein ausreichender Raum in der Bandbreite des Netzwerks vorhanden ist und für welchen der gegenwärtige Übertragungszählwert der angeforderten Videodatei kleiner ist als der maximale Übertragungszählwert, welcher an diesem Videoserver gesetzt ist. Wenn die Summe der Bandbreite 25, welche verwendet wird, und der erforderlichen Bandbreite 34 für die angeforderte Videodatei kleiner ist als die maximale Bandbreite 24, wird festgestellt, daß Raum in der Bandbreite des Netzwerks für die Übertragung der angeforderten Videodatei verfügbar ist.
  • Der detaillierte Prozeß wird nun erläutert. Zuerst werden im Schritt S101 die Videoserver, in welchen eine angeforderte Videodatei gespeichert ist, auf die Liste L1 in dem Speicher gesetzt. Dann wird im Schritt S102 auf die gegenwärtigen Übertragungszählwerte 23 der Videoserver-Verwaltungstabelle 12 Bezug genommen, und derjenige Videoserver in der Liste L1, der den kleinsten gegenwärtigen Übertragungszählwert hat wird ausgewählt.
  • Auf den im Schritt S102 ausgewählten Videoserver (nachfolgend als VS1 bezeichnet) wird im folgenden Schritt S103 auf die Videoserver-Verwaltungstabelle 12 Bezug genommen und eine Prüfung wird durchgeführt, um zu bestimmen, ob der gegenwärtige Übertragungszählwert 23 den maximalen Übertragungszählwert 22 erreicht hat oder nicht. Wenn die Bestimmung im Schritt S103 nein lautet, geht die Verarbeitung zum Schritt S104 weiter, in welchem eine Prüfung durchgeführt wird, um zu bestimmen, ob ausreichend Raum in de r Bandbreite des Netzwerks vorhanden ist oder nicht. Wenn die Prüfung im Schritt S103 anzeigt, daß der gegenwärtige Übertragungszählwert für VS1 zumindest eine vorbestimmte Zahl unter dem maximalen Übertragungszählwert ist, und die Prüfung im Schritt S104 anzeigt, daß eine vorbestimmte minimale Bandbreite für VS1 verfügbar ist, wird VS1 im Schritt S114 zu einer dritten Liste L3 hinzugefügt.
  • Wenn ausreichend Raum in der im Schritt S104 bestimmten Bandbreite vorhanden ist, wird im Schritt S105 der gegenwärtige Übertragungszählwert 23 für die angeforderte Videodatei erworben durch Bezugnahme auf die Videoserver-Verwaltungstabelle 12, und es wird eine Feststellung durchgeführt, ob die Anzahl von Übertragungen der angeforderten Videodatei den maximalen Übertragungszählwert 27 erreicht hat oder nicht. Wenn nicht, geht die Verarbeitung zu dem nächsten Schritt S106 weiter, in welchem eine Prüfung durchgeführt wird, um zu bestimmen, ob die angeforderte Videodatei bereits übertragen wird, indem auf die Kundenverwaltungstabelle 13 Bezug genommen wird. Wenn nicht, geht der Prozeß zum Schritt S107 weiter, in welchem der Videoserver VS1 als ein Übertragungsvideoserver bezeichnet wird. Wenn im Schritt S106 festgestellt wird, daß die angeforderte Datei übertragen wird, wird der Server VS1 in eine zweite Liste L2 von Videoservern, welche gegenwärtig die angeforderte Videodatei übertragen, eingetragen.
  • Wenn die Ergebnisse der Schritte S103, S104,S105 oder S106 umgekehrt sind, wird dem Server VS1 nicht erlaubt, die angeforderte Videodatei zu übertragen. Im Schritt S109 wird der ausgewählte Server VS1 von der Liste L1 entfernt, und die Liste, aus der der Server VS1 gelöscht wurde, wird als eine neue Liste L1 betrachtet. Im Schritt S110 wird festgestellt, ob die Liste L1 erschöpft ist, d. h. ob keine Videoserver auf der Liste verbleiben. Wenn nicht, geht der Prozeß zurück zum Schritt S102, wo ein neuer VS1 für weitere Verarbeitung ausgewählt wird.
  • Wenn im Schritt S110 festgestellt wird, daß die Liste L1 leer ist, geht der Prozeß zum Schritt S111 weiter, wo festgestellt wird, ob die Liste L2 erschöpft ist. Wenn nicht, wird im Schritt S112 der Videoserver in der Liste L2 mit dem kleinsten Übertragungszählwert für die angeforderte Videodatei als ein neuer VS1 ausgewählt, und im Schritt S107 wird der Server VS1 als der Übertragungsserver bezeichnet. Wenn die Liste L2 leer ist, geht die Verarbeitung zum Schritt S113 weiter, in welchem bestimmt wird, ob die angeforderte Videodatei zu einem anderen Videoserver kopiert werden sollte. Die Bezugsinformationen für diese Bestimmung können entweder in einer Übertragungsanforderung enthalten sein, oder sie können Teil des Anfangsinhalts des Systems sein. Somit kann die optimale Lastverteilung für eine besondere Datei entweder für jede Anforderung oder für das gesamte System eingestellt werden. Wenn bestimmt wird, daß die angeforderte Videodatei zu einem anderen Server kopiert werden sollte, geht die Verarbeitung zum Schritt S201 weiter, welcher nachfolgend in Verbindung mit dem Flußdiagramm nach 6 erläutert wird. In dieser Beziehung wird die Liste L3 konsultiert hinsichtlich des optimalen Videoservers, zu dem die Videodatei kopiert werden soll. Wenn nicht bestimmt wird, daß die angeforderte Datei zu einem anderen Server kopiert wird, endet der Prozeß, und der Kunde muß warten, um die Videodatei zu einer späteren Zeit anzufordern.
  • Es ist festzustellen, daß der maximale Übertragungszählwert 22 des VS1 nicht die Grenze der Fähigkeit des VS1 ist. Vielmehr wird zu der Zeit der Einrichtung des Systems ein theoretischer oberer Grenzwert, welcher kleiner ist als der maximale Übertragungszählwert gemäß der Grenze der Fähigkeit des VS1, vorher in der Datenbank 8 eingestellt und als der maximale Übertragungszählwert 22 definiert. Wenn es möglich ist, eine Verarbeitung durchzuführen, während der der theoretische maximale Übertragungswert 22 für den VS1 erweitert wird, z. B. Kopieren zu der Zeit der maximalen Übertragungen, kann die Lastverteilungsverarbeitung dann glatt durchgeführt werden.
  • In gleicher Weise wird für die maximale Bandbreite 24 des Netzwerks eine theoretische obere Grenze, die kleiner als die tatsächliche Grenze ist, vorher in der Datenbank 8 eingestellt, so daß die Lastverteilungsverarbeitung glatt durchgeführt werden kann. Die eingestellten Werte für den maximalen Übertragungszählwert 22 und die maximale Bandbreite 24 werden in die Videoserver-Verwaltungstabelle 12 eingelesen, wenn das Lastverteilungs-Verarbeitungsprogramm 15 initialisiert wird.
  • Es wird nun eine Erläuterung des Flußdiagrammprozesses nach 6 gegeben. 6 zeigt einen Dateilast-Verteilungsprozeß durch Durchführung einer Dateikopie, für welchen die Verteilung der Last auf die Speicherkapazität des Systems auch in Betracht gezogen wird.
  • Bei dieser Verarbeitung wird eine angeforderte Videodatei zu einem Videoserver kopiert, für welchen die Lasten auf die Übertragung und auf die Speicherkapazität kleiner sind als solche der anderen und in welchem die angeforderte Videodatei nicht existiert, und sie wird von diesem Videoserver übertragen, wenn alle Videoserver mit der für die Übertragung angeforderten Videodatei eine hohe Last haben. Wenn eine angeforderte Videodatei in allen der Videoserver vorhanden ist, ist eine Dateikopierung nicht erforderlich und die Verarbeitung wird nicht durchgeführt.
  • Die Dateilast-Verteilungsverarbeitung berücksichtigt Spiegeldaten, welche anzeigen, in wievielen Videoservern jede Videodatei gespeichert ist, und einen maximalen Spiegelzählwert, welcher vorher für jede Videodatei in dem System eingestellt wird. Die Spiegeldaten und der maximale Spiegelzählwert werden vorher in der Datenbank 8 gespeichert. Jedes Format kann für die Spiegeldaten verwendet werden, solange wie ein gegenwärtiger Spiegelzählwert und ein Videoserver, der gespiegelt wird, bestätigt werden können. Die Liste von gegenwärtigen Spiegelzählwerten und eine Liste von entsprechenden Videoservern können getrennt gespeichert werden.
  • Gemäß der bei diesem Ausführungsbeispiel verwendeten Form sind die Spiegeldaten ein Bitflag, das einen Videoserver anzeigt, und der gegenwärtige Spiegelzählwert wird durch Zählen der Flags gefunden. Der maximale Spiegelzählwert ist nur ein Wert. Die Spiegeldaten und der maximale Spiegelzählwert können direkt von der Datenbasis 8 erhalten werden, oder sie können aus Eingangsdaten erhalten werden.
  • Zuerst wird im Schritt S201 durch Bezugnahme auf die Spiegeldaten für eine angeforderte Videodatei bestätigt, in wievielen Videoservern die angeforderte Videodatei gespeichert ist, und es wird eine Prüfung durchgeführt, um festzustellen, ob der erhaltene Spiegeldatenwert den maximalen Spiegelzählwert für die angeforderte Videodatei überschreitet oder nicht. Wenn die gefunden, daß der gegenwärtige Spiegeldatenwert für die angeforderte Videodatei den maximalen Spiegelzählwert erreicht hat, verzweigt sich die Programmsteuerung zu "ja" und die Verarbeitung ist danach beendet. Wenn der gegenwärtige Spiegeldatenwert den maximalen Spiegelzählwert nicht erreicht hat, verzweigt die Programmsteuerung zu "Nein" und das Ko pieren oder Spiegeln kann durchgeführt werden.
  • Im Schritt S202 wird eine Liste L4 für die Videoserver, in welchen die angeforderte Videodatei nicht gespeichert ist, angefertigt. Es ist festzustellen, daß das Lastverteilungs-Verarbeitungsprogramm die Liste L4 in dem Speicher herstellt. Dann wird im Schritt S203 auf die gegenwärtigen Übertragungszählwerte 23 in der Videoserver-Verwaltungstabelle 12 Bezug genommen, und der Videoserver, der den kleinsten gegenwärtigen Übertragungszählwert hat, wird aus der Liste L4 ausgewählt und als der VS1 betrachtet. Wenn im Schritt S204 festgestellt wird, daß der gegenwärtige Übertragungszählwert 23 für den VS1 den maximalen Übertragungszählwert 22 erreicht hat ("Ja"), oder wenn, selbst wenn das Ergebnis "Nein" ist, wird im Schritt S205 festgestellt, daß nicht ausreichender Raum in der gegenwärtig nicht verwendeten Bandbreite des Netzwerkes ist ("Nein"), wird im folgenden Schritt S208 der Server VS1 aus der Liste L4 entfernt und die revidierte Liste wird als eine neue Liste L4 bestimmt.
  • Wenn im Schritt S204 der gegenwärtige Übertragungszählwert 23 des VS1 den maximalen Übertragungszählwert 22 nicht erreicht hat ("Nein"), und wenn im Schritt S205 ausreichender Raum in der gegenwärtig nicht verwendeten Bandbreite vorhanden ist ("Ja"), wird im Schritt S206 die Größe des freien Speicherraums von dem VS1 angefordert, um den freien Speicherraum des VS1 zu bestätigen. Wenn ein ausreichender Bereich in dem Speicher verfügbar ist, in welchen eine angeforderte Videodatei kopiert werden kann ("Ja"), wird im Schritt S216 der VS1 als ein Übertragungsvideoserver bezeichnet.
  • Wenn andererseits im Schritt S206 die Speicherkapazität nicht ausreichend ist ("Nein"), oder wenn die nicht verwendete Speicherkapazität des Videoservers VS2 die obere Grenze der Speicherkapazität überschreitet, die vorher eingestellt wurde, wird im Schritt S207 angenommen, daß der VS2 ein Übertragungsvideoserver sein kann, wenn die nicht verwendet Speicherkapazität erhalten werden kann, und der VS1 wird als der letzte Eintrag einer Speichermangelliste L5 hinzugefügt.
  • Der VS1 ist als der letzte Eintrag in der Liste L5 aus dem Grunde hinzugefügt, daß, da die Videoserver in aufsteigender Folge gemäß einem gegenwärtigen Übertragungszählwert ausgewählt werden, sie auch in der Liste L5 in aufsteigender Folge gemäß dem gegenwärtigen Übertragungszählwert angeordnet sind, so daß der Videoserver, der den kleinsten gegenwärtigen Übertragungszählwert hat, aufeinander folgend von der Spitze der Liste L5 herausgezogen werden kann, und die erforderliche Verarbeitungsmenge kann reduziert werden.
  • Wenn im Schritt S208 die Liste L4 aktualisiert wird, wird im Schritt S209 eine Prüfung durchgeführt, um festzustellen, ob die Liste L4 erschöpft ist oder nicht. Wenn die Liste L4 nicht erschöpft ist ("Nein"), kehrt die Programmsteuerung zum Schritt S203 zurück, und der obige Prozeß wird wiederholt, bis im Schritt S216 der Übertragungsvideoserver VS1 bezeichnet wird, oder bis im Schritt S209 festgestellt wird, daß die Liste L4 erschöpft ist.
  • Wenn im Schritt S209 die Liste L4 erschöpft ("Ja"), wird im folgenden Schritt S210 die Speichermangelliste L5 geprüft. Wenn die Liste L5 erschöpft ist ("Ja"), wird angenommen, daß kein Videoserver gefunden wurde für die Bezeichnung als ein Übertragungsvideoserver, und die Verarbeitung wird danach beendet.
  • Wenn im Schritt S210 die Liste L5 nicht erschöpft ist ("Nein"), wird im Schritt S211 der Videoserver an der Spitze der Liste L5 als VS1 bezeichnet. Wenn im Schritt S212 festgestellt wird, daß keine Datei vorhanden ist, die von VS1 gelöscht werden kann ("Nein"), wird im Schritt S213 der VS1 aus der List L5 gelöscht, die Liste wird als eine neue L5 aktualisiert und die Programmsteuerung kehrt danach zum Schritt S210 zurück.
  • Wenn im Schritt S212 eine Datei vorhanden ist, die gelöscht werden kann ("Ja"), wird im Schritt S214 diese Datei gelöscht und im Schritt S215 wird eine Prüfung durchgeführt, um festzustellen, ob der freie Speicherraum des Videoservers VS1 angemessen für das Kopieren der angeforderten Videodatei ist oder nicht. Die Bestimmung der Dateilöschung hängt von der Zugriffshäufigkeit ab, die von einer Zugriffshistorie erhalten wird. Die Zugriffshistorie wird in der Datenbank 8 gespeichert, wenn ein Kunde eine Übertragung anfordert. Zu der Zeit der Übertragungsanforderung werden der Name der anfordernden Kundenstation, das Datum, der Dateiname, der Servername und Operationsinhalte beispielsweise als die Zugriffshistorie eingegeben. Somit können die Zugriffsaufzeichnung für eine Videodatei und die Lastverteilung für Server erhalten werden.
  • Eine Videodatei, welche die einzige Datei ist, die in dem System verbleibt (wie festgestellt durch Verwendung durch Spiegeldaten), ist als ein Löschungsziel nicht verfügbar. Jedoch werden durch Bezugnahme auf die Zugriffshistorie Videodateien, bei denen festgestellt wird, daß sie in dem Videoserver nicht zu existieren brauchen, da eine lange Zeit seit dem letzten Zugriffsdatum vergangen ist, in den Bibliotheksserver 9 kopiert, um diese Dateien in dem System zurückzubehalten, beginnend mit der Datei, welche die längste verstrichene Zeit seit dem letzten Zugriffsdatum hat, und die Videodateien in dem Videoserver werden gelöscht, so daß die erforderliche freie Speicherkapazität in dem Videoserver erhalten werden kann.
  • Wenn im Schritt S215 eine angemessene Speicherkapazität nicht erhalten werden kann ("Nein"), kehrt die Programmsteuerung zum Schritt S212 zurück und die Löschung von nicht erforderlichen Videodateien wird fortgesetzt. Wenn im Schritt S215 eine angemessene Speicherkapazität für das Kopieren der angeforderten Videodatei erhalten wurde, wird der VS1 im Schritt 5216 als ein Übertragungsvideoserver bezeichnet.
  • Nachfolgend wird im Schritt S217 eine Prüfung durchgeführt, um festzustellen, ob die Liste L3 erschöpft ist oder nicht, um zu bestimmen, welcher Videoserver (nachfolgend als ein VS2 bezeichnet) die Quelle für das Kopieren sein wird. Die Liste L3, die im Schritt S114 hergestellt wurde, ist von den Videoservern, in denen eine angeforderte Videodatei gespeichert ist, die gegenwärtige Übertragungszählwerte 23 haben, die kleiner als die maximalen Übertragungszählwerte 22 für die Videoserver sind, und die ausreichend Raum in den Bandbreiten des Netzwerks haben. Wenn die Liste L3 nicht erschöpft ist ("Nein"), wird im Schritt S218 der Videoserver in der Liste L3, der den am meisten verfügbaren Raum in der Bandbreite hat, als der VS2 bezeichnet. Wenn die Liste L3 erschöpft ist ("Ja"), wird im Schritt S219 ein beliebiger Videoserver, in welchem die angeforderte Videodatei gespeichert ist, als der VS2 bezeichnet.
  • Schließlich wird im Schritt S220 die angeforderte Videodatei aus dem Server VS2 in den Server VS1 kopiert, damit sie in der Lage ist, danach von dem Server VS1 übertragen zu werden. Die Übertragung vom VS1 kann beginnen, selbst bevor das Kopieren von dem VS2 zu dem VS1 beendet ist, und wenn die Übertragung parallel zu dem Kopiervorgang durchgeführt wird, kann eine ausgezeichnete Antwort für die Kundenstationen erhalten werden.
  • Obgleich dies bei diesem Ausführungsbeispiel nicht bestimmt ist, gibt es zwei Wege zur Verwendung des Videoservers VS1, der durch das Lastverteilungs-Verarbeitungsprogramm 15 bezeichnet ist. Bei dem einen Weg werden der Name eines anfordernden Kunden und ein Videodateiname zu einem bezeichneten Videoserver VS1 übertragen, um den Videoserver VS1 aufzufordern, die Übertragung durchzuführen, und bei dem anderen Weg wird ein bezeichneter Videoservername zu einer Kundenstation zurückgeführt, um dem Kunden zu ermöglichen, direkt zu dem Videoserver zuzugreifen. Bei diesem Ausführungsbeispiel kann jedes dieser Verfahren angewendet werden.
  • Weiterhin kann, obgleich die Liste L1 bei diesem Ausführungsbeispiel im Schritt S101 hergestellt wird, da eine Liste von Videoservern, in welchen eine angeforderte Videodatei gespeichert ist, bekannte Daten darstellt, die Liste L1 vorher in der Datenbank 8 hergestellt werden.
  • Zusätzlich braucht, obgleich in den Schritten S103, S104, S204 und S205 auf den Übertragungszählwert und die Bandbreite Bezug genommen wird, um festzustellen, ob eine Übertragung durchgeführt werden kann oder nicht, für eine derartige Feststellung nur auf die Bandbreite Bezug genommen zu werden, solange wie beispielsweise die CPU eines Videoservers in der Lage zu einer angemessenen Leistung ist, oder es braucht für eine derartige Feststellung nur auf den Übertragungszählwert Bezug genommen zu werden, solange wie die Bandbreite für den Videoserver angemessen ist.
  • Weiterhin kann, obgleich in den Schritten S105 und S106 in Betracht gezogen wird, daß alle Übertragungen für dieselbe Videodatei nicht einem bestimmten Videoserver zugewiesen werden sollten, eine Übertragungslast ohne eine solche Betrachtung verteilt werden durch Bezugnahme nur auf gegenwärtige Übertragungszählwerte oder die gegenwärtigen Bandbreiten der Videoserver.
  • Wie vorstehend beschrieben ist, kann gemäß diesem Ausführungsbeispiel, da die Übertragungszählwerte der Videoserver einer Durchschnittswertbildung unterzogen werden, die Konzentration der Übertragungsanforderungen auf eine bestimmte Datei verhindert werden und Lasten können daher verteilt werden.
  • Zusätzlich werden die verwendeten Speicherkapazitäten der Videoserver einer Durchschnittswertbildung unterzogen durch Kopieren von häufig angeforderten Videodateien zu anderen Servern und durch Löschen nicht verwendeter Videodateien aus den Servern und Überführen von diesen zu einem Archiv-Bibliotheksserver.
  • Weiterhin wird, wenn eine Videodatei zu einem anderen Videoserver kopiert wird, wenn die Übertragungsanfor derungen für die Videodatei häufig sind, der maximale Übertragungszählwert für das System relativ zu der angeforderten Datei erhöht, und ein angemessener Service wird sichergestellt in Abhängigkeit von den Übertragungsanforderungen von den Kunden.
  • Da Videodateien, deren Anzahl durch Kopieren automatisch erhöht wird, automatisch gelöscht werden, wenn die Zugriffsfrequenz abnimmt, kann die für die Systemverwaltung erforderliche Arbeit reduziert werden. Als ein Ergebnis des automatischen Kopierens und Löschens von Videodateien werden Kopien einer Videodatei, die häufig benutzt wird, erhöht, und demgemäß wird der Übertragungszählwert für die Videodatei in dem System erhöht. Andererseits werden, da die Videodateien, welche weniger häufig verwendet werden, automatisch gelöscht werden, die Übertragungszählwerte für die Videodateien in dem System herabgesetzt. Daher kann, da die Anzahl von Kopien der Videodateien, d. h. die Übertragungszählwerte der Videodateien, proportional zu der Häufigkeit ihrer Verwendung sind, die Lastverteilung entsprechend der Speicherkapazität in Übereinstimmung mit der Häufigkeit der Verwendung durchgeführt werden.
  • Gemäß einem zweiten Ausführungsbeispiel der Erfindung wird auf die Zugriffshistorie jedes Videoservers Bezug genommen und Daten für die Lastverteilung eines Tages werden für jeden Videoserver erhalten. Es wird vorhergesagt, daß die Last für jeden Videoserver in der folgenden Periode erhöht oder verringert wird, und diese Vorhersage kann als eine Bezugnahme für die Bestimmung verwendet werden. Z. B. wird eine Bestimmung durch Verwendung der Bezugnahme in den Schritten S102 und S112 in 5 hinzugefügt. Wenn die Last auf den Videoserver die Tendenz hat, anzusteigen, wird der Videoserver entfernt und ein Videoserver, für welchen der gegenwärtige und künftige Übertragungszählwert der kleinste ist, wird ausgewählt. Die Lastvorhersage gemäß der Eintages-Lastverteilung, welche von der Zugriffshistorie erhalten wird, kann nicht nur für einen Übertragungsvideoserver zu der Zeit der Lastverteilung angewendet werden, sondern auch für die beiden Videoserver, die während eines Kopiervorgangs getroffen sind, so daß ein glatter Kopiervorgang durchgeführt werden kann.
  • Der Erwerb der Lastverteilungsdaten ist nicht auf Einheiten eines Tages begrenzt, sondern sie können für Einheiten eines Monats, einer Woche oder einer Stunde erworben werden, und die Einheiten können wie benötigt gewählt werden.
  • Neben der vorbeschriebenen Bezugnahme für die Bestimmung können eine Eintragung für eine Übertragungsstartzeit und eine Eintragung für eine Dateigröße in der Kundenverwaltungstabelle 13 vorgesehen sein. Die verbleibende Zeit für eine Videodatei, die gegenwärtig übertragen wird, wird berechnet, um eine künftige Last vorherzusagen, und ein Videoserver, für welchen der gegenwärtige und der künftige Übertragungszählwert die kleinsten sind, kann ebenfalls gewählt werden.
  • Ein drittes Ausführungsbeispiel der Erfindung wird nun beschrieben. Beim Ausführungsbeispiel 1 werden Lasten verteilt bei Empfang von Übertragungsanforderungen für eine Videodatei nicht nur durch Durchführung der Übertragungslast-Verteilungsverarbeitung für den Zweck der Durchschnittswertbildung von Übertragungszählwerten, sondern auch durch Durchführung einer Dateilast-Verteilungsverarbeitung, um zu verhin dern, daß Anforderungen für eine bestimmte Videodatei zu einem einzelnen Videoserver gerichtet werden, und eine Speicherlast-Verteilungsverarbeitung für die Durchschnittswertbildung der verwendeten Speichergrößen. Wenn eine Änderung in der Dateikonfiguration eines Videoservers nicht gewünscht ist, können die Dateilast-Verteilungs- und die Speicherlast-Verteilungsverarbeitung, die in 6 gezeigt sind, ausgelassen werden, und es braucht nur die Übertragungslast-Verteilungsverarbeitung nach 5 durchgeführt zu werden. Eine optimale Lastverteilung betreffend die Übertragung kann vorgesehen werden, indem nur die Übertragungslast-Verteilungsverarbeitung durchgeführt wird. Es ist festzustellen, daß in diesem Fall die Lastvorhersage durchgeführt werden kann durch Verwendung statistischer Informationen und der verbleibenden Zeit für eine Videodatei, welche übertragen wird.
  • Gemäß einem vierten Ausführungsbeispiel können, wenn ein Kopiervorgang in Abhängigkeit von einer Anforderung von einem Kunden durchgeführt werden soll, die Dateilast-Verteilungs- und Speicherlast-Verteilungsverarbeitung, die in 6 gezeigt sind, auch durchgeführt werden, um einen Kopiervorgang durchzuführen, ohne daß die Speicherkapazität berücksichtigt wird. Ein Videoserver, der eine Kopierquelle ist, wird direkt durch einen Kunden ausgewählt, oder wird erhalten in derselben Weise wie bei dem Verfahren im Schritt S114 zur Herstellung der Liste L3.
  • Obgleich Videodaten in den vorstehend beschriebenen Ausführungsbeispielen beispielhaft verwendet werden, sind die Daten nicht auf Videodaten beschränkt, sondern können Animationsdaten, Daten statischer Bilder, Musikdaten, Sprachdaten, Textdaten usw. sein.

Claims (14)

  1. Lastverteilungssystem zum Verteilen von Übertragungsanforderungen für ausgewählten Dateien, die von mehreren Kundenstationen (2, 3, 4) ausgegeben wurden, als Lasten, welches aufweist: (a) mehrere Server (1, 2), die jeweils eine Speichervorrichtung aufweisen, in der mehrere Dateien zum Übertragen angeforderter Dateien zu Kundenstationen (3, 4, 5) gespeichert sind; und (b) einen Steuerserver (7), der mit den mehreren Servern (1, 2) verbunden ist und eine Berechnungsvorrichtung (15) enthält, dadurch gekennzeichnet, dass die Berechnungsvorrichtung (15) vorgesehen ist zum Berechnen einer Bandbreite, die eine Bitübertragungsrate pro Zeiteinheit für von jedem der mehreren Server übertragene Daten anzeigt, und dass der Steuerserver (7) weiterhin eine Bestimmungsvorrichtung (15) zum Empfang von Übertragungsanforderungen für bestimmte Dateien von Kundenstationen (3, 4, 5) und zur Auswahl eines Servers als Datenübertragungsserver aus den mehreren Servern (1, 2) entsprechend dem verfügbar en Raum der Bandbreite enthält.
  2. System nach Anspruch 1, dadurch gekennzeichnet, dass die Berechnungsvorrichtung (15) vorgesehen ist zum Berechnen einer Bandbreite, die eine Bitübertragungsrate pro Zeiteinheit für von jedem der mehreren Server (1, 2) übertragene Daten anzeigt, und dass die Bestimmungsvorrichtung (15) für die Auswahl eines Servers als Datenübertragungsserver aus den mehreren Servern (1, 2), dessen Bandbreite am kleinsten ist, vorgesehen ist.
  3. System nach Anspruch 1, dadurch gekennzeichnet, dass ein Server als ein Datenübertragungsserver aus den mehreren Servern (1, 2) ausgewählt wird, der den am meisten verfügbaren Raum in der Bandbreite hat.
  4. System nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Bestimmungsvorrichtung (15) weiterhin eine Datei, die von den Kundenstationen (3, 4, 5) angefordert wird, aus einem diese Datei speichernden Server (1, 2) in einen Server (1, 2) kopiert, der diese Datei nicht enthält, und dass sie den Server (1, 2), in den die Datei kopiert ist, als einen Datenübertragungsserver auswählt.
  5. System nach Anspruch 4, bei dem die Bestimmungsvorrichtung (15) dem Server (1, 2), in den die Daten kopiert sind, ermöglicht, Dateien parallel zu der Durchführung des Kopierens der Dateien in den Server (1, 2) auszusenden.
  6. System nach Anspruch 4, bei dem die Bestimmungsvorrichtung (15) maximale Zählwerte für die Übertragung von Daten und maximale Zählwerte für die Übertragung identischer Daten für die mehreren Server (1, 2) als Schwellenwerte für die Durchführung des Kopierens durch die mehreren Server (1, 2) verwendet und die Schwellenwerte zur Bestimmung, ob die Dateien zu kopieren sind oder nicht, verwendet.
  7. System nach Anspruch 4, bei dem die Bestimmungsvorrichtung (15) für jedes Datenwort, das einen maximalen Zählwert für zu speichernde Datenkopien anzeigt, einen Schwellenwert verwendet und den Schwellenwert zur Bestimmung, ob ein Kopieren der Dateien auszuführen ist oder nicht, verwendet.
  8. System nach Anspruch 4, bei dem die Bestimmungsvorrichtung (15) eine verbleibende Speicherkapazität für jede der Speichervorrichtungen der mehreren Server (1, 2), verifiziert und den Server (1, 2) in den die Dateien zu kopieren sind, entsprechend der verbleibenden Speicherkapazität auswählt.
  9. System nach Anspruch 8, bei dem der Steuerserver (7) weiterhin eine Berechnungsvorrichtung (15) aufweist zum Erwerben eines Zählwertes für die Übertragung für jede der Dateien, die von jedem der mehreren Server (1, 2) übertragen werden, wobei, wenn die verbleibende Speicherkapazität für die Speichervorrichtungen von jedem der mehreren Server (1, 2) kleiner ist als die Größe der zu kopierenden Datei, die Bestimmungsvorrichtung (15) eine Datei in einem ausgewählten Server (1, 2) löscht, für die ein Übertragungszählwert am kleinsten ist.
  10. System nach Anspruch 9, weiterhin aufweisend einen Bibliotheksserver (9) mit einer Speichervorrichtung, in der eine Vielzahl von Daten gespeichert ist, wobei die Bestimmungsvorrichtung (15) vor der Löschung von Daten diese Daten in den Bibliotheksserver (9) kopiert.
  11. System nach Anspruch 4, bei dem der Steuerserver (7) weiterhin eine Berechnungsvorrichtung (15) aufweist für den Erwerb eines Lastverteilungsverzeichnisses für einen bestimmten der mehreren Server (1, 2) anhand der Übertragungszugriffshistorie der mehreren Server (1, 2), wobei die Bestimmungsvorrichtung gemäß den Lastverteilungsverzeichnissen Lasten für die mehreren Server (1, 2), die durch Kopiervorgänge bewirkt sind, vorhersagt und einen Server (1, 2) als einen Kopierbestimmungsserver (1, 2) auswählt, dessen vorhergesagte Last am kleinsten ist.
  12. Lastverteilungsverfahren zum Verteilen von Anforderungen für eine Datenübertragung unter mehreren Servern (1, 2), gekennzeichnet durch die Schritte: Erwerben eines verfügbaren Raums in einer Bandbreite, die eine Bitübertragungsrate pro Zeiteinheit für Daten anzeigt, die zu mehreren Kundenstationen (3, 4, 5) durch jeden der mehreren Server (1, 2) übertragen werden; Empfangen von Übertragungsanforderungen für diese Daten von den Kundenstationen (3, 4, 5); und Auswählen eines Servers als einen Datenübertragungsserver aus den mehreren Servern (1, 2) gemäß dem verfügbaren Raum der Bandbreite.
  13. Verfahren nach Anspruch 12, gekennzeichnet durch den Erwerb von Bandbreiten, die jeweils ein von den mehreren Servern (1, 2) zu den Kundenstationen (3, 4, 5) übertragenes Bit anzeigen, und durch die Auswahl eines Servers als eines Daten übertragungsservers aus den mehreren Servern (1, 2), dessen Bandbreite am kleinsten ist.
  14. Verfahren nach Anspruch 12, gekennzeichnet durch Auswählen eines Servers als eines Datenübertragungsservers aus den mehreren Servern (1, 2), der den am meisten verfügbaren Raum in der Bandbreite hat.
DE69628682T 1995-12-26 1996-11-21 System und Verfahren um die Belastung einer Mehrzahl von Datei-Servern zu verteilen Expired - Fee Related DE69628682T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP33880695 1995-12-26
JP7338806A JPH09179820A (ja) 1995-12-26 1995-12-26 負荷分散方式及び方法

Publications (2)

Publication Number Publication Date
DE69628682D1 DE69628682D1 (de) 2003-07-17
DE69628682T2 true DE69628682T2 (de) 2004-04-29

Family

ID=18321648

Family Applications (5)

Application Number Title Priority Date Filing Date
DE69628682T Expired - Fee Related DE69628682T2 (de) 1995-12-26 1996-11-21 System und Verfahren um die Belastung einer Mehrzahl von Datei-Servern zu verteilen
DE69626052T Expired - Fee Related DE69626052T2 (de) 1995-12-26 1996-11-21 System und Verfahren zum Verteilen der Belastung eines Datei-Servers
DE69629218T Expired - Fee Related DE69629218T2 (de) 1995-12-26 1996-11-21 System und Verfahren um die Belastung einer Mehrzahl von Datei-Servern zu verteilen
DE69619213T Expired - Fee Related DE69619213T2 (de) 1995-12-26 1996-11-21 System und Verfahren zur Lastverteilung eines Datei-Servers
DE69628769T Expired - Fee Related DE69628769T2 (de) 1995-12-26 1996-11-21 System und Verfahren um die Belastung von Datei-Server zu verteilen

Family Applications After (4)

Application Number Title Priority Date Filing Date
DE69626052T Expired - Fee Related DE69626052T2 (de) 1995-12-26 1996-11-21 System und Verfahren zum Verteilen der Belastung eines Datei-Servers
DE69629218T Expired - Fee Related DE69629218T2 (de) 1995-12-26 1996-11-21 System und Verfahren um die Belastung einer Mehrzahl von Datei-Servern zu verteilen
DE69619213T Expired - Fee Related DE69619213T2 (de) 1995-12-26 1996-11-21 System und Verfahren zur Lastverteilung eines Datei-Servers
DE69628769T Expired - Fee Related DE69628769T2 (de) 1995-12-26 1996-11-21 System und Verfahren um die Belastung von Datei-Server zu verteilen

Country Status (5)

Country Link
US (1) US6401121B1 (de)
EP (5) EP1054323B1 (de)
JP (1) JPH09179820A (de)
DE (5) DE69628682T2 (de)
HK (4) HK1032646A1 (de)

Families Citing this family (115)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3190813B2 (ja) 1996-02-15 2001-07-23 日本電気株式会社 配信システム
KR100480019B1 (ko) * 1997-08-29 2005-07-07 엘지전자 주식회사 다중스트림서버를갖는비디오서버의최소중복저장방법
US6816904B1 (en) * 1997-11-04 2004-11-09 Collaboration Properties, Inc. Networked video multimedia storage server environment
WO1999049430A1 (en) * 1998-03-26 1999-09-30 Sharp Kabushiki Kaisha Data distributing system and data selling apparatus therefor, data retrieving apparatus, duplicated data detecting system, and data reproducing apparatus
JPH11298880A (ja) * 1998-04-09 1999-10-29 Toshiba Corp ストレージ共有型分散ビデオサーバシステム
JP3285841B2 (ja) * 1998-04-24 2002-05-27 株式会社次世代情報放送システム研究所 コンテンツ提供装置およびコンテンツ提供方法、受信装置および受信方法、並びに通信システムおよび通信方法
US7707600B1 (en) * 1998-08-21 2010-04-27 Intel Corporation Confirming video transmissions
US6438652B1 (en) * 1998-10-09 2002-08-20 International Business Machines Corporation Load balancing cooperating cache servers by shifting forwarded request
DE19900636B8 (de) 1999-01-11 2005-04-07 Gailer, Peter Datenzugriffs- und -verwaltungssystem sowie Verfahren zum Datenzugriff und zur Datenverwaltung für ein Rechnersystem sowie deren Verwendung
GB2346302B (en) * 1999-01-29 2003-06-18 Ibm Pre-emptive network load balancing by predictive configuration
GB2364151B (en) * 1999-04-01 2003-10-01 Diva Systems Corp A program scheduler for an interactive information distribution system
US6587881B1 (en) * 1999-04-09 2003-07-01 Microsoft Corporation Software server usage governor
US6947388B1 (en) * 1999-10-20 2005-09-20 International Business Machines Corporation Method and system for a real-time bandwidth allocation scheduler for media delivery
JP3463803B2 (ja) * 1999-11-09 2003-11-05 松下電器産業株式会社 クラスタサーバ装置
US6560717B1 (en) * 1999-12-10 2003-05-06 Art Technology Group, Inc. Method and system for load balancing and management
JP3880760B2 (ja) * 1999-12-28 2007-02-14 富士通株式会社 切替制御装置、切替制御方法および切替制御プログラムを記録したコンピュータ読み取り可能な記録媒体
US7454457B1 (en) 2000-02-07 2008-11-18 Parallel Networks, Llc Method and apparatus for dynamic data flow control using prioritization of data requests
US6658473B1 (en) * 2000-02-25 2003-12-02 Sun Microsystems, Inc. Method and apparatus for distributing load in a computer environment
US6970425B1 (en) * 2000-04-27 2005-11-29 At&T Corp. Method and apparatus for throttling and distributing data transmissions across a network
JP2002073651A (ja) * 2000-06-13 2002-03-12 Canon Inc データ管理システム、サーバ、データ管理方法
US7237027B1 (en) 2000-11-10 2007-06-26 Agami Systems, Inc. Scalable storage system
US7035921B1 (en) * 2000-11-14 2006-04-25 Hewlett-Packard Development Company, L.P. Method of and apparatus for providing web service using a network of servers
US7231445B1 (en) * 2000-11-16 2007-06-12 Nortel Networks Limited Technique for adaptively distributing web server requests
US6862692B2 (en) 2001-01-29 2005-03-01 Adaptec, Inc. Dynamic redistribution of parity groups
US6990667B2 (en) * 2001-01-29 2006-01-24 Adaptec, Inc. Server-independent object positioning for load balancing drives and servers
US20020184368A1 (en) * 2001-04-06 2002-12-05 Yunsen Wang Network system, method and protocols for hierarchical service and content distribution via directory enabled network
US20020152310A1 (en) * 2001-04-12 2002-10-17 International Business Machines Corporation Method and apparatus to dynamically determine the optimal capacity of a server in a server farm
JP4417582B2 (ja) * 2001-04-23 2010-02-17 富士通株式会社 負荷分散方法及びその装置
US7363374B2 (en) * 2001-04-27 2008-04-22 International Business Machines Corporation Method and system for fault-tolerant remote boot in the presence of boot server overload/failure with self-throttling boot servers
US7797375B2 (en) * 2001-05-07 2010-09-14 International Business Machines Corporat System and method for responding to resource requests in distributed computer networks
JP2003067331A (ja) * 2001-08-28 2003-03-07 Matsushita Electric Ind Co Ltd スケジュール作成方法、スケジュール作成装置及びスケジュール作成プログラム
US6778999B2 (en) * 2001-10-12 2004-08-17 International Business Machines Corporation Method for distributing a set of objects in computer application
US20030117500A1 (en) * 2001-12-24 2003-06-26 Icp Electronics Inc. Network video recording system
US20030172094A1 (en) * 2002-03-06 2003-09-11 International Business Machines Corporation Automatic file system maintenance
GB0213073D0 (en) * 2002-06-07 2002-07-17 Hewlett Packard Co Method of maintaining availability of requested network resources
AU2002310400A1 (en) * 2002-06-12 2003-12-31 Zambeel, Inc. Scalable storage system
WO2004004245A1 (en) * 2002-06-28 2004-01-08 Nokia Corporation Load balancing devices and method therefor
US7827214B1 (en) 2003-02-14 2010-11-02 Google Inc. Maintaining data in a file system
US7392318B1 (en) 2003-03-21 2008-06-24 Novell, Inc. Method and system for balancing a traffic load in a half-duplex environment
US7613768B2 (en) * 2003-05-19 2009-11-03 Hewlett-Packard Development Company, L.P. Method and system for managing a streaming media service
US7451209B1 (en) 2003-10-22 2008-11-11 Cisco Technology, Inc. Improving reliability and availability of a load balanced server
US7421695B2 (en) * 2003-11-12 2008-09-02 Cisco Tech Inc System and methodology for adaptive load balancing with behavior modification hints
US7818416B2 (en) * 2004-02-27 2010-10-19 Teamon Systems, Inc. Communications system and method for accessing a server and preventing access blocking and minimizing network traffic
WO2005093587A1 (en) * 2004-02-27 2005-10-06 Teamon Systems, Inc. Communications system and method for accessing a server and preventing access blocking and minimizing network traffic
KR100579782B1 (ko) * 2004-06-02 2006-05-15 곽윤식 웹 스토리지 기반의 그룹 오피스 시스템 및 그 구현 방법
CN101057464B (zh) 2004-09-14 2011-10-19 日本电气株式会社 数据递送系统和数据递送方法
US7644410B1 (en) * 2004-11-23 2010-01-05 Hewlett-Packard Development Company, L.P. Resource management for shared computing environment
US8214461B1 (en) 2004-11-23 2012-07-03 Hewlett-Packard Development Company, L.P. Method of processing request by server computer system
US8458125B1 (en) * 2005-01-31 2013-06-04 Oracle America, Inc. Dynamic creation of replicas of streaming data from a storage device without added load
JP2006293885A (ja) * 2005-04-14 2006-10-26 I Broadcast:Kk 情報配信システムと方法およびプログラム
US20070088817A1 (en) * 2005-10-14 2007-04-19 Microsoft Corporation Shared video service
JP2007115140A (ja) * 2005-10-21 2007-05-10 Hitachi Ltd ストレージシステム、及びストレージスシステムの制御方法
CN100531358C (zh) * 2006-03-13 2009-08-19 华为技术有限公司 一种电子节目单服务器部署系统及建立和运行方法
US8161168B2 (en) * 2006-03-18 2012-04-17 Metafluent, Llc JMS provider with plug-able business logic
US7590666B2 (en) * 2006-06-16 2009-09-15 Microsoft Corporation Predicting capacity consumption in a memory component
US9094257B2 (en) 2006-06-30 2015-07-28 Centurylink Intellectual Property Llc System and method for selecting a content delivery network
US8488447B2 (en) 2006-06-30 2013-07-16 Centurylink Intellectual Property Llc System and method for adjusting code speed in a transmission path during call set-up due to reduced transmission performance
US8289965B2 (en) 2006-10-19 2012-10-16 Embarq Holdings Company, Llc System and method for establishing a communications session with an end-user based on the state of a network connection
US8717911B2 (en) 2006-06-30 2014-05-06 Centurylink Intellectual Property Llc System and method for collecting network performance information
US8184549B2 (en) 2006-06-30 2012-05-22 Embarq Holdings Company, LLP System and method for selecting network egress
US8194643B2 (en) 2006-10-19 2012-06-05 Embarq Holdings Company, Llc System and method for monitoring the connection of an end-user to a remote network
US8102770B2 (en) 2006-08-22 2012-01-24 Embarq Holdings Company, LP System and method for monitoring and optimizing network performance with vector performance tables and engines
US8144587B2 (en) 2006-08-22 2012-03-27 Embarq Holdings Company, Llc System and method for load balancing network resources using a connection admission control engine
US8228791B2 (en) 2006-08-22 2012-07-24 Embarq Holdings Company, Llc System and method for routing communications between packet networks based on intercarrier agreements
US8199653B2 (en) 2006-08-22 2012-06-12 Embarq Holdings Company, Llc System and method for communicating network performance information over a packet network
US7843831B2 (en) 2006-08-22 2010-11-30 Embarq Holdings Company Llc System and method for routing data on a packet network
US8750158B2 (en) 2006-08-22 2014-06-10 Centurylink Intellectual Property Llc System and method for differentiated billing
US8743703B2 (en) 2006-08-22 2014-06-03 Centurylink Intellectual Property Llc System and method for tracking application resource usage
US8407765B2 (en) 2006-08-22 2013-03-26 Centurylink Intellectual Property Llc System and method for restricting access to network performance information tables
US8064391B2 (en) 2006-08-22 2011-11-22 Embarq Holdings Company, Llc System and method for monitoring and optimizing network performance to a wireless device
US8238253B2 (en) 2006-08-22 2012-08-07 Embarq Holdings Company, Llc System and method for monitoring interlayer devices and optimizing network performance
US8531954B2 (en) 2006-08-22 2013-09-10 Centurylink Intellectual Property Llc System and method for handling reservation requests with a connection admission control engine
US7684332B2 (en) 2006-08-22 2010-03-23 Embarq Holdings Company, Llc System and method for adjusting the window size of a TCP packet through network elements
US8549405B2 (en) 2006-08-22 2013-10-01 Centurylink Intellectual Property Llc System and method for displaying a graphical representation of a network to identify nodes and node segments on the network that are not operating normally
US8015294B2 (en) 2006-08-22 2011-09-06 Embarq Holdings Company, LP Pin-hole firewall for communicating data packets on a packet network
US8189468B2 (en) 2006-10-25 2012-05-29 Embarq Holdings, Company, LLC System and method for regulating messages between networks
US8125897B2 (en) 2006-08-22 2012-02-28 Embarq Holdings Company Lp System and method for monitoring and optimizing network performance with user datagram protocol network performance information packets
US8194555B2 (en) 2006-08-22 2012-06-05 Embarq Holdings Company, Llc System and method for using distributed network performance information tables to manage network communications
US9479341B2 (en) 2006-08-22 2016-10-25 Centurylink Intellectual Property Llc System and method for initiating diagnostics on a packet network node
US8144586B2 (en) 2006-08-22 2012-03-27 Embarq Holdings Company, Llc System and method for controlling network bandwidth with a connection admission control engine
US8619600B2 (en) 2006-08-22 2013-12-31 Centurylink Intellectual Property Llc System and method for establishing calls over a call path having best path metrics
US8576722B2 (en) 2006-08-22 2013-11-05 Centurylink Intellectual Property Llc System and method for modifying connectivity fault management packets
US8537695B2 (en) 2006-08-22 2013-09-17 Centurylink Intellectual Property Llc System and method for establishing a call being received by a trunk on a packet network
US8107366B2 (en) 2006-08-22 2012-01-31 Embarq Holdings Company, LP System and method for using centralized network performance tables to manage network communications
US8307065B2 (en) 2006-08-22 2012-11-06 Centurylink Intellectual Property Llc System and method for remotely controlling network operators
US8224255B2 (en) 2006-08-22 2012-07-17 Embarq Holdings Company, Llc System and method for managing radio frequency windows
US8223655B2 (en) 2006-08-22 2012-07-17 Embarq Holdings Company, Llc System and method for provisioning resources of a packet network based on collected network performance information
US8130793B2 (en) 2006-08-22 2012-03-06 Embarq Holdings Company, Llc System and method for enabling reciprocal billing for different types of communications over a packet network
US8274905B2 (en) 2006-08-22 2012-09-25 Embarq Holdings Company, Llc System and method for displaying a graph representative of network performance over a time period
US20100070650A1 (en) * 2006-12-02 2010-03-18 Macgaffey Andrew Smart jms network stack
US8756253B2 (en) * 2007-01-22 2014-06-17 Xerox Corporation Two-level structured overlay design for cluster management in a peer-to-peer network
WO2008094449A1 (en) * 2007-01-26 2008-08-07 Andrew Macgaffey Novel jms api for standardized to financial market data systems
CN101123527B (zh) * 2007-02-25 2010-10-27 华为技术有限公司 一种流媒体系统、信令转发设备以及流媒体发送方法
US20080219158A1 (en) * 2007-03-09 2008-09-11 Nbc Universal, Inc. Media content distribution system and method
US8111692B2 (en) 2007-05-31 2012-02-07 Embarq Holdings Company Llc System and method for modifying network traffic
US8612974B2 (en) * 2007-07-16 2013-12-17 Red Hat, Inc. Dynamic service topology
JP2009163440A (ja) * 2007-12-28 2009-07-23 Nec Corp 負荷分散方法、負荷分散システム、負荷分散サーバ及び負荷分散プログラム
JP5204296B2 (ja) * 2008-04-03 2013-06-05 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 対話型メディアシステム及び対話型メディアシステムにおける対話型サーバをディメンジョニングする方法
US8068425B2 (en) 2008-04-09 2011-11-29 Embarq Holdings Company, Llc System and method for using network performance information to determine improved measures of path states
JP5528713B2 (ja) * 2009-02-26 2014-06-25 株式会社 日立産業制御ソリューションズ 映像配信システム
JP5153685B2 (ja) * 2009-03-04 2013-02-27 株式会社日立製作所 コンテンツ配信システムおよび配信制御サーバ
JP2011215794A (ja) * 2010-03-31 2011-10-27 Fujitsu Ltd 分散ストレージシステム及びプログラム
CN102148813B (zh) * 2010-09-30 2014-02-26 华为技术有限公司 媒体内容的传输方法和系统
US8856846B2 (en) * 2010-11-29 2014-10-07 At&T Intellectual Property I, L.P. Content placement
US9354932B2 (en) 2011-06-21 2016-05-31 Microsoft Technology Licensing, Llc Dynamically allocated thread-local storage
US8549570B2 (en) * 2012-02-23 2013-10-01 Ericsson Television Inc. Methods and apparatus for managing network resources used by multimedia streams in a virtual pipe
KR101609812B1 (ko) 2012-04-09 2016-04-20 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 프로세싱 로드 분배
JP5975749B2 (ja) * 2012-06-14 2016-08-23 シャープ株式会社 データ配信システム、データ配信方法及び配信制御サーバー
CN105262830B (zh) * 2015-10-30 2018-08-07 北京奇艺世纪科技有限公司 一种文件上传方法及装置
JP6776864B2 (ja) * 2016-12-13 2020-10-28 富士通株式会社 負荷分散装置及び負荷分散方法
CN111182026B (zh) * 2019-11-27 2023-05-12 广西金慕联行数字科技有限公司 一种智能云盒子
CN112671918B (zh) * 2020-12-29 2024-03-05 平安普惠企业管理有限公司 基于二进制的分布式数据下载方法、装置、设备及介质
CN113873045B (zh) * 2021-11-11 2023-09-12 深圳市云语科技有限公司 一种基于能力协商的文件多节点传输方法
CN114374683B (zh) * 2021-12-20 2024-09-10 上海金仕达软件科技股份有限公司 一种档案文件的管理方法、系统及计算机可读存储介质
CN114265695A (zh) * 2021-12-26 2022-04-01 特斯联科技集团有限公司 基于决策技术的能控装置及系统

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3702006A (en) * 1971-06-09 1972-10-31 Ibm Method for balancing the utilization of input/output devices
JPH0293836A (ja) * 1988-09-30 1990-04-04 Toshiba Corp 分散型データベース管理装置
US5031089A (en) * 1988-12-30 1991-07-09 United States Of America As Represented By The Administrator, National Aeronautics And Space Administration Dynamic resource allocation scheme for distributed heterogeneous computer systems
EP0384339B1 (de) * 1989-02-24 1997-04-02 Digital Equipment Corporation Makler für die Auswahl von Rechnernetzwerkservern
US5155851A (en) 1989-05-15 1992-10-13 Bell Communications Research, Inc. Routing an incoming data stream to parallel processing stations
US5163131A (en) * 1989-09-08 1992-11-10 Auspex Systems, Inc. Parallel i/o network file server architecture
US5239649A (en) * 1989-10-30 1993-08-24 International Business Machines Corporation Channel path load balancing, through selection of storage volumes to be processed, for long running applications
WO1991014230A1 (en) * 1990-03-05 1991-09-19 Fujitsu Limited Message communication processing system
JPH04310188A (ja) * 1991-03-01 1992-11-02 Internatl Business Mach Corp <Ibm> 文書/画像ライブラリのためのライブラリサービス方法
US5745758A (en) * 1991-09-20 1998-04-28 Shaw; Venson M. System for regulating multicomputer data transfer by allocating time slot to designated processing task according to communication bandwidth capabilities and modifying time slots when bandwidth change
US5606693A (en) * 1991-10-02 1997-02-25 International Business Machines Corporation Distributed database management over a network
US5444848A (en) * 1992-04-30 1995-08-22 Bull Hn Information Systems Inc. Distribution of communications connections over multiple service access points by choosing remote and local access points having lowest number of connections
US5404515A (en) * 1992-04-30 1995-04-04 Bull Hn Information Systems Inc. Balancing of communications transport connections over multiple central processing units
US5299313A (en) * 1992-07-28 1994-03-29 3Com Corporation Network interface with host independent buffer management
US5386545A (en) * 1992-09-25 1995-01-31 Archive Corporation Target management method for data backup to a shared transfer station, multiple media element device
US5483468A (en) * 1992-10-23 1996-01-09 International Business Machines Corporation System and method for concurrent recording and displaying of system performance data
US5548724A (en) 1993-03-22 1996-08-20 Hitachi, Ltd. File server system and file access control method of the same
JPH06332782A (ja) * 1993-03-22 1994-12-02 Hitachi Ltd ファイルサーバシステム及びそのファイルアクセス制御方法
EP0621704B1 (de) * 1993-04-19 2001-06-20 International Business Machines Corporation System zur netzwerkweiten Bandbreitenzuordnung
US5473362A (en) * 1993-11-30 1995-12-05 Microsoft Corporation Video on demand system comprising stripped data across plural storable devices with time multiplex scheduling
US5544327A (en) * 1994-03-01 1996-08-06 International Business Machines Corporation Load balancing in video-on-demand servers by allocating buffer to streams with successively larger buffer requirements until the buffer requirements of a stream can not be satisfied
US5537542A (en) * 1994-04-04 1996-07-16 International Business Machines Corporation Apparatus and method for managing a server workload according to client performance goals in a client/server data processing system
US5802301A (en) * 1994-05-11 1998-09-01 International Business Machines Corporation System for load balancing by replicating portion of file while being read by first stream onto second device and reading portion with stream capable of accessing
US5583561A (en) * 1994-06-07 1996-12-10 Unisys Corporation Multi-cast digital video data server using synchronization groups
US5583995A (en) * 1995-01-30 1996-12-10 Mrj, Inc. Apparatus and method for data storage and retrieval using bandwidth allocation
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
US5603029A (en) * 1995-06-07 1997-02-11 International Business Machines Corporation System of assigning work requests based on classifying into an eligible class where the criteria is goal oriented and capacity information is available
US5915095A (en) * 1995-08-08 1999-06-22 Ncr Corporation Method and apparatus for balancing processing requests among a plurality of servers based on measurable characteristics off network node and common application
US5768681A (en) * 1995-08-22 1998-06-16 International Business Machines Corporation Channel conservation for anticipated load surge in video servers
US6047309A (en) * 1995-10-02 2000-04-04 International Business Machines Corporation Recording observed and reported response characteristics at server and/or client nodes in a replicated data environment, and selecting a server to provide data based on the observed and/or reported response characteristics

Also Published As

Publication number Publication date
DE69619213T2 (de) 2002-11-07
EP1074913A3 (de) 2001-11-07
EP1054323B1 (de) 2003-06-18
DE69628769D1 (de) 2003-07-24
DE69628682D1 (de) 2003-07-17
DE69629218T2 (de) 2004-04-22
EP1054324A2 (de) 2000-11-22
EP1152337B1 (de) 2003-01-29
HK1041070A1 (en) 2002-06-28
HK1032651A1 (en) 2001-07-27
EP1074913B1 (de) 2003-06-11
EP1054323A2 (de) 2000-11-22
EP0782072A1 (de) 1997-07-02
DE69626052T2 (de) 2004-01-22
EP1054324A3 (de) 2001-11-07
HK1032646A1 (en) 2001-07-27
US6401121B1 (en) 2002-06-04
DE69628769T2 (de) 2004-05-19
DE69626052D1 (de) 2003-03-06
EP1054323A3 (de) 2001-11-07
EP0782072B1 (de) 2002-02-13
EP1054324B1 (de) 2003-07-23
EP1074913A2 (de) 2001-02-07
DE69619213D1 (de) 2002-03-21
DE69629218D1 (de) 2003-08-28
JPH09179820A (ja) 1997-07-11
HK1033189A1 (en) 2001-08-17
EP1152337A1 (de) 2001-11-07

Similar Documents

Publication Publication Date Title
DE69628682T2 (de) System und Verfahren um die Belastung einer Mehrzahl von Datei-Servern zu verteilen
DE69030340T2 (de) Makler für die Auswahl von Rechnernetzwerkservern
DE69524119T2 (de) Dynamischgesteuerte leitweglenkung unter anwendung von virtuellen zielknoten
DE69025846T2 (de) Verfahren zur Verwendung gespeicherter partieller Bäume zur Berechnung eines Weges in einem Datenkommunikationsnetz
DE68924954T2 (de) Übertragungssystem für verteilte Datenbanken.
DE69514176T2 (de) Online-Setzen von Videodateien in Festplatten in einer Serverumgebung
DE69832002T2 (de) Übertragungssystem und Übertragungsverfahren,Empfangssystem und Empfangsverfahren
DE69509433T2 (de) Staffelstabübergabe-Optimierungsschema für Belastungsausgleich/Konfigurationsplanung in einem Video-auf-Anfrage-Rechnersystem
DE69328647T2 (de) Verfahren und Vorrichtung zur optimalen Wegeauswahl in Paketübertragungsnetzen
DE3889904T2 (de) Namensverwaltung für ein digitaldatenverarbeitungssystemnetzwerk.
DE19842673B4 (de) Verfahren und Vorrichtung zur Vermittlung bei der Datenkommunikation
DE60313567T2 (de) Zugriffsrelayvorrichtung
DE60015423T2 (de) Verfahren und Vorrichtung zur Objektwiedergabe in einem Netzwerk
DE68925957T2 (de) Fernmeldedatenbankzugriffsverfahren
DE69732605T2 (de) Dynamisches Cachespeicher-Vorladen über lose gekoppelte administrative Bereiche
DE602004008550T2 (de) Speichervorrichtung und System zum Bereitstellen einer Reservierungsfunktion für einen Kommunikationspuffer.
DE3908459C2 (de) Netzwerkserver
DE69434329T2 (de) Verfahren und Vorrichtung zur Regulierung von Zellentransmissionen über virtuelle Kanäle
DE69407287T2 (de) Datenwiederauffindungssystem
DE4330986A1 (de) Verfahren zum Erfassen von Verzeichnisdaten von Vermittlungssystemen
DE69827073T2 (de) Steuerungssystem zur Reservierung von permanenten virtuellen Verbindungen
DE4218025A1 (de) Datenspeicherverwaltungssystem und verfahren mit speicherzuordnung auf der basis nachgefragter dienstklassen
DE69127399T2 (de) Verfahren zur automatischen Löschung vorübergehender Dokumentverbindungen in einem Datenverarbeitungssystem
DE69534352T2 (de) Standortregistrierung eines mobilen endgerätes in einem mobilen kommunikationssystem
DE69331373T2 (de) Automatische Feststellung von erreichbaren Netzwerkelementen

Legal Events

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