-
Die
vorliegende Erfindung betrifft ein Verfahren und eine Vorrichtung
zur Übertragung
von übertragenen
Informationen zugeordneten Daten.
-
Genauer
gesagt, liegt die Erfindung auf dem Gebiet der Datenübertragung
in einem Kommunikationsnetz, das zum Beispiel ein Datendiffusionsnetz oder
ein Telekommunikationsnetz wie ein Internet sein kann.
-
Die
Informationen, die übertragen
werden, um von Informationswiedergabevorrichtungen bei Benutzern
wiedergegeben zu werden, sind zum Beispiel und in nicht einschränkender
Weise von Fernsehkanälen
verbreitete audiovisuelle Informationen, Audioinformationen oder
Textinformationen.
-
Die
diesen Informationen zugeordneten Daten sind zum Beispiel für die übertragenen
audiovisuellen Informationen repräsentative Daten und/oder Daten,
die Informationen für
die Konfiguration einer Einrichtung zum Decodieren der audiovisuellen
Informationen enthalten, und/oder Signalisationsdaten des Kommunikationsnetzes
und/oder Daten von Attributen der audiovisuellen Informationen.
-
Die
für die
audiovisuellen Informationen repräsentativen Daten werden üblicherweise
Meta-Daten genannt. Die Meta-Daten sind zum Beispiel und nicht einschränkend der
Leitfaden der übertragenen audiovisuellen
Programme, oder, bei einem vorbestimmten audiovisuellen Programm,
deskriptive Daten dieses Programms, wie sein Titel, eine Kurzbeschreibung
und/oder eine detaillierte Beschreibung dieses Programms, ein Deskriptiv
eines oder der im audiovisuellen Programm spielenden Schauspieler oder
eine oder mehrere Kritiken dieses Programms.
-
Gemäß der Norm
DVB, Akronym von Digital Video Broadcast, ist es möglich, für die Inhalte
der verbreiteten audiovisuellen Programme repräsentative Daten zu übertragen.
Diese Daten entsprechen der Norm DVB-SI. DVB-SI ist das Akronym
von Digital Video Broadcast Service Information oder Serviceinformation
der digitalen Videoverbreitung. Die audiovisuellen Programme sind
in diesem Fall gemäß dem Standard
MPEG codiert, Akronym von Motion Picture Expert Group, und die für die Inhalte
der verbreiteten audiovisuellen Programme repräsentativen Daten werden in
Form von Datentabellen auf dem gleichen Verbreitungskanal wie die
audiovisuellen Programme verbreitet.
-
Die
Datentabellen werden periodisch im Vertriebskanal übertragen,
damit eine Empfangsvorrichtung sie jederzeit empfangen kann.
-
Gemäß dieser
Norm werden die den verbreiteten audiovisuellen Programmen zugeordneten
Daten alle periodisch verbreitet. Außerdem ist es einer diese Daten
empfangenden Empfangsvorrichtung nicht möglich, nur diese Daten zu empfangen.
Da diese Daten im gleichen Kanal wie die audiovisuellen Programme übertragen
werden, muss die Empfangsvorrichtung sowohl die den audiovisuellen
Programmen zugeordneten Daten als auch die audiovisuellen Programme
empfangen, selbst wenn nur die den audiovisuellen Programmen zugeordneten
Daten für die
Empfangsvorrichtung nützlich
sind.
-
Außerdem ist
die periodische Übertragung dieser
Daten gemäß dieser
gleichen Norm nicht an die Kommunikationsnetze angepasst, die keine
konstante Bandbreite garantieren.
-
Gemäß der Empfehlung
RFC 2974, die unter der Bezeichnung SAP bekannt ist, Akronym für Session
Announcement Protocol, ist die periodische Übertragung von Sitzungsankündigungspaketen
in einem Verbreitungskanal vorgesehen. Diese Sitzungsankündigungspakete
sind Multimediakonferenz-Sitzungen
im Internet zugeordnet, die im Internet über andere Kanälen als
der Verbreitungskanal von Sitzungsankündigungspaketen übertragen
werden.
-
Gemäß dieser
Empfehlung wird nur ein einziger Typ von Daten, hier Sitzungsankündigungsdaten, übertragen.
-
Die
Patentanmeldung
EP 1 043 852 offenbart
ein Verfahren der zyklischen Übertragung
von Informationen über
audiovisuelle Programme, bei dem die Informationen über Programme
in einem Zyklus häufiger
als andere Informationen über
Programme übertragen
werden.
-
Die
Patentanmeldung US 2003/0009763 offenbart ein Verfahren der zyklischen Übertragung von
Informationen über
audiovisuelle Programme, bei dem die Informationen über Programme
in einem Zyklus häufiger
als andere Informationen über
Programme übertragen
werden.
-
So
beziehen die im Stand der Technik vorgeschlagenen Lösungen sich
nicht auf die mit der Übertragung
von eine Vielzahl von Daten enthaltenden Daten, bei denen die Wichtigkeit
der Daten untereinander trotz der Veränderungen der im Kommunikationsnetz
existierenden Bedingungen beachtet werden muss, verbundenen Probleme.
-
Diese
gleichen Lösungen
des Stands der Technik erlauben keine Optimierung der Empfangsfrist
von Informationen zugeordneten Daten in Abhängigkeit von ihrer Wichtigkeit.
-
Die
Erfindung hat zum Ziel, die Nachteile des Stands der Technik zu
beheben, indem sie ein Verfahren gemäß Anspruch 1, eine Vorrichtung
gemäß dem unabhängigen Anspruch
14 und ein Computerprogramm gemäß dem unabhängigen Anspruch
15 vorschlägt,
die es ermöglichen, über ein
Kommunikationsnetz Daten unterschiedlicher Wichtigkeit zu übertragen
und gleichzeitig eine Mindestempfangsfrist dieser Daten in Abhängigkeit
von ihrer Wichtigkeit untereinander zu gewährleisten.
-
Zu
diesem Zweck schlägt
die Erfindung gemäß einem
ersten Aspekt ein Verfahren zur Übertragung
von Daten vor, die Informationen zugeordnet sind, die über ein
Kommunikationsnetz übertragen werden,
dadurch gekennzeichnet, dass die Daten in Datengruppen aufgeteilt
sind, jeder Datengruppe eine für
die Wichtigkeit der Daten der Datengruppe repräsentative Information zugeordnet
ist, und dass das Verfahren die Schritte der Bestimmung eines Übertragungszyklus
der Datengruppen und der Einfügung
jeder Datengruppe in den bestimmten Übertragungszyklus aufweist,
wobei jede Datengruppe so oft eingefügt wird, wie es der jeweiligen
Wichtigkeit der Daten der Datengruppe entspricht.
-
Korrelativ
betrifft die Erfindung eine Vorrichtung zur Übertragung von Daten, die Informationen zugeordnet
sind, die über
ein Kommunikationsnetz übertragen
werden, dadurch gekennzeichnet, dass die Daten in Datengruppen aufgeteilt
sind, jeder Datengruppe eine für
die Wichtigkeit der Daten der Datengruppe repräsentative Information zugeordnet
ist, und dass die Vorrichtung Mittel zur Bestimmung eines Übertragungszyklus
der Datengruppen und Mittel zur Einfügung jeder Datengruppe in den
bestimmten Übertragungszyklus
aufweist, wobei jede Datengruppe so oft eingefügt wird, wie es der Wichtigkeit der
Daten der Datengruppe entspricht.
-
So
ist es möglich,
Daten zu übertragen,
die aus einer Vielzahl von Daten bestehen, deren Wichtigkeit für die diese
Daten empfangenden Vorrichtungen variabel ist.
-
Indem
die wichtigen Datengruppen mehrmals in den gleichen Übertragungszyklus
eingefügt werden,
wird die Empfangsfrist der wichtigen Daten reduziert.
-
Gemäß einem
anderen Aspekt der Erfindung ist das Kommunikationsnetz ein Diffusionsnetz,
und die Informationen und die Daten werden über das Diffusionsnetz übertragen.
-
So
ist es möglich, über ein
Diffusionsnetz Daten zu übertragen,
die eine Vielzahl von Daten enthalten, deren Wichtigkeit für die diese
Daten empfangenden Vorrichtungen variabel ist.
-
Indem
die wichtigen Datengruppen mehrmals in den gleichen Übertragungszyklus
eingefügt werden,
wird die Empfangsfrist der wichtigen Daten reduziert.
-
Gemäß einem
anderen Aspekt der Erfindung ist das Kommunikationsnetz ein Telekommunikationsnetz.
Die Informationen werden über
einen Übertragungskanal
des Telekommunikationsnetzes übertragen,
und die Daten werden über
einen vorbestimmten Kanal des Telekommunikationsnetzes übertragen,
der sich von dem Kanal unterscheidet, über den die Informationen übertragen
werden.
-
So
ist es nicht notwendig, die Daten und die Informationen, denen diese
Daten zugeordnet sind, nur für
die Verwendung der Daten zu decodieren. Es können nämlich nur die den Informationen
zugeordneten Daten zunächst
für die
diese Daten empfangende Verarbeitungsvorrichtung oder für den Benutzer
nützlich
sein. Indem die Übertragungskanäle getrennt
werden, ist es dann möglich,
nur die über
den vorbestimmten Kanal übertragenen
Daten zu verarbeiten und folglich die Komplexität der von der diese Daten empfangenden
Verarbeitungsvorrichtung durchzuführenden Verarbeitung zu reduzieren.
-
Gemäß einem
anderen Aspekt der Erfindung wird bei jeder Einfügung einer Datengruppe in den Übertragungszyklus
der Datengruppen die eingefügte
Datengruppe übertragen.
-
So
wird die Übertragung
der Datengruppen in Echtzeit durchgeführt, und die Menge an Daten, die
vor ihrer Übertragung
gespeichert werden müssen,
ist reduziert.
-
Gemäß einem
anderen Aspekt der Erfindung sind, wenn eine Datengruppe mehrmals
in den Übertragungszyklus
eingefügt
wird, die Einfügungen
der Datengruppe durch eine vorgegebene Anzahl von Einfügungen anderer
Datengruppen in den Übertragungszyklus
getrennt.
-
Indem
so die Einfügungen
einer Datengruppe von einer vorbestimmten Anzahl von Einfügungen anderer
Datengruppen in den Übertragungszyklus getrennt
werden, empfängt
so eine Verarbeitungsvorrichtung, wenn sie sich mit dem Telekommunikationsnetz
verbindet, in einer kurzen Frist die wichtige(n) Informationsgruppe(n).
Die Frist für
den Empfang dieser wichtigen Datengruppen ist also reduziert.
-
Indem
die Einfügungen
einer Datengruppe durch eine vorbestimmte Anzahl von Einfügungen getrennt
werden, wird außerdem
die Datengruppe gemäß einer
Periodizität übertragen,
die von der Übertragungszeit
der anderen eingefügten
Datengruppen abhängt,
wodurch eine mögliche
Schwankung dieser Periodizität
erlaubt wird.
-
Gemäß einem
anderen Aspekt der Erfindung werden die Datengruppen in den Übertragungszyklus
gemäß einer
Reihenfolge eingefügt,
die von ihrer Wichtigkeit im Vergleich mit den anderen Datengruppen
abhängt.
-
Indem
die wichtigsten Datengruppen zuerst in den Übertragungszyklus eingefügt werden,
wird die Einfügung
dieser wichtigen Gruppen mehrmals und mit einer gewissen Periodizität in einen Übertragungszyklus vereinfacht.
Außerdem,
selbst wenn das Zeitintervall, das zwischen zwei Übertragungszyklen
existiert, groß ist,
empfängt
eine Verarbeitungsvorrichtung, die sich mit dem Telekommunikationsnetz
zwischen zwei Übertragungszyklen
verbindet, die Datengruppen in einer optimierten Frist.
-
Gemäß einem
anderen Aspekt der Erfindung werden die der Datengruppen in Abhängigkeit
von ihrer Wichtigkeit geordnet. Ein Zähler wird jeder Datengruppe
zugeordnet, wobei der Wert jedes Zählers für die Mindestanzahl von Einfügungen anderer
Datengruppen vor einer Einfügung
der Datengruppe repräsentativ
ist, der jeder Zähler
im Einfügungszyklus
zugeordnet wird, und die einzufügende
Datengruppe wird in Abhängigkeit
von der Reihenfolge der Datengruppen, dem Wert der zugeordneten
Zähler
und der Häufigkeit,
mit der mindestens eine Datengruppe in den Übertragungszyklus eingefügt wurde,
bestimmt.
-
Gemäß einem
anderen Aspekt der Erfindung wird vor der ersten Einfügung einer
Datengruppe in den Übertragungszyklus
jeder Zähler
auf einen vorbestimmten Wert gesetzt, wird bei jeder Einfügung einer
Datengruppe der der Datengruppe zugeordnete Zähler auf einen Wert gleich
der Anzahl von Einfügungen
anderer Datengruppen gesetzt, die die Einfügungen der Datengruppe, der
der Zähler
zugeordnet ist, trennen, und wird bei jeder Einfügung einer Datengruppe in den Übertragungszyklus
der Wert jedes den anderen Datengruppen zugeordneten Zählers dekrementiert.
-
Gemäß einem
anderen Aspekt der Erfindung wird bei jeder Einfügung einer Datengruppe die
erste der geordneten Datengruppen als laufende Datengruppe genommen,
und es wird geprüft,
ob der Wert des der laufenden Datengruppe zugeordneten Zählers strikt
höher ist
als der vorbestimmte Wert, oder ob die laufende Datengruppe mit
einer vorbestimmten Häufigkeit
in den Übertragungszyklus
eingefügt wurde,
man betrachtet die folgende Datengruppe der geordneten Datengruppen
als die laufende Datengruppe.
-
Gemäß einem
anderen Aspekt der Erfindung wird der Einfügungszeitpunkt einer Datengruppe ausgehend
von der Größe der vorher
eingefügten Datengruppe
oder Datengruppen und vom Durchsatz des Übertragungskanals bestimmt.
-
Unter
Berücksichtigung
des Durchsatzes des Übertragungskanals
vermeidet man so jedes mit dessen Sättigung verbundene Problem.
-
Gemäß einem
anderen Aspekt der Erfindung wird die Gesamtzahl von Einfügungen von
in den Übertragungszyklus
einzufügenden
Datengruppen bestimmt, und wenn Datengruppen in den Übertragungszyklus
mit einer Häufigkeit
gleich der Gesamtzahl der Einfügungen
eingeführt
wurden, wird eine vorbestimmte Zeit gewartet, ein neuer Übertragungszyklus
wird bestimmt, und Datengruppen werden in den neuen bestimmten Übertragungszyklus
eingefügt.
-
Gemäß einem
anderen Aspekt der Erfindung ist die vorbestimmte Zeit Null.
-
Gemäß einem
anderen Aspekt der Erfindung wird der die eingefügten Datengruppen enthaltende Übertragungszyklus
analysiert, und in Abhängigkeit von
der Analyse des Übertragungszyklus
werden der Durchsatz des Übertragungskanals
und/oder die für die
Wichtigkeit der Daten mindestens einer Datengruppe repräsentativen
Informationen verändert.
-
So
ist es möglich,
den Übertragungszyklus
in Echtzeit und in Abhängigkeit
zum Beispiel von der Größe der übertragenen
Datengruppen zu verändern.
Diese Analyse und diese Veränderung
erlauben es, eine optimale Empfangsfrist der wichtigen Datengruppen
zu gewährleisten.
-
Gemäß einem
anderen Aspekt der Erfindung sind die Informationen audiovisuelle
Informationen, und die Daten sind Daten, die Informationen für die Konfiguration
einer Einrichtung zum Decodieren der audiovisuellen Informationen
enthalten, und/oder Daten, die für
die Inhalte der übertragenen
audiovisuellen Informationen repräsentativ sind, und/oder Signalisationsdaten
des oder jedes Kanals des Telekommunikationsnetzes, der die übertragenen
Informationen aufweist, und/oder Attributdaten der audiovisuellen
Informationen.
-
Somit
ist es nun möglich, über den
gleichen Kanal verschiedene Datentypen zu übertragen und gleichzeitig
eine optimale Empfangsfrist der wichtigen Datengruppen beizubehalten.
Diese Daten können
so Konfigurationsdaten einer Decodiereinrichtung oder Informationen
für den
Erhalt von Informationen sein, die für den Empfang der Informationen notwendig
sind, denen die Daten zugeordnet sind, sogar andere Daten, die es
einem diese Daten empfangenden Benutzer erlauben, sich zu informieren oder
die audiovisuellen Informationen auszuwählen, die er empfangen möchte.
-
Da
die Vorteile der Vorrichtungen gleich den für die Verfahren erwähnten Vorteile
sind, werden sie nicht wieder aufgeführt.
-
Die
Erfindung betrifft auch das Computerprogramm, das in einem Informationsträger gespeichert ist,
wobei das Programm Anweisungen enthält, die es ermöglichen,
das oben beschriebene Übertragungsverfahren
anzuwenden, wenn es von einem EDV-System geladen und ausgeführt wird.
-
Die
oben erwähnten
Merkmale der Erfindung, sowie weitere, gehen klarer aus der nachfolgenden Beschreibung
eines Ausführungsbeispiels hervor,
wobei die Beschreibung sich auf die beiliegenden Zeichnungen bezieht.
Es zeigen:
-
1 ein
Datenübertragungssystem
gemäß der vorliegenden
Erfindung;
-
2 ein
Blockdiagramm der verschiedenen die erfindungsgemäße Datenübertragungsvorrichtung
bildenden Elemente;
-
die 3a und 3b den
Algorithmus der Dateneinfügung,
der von der erfindungsgemäßen Übertragungsvorrichtung
ausgeführt
wird;
-
4 den
Algorithmus der Datenübertragung,
der von der erfindungsgemäßen Übertragungsvorrichtung
ausgeführt
wird;
-
5 den
Algorithmus der Analyse des Übertragungszyklus,
der von der erfindungsgemäßen Übertragungsvorrichtung
ausgeführt
wird.
-
1 zeigt
ein Datenübertragungssystem gemäß der vorliegenden
Erfindung.
-
Das Übertragungssystem
von Daten, die Informationen zugeordnet sind, enthält eine Übertragungsvorrichtung
wie einen Server 100, der in der Lage ist, mehrere Datengruppen
in einem bestimmten Übertragungszyklus
zu übertragen.
-
Ein
Informationsanbieter 110 liefert Informationen wie zum
Beispiel ein audiovisuelles Programm an den Server 100.
-
Der
Informationsanbieter 110 liefert auch an den Server 100 den
audiovisuellen Programmen zugeordnete Daten. Diese Daten können auch
von anderen, nicht in 1 dargestellten Anbietern geliefert werden.
-
Diese
Daten werden zum Beispiel in Form von Datengruppen geliefert, wobei
jede Datengruppe Daten eines vorbestimmten Typs enthält. In einer
Variante empfängt
der Server 100 diese Daten, bildet Datengruppen und ordnet
jeder Datengruppe eine Information zu, die für die Wichtigkeit der in jeder
Gruppe enthaltenen Daten repräsentativ
ist.
-
Dem
Server 100 ist eine Datenbank 120 zugeordnet.
Diese Datenbank 120 ist vom Server 100 entfernt.
Sie kann selbstverständlich
in den Server 100 integriert sein.
-
Die
Datenbank 120 enthält
zum Beispiel komplementäre
Daten zu den Meta-Daten, die vom Informationsanbieter 110 geliefert
werden.
-
Der
Server 100 ordnet die vom Informationsanbieter 110 gelieferten
Informationen sowie die in der Datenbank 120 enthaltenen
Daten zu, bildet eine diese Daten enthaltende Datengruppe, fügt diese
in den erfindungsgemäßen Übertragungszyklus
ein und überträgt sie zu
den Verarbeitungsvorrichtungen 170 der Benutzer 150.
-
Der
Server 100 verteilt diese Programme an Benutzer 150 über das
Telekommunikationsnetz 130, zum Beispiel ein Internet.
-
Wenn
die Benutzer 150 den Informationsvertriebsdienst abonniert
haben, werden diese audiovisuellen Programme über einen oder mehrere Übertragungskanäle des Internets 130 an
die jeweiligen Verarbeitungsvorrichtungen 170 der Benutzer 150 über das
Internet 130 übertragen.
-
Der
Server 100 liefert auch an die Verarbeitungsvorrichtungen 170 der
Abonnenten 150, gleichzeitig mit der Verbreitung dieser
audiovisuellen Programme, die verschiedenen in einen Übertragungszyklus
eingefügten
und über
einen Verbreitungskanal des Telekommunikationsnetzes 130 übertragenen Datengruppen.
Dieser Kanal ist vorzugsweise ein anderer Übertragungskanal als der Kanal
oder die Kanäle,
auf denen die audiovisuellen Programme übertragen werden.
-
Die
diesen Informationen zugeordneten Daten werden in Form von Datengruppen übertragen. Eine
Datengruppe enthält
für die
audiovisuellen Informationen repräsentative Daten oder Daten,
die Daten für
die Konfiguration einer Decodiereinrichtung der audiovisuellen Informationen
enthalten, oder Signalisationsdaten des Telekommunikationsnetzes oder
Attributdaten der audiovisuellen Informationen.
-
Diesen
Datengruppen sind Informationen zugeordnet, die für die Wichtigkeit
der in diesen Datengruppen enthaltenen Daten repräsentativ
sind.
-
Der
Datengruppe, die Signalisationsdaten des von der in der Verarbeitungsvorrichtung 170 enthaltenen
Telekommunikationseinrichtung verwendeten Telekommunikationsnetzes
enthält,
ist eine für die
Wichtigkeit dieser Daten repräsentative
Information zugeordnet. Diese Daten sind notwendig für die in
der Verarbeitungsvorrichtung 170 enthaltene Telekommunikationseinrichtung.
Die für
die Wichtigkeit dieser Daten repräsentative Information reflektiert deren
wesentlichen Charakter.
-
Der
Datengruppe, die Daten für
die Konfiguration einer Decodiereinrichtung der audiovisuellen Informationen
enthält,
die in der Verarbeitungsvorrichtung 170 enthalten ist,
ist eine für
die Wichtigkeit dieser Daten repräsentative Information zugeordnet. Diese
Daten sind sehr wichtig für
die Decodiereinrichtung der audiovisuellen Informationen, die in
der Verarbeitungsvorrichtung 170 enthalten ist. Die für die Wichtigkeit
dieser Daten repräsentative
Information reflektiert deren sehr wichtigen Charakter.
-
Den
Datengruppen, die für
die übertragenen audiovisuellen
Informationen oder für
die Attributdaten der audiovisuellen Informationen repräsentative Daten
enthalten, sind Informationen zugeordnet, die für die Wichtigkeit dieser Daten
repräsentativ
sind. Für
diese Datengruppen reflektieren die für die Wichtigkeit dieser Daten
repräsentativen
Informationen deren weniger wichtigen Charakter im Vergleich mit den
oben erwähnten
Datengruppen.
-
Der
Server 100 bestimmt den Übertragungszyklus dieser Datengruppen
gemäß dem Algorithmus,
der unter Bezugnahme auf die 3a und 3b beschrieben
werden wird.
-
Der
Server 100 überträgt diese
Datengruppen gemäß dem Algorithmus,
der unter Bezugnahme auf 4 beschrieben werden wird.
-
Der
Server 100 analysiert die Übertragungszyklen und verändert, wenn
notwendig, die Übertragungsparameter
gemäß dem Algorithmus,
der unter Bezugnahme auf 5 beschrieben werden wird.
-
Die
audiovisuellen Programme sowie die zugeordneten Daten werden von
der Verarbeitungsvorrichtung 170 decodiert und auf dem
Bildschirm der Verarbeitungsvorrichtung 170 wiedergegeben,
oder werden in einer Variante in einem geeigneten Format zu einer
Wiedergabevorrichtung audiovisueller Informationen 160 übertragen,
wie zum Beispiel einem Fernsehgerät.
-
Es
ist hier anzumerken, dass in einer Ausführungsvariante das Kommunikationsnetz 130 auch
ein Funk-Diffusionsnetz über
Satellit oder Kabel sein kann, bei dem die Informationen sowie die
Datengruppen, die in einen erfindungsgemäßen Übertragungszyklus eingefügt werden,
gemäß der Norm DVE
verbreitet werden.
-
2 zeigt
ein Blockdiagramm der verschiedenen die erfindungsgemäße Datenübertragungsvorrichtung
bildenden Elemente.
-
Diese Übertragungsvorrichtung 100 oder Server
ist ausgelegt, um Informationen zugeordnete Datengruppen zu bilden,
zum Beispiel audiovisuellen Informationen, um einen Übertragungszyklus
dieser Datengruppen zu bestimmen, um jede Datengruppe in den bestimmten Übertragungszyklus
mit einer Häufigkeit
einzufügen,
die von der jeweiligen Wichtigkeit jeder Datengruppe abhängt, diese
Datengruppen zu übertragen
und den gebildeten Übertragungszyklus
zu analysieren.
-
Die
Vorrichtung 100 ist zum Beispiel ein Mikrocomputer. Sie
kann auch in eine Einrichtung zur Verbreitung von Meta-Daten zu
einer Informationswiedergabevorrichtung wie ein Fernsehgerät oder in eine Übertragungsvorrichtung
von Daten zu Empfangsterminals wie zum Beispiel Mobiltelefone integriert
sein.
-
Die
Vorrichtung 100 weist einen Kommunikationsbus 201 auf,
mit dem ein Prozessor 200, ein Festspeicher 202,
ein Arbeitsspeicher 203, ein Bildschirm 204, eine
Tastatur 205, eine Festplatte 208, ein Kompaktdisk- oder CD-Aufnahme-
und Wiedergabegerät 209,
eine Kommunikationsschnittstelle 206 verbunden sind.
-
Die
Festplatte 208 speichert die die Erfindung anwendenden
Programme sowie die Variablen, die die erfindungsgemäße Datenübertragung
ermöglichen.
-
Die
Festplatte 208 speichert so die Programme, die Anweisungen
enthalten, die das Anwenden der Algorithmen erlauben, die in den 3a, 3b, 4 und 5 dargestellt
sind.
-
Die
Daten sind zum Beispiel für
die übertragenen
audiovisuellen Informationen repräsentative Daten und/oder Daten,
die Informationen für
die Konfiguration einer Decodiereinrichtung der audiovisuellen Informationen
enthalten, und/oder Signalisationsdaten des vorbestimmten Kanals
des Telekommunikationsnetzes und/oder Attributdaten der audiovisuellen
Informationen.
-
Diese
Programme und diese Daten können auch
mittels der CD gelesen oder über
das Telekommunikationsnetz 130 empfangen werden.
-
Allgemeiner
gesagt, werden die erfindungsgemäßen Programme
in einer Speichereinrichtung gespeichert. Diese Speichereinrichtung
kann von einem Computer oder einem Mikroprozessor 200 gelesen
werden. Diese Speichereinrichtung ist in die Vorrichtung integriert
oder nicht und kann lösbar
sein.
-
Beim
Hochfahren des Servers 100 werden die erfindungsgemäßen Programme
in den Arbeitsspeicher 203 übertragen, der dann den ausführbaren Code
der Erfindung sowie die Daten enthält, die für die Anwendung der Erfindung
notwendig sind.
-
Über die
Eingangs-/Ausgangsschnittstelle 206 empfängt der
Server 100 vom Anbieter 110 audiovisuelle Informationen
sowie diesen Informationen zugeordnete Daten. Diese Daten sind zum
Beispiel Meta-Daten entsprechend der Norm DVB-SI.
-
Der
Server 100 ist auch über
die Eingangs-/Ausgangsschnittstelle 206 mit
einer Datenbank 120 verbunden, die Meta-Daten enthält, die
Meta-Daten entsprechend der Norm DVB-SI zugeordnet werden können, die
vom Anbieter 110 empfangen werden.
-
Die
Schnittstelle 206 ermöglicht
auch die Übertragung
der Daten und der Informationen, denen sie zugeordnet sind, an einen
oder mehrere Benutzer 150 über das Telekommunikationsnetz 130.
-
Der
Server 100 besitzt einen Bildschirm 204 und eine
Tastatur 205, die als Mensch/Maschine-Schnittstelle dienen
und es so zum Beispiel ermöglichen,
Prioritäten
zwischen den verschiedenen übertragenen
Datengruppen zu definieren. Der Bildschirm 204 und die
Tastatur 205 ermöglichen
es auch, die Übertragungsparameter
der Datengruppen zu verändern.
Diese Parameter sind zum Beispiel der der Übertragung der Datengruppen
zugewiesene Durchsatz und/oder die Wichtigkeit der in jeder Datengruppe
enthaltenen Daten.
-
Die 3a und 3b stellen
den Algorithmus der Datenübertragung
dar, der von der erfindungsgemäßen Übertragungsvorrichtung
ausgeführt wird.
-
Der
Prozessor 200 der Übertragungsvorrichtung
oder Server 100 liest ausgehend vom Speicher 203 die
Anweisungen des Programms, die den Schritten E300 bis E324 der 3a und 3b entsprechen,
und lädt
sie in den Arbeitsspeicher 203, um sie auszuführen.
-
Im
Schritt E300 bestimmt der Prozessor 200 des Servers 100 die
Anzahl Tmax von Datengruppen, die in den Übertragungszyklus eingefügt und an die
Benutzer 150 übertragen
werden sollen. Die Datengruppen sind vorzugsweise in Form von Tabellen dargestellt.
-
Zum
Beispiel müssen
vier Tabellen in den Übertragungszyklus
eingefügt
werden. Diese Tabellen sind zum Beispiel eine Tabelle TM4, eine
Tabelle TMD, eine Tabelle TST und eine Tabelle TAV.
-
Die
Tabelle TM4 enthält
Daten für
die Konfiguration einer Decodiereinrichtung der audiovisuellen Informationen,
die gemäß der Norm
MPEG4 codiert sind. MPEG ist das Akronym von Moving Picture Experts
Group.
-
Die
Tabelle TMD enthält
Daten, die für
den Inhalt der übertragenen
audiovisuellen Programme repräsentativ
sind. Die Tabelle TMD enthält
zum Beispiel die Meta-Daten
wie der Leitfaden der übertragenen
audiovisuellen Programme, oder für
ein vorbestimmtes audiovisuelles Programm deskriptive Daten dieses
Programms wie sein Titel, eine Kurzbeschreibung und/oder eine ausführliche
Beschreibung dieses Programms, ein Deskriptiv eines oder der Schauspieler,
die in dem audiovisuellen Programm spielen, oder eine oder mehrere
Kritiken des Programms.
-
Die
Tabelle TST enthält
Signalisationsdaten des Transports der audiovisuellen Informationen.
Die Tabelle TST weist unter anderen die Multicast-Internetadresse oder Übertragungsadresse
an mehrere Benutzer der audiovisuellen Informationen auf.
-
Diese
Adresse ermöglicht
es vielen Benutzern, wenn sie sich bei einem solchen Dienst abonnieren,
die audiovisuellen Programme zu empfangen, die vom Server 100 im
Internet 130 übertragen werden.
-
Die
Tabelle TAV weist Daten auf, die für die Attribute der audiovisuellen
Informationen repräsentativ
sind, die im Internet 130 übertragen werden. Diese Attribute
sind zum Beispiel das Format des Bilds, wie zum Beispiel das Format
16/9 oder das Format 4/3/.
-
Wenn
diese Operation ausgeführt
wurde, geht der Prozessor 200 zum folgenden Schritt E301 über.
-
In
diesem Schritt ordnet der Prozessor 200 die Datentabellen
TM4, TST, TMD und TAV gemäß ihrer jeweiligen
Wichtigkeit ein.
-
Es
ist hier anzumerken, dass die Wichtigkeit jeder der Datentabellen
vordefiniert ist, d.h., dass eine für die Wichtigkeit jeder Tabelle
repräsentative Information
jeder Tabelle zugeordnet ist.
-
Gemäß einer
Variante wird die Wichtigkeit jeder der Datentabellen von einem
Datenverwalter über
die Tastatur 205 des Servers 100 eingegeben.
-
Die
jeder Tabelle zugeordnete und für
die Wichtigkeit der in der Datentabelle, der sie zugeordnet ist,
enthaltenen Daten repräsentative
Information ist vorzugsweise eine Zahl, die für die Anzahl von Einfügungen der
Tabelle, der sie zugeordnet ist, in den Übertragungszyklus repräsentativ
ist.
-
Zum
Beispiel hat die für
die Tabelle TST repräsentative
Information den Wert vier, die für
die Tabelle TST repräsentative
Information hat den Wert eins, die für die Tabelle TM4 repräsentative
Information hat den Wert zwei, die für die Tabelle TAV repräsentative
Information hat den Wert eins.
-
Der
Prozessor 200 ordnet so die Tabellen TM4, TST, TMD und
TAV folgendermaßen
ein: die Tabelle TST, die die wichtigste ist, wird als erste Tabelle mit
der Bezeichnung Tabelle(1) eingeordnet, die Tabelle TM4, die die
wichtigste Tabelle unter den noch nicht eingeordneten Tabellen ist,
wird als zweite Tabelle mit der Bezeichnung Tabelle(2) eingeordnet,
die Tabellen TMD und TAV, die die Tabellen geringerer Wichtigkeit
sind, werden als dritte bzw. vierte Tabelle mit den Bezeichnungen
Tabelle(3) bzw. Tabelle(4) eingeordnet.
-
Wenn
diese Operation ausgeführt
ist, weist der Prozessor 200 im Schritt E302 den Wert jeder
repräsentativen
Information, die jeder Tabelle(i) zugeordnet ist, einer mit NOCC(i)
bezeichneten Variablen zu, wobei i der jeweilige Rang jeder eingeordneten Tabelle
ist. Die Variable NOCC(i) ist für
die Anzahl von Einfügungen
der Datentabelle repräsentativ,
der sie zugeordnet ist. So ist die Variable NOCC(1) gleich vier,
die Variable NOCC(2) ist gleich zwei, die Variable NOCC(3) ist gleich
eins und die Variable NOCC(4) ist gleich eins.
-
Wenn
diese Operation ausgeführt
ist, berechnet der Prozessor 200 im Schritt E303 die Gesamtzahl
der Einfügungen
LCYC, die im so bestimmten Übertragungszyklus
ausgeführt
werden müssen. Dies
erfolgt, indem die Werte der vorher bestimmten Variablen NOCC(i)
addiert werden.
-
Gemäß unserem
Beispiel ist die Gesamtzahl an Einfügungen LCYC gleich dem Wert
acht.
-
Wenn
diese Operation ausgeführt
ist, geht der Prozessor 200 zum folgenden Schritt E304 über und
setzt die Variable i auf den Wert eins.
-
Der
Prozessor 200 geht anschließend zum Schritt E305 über und
bestimmt die Periodizität
der Einfügungen
der in Verarbeitung befindlichen Tabelle in den Übertragungszyklus.
-
Der
Prozessor 200 bestimmt diese Periodizität PER(i), indem er den ganzzahligen
Anteil des Ergebnisses der Division der Gesamtzahl von Einfügungen LCYC
durch die Anzahl von Einfügungen NOCC(i)
entsprechend der in Verarbeitung befindlichen Tabelle(i) nimmt.
-
Gemäß unserem
Beispiel bestimmt der Prozessor 200 die Periodizität PER(1)
der Tabelle(1) im Übertragungszyklus.
Diese Periodizität
ist in diesem Fall gleich zwei.
-
Wenn
diese Operation ausgeführt
ist, prüft der
Prozessor 200 im Schritt E306, ob die Variable i gleich
der Anzahl Tmax von Datentabellen ist, die eingefügt werden
sollen.
-
Wenn
dies nicht der Fall ist, inkrementiert der Prozessor die Variable
i im Schritt E307 um eine Einheit und kehrt zum vorher beschriebenen
Schritt E305 zurück.
-
Die
Schritte E305 bis E307 werden so oft wiederholt, wie es einzufügende Datentabellen
gibt.
-
Gemäß unserem
Beispiel bestimmt der Prozessor 200 die Periodizität PER(2)
der Tabelle(2) im Übertragungszyklus.
Diese Periodizität
ist hier gleich vier. Der Prozessor 200 bestimmt auch die
Periodizitäten
PER(3) und PER(4) der Tabelle(3) und der Tabelle(4). Diese Periodizitäten sind
in unserem Beispiel gleich acht.
-
Wenn
die Variable i gleich der Anzahl Tmax von einzufügenden Datentabellen ist, geht
der Prozessor 200 zum Schritt E308 über.
-
In
diesem Schritt initialisiert der Prozessor 200 die Variablen
count(1), count(2), count(3), count(4), NbInsTab(1), NbInsTab(2),
NbInsTab(3), NbInsTab(4) und Ninstot auf Null.
-
Im
folgenden Schritt E309 initialisiert der Prozessor 200 die
Variable i auf den Wert 1 und geht zum folgenden Schritt E312 der 3b über.
-
Im
Schritt E312 bestimmt der Prozessor 200, welche Tabelle
in den Übertragungszyklus
eingefügt werden
soll.
-
Hierzu
prüft der
Prozessor 200, ob der Wert der Variablen count(i) gleich
Null ist und ob die Variable NOCC(i) größer ist als die Variable NbInsTab(i).
-
Die
Variable i repräsentiert
den Index der in Verarbeitung befindlichen Datentabelle. Die Variable count(i)
ist der Wert eines Zählers,
der der in Verarbeitung befindlichen Datentabelle zugeordnet ist
und ist repräsentativ
für die
Mindestanzahl der Einfügungen
anderer Datengruppen vor einer Einfügung der Datengruppe, der jeder
Zähler
zugeordnet ist, im Einfügungszyklus.
Die Variable NbInsTab(i) ist repräsentativ für die Anzahl von Einfügungen der
Datentabelle, die bereits im Übertragungszyklus
durchgeführt wurden.
-
Gemäß unserem
Beispiel ist die Variable i gleich dem Wert eins, die Variable count(1)
ist gleich Null und die Variable NbInsTab(1) ist geringer als die Variable
NOCC(1), hier gleich vier. Der Prozessor 200 geht also
zum folgenden Schritt E314 über.
-
In
diesem Schritt fügt
der Prozessor 200 die mit Tabelle(1) bezeichnete Datentabelle
in den Übertragungszyklus
zu deren Übertragung
ein. Diese Übertragung
wird später
ausführlicher
unter Bezug auf 4 beschrieben werden.
-
Wenn
diese Operation durchgeführt
ist, geht der Prozessor 200 anschließend zum Schritt E315 über und
inkrementiert die Variable NbInsTab(i) um eine Einheit. Hier wird
die Variable NbInsTab(1) auf den Wert 1 gesetzt.
-
Wenn
diese Operation durchgeführt
ist, geht der Prozessor 200 zum folgenden Schritt E316 über und
initialisiert eine mit k bezeichnete Variable auf den Wert eins.
-
Wenn
diese Operation ausgeführt
ist, prüft der Prozessor 200 im
folgenden Schritt E317, ob die Variable count(k) strikt positiv
ist.
-
Wenn
dies der Fall ist, geht der Prozessor 200 zum Schritt E318 über und
dekrementiert die Variable count(k) um eine Einheit und geht dann
zum Schritt E319 über.
-
Wenn
die Variable count(k) Null oder geringer als Null ist, geht der
Prozessor 200 zum Schritt E319 über.
-
Es
ist hier anzumerken, dass in einer Variante der Test des Schritts
E317 nicht durchgeführt
und der Wert des Zählers
count(i) systematisch um eine Einheit dekrementiert wird. Die Gleichheitsbedingung des
Werts count(i) mit Null des Schritts E312 wird gemäß dieser
Variante durch die Unterschreitungs- oder Gleichheitsbedingung dieser
Variablen mit Null ersetzt.
-
Im
Schritt E319 prüft
der Prozessor 200, ob die Variable k gleich der Anzahl
von einzufügenden Datentabellen
ist.
-
Wenn
dies nicht der Fall ist, geht der Prozessor 200 zum Schritt
E320 über,
inkrementiert die Variable k um eine Einheit und kehrt zum vorher
beschriebenen Schritt E317 zurück.
-
Der
Prozessor 200 wiederholt die von den Schritten E317 bis
E320 gebildete Schleife, so lange nicht alle Variablen count(k)
verarbeitet wurden.
-
So
sind gemäß unserem
Beispiel die Variablen count(1), count(2), count(3) und count(4)
auf dem Wert Null.
-
Wenn
diese Operationen durchgeführt
sind, geht der Prozessor 200 zum Schritt E321 über und setzt
die Variable count(i), die der vorher im Schritt E314 eingefügten Tabelle
zugeordnet ist, auf den wert gleich der Einfügungsperiodizität PER(i)
der laufenden Datentabelle, dekrementiert um eine Einheit. Dieser
Wert entspricht der Mindestanzahl von Einfügungen anderer Datengruppen
vor einer Einfügung der
laufenden Datengruppe in den Einfügungszyklus.
-
Gemäß unserem
Beispiel wird die Variable count(1) so auf den Wert eins gesetzt.
-
Wenn
diese Operation ausgeführt
ist, geht der Prozessor 200 anschließend zum folgenden Schritt
E323 über.
-
In
diesem Schritt inkrementiert der Prozessor 200 die Variable
NInsTot um eine Einheit und setzt die Variable i auf den Wert eins.
-
Wenn
diese Operation ausgeführt
ist, prüft der
Prozessor 200 im folgenden Schritt E324, ob die Variable
NinsTot gleich der Gesamtzahl von Einfügungen LCYC ist, die im Übertragungszyklus
durchgeführt
werden sollen.
-
Wenn
dies nicht der Fall ist, kehrt der Prozessor 200 zum Schritt
E312 zurück.
-
Im
Schritt E312 bestimmt der Prozessor 200, welche Tabelle
in den Übertragungszyklus
eingefügt werden
soll.
-
Hierzu
prüft der
Prozessor 200, ob der Wert der Variablen count(i) gleich
Null ist und ob die Variable NOCC(i) größer ist als die Variable NbInsTab(i).
-
Gemäß unserem
Beispiel ist die Variable i gleich dem Wert eins, die Variable count(1)
ist gleich eins.
-
Wenn
der Test des Schritts E312 negativ ist, geht der Prozessor 200 zum
Schritt E313 über
und inkrementiert die Variable i um eine Einheit.
-
Wenn
diese Operation ausgeführt
ist, geht der Prozessor 200 zum Schritt E312 über.
-
Im
Schritt E312 bestimmt der Prozessor 200, welche Tabelle
in den Übertragungszyklus
eingefügt werden
soll.
-
Hierzu
prüft der
Prozessor 200, ob der Wert der Variablen count(i) gleich
Null ist und ob die Variable NOCC(i) größer ist als die Variable NbInsTab(i).
-
Gemäß unserem
Beispiel ist die Variable i gleich dem Wert zwei, die Variable count(2)
ist gleich Null und die Variable NOCC(2) gleich zwei ist größer als
die Variable NbInsTab(2). Der Prozessor 200 geht also zum
folgenden Schritt E314 über.
-
In
diesem Schritt fügt
der Prozessor 200 die mit Tabelle(2) bezeichnete Datentabelle
in den Übertragungszyklus
für deren Übertragung
ein.
-
Wenn
diese Operation durchgeführt
ist, führt der
Prozessor 200 die Schritte E315 bis E320 in gleicher Weise
wie oben beschrieben durch.
-
Gemäß unserem
Beispiel sind so die Variablen count(1), count(2), count(3) und
count(4) auf dem Wert Null.
-
Wenn
diese Operationen durchgeführt
sind, geht der Prozessor 200 zum Schritt E321 über und setzt
die Variable count(i), die der vorher im Schritt E314 eingefügten Tabelle
zugeordnet ist, auf den Wert gleich der Einfügungsperiodizität PER(i)
der laufenden Datentabelle, dekrementiert um eine Einheit.
-
Gemäß unserem
Beispiel wird die Variable count(2) so auf den Wert drei gesetzt.
-
Wenn
diese Operation ausgeführt
ist, geht der Prozessor 200 anschließend zum folgenden Schritt
E323 über.
-
In
diesem Schritt inkrementiert der Prozessor 200 die Variable
NInsTot um eine Einheit und setzt die Variable i auf den Wert eins.
-
Wenn
diese Operation ausgeführt
ist, prüft der
Prozessor 200 im folgenden Schritt E324, ob die Variable
NinsTot gleich der Gesamtzahl von Einfügungen LCYC ist, die im Übertragungszyklus
ausgeführt
werden sollen.
-
Wenn
dies nicht der Fall ist, kehrt der Prozessor 200 zum Schritt
E312 zurück.
-
Im
Schritt E312 bestimmt der Prozessor 200, welche Tabelle
in den Übertragungszyklus
eingefügt werden
soll.
-
Hierzu
prüft der
Prozessor 200, ob der Wert der Variablen count(i) gleich
Null ist und ob die Variable NOCC(i) größer ist als die Variable NbInsTab(i).
-
Gemäß unserem
Beispiel ist die Variable i gleich dem Wert eins, die Variable count(1)
ist gleich Null.
-
Wenn
der Test des Schritts E312 positiv ist, geht der Prozessor 200 zum
Schritt E314 über.
-
In
diesem Schritt fügt
der Prozessor 200 die mit Tabelle(1) bezeichnete Datentabelle
in den Übertragungszyklus
zu deren Übertragung
ein.
-
Wenn
diese Operation durchgeführt
ist, führt der
Prozessor 200 die Schritte E315 bis E320 in gleicher Weise
wie oben beschrieben aus.
-
Gemäß unserem
Beispiel sind die Variablen count(1), count(3) und count(4) auf
dem Wert Null. Die Variable count(2) ist dann auf dem Wert 2.
-
Wenn
diese Operationen durchgeführt
sind, geht der Prozessor 200 zum Schritt E321 über und setzt
die der vorher im Schritt E314 eingefügten Tabelle zugeordnete Variable
count(1) auf den Wert gleich der Einfügungsperiodizität PER(i)
der laufenden Datentabelle dekrementiert um eine Einheit.
-
Gemäß unserem
Beispiel wird die Variable count(1) auf den Wert eins gesetzt.
-
Wenn
diese Operation ausgeführt
ist, geht der Prozessor 200 anschließend zum folgenden Schritt
E323 über.
-
In
diesem Schritt inkrementiert der Prozessor 200 die Variable
NInsTot um eine Einheit und setzt die Variable i auf den Wert eins.
-
Wenn
diese Operation ausgeführt
ist, prüft der
Prozessor 200 im folgenden Schritt E324, ob die Variable
NinsTot gleich der Gesamtzahl von Einfügungen LCYC ist, die in den Übertragungszyklus
eingefügt
werden sollen.
-
Wenn
dies nicht der Fall ist, kehrt der Prozessor 200 zum Schritt
E312 zurück.
-
Im
Schritt E312 bestimmt der Prozessor 200, welche Tabelle
in den Übertragungszyklus
eingefügt werden
soll.
-
Hierzu
prüft der
Prozessor 200, ob der Wert der Variablen count(i) gleich
Null ist und ob die Variable NOCC(i) größer ist als die Variable NbInsTab(i).
-
Gemäß unserem
Beispiel ist die Variable i gleich dem Wert eins, die Variable count(1)
ist gleich eins.
-
Wenn
der Test des Schritts E312 negativ ist, geht der Prozessor 200 zum
Schritt E313 über
und inkrementiert die Variable i um eine Einheit.
-
Wenn
diese Operation ausgeführt
ist, geht der Prozessor 200 zum Schritt E312 über.
-
Im
Schritt E312 bestimmt der Prozessor 200, welche Tabelle
in den Übertragungszyklus
eingefügt werden
soll.
-
Hierzu
prüft der
Prozessor 200, ob der Wert der Variablen count(i} gleich
Null ist und on die Variable NOCC(i) größer ist als die Variable NbInsTab(i).
-
Gemäß unserem
Beispiel ist die Variable i gleich dem Wert zwei, die Variable count(2)
ist gleich zwei.
-
Wenn
der Test des Schritts E312 negativ ist, geht der Prozessor 200 zum
Schritt E313 über
und inkrementiert die Variable i um eine Einheit.
-
Wenn
diese Operation ausgeführt
ist, geht der Prozessor 200 zum Schritt E312 über.
-
Der
Prozessor 200 prüft
in diesem Schritt, ob der Wert der Variablen count(i) gleich Null
ist und ob die Variable NOCC(i) größer ist als die Variable NbInsTab(i).
-
Gemäß unserem
Beispiel ist die Variable i gleich dem Wert drei, die Variable count(3)
ist Null und die Variable NOCC(3) gleich eins ist größer als die
Variable NbInsTab(3). Der Prozessor 200 geht also zum folgenden
Schritt E314 über.
-
In
diesem Schritt fügt
der Prozessor 200 die mit Tabelle(3) bezeichnete Datentabelle
in den Übertragungszyklus
zu deren Übertragung
ein.
-
Wenn
diese Operation durchgeführt
ist, führt der
Prozessor 200 die Schritte E315 bis E323 in gleicher weise
wie oben beschrieben aus.
-
Wenn
diese Operation ausgeführt
ist, prüft der
Prozessor 200 im folgenden Schritt E324, ob die Variable
NInsTot gleich der Gesamtzahl von Einfügungen LCYC ist, die im Übertragungszyklus
ausgeführt
werden sollen.
-
Wenn
dies nicht der Fall ist, kehrt der Prozessor 200 zum Schritt
E312 zurück.
-
Der
Prozessor 200 führt
so die Schleife aus, die von den Schritten E312 bis E320 gebildet
wird, und fügt
die verschiedenen Datentabellen mit einer Häufigkeit ein, die der Wichtigkeit
der in diesen Tabellen enthaltenen Daten entspricht.
-
So
werden chronologisch die Datentabellen Tabelle(1), Tabelle(2), Tabelle(1),
Tabelle(3), Tabelle(1), Tabelle(2), Tabelle(1) und Tabelle(4) eingefügt.
-
Es
ist hier anzumerken, dass der wie oben beschriebene Algorithmus
einen Übertragungszyklus in
der Zeit bildet und in Echtzeit die Datengruppen in diesen Zyklus
in Abhängigkeit
von ihrer Wichtigkeit einfügt.
-
Die
Datengruppen werden chronologisch gemäß ihrer Wichtigkeit eingefügt. Die
für jede
Datengruppe ausgeführte
Anzahl von Einfügungen
hängt von
ihrer Wichtigkeit ab, und die mehrfach in den Übertragungszyklus eingefügten Datengruppen
werden durch eine vorbestimmten Anzahl von Einfügungen anderer Datengruppen
in den Übertragungszyklus
getrennt.
-
Wenn
der Test E324 positiv ist, beendet der Prozessor 200 die
Einfügung
der Datengruppen in den bestimmten Einfügungszyklus. Der Prozessor 200 kehrt
dann zum Schritt E300 zurück
und wiederholt den aus den Schritten E300 bis E324 bestehenden Algorithmus.
-
Der
Prozessor 200 wiederholt diese Schritte direkt nach dem
Schritt E324 oder wartet eine vorbestimmte Zeit ab, ehe er diese
Schritte erneut wiederholt.
-
4 stellt
den Datenübertragungsalgorithmus
dar, der von der Übertragungsvorrichtung
gemäß der vorliegenden
Erfindung ausgeführt
wird.
-
Der
Prozessor 200 der Übertragungsvorrichtung
oder des Servers 100 liest ausgehend vom Speicher 203 die
Anweisungen des den Schritten E400 bis E404 der 4 entsprechenden
Programms und lädt
sie in den Arbeitsspeicher 203, um sie auszuführen.
-
Der
Algorithmus der 4 wird bei jeder Einfügung einer
Datentabelle in den Übertragungszyklus im
Schritt E314 des Algorithmus der 3b ausgeführt.
-
Im
Schritt E400 bestimmt der Prozessor 200 des Servers 100 den
Durchsatz des Telekommunikationsnetzes 130. Der Durchsatz
des Telekommunikationsnetzes 130 ist zum Beispiel ein vorbestimmter Durchsatz
oder ein vom Datenverwalter des Servers 100 festgelegter
Durchsatz.
-
Im
folgenden Schritt E401 bestimmt der Prozessor 200 die Größe der zu übertragenden
Datentabelle.
-
Wenn
diese Operation ausgeführt
ist, berechnet der Prozessor 200 im Schritt E402 die Übertragungsdauer
der zu übertragenden
Datentabelle. Diese Dauer wird berechnet, indem die Größe der im Schritt
E401 bestimmten Datentabelle durch den im Schritt E400 bestimmten
Durchsatz des Netzes dividiert wird.
-
Im
folgenden Schritt E403 überträgt der Prozessor 200 die
Datentabelle im Zeitpunkt tp.
-
Der
Zeitpunkt tp ist der Zeitpunkt, in dem die vorhergehende Datentabelle
vollständig über das
Internet übertragen
wurde. Dieser Zeitpunkt tp wurde bei der Übertragung der vorhergehenden
Datentabelle berechnet.
-
Im
Schritt E404 berechnet der Prozessor 200 den Zeitpunkt
tp der Übertragung
der nächsten
Datentabelle. Dieser Übertragungszeitpunkt
wird bestimmt, indem der laufende Übertragungszeitpunkt zur im
oben beschriebenen Schritt E402 berechneten Übertragungsdauer addiert wird.
-
Wenn
diese Operation durchgeführt
ist, endet der Algorithmus der 4 und der
Prozessor 200 kehrt zum Schritt E315 des Algorithmus der 3a zurück.
-
5 stellt
den Übertragungszyklus-Analysealgorithmus
dar, der von der erfindungsgemäßen Übertragungsvorrichtung
ausgeführt
wird.
-
Der
Prozessor 200 der Übertragungsvorrichtung
oder Server 100 liest ausgehend vom Speicher 203 die
Anweisungen des Programms entsprechend den Schritten E500 bis E503
der 5 und lädt
sie in den Arbeitsspeicher 203, um sie auszuführen.
-
Periodisch
führt der
Prozessor 200 des Servers 100 den vorliegenden
Algorithmus parallel zu den oben beschriebenen Algorithmen der 3a, 3b und 4 aus.
-
Dieser
Algorithmus ermöglicht
eine Abschätzung
der Relevanz der für
die Übertragung
von Datengruppen gemäß der vorliegenden
Erfindung verwendeten Parameter.
-
Im
Schritt E500 liest der Prozessor 200 die verschiedenen
Datengruppen oder Datentabellen, die in den Übertragungszyklus eingefügt sind
und über
das Telekommunikationsnetz 130 übertragen werden.
-
Der
Prozessor 200 bestimmt anschließend im Schritt E501 für eine oder
mehrere Datentabellen die Übertragungsdauer
der in den Übertragungszyklus
eingefügten
Datentabelle(n) gemäß dem Algorithmus
der 3a und 3b.
-
Im
folgenden Schritt E502 prüft
der Prozessor 200, ob die Datentabelle(n) korrekt im Übertragungszyklus
verteilt ist oder sind.
-
Je
nach der Größe einer
Datentabelle und ihrer Wichtigkeit kann es in manchen Fällen nämlich notwendig
sein, die Wichtigkeit dieser Datentabelle zu verändern, um eine Mindesteinfügungshäufigkeit dieser
Tabelle in den Übertragungszyklus
zu gewährleisten.
-
Wenn
die Datentabelle(n) korrekt im Übertragungszyklus
verteilt ist oder sind, beendet der Prozessor 200 den Algorithmus.
-
Wenn
die Verteilung nicht korrekt ist, geht der Prozessor 200 zum
Schritt E503 über.
-
In
diesem Schritt verändert
der Prozessor 200 den Durchsatz des Übertragungskanals und/oder
verändert
die für
die Wichtigkeit der Daten einer oder mehrerer Datentabellen repräsentativen Informationen
und/oder löscht
oder fügt
Tabellen in den Übertragungszyklus
hinzu.
-
Wenn
diese Operation durchgeführt
ist, beendet der Prozessor 200 den Algorithmus.
-
Natürlich ist
die vorliegende Erfindung keineswegs auf die hier beschriebenen
Ausführungsformen
beschränkt, sondern
umfasst im Gegenteil jede dem Fachmann zugängliche Variante.