-
Technisches Gebiert der Erfindung
-
Die
vorliegende Erfindung betrifft ein Verfahren gemäß dem Oberbegriff von Anspruch
1. Es werden auch ein Sender und Softwareprogramme beschrieben,
welche die Erfindung realisieren.
-
Hintergrund der Erfindung
-
Es
können
verschiedene Modi zur Übertragung
von Datenpaketen von einem Sender an einen Empfänger verwendet werden, z. B.
ein transparenter Modus, ein unquittierter Modus oder ein quittierter Modus.
Durch Verwenden eines Mechanismus zur automatischen Wiederholungsanforderung
ARQ (Automatic Repeat Request) stellt der quittierte Modus die Möglichkeit
bereit, Datenpakete wieder zu senden, die fehlerhaft sind, entweder
weil sie verloren gegangen sind oder weil sie falsch empfangen wurden.
Auf diese Weise kann eine verlustfreie Übertragung für höhere Schichten
in einem Protokollstapel sichergestellt werden, auch wenn einzelne
Datenpakete der ARQ-Schicht z. B. infolge einer gestörten Funkverbindung
fehlerhaft sind. Um einen ARQ-Mechanismus zu ermöglichen, ist es üblich, die
Datenpakete durch eine Reihenfolgenummer zu identifizieren, welche
den Paketen im Allgemeinen auf einer Modulo-Basis zugeordnet wird.
Nachrichten vom Empfänger
zum Sender geben an, welche Pakete fehlerhaft, und Wiederholungssendungen
der Pakete werden gemäß den Nachrichten
durchgeführt.
Außerdem
können
die Nachrichten auch korrekt empfangene Datenpakete quittieren.
-
Der
Status von gesendeten und empfangenen Datenpaketen kann unter Verwendung
von Empfänger-
und Sendefenstern im Empfänger
beziehungsweise im Sender gesteuert werden, d. h. Speichern, welche
speichern ob ein Datenpaket quittiert ist oder nicht. Das Sendefenster
reicht vom ersten unquittierten Paket bis zum Paket mit der höchsten gesendeten
Reihenfolgenummer, während
das Empfängerfenster gemäß der Definition,
die diesen ganzen Text hindurch verwendet wird, vom ersten unquittierten
Paket bis zum Paket mit der höchsten
empfangenen Reihenfolgenummer reicht, im Allgemeinen unter Berücksichtigung
einer Modulo-Reihenfolgenummerierung.
-
Ein
Beispiel eines Übertragungsprotokolls, welches
einen quittierten Modus hat, ist das Funkverbindungssteuerungsprotokoll
RLC (Radio Link Control), wie in der technischen 3GPP Spezifikation
3G TS 25.322 V4.0.0 (2001-03) des 3G-Partnerschaftsprojekts, Technical Specification
Group Radio Access Network (Technische Spezifikationsgruppe Funkanschlussnetz),
beschrieben. Das RLC-Protokoll wird zur Übertragung von Daten in einem
Breitband-Codemultiplexzugriffssystem WCDMA (Wideband Code Division
Multiplex Access), zum Beispiel im Universellen Mobilfunk-Telekommunikationssystem
(UMTS), verwendet.
-
In
einem Kommunikationssystem ist der Sender zum Beispiel eine Benutzereinrichtung,
wie ein Mobiltelefon, oder ein Netzknoten, wie eine Funknetzsteuerung
RNC (Radio Network Controller). Die RLC-Protokollschicht im Sender
empfängt
Pakete z. B. von einer höheren
Schicht im Protokollstapel. Die Pakete von der höheren Schicht werden als Dienstdateneinheiten
SDUs (Service Data Units) bezeichnet. Die RLC-Schicht formt die SDUs in Datenpakete um,
die als Paketdateneinheiten PDUs (Packet Data Units) bezeichnet
werden, um sie zur Übertragung über eine
Verbindungsstrecke zwischen dem Sender und dem Empfänger vorzubereiten.
In der RLC-Schicht des Senders umfassen Paketumformungen zum Beispiel
eine Segmentierung, Verkettung oder Pufferung von SDUs, während PDUs
zum Beispiel gestopft oder gepuffert werden können. Der Empfänger ist üblicherweise
ein Netzknoten oder eine Benutzereinrichtung, die mit dem Sender
kommuniziert. Die RLC-Schicht des Empfängers vollführt eine umgekehrte Verarbeitung
zur Freigabe der Daten entweder an eine höhere Protokollschicht oder
zu ihrer Weiterleitung an eine Verbindungsschicht zur Übertragung
durch weitere Domänen
des Kommunikationssystems, zum Beispiel durch ein Kernnetz des Kommunikationssystems.
-
Im
RLC-Protokoll werden die Nachrichten, die fehlerhafte Datenpakete
angeben, als Statusmeldungen bezeichnet und können aus einer oder mehreren
Protokolldateneinheiten bestehen. Die RLC-Spezifikation verlangt,
dass eine Statusmeldung Informationen über alle Protokolldateneinheiten,
die empfangen wurden, und alle Einheiten, die als fehlerhaft erkannt
wurden, enthält.
Demgemäß meldet
der Empfänger
zu dem Zeitpunkt, zu dem eine Statusmeldung erzeugt wird, alle Protokolldateneinheiten,
welche gegenwärtig
im Empfängerfenster
sind. Um die Protokollleistung hinsichtlich einer Verzögerungs-
und Durchsatzoptimierung zu verbessern, ist es notwendig, dass Wiederholungssendungen
von fehlerhaft empfangenen Funkverbindungssteuerungs-Protokolldateneinheiten
so bald als möglich
gesendet werden. Schnelle Wiederholungssendungen können jedoch
zu mehreren Wiederholungssendungen derselben PDU führen, was eine
Verschwendung von Betriebsmitteln ist. Mehrere Statusmeldungen innerhalb
einer Funkverbindungssteuerungs- oder RLC-Umlaufzeit lösen jeweils
die Wiederholungssendung einer bestimmten fehlerhaften Protokolldateneinheit
aus, da alle negativ quittierten Protokolldateneinheiten wieder
gesendet werden, wenn der Sender eine Statusmeldung empfängt. Insbesondere
wenn Statusmeldungen so oft als möglich gesendet werden, kann
dies zwar das Protokoll beschleunigen, löst jedoch unnötige Wiederholungssendungen
aus.
-
Das
RLC-Protokoll ermöglicht
es, die Menge von Statusmeldungen durch einen Statusverhinderungszeitgeber
zu steuern. Dieser Zeitgeber verhindert das Senden von Statusmeldungen
für eine
bestimmte Zeitmenge. Wenn der Statusverhinderungszeitgeber höher als
die RLC-Umlaufzeit eingestellt wird, werden unnötige Wiederholungssendungen verhindert.
Der Nachteil ist, dass dies die Wiederholungssendung von feh lerhaften
Datenpaketen erheblich verlangsamt und insbesondere zu einem langsamen
Protokoll für
einen hohen Anteil von fehlerhaften Paketen und hohen Umlaufzeiten
führt.
Eine Alternative zur Vermeidung unnötiger Wiederholungssendungen
ist der PDU-Schätzzähler EPC
(estimated PDU counter), wie in der 3GPP Spezifikation 3G TS 25.322
beschrieben. Der EPC-Mechanismus umfasst sowohl einen Zeitgeber,
um die Umlaufzeit zu berücksichtigen,
als auch einen Zähler,
welcher der Anzahl von Paketen entspricht, die zur Wiederholungssendung
angefordert werden. Der Zähler
eliminiert zwar den Einfluss der Verbindungskapazität auf die Übertragungszeit,
aber auch der EPC-Mechanismus löst
das Problem nicht, dass das Protokoll durch den Zeitgeber verlangsamt
wird.
-
J.
M. Simmons beschreibt einen Beweis für die Korrektheit eines Wiederholungssendungsschemas
im asynchronen Übertragungsmodus
ATM (Asynchronous Transfer Mode) in Computer Networks and ISDN Systems
29 (1997), ff. 184 bis 194. Durch Verwenden einer Kombination von
abgerufenen und nicht abgerufenen Statusnachrichten können unnötige Wiederholungssendungen
ausgeschlossen werden, und es kann ein sicherer Betrieb des Protokolls
gewährleistet
werden. Das Schema umfasst auch Merkmale zur Verringerung der Verzögerung von
Wiederholungssendungen. Zu diesem Zweck werden die nicht abgerufenen
Statusnachrichten gesendet, wann immer ein Datenpaket in einer unerwarteten
Reihenfolge empfangen wird. Der Einfluss der Umlaufzeit auf die
Geschwindigkeit der Wiederholungssendung dieses Wiederholungssendungsschemas
wird jedoch nicht berücksichtigt.
-
Die
europäische
Anmeldung
EP 1 261
163 A2 stellt einen Stand der Technik gemäß Artikel
54 (3) und (4) EPC in mehreren Vertragsstaaten dar. Die Anmeldung
beschreibt ein Wiederholungssendungsverfahren, in welchem der Sender
negative Quittierungen eines Datenpakets für eine Zeitdauer außer Acht
lässt,
die einer geschätzten
Umlaufzeit nach einer Übertragung
entspricht. Zu diesem Zweck sind allen Übertragungen Zeitgeber zugeordnet.
Dies erfordert einen großen
Aufwand, um die entsprechende Anzahl von Zeitgebern aufrechtzuerhalten.
-
Als
Ergebnis stellen gegenwärtige
Protokolle, die eine Wiederholungssendung von Datenpaketen umfassen,
im Wesentlichen zwei Optionen bereit, welche entweder Betriebsmittel
verschwenden oder das Protokoll verlangsamen. Keine der Optionen stellt
eine optimale Leistungsfähigkeit
bereit.
-
Neben
diesen Problemen kann die bestehende Technologie auch die Transportschicht über der
ARQ-Schicht, insbesondere das Übertragungssteuerungsprotokoll
TCP (Transmission Control Protocol), nachteilig beeinflussen. Das
TCP ist ein Protokoll einer höheren
Schicht, welches viel verwendet wird, um eine zuverlässige Datenübertragung
in Kommunikationsnetzen, zum Beispiel im Internet, bereitzustellen.
Interaktive Transportprotokolle, wie das TCP, steuern Übertragungen
gemäß Antwortnachrichten
von der empfangenden an die sendende Entität. Steuerungsprozeduren können die
Sendedatenrate gemäß den Antwortnachrichten
anpassen, z. B. wenn eine Zeitüberschreitung
für eine
Antwort einen Paketverlust anzeigt. Ein Funkverbindungssteuerungsprotokoll
an sich, welches zu einer langen Transportschichtumlaufzeit beiträgt, ist
daher nicht nur vorteilhaft. Die hohe Verzögerung kann außerdem Steuerungsprozeduren
der Transportschicht auslösen,
selbst wenn eine Zeitüberschreitung
aus einer Funkverbindungsumlaufzeit resultiert und nicht aus einem
Paketverlust im Netz. Als Ergebnis ist das bestehende RLC-Protokoll
oft zu langsam, um hohe TCP-Durchsätze zu unterstützen, obwohl
die darunter liegende, physikalische Schicht eine entsprechende
Datenrate erlauben würde.
-
Schließlich kann
eine lange Umlaufzeit einen Blockierungszustand des Sendefensters
im Falle einer begrenzten Fenstergröße verursachen, z. B. wenn
eine Modulo-Reihenfolgenum merierung verwendet wird. In einem blockierten
Fenster sind alle Positionen Datenpaketen zugeordnet. Das Fenster kann
nicht verschoben werden, und neue Datenpakete können demgemäß nicht gesendet werden, bis das älteste fehlerhafte
Datenpaket quittiert ist. Dies blockiert die Datenübertragung.
-
Kurzdarstellung und Beschreibung
der Erfindung
-
Eine
Aufgabe der vorliegenden Erfindung ist es, die zuvor erwähnten Nachteile
auszuschalten und ein Verfahren und einen Sender für eine verbesserte Übertragung
von Datenpaketen in einem Kommunikationssystem bereitzustellen.
Es ist insbesondere eine Aufgabe, unnötige Mehrfachübertragungen zu
vermeiden und eine geringe Übertragungsverzögerung zu
gewährleisten.
-
Gemäß der Erfindung
wird das Verfahren durchgeführt,
das in Anspruch 1 beschrieben wird. Außerdem wird die Erfindung in
einem Sender und einer Programmeinheit realisiert, wie in Anspruch
15 und 18 beschrieben. Vorteilhafte Ausführungsformen werden in den
weiteren Ansprüchen
beschrieben.
-
Im
vorgeschlagenen Verfahren zur Übertragung
von Datenpaketen von einem Sender an einen Empfänger werden fehlerhafte Datenpakete
durch den Empfänger
erkannt. Statusnachrichten, welche fehlerhafte Datenpakete zur Wiederholungssendung anfordern,
werden vom Empfänger
an den Sender gesendet, und Wiederholungssendungen von angeforderten
Datenpaketen werden gemäß den Statusnachrichten
durchgeführt.
Vorzugsweise werden die Datenpakete im Sender zu diesem Zweck gespeichert,
bis eine Quittung einer erfolgreichen Übertragung empfangen wird.
Eine erste Statusnachricht mit einer Identifikation, zum Beispiel
der Reihenfolgenummer, wenigstens eines ersten angeforderten Datenpakets
wird durch den Sender ausgewertet, welcher eine Wiederholungssendung
der ersten Datenpakete durchführt
und eine Zeitsteuereinheit gemäß der Wiederholungssendung
initialisiert.
-
Die
Initialisierung kann zum Beispiel das Starten eines Zeitgebers oder
das Rücksetzen
eines Zählers
sein. Zum Beispiel kann ein erster Zeitgeber oder ein Zähler gestartet
werden, wenn das erste Datenpaket zur Übertragung an eine untere Schicht
im Protokollstapel weitergeleitet wird oder wenn die Übertragung
durch eine physikalische Schicht gestartet wird. Die Zeitsteuereinheit,
eine Schwelle für die
Zeitsteuereinheit oder beide sind dem Datenpaket zuordenbar, z.
B. unter Verwendung eines Speichers, der die Beziehung speichert,
oder unter Verwendung einer Identifikation der Schwelle oder Zeitsteuereinheit
gemäß der Identifikation
des Datenpakets oder der Statusnachricht.
-
Der
Zweck der Zeitsteuereinheit und der Schwelle ist, dass der Sender
jene fehlerhaften Datenpakete, die in einer weiteren Statusnachricht
angefordert werden, für
welche aber eine Quittung für die
erste Wiederholungssendung den Sender infolge der Umlaufzeit nicht
erreicht haben kann, nicht wieder sendet. Die Zeitsteuereinheit
erreicht die Schwelle vorzugsweise nach einer Umlaufzeit, welche
zum Beispiel durch einen vorkonfigurierten konstanten Wert eines
Zählers
oder Zeitgebers oder durch eine gemessene Umlaufzeit zwischen dem
Sender und dem Empfänger
dargestellt werden kann. Ein Einstellen der Schwelle entsprechend
einem etwas höheren Wert
als eine Umlaufzeit kann Änderungen
berücksichtigen
und erhöht
die Stabilität
des vorgeschlagenen Verfahrens.
-
Wenn
der Sender eine weitere Statusnachricht auswertet und wenigstens
ein weiteres Datenpaket erkennt, das für eine weitere Wiederholungssendung
angefordert wird, wählt
er das weitere Datenpaket aus, wenn die Zeitsteuereinheit die Schwelle
erreicht hat oder wenn die Identifikation des erkannten Datenpakets
von der Identifikation des ersten Datenpakets verschieden ist. Zu
diesem Zweck ist es möglich,
die Identifikationen von gesendeten Datenpaketen zu verwenden, die
durch den Empfänger
noch nicht quittiert wurden und im Sender z. B. in einem Sendefenster
gespeichert sind, um die Übertragungen
zu überwachen.
Wenn die Zeitsteuereinheit mehr als einem ersten Datenpaket entspricht, wird
das weitere Datenpaket nur ausgewählt, wenn die Identität von allen
ersten Datenpaketen verschieden ist.
-
Nur
die Datenpakete, die aus jenen ausgewählt werden, die in der weiteren
Statusnachricht angefordert werden, werden wieder gesendet, d. h.
jene Datenpakete, welche zum ersten Mal für eine Wiederholungssendung
angefordert werden, und jene, für
welche die Zeitsteuereinheit die Schwelle erreicht hat. Es genügt, wenn
eine Bedingung erfüllt
wird, d. h. die jeweilige andere Bedingung für die Auswahl eines angeforderten
Datenpakets braucht in diesem Fall nicht geprüft werden. Zum Beispiel kann
ein Paket, nachdem die Schwelle erreicht ist, ohne eine Prüfung, ob
es vorher angefordert wurde, wieder gesendet werden. Gemäß dem Senden
des weiteren Datenpakets kann eine weitere Schwelle definiert werden,
z. B. als eine vorkonfigurierte Konstante oder ein gemessener Wert,
wie zuvor erwähnt.
Die weitere Schwelle wird auf dieselbe Art und Weise ausgewertet
wie die erste Schwelle für
noch weitere Statusnachrichten im Vergleich zu derselben oder einer
weiteren Zeitsteuereinheit. Dies ermöglicht es, noch weitere Statusnachrichten
zu verarbeiten, bevor die erste und weitere Schwellen erreicht werden, aber
es werden in jedem Fall nur jene fehlerhaften Datenpakete wieder
gesendet, welche entweder nicht in einer früheren Statusnachricht angefordert wurden
oder für
welche die entsprechende Schwelle erreicht oder überschritten ist.
-
Die
Erfindung beschleunigt das Funkverbindungssteuerungsprotokoll, indem
sie Anforderungen für
eine Wiederholungssendung von fehlerhaften Datenpaketen früh ermöglicht,
während
sie unnötige Wiederholungssendungen
vermeidet.
-
Statusnachrichten
können
so oft gesendet werden als geeignet, um Wiederholungssendungen zu
beschleunigen. Die Zeit zwischen zwei aufeinander folgenden Statusnachrichten,
z. B. zwischen der ersten Statusnachricht und der weiteren Statusnachricht,
ist vorzugsweise kürzer
als eine Umlaufzeit zwischen dem Sender und dem Empfänger. Bei
zunehmender Anzahl von Statusnachrichten je Umlaufzeit wird die
gesamte Übertragungsverzögerung des
Protokolls durch fehlerhafte Datenpakete verkürzt.
-
Eine
weitere Wiederholungssendung von bereits angeforderten Datenpaketen
wird durch die Schwelle verhindert, welche die erwartete Ankunft der
Quittung für
eine erste Wiederholungssendung am Sender darstellt. Eine frühe Wiederholungssendung
hat den Vorteil, dass der Datenverkehr weniger diskontinuierlich
ist, d. h. die Änderungen
der Intervalle zwischen einer Datenlieferung an höhere Schichten
verringert werden, insbesondere im Falle einer In-Reihenfolge-Lieferung von Datenpaketen durch
das vorgeschlagene Protokoll an die höhere Schicht. Die Verarbeitungsanforderungen
für alle
Geräte
in einer Verbindung können
auf diese Weise reduziert werden. Das Verfahren gemäß der vorliegenden
Erfindung ist robust gegen Statusnachrichtenverlust, d. h. im Falle
einer fehlerhaften Statusnachricht wird eine Wiederholungssendung
eines angeforderten Datenpakets nur bis zur nächsten Statusnachricht verzögert, d.
h. normalerweise weniger als eine Umlaufzeit. Das vorgeschlagene
Verfahren ist insbesondere für
den TCP-Verkehr vorteilhaft und verringert die Wahrscheinlichkeit
eines blockierenden Sendefensters für eine hohe Frequenz von Statusnachrichten
erheblich.
-
Die
Erfindung kann zum Beispiel in einem Netzknoten implementiert werden,
der zum Aufbau von Verbindungen mit Benutzereinrichtungen ausgelegt
ist, z. B. in einer Funknetzsteuerung RNC oder in einer Funkbasisstation,
in Abhängigkeit
vom Knoten, in welchem die Protokollsteuerungsübertragungen über die
Verbindungsstrecke beendet werden. Es ist auch vorteilhaft, die
Erfindung in der Benutzereinrichtung zu implementieren, um den Aufwärtsverkehr vom
Benutzer zu beschleunigen. Vorzugsweise wird das vorgeschlagene
Verfahren an beiden Enden der Verbindungsstrecke implementiert,
da im Allgemeinen beide Seiten der Sender sein können. Es ist jedoch auch möglich, das
Verfahren nur in einem Sender zu implementieren, insbesondere auf
der Seite der Verbindungsstrecke, durch welche der meiste Datenverkehr
gesendet wird, was normalerweise die Aufwärtsverbindungsseite ist. Es
ist besonders vorteilhaft, dass keine Anpassungen des Empfängers erforderlich
sind.
-
In
einer vorteilhaften Ausführungsform
des Verfahrens ist die Zeitsteuereinheit ein erster Zeitgeber, welcher
der Identifikation des ersten Datenpakets zuordenbar ist. In diesem
Fall ist die Initialisierung ein Starten des ersten Zeitgebers gemäß dem Senden
des ersten Datenpakets, und die Schwelle ist der Ablauf des ersten
Zeitgebers. Es ist möglich,
einen verschiedenen Zeitgeber für
jedes wieder gesendete Datenpaket zu verwenden und den Ablaufwert auf
die Umlaufzeit einzustellen. Es ist auch eine Option, einen einzigen
Zeitgeber für
alle wieder gesendeten Datenpakete zu verwenden und die Ablaufschwelle
auf den Zeitgeberwert bei der Wiederholungssendung des Datenpakets
plus der erwarteten Umlaufzeit einzustellen. Die Verwendung von
Zeitgebern ermöglicht
eine sehr genaue Implementierung des vorgeschlagenen Verfahrens.
-
Um
die Anzahl von Zeitgebern zu begrenzen, die für das Verfahren erforderlich
sind, umfasst ein vorteilhafter Zeitgeber einen Schwellenzeitgeber
mit einer Schwelle, die auf einen Ablaufwert eingestellt wird. Außerdem umfasst
die Zeitsteuereinheit einen Intervallzeitgeber. Der Schwellenzeitgeber
und der Intervallzeitgeber werden gemäß der Wiederholungssendung
des ersten Datenpakets gestartet. Wenn ein nachfolgendes Datenpaket
wieder gesendet wird, wird der Wert des Intervallzeitgebers gespeichert,
und der Intervallzeitgeber wird rückgesetzt und neu gestartet.
Der Schwellenzeitgeber wird rückgesetzt
und neu gestartet, wenn er die Ablaufschwelle erreicht, und die
Ablaufschwelle wird auf den gespeicherten Wert des Intervallzeitgebers
eingestellt. Die Prozedur kann für
jede nachfolgende Wiederholungssendung wiederholt werden. Auf diese
Weise kann jede Anzahl von Datenpaketen mit einer einzigen Zeitsteuereinheit
verfolgt werden.
-
Alternativerweise
kann die Zeitsteuereinheit einen Zähler für gesendete Pakete umfassen,
und die Schwelle ist ein Zählerwert.
Die Auswahl von angeforderten Datenpaketen zur Wiederholungssendung
kann in diesem Fall alle angeforderten Pakete von einem oder mehr
Intervallen sein, die in Bezug auf den momentanen Wert einer Übertragungsvariablen,
insbesondere der Reihenfolgenummer der oberen Grenze eines Sendefensters,
und den Schwellenwert definiert werden. Dies ermöglicht eine einfache Implementierung
der Erfindung und ist insbesondere für konstante Datenraten geeignet,
während
eine variierende Datenrate Fehler verursachen kann, sofern nicht
die Änderungen überwacht
und Korrekturen für
die Änderungen
angewendet werden.
-
Vorzugsweise
sind wenigstens zwei Zeitsteuereinheiten und/oder Schwellen Datenpaketidentifikationen
zuordenbar. Der Sender führt
eine Prüfung
von Schwellen für
alle Zeitsteuereinheiten und Schwellen vor der Durchführung einer
Wiederholungssendung durch. Auf diese Weise können vielfache Statusnachrichten
während
einer Umlaufzeit ohne die Gefahr von unnötigen Wiederholungssendungen
verarbeitet werden.
-
Vorzugsweise
ist eine Zeitsteuereinheit und/oder Schwelle mehreren wieder gesendeten
Datenpaketen zuordenbar. Auf diese Weise können die Verarbeitungsanforderungen
reduziert werden, wenn dieselbe Zeitsteuereinheit oder Schwelle
oder beide mehreren Datenpaketen entsprechen, welche beinahe gleichzeitig
wieder gesendet werden. Insbesondere kann eine Zeitsteuereinheit
den Datenpaketen zugeordnet werden, die innerhalb eines Übertragungszeitintervalls
TTI (transmission time interval) wieder gesendet werden.
-
Es
ist oft vorteilhaft, die Wiederholungssendung von Datenpaketen in
Sätzen
anzufordern, da Kommunikationsgeräte auf diese Weise vereinfacht werden
können
und die Wahrscheinlichkeit für
Gruppen von Übertragungsfehlern
z. B. infolge einer Funkverbindung, welche für eine kurze Zeitdauer gestört ist,
hoch ist. In diesem Fall werden alle Schritte im vorgeschlagenen
Verfahren für
die entsprechenden Sätze
statt für
einzelne Datenpakete durchgeführt.
Ein Satz kann zum Beispiel aus allen Datenpaketen bestehen, die
in einem TTI gesendet werden.
-
Eine
vorteilhafte Schwelle entspricht vorzugsweise ungefähr einer
Umlaufzeit, um unnötige Wiederholungssendungen
zu vermeiden, ohne das Protokoll zu verlangsamen. Wenn die Umlaufzeit
variieren kann, reduziert ein Wert, der höher als die mittlere Umlaufzeit
ist, die Wahrscheinlichkeit von unnötigen Wiederholungssendungen,
während
die Verzögerung
zunimmt. Die am meisten bevorzugte Option ist daher, die Schwelle,
z. B. den Zeitgeberablauf, auf einen Wert einzustellen, der einer
etwas längeren Zeit
als einer Umlaufzeit entspricht, um Änderungen zu berücksichtigen
und eine hohe Stabilität
des vorgeschlagenen Verfahrens zu gewährleisten, d. h. die Schwelle
durch einen Korrekturwert für
die Umlaufzeit anzupassen. Eine geeignete Größe des Korrekturwerts kann
von verschiedenen Parametern wie dem Anteil von Wiederholungssendungen
abhängen.
-
In
vielen Übertragungssystemen
können
Daten über
Kanäle
mit verschiedenen Eigenschaften übertragen
werden. Insbesondere werden Übertragungen
eines Benutzers in einem Kommunikationssystem entweder über einen
Kanal, der für
den Benutzer reserviert ist, oder über einen gemeinsam benutzten
Kanal durchgeführt.
Auf einem reservierten Kanal hat der Benutzer im Allgemeinen eine
definierte Bandbreite und Verzögerung
für Übertragungen. Diese
Parameter können
für einen
anderen reservierten Kanal verschieden sein, und sie können für einen
gemeinsam benutzten Kanal variieren, z. B. gemäß dem Verhalten von anderen
Benutzern im Kommunikationssystem. Es ist vorteilhaft, dass die Schwelle
für eine
Zeitsteuereinheit gemäß den Eigenschaften
des Kanals bestimmt wird, der für
eine Datenübertragung
verwendet wird. Auf diese Weise können weitere Wiederholungssendungen
auf einem Kanal bei einer geringen Verzögerung schneller durchgeführt werden.
Eine Schwelle unabhängig
von den Kanaleigenschaften ist einfacher zu konfigurieren, kann
aber unnötige
Verzögerungen
einführen.
-
Das
vorgeschlagene Verfahren ist besonders vorteilhaft zur Implementierung
in einer RLC-Schicht des Senders, d. h. wenn die Pakete RLC-Protokolldateneinheiten
sind.
-
Es
ist auch vorteilhaft, das vorgeschlagene Verfahren für die Datenpakete
einer physikalischen Schicht in einem Protokollstapel zu verwenden.
Dies ist besonders vorteilhaft für
die WCDMA-Weiterentwicklung des hochbitratigen Abwärtsverbindungspaketzugriffs
HSDPA (High speed downlink packet access), welche einen ARQ-Mechanismus
auf der physikalischen Schicht des Protokollstapels verwendet. Beim
HSDPA kann ein ARQ-Hybridmechanismus angewendet werden, in welchem
fehlerhafte Datenpakete nicht verworfen werden, sondern Informationen von
verschiedenen Übertragungen
desselben Pakets kombiniert werden können, um das Paket wiederherzustellen.
Insbesondere in diesem Fall ist es oft vorteilhaft, wenn das ursprüngliche
und das wieder gesendete Datenpaket nicht identisch sind, sondern zum
Beispiel unterschiedlich codiert werden können, um die Wahrscheinlichkeit
einer korrekten Decodierung nach dem Kombinieren der ursprünglichen
Sendung und der Wiederholungssendung zu verbessern. Das Verfahren
kann sowohl für
Abwärts-
als auch Aufwärtsverkehr
verwendet werden. Auf der Netzseite der drahtlose Verbindungsstrecke
wird das Protokoll vorzugsweise in einer Funkbasisstation implementiert,
um den Verkehr zu beschleunigen. Wenn das Verfahren auf der physikalischen
Schicht verwendet wird, kann dies entweder eine Alternative zur Anwendung
auf einer höheren
Schicht, z. B. RLC, oder als eine Sicherungslösung sein, in welcher das Verfahren
sowohl auf der physikalischen Schicht als auch einer höheren Schicht
verwendet wird.
-
Ein
Sender für
ein Kommunikationssystem zur Übertragung
von Datenpaketen gemäß einem ARQ-Mechanismus
umfasst einen Speicher zum Speichern einer Identifikation von gesendeten
Datenpaketen, eine Schnittstelle mit Sende- und Empfangseinheiten,
um Nachrichten mit einem Empfänger
auszutauschen, und ein Verarbeitungssystem, das so ausgelegt ist,
dass es Statusnachrichten vom Empfänger auswertet, welche fehlerhafte
Datenpakete zur Wiederholungssendung anfordern, und Wiederholungssendungen
von angeforderten Datenpaketen gemäß den Statusnachrichten initialisiert.
-
Gemäß der Erfindung
wertet das Verarbeitungssystem eine erste Statusnachricht mit einer Identifikation
wenigstens eines ersten Datenpakets aus und initialisiert eine Wiederholungssendung
des ersten Datenpakets oder der ersten Datenpakete. Eine Zeitsteuereinheit
wird gemäß der Wiederholungssendung
der ersten Datenpakete initialisiert. Die Zeitsteuereinheit oder
eine Schwelle für
die Zeitsteuereinheit oder beide sind dem Datenpaket zuordenbar.
Wenn das Verarbeitungssystem eine weitere Statusnachricht auswertet,
kann es wenigstens ein weiteres Datenpaket erkennen, das für eine weitere Wiederholungssendung
angefordert wird. Das Verarbeitungssystem wählt das weitere Datenpaket
aus, wenn die Zeitsteuereinheit die Schwelle erreicht hat oder wenn
die Identifikation des weiteren Datenpakets von der Identifikation
der ersten Datenpakete verschieden ist. Eine Wiederholungssendung
wird nur von den ausgewählten
Datenpaketen initialisiert. Die zuvor beschriebenen Schritte können zum
Beispiel durch eine Software ausgeführt werden, die in das Verarbeitungssystem
des Senders geladen wird. Der Sender ist vorzugsweise so ausgelegt,
dass er eine oder mehrere der Ausführungsformen des beschriebenen
Verfahrens realisiert.
-
Der
Sender ist zum Beispiel eine Funkbasisstation, eine Benutzeinrichtung
oder eine Funknetzsteuerung (RNC). Dieselben Entitäten können im vorgeschlagenen
Verfahren auch ein Empfänger sein.
-
Eine
Programmeinheit gemäß der Erfindung kann
auf einem Datenträger
gespeichert oder z. B. als eine Signalfolge in einen Sender eines
Kommunikationssystems ladbar sein. Die Programmeinheit kann einen
Code zum Realisieren jeder Ausführungsform
des beschriebenen Verfahrens umfassen.
-
Die
vorhergehenden und andere Aufgaben, Merkmale und Vorteile der vorliegenden
Erfindung werden aus der folgenden ausführlichen Beschreibung von bevorzugten
Ausführungsformen,
wie in den beiliegenden Zeichnungen veranschaulicht, besser ersichtlich.
-
Kurze Beschreibung der Zeichnungen
-
1 veranschaulicht eine Funkverbindung in
einem drahtlosen Kommunikationssystem in zwei verschiedenen Darstellungen.
-
2 stellt
ein Beispiel von gesendeten RLC-Paketen während eines Zeitintervalls
dar.
-
3 stellt
die Verarbeitung von Datenpaketen gemäß der Erfindung dar.
-
4 stellt
einen Sender gemäß der Erfindung
dar.
-
Ausführliche Beschreibung von bevorzugten
Ausführungsformen
der Erfindung
-
1a veranschaulicht
ein Übertragungssystem,
das eine drahtlose Verbindungsstrecke WL (wireless link) umfasst.
Die Verbindungsstrecke WL verbindet eine Benutzereinrichtung UE
(user equipment), zum Beispiel ein Mobiltelefon oder ein anderes
Endgerät,
und einen Funknetzknoten RN (radio network node), zum Beispiel eine
RNC oder eine Basisstation. Weitere Einrichtungen, die für die Verbindung
notwendig sind, werden der Klarheit halber weggelassen, z. B. erstreckt
sich in dem Fall, in dem der Knoten RN eine RNC ist, die drahtlose
Verbindungsstrecke zwischen der Benutzereinrichtung und einer Funkbasisstation,
welche ihrerseits mit der RNC verbunden ist. Sowohl die Benutzereinrichtung UE
als auch der Knoten RN können
in Abhängigkeit von
der Richtung, in welcher Datenpakete über die drahtlose Verbindungsstrecke
WL gesendet werden, der Sender oder der Empfänger der vorliegenden Erfindung
sein.
-
Die
Benutzereinrichtung UE und der Netzknoten RN umfassen Verarbeitungssysteme,
in welchen wenigstens Teile eines Protokollstapels für die Übertragung
von Daten implementiert sind. Der Verarbeitungsstapel im Beispiel
umfasst eine Anwendungsschicht AL (application layer) zum Ausführen von
Anwendungen, eine Transportschicht TL (transport layer), die z.
B. das TCP implementiert, eine Funkverbindungssteuerungsschicht
RLC und eine physikalische Schicht PL. Weitere Schichten, welche nicht
dargestellt sind, können
im Protokollstapel ebenfalls vorhanden sein, wie durch Punkte angezeigt,
z. B. umfasst ein UMTS-System eine Medienzugangssteuerungsschicht
MAC (Medium Access Control) zwischen der RLC und der physikalischen Schicht
PL.
-
Die
Benutzereinrichtung UE im Beispiel kommuniziert mit einer Anwendung,
die auf einer weiteren Endeinrichtung TE (terminal equipment), zum Beispiel
einem Server, abläuft.
Die Anwendungsschicht AL und die Transportschicht TL werden in der weiteren
Endeinrichtung TE beendet. Die Datenpakete zwischen der Benutzereinrichtung
und der Endeinrichtung werden über
den Knoten RN und ein oder mehr Zwischennetze NW, z. B. das Kernnetz
eines Kommunikationssystems, gesendet. Datenpakete der Transportschicht
TL werden an die RLC-Schicht zur Übertragung über die
drahtlose Verbindungsstrecke WL übertragen.
Das Verhalten der RLC-Pakete auf der drahtlosen Verbindungsstrecke,
insbesondere die Verzögerungen,
die durch die Eigenschaften der RLC-Schicht und alle darunter liegenden
Schichten eingeführt
werden, beeinflussen die Leistung der höheren Schichten TL, AL im Protokollstapel.
-
In 1b ist
ein Modell der Kommunikation über
die drahtlose Verbindungsstrecke WL aus der Perspektive der RLC-Schicht
dargestellt. Die RLC-Entität
RLCT im Sender TR (transmitter) sendet Datenpakete
D1...Dn an die RLC-Entität RLCR im Empfänger
RE (receiver) durch Verwenden von unteren Schichten, wie bereits
erwähnt.
Die empfangende Entität
RLCR quittiert den Empfang von korrekt empfangenen
Datenpaketen und fordert die Wiederholungssendung von fehlerhaften
Datenpaketen in einer ersten Statusnachricht S1 an,
welche an den Sender zurückgesendet
wird.
-
Die
RLC-Umlaufzeit ist die Zeitdauer vom Senden der ersten Statusnachricht
S1, d. h. der Weiterleitung zur unteren
Schicht im Empfänger
RE, bis zum Empfang des ersten angeforderten Datenpakets D, d. h.
der Zeit, wenn dieses Paket von der unteren Schicht im Empfänger RE
zur RLC-Entität
RLCR weitergeleitet wird. Allgemeiner ausgedrückt, ist
die RLC-Umlaufzeit die Zeitdauer, bis die RLC-Entität an einem
Ende einer Verbindungsstrecke eine Antwort von der RLC-Entität auf der
anderen Seite empfängt. Die
RLC-Umlaufzeit umfasst zum Beispiel Ausbreitungsverzögerungen
auf der Verbindung WL, sowie Verarbeitungsverzögerungen für die Übertragung von Daten zwischen
verschiedenen Schichten in den Protokollstapeln oder über Schnittstellen
zwischen Knoten, z. B. zwischen Funkbasisstation und RNC. Gemäß der Erfindung
können
mehrere weitere Statusnachrichten S2, S3... innerhalb einer Umlaufzeit gesendet
werden, während
eine einzige Wiederholungssendung eines angeforderten Datenpakets
innerhalb einer Umlaufzeit gewährleistet
werden kann.
-
Statusnachrichten
können
entweder durch den Empfänger
initialisiert werden, oder der Sender kann bestimmen, eine Statusnachricht
S z. B. durch Setzen eines Aufforderungsbits in einem Datenpaketkopf
anzufordern. Jede einzelne Bedingung, die im Folgenden beschrieben
wird, oder jede Kombination solcher Bedingungen kann verwendet werden, um
zu bestimmen, dass eine Statusnachricht angefordert werden sollte.
Wünschenswerte
Bedingungen, um eine Statusnachricht auszulösen, sind zum Beispiel eine
vordefinierte Anzahl von gesendeten Datenpaketen, das Senden von
Datenpaketen von einem vorbestimmten Teil eines Sendefensters, das Erreichen
einer Schwelle oder eines definierten Teils einer Schwelle durch
eine Zeitsteuereinheit, insbesondere des Ablaufs eines Zeitgebers.
Außerdem
ist das Ende oder der Beginn eines Datenpakets von einer höheren Schicht
eines Protokollstapels eine wünschenswerte
Bedingung, um eine Statusnachricht anzufordern, um Verzögerungen
einer Paketlieferung zu vermeiden. In diesem Fall ist es möglich, nur
den Beginn oder das Ende jedes n-ten Pakets von der höheren Schicht
zu berücksichtigen.
Um ein Blockieren des Verfahrens zu vermeiden, insbesondere wenn Paketzähler für Zeitsteuerungszwecke
verwendet werden, ist das letzte Paket in einem Puffer oder in einem
Wiederholungssendungspuffer eine geeignete Bedingung, um eine Statusnachricht
anzufordern. Ein getrennter Wiederholungssendungspuffer ermöglicht es,
dass Wiederholungssendungen von Datenpaketen mit Vorrang vor jenen
Datenpaketen durchgeführt
werden, die zum ersten Mal zu senden sind.
-
2 zeigt
einen Abschnitt eines RLC-Ablaufverfolgungsprogramms für einen
Empfänger,
d. h. den Empfang von Paketen, die durch ihre entsprechende Reihenfolgenummer
angezeigt sind, im Zeitablauf. Statusmeldungen werden ausgelöst, wenn eine
PDU empfangen wird, in welcher ein Aufforderungsbit gesetzt ist.
Im Beispiel werden Stausmeldungen in Intervallen von 50 ms gesendet,
während die
RLC-Umlaufzeit etwa 100 ms beträgt.
Auf der Verbindungsstrecke WL zwischen Sender und Empfänger gehen
einige der Pakete verloren oder werden verfälscht, wie durch horizontale
Balken angezeigt. Die Statusmeldungen zeigen dem Sender an, welche Pakete
wieder zu senden sind.
-
In
einer Übertragung
gemäß dem Stand
der Technik, wie z. B. durch den Standard 3G TS 25.322 verlangt,
wird eine Wiederholungssendung für
jede negative Quittung gesendet, die durch den Sender empfangen
wird. Die Statusmeldung umfasst Informationen über Protokolldateneinheiten,
die empfangen wurden, und Informationen über alle PDUs, die als fehlerhaft
erkannt wurden. Wenn Statusmeldungen in kürzeren Intervallen gesendet
werden als der Funkverbindungssteuerungsumlaufzeit wie im Beispiel,
umfassen mehrere Statusmeldungen dieselbe Protokolldateneinheit.
-
Der
Empfänger
in 2 sendet alle 50 ms eine Statusmeldung an den
Sender. Basierend auf diesen Statusmeldungen werden Wiederholungssendungen
durchgeführt.
Die Reihenfolgenummern der wieder gesendeten Pakete sind niedriger
als die Reihenfolgenummern jener Pakete, die zum ersten Mal gesendet
werden, was es ermöglicht,
beide Arten von Paketen in 2 zu unterscheiden.
Alle fehlerhaft empfangenen Pakete werden zweimal wieder gesendet,
da jedes in zwei Statusmeldungen enthalten ist. Zum Beispiel werden
dieselben Pakete mit Reihenfolgenummern um 950 sowohl zum Zeit punkt 4165
ms als auch 4215 ms wieder gesendet, auch wenn die erste Wiederholungssendung
der Pakete erfolgreich war.
-
As
Ergebnis gibt es im Allgemeinen eine unnötige Wiederholungssendung für alle negativ
quittierten Protokolldateneinheiten in 2, sofern
nicht die erste Wiederholungssendung einer PDU fehlerhaft ist. Wenn
das Intervall zwischen Statusmeldungen verlängert wird, um unnötige Wiederholungssendungen
zu vermeiden, verlängert
dies die gesamte Übertragungsverzögerung.
Außerdem
neigt insbesondere im Falle einer In-Reihenfolge-Lieferung von Datenpaketen
an höhere
Schichten der Verkehr dazu, in Bursts weitergeleitet zu werden,
wenn einige fehlerhafte PDUs die Weiterleitung der Daten behindern,
und es werden mehrere SDus in einer Reihe freigegeben, wenn eine
PDU nach einer oder mehreren erfolglosen Wiederholungssendungen
korrekt empfangen wird.
-
Die
Schritte eines Verfahrens gemäß der Erfindung
werden im Folgenden unter Bezugnahme auf 3 beschrieben,
welche die Nachrichten darstellt, die zwischen den RLC-Entitäten des
RLC-Senders TR und des RLC-Empfängers
RE gesendet werden. Die vertikale Achse in 3 entspricht
dem Zeitverlauf.
- 1. Der RLC-Sender TR sendet
3 PDUs mit den Reihenfolgenummern SN = 1, 2 und 3.
- 2. Die PDU mit SN = 2 geht z. B. infolge einer Störung während der
Finkübertragung
verloren und erreicht den RLC-Empfänger nicht.
- 3. Durch Empfangen der PDU mit SN = 3 kann der RLC-Empfänger den
Verlust der PDU mit der Reihenfolgenummer 2 erkennen, wenn eine Übertragung
in der Reihenfolge von ansteigenden Reihenfolgenummern durchgeführt wird.
Der Verlust löst
eine Übertragung
einer ersten Statusmeldung oder einer ersten Statusnachricht S11 aus, welche eine Wiederholungssendung
der PDU mit SN = 2 anfordert. In der ersten Statusmeldung S11 wird die Reihenfolgenummer 3 quittiert
(ACK = 3), während
die Reihenfolgenummer 2 als fehlend gemeldet wird (NACK = 2).
- 4. Gleichzeitig sendet der RLC-Sender weiter PDUs mit SN = 4,
5 und 6, von welchen die PDU mit SN = 4 während einer Funkübertragung
wieder verloren geht.
- 5. Bei Empfang der ersten Statusmeldung S11 sendet
der RLC-Sender die PDU mit SN = 2 wieder. In der wieder gesendeten
PDU wird ein Aufforderungsbit gesetzt, um die Übertragung einer weiteren Statusmeldung
durch den Empfänger nach
dem Empfang anzufordern. Auf diese Weise werden weitere Verzögerungen
vermieden, wenn die Wiederholungssendung ebenfalls verloren geht.
Der Sender TR startet einen ersten Wiederholungssendungsverhinderungs-Zeitgeber
RPT1 für
diese PDU und speichert in einem Speicher, dass die Reihenfolgenummer
SN = 2 dem Wiederholungssendungsverhinderungs-Zeitgeber RPT1 entspricht.
Die Ablaufschwelle für
den Zeitgeber wird etwas höher
eingestellt als eine Umlaufzeit.
- 6. Bei Empfang der PDU mit SN = 5 erkennt der RLC-Empfänger, dass
die PDU mit SN = 4 ebenfalls verloren gegangen ist und sendet eine
zweite Statusmeldung S12, welche eine Wiederholungssendung
sowohl der PDU mit SN = 2 als auch SN = 4 anfordert, indem sie die
Information (NACK: 2, 4) enthält,
während
der Empfang der PDU mit der Reihenfolgenummer 5 quittiert wird (ACK
= 5). Die PDU mit SN = 2 wird in die zweite Statusmeldung S12 aufgenommen, da der Empfänger sie
noch nicht empfangen hat und noch nicht weiß, dass eine Wiederholungssendung
bereits unterwegs ist. Wenn die PDU mit SN = 2 nicht aufgenommen werden
würde,
könnte
ein Verlust der ersten Statusmeldung S11 die Übertragung
blockieren oder verzögern.
- 7. In Erwiderung der zweiten Statusmeldung S12 mit
der Wiederholungssendungsanforderung für SN = 2 und 4 sendet der RLC-Sender
nur die PDU mit SN = 4 wieder. Für
die Reihenfolgenummer SN = 2 hat eine Prüfung des Speichers zum Ergebnis,
dass der erste Wiederholungssendungsverhinderungs-Zeitgeber RPT1
für die
SN = 2 läuft.
Die Ablaufschwelle für
diesen Zeitgeber ist noch nicht erreicht. Daher wird die PDU mit
SN = 2 nicht für
eine Wiederholungssendung ausgewählt.
Das Aufforderungsbit wird in der wieder gesendeten PDU mit SN =
4 gesetzt. Der RLC-Sender startet einen weiteren Wiederholungssendungsverhinderungs-Zeitgeber
RPT2 für
die SN = 4, speichert die Entsprechung zwischen dem Zeitgeber und
der PDU und stellt die Ablaufschwelle für den Zeitgeber etwas höher als
eine Umlaufzeit ein.
- 8. Wenn der RLC-Empfänger
die Wiederholungssendung von SN = 2 empfängt, wird das Aufforderungsbit
ausgewertet, und der Empfänger
sendet eine dritte Statusmeldung S13, welche
eine Wiederholungssendung der PDU mit SN = 4 unter Verwendung der
Information NACK = 4 anfordert. Auf diese Weise wird der Empfang
der PDU mit SN = 2 quittiert, da keine weitere Wiederholungssendung
angefordert wird.
- 9. Wenn die dritte Statusmeldung S13 mit
einer Wiederholungssendungsanforderung für die PDU mit SN = 4 am RLC-Sender
ankommt, wird wieder eine Prüfung
im Speicher vorgenommen, ob irgendein Zeitgeber dieser PDU zugeordnet
ist. Es wird erkannt, dass der Wiederholungssendungsverhinderungs-Zeitgeber
RPT2, welcher noch nicht abgelaufen ist, der PDU entspricht, weshalb keine
Wiederholungssendung durchgeführt
wird.
- 10. Bei Empfang der Wiederholungssendung von SN = 4 sendet der
RLC-Empfänger
eine vierte Statusmeldung S14, die alle
PDUs bis einschließlich
SN = 7 mit der Information ACK = 7 quittiert. Die vierte Statusmeldung
S14 wird durch das Aufforderungsbit in der
wieder gesendeten PDU mit SN = 4 ausgelöst.
-
Die
zuvor beschriebene Prozedur wird fortgesetzt, bis alle Datenpakete übertragen
sind. Die Anzahl von notwendigen Zeitgebern entspricht der Anzahl
von PDUs, welche vor dem Ablauf des ersten Zeitgebers wieder gesendet
werden. Ein Verwenden von Zeitgebern für Sätze von gleichzeitig wieder
gesendeten PDUs kann die erforderliche Anzahl verringern.
-
Eine
wünschenswerte
Option für
die Implementierung der Zeitsteuereinheit umfasst zwei Zeitgeber,
die im Folgenden als Intervallzeitgeber und Zeitüberschreitungszeitgeber bezeichnet
werden. Der Ablaufwert des Zeitüberschreitungszeitgebers entspricht
der Schwelle, nach welcher ein Datenpaket ein zweites Mal wieder
gesendet werden kann.
-
Wenn
ein erstes Datenpaket wieder gesendet wird, werden beide Zeitgeber
mit einer Angabe gestartet, dass der Zeitüberschreitungszeitgeber dem
ersten Datenpaket entspricht. Wenn ein zweites Datenpaket wieder
gesendet wird, bevor der Zeitüberschreitungszeitgeber
abgelaufen ist, wird der momentane Wert des Intervallzeitgebers
mit einer Angabe des zweiten Datenpakets gespeichert. Der Intervallzeitgeber
wird rückgesetzt
und neu gestartet. Für jedes
weitere Datenpaket, welches wieder gesendet wird, bevor der Zeitüberschreitungszeitgeber
abgelaufen ist, wird der momentane Wert des Intervallzeitgebers
wieder mit einer Angabe des entsprechenden Datenpakets gespeichert,
und der Intervallzeitgeber wird wieder rückgesetzt und neu gestartet.
-
Wenn
der Schwellenwert durch den Zeitüberschreitungszeitgeber
erreicht wird, gibt dies an, dass das erste Datenpaket wieder gesendet
werden kann, wenn es in einer weiteren Statusnachricht angefordert
wird. Diese Angabe kann mit dem ersten Datenpaket gespeichert werden,
oder eine Angabe des ersten Datenpakets kann aus einer Liste von
Datenpaketen entfernt werden, deren Wiederholungssendung verboten
ist. Der Zeitüberschreitungszeitgeber
wird dem zweiten Datenpaket zugeordnet und neu gestartet, wobei
die Schwelle auf den Wert des Intervallzeitgebers eingestellt wird,
der für
das zweite Datenpaket gespeichert ist, d. h. der Zeitüberschreitungszeitgeber
wird so eingestellt, dass er nach dem gespeicherten Intervallzeitgeberwert
abläuft.
Wenn die Schwelle wieder erreicht wird, wird dieselbe Prozedur für jedes
weitere Datenpaket wiederholt, für welches
ein Wert des Intervallzeitgebers gespeichert ist. Wenn der Intervallzeitgeber
die Schwelle des Zeitüberschreitungszeitgebers
erreicht, gibt dies an, dass jedes angeforderte Datenpaket wieder
gesendet werden kann. Diese Implementierung der Zeitsteuereinheit
begrenzt die Anzahl von Zeitgebern, die zur Verfolgung der Wiederholungssendungen
benötigt
werden, während
eine genaue Zeitsteuerung gewährleistet
wird.
-
Ein
Sender gemäß der Erfindung
ist in 4 dargestellt. Die Hardwarekomponenten sind zum Beispiel
jene einer gebräuchlichen
Funkbasisstation oder einer Benutzereinrichtung und umfassen zum Beispiel
eine Sendeeinheit und eine Empfangseinheit, die im Allgemeinen in
einer Sendeempfangseinheit integriert sind, sowie eine Tastatur,
eine Anzeige, ein Mikrofon und einen Lautsprecher im Falle einer Benutzereinrichtung.
Die Hardwarekomponenten sind mit einem Verarbeitungssystem PS (processing system)
verbunden, das den Protokollstapel des Kommunikationsgeräts entwickelt.
Der Stapel umfasst neben anderen Schichten eine physikalische Schicht
PL, eine RLC-Schicht und eine Anwendungsschicht AL. Funksignale
werden über
eine Antenne ANT gesendet und empfangen, und die Signale werden
für die
drahtlose Verbindungsstrecke WL in einer Sendeeinheit TM und einer
Empfangseinheit REC decodiert beziehungsweise codiert.
-
Das
Verarbeitungssystem umfasst ferner Gruppen von Zeitgebern TI1...TIn und einen
Speicher MEM mit Abschnitten 1, ...n, die den Zeitgebern TI entsprechen
und die wieder gesendeten Datenpakete identifizieren, welche einem
bestimmten Zeitgeber TIi zugeordnet sind.
Eine Steuereinheit CT ist so ausgelegt, dass sie die Schritte des
Verfahrens wie zuvor beschrieben ausführt. Insbesondere bestimmt
die Steuereinheit CZ aus einer Statusnachricht, die über die
Empfangseinheit REC empfangen wird, ob eine erste Wiederholungssendung
eines ersten Datenpakets angefordert wird. Die Wiederholungssendung wird
unter Verwendung der Sendeeinheit TM durchgeführt, und die Steuereinheit
CT im Verarbeitungssystem PS initialisiert einen Zeitgeber TI gemäß der Wiederholungssendung.
Der Speicher MEM speichert, welcher Zeitgeber TIi dem
ersten Datenpaket zugeordnet ist, z. B. durch Speichern der Reihenfolgenummer
des Datenpakets, im Speicherabschnitt i.
-
Wenn
die Steuereinheit CT im Verarbeitungssystem PS eine weitere Statusnachricht
auswertet und wenigstens ein weiteres Datenpaket erkennt, das für eine Wiederholungssendung
angefordert wird, führt
sie eine Abtastung des Speichers MEM durch, ob eine Identifikation
gespeichert ist, die dem weiteren Datenpaket entspricht. Wenn dies
der Fall ist, prüft
die Steuereinheit CT, ob der Zeitgeber TI, der dem Datenpaket zugeordnet
ist, abgelaufen ist, sofern nicht Identifikationen von Datenpaketen nach
dem Ablauf des entsprechenden Zeitgebers aus dem Speicher gelöscht werden.
Wenn der Zeitgeber abgelaufen ist, oder das Datenpaket im Speicher
nicht identifiziert wird, wird eine Wiederholungssendung des weiteren
Datenpakets unter Verwendung der Sendeeinheit TM durchgeführt. Die
Steuereinheit CT initialisiert dann einen weiteren Zeitgeber gemäß der Wiederho lungssendung,
und der Speicher MEM speichert, welcher Zeitgeber TIj dem
weiteren Datenpaket zugeordnet ist.
-
Die
zuvor dargelegten Ausführungsformen erreichen
bewundernswerterweise die Aufgaben der Erfindung. Es ist jedoch
zu erkennen, dass von Fachleuten Abweichungen durchgeführt werden
können, ohne
sich vom Rahmen der Erfindung, welche nur durch die Ansprüche beschränkt ist,
abzuweichen.