-
HINTERGRUND
DER ERFINDUNG
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf Vorrichtungen und Verfahren
zur Datenübertragung auf
Paketbasis und, genauer gesagt, auf eine Datenübertragungsvorrichtung und
ein Verfahren, bei welchen jedem Paket eine Priorität zugewiesen
wird, und nur ein Paket mit hoher Priorität erneut übertragen werden soll.
-
Beschreibung
des Standes der Technik
-
Daten
wie beispielsweise Video und Audio werden im Allgemeinen in Echtzeit
mittels eines Echtzeittransportprotokolls (Realtime Transport Protocol, RTP) übertragen.
Die Details des RTP finden sich in „RTP: A Transport Protocol
for Real-Time Applications",
H. Schulzrinne, S. Casner, R. Frederik und V. Jacobson, RFC1889,
1996.
-
9 ist
ein Blockdiagramm, das die Konfiguration einer Datenübertragungsvorrichtung
zeigt, bei welcher das RTP eingesetzt wird. In der 9 arbeiten
ein Datensender 50 und ein Datenempfänger 60 zusammen,
um Daten von einer übertragungsseitigen
Anwendung 1 an eine empfangsseitige Anwendung 2 zu übertragen.
Im vorliegenden Fall wird die übertragungsseitige
Anwendung 1 beispielhaft durch einen Videokodierer und
einen Audiokodierer verkörpert,
während
die empfangsseitige Anwendung 2 beispielhaft durch einen
entsprechenden Videodekodierer und Audiodekodierer verkörpert wird.
-
Ein
Header-Hinzufigungsabschnitt 51 versieht ein von der übertragungsseitigen
Anwendung 1 ausgegebenes Paket mit einem Header, der z.B.
eine Sequenznummer und einen Zeitstempel umfasst. Ein Paketsender 52 überträgt ein Datenpaket 101 mit dem
so hinzugefügten
Header. Ein Paketempfänger 62 empfängt das
Datenpaket 101 und gibt es an einen Paketausgabeabschnitt 61 aus,
in welchem das Datenpaket gespeichert wird. Der Paketausgabeabschnitt 61 gibt
das gespeicherte Datenpaket auf der Basis des Zeitstempels an die
empfangsseitige Anwendung 2 aus.
-
Während der
Datenübertragung über einen allgemeinen Übertragungspfad
ist ein Paketverlust wegen Übertragungsfehler
und Überlastung
wahrscheinlich. Beim RTP bezieht sich der Paketempfänger 62 auf
die jedem der empfangenen Datenpakete 101 zugewiesenen
Sequenznummern, um festzustellen, ob ein Paketverlust stattgefunden
hat. Die Art des Datenpaketempfangs durch den Paketempfänger 62 (im
Folgenden Paketempfangszustand) wird einem Empfangszustandssender 63 mitgeteilt.
Der Empfangszustandssender 63 erzeugt dann ein Empfängerberichtspaket
(RR-Paket) 110, welches die unter den bisher empfangenen
größte Sequenznummer angibt,
und die Gesamtzahl an bisher verloren gegangenen Paketen. Das so
erzeugte RR-Paket 110 wird an einen Empfangszustandsempfänger 53 übertragen,
und der im RR-Paket 110 vorgefundene Empfangszustand wird
dann sowohl an die übertragungsseitige
Anwendung 1 als auch an den Paketsender 52 gemeldet.
-
10 ist
ein Sequenzdiagramm zur Datenübertragung
mittels des RTP. Der Datensender 50 weist jedem Paket (durch
einen Pfeil bezeichnet) eine Sequenznummer (SN) zu und überträgt die Pakete
sequenziell. Der Datenempfänger 60 informiert den
Datensender 50 über
den Paketempfangszustand durch Übertragung
eines RR-Pakets zu einem vorbestimmten Zeitpunkt.
-
Es
ist auch eine Datenübertragung
mittels eines verbesserten RTP (prioritätenzugewiesenes RTP) bekannt,
bei welcher jedem Paket eine Priorität zugewiesen wird, und nur
ein Paket mit hoher Priorität
erneut übertragen
werden soll. 11 ist ein Blockdiagramm, das
die Konfiguration einer Datenübertragungsvorrichtung
zeigt, die ein solches prioritätenzugewiesenes
RTP einsetzt. Ein Prioritätenzuweisungsabschnitt 72 weist
sequenziell jedem mit einem Header versehenen Paket eine hohe oder
niedrige Priorität
und eine zweite Sequenznummer zu. Im vorliegenden Fall wird die
zweite Sequenznummer immer dann um 1 erhöht, wenn das darauffolgende
Paket von hoher Priorität
ist, verbleibt aber gleich, falls das Paket mit geringer Priorität folgt.
Ein Paketsender 73 überträgt ein Datenpaket 100 mit
einer so zugewiesenen Priorität.
-
Ein
Prioritätenbeurteilungsabschnitt 82 bezieht
sich auf die zweiten Sequenznummern, um zu erkennen, ob irgendein
Paket von hoher Priorität
verloren wurde. Das Ergebnis der Erkennung wird einem Übertragungsanfragesender 85 mitgeteilt.
In Antwort darauf überträgt der Neuübertragungsanfragensender 85 an
einen Übertragungsanfrageempfänger 75 ein
negatives Bestätigungspaket
(negative acknowledge packet, NACK-Paket) 120, welches
angibt, welches Paket erneut übertragen
werden muss. Der Neuübertragungsanfrageempfänger 75 übergibt dann
die Information an einen Neuübertragungspaketbereitstellungsabschnitt 76,
in welchem die Pakete hoher Priorität zur erneuten Übertragung
gespeichert sind. In Antwort darauf gibt der Neuübertragungspaketbereitstellungsabschnitt 76 auf
der Grundlage der Information jegliches bezeichnetes Paket an den
Prioritätszuweisungsabschnitt 72 aus.
Auf diese Weise muss beim prioritätenzugewiesenen RTP nur jegliches
Paket von hoher Priorität zur
erneuten Übertragung
verarbeitet werden.
-
12 ist
ein Sequenzdiagramm zur Datenübertragung
mittels des prioritätenzugewiesenen RTP.
In der 12 bezeichnen die Bezugszeichen SN
und SSN jeweils die Sequenznummer und die zweite Sequenznummer.
Weiterhin bezeichnet „P
= 1" ein Paket von
hoher Priorität,
wohingegen „P
= 0" ein Paket von
geringer Priorität
bezeichnet. In der 12, z.B. wenn Pakete mit SN
= 3 und SN = 4 beide verloren gehen, ist das letztere Paket erneut
zu übertragen,
da es von hoher Priorität
ist, aber nicht das erstere Paket von geringer Priorität.
-
In
der
EP 1 006 689 wird
eine Vorrichtung zur Weiterleitung von Daten beschrieben, die vom
Senderende in Paketeinheiten übertragen
werden, wobei jedes Paket zusätzliche
Informationen umfasst, die sich auf dessen Sequenznummer, Priorität und Datenwiedergabezeitpunkt
beziehen. Diese Vorrichtung umfasst eine Empfangseinheit, eine Prioritätsentscheidungseinheit,
um über
die Priorität
für jedes empfangene
Paket zu entscheiden, eine Neuübertragungspaketspeicherungseinheit,
die Pakete als neu zu übertragende
Pakete speichert, falls deren zugeordnete Priorität höher als
ein vorbestimmter Wert ist, eine Neuübertragungsanweisungsempfangseinheit für den Empfang
einer Neuübertragungsanfrage
von einem Endgerät
am Empfangsende; eine Neuübertragungsentscheidungseinheit,
um zu entscheiden, ob die erneute Übertragung des Pakets, für welches die Übertragungsanfrage
erfolgt ist, durchgeführt werden
sollte oder nicht, auf der Grundlage der Neuübertragungsanfrage und des
Speicherzustandes der Neuübertragungspakete
in der Übertragungspaketspeicherungseinheit.
Weiterhin umfasst sie außerdem
eine Übertragungsschlangenverwaltungseinheit
zum Festsetzen der Reihenfolge der Übertragung der empfangenen
Pakete und derjenigen Pakete, die als erneut zu übertragende Pakete festgelegt wurden,
auf der Grundlage von zusätzlichen
Informationen, die jedem Paket mitgegeben werden; und eine Übertragungseinheit
zur Übertragung
der Daten dieser Pakete in der durch die Verwaltungseinheit festgelegten Übertragungsreihenfolge.
-
In
dem obigen Fall wird die Zuweisung der Priorität ohne Berücksichtigung des Paketempfangszustandes
durchgeführt,
und ein Verhältnis
zwischen zuzuweisenden hohen und geringen Prioritäten ist konstant.
Folglich wird die erneute Übertragung
von Paketen weitergeführt,
unabhängig
davon, ob der Übertragungspfad
in einem schlechten Zustand ist und der Verlust von Paketen oft
eintritt, was zu einer Erhöhung
von zu übertragenden
Daten führt.
Andererseits, selbst falls die Übertragungskapazität hoch ist,
wobei der Übertragungspfad
in gutem Zustand ist und folglich selten Paketverluste auftreten,
werden die Pakete von hoher Priorität trotzdem auf der Grundlage
des konstanten Verhältnisses
erzeugt, und es wird nur dann eine erneute Übertragung eines Paketes durchgeführt, wenn
ein Paket von hoher Priorität
verloren geht. Dementsprechend, wegen der Missachtung des Paketempfangszustandes
zum Zeitpunkt der Zuweisung der Priorität, kann die Datenübertragung
unabhängig
von der zur Verfügung stehenden Übertragungskapazität nicht
effizient durchgeführt
werden.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Folglich
ist es eine Aufgabe der vorliegenden Erfindung eine Datenübertragungsvorrichtung
und -verfahren bereitzustellen, die mittels einer geeigneten geänderten
Weise der Prioritätszuweisung
unter Berücksichtigung
des Paketempfangszustandes eine effiziente Datenübertragung erzielen.
-
Das
oben beschriebene Problem wird durch die Vorrichtung gemäß Anspruch
1 und das Verfahren gemäß Anspruch
5 gelöst.
Weitere Ausführungsformen
sind in den abhängigen
Ansprüchen
beschrieben.
-
Die
vorliegende Erfindung hat die folgenden Merkmale, um die obige Aufgabe
zu lösen.
-
Ein
erster Aspekt der vorliegenden Erfindung bezieht sich auf eine Datenübertragungsvorrichtung zur Übertragung
von Daten auf Paketbasis von einem Sender an einen Empfänger. Der
Sender umfasst: einen Prioritätszuweisungsabschnitt
um auf Paketbasis jedem Paket Prioritäten zuzuweisen; einen Paketübertragungsabschnitt
zur Übertragung
eines prioritätszugewiesenen
Pakets; einen Empfangszustandsempfangsabschnitt zum Empfangen eines
Paketempfangszustands umfassend ein Paketverlustverhältnis im
Empfänger;
und einen Paketneuübertragungsabschnitt
zur Durchführung
der erneuten Übertragung
von Paketen in Antwort auf eine Neuübertragungsanfrage des Empfängers. Der
Empfänger
umfasst: einen Paketempfangsabschnitt für den Empfang des durch den
Paketübertragungsabschnitt
bereitgestellten Pakets; einen Empfangszustandsübertragungsabschnitt zur Übertragung
des Empfangszustandes auf der Grundlage von Paketverlustinformationen,
die durch den Paketempfangsabschnitt festgestellt wurden; und einen
Neuübertragungsanfrageübertragungsabschnitt
zur Übertragung
der Neuübertragungsanfrage,
falls irgendein Paket von hoher Priorität als verlorengegangen erfasst
wurde. Hier ändert
der Prioritätszuweisungsabschnitt
die Arten der Prioritätszuweisung,
sodass die Anzahl von Paketen mit hoher Priorität geringer wird, wenn das Paketverlustverhältnis größer als
ein vorbestimmter Wert ist, und erhöht wird, wenn das Paketverlustverhältnis geringer
als der vorbestimmte Wert ist.
-
Wie
oben beschrieben, kann durch die Steuerung der erneut zu übertragenden
Datenmenge auf der Grundlage des Empfangszustandes die Datenübertragung
mit jeglicher zur Verfügung
stehender Übertragungskapazität effizient
durchgeführt
werden.
-
Bevorzugt
kann der Empfangszustandsübertragungsabschnitt
den Empfangszustand zusammen mit einem Paketverlustverhältnis im
Paketempfangsabschnitt übertragen,
und der Prioritätenzuweisungsabschnitt
kann die Arten der Prioritätszuweisung
verändern,
sodass man das Paket hoher Priorität mit einem geringeren Verhältnis vorfindet,
wenn das Paketverlustverhältnis
größer als
ein vorbestimmter Wert ist, und wenn dieses kleiner ist, das Paket
hoher Priorität
mit einem höheren
Verhältnis
vorfindet.
-
Gemäß einem
zweiten Aspekt klassifiziert der Prioritätenzuweisungsabschnitt im ersten
Aspekt jegliches Paket mit kodierten Daten, die von bewegten Bildern
abgeleitet sind, als intrakodiertes Paket, das Intra-Frame kodierte
Daten führt,
oder als ein interkodiertes Paket, das Inter-Frame kodierte Daten führt, und
verändert,
auf der Grundlage des Empfangszustands, die Arten der Prioritätszuweisung,
die sich nach dem Pakettyp richtet.
-
Wie
oben beschrieben, werden beim zweiten Aspekt, um kodierte Daten
zu übertragen,
die von bewegten Bildern abgeleitet sind, die Pakete unter Berücksichtigung
jeglichen Einflusses, der auf das resultierende reproduzierte Bild
ausgeübt
werden soll, in zwei Typen klassifiziert. Auf der Grundlage der Klassifizierung
und des Paketempfangszustands im Empfänger werden den Paketen Prioritäten zugewiesen.
Auf diese Weise kann durch Steuerung der erneut zu übertragenden
Datenmenge auf der Grundlage des Empfangszustandes die Datenübertragung mit
jeglicher zur Verfügung
stehenden Übertragungskapazität effizient
durchgeführt
werden, was eine Qualitätsverschlechterung
für jegliches
resultierendes reproduziertes Bild verhindert.
-
In
solch einem Fall kann der Prioritätszuweisungsabschnitt auf der
Grundlage des Empfangszustandes zwischen einer ersten Prioritätszuweisungsart,
bei welcher dem intrakodierten Paket eine hohe Priorität zugewiesen
wird, und dem interkodierten Paket eine geringe Priorität zugewiesen
wird, und einer zweiten Prioritätszuweisungsart,
bei welcher jedem Paket eine hohe Priorität zugewiesen wird, wechseln.
Oder alternativ kann auf der Grundlage des Empfangszustandes gewechselt
werden zwischen einer ersten Prioritätszuweisungsart, bei welcher
dem intrakodierten Paket mit einem vorbestimmten Verhältnis entweder
einer hohe oder eine geringe Priorität zugewiesen wird und dem interkodierten
Paket eine geringe Priorität
zugewiesen wird, einer zweiten Prioritätszuweisungsart, bei welcher dem
intrakodierten Paket eine hohe Priorität zugewiesen wird und dem interkodierten
Paket eine geringe Priorität
zugewiesen wird, und einer dritten Prioritätszuweisungsart, bei welcher
jedem Paket eine hohe Priorität
zugewiesen wird.
-
Wenn
kodierte Daten, die von bewegten Bildern abgeleitet sind, übertragen
werden, werden die Pakete unter Berücksichtigung jeglichen Effekts,
der auf das resultierende reproduzierte Bild ausgeübt werden
soll, in zwei Typen klassifiziert. Auf diese Weise wird es durch
Wechsel zwischen zwei oder drei Arten der Prioritätszuweisung
möglich,
eine Qualitätsverschlechterung
bei jeglichem resultierenden reproduzierten Bild zu verhindern.
-
Ein
dritter Aspekt der vorliegenden Erfindung bezieht sich auf ein Datenübertragungsverfahren
zur Übertragung
von Daten auf Paketbasis von einem Sender zu einem Empfänger. Der
Sender umfasst die folgenden Schritte: Zuweisung auf Paketbasis,
von Prioritäten
an jedes Paket; Übertragung
eines Pakets mit zugewiesener Priorität; Empfang eines Paketempfangszustands,
der ein Verhältnis
des Paketverlusts im Empfänger
umfasst; und Durchführung
einer erneuten Paketübertragung
in Antwort auf eine Neuübertragungsanfrage
vom Empfänger.
Der Empfänger
umfasst die folgenden Schritte: Empfang des durch den Paketübertragungsabschnitt
bereitgestellten Pakets; Übertragung
des Empfangszustands basierend auf Informationen zum Paketverlust,
die beim Schritt des Paketempfangs erfasst wurden; und Übertragung
der Neuübertragungsanfrage,
falls irgendein Paket hoher Priorität als verloren erfasst wurde.
Hier werden die Arten der Prioritätszuweisung beim Prioritätszuweisungsschritt
so verändert,
dass die Anzahl an Paketen hoher Priorität geringer wird, wenn das Paketverlustverhältnis größer als
ein vorbestimmter Wert ist, und erhöht wird, wenn das Paketverlustverhältnis geringer
als der vorbestimmte Wert ist.
-
Wie
oben beschrieben, kann durch Steuerung der Menge an erneut zu übertragende
Daten auf der Grundlage des Empfangszustandes die Datenübertragung
mit jeglicher zur Verfügung
stehender Übertragungskapazität effizient
durchgeführt
werden.
-
Besonders
bevorzugt kann beim Schritt der Übertragung
des Empfangszustands der Empfangszustand zusammen mit einem Paketverlustverhältnis beim
Schritt des Paketempfangs übertragen
werden, und beim Schritt der Prioritätszuweisung können die Arten
der Prioritätszuweisung
so verändert
werden, dass ein Paket hoher Priorität mit einem geringeren Verhältnis vorgefunden
wird, wenn das Paketverlustverhältnis
größer als
ein vorbestimmter Wert ist, und wenn dieses kleiner ist, das Paket
hoher Priorität
mit einem höheren
Verhältnis
vorgefunden wird.
-
Gemäß einem
vierten Aspekt wird beim dritten Aspekt beim Schritt der Prioritätszuweisung
jegliches Paket, das kodierte Daten enthält, die von bewegten Bildern
abgeleitet sind, als intrakodiertes Paket klassifiziert, das Intra-Frame
kodierte Daten führt, oder
als interkodiertes Paket, das Inter-Frame kodierte Daten führt, und
auf der Grundlage des Empfangszustandes werden die Arten der Prioritätszuweisung,
die sich nach dem Pakettyp richtet, verändert.
-
Wie
oben beschrieben werden beim vierten Aspekt zur Übertragung von kodierten Daten,
die von bewegten Bildern abgeleitet sind, die Pakete unter Berücksichtigung
jeglichen Einflusses, der auf das resultierende reproduzierte Bild
ausgeübt
werden soll, in zwei Typen klassifiziert. Auf der Grundlage der Klassifikation
und des Paketempfangszustands im Empfänger werden den Paketen Prioritäten zugewiesen.
Auf diese Weise kann durch Steuerung der erneut zu übertragenden
Datenmenge auf der Grundlage des Empfangszustands die Datenübertragung
mit jeglicher zur Verfügung
stehender Übertragungskapazität effizient
durchgeführt
werden, was eine Qualitätsverschlechterung
bei jeglichem resultierenden reproduzierten Bild verhindert.
-
In
diesem Fall kann beim Schritt der Prioritätszuweisung auf der Grundlage
des Empfangszustandes gewechselt werden zwischen einer ersten Art
der Prioritätszuweisung,
bei welcher dem intrakodierten Paket eine hohe Priorität zugewiesen
wird und dem interkodierten Paket eine geringe Priorität, und einer
zweiten Art der Prioritätszuweisung,
bei welcher jedem Paket eine hohe Priorität zugewiesen wird. Oder es
kann alternativ auf der Grundlage des Empfangszustandes gewechselt
werden zwischen einer ersten Art der Prioritätszuweisung, bei welcher dem
intrakodierten Paket mit einem vorbestimmten Verhältnis entweder
eine hohe oder eine geringe Priorität zugewiesen wird und dem interkodierten
Paket eine geringe Priorität
zugewiesen wird, einer zweiten Art der Prioritätszuweisung, bei welcher dem
intrakodierten Paket eine hohe Priorität zugewiesen wird und dem interkodierten
Paket eine geringe Priorität zugewiesen
wird, und einer dritten Art der Prioritätszuweisung, bei welcher jedem
Paket eine hohe Priorität
zugewiesen wird.
-
Wenn
kodierte Daten übertragen
werden, die von bewegten Bildern abgeleitet sind, werden die Pakete
unter Berücksichtigung
jeglichen Effekts, der auf das resultierende reproduzierte Bild
ausgeübt
werden soll, in zwei Typen klassifiziert. Auf diese Weise wird es
durch Wechsel zwischen zwei oder drei Arten der Prioritätszuweisung
möglich,
eine Qualitätsverschlechterung
bei jeglichem resultierenden reproduzierten Bild zu verhindern.
-
Diese
und andere Aufgaben, Merkmale, Aspekte und Vorteile der vorliegenden
Erfindung werden anhand der folgenden detaillierten Beschreibung der
vorliegenden Erfindung offensichtlicher werden, wenn diese zusammen
mit den beigefügten
Zeichnungen gesehen wird.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 ist
ein Blockdiagramm, das die Konfiguration einer Datenübertragungsvorrichtung
gemäß einer
Ausführungsform
der vorliegenden Erfindung zeigt;
-
2 ist
ein Diagramm, das das Format eines Datenpakets bei einem prioritätenzugewiesenen RTP
zeigt;
-
3 ist
eine Tabelle, die Arten der Prioritätszuweisung zeigt, die unter
den Prioritätszuweisungsabschnitten
unterschiedlich ausfallen, bei der Datenübertragungsvorrichtung der
Ausführungsform;
-
4 ist
ein Diagramm, das das Format eines NACK-Pakets im Falle des prioritätenzugewiesenen
RTP zeigt;
-
5 ist
ein Diagramm, das das Format eines RR-Pakets im Falle des prioritätenzugewiesenen RTP
zeigt;
-
6 ist
ein Diagramm, das die Art der Änderung
der Prioritätszuweisung
bei der Datenübertragungsvorrichtung
der Ausführungsform
zeigt;
-
7 ist
ein Blockdiagramm, das beispielhaft die modifizierte Konfiguration
der Datenübertragungsvorrichtung
gemäß der Ausführungsform
der vorliegenden Erfindung zeigt;
-
8 ist
eine Tabelle, die Arten der Prioritätszuweisung zeigt, die zwischen
den Prioritätszuweisungsabschnitten
in der Datenübertragungsvorrichtung
der Ausführungsform
unterschiedlich ausfallen;
-
9 ist
ein Blockdiagramm, das die Konfiguration einer herkömmlichen
Datenübertragungsvorrichtung
mit angewandtem RTP zeigt;
-
10 ist
ein Sequenzdiagramm zur Datenübertragung
im Falle des RTP;
-
11 ist
ein Blockdiagramm, das die Konfiguration der herkömmlichen
Datenübertragungsvorrichtung
im Falle des prioritätenzugewiesenen
RTP zeigt; und
-
12 ist
ein Sequenzdiagramm zur Datenübertragung
im Falle des prioritätenzugewiesenen RTP.
-
BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORM
-
1 ist
ein Blockdiagramm, das die Konfiguration einer Datenübertragungsvorrichtung
gemäß einer
Ausführungsform
der vorliegenden Erfindung zeigt. Diese Datenübertragungsvorrichtung ist
durch einen Datensender 10 und einen Datenempfänger 20 konfiguriert,
und es werden Daten von der übertragungsseitigen
Anwendung 1 zu der empfangsseitigen Anwendung 2 mittels
des prioritätenzugewiesenen
RTP übertragen.
Der Datensender 10 umfasst einen Header-Hinzufügungsabschnitt 11,
einen Prioritätszuweisungssteuerungsabschnitt 12,
einen ersten bis dritten Prioritätszuweisungsabschnitt 13a bis 13c,
einen Paketsender 14, einen Empfangszustandsempfänger 15,
einen Neuübertragungsanfragenempfänger 16,
und einen Neuübertragungspaketbereitstellungsabschnitt 17.
Was den Datenempfänger 20 anbelangt,
umfasst dieser einen Paketausgabeabschnitt 21, einen Prioritätsbeurteilungsabschnitt 22,
einen Paketempfänger 23,
einen Paketempfangszustandssender 24, und einen Neuübertragungsanfragensender 25.
Hier hat jede Komponente, die in der Vorrichtung der 9 auftaucht,
dasselbe Bezugszeichen.
-
Als
nächstes
wird die Datenübertragung
von der übertragungsseitigen
Anwendung 1 an die empfangsseitige Anwendung 2 beschrieben.
Als erstes versieht der Header-Hinzufügungsabschnitt 11 ein von
der übertragungsseitigen
Anwendung 1 ausgegebenes Paket mit einem Header, der z.B.
eine Sequenznummer und einen Zeitstempel umfasst. Der Prioritätszuweisungssteuerungsabschnitt 12 gibt
das mit einem Header versehene Paket an irgendeinen des ersten bis
dritten Prioritätszuweisungsabschnitts 13a–13c aus.
Wie es später
beschrieben werden wird, versieht der erste bis dritte Prioritätszuweisungsabschnitt 13a–13c jedes
eingehende Paket auf unterschiedliche Weise mit einer hohen oder
niedrigen Priorität.
Der Paketsender 14 überträgt das prioritätszugewiesene
Datenpaket 100 an den Paketempfänger 23.
-
Das
so durch den Paketempfänger 23 empfangene
Datenpaket 100 wird dann über den Prioritätsbeurteilungsabschnitt 22 an
den Paketausgabeabschnitt 21 weitergeleitet. Der Paketausgabeabschnitt 21 speichert
das Datenpaket 100 und wartet auf den durch dessen Zeitstempel
bezeichneten Zeitpunkt für
die Ausgabe an die empfangsseitige Anwendung 2. Der Prioritätsbeurteilungsabschnitt 22 stellt
fest, ob irgendein Paket hoher Priorität verloren gegangen ist, und
das Feststellungsergebnis wird dem Neuübertragungsanfragensender 25 mitgeteilt. Der
Neuübertragungsanfragensender 25 überträgt das NACK-Paket 120,
welches angibt, welches Paket erneut übertragen werden soll.
-
Auf
der Grundlage des empfangenen NACK-Pakets 120 informiert
der Neuübertragungsanfragenempfänger 16 den
Neuübertragungspaketbereitstellungsabschnitt 17 darüber, welches
Paket erneut übertragen
werden muss. Hier speichert der Neuübertragungspaketbereitstellungsabschnitt 17 vorab
jegliches Paket, dem durch den ersten bis dritten Prioritätszuweisungsabschnitt 13a–13c eine hohe
Priorität
zugewiesen wurde, und gibt in Antwort darauf an den Prioritätszuweisungssteuerungsabschnitt 12 das
bezeichnete Paket aus.
-
Der
Paketempfänger 23 gibt
ebenso nach der Erfassung jeglichen Paketverlusts das Datenpaket 100 an
den Empfangszustandssender 24 aus. Auf der Grundlage der
Information über
den Paketverlust erzeugt der Empfangszustandssender 24 das RR-Paket 110 und überträgt es an
den Empfangszustandsempfänger 15.
Anhand des RR-Pakets 110 extrahiert der Empfangszustandempfänger 15 ein Paketverlustverhältnis 200 und
gibt es an den Prioritätszuweisungssteuerungsabschnitt 12 aus.
Auf der Grundlage des Paketverlustverhältnisses 200 bestimmt
der Prioritätszuweisungssteuerungsabschnitt 12,
an welchen des ersten bis dritten Prioritätszuweisungsabschnitts 13a–13c die
Pakete, die jeweils durch den Header-Hinzufügungsabschnitt 11 und den
Neuübertragungspaketbereitstellungsabschnitt 17 bereitgestellt
werden, ausgegeben werden sollen.
-
Als
nächstes
wird die Datenübertragungsvorrichtung
der vorliegenden Ausführungsform
im Detail beschrieben.
-
Hier
wird angenommen, dass es sich bei der übertragungsseitigen Anwendung 1 beispielsweise um
eine Anwendung zur Kodierung von bewegten Bildern wie beispielsweise
MPEG 4 und H.263 handelt. Die übertragungsseitige
Anwendung 1 führt
als erstes Intrakodierung oder Interkodierung in Bezug auf bewegte
Bilder durch, und die resultierend daraus abgeleiteten kodierten
Daten werden in Pakete unterteilt. Die Pakete werden als „intrakodierte
Pakete", die Intra-Frame
kodierte Daten führen,
und als „interkodierte
Pakete", die Inter-Frame
kodierte Daten führen,
klassifiziert. Im Vergleich haben die intrakodierten Pakete einen
signifikanteren Einfluss auf die Qualität des resultierenden reproduzierten
Bildes als die interkodierten Pakete, und werden folglich als folgenreicher
betrachtet. Diese Paketcharakteristik wird von der übertragungsseitigen
Anwendung 1 zusammen mit den Paketen ausgegeben.
-
Bei
der vorliegenden Ausführungsform
wird angenommen, dass das intrakodierte Paket jeglichem intrakodierten
Frame entspricht, und das interkodierte Paket jeglichem inteakodierten
Frame. Alternativ kann jegliches Paket, das die vorbe stimmte Anzahl
oder mehr an intrakodierten Blöcken
führt,
als das intrakodierte Paket behandelt werden, oder es kann jegliches
Paket als solches behandelt werden, das die intrakodierten Blöcke mit
einem vorbestimmten Verhältnis
oder mehr führt.
In diesem Fall kann jegliches andere Paket als das interkodierte
Paket behandelt werden.
-
2 ist
ein Diagramm, das das Format des prioritätszugewiesenen Datenpakets 100 zeigt.
In der 2 entspricht eine Nutzlast PL Paketdaten, die von
der übertragungsseitigen
Anwendung 1 ausgegeben werden. Ein Nutzlasttyp PLT bezeichnet
das prioritätenzugewiesene
RTP, wie es für
die Datenübertragung
angewandt wird. Eine Sequenznummer SN ist eine Zahl, die sequenziell
um 1 in der Reihenfolge der Datenpakete erhöht wird. Ein Zeitstempel TS
bezeichnet einen Zeitpunkt, zu welchem das Paket in der empfangsseitigen
Anwendung 2 verwendet werden soll. Eine übertragungsseitige
Kennung SSRC identifiziert den Datensender 10. Eine Priorität P bezeichnet
die Priorität
des Pakets, und ein Wert von 1 bedeutet, dass das Paket eine hohe
Priorität hat,
und ein Wert von 0 bedeutet, dass es eine geringe Priorität hat. Ein
zweiter Nutzlasttyp PLT2 bezeichnet den Datentyp, der mittels des
prioritätenzugewiesenen
RTP übertragen
werden soll. Eine zweite Sequenznummer SSN ist eine Zahl, die immer dann
um 1 erhöht
wird, wenn das darauffolgende Paket von hoher Priorität ist, welche
aber bei einem Paket von geringer Priorität gleich bleibt.
-
Der
Header-Hinzufügungsabschnitt 11 versieht
die von der übertragungsseitigen
Anwendung 1 ausgegebenen Pakete mit einem Header und versieht
die Felder vom Anfang des Headers bis zur übertragungsseitigen Kennung
mit einem Wert. Das mit einem Header versehene Paket wird durch
den Prioritätszuweisungssteuerungsabschnitt 12 an
irgendeinen des ersten bis dritten Prioritätszuweisungsabschnitts 13a–13c ausgegeben.
-
Wie
es in 3 gezeigt ist, führt der erste bis dritte Prioritätszuweisungsabschnitt 13a–13c die
Prioritätszuweisung
auf jeweils unterschiedliche Weise durch. Im Detail ist beim ersten
Prioritätszuweisungsabschnitt 13a die
den intrakodierten Paketen zugewiesene Priorität entweder hoch oder niedrig
mit einem Verhältnis
von 1:1, und die Priorität
der interkodierten Pakete ist gering. Im zweiten Prioritätszuweisungsabschnitt 13b ist
die den intrakodierten Paketen zugewiesene Priorität hoch,
jedoch die den interkodierten Paketen zugewiesene gering. Der dritte Prioritätszuweisungsabschnitt 13c weist
jedem eingehenden Paket eine geringe Priorität zu. Auf der Grundlage der
derart zugewiesenen Prioritäten
versieht der erste bis dritte Prioritätszuweisungsabschnitt 13a–13c jedes
Paket mit der zweiten Sequenznummer.
-
Der
Paketsender 14 überträgt die prioritätszugewiesenen
Datenpakete 100, die durch den ersten bis dritten Prioritätszuweisungsabschnitt 13a–13c bereitgestellt
werden. Die Datenpakete 100 werden beispielsweise über das
Internet unter Verwendung des User Datagram Protocol (UDP) Moduls (nicht
gezeigt) übertragen.
-
In
Antwort auf die Datenpakete 100 arbeiten der Paketausgabeabschnitt 21 und
der Paketempfänger 23 wie
oben beschrieben. Der Prioritätsbeurteilungsabschnitt 22 bezieht
sich auf die Prioritäten und
die zweiten Sequenznummern, um festzustellen, ob irgendein Paket
hoher Priorität
verloren gegangen ist, und teilt das Feststellungsergebnis dem Neuübertragungsanfragensender 25 mit.
Genauer gesagt bestimmt der Prioritätsbeurteilungsabschnitt 22,
dass irgendein Paket hoher Priorität verloren gegangen ist, falls
er irgendein Paket hoher Priorität
detektiert, dessen zweite Sequenznummer um zwei oder mehr größer als
diejenige des vorhergehenden Pakets ist, oder falls er jegliches
Paket geringer Priorität
detektiert, dessen zweite Sequenznummer sich von derjenigen des
vorhergehenden Pakets unterscheidet.
-
Der
Neuübertragungsanfragensender 25 erzeugt
auf der Grundlage der Mitteilung des Prioritätsbeurteilungsabschnitts 22 das
NACK-Paket 120, das angibt, welches Paket erneut übertragen
werden muss. 4 ist ein Diagramm, welches
das Format des NACK-Pakets zeigt. In der 4 bezeichnet
ein Pakettyp (PT) den. Typ des Pakets. Eine Paketlänge (L)
bezeichnet die Länge
des Pakets. Eine empfangsseitige Kennung (SSRC_R) ist eine Kennung zur
Identifizierung des Datenempfängers 20.
Die übertragungsseitige
Kennung SSRC gibt an, woher das Datenpaket 100 herkam,
d.h., den Datensender 10. Die zweite Sequenznummer (SSN)
ist die zweite Sequenznummer des erneut zu übertragenden Pakets. Hier gibt
das NACK-Paket, das in der 4 gezeigt
ist, nur ein Paket zur erneuten Übertragung
an. Die Anzahl an anzugebenden Paketen ist nicht beschränkt, und
es können
gleichzeitig mehrere Pakete durch Einfügung jeglichen geeigneten Feldes
für andere
Daten angegeben werden.
-
Der
Neuübertragungsanfragensender 25 überträgt das so
erzeugte NACK-Paket 120 beispielsweise über das Internet unter Verwendung
des UDP-Moduls (nicht gezeigt), genauso wie das Datenpaket 100.
-
In
Antwort auf das NACK-Paket 120 arbeiten der Neuübertragungsanfragenempfänger 16 und
der Neuübertragungspaketbereitstellungsabschnitt 17 wie
oben beschrieben. Der erste bis dritte Prioritätszuweisungsabschnitt 13a–13c und
der Paketsender 14 führen
die Verarbeitung des durch den Neuübertragungspaketbereitstellungsabschnitt 17 bereitgestellten
Pakets auf dieselbe Weise wie bei dem Paket durch, das von dem Header-Hinzufigungsabschnitt 11 kommt.
Dementsprechend wird jegliches Paket hoher Priorität, das durch
das NACK-Paket 120 bezeichnet wird, erneut übertragen.
-
Der
Paketempfänger 23 erfasst
jeglichen Paketverlust durch Bezugnahme auf die Sequenznummern der
empfangenen Datenpakete 100. Falls er irgendein Paket hoher
Priorität
detektiert, dessen Sequenznummer um 2 oder mehr größer als
diejenige des vorhergehenden Pakets ist, stellt der Paketempfänger 23 fest,
das ein Paketverlust stattgefunden hat. Der Paketempfänger 23 teilt
dem Empfangszustandssender 24 Informationen über den
Paketempfangszustand und den Paketverlust mit.
-
Auf
der Grundlage der mitgeteilten Information berechnet der Empfangszustandssender 24 die Gesamtzahl
an bisher verloren gegangenen Paketen und das Paketverlustverhältnis, und
erzeugt das RR-Paket 110 mit den so berechneten Werten.
Die 5 ist ein Diagramm, welches das Format des RR-Pakets 110 zeigt.
In diesem sind der Pakettyp (PT), die Paketlänge (L), die empfangsseitige
Kennung (SSRC_R) und die übertragungsseitige
Kennung (SSRC) dieselben, wie diejenigen im Format des NACK-Pakets 120.
Hier geben eine kumulierte Anzahl an verloren gegangenen Paketen
(cumulative number of packets lost, CNPL) und ein verloren gegangener
Bruchteil (FL: ist gleich dem Paketverlustverhältnis) die durch den Empfangszustandssender 24 berechneten
Werte an. Eine erweiterte höchste empfangene
Sequenznummer (extended highest sequence number received, EHSNR)
bezeichnet die Sequenznummer des zuletzt empfangenen Pakets. Eine
Zwischenankunftsschwankung (interarrival jitter, IJ) bezeichnet
eine für
die Verzögerung über den Übertragungspfad
beobachtete Schwankung, und ein letzter SR (LSR) und eine Verzögerung seit
dem letzten SR (delay since last SR, DLSR) werden verwendet, um
die Umlaufverzögerung
im Übertragungspfad
zu messen. Hier werden die Details eines jeden Feldes auch in dem
obigen Dokument vorgefunden (RFC1889).
-
Der
Empfangszustandssender 24 überträgt das so erzeugte RR-Paket 110 beispielsweise über das
Internet unter Verwendung des UDP-Moduls (nicht gezeigt), genauso
wie das Datenpaket 100. Der Empfangszustandsempfänger 15 extrahiert
das Paketverlustverhältnis 200 aus
dem RR-Paket 110 und gibt es an den Prioritätszuweisungssteuerungsabschnitt 12 aus.
-
Auf
der Grundlage des Paketverlustverhältnisses 200 ändert der
Prioritätszuweisungssteuerungsabschnitt 12 die
Entscheidung, an welchen des ersten bis dritten Prioritätszuweisungsabschnitts 13a–13c die
durch den Header-Hinzufügungsabschnitt 11 und
den Neuübertragungspaketbereitstellungsabschnitt 17 bereitgestellten
Pakete ausgegeben werden sollen. Es wird hier angenommen, dass das
Paketverlustverhältnis
200 X (%) beträgt,
und dass Schwellenwerte für die Änderung
T1 und T2 sind. Wenn X gleich oder größer T1 ist, gibt der Prioritätszuweisungssteuerungsabschnitt 12 das empfangene
Paket an den ersten Prioritätszuweisungsabschnitt 13a aus.
Wenn X größer oder
gleich T2 und kleiner als T1 ist, wird das empfangene Paket dem
zweiten Prioritätszuweisungsabschnitt 13b zugeleitet,
und, wenn X kleiner als T2 ist, dem dritten Prioritätszuweisungsabschnitt 13c.
Beispiel: wenn T1 70% und T2 30% beträgt, gibt der Prioritätszuweisungssteuerungsabschnitt 12 das
empfangene Paket an den ersten Prioritätszuweisungsabschnitt 13a aus,
wenn X größer oder
gleich 70% ist, an den zweiten Prioritätszuweisungsabschnitt 13b,
wenn X größer oder
gleich 30% und kleiner als 70% ist, und an den dritten Prioritätszuweisungsabschnitt 13c,
wenn X kleiner als 30% ist. Auf diese Weise werden die Arten der
Prioritätszuweisung
auf der Grundlage des Paketverlustverhältnisses verändert.
-
6 ist
ein Diagramm, das die Art der Veränderung der Prioritätszuweisung
zeigt, die durch den Datensender 10 nach Empfang des RR-Pakets 110 durchgeführt wird.
Zum Zwecke der Vereinfachung zeigt die 6 nur das
RR-Paket 110. Der Datenempfänger 20 überträgt das das
Paketverlustverhältnis
mitführende
RR-Paket 110 zu einem vorbestimmten Zeitpunkt. In Antwort
auf das Paketverlustverhältnis
verändert
der Datensender 10 die Arten der Prioritätszuweisung.
Genauer gesagt werden die Arten so verändert, dass die Anzahl von
Paketen hoher Priorität
bei einem hohen Paketverlustverhältnis geringer
wird, und dass bei einem geringen Paketverlustverhältnis die
Anzahl an Paketen hoher Priorität erhöht wird.
Dementsprechend wird eine erneute Übertragung von Paketen bei
einem hohen Paketverlustverhältnis
unterdrückt,
wodurch die zu übertragenden
Daten verringert werden. Andererseits wird die erneute Übertragung
von Paketen bei einem geringen Paketverlustverhältnis gefördert, wodurch die zu übertragenden
Daten erhöht
werden. Auf diese Weise können
durch Veränderung
der Arten der Prioritätszuweisung
und Steuerung der Datenmenge für eine
erneute Übertragung
von bewegten Bildern abgeleitete kodierte Daten mit jeglicher zur
Verfügung stehender
Datenkapazität
effizient übertragen
werden, wodurch eine Qualitätsverschlechterung
bei jeglichem resultierenden reproduzierten Bild verhindert wird.
-
Auf
diese Weise werden bei der Datenübertragungsvorrichtung
der vorliegenden Ausführungsform
die Arten der Prioritätszuweisung
auf der Übertragungsseite
unter Berücksichtigung
des Paketempfangszustandes verändert,
und folglich werden die Pakete hoher Qualität in ihrer Anzahl erhöht, wenn der
Paketempfangszustand schlecht ist, und bei gutem Paketempfangszustand
in ihrer Anzahl verringert. Auf diese Weise können die erneut zu übertragenden
Daten in ihrer Menge gesteuert werden, und folglich kann die Datenübertragung
mit jeglicher zur Verfügung
stehender Datenkapazität
effizient durchgeführt
werden.
-
Hier
werden der erste bis dritte Prioritätszuweisungsabschnitt 13a–13c in
der Datenübertragungsvorrichtung
bereitgestellt, und die Zuweisung der Priorität wird auf drei verschiedene
Arten verändert.
Dies ist nicht beschränkend,
und wie es beispielhaft in der 7 gezeigt
ist, kann die Datenübertragungsvorrichtung
erste und zweite Prioritätszuweisungsabschnitt 33a und 33b umfassen,
und diese können
gemäß der in
der 8 gezeigten Tabelle arbeiten.
-
Weiterhin
wird die Paketcharakteristik im obigen Fall von der übertragungsseitigen
Anwendung ausgegeben. Jedoch könnte
dies auch der Datensender berechnen. Z.B. kann zur Übertragung
von bildkodierten Daten mittels des RTP die Paketcharakteristik
leicht durch Bezugnahme auf ein spezifisches Bit im Paket abgeleitet
werden.
-
Weiterhin
sind die zu übertragenden
Daten beliebig, ebenso wie die Art der Paketklassifikation. Z.B.
kann zur Übertragung
von Daten, die durch das hierarchische Kodieren des Bildes in der
Frequenzrichtung hergeleitet werden, die gleich Art wie oben angewandt
werden, indem jegliches Paket, das eine Niederfrequenzkomponente
umfasst, als intrakodiertes Paket klassifiziert wird, oder jegliches
Paket, das eine Hochfrequenzkomponente umfasst, als interkodiertes
Paket klassifiziert wird. Ebenso kann zur Übertragung von Audiodaten jegliches
Paket, das Echtklang (real sound) mitführt, als intrakodiertes Paket
klassifiziert werden, oder jegliches Paket, das zu einem Großteil Stillklang
(silent sound) mit sich führt, als
interkodiertes Paket klassifiziert werden. Im Rahmen einer weiteren
Möglichkeit
kann die Zuweisung der Priorität
ohne Bezugnahme auf die Paketcharakteristik durchgeführt werden.
-
Bei
der vorliegenden Ausführungsform
ist das Kommunikationsprotokoll RTP. Dies ist nicht beschränkend, und
es kann auch jegliches andere Kommunikationsprotokoll eingesetzt
werden, was zu der Datenübertragungsvorrichtung
mit denselben Merkmalen wie oben führt.