-
HINTERGRUND
DER ERFINDUNG
-
1. Gebiet
der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf ein Netz-Datenverteilungssystem,
in dem die Verteilung hochwertiger Daten (insbesondere Videodaten) realisiert
wird und die Fähigkeit
der Datenübertragung
zwischen einem Server und Clients in einem System, das aus einem
Server (oder aus Servern), Clients und einem Netz besteht, die getrennt
gemanagt werden, verbessert wird. Diese Anmeldung beruht auf den
Patenten
JP 9 214 936 und
JP 10 116 239 .
-
2. Beschreibung des verwandten
Gebiets
-
Gemäß der Verbreitung
lokaler Netze (im Folgenden als "LAN" abgekürzt), Verbesserungen bei
den Eigenschaften von Rechnern und der Entwicklung von Massenspeichervorrichtungen
und preiswerten Diskettenvorrichtungen haben Datenbanksysteme der
Server-Client-Form in letzter Zeit ebenfalls zugenommen. In einem
solchen Datenbanksystem ist auf der Server-Seite eine Datenbank konstruiert,
während
ein Client bei Bedarf Informationen von dem Server anfordert. Gemäß der ausgegebenen
Anforderung werden zwischen dem Server und dem Client eine Datensendung
und ein Datenempfang ausgeführt.
Wenn der Client Daten empfängt,
die von dem Server gesendet wurden, decodiert der Client die Daten
für den
richtigen Gebrauch.
-
In
letzter Zeit haben Datenbanksysteme nicht nur Daten von Informationen
in Textform zu handhaben, sondern auch Audio- oder Videoinformationen.
Insbesondere Videodaten haben größere Datengrößen als
andere Medien, selbst wenn die Videodaten vorverarbeitet und unter
Verwendung eines Kompressionscodierungsverfahrens gespeichert worden
sind; somit ist es nicht praktisch, z. B. ein Dateiübertragungsverfahren
anzunehmen, in dem alle Daten einmal zu einem Client gesendet werden
und daraufhin irgendwelche Daten ausgelesen werden. Somit ist allgemein
ein weiteres Verfahren angenommen worden, in dem Daten, die für einen
Client zum Ausführen
einer Echtzeitdatendecodierung und -wiedergewinnung erforderlich
sind, ununterbrochen von dem Server geliefert werden. Wie in dem
Artikel "RTP payload
format for H.261 video streams" vom
10. 7. 1995 von T. Turletti und C. Huitema offenbart ist, steuert
die Server-Seite in diesem Verfahren die Rate des Lieferns von Daten,
während
der Client die Daten lediglich zu empfangen und wiederzugewinnen braucht.
-
Um
unter Verwendung eines herkömmlichen Datenbanksystems,
das die Videoverteilung ausführt,
einen stabilen Videoverteilungsdienst zu schaffen, ist es dagegen
erforderlich, eine Systemkonstruktion aufzubauen, die einen hochwertigen
Server, um eine stabile Datenlieferung an mehrere Clients sicherzustellen;
ein Netz mit einem gesicherten Übertragungsband,
in dem die Datenübertragung
nicht durch anderen Verkehr beeinflusst wird; und Clients, die einheitliche
Eigenschaften zum Wiedergewinnen aller gelieferten Daten haben,
enthält.
Diese Anforderungen beruhen auf der Voraussetzung, dass die Datenübertragung
in einem idealen Systemumstand ohne Betrachtung anderer externer
Faktoren ausgeführt
wird. Allerdings ist es auch vom Standpunkt der Effizienz oder Wirtschaftlichkeit
aus erwünscht,
ein Videoverteilungssystem unter vorhandenen Umständen zu
realisieren.
-
Der "vorhandene Umstand" ist hier für jeden der
Server, des Netzes und der Clients einzeln definiert. Bezüglich des
Servers wird ein allgemeiner Computer angenommen, der mit einem
vorhandenen Netz verbunden ist, wobei ein solcher allgemeiner Computer
auch für
eine andere Verwendung als für die
Videoverteilung verwendet werden kann. Bezüglich des Netzes kann es ebenfalls
für eine
andere Verwendung als für
die Videoverteilung verwendet werden, wobei in dem Netz nicht immer
ein für
die Videodatenübertragung
erforderliches Band sichergestellt ist. Außerdem wird ebenfalls eine
andere Situation angenommen, in der unter einem Unstand, in der mehrere
Netze miteinander verbunden sind, die Datenübertragung von einem Server
zu einem Client über
mehrere Netze ausgeführt
wird. Bezüglich
der Clients werden vorhandene Computer wie etwa PCs (Personal Computer)
oder WSs (Workstations) angenommen, die eine Hardware ausschließlich zum
Decodieren codierter Videodaten haben können oder die anhand von Software
betrieben werden können. Hinsichtlich
der Softwarebasis kann der Client leicht an einer Wirkung leiden,
dass die Bedingung der Betriebsmittel (der CPU, Speicher und dergleichen)
gelegentlich in Übereinstimmung
mit internen oder externen Verarbeitungssituationen geändert werden kann.
-
Andererseits
ist es nicht notwendig, dass der Server und der Client während der
Datenübertragung in
einer eineindeutigen Entsprechung sind, wobei verschiedene Systeme
realisiert worden sind, die Daten für mehrere Clients gleichzeitig
liefern können. 8 zeigt
ein Beispiel des Server-Clients-Datenübertragungssystems, das einen
Server 101 zum Bereitstellen von Daten unter Verwendung
des Senders 121 und vier Clients 111, 112, 113,
und 114, die über das
Netz 3 mit dem Server verbunden sind, zum Empfangen von
Daten unter Verwendung der Empfänger 131, 132, 133 und 134 zeigt.
Dieses Datenübertragungssystem
kann auf den obigen Videoverteilungsdienst angewendet werden.
-
Darüber hinaus
ist ein weiterer Typ eines Übertragungssystems
mit mehreren Servern, d. h. ein System, in dem die Anzahl der Server
nicht auf eins begrenzt ist, realisiert worden. In diesem System werden
die Daten, die die Gleichen wie die durch einen Server bereitgestellten
sind, zu anderen Servern dupliziert. In diesem System kann ein Client
durch Zugreifen auf irgendeinen Server in dem System die gleichen
Daten erhalten.
-
Allerdings
besitzt das oben beschriebene Server-Clients-Datenübertragungssystem
einige zu lösende
Probleme.
-
Das
erste Problem ist die Verringerung der Datenübertragungsfähigkeit
eines Servers wegen Überlastung
des Servers, d. h. wegen eines Überschusses
an Zugriff durch die Clients. Falls gleichzeitige Datenlieferoperationen
für mehrere
Clients zulässig
sind, nimmt die durch den Server getragene Last gemäß der Zunahme
der Anzahl der Clients, die auf den Server zugreifen, zu. Falls
die durch den Server getragene Last einen für die normale Datenlieferung
bestimmten zulässigen
Betrag überschreitet, kann
die Datenlieferung von dem Server an die Clients verzögert werden
oder ferner angehalten werden. Das heißt, das Absenken der Fähigkeit
(oder des Durchsatzes) des Servers wegen der Überlastung stört die normale
Datenlieferung.
-
Das
zweite Problem bezieht sich auf ein herkömmliches Übertragungssystem, das mehrere
Server, die die gleichen Daten haben (d. h. Spiegel-Server), umfasst.
Dieses herkömmliche
System besitzt eine Wirkung, die Last zu verteilen. Allerdings ist
es erforderlich, die Situation aufrechtzuerhalten, dass alle Server
die gleichen Daten haben; somit müssen die bereitzustellenden
Daten jedes Mal, wenn sie geändert
werden, an die anderen Server dupliziert werden. Dies ist das zweite
Problem.
-
Das
dritte Problem bezieht sich auf einen Fall, in dem die Erlaubnis
des Zugriffs durch Clients auf den Server begrenzt wird. Wenn der
Zugriff auf den Server begrenzt wird, um die Systemsicherheit zu
schützen,
kann ein Client, dem es nicht erlaubt ist, auf den Server zuzugreifen,
keine Daten erlangen.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Die
vorliegende Erfindung ist in Anbetracht der oben erläuterten
Umstände
gemacht worden, wobei es eine Aufgabe der vorliegenden Erfindung ist,
ein Netz-Datenverteilungssystem
zu realisieren, das unter Umständen
betrieben wird, die durch externe oder interne Faktoren beeinflusst
werden, ohne einen Datenverteilungsdienst zu unterbrechen, während es
an die vorhandene Situation angepasst ist. Außerdem ist es ebenfalls eine
Aufgabe der vorliegenden Erfindung, ein Netz-Datenverteilungssystem mit einer verbesserten
Server-Client-Datenübertragungsfähigkeit
zu realisieren.
-
Somit
schafft die vorliegende Erfindung ein Netz-Datenverteilungssystem
gemäß den unabhängigen Ansprüchen 1,
14, 19, 26 und 32.
-
Wenn
gemäß dem System
Daten über
ein Netz verteilt werden, ist es möglich, gemäß Verzögerungssituationen, die auf
jeder Seite des Servers, des Netzes und der Clients, die unabhängig gemanagt werden,
auftreten, adaptive Operationen auszuführen und die beste Datenwiedergewinnung
zu realisieren, die bei der vorhandenen Systemfähigkeit ausgeführt wird.
In den meisten vorhandenen Systemen wird die Datenübertragungsgeschwindigkeit
durch die Server-Seite gesteuert; in dem vorliegenden System hat
dagegen der Client die Initiative, die Übertragungsgeschwindigkeit
zu steuern und die (Verzögerungs-)Situationen
zu erfassen. Das heißt,
die Client-Seite erfasst zentral (i) die Situationen der Server- und der Netzseite,
indem sie die Ankunft der Daten überwacht;
und (ii) die Situation der Client-Seite, indem sie den Fortschritt
der Decodierung überwacht.
Somit kann die Last der Server-Seite verringert werden; kann der
obere Grenzwert der Anzahl der Clients, die gleichzeitig auf den
Server zugreifen können,
erhöht
werden; und ist es außerdem
möglich,
die Übertragung
nutzloser Pakete in dem Netz zu unterdrücken. Besonders effektiv ist
das vorliegende System, wenn die Client-Seite die Codierung unter Verwendung
von Software ausführt
oder wenn in dem Netz kein für
die Verteilung von Videodaten erforderliches Übertragungsband sichergestellt
ist.
-
Falls
die codierten Daten andererseits eine Form derart haben, dass Daten,
die unabhängig
decodiert werden können,
periodisch in Daten aufgenommen werden, die unter Verwendung einer
Korrelation mit anderen Daten decodiert werden können, kann es effektiv sein,
eine Abwandlung zu verwenden, in der die Verzögerungsinformations-Übermittlungseinrichtung
auf der Client-Seite aufgefrischte Datenanforderungsinformationen,
um die Daten anzufordern, die unabhängig decodiert werden können, sowie
die Verzögerungsinformationen
sendet, wobei die Sendeeinrichtung dann, wenn die Server-Seite die
aufgefrischten Datenanforderungsinformationen empfängt, anhand
der Verzögerungszeitinformationen
die als Nächstes
zu sendenden Paketdaten, die solche Daten enthalten, die unabhängig decodiert werden
können,
auswählt
und sendet. Gemäß dieser Abwandlung
können
Daten, die unabhängig
decodiert werden können,
periodisch in die gesendeten Daten aufgenommen werden.
-
Außerdem ist
es ebenfalls möglich,
auf der Client-Seite eine Decodierungssteuereinrichtung zum Steuern
eines Decodierungsprozesses in der Weise bereitzustellen, dass der
Decodierungsprozess für
die Paketdaten, die empfangen und noch nicht decodiert worden sind,
angehalten wird, wenn die Sendeeinrichtung auf der Server-Seite
die Paketdaten wahlweise anhand der Verzögerungszeitinformationen sendet,
und der Decodierungsprozess mit den Paketdaten, die die Sendeeinrichtung
neu auswählt
und sendet, erneut begonnen wird.
-
Gemäß dieser
Einrichtung ist es möglich, eine
Störung
in den decodierten Daten zu beseitigen und eine schnelle Systemreaktion
zu realisieren.
-
Falls
das Übertragungsband
des Netzes schmal ist oder die Übertragungsverzögerung groß ist, kann
darüber
hinaus die folgende Änderung
verwendet werden, dass die Anforderungseinrichtung auf der Client-Seite
anfordert, dass der Server mehrere Paketdaten gemeinsam sendet,
während
die Sendeeinrichtung auf der Server-Seite die mehreren Paketdaten
ununterbrochen an die Client-Seite sendet, wenn durch die Anforderungseinrichtung
die Übertragung
einer Gruppe der mehreren Paketdaten angefordert worden ist. Diese
Abwandlung ist zur Lösung
der Prozessverzögerung
erwünscht.
-
Wie
oben beschrieben wurde, kann durch Erfassen der Situation jedes
Systembestandteils und Ausführen
adaptiver Operationen gemäß den erfassten
Situationen in einem System, das aus einem Server, aus einem Netz
und Clients besteht, die unabhängig
gemanagt werden, wobei ein solches System derzeit hauptsächlich verwendet
wird, ein wünschenswerter
Datenverteilungsdienst realisiert werden.
-
Außerdem ist
es möglich,
in einem Teil der mehreren Wege, die den Server und die Clients über das
Netz verbinden, oder in der Gesamtheit dieser mehreren Wege Einzel-
oder Mehrstufen-Weiterleitungsserver zu lokalisieren, wovon jeder
einen Empfänger
zum Empfangen von Daten und einen Sender zum Senden der empfangenen
Daten besitzt. Der Sender kann Daten an mehrere Ziele parallel senden.
-
Dementsprechend
wird die Verteilungsfunktion verbessert und dezentralisiert; somit
können, wenn
die Datenübertragungsfähigkeit
des Servers zum Verteilen von Daten unzureichend ist oder wenn ein
Weiterleitungsserver enthalten ist, der unzureichende Kapazität zum Weiterleiten
von Daten hat, Daten durch geeignetes Bilden der Wege in dem System
an die Clients verteilt werden. Außerdem ist es möglich, die
Anzahl der Clients zu erhöhen,
die den Dienst gleichzeitig verwenden können.
-
Außerdem ist
es möglich,
ferner eine Serverlast-Überwachungseinrichtung
zum Überwachen
des Laststatus des Servers, der Daten verteilt; und eine Wegumbildungseinrichtung
zum Ändern
der Form der Wegverbindung zwischen dem Server, der Daten verteilt,
den Weiterleitungsservern und den Clients anhand des Laststatus,
der durch die Serverlast-Überwachungseinrichtung überwacht
wird, bereitzustellen. Ähnlich
ist es hinsichtlich der Weiterleitungsserver ebenfalls möglich, ferner
eine Weiterleitungsserverlast-Überwachungseinrichtung
zum Überwachen
eines Laststatus jedes Weiterleitungsservers; und eine Wegumbildungseinrichtung
zum Ändern
der Form der Wegverbindung zwischen dem Server, der Daten verteilt,
den Weiterleitungsservern und den Clients anhand des Laststatus,
der durch die Weiterleitungsserverlast-Überwachungseinrichtung überwacht
wird, bereitzustellen.
-
Gemäß einer
solchen Anordnung kann der Laststatus jedes Servers durch jede Lastüberwachungseinrichtung
erfasst werden, wobei es möglich ist,
die Wegverbindungsform des Systems in der Weise zu ändern, dass
einige Clients oder Weiterleitungsserver unter Verwendung der Wegumbildungseinrichtung
nicht mit einem Weiterleitungsserver mit einer starken Last, sondern
mit einem Weiterlei tungsserver mit einer kleineren Last verbunden
werden. Somit werden die Durchschnittslasten des Servers für die Verteilung
von Daten und der Weiterleitungsserver immer klein gehalten; somit
wird die Qualität des
Gesamtdiensts gleichförmig
gemacht.
-
Außerdem besitzt
jeder Weiterleitungsserver keine Daten, sondern leitet Daten weiter.
Wenn die für
die Clients zu liefernden Daten geändert werden, braucht somit
lediglich der eine Master-Server für die Verteilung von Daten
die Daten zu ändern;
somit werden Operationen nach der Datenänderung leicht ausgeführt.
-
Darüber hinaus
können
die Weiterleitungsserver einen Weiterleitungsserver enthalten, der
die Erlaubnis hat, sowohl auf den Server, der Daten verteilt, als
auch auf einen Client, der keine Erlaubnis zum Zugreifen auf den
Server hat, der Daten verteilt, zuzugreifen. In diesem Fall ist
es möglich,
Daten zu einem Client zu liefern, der keine Erlaubnis zum Zugreifen
auf den Server hat, der Daten verteilt.
-
Außerdem schafft
die vorliegende Erfindung Vorrichtungen und Verfahren (mit den oben
beschriebenen Merkmalen), die sich sowohl auf die Server- als auch
auf die Client-Seite beziehen, wobei die Bestandteile des obigen
Netz-Datenverteilungssystems und die vorliegende Erfindung ferner
Speichermedien schaffen, die Computerprogramme speichern, die einen
Computer dazu veranlassen, die Verfahren auszuführen.
-
KURZBESCHREIBUNG
DER ZEICHNUNG
-
1 ist
ein Diagramm zur Erläuterung
der Systemkonstruktion der ersten Ausführungsform gemäß der vorliegenden
Erfindung.
-
2A–2C zeigen
das Format zur Übertragung
von Paketdaten in der ersten Ausführungsform.
-
3 ist
ein Blockschaltplan, der die Konstruktion des Servers und des Clients
in der ersten Ausführungsform
zeigt.
-
4A ist
ein Diagramm zur Erläuterung des
Konzepts für
die Übertragungsoperation
für einen
Fall, in dem die verstrichene Zeit, die sich auf die Übertragung
und Decodierung bezieht, kleiner als eine zugewiesene Verarbeitungszeit
für ein
Paket ist; und 4B ist ein Diagramm zur Erläuterung
des Konzepts für
die Übertragungsoperation
für einen Fall,
in dem die verstrichene Zeit, die sich auf die Übertragung und Decodierung
bezieht, größer als eine
zugewiesene Verarbeitungszeit für
ein Paket ist.
-
5A ist
ein Diagramm zur Erläuterung des
Konzepts für
die Übertragungsoperation
für einen
Fall, in dem eine Paketdateneinheit für ein Anforderungspaket übertragen
wird;
-
5B ist
ein Diagramm zur Erläuterung des
Konzepts für
die Übertragungsoperation
für einen
Fall, in dem Anforderungspakete und Paketdaten abwechselnd übertragen
werden; und
-
5C ist
ein Diagramm zur Erläuterung des
Konzepts für
die Übertragungsoperation
für einen
Fall, in dem mehrere Paketdaten nach einem Anforderungspaket gemeinsam übertragen
werden.
-
6 ist
ein Diagramm zur Erläuterung
der Systemkonstruktion der dritten Ausführungsform gemäß der vorliegenden
Erfindung.
-
7 ist
ein Diagramm zur Erläuterung
der Systemkonstruktion der vierten Ausführungsform gemäß der vorliegenden
Erfindung.
-
8 zeigt
ein Beispiel eines herkömmlichen
Server-Client-Datenübertragungssystems.
-
BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
Im
Folgenden werden anhand der Zeichnung bevorzugte Ausführungsformen
der vorliegenden Erfindung ausführlich
erläutert.
-
Erste Ausführungsform
-
1 ist
ein Diagramm zur Erläuterung
der Systemkonstruktion der ersten Ausführungsform gemäß der vorliegenden
Erfindung. In dieser Ausführungsform
ist ein Systembeispiel gezeigt, das das Codierungsverfahren H.261
verwendet, das z. B. in ISDN-Bildtelephonen verwendet wird. Dieses
System ist im (wie in 1 gezeigten) Netz 3 wie
etwa dem Internet realisiert, das als eine Menge mehrerer LANs und
durch einen Server 1 und durch mehrere Clients 2 konstruiert
ist. Der Server 1 und die Clients 2 sind über das
Netz 3, mit dem der Server bzw. die Clients verbunden sind,
miteinander verbunden.
-
Die 2A–2C zeigen
das Format zur Übertragung
von Daten in der vorliegenden Ausführungsform. Das H.261-Verfahren
verwendet das so genannte "Rahmenredundanz-Prädiktionscodierungs"-Verfahren. Bezüglich der
an die Clients 2 zu verteilenden Videodaten (d. h. Bewegtbilddaten) wird,
wie in 2A gezeigt ist, periodisch ein
Bildrahmen eingefügt,
der unter Verwendung des so genannten "Rahmenredundanzcodierungs"-Verfahrens codiert
ist. Diese Einfügung
wird durch einen Codierer ausgeführt,
der eine Anweisung in der Codierungsoperation empfängt.
-
Im
Folgenden wird ein Bildrahmen, der unter Verwendung der Rahmenredundanzcodierungs-Betriebsart
codiert ist, "aufgefrischte
Daten" genannt. Die
schraffierten Teile in 2A geben aufgefrischte Daten
an, die periodisch in Videodaten eingefügt wurden, wobei die Pfeile 4 den
Anfangsblock jeder aufgefrischten Dateneinheit angeben. Die gemäß dem H.261-Schema
codierten Daten sind als ein Bitstrom dargestellt. Somit ist ein
Bitstrom von Daten wie in 2B gezeigt
in Pakete 5 unterteilt, um den Datenübertragungsprozess im Netz 3 zu
erleichtern, wobei die Größe jedes
Pakets für
die Datenübertragung
in dem Netz geeignet ist; ist zu jedem Paket 5 ein Anfangsblock 7 hinzugefügt, um Paketdaten 6 zu erzeugen;
und ist eine Menge von Paketdaten 6 als einzelne Videodaten
im Server 1 gespeichert. Außerdem können im Folgenden die jeweiligen "Paketdaten" zur zweckmäßigen Erläuterung
einfach ein "Paket" genannt werden.
-
Im
Fall eines Diensts vom Speichertyp werden eine Menge Paketdaten 6 als
Dateien gespeichert, während
im Fall eines Echtzeitverteilungsdiensts eine Menge Paketdaten 6,
die zu einer vorgegebenen Periode gehören, von den Jüngsten bis
zu den Ältesten
stets in dem Server gespeichert werden. Das heißt, der Server 1 behandelt
Videodaten, in denen Daten, die hohe Priorität haben und die unabhängig decodiert
werden können,
periodisch angeordnet sind, unabhängig davon, ob die Daten zuvor gespeichert
worden sind oder ob die Daten in Echtzeit behandelt werden.
-
Der
Anfangsblock 7 jeder Paketdateneinheit enthält (i) einen
Zeitindex 71, der durch eine (erwartete) Anfangszeit des
Decodierungsprozesses für
in dem Paket enthaltenen Bitstrom angegeben ist, unter einer Situation,
dass eine Decodierung der früheren Bitströme ohne
irgendwelche unerwünschte
Wirkungen wie etwa eine Verzögerung
normal ausgeführt worden
ist, und (ii) einen Identifizierer 72, der angibt, ob durch
die Rahmenredundanzcodierung codierte Daten in dem Paket enthalten
sind.
-
3 ist
ein Blockschaltplan, der die Konstruktion des Servers und des Clients
in der vorliegenden Ausführungsform
zeigt. Die Seite des Servers 1 umfasst einen Videodatenspeicher-
und -verarbeitungsteil 11, einen Teil 12 zur Erfassung
aufgefrischter Daten und einen Paketsende- und -verarbeitungsteil 13 auf
Server-Seite. Andererseits umfasst die Seite des Clients 2 einen
Videoanzeige- und -verarbeitungsteil 21, einen Decodierungsteil 22,
einen Paketanforderungs- und -empfangsteil 23, einen Decodierungsprozessverzögerungs-Erfassungsteil 24 und
einen Übertragungsprozessverzögerungs-Decodierungsteil 25.
Der Paketsende- und -verarbeitungsteil 13 auf Server-Seite
auf Seiten des Servers 1 und der Paketanforderungs- und
-empfangsteil 23 auf Seiten des Clients 2 sind
hier mit dem Netz 3 verbunden.
-
Anhand
des in 3 gezeigten obigen Aufbaus wird der Betrieb der
vorliegenden Ausführungsform
erläutert.
-
Zunächst führt der
Paketanforderungs- und -empfangsteil 23 in Bezug auf den
Paketsende- und -verarbeitungsteil 13 auf Server-Seite über das
Netz 3 eine Verbindungsoperation aus, um einen Namen des
Inhalts der Videodaten (d. h. einen Namen eines Videoprogramms)
zu bestimmen, die der Client zuerst anfordert. Nachfolgend fordert
der Paketanforderungs- und -empfangsteil 23 auf Seiten
des Clients 2 an, dass der Paketsende- und -verarbeitungsteil 13 auf
Server-Seite Daten von den aufgefrischten Daten, die zuerst in den
angeforderten Daten erscheinen, in der Einheit eines Pakets (d.
h. ein Paket für jede Übertragungsoperation) überträgt. Auf
Seiten des Servers 1 werden die relevanten Daten in Reaktion
auf die Anforderung von dem Videodatenspeicher- und -verarbeitungsteil 11 zu
dem Paketsende- und -verarbeitungsteil 13 auf Server-Seite
gesendet, wobei die Daten von dem Paketsende- und -verarbeitungsteil 13 an
die Seite des Clients 2 weiter gesendet werden. Das durch
den Paketanforderungs- und -empfangsteil 23 empfangene
Paket wird in einem Empfangspuffer im Paketanforderungs- und -empfangsteil 23 gespeichert,
den der Decodierungsteil 22 seinerseits ausliest und decodiert.
Andererseits werden auf Seiten des Clients 2 gleichzeitig
mit dem Empfang eines Pakets in Bezug auf die ersten durch den Paketsende-
und -verarbeitungsteil 13 auf Server-Seite gesendeten Videodaten
durch den Decodierungsprozessverzögerungs-Erfassungsteil 24 und durch
den Übertragungsprozessverzögerungs-Decodierungsteil 25 Messungen
für jede
verstrichene Zeit, die sich auf die Sendung und Decodierung bezieht, begonnen.
-
Wenn
ein neues Paket empfangen wird, misst der Übertragungsprozessverzögerungs-Decodierungsteil 25 beim
Beginn der Datenübertragung eine
von dem Ankunftszeitpunkt des ersten Pakets (in Bezug auf das neue
Paket) verstrichene Zeit. Die im Übertragungsprozessverzögerungs-Erfassungsteil 25 gemessene
verstrichene Zeit wird mit dem Zeitindex 71 verglichen,
der auf den Datenstrom des Ankunftspakets bezogen ist, wobei der
Index in dem Paket registriert ist. Zum Beispiel wird eine verstrichene
Zeit von der Ankunft des ersten Pakets bis zur Ankunft des n-ten
Pakets mit einer Zeit verglichen, die durch Subtrahieren des Zeitindex
des ersten Pakets von dem Zeitindex des n-ten Pakets erhalten wird.
-
Wenn
die Decodierung in Bezug auf die Videodaten, die in einem vom Paketanforderungs-
und -empfangsteil 23 empfangenen Paket enthalten sind, abgeschlossen
ist, misst der Decodierungsprozessverzögerungs-Erfassungsteil 24 eine
von dem Zeitpunkt, zu dem das erste Paket (zu Beginn der Datenübertragung)
aus dem Empfangspuffer in dem Paketanforderungs- und -empfangsteil 23 ausgelesen wurde,
verstrichene Zeit. Die in dem Decodierungsprozessverzögerungs-Erfassungsteil 24 gemessene verstrichene
Zeit wird mit dem Zeitindex 71 verglichen, der auf den
Datenstrom des aus dem Paketanforderungs- und -empfangsteil 23 ausgelesenen
Pakets bezogen ist. Zum Beispiel wird eine verstrichene Zeit vom
Auslesen des ersten Pakets bis zum Auslesen des n-ten Pakets mit
einer durch Subtrahieren des Zeitindex des ersten Pakets von dem
Zeitindex des n-ten Pakets erhaltenen Zeit verglichen.
-
Jede
Verzögerungserfassung,
die in dem Decodierungsprozessverzögerungs-Erfassungsteil 24 und
in dem Übertragungsprozessverzögerungs-Decodierungsteil 25 ausgeführt wird,
wird durch eine ähnliche
Operation wie folgt ausgeführt. Die 4A und 4B sind
Diagramme zur Erläuterung
des Konzepts für
die Operation.
-
Falls
die gemessene verstrichene Zeit kleiner als die relevante Zeitdifferenz
in Bezug auf den Zeitindex 71 ist, werden die Operationen
im Decodierungsteil 22 und im Paketanforderungs- und -empfangsteil 23 bis
zu der durch den relevanten Zeitindex angegebenen Verarbeitungsanfangszeit
angehalten. Wie in diesem Fall gezeigt ist, ist die Übertragungs- und
Decodierungsverarbeitungszeit 1111 pro Paket kleiner als
die jedem Paket zugewiesene Verarbeitungszeit 1110.
-
Falls
die Übertragungs-
und Decodierungsverarbeitungszeit 1112 pro Paket größer als
die Verarbeitungszeit 1110 ist und somit die verstrichene Zeit
die relevante Zeitdifferenz in Bezug auf den Zeitindex überschreitet,
wird wie in 4B gezeigt gemäß der Größe der Differenz 1113 eine
der folgenden zwei Operationen ausgeführt.
-
Hier
ist die durch den Decodierungsprozessverzögerungs-Verarbeitungsteil 24 gemessene
bei der Verarbeitung verstrichene Zeit etwa um eine für die Decodierung
erforderliche Zeit länger
als die durch den Übertragungsprozessverzögerungs-Decodierungsteil 25 gemessene
bei der Verarbeitung verstrichene Zeit. Somit gibt es einen Fall,
in dem die durch den Übertragungsprozessverzögerungs-Decodierungsteil 25 gemessene
bei der Verarbeitung verstrichene Zeit die Verarbeitungszeit 1110 bereits überschritten
hat, während
es einen weiteren Fall gibt, in dem die durch den Übertragungsprozessverzögerungs-Decodierungsteil 25 gemessene
bei der Verarbeitung verstrichene Zeit die Verarbeitungszeit 1110 nicht überschreitet,
sondern die durch den Codierungsprozessverzögerungs-Erfassungsteil 24 gemessene
bei der Verarbeitung verstrichene Zeit die Verarbeitungszeit 1110 überschreitet.
Wenn die durch den Übertragungsprozessverzögerungs-Decodierungsteil 25 gemessene
bei der Verarbeitung verstrichene Zeit die Verarbeitungszeit 1110 bereits überschritten
hat, kann sofort, ohne auf Messergebnisse des Codierungsprozessverzögerungs-Erfassungsteils 24 zu
warten, ein Prozess zur Behandlung (d. h. Beseitigung) der Verzögerung begonnen
werden.
-
In
dem Prozess zur Behandlung der Verzögerung wird auf der Client-Seite
ein zulässiger
Wert für
die Verarbeitungsverzögerung
entschieden. Falls die Differenz 1113 kleiner als der zulässige Wert
ist, werden die Operationen im Decodierungsteil 22 und im
Paketanforderungs- und -empfangsteil 23 so, wie sie sind,
fortgesetzt.
-
Falls
die Differenz 1113 größer als
der zulässige
Wert ist, wird die Operation im Decodierungsteil 22 angehalten
und werden die Pakete, die bereits im Paketan forderungs- und -empfangsteil 23 angekommen
sind, gelöscht.
Daraufhin fordert die Client-Seite von dem Paketsende- und -verarbeitungsteil 13 auf Server-Seite
aufgefrischte Daten an, die zuerst nach einem Paket erscheinen,
das auf die nächste Übertragung
wartet. Bei dieser Anforderung für
aufgefrischte Daten wird ebenfalls ein Wert der Differenz 1113,
die in dem Decodierungsprozessverzögerungs-Erfassungsteil 24 und
in dem Übertragungsprozessverzögerungs-Decodierungsteil 25 erfasst wurde,
zu dem Server 1 übermittelt.
Auf Seiten des Servers 1, der die Anforderung (für aufgefrischte
Daten) vom Client 2 empfangen hat, erfasst der Teil 12 zur
Erfassung aufgefrischter Daten ein Paket, das aufgefrischte Daten
enthält
und von dem erwartet wird, dass es nach einer Zeit erscheinen, die
der übermittelten
Zeitdifferenz entspricht, die von der durch den Zeitindex 71 eines
Pakets, von dem erwartet wird, dass es als Nächstes übertragen wird, angegebenen
Zeit vergeht. Daraufhin beginnt der Server 1 die Datenübertragung
von dem erfassten Paket erneut.
-
Wenn
die Seite des Clients 2 die aufgefrischten Daten, die der
Anforderung genügen,
empfängt, fordert
der Paketanforderungs- und -empfangsteil 23 ununterbrochen
Pakete an, von denen erwartet wird, dass sie auf das empfangene
Paket folgen. Der Decodierungsteil 22 hält die Decodierungsoperation
bis zu der in dem Empfangspaket registrierten Anfangszeit an und
beginnt daraufhin die Decodierungsoperation erneut, wodurch die
Verzögerung
der Verarbeitung beseitigt wird.
-
Zweite Ausführungsform
-
Nachfolgend
wird die zweite Ausführungsform
gemäß der vorliegenden
Erfindung erläutert. Diese
Ausführungsform
verwendet die gleiche Konstruktion, wie sie in 3 gezeigt
ist, und ist effektiv, wenn das Übertragungsband
des Netzes, das sich zwischen dem Server und den Clients befindet,
im Vergleich zu einem Übertragungsband,
das für
eine Videodatenübertragung
erforderlich ist, sehr schmal ist oder wenn wegen des Durchgangs
durch mehrere Netze eine hohe Größe der Übertragungsverzögerung erwartet
wird. Die 5A–5C sind
Diagramme zur Erläuterung
des Konzepts für Übertragungsoperationen
dieser Ausführungsform.
-
In
diesem System werden aufgefrischte Daten zum Beseitigen der Verzögerung verwendet.
Im Fall von Videodaten, die durch das Codierungsverfahren H.261
codiert worden sind, sind die Größen der
aufgefrischten Daten selbst verhältnismäßig größer als
die anderer Daten. Das heißt,
dass die aufgefrischten Daten wie in 5B gezeigt
im Vergleich zur maximalen Größe des in
dem Netz übertragenen Pakets 1104 groß sind und
sich über
eine Länge
verteilen können,
die mehreren Paketen entspricht (siehe den durch das Bezugszeichen 1105 angegebenen Fall).
Um die Verzögerung
zu beseitigen, ist es erforderlich, die gesamten aufgefrischten
Daten zu empfangen, sie zu decodieren und anzuzeigen. Falls hier mehrere
Pakete für
die Verarbeitung aufgefrischter Daten erforderlich sind, ist es
für eine
Paketdateneinheit 1102 wie in 5A gezeigt
ineffizient, für
ein Anforderungspaket 1101 übertragen zu werden, das von
der Client-Seite zu der Server-Seite übertragen wird.
Insbesondere dann, wenn das Übertragungsband
unzureichend ist oder die Übertragungsverzögerung groß ist, kann
die in der Verarbeitungszeit 1103 enthaltene Verarbeitungsverzögerung in
Bezug auf ein Anforderungspaket nicht vernachlässigt werden. Somit wird ein
weiteres Verfahren angenommen, in dem der Client mehrere Pakete
durch eine Anforderung erhält.
-
Wenn
sich die Client-Seite zuerst mit dem Server verbindet, um erste
aufgefrischte Daten zu empfangen, wird eine Datenübertragung
in der Einheit eines Pakets angefordert. Der Übertragungsprozessverzögerungs-Decodierungsteil 25 misst
hier die Zeit von der Ausgabe einer Anforderung bis zur Ankunft
des relevanten Pakets und bestätigt,
ob die Übertragungszeit
pro Paket größer als
eine für
die Verarbeitung von in dem Paket enthaltenen Videodaten zugewiesene
Verarbeitungszeit ist. Außerdem
erfasst der Übertragungsprozessverzögerungs-Decodierungsteil 25, über wie
viele Pakete die empfangenen aufgefrischten Daten verteilt sind.
-
Falls
die Übertragungszeit
pro Paket ausreichend kleiner als die Verarbeitungszeit für ein Paket ist,
wird gefolgert, dass ein erforderliches Verarbeitungsband in dem
Netz sichergestellt ist. In diesem Fall werden auch in Anbetracht
der Dezentralisierung des Verkehrs nicht mehrere Pakete (pro eine Übertragung)
angefordert. Wie durch den Übertragungszeitverlauf
jedes Anforderungspakets, das durch nach oben gerichtete Pfeile
in 5B angegeben ist; und durch den Übertragungszeitverlauf
jeder Paketdateneinheit, die ebenfalls in 5B durch
nach unten gerichtete Pfeile angegeben ist, gezeigt ist, wird dementsprechend
die Übertragung
in der Einheit eines Pakets ausgeführt. Das heißt, die
Operationen sind in diesem Fall die Gleichen wie jene, die in der ersten
Ausführungsform
ausgeführt
werden.
-
Andererseits
ist in einer Situation, in der die zum Übertragen eines Pakets erforderliche
Zeit die für
ein Paket zugewiesene Verarbeitungszeit überschreitet, eine Resynchronisierung
erforderlich. Dementsprechend wird dann, wenn aufgefrischte Daten
neu anfordert werden, zu der durch den Pfeil 1108 in 5C angegebenen
Zeit eine Anforderung für
mehrere Pakete ausgegeben, wobei die Anzahl der mehreren Pakete
anhand der Anzahl der Pakete entschieden wird, die der Länge der
aufgefrischten Daten entspricht, die nach der Anforderung für die ersten
aufgefrischten Daten erfasst worden sind. Wie durch das Bezugszeichen 1109 in 5C gezeigt
ist, sendet der Server an diesem Fall in Reaktion auf eine Anforderung
ununterbrochen weiter die angeforderte Anzahl von Paketen. Auf der
Client-Seite werden
die ununterbrochen übertragenen
Videodatenpakete in dem Empfangspuffer gespeichert. Die in dem Empfangspuffer
gespeicherten Videodatenpakete werden übertragen, um in der Reihenfolge
der Zeit, zu der sie angekommen sind, decodiert zu werden.
-
Falls
kein erforderliches Übertragungsband sichergestellt
ist, kann der in der ersten Ausführungsform
eingestellte zulässige
Wert (in Bezug auf die Verarbeitungsverzögerung) nicht ausreichend für die Verarbeitung
aufgefrischter Daten sein. Somit wird, wenn die Verarbeitung für aufgefrischte
Daten nicht abgeschlossen ist, die Resynchronisierung selbst dann
angehalten, wenn die Verzögerung
den zulässigen
Wert überschreitet.
Dementsprechend wird, falls aufgefrischte Daten in einer Zeit verarbeitet
werden, die den zulässigen
Wert überschreitet,
die Resynchronisierung ausgeführt,
nachdem die Verarbeitung der aufgefrischten Daten abgeschlossen
ist. Weitere Operationen in Bezug auf diese Ausführungsform folgen jenen, die
in der ersten Ausführungsform
ausgeführt
werden.
-
Dritte Ausführungsform
-
6 ist
ein Blockschaltplan, der die Konstruktion der dritten Ausführungsform
gemäß der vorliegenden
Erfindung zeigt. In der Figur führen
der Server 101 und die Clients 111–114 Videodatensendung
und Videodatenempfang aus, wie sie in der oben erläuterten
ersten oder zweiten Ausführungsform,
in denen die Verzögerungssteuerung
durch die Client-Seite ausgeführt
wird, erläutert
worden sind.
-
In
dem in 8 gezeigten herkömmlichen Beispiel ist angenommen,
dass der Server 101 Daten an drei Clients gleichzeitig
senden kann und dass somit die Datenübertragung an vier Clients
oder mehr zur Überlastung
des Servers führt.
Falls in diesem Fall vier Clients gleichzeitig auf den Server 101 zugreifen, überschreitet
die durch den Server getragene Last die zulässige Last (die "drei Clients" entspricht). In
diesem Fall kann der Server 101 nicht normal Daten senden,
d. h., erforderliche Daten können nicht
zu einem Client gesendet werden oder die Datenübertragung kann verzögert werden.
-
In
Anbetracht einer solchen Situation sind in der vorliegenden Ausführungsform
wie in 6 gezeigt die Weiterleitungsserver 201 und 202 sowie
der Client 111 mit einem Master-Server 101 verbunden; sind
der Weiterleitungsserver 203 sowie der Client 112 mit
einem Weiterleitungsserver 202 verbunden; und sind die
Clients 113 und 114 mit den Weiterleitungsservern 203 bzw. 201 verbunden.
-
Der
Master-Server 101 sendet unter Verwendung des Senders 121 codierte
Videodaten zu den Weiterleitungsservern 201, 202 und
zu dem Client 111.
-
Die
Weiterleitungsserver 201 und 202 empfangen unter
Verwendung der in jedem Weiterleitungsserver vorgesehenen Empfänger 221 bzw. 222 die
vom Master-Server 101 übertragenen
Daten. Daraufhin senden die Weiterleitungsserver 201 und 202 die
empfangenen Daten unter Verwendung der Sender 211 bzw. 212 zu
einem weiteren Weiterleitungsserver 203 bzw. zu dem Client 114 und 112.
Das heißt,
jeder Weiterleitungsserver besitzt eine Funktion zum Verzögern übertragener
Daten. Wie im Fall der Weiterleitungsserver 202 und 203 gezeigt
ist, ist hier eine Mehrstufenverbindung von Weiterleitungsservern
möglich.
-
Die
Clients 111, 112, 113 und 114 empfangen jeweils
unter Verwendung der Empfänger 131, 132, 133 und 134 Daten,
die vom Master-Server 101 und von den Weiterleitungsservern 202, 203 und 201 gesendet
wurden.
-
Zu
dieser Zeit entspricht die Last, die der Master-Server 101 trägt, drei
Vorrichtungen, d. h. dem Client 111 und den Weiterleitungsservern 201 und 202;
somit überschreitet
die Last nicht den zulässigen
Betrag für
die normale Datenlieferung. Außerdem
können
Daten normal für
alle angeordneten Weiterleitungsserver und Clients bereitgestellt
werden, falls ein zulässiger
Betrag in Bezug auf jeden Weiterleitungsserver zwei Vorrichtungen
oder mehr sind.
-
Dadurch,
dass der Master-Server und die Clients wie oben erläutert über Einzel- oder Mehrstufen-Weiterleitungsserver
verbunden sind, ist es möglich,
effektive Sender zu erhöhen;
die Übertragungsfunktion
zu verteilen; und die Anzahl der Clients, die die registrierten
Daten gleichzeitig verwenden, zu erhöhen.
-
Vierte Ausführungsform
-
7 ist
ein Blockschaltplan, der die Konstruktion der vierten Ausführungsform
gemäß der vorliegenden
Erfindung zeigt. In diese Konstruktion sind im Master-Server bzw. in den
Weiterleitungsservern 201, 202 und 203 die
Lastüberwachungseinrichtungen 301, 311, 312 und 313 vorgesehen.
Außerdem
sind in den Weiterleitungsservern 201, 202, 203 bzw.
in den Clients 111, 112, 113 und 114 die Wegumbildungseinheiten 321, 322, 323, 331, 332, 333 und 334 vorgesehen.
-
Die
Lastüberwachungseinrichtungen 301, 311, 312 und 313 in
den Servern messen regelmäßig oder
unregelmäßig die
Laststatus jedes Servers und speichern die Messergebnisse. Jeder
erfasste Laststatus wird zu einem Server gesendet, mit dem der Server,
auf den der Laststatus bezogen ist, verbunden ist. Der Server, der
den Laststatus empfangen hat, sendet den empfangenen Laststatus
und einen Laststatus von sich selbst zu einem Server weiter, mit dem
dieser Server (der den Laststatus empfangen hat) verbunden ist.
Diese Operation wird wiederholt, bis die Laststatus zu dem Master-Server 101 übermittelt
worden sind. In einem Beispielfall hinsichtlich des Master-Servers 101 und
der Weiterleitungsserver 202 und 203 wird ein
Laststatus in Bezug auf den Weiterleitungsserver 203 zu
dem Weiterleitungsserver 202 übermittelt und werden daraufhin
die Laststatus in Bezug auf die Weiterleitungsserver 202 und 203 zu
dem Master-Server 101 übermittelt.
Daraufhin werden die Laststatus, wie sie oben gesammelt worden sind,
vom Master-Server 101 über ähnliche
Wege, wie sie in der Datenübertragung
verwendet werden, an die Wegumbildungseinheiten 321–323 und 331–334 gesendet.
-
Die
Wegumbildungseinheiten 321–323 und 331–334 in
den Weiterleitungsservern und in den Clients erfassen einen Server
mit einer kleineren Last unter den Servern, deren Lasten untersucht
wurden. Falls es einen weiteren Server gibt, dessen Last kleiner
als die eines Servers ist, mit dem der relevante Client oder Weiterleitungsserver
momentan verbunden ist, trennt die Wegumbildungseinheit des relevanten
Servers den Weg in Bezug auf den derzeit verbundenen Server und
stellt eine neue Verbindung mit einem Server mit einer kleineren
Last her.
-
Anstatt
die Verbindungsform in Bezug auf einen Client oder Weiterleitungsserver
zu ändern,
der selbst eine Wegumbildungseinheit enthält, kann die Wegumbildungseinheit
die Verbindungsform in Bezug auf einen anderen Client oder Wei terleitungsserver ändern, der
selbst keine Wegumbildungseinheit besitzt. Das heißt, die
Lastüberwachungseinrichtung in
einem Server sendet einen gemessenen Laststatus zu einem weiteren
Server, mit dem der relevante Server verbunden ist. Daraufhin sendet
der Server an der Empfangsseite den empfangenen Laststatus und einen
in sich selbst gemessenen Laststatus zu einem anderen Server, mit
dem der Server auf der Empfangsseite verbunden ist. Diese Operation
wird wiederholt, bis die Laststatus zu dem Master-Server übermittelt
worden sind. In diesen Operationen kann jede Wegumbildungseinheit
Laststatus erfassen, die sich auf einen Weiterleitungsserver beziehen,
mit dem der relevante Server verbunden ist; oder Weiterleitungsserver
erfassen, die sich in niedrigeren Reichweiten in den Verbindungswegen
befinden. Jede Wegumbildungseinheit findet einen Server mit Überlastung
in Bezug auf die wie oben erfassten Laststatus. Falls ein Server
mit Überlastung
ermittelt wird, wählt
die Wegumbildungseinheit eine Menge von Weiterleitungsservern oder
Clients aus, die ausreichend ist, um den Überlastungsstatus unter den mit
dem Überlastungsserver
verbundenen Weiterleitungsservern und Clients zu überwinden,
und ändert die
Verbindungswege derart, dass die gewählte Menge mit einem Server
mit einer kleineren Last verbunden wird.
-
Außerdem ist
es als eine von der obigen Konstruktion, in der jeder der Master- und Weiterleitungsserver
in eineindeutiger Form eine Lastüberwachungseinrichtung
besitzt, verschiedene Abweichung ebenfalls möglich, eine Konstruktion zu
realisieren, in der eine Lastüberwachungseinrichtung
vorgesehen ist, die die Laststatus mehrerer Server überwacht.
-
Außerdem ist
es ähnlich
möglich,
nur eine Wegumbildungseinheit in dem Videoverteilungssystem vorzusehen,
um durch diese Wegumbildungseinheit jede Änderung auszuführen, die
auf die Gesamtheit der Wege bezogen ist. Falls das Videoverteilungssystem
unter Verwendung einer einzigen Wegumbildungseinheit realisiert
ist, sammelt die Wegumbildungseinheit die Laststatus, die sich auf alle
Master- und Weiterleitungsserver beziehen, von den relevanten Lastüberwachungseinrichtungen,
wobei sie einen Server mit Überlastung
erfasst. Falls es einen Server mit Überlastung gibt, wählt die
Wegumbildungseinheit eine Menge von Weiterleitungsservern oder Clients
aus, die ausreicht, um den Überlastungsstatus
unter den mit dem Überlastungsserver verbundenen
Weiterleitungsservern und Clients zu überwinden, wobei sie die Verbindungswege
derart ändert,
dass die gewählte
Menge mit einem Server mit einer kleineren Last verbunden ist.
-
Wie
oben beschrieben wurde, werden durch Erfassen eines Servers mit Überlastung
unter Verwendung der Lastüberwachungseinrichtungen
und der Wegumbildungseinheiten und durch Ausführen der Wegänderung
zu einem Server mit einer kleineren Last die Lasten des Master-Servers
und der Weiterleitungsserver immer klein gehalten, wobei die Durchschnittslast
klein ist. Dementsprechend wird die Qualität in Bezug auf den Gesamtdienst
gleichförmig
gemacht.
-
Fünfte Ausführungsform
-
Diese
Ausführungsform
wird zum Ändern von
Videodaten verwendet, die in dem System der obigen dritten oder
vierten Ausführungsform
verwendet werden.
-
Die
Weiterleitungsserver 201, 202 und 203 leiten
die vom Master-Server 101 gesendeten Daten lediglich weiter,
d. h. stellen nie selbst Daten bereit. Wenn in dem System verwendete
Daten geändert werden,
braucht lediglich der Master-Server 101,
der eine Funktion zum Bereitstellen von Daten besitzt, einen Prozess
zum Ändern
von Daten auszuführen, während die
Weiterleitungsserver 201–203 durch einen solchen
Datenänderungsprozess
nicht beeinflusst werden.
-
Auf
diese Weise wird die Datenbereitstellung lediglich durch einen Master-Server
realisiert, während
die Datenübertragungsfunktion
für die
Clients unter Verwendung von Weiterleitungsservern, die eine Funktion
der Datenweiterleitung besitzen, verteilt wird. Daher benötigt lediglich
der eine Master-Server eine Datenänderung; somit werden Operationen
nach der Datenänderung
leicht ausgeführt.
-
Sechste Ausführungsform
-
Die
Ausführungsform
wird auf einen Fall zum Bereitstellen von Daten für einen
Client angewendet, der keine Erlaubnis zum Zugriff auf den Master-Server
besitzt.
-
In
einem wie in 8 gezeigten herkömmlichen
Beispiel kann es einen Fall geben, in dem der Zugriff für den Master-Server 101 derart
begrenzt ist, dass die Systemsicherheit sichergestellt ist; und
dass der Client 112 keine Erlaubnis zum Zugreifen auf den Master-Server 101 hat.
In diesem Fall kann der Client 112 nicht auf den Master-Server 101 zugreifen
und somit nicht direkt Daten vom Master-Server 101 empfangen.
-
In
der vorliegenden Ausführungsform
wird z. B. der Weiterleitungsserver 202 verwendet, dem
es erlaubt ist, auf den Master-Server 101 zuzugreifen, und
dem es ebenfalls erlaubt ist, auf den Client 112 zuzugreifen.
In diesem Fall werden gleichzeitig eine Verbindung zwischen dem
Master-Server 101 und dem Weiterleitungsserver 202 sowie
eine Verbindung zwischen dem Weiterleitungsserver 202 und
dem Client 112 aufgebaut (es wird auf die Systemkonstruktion
in 7 verwiesen). Auf diese Weise kann die Weiterleitungsfunktion
derart realisiert werden, dass der Weiterleitungsserver 202 Daten
empfängt,
die vom Master-Server 101 gesendet werden, und die empfangenen
Daten zu dem Client 112 sendet. Gemäß dieser Funktion kann die
Datenübertragung
zwischen dem Master-Server und dem Client realisiert werden, die
wegen der Zugangserlaubnis nie realisiert werden könnte.
-
Somit
können
unter Verwendung eines Weiterleitungsservers, dem es erlaubt ist,
auf einen Server zuzugreifen, Daten für einen weiteren Server oder
für einen
Client bereitgestellt werden, der nicht direkt auf den Master-Server
zugreifen kann.
-
Außerdem sind
die zu übertragenden
Daten in den oben erläuterten
Ausführungsformen
Videodaten. Allerdings ist die vorliegende Erfindung nicht auf ein
Videodatenverteilungssystem beschränkt und kann auf ein System
angewendet werden, das Daten behandelt, die aus (i) Daten, die unter
Verwendung einer Korrelation mit anderen Daten decodiert werden
können;
und (ii) Daten, die unabhängig
decodiert werden können
und die periodisch in die Gesamtheit der Daten aufgenommen werden,
bestehen.