-
Gebiet der
Erfindung
-
Die
vorliegende Erfindung betrifft ein Datenübertragungsverfahren und insbesondere
ein Verfahren zum Weiterleiten von Paketen, die nacheinander von
der Übertragungsseite
eingespeist werden, um sie an ein Empfangsgerät auszugeben, sowie zum Steuern
der Ausgabegeschwindigkeit.
-
Hintergrund
der Erfindung
-
3(a) und 3(b) sind
Diagramme zur Erläuterung
eines bekannten Datenübertragungsverfahrens
und zur Darstellung der Verarbeitung in einem Weiterleitungsserver.
-
Wie
in 3(a) gezeigt, nimmt ein bekannter Weiterleitungsserver
die Weiterleitungsverarbeitung der eingehenden Pakete vor, die aufeinanderfolgend von
einer Übertragungsstelle
aus eingespeist werden, und gibt die empfangenen Pakete aufeinanderfolgend
an ein Empfangsgerät
aus.
-
Wenn
die Eingabegeschwindigkeit höher
ist als die Kanalkapazität
am Ausgabeende, kommt es bei diesem bekannten Weiterleitungsserver
zum Überlaufen
der Übertragungswarteschlange
M. Deshalb gibt der bekannte Weiterleitungsserver, wie in 3(b) gezeigt, entsprechend den Prioritätsdaten der
jeweiligen Pakete nur die Pakete Pa höherer Priorität, deren
Priorität
einem vorgegebenen Wert entspricht oder höher ist, aus, wobei die Pakete
Pb geringerer Priorität,
deren Priorität
unter dem vorgegebenen Wert liegt, ausgedünnt werden.
-
Es
folgen eine kurze Beschreibung der Datenstruktur der Pakete Pa und
Pb und eine ausführliche
Beschreibung des bekannten Weiterleitungsserver als Datenübertragungsvorrichtung.
-
4 zeigt Diagramme zur Darstellung der Datenstruktur
der Pakete.
-
Jedes
der nach dem obigen Übertragungsverfahren übertragenen
Pakete Pa und Pb weist einen Datenteil Pd zur Speicherung digitaler
Daten entsprechend einem Medium, beispielsweise Videobild, Sprache,
Schriftzeichen, und einen Kopfteil Ph zur Speicherung zugehöriger Daten,
die ein Attribut oder dergleichen der digitalen Daten angeben, auf,
wie in 4(a) und 4(b) gezeigt.
-
Im
Kopfteil wird als eine Zusatzinformation eine Information gespeichert,
die die Priorität
der im Datenteil gespeicherten Daten angibt (im folgenden einfach
als „Priorität" bezeichnet). Beispielsweise
ist das Paket Pa ein Paket höherer
Priorität
mit dem Wert „1", der die höhere Priorität anzeigt,
was im Kopfteil Ph des Pakets gespeichert ist. Das Paket Pb ist
ein Paket niedrigerer Priorität
mit dem Wert „2", der die niedrigere
Priorität
anzeigt, was im Kopfteil Ph des Pakets gespeichert ist.
-
Zusätzlich ist 5 ein
Blockdiagramm, das den Aufbau dieser Datenübertragungsvorrichtung (Weiterleitungsserver)
zeigt.
-
Diese
Datenübertragungsvorrichtung 200 stellt
einen Weiterleitungsserver zur Weiterleitung von Übertragungsdaten
zwischen einem Übertragungsserver
(Sendeseite) und einem Endgerät (Empfangsseite)
dar und hat einen Empfangsteil 11 zum Empfangen von Eingangspaketen,
die vom Übertragungsserver übertragen
wurden, eine Übertragungswarteschlangenverwaltungseinheit 12 zur Festlegung
der Übertragungsreihenfolge
für die
empfangenen Eingangspakete auf der Grundlage vorgegebener Daten
und einen Übertragungsteil 13 zum Übertragen
der entsprechenden Pakete in der von der Verwaltungseinheit 12 festgelegten Übertragungsreihenfolge.
-
Die Übertragungswarteschlangenverwaltungseinheit 12 beinhaltet
eine Übertragungswarteschlange
(nicht eingezeichnet) als Datenpuffer zum vorübergehenden Speichern der vom
Empfangsteil 11 empfangenen Eingangspakete.
-
Außerdem hat
die Datenübertragungsvorrichtung 200 eine
Paketprioritätsfeststellungseinheit 15 um
festzustellen, welche Priorität
die Eingangspakete haben. In der Übertragungswarteschlangenverwaltungseinheit 12 wird
die Übertragungs reihenfolge durch
Ausdünnen
der Pakete niedrigerer Priorität
in der Übertragungswarteschlange
auf der Grundlage der Prioritätsfeststellung
entschieden, und die Pakete höherer
Priorität
in der Übertragungswarteschlange
werden in der festgelegten Reihenfolge an den Übertragungsteil 13 ausgegeben.
-
Da
jedoch der bekannte Weitergabeserver lediglich eine Ausgaberatensteuerung
vornimmt, bei der keine Pakete niedrigerer Priorität übertragen
werden, sondern nur Pakete höherer
Priorität,
kann die Ausgaberate niedriger sein als erforderlich, oder die Ausgaberate
kann durch die Ausgaberatensteuerung beträchtlich verändert werden.
-
Außerdem können Übertragungsfehler
auf einem Kanal nicht vermieden werden. In Klammern: Die Biffehlerrate
im drahtgebundene Bereich beträgt etwa
10–5 bis
10–7 und
im drahtlosen Bereich etwa 10–3. Insbesondere bei
einem Datenübertragungsverfahren,
bei dem die Wiedergabequalität
abhängig
ist von der Übertragungsqualität von Ende
zu Ende (zwischen Übertragungsserver
und Empfangsgerät)
wie bei RTP-Verfahren (Real-Time Transport-Protocol, Echtzeitübertragungsprotokoll)
hat die Übertragungsqualität im drahtlosen
Bereich großen
Einfluss auf die Wiedergabequalität.
-
Zur
Behebung des Übertragungsfehlers überträgt der Weiterleitungsserver
daher bei entsprechender Aufforderung durch das Empfangsgerät das Paket
erneut, oder er überträgt für ein gegebenes
Paket ein Korrekturpaket, das einen Fehlerkorrekturcode zum Korrigieren
des Datenfehlers des Pakets enthält.
Jedoch erhöht
sich bei alleiniger Übertragungssteuerung
der Eingangspakete nach ihrer Priorität, wenn ein Paket erneut übertragen
wird, oder wenn ein Korrekturpaket übertragen wird, die Ausgaberate
des Weiterleitungsservers, wodurch die Ausgaberate den Wert übersteigt,
der der Kanalkapazität entspricht.
-
Picker
D. et al. befassen sich in „Scaling
and Performance of a Priority Packet Queue for Real-Time Applications", veröffentlicht
in Proceedings of the Real-Time
System Symposium, US, Los Alamitos, IEEE Comp. Soc. Press, vom 7.
Dezember 1994 (1994-12-07), auf den Seiten 56 bis 62 mit Untersuchungen
zu Skalierung und Leistung einer speziellen CMOS-Prioritätspaket-Warteschlangengestaltung. Die
Prioritätspaketwarteschlange
kann bei Warte schlangenüberlauf
entweder die Prioritäten
beibehalten oder Pakete niedrigerer Priorität überschreiben.
-
Zusammenfassung
der Erfindung
-
Eine
Aufgabe der vorliegenden Erfindung ist es, ein Datenübertragungsverfahren
zur Verfügung zu
stellen, bei dem Änderungen
der Ausgaberate, die durch Ausgaberatensteuerung bedingt sind, nicht
nur dann unterdrückt
werden können,
wenn Eingabepakete weitergeleitet werden, sondern auch dann, wenn
ein Paket erneut übertragen
wird, oder wenn ein Korrekturpaket übertragen wird, und das die
Paketübertragung
entsprechend der Kapazität
des Ausgangskanals effizient durchführt.
-
Die
vorliegende Erfindung löst
die gestellte Aufgabe durch ein Datenübertragungsverfahren zur Weiterleitung
mehrerer Eingangspakete, die nacheinander von einer Übertragungsseite übertragen
wurden, um sie an ein Empfangsterminal auszugeben, sowie zur Übertragung
wenigstens eines zusätzlichen
Pakets, welches ein Eingangspaket ist, dessen erneute Übertragung
von dem Empfangsterminal angefordert wird, oder welches ein Korrekturpaket
ist, das einen Fehlerkorrekturcode für ein vorbestimmtes Eingangspaket
enthält,
wobei das Verfahren folgende Schritte aufweist: Abschätzung der
jedem Eingangspaket von der Übertragungsseite
beigefügten Priorität und der
wenigstens einem der zusätzlichen Pakete
beigefügten
Priorität,
Ausgabe der Eingangspakete sowie Ausgabe wenigstens eines zusätzlichen
Pakets und Ausdünnen
von Eingangspaketen, die Prioritäten
aufweisen, die niedriger sind als die Priorität des zusätzlichen Pakets und die eine
Datengröße aufweisen,
die der Datengröße des zusätzlichen
Pakets entspricht.
-
Kurzbeschreibung
der Zeichnungen
-
1 ist
ein Blockdiagramm, das ein erstes erfindungsgemäßes Ausführungsbeispiel der Datenübertragungsvorrichtung
zeigt.
-
2(a) und 2(b) sind
Diagramme, die schematisch die Übertragungsratensteuerung
beim ersten Ausführungsbeispiel
der Datenübertragungsvorrichtung
zeigen. 2(a) zeigt den Zustand, in dem
Eingangspakete in einer Übertragungswarteschlange
M der Datenübertragungsvorrichtung
gespeichert werden, und 2(b) zeigt
den Zustand, in dem die Übertragungsreihenfolge
der Pakete in der Übertragungswarteschlange
festgelegt wird.
-
2(c) zeigt die Datenstruktur eines erneut zu übertragenden
Pakets, und
-
2(d) zeigt die Datenstruktur eines FEC-Pakets.
-
3(a) und (b) sind Diagramme, die die Übertragungsratensteuerung
bei einer bekannten Datenübertragungsvorrichtung
zeigen. 3(a) zeigt den Zustand, in dem
Eingangspakete in einer Übertragungswarteschlange
M in einem Weiterleitungsserver gespeichert werden, und 3(b) zeigt den Zustand, in dem die Ausdünnungsverarbeitung für Pakete
in der Übertragungswarteschlange
M im Weiterleitungsserver erfolgt.
-
4(a) und (b) sind Diagramme zur Darstellung der
Datenstruktur der Eingangspakete. 4(a) zeigt
die Datenstruktur eines Pakets höherer
Priorität,
und 4(b) zeigt die Datenstruktur
eines Pakets niedrigerer Priorität.
-
5 ist
ein Blockdiagramm, das eine bekannte Datenübertragungsvorrichtung zur
Paketübertragung
nach einem bekannten Datenübertragungsverfahren
zeigt.
-
Ausführliche
Beschreibung des bevorzugten Ausführungsbeispiels
-
Ein
Ausführungsbeispiel
des erfindungsgemäßen Datenübertragungsverfahrens
stellt bei den Eingangspaketen von der Übertragungsseite und bei erneut
zu übertragenden
Eingangspaketen (Wiederholungspaketen) sowie bei Korrekturpaketen (FEC-Paketen),
die einen Fehlerkorrekturcode enthalten, die den jeweiligen Paketen
zugeordnete Priorität
fest und überträgt nur Pakete,
die eine Priorität mit
einem vorgegebenen oder höheren
Wert haben.
-
1 ist
ein Blockdiagramm, das dieses Ausführungsbeispiel der Datenübertragungsvorrichtung
zeigt.
-
Die
Datenübertragungsvorrichtung 101 stellt einen
Weiterleitungsserver zur Weiterleitung von Übertragungsdaten zwischen einem
Sendeserver (Übertragungsseite)
und einem Endgerät
(Empfangsseite) dar.
-
Diese
Datenübertragungsvorrichtung 101 hat
einen Empfangsteil 11 zum Empfangen von Eingangspaketen,
die vom Sendeserver übertragen worden
sind, eine Übertragungswarteschlangenverwaltungseinheit 12a zur
Festlegung der Reihenfolge der Übertragung
der empfangenen Eingangspakete, eines erneut zu übertragenden Pakets (Wiederholungspaket)
und eines FEC-Pakets (Forward-Error-Correction-Paket), das einen
Fehlerkorrekturcode enthält,
auf der Basis einer vorgegebenen Information sowie einen Übertragungsteil 13 zum Übertragen
der entsprechenden Pakete in der von der Verwaltungseinheit 12a festgelegten Übertragungsreihenfolge.
-
Die Übertragungswarteschlangenverwaltungseinheit 12a enthält eine Übertragungswarteschlange
(nicht eingezeichnet) als Datenpuffer für die vorübergehende Speicherung der
vom Empfangsteil 11 empfangenen Eingangspakete.
-
Außerdem hat
die Datenübertragungsvorrichtung 101 einen Übertragungswiederholungspuffer 18a zum
Speichern eines vorgegebenen Eingangspakets als Wiederholungspaket,
eine Paketprioritätsbestimmungseinheit 15 zum
Bestimmen der Priorität
der Eingangspakete, des Wiederholungspakets und des FEC-Pakets und
eine Übertragungswiederholungspuffer-Verwaltungseinheit 18 zur
Steuerung des Übertragungswiederholungspuffers 18a auf der
Basis der festgelegten Prioritäten
der Pakete, so dass die Daten der Pakete, deren Priorität einen
vorgegebenen oder höheren
Wert hat, im Puffer 18a gespeichert werden.
-
Außerdem hat
die Datenübertragungsvorrichtung 101 eine
Empfangseinheit 14 für Übertragungswiederholungsanforderungen
zum Empfangen eines Befehls, mit dem die erneute Übertragung
eines Pakets vom Empfangsterminal verlangt wird, und eine FEC-Paket-Erzeugungseinheit 19 zum
Erzeugen eines FEC-Pakets
(Korrekturpakets), das einen Fehlerkorrekturcode für ein auf
der Grundlage der Priorität
der entsprechenden Pakete bezeichnetes Paket enthält.
-
Außerdem hat
die Datenübertragungsvorrichtung 101 eine
Ausgabeverzögerungsberechnungseinheit 17a zum
Berechnen der Verzögerungszeit
bis zur Wiedergabe der einzelnen Pakete in der Übertragungswarteschlangenverwaltungseinheit 12a durch
das Empfangsterminal (Wiedergabeverzögerung) auf der Grundlage der Übertragungsreihenfolgeinformation
der einzelnen Pakete aus der Übertragungswarteschlangenverwaltungseinheit 12a sowie
eine Übertragungspaket-Festlegungseinheit 16 zum
Festlegen des zu übertragenden
Pakets auf der Grundlage der Übertragungswiederholungsanforderung
von der Empfangsseite, der Prioritätsinformation der einzelnen
Pakete und der Wiedergabeverzögerung
der einzelnen Pakete, wodurch die Festlegung der Festlegungseinheit 16 als
vorgegebene Information an die Übertragungswarteschlangenverwaltungseinheit 12a ausgegeben
wird.
-
Im
folgenden werden Funktionen und Wirkungen beschrieben.
-
2 zeigt Diagramme, die schematisch die Übertragungsratensteuerung
im ersten Ausführungsbeispiel
der Datenübertragungsvorrichtung
darstellen. 2(a) zeigt den Zustand, in dem
Pakete (Eingangspakete), die vom Sendeserver übertragen wurden, in der Warteschlange
des Weiterleitungsservers (Datenübertragungsvorrichtung) 101 gespeichert werden. 2(b) zeigt den Zustand, in dem die Übertragungsreihenfolge
für die
Pakete in der Übertragungswarteschlange
im Weiterleitungsserver festgelegt wird.
-
Wenn
bei dem Ausführungsbeispiel
des erfindungsgemäßen Datenübertragungsverfahrens
die Übertragung
eines Wiederholungspakets Pr und eines FEC-Pakets Pfec zusammen mit der Übertragung
von Eingangspaketen Pa und Pb erfolgt, werden Pakete niedrigerer
Priorität,
die der Größe dieser zu übertragenden
Pakete entsprechen, ausgedünnt, um
eine Änderung
der Ausgaberate zu unterdrücken.
-
Dabei
umfasst jedes vom Sendeserver übertragene
Paket, d.h. jedes der Pakete Pa höherer Priorität und jedes
der Pakete Pb niedrigerer Priorität, einen Datenteil Pd zum Speichern
digitaler Daten entsprechend einem Medium, beispielsweise Videobild,
Sprache, Schriftzeichen, und einen Kopfteil Ph zum Speichern relevanter
Informationen, die ein Attribut der digitalen Daten sind, wie in 4(a) und (b) angegeben. Außerdem umfassen sowohl das
Wiederholungspaket Pr als auch das FEC-Paket Pfec wie die Pakete
Pa und Pb ebenfalls einen Datenteil Pd zum Speichern digitaler Daten
und einen Kopfteil Ph zum Speichern relevanter Informationen, die
ein Attribut der digitalen Daten sind, wie in 2(c) und (d) gezeigt. In diesem Fall wird im Kopfteil
Ph des Pakets eine zusätzliche
Information betreffend eine fortlaufende Nummer, die Priorität und dergleichen
als relevante Information gespeichert. In 2 sind
jedoch nur Prioritätsangabewerte
gezeigt, wobei der Wert „1" der höheren Priorität entspricht
und der Wert „2" der niedrigeren
Priorität.
-
Im
folgenden wird die Arbeitsweise der Datenübertragungsvorrichtung 101 kurz
beschrieben.
-
Bei
der Datenübertragungsvorrichtung 101 als
Weiterleitungsserver werden die empfangenen Eingangspakete Pa und
Pb der Übertragungswarteschlangenverwaltungseinheit 12a sowie
dem Übertragungswiederholungspuffer 18a zugeführt. Zusätzlich wird
der Übertragungswarteschlangenverwaltungseinheit 12a vom Übertragungswiederholungspuffer 18a ein
Wiederholungspaket Pr, das einem Eingangspaket entspricht, zu dem
vom Empfangsterminal eine Übertragungswiederholungsanforderung ergangen
ist, zugeführt
ebenso wie ein Korrekturpaket Pfec, das einem vorgegebenen Eingangspaket entspricht,
von der FEC-Paket-Erzeugungseinheit 19 zugeführt wird.
-
Dabei
werden von der Paketprioritätsfeststellungseinheit 15 die
Priorität
des jeweiligen Pakets in der Warteschlange M in der Übertragungswarteschlangenverwaltungseinheit 12a festgestellt
sowie von der Ausgabeverzögerungsberechnungseinheit 17a die
Wiedergabeverzögerungszeit
des jeweiligen Pakets berechnet, und es werden die festgestellte Priorität und die
Wiedergabeverzögerung
für das
entsprechende Paket an die Übertragungspaketentscheidungseinheit 16 ausgegeben.
Zusätzlich
wird von der Übertragungspaketentscheidungseinheit 16 auf
der Grundlage der Priorität
der Eingangspakete Pa und Pb und des Wiederholungspakets Pr ein
Befehl, ob ein FEC-Paket (Korrekturpaket) Pfec, das einen Fehlerkorrekturcode
für diese
Pakete enthält,
erzeugt wird oder nicht, an die FEC-Paket-Erzeugungseinheit 19 ausgegeben.
-
Wenn
die Übertragung
des Wiederholungspakets Pr und des FEC-Pakets Pfec zusammen mit der Übertragung
der Eingangspakete Pa und Pb erfolgt, weist die Übertragungspaketentscheidungseinheit 16 dann
die Übertragungswarteschlangenverwaltungseinheit 12a an,
Pakete niedrigerer Priorität auszudünnen, die
der Größe des Wiederholungspakets
und des FEC-Pakets, die zu übertragen
sind, entsprechen. In der Verwaltungseinheit 12a wird die Übertragungsreihenfolge
der Pakete auf der Grundlage dieser Anweisung festgelegt (siehe 2(b)). Im Übertragungsteil 13 erfolgt
die Übertragung
der Eingangspakete, des Wiederholungspakets und des FEC-Pakets zum
Empfangsterminal in der festgelegten Übertragungsreihenfolge.
-
Dabei
werden, gesteuert von der Übertragungswiederholungspuffer-Verwaltungseinheit 18, im Übertragungswiederholungspuffer 18a die
Eingangspakete als Wiederholungspakete gespeichert, und die Daten
von Paketen, die für
die Wiedergabezeiten zu langsam sind, werden von der Verwaltungseinheit 18 nach
und nach freigesetzt (fallengelassen).
-
Wenn
die Übertragung
des Wiederholungspakets Pr und des FEC-Pakets Pfec zusammen mit der Übertragung
der Eingangspakete Pa und Pb erfolgt, werden, wie oben beschrieben,
Pakete Pb niedrigerer Priorität,
die der Größe dieser
zu übertragenden
Pakete entsprechen, ausgedünnt.
Daher können Schwankungen
in der Ausgaberate nicht nur dann, wenn die Weiterleitung der Eingangspakete
erfolgt, sondern auch dann, wenn die Übertragung des Wiederholungspakets
und des Korrekturpakets erfolgt, unterdrückt werden, und es kann die
Datenübertragung
entsprechend der Kapazität
des Ausgangskanals effizient erfolgen.
-
Wenn
die Übertragung
des Wiederholungspakets und des FEC-Pakets zusammen mit der Übertragung
der Eingangspakete erfolgt, werden bei diesem Ausführungsbeispiel
Pakete niedrigerer Priorität,
die der Größe dieser
zu übertragenden
Pakete entsprechen, ausgedünnt.
Wenn jedoch entschieden wird, dass ein bestimmtes Wiederholungspaket
und ein FEC-Paket zu übertragen
sind, und sich bei dieser Entscheidung ein Paket ergibt, das eine
große Wiedergabeverzögerung hat
(d.h. ein Paket, das für die
Wiedergabezeit auf Empfangsseite zu spät kommt), kann die Übertragung
von Paketen, die eine niedrigere Priorität haben als das Wiederholungspaket
und das FEC-Paket, gestoppt werden.
-
Außerdem nimmt
das Ausführungsbeispiel der
Datenübertragungsvorrichtung
die Übertragung des
Wiederholungspakets und des FEC-Pakets zusammen mit der Übertragung
der Eingangspakete vor. Jedoch kann die Datenübertragungsvorrichtung die
Weiterleitungsverarbeitung von Eingangspaketen, die nacheinander
vom Sendeserver (Übertragungsseite)
eingespeist werden, durchführen,
um die Pakete an das Empfangsterminal auszugeben, oder sie kann
auch nur die erneute Übertragung
eines Eingangspakets, für
das vom Empfangsterminal ein Wiederholungsbefehl ausgegeben wurde,
oder die Übertragung
eines Korrekturpakets, das einen Fehlerkorrekturcode für ein bestimmtes
Eingangspaket enthält,
vornehmen.
-
Bei
diesem Ausführungsbeispiel
wird das Verfahren, das in einer Datenübertragungsvorrichtung zur
Weiterleitung von Eingangspaketen, die nacheinander von der Übertragungsseite
eingespeist werden, und zur Ausgabe der Pakete an das Empfangsterminal
angewendet wird, als Datenübertragungsverfahren
beschrieben. Jedoch sind die Grundsätze des Datenübertragungsverfahrens
gemäß dem Anspruch
der Erfindung nicht auf Verfahren beschränkt, die in einem Weiterleitungsserver
genutzt werden. Beispielsweise fassen sich die Grundsätze auch
auf ein Verfahren zum Weiterleiten von Eingangspaketen, die nacheinander
von einem Empfangsterminal eingespeist werden, und Ausgeben dieser
Pakete an eine Übertragungseinrichtung
oder auf ein Verfahren zur Direktübertragung von Daten von einem
Sendeserver an ein Empfangsterminal anwenden.