-
Die vorliegende Erfindung betrifft
ein Verfahren zum Managen von Fehlern in Paketen, die über wenigstens
eine Übertragungsverbindung
zwischen einem Sender und einem Empfänger übertragen werden.
-
Die vorliegende Erfindung bezieht
sich auf ein Übertragungssystem
von dem Typ, der in 1 gezeigt
ist. In dieser 1 kann
ein Sender 10 gesehen werden, der Pakete von einem Eingangsmultiplexer 11 empfängt und
der sie in der Form von Sequenzen von Paketen über eine Übertragungsleitung 20 zu
einem Empfänger 30 sendet.
Der Empfänger 30 liefert
dann, wenn die Pakete richtig empfangen worden sind, sie zu einer
höheren
Systemschicht, indem sie z. B. zum Liefern bzw. Ausgeben von ihnen zu
einem Ausgangsmultiplexer 31 in Betracht gezogen werden.
-
Der Sender 10 und der Empfänger 30 verwenden
ein Protokoll zum Prüfen
von Fehlern auf der Übertragungsleitung 20 und
zum erneuten Übertragen
bzw. Senden von Paketen, die durch den Empfänger 30 nicht richtig
empfangen worden sind. Solche Protokolle sind als ARQ-(Automatic
Repeat reQuest = automatische Wiederholanforderungs)-Protokolle
bekannt. Allgemein ausgedrückt
fordert gemäß diesen
Protokol len dann, wenn der Empfänger einen
Fehler in einem Paket erfasst, er den Sender auf, dieses Paket erneut
zu senden.
-
Unter solchen Protokollen bezieht
sich die vorliegende Erfindung auf dasjenige, das "Gehe-N-zurück" genannt wird. In 2 ist dieses Protokoll durch
ein beispielhaftes Ausführungsbeispiel dargestellt.
-
Der linksseitige Teil dieser 2 ist ein Diagramm, das
auf der Seite des Senders 10 die Übertragung von Paketen als
Funktion einer Zeit (die Zeit verstreicht nach unten) zeigt, und
auf der rechten Seite ist ein Diagramm, das auf der Seite des Empfängers 30 den
Empfang von Paketen zeigt, die auch als Funktion einer Zeit übertragen
werden. Was den zentralen Teil betrifft, zeigt dieser die Übertragung von
Paketen über
die Übertragungsleitung 20.
-
In dieser 2 ist das Szenario wie folgt. Das Paket 1 ist
auf der Seite des Empfängers 30 richtig
empfangen worden und ist daher zum Ausgangsmultiplexer 31 geliefert
worden. Ein Bestätigungspaket
RR2 wird durch den Empfänger 30 zum
Sender 10 gesendet. Das Paket 2 ist durch den
Empfänger nicht
richtig empfangen worden. Bei dem Beispiel in 2 ist das Paket 2 nicht empfangen
worden und der Empfänger 30 bemerkt
dies erst bei einem Empfang des Pakets 3, welches daher
nicht in der richtigen Übertragungsreihenfolge
empfangen wird. Einerseits wird ein negatives Bestätigungspaket
REJ2 durch den Empfänger 30 zum
Sender 10 gesendet und andererseits werden Pakete 3 bis 8,
die der Erfassung von Fehlern nachfolgend und bis zum richtigen
Empfang des fehlerhaften Pakets 2 empfangen werden, obwohl
sie richtig empfangen sind, weggeworfen (Darstellung durch Kreuze
in 2). Nach einem Empfang
des negativen Bestätigungspakets REJ2
sendet der Sender 10 das Paket 2 und die folgenden
Pakte erneut. Auf einen Empfang eines jeweiligen Pakets 2 bis 8 hin
sendet der Empfänger
ein Bestätigungspaket
RR3 bis RR8.
-
Somit werden gemäß diesem Protokoll die Pakete,
die empfangen werden, nachdem ein Paket verloren worden ist und
bis zum richtigen Empfang dieses Pakets, weggeworfen, und sie werden
durch den Sender in der Reihenfolge der Pakete in der Sequenz, wie
ab dem erneuten Senden des fehlerhaften Pakets, erneut gesendet.
-
Ein Nachteil dieses Protokolls liegt
in der Tatsache, dass, obwohl sie richtig empfangen worden sind,
die weggeworfenen Pakete erneut gesendet werden müssen, was die
Zeit verzögert,
zu welcher sie für
ihre Lieferung zum Ausgangsmultiplexer 31 in Betracht gezogen
werden.
-
Das Ziel der vorliegenden Erfindung
ist daher, ein Verfahren zum Managen von Fehlern in Paketen vorzuschlagen,
die über
wenigstens eine Übertragungsverbindung
zwischen einem Sender und einem Empfänger übertragen werden, und ein Verfahren
zum Steuern von Fehlern, welche Verfahren von dem Typ sind, der
zuvor beschrieben ist, die aber die Leistungsfähigkeit davon verbessern, und
zwar merklich in Bezug auf die Paketübertragungszeit.
-
Ein Verfahren zum Managen von Fehlern
ist durch ein Dokument mit dem Titel "An ARQ protocol for mobile radio systems" und veröffentlicht
in der Zeitschrift "Discovering
a new world of communications, vol. 3, 14.–18. Juni 1992, Seiten 1323–1326, XP0003379928" bekannt. Das Verfahren
besteht im Zurückhalten
von den Paketen, die richtig empfangen worden sind, zwischen der
Erfassung des verlorenen Pakets und seinem richtigen Empfang nach seinem
erneuten Senden durch den Sender auf der Empfängerseite und im Liefern des
verlorenen Pakets und aller zurückgehaltenen
Pakete zum Ausgangsmultiplexer beim richtigen Empfang des verlorenen
Pakets.
-
Das Ziel der vorliegenden Erfindung
in Bezug auf dieses Verfahren besteht im Vermeiden, soweit es möglich ist,
des erneuten Sendens von Paketen, die richtig empfangen worden sind,
um die Paketrate in der Verbindung vom Sender in Richtung zum Empfänger zu
begrenzen.
-
Dafür ist ein Verfahren gemäß der Erfindung dadurch
gekennzeichnet, dass es auf der Empfängerseite beim richtigen Empfang
des verlorenen Pakets im Senden eines Bestätigungspakets besteht, das
anzeigt, dass es und alle Pakete, die zurückgehalten worden waren und
die geliefert worden sind, richtig empfangen worden sind, zum Sender
und, auf der Senderseite, auf einen Empfang des Bestätigungspakets
hin im Stoppen irgendeines erneuten Sendens von Paketen, die bereits
gesendet worden sind, mit einer seriellen Sequenznummer, die niedriger
als diejenige oder gleich derjenigen ist, die durch das letzte dieser
Pakete getragen wird.
-
Gemäß einem weiteren Merkmal der
Erfindung besteht es auf der Senderseite im Speichern der Sequenznummer
des vor dem erneuten Senden des verlorenen Pa kets gesendeten letzten
Pakets, und dann, wenn das Bestätigungspaket
ein Paket bestätigt,
das diese Nummer trägt,
oder vorherige Pakete bestätigt,
im Beurteilen, dass es nicht fehlerhaft ist, und im Berücksichtigen
von ihm, und in anderen Fällen
im Beurteilen, dass es fehlerhaft ist, und im nicht Berücksichtigen
von ihm.
-
Gemäß einem weiteren Merkmal der
Erfindung gehören
die über
die wenigstens eine Übertragungsverbindung übertragenen
bzw. gesendeten Pakete zu einer Vielzahl von virtuellen Schaltungen,
wobei das Verfahren dann im Zurückhalten
von nur denjenigen Paketen besteht, die zu derselben virtuellen Schaltung
wie das verlorene Paket gehören,
wobei die anderen Pakete normalerweise zum Ausgangsmultiplexer geliefert
werden, und dann, wenn das verlorene Paket aufgrund seines erneuten
Sendens durch den Sender empfangen wird, im Liefern des verlorenen
Pakets und aller Pakete, die zu derselben virtuellen Schaltung gehören, die
zurückgehalten wurden,
und im Wegwerfen der folgenden Pakete, die aufgrund ihres erneuten
Sendens durch den Sender empfangen werden und die bereits geliefert
worden sind.
-
Gemäß einem weiteren Merkmal der
Erfindung werden die Pakete, die zu dem Ausgangsmultiplexer geliefert
werden, nachdem der Empfänger
bemerkt, dass ein Paket verloren worden ist, nicht sofort bestätigt, sondern
nur dann, wenn sie nach ihrem erneuten Senden durch den Sender empfangen
werden.
-
Gemäß einem weiteren Merkmal der
Erfindung besteht sie auf der Empfängerseite bei einem richtigen
Empfang des verlorenen Pakets im Senden eines Bestätigungspakets
zum Sender, das anzeigt, dass es und alle Pakete, die zurückgehalten
worden waren und die geliefert worden sind, richtig empfangen worden
sind, und auf der Senderseite bei einem Empfang des Bestätigungspakets
im Stoppen irgendeines erneuten Sendens von Paketen, die bereits
gesendet worden sind, mit einer seriellen Nummer in der Sequenz,
die niedriger als diejenige oder gleich derjenigen ist, die durch
das letzte dieser Pakete getragen wird.
-
Gemäß einem weiteren Merkmal der
Erfindung besteht sie auf der Senderseite im Speichern der Sequenznummer
des vor dem erneuten Senden des verlorenen Pakets ausgesendeten
letzten Pakets, und dann, wenn das Bestätigungspaket ein Paket bestätigt, das
diese Nummer trägt,
oder vorherige Pakete, im Beurteilen von ihm, dass es nicht fehlerhaft
ist, und im Berücksichtigen
von ihm, und in anderen Fällen
im Beurteilen, dass es fehlerhaft ist, und im nicht Berücksichtigen
von ihm.
-
Die Charakteristiken der oben angegebenen Erfindung,
sowie andere, werden aus einem Lesen der folgenden Beschreibung
von mehreren Ausführungsbeispielen
der Erfindung deutlicher werden, wobei die Beschreibung in Bezug
auf die beigefügten Zeichnungen
angegeben ist, unter welchen:
-
1 ein
Blockdiagramm eines Übertragungssystems
ist, auf welches die vorliegende Erfindung angewendet werden kann,
-
2 ein
Diagramm ist, das ein Fehlermanagementverfahren gemäß den Verfahren
des Standes der Technik darstellt,
-
3a ein
Diagramm ist, das ein Fehlermanagementverfahren gemäß den Verfahren
des Standes der Technik darstellt, und
-
3b ein
Diagramm ist, das ein Fehlermanagementverfahren gemäß der vorliegenden
Erfindung darstellt.
-
4 ein
Diagramm ist, das ein weiteres Ausführungsbeispiel eines Fehlermanagementverfahrens
gemäß der vorliegenden
Erfindung darstellt.
-
Nun wird das in 3a gezeigte Verfahren beschrieben.
-
Wie in 2 ist
der linksseitige Teil dieser 3a ein
Diagramm, das auf der Seite des Senders 10 die Übertragung
von. Paketen als Funktion einer Zeit (die Zeit verstreicht nach
unten) zeigt, und ist der rechtsseitige Teil ein Diagramm, das auf
der Seite des Empfängers 30 den
Empfang von Paketen, die übertragen
sind, auch als Funktion einer Zeit zeigt. Was den zentralen Teil
betrifft, zeigt dieser die Übertragung
der Pakete über
die Übertragungsleitung 20.
-
In dieser 3a ist das Szenario wie folgt. Ein Paket 1 ist
auf der Seite des Empfängers 30 richtig
empfangen worden und ist daher zum Multiplexer 31 geliefert
bzw. ausgegeben worden. Ein Bestätigungspaket
RR2 wird durch den Empfänger 30 zum Sender 10 gesendet.
-
Ein Paket 2 ist durch den
Empfänger
nicht richtig empfangen worden. Genauer gesagt ist das Paket 2 nicht
empfangen worden, und der Empfänger 30 bemerkt
dies bis zu einem Empfang eines Pakets 3 nicht, welches
daher nicht in der Übertragungsreihenfolge
empfangen wird. Ein negatives Bestätigungspaket REJ2 wird zu diesem
Zeitpunkt durch den Empfänger 30 zum
Sender 10 gesendet.
-
Die folgenden Pakete 3 bis 8 werden
durch den Sender 10 gesendet und durch den Empfänger 30 richtig
empfangen. Diese Pakete 3 bis 8 werden nicht weggeworfen,
wie bei dem Protokoll des Standes der Technik, sondern zurückgehalten,
d. h. sie werden gespeichert, während
auf ihre Berücksichtigung
durch die obere bzw. höhere
Schicht im Hinblick darauf gewartet wird, dass sie zum Ausgangsmultiplexer 31 geliefert
werden.
-
Auf einen Empfang des negativen Bestätigungspakets
REJ2 hin sendet der Sender 10 das Paket 2 erneut,
welches dann durch den Empfänger 30 richtig
empfangen wird. Zu diesem Zeitpunkt wird das Paket 2 durch
die obere Systemschicht berücksichtigt
und wird zum Multiplexer 31 geliefert, aber dasselbe gilt
für die
Pakete 3 bis 8, die richtig empfangen worden sind
und die zurückgehalten
worden waren.
-
Nichts desto weniger kann gesehen
werden, dass der Sender nach einem Empfang des negativen Bestätigungspakets
REJ2 nicht allein das Paket 2 erneut sendet, sondern auch
die folgenden Pakete in der Reihenfolge der Pakete in der Sequenz.
Die Pakete 3 bis 8, die richtig empfangen worden
waren, die zurückgehalten
worden sind, und die dann geliefert werden, werden nun nach einem
neuen Empfang nach dem erneuten Senden, welchem sie unterzogen werden,
weggeworfen. Darüber
hinaus sendet der Empfänger 30 auf
einen Empfang eines jeweiligen der Pakete 2 bis 7 hin
ein Bestätigungspaket RR3
bis RR8.
-
Somit werden gemäß dem Verfahren der Erfindung
die Pakete, die nach dem Empfang eines verlorenen Pakets bis zum
richtigen Empfangs dieses Pakets empfangen werden, zurückgehalten,
dann zu derselben Zeit geliefert wie das verlorene Paket, das richtig
empfangen wurde, geliefert wird, und dann zu der Zeit ihres neuen
Empfangs nach dem erneuten Senden weggeworfen, welchem sie bei dem
Teil des Senders unterzogen werden.
-
Es sollte beachtet werden, dass auf
der Senderseite der Prozess derselbe ist wie bei dem Protokoll des
Standes der Technik, wie er in Bezug auf 2 offenbart ist, so dass das Einstellen
eines Verfahrens gemäß der Erfindung
es nicht nötig
macht, das Protokoll für
die Sender zu modifizieren, sondern nur für die Empfänger.
-
3b stellt
ein Ausführungsbeispiel
eines Verfahrens gemäß der Erfindung
dar. Der Unterschied im Vergleich mit demjenigen der 3a liegt einzig in der Tatsache,
dass bei einem richtigen Empfang eines Pakets 2 (das nicht
richtig empfangen worden war und das daher durch den Sender 10 erneut
gesendet wurde), der Empfänger 30 ein
Bestätigungspaket
RR9 zum Sender 10 sendet, d. h. für die Pakete 2 bis 8.
Diese Bestätigung
signalisiert dem Sender 10, dass die Pakete 2 bis 8 richtig
empfangen worden sind. Auf einen Empfang dieses Pakets RR9 hin stoppt
der Sender das Senden der Pakete, die bereits gesendet und richtig
empfangen worden sind, d. h. von denjenigen, die eine serielle Nummer
in der Sequenz tragen, die niedriger als diejenige der Bestätigung RR9
ist. In diesem Fall wird das Paket 8 nicht erneut gesendet.
Die anderen Pakete 3 bis 7, die durch den Sender 10 zwischen
dem erneuten Senden des Pakets 2 und dem Empfang des Bestätigungspakets
RR9 erneut gesendet wurden, werden beim Empfänger weggeworfen (Darstellung
durch Kreuze).
-
Es sollte jedoch beachtet werden,
dass der Empfang durch den Sender 10 einer Bestätigung für Pakete,
die nicht erneut gesendet worden sind (in diesem Fall die Pakete 3 bis 8),
ein Grund für
einen Fehler beim herkömmlichen
Gehe-N-zurück-Protokoll
ist.
-
In 3b berücksichtigt
der Sender 10 (wenn er ein herkömmliches Gehe-N-zurück-Protokoll ausführt) auf
einen Empfang durch den Sender 10 des negativen Bestätigungspakets
REJ2 hin, dass die Pakete 2 bis 8 weggeworfen
werden. Er erwartet nicht den Fall eines Empfangens einer Bestätigung für diese
Pakete 2 bis 8. Ein solcher Sender 10 ignoriert
die Tatsache, dass das Paket 8 zuvor gesendet worden ist.
Zu dem Zeitpunkt des Empfangs des Bestätigungspakets RR9 sind nur
die Pakete 2 bis 7 erneut gesendet worden. Für den Sender 10 können nur
diese Pakete bestätigt
werden. Somit ist die Bestätigung
der Pakete 2 bis 8, die durch das Paket RR9 ausgeführt ist,
fehlerhaft.
-
Zum Überwinden dieses Problems erfordert die
Implementierung des Verfahrens der Erfindung ungleich der vorherigen
Implementierung der Erfindung eine Modifikation des auf der Seite
des Senders 10 installierten Protokolls.
-
Um dies durchzuführen, speichert der Sender 10 die
Sequenznummer des vor dem erneuten Senden des fehlerhaften Pakets
ausgesendeten letzten Pakets, und zwar in dem Fall der 3b die Nummer 8.
Wenn das Bestätigungspaket
RR9 ein Paket, das diese Nummer trägt, oder vorherige Pakete bestätigt, beurteilt
der Sender 10 es nicht als fehlerhaft und berücksichtigt
es. In anderen Fällen
beurteilt er es als fehlerhaft und berücksichtigt es nicht.
-
Der Eingangsmultiplexer 11 trägt allgemein viele
virtuelle Schaltungen. Dies beeinflusst die in den 3a und 3b gezeigten
Verfahren nicht, weil sie ohne irgendeine Hypothese in Bezug auf
die Tatsache ausgeführt
werden, dass ein Paket eher zu einer virtuellen Schaltung gehört, als
ein anderes.
-
Aber ein Berücksichtigen dieser Tatsache verbessert
den durch das Verfahren der Erfindung erhaltenen Durchsatz.
-
4 stellt
ein anderes Ausführungsbeispiel eines
Verfahrens gemäß der Erfindung
dar, das das Gehören
der Pakete zu ihrer virtuellen Schaltung berücksichtigt.
-
Anhand eines Beispiels zeigt die 4 zwei virtuelle Schaltungen
VC-α und
VC-β. Diese
virtuellen Schaltungen VC-α und
VC-β werden
auf der Übertragungsleitung 20 zwischen
dem Sender 10 und dem Empfänger 30 multiplext.
-
Wie es im Diagramm der 4 gezeigt ist, ist ein Paket 1,
das zu der virtuellen Schaltung VC-β gehört, richtig empfangen worden.
Somit wird es zum Ausgangsmultiplexer 31 geliefert. Dasselbe
gilt für das
Paket 2.
-
Ein Paket 3 von der virtuellen
Schaltung VC-β ist
verloren worden und wird daher nicht durch den Empfänger 30 empfangen.
Auf einen Empfang eines Pakets 4 hin, das richtig empfangen
worden ist, bemerkt der Empfänger 30,
dass die Sequenznummer nicht die erwartete ist, und leitet aus dieser
Tatsache ab, dass das Paket 3 verloren worden ist. Somit
sendet er eine negative Bestätigung
REJ3 zum Sender 10, die den Sender 10 auffordert,
alle Pakete ab dem Paket 3 erneut zu senden. Die se negative Bestätigung REJ3
wird durch den Sender 10 empfangen, genau nachdem das Paket 8 gesendet
wurde.
-
Während
dieser Zeit wurden die Pakete 4 bis 8 richtig
empfangen. Aber, wie es in 4 gezeigt
ist, nur diejenigen Pakete 4, 6 und 7,
die zu derselben virtuellen Schaltung VC-β wie das verlorene Paket gehören, werden
zurückgehalten.
Die anderen, nämlich 5 und 8,
werden normal zum Ausgangsmultiplexer 31 geliefert.
-
Es sollte beachtet werden, dass die
gelieferten Pakete 5 und 8 nicht sofort bestätigt werden.
-
Wenn das erneut gesendete Paket 3 richtig empfangen
wird, werden alle Pakete, die zu derselben virtuellen Schaltung
VC-β gehören, die
zurückgehalten
worden ist, zum Ausgangsmultiplexer 31 geliefert. Dann
werden die folgenden Pakete 4 bis 8, die erneut
gesendet worden sind und die nun geliefert worden sind, weggeworfen
(dies ist in 4 durch
ein Kreuz beim Empfänger
angezeigt). Wenn ein erneut gesendetes Paket richtig empfangen wird, sendet
der Empfänger 30 eine
entsprechende Bestätigung
zum Sender 10. Beispielsweise dann, wenn das Paket 3 empfangen
wird, sendet der Empfänger 30 die
Bestätigung
RR4. Wenn das Paket 4 empfangen wird, sendet der Empfänger 30 die
Bestätigung RR5,
usw., bis zum Paket 8.
-
Allgemein gesagt werden gemäß diesem Ausführungsbeispiel
der Erfindung dann, wenn viele virtuelle Schaltungen beteiligt sind,
nur diejenigen Pakete zurückgehalten,
die zu derselben virtuellen Schaltung wie das verlorene Paket gehören. Die
anderen Pakete, die nicht zu derselben virtuellen Schaltung gehören, werden
geliefert. Die gelieferten Pakete werden nicht sofort bestätigt. Wenn
das verlorene Paket aufgrund seines erneuten Sendens durch den Sender 10 empfangen
wird, werden es und alle Pakete, die zu derselben virtuellen Schaltung
gehören, die
zurückgehalten
wurden, geliefert. Die folgenden Pakete, die aufgrund ihres erneuten
Sendens durch den Sender empfangen werden, und die schnell geliefert
worden sind, werden nun weggeworfen. Sie werden auch bestätigt.
-
Es sollte beachtet werden, dass sie
gemäß entweder
dem in 3a gezeigten
Verfahren oder dem in 3b gezeigten
Verfahren bestätigt
werden können.