DE102018213065A1 - Fehlerkorrekturverfahren für unidirektionalen Datentransfer - Google Patents

Fehlerkorrekturverfahren für unidirektionalen Datentransfer Download PDF

Info

Publication number
DE102018213065A1
DE102018213065A1 DE102018213065.5A DE102018213065A DE102018213065A1 DE 102018213065 A1 DE102018213065 A1 DE 102018213065A1 DE 102018213065 A DE102018213065 A DE 102018213065A DE 102018213065 A1 DE102018213065 A1 DE 102018213065A1
Authority
DE
Germany
Prior art keywords
data
forward error
error protection
protection coding
coding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE102018213065.5A
Other languages
English (en)
Inventor
Tiago Gasiba
Matthias Seifert
Martin Wimmer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens Mobility GmbH
Original Assignee
Siemens Mobility GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Mobility GmbH filed Critical Siemens Mobility GmbH
Priority to DE102018213065.5A priority Critical patent/DE102018213065A1/de
Priority to PCT/EP2019/068402 priority patent/WO2020025266A1/de
Priority to EP19745995.1A priority patent/EP3797482A1/de
Priority to CN201980051692.3A priority patent/CN112470413A/zh
Priority to US17/260,300 priority patent/US20210288749A1/en
Publication of DE102018213065A1 publication Critical patent/DE102018213065A1/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0096Channel splitting in point-to-point links
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/663Transport layer addresses, e.g. aspects of transmission control protocol [TCP] or user datagram protocol [UDP] ports

Abstract

Ein Verfahren zum unidirektionalen Datentransfer von Daten von einem Sender an einen Empfänger umfasst Schritte des: Demultiplexens der Daten in mehrere Datenströme; des Codierens der Datenströme jeweils mittels einer Vorwärts-Fehlerschutz-Codierung; des Versendens der Datenströme über zugeordnete Kommunikationskanäle vom Sender an den Empfänger; des Korrigierens eines möglichen Fehlers in einem der empfangenen Datenströme auf der Basis der Vorwärts-Fehlerschutz-Codierung; des Entfernens der Vorwärts-Fehlerschutz-Codierung aus den Daten; und des Multiplexens der Daten.

Description

  • Die Erfindung betrifft die Realisierung eines unidirektionalen Datenverkehrs. Insbesondere betrifft die Erfindung ein mit erhöhter Wahrscheinlichkeit korrektes Übermitteln von Daten bei unidirektionalem Datenverkehr.
  • Ein erstes Datenverarbeitungssystem kann beispielsweise gegen einen Angriff von außen geschützt werden, indem eingehende Datenverbindungen unterbunden werden. Gelegentlich kann es erforderlich sein, Daten an ein zweites Verarbeitungssystem zu übermitteln, beispielsweise wenn Backup- oder Log-Dateien ausgelagert werden sollen. Während der Übertragung von Daten über einen Kommunikationskanal zwischen den Verarbeitungssystemen können sich jedoch Fehler in die übertragenen Daten einschleichen, sodass die Daten empfängerseitig unbrauchbar sein können.
  • Wegen der unidirektionalen Übermittlung hat das Datenverarbeitungssystem keine Kenntnis darüber, ob ein Transfer erfolgreich war oder nicht. Zur Erhöhung der Wahrscheinlichkeit einer erfolgreichen Übertragung können die Daten mehrfach übertragen werden. Dies erfordert jedoch viel Bandbreite oder eine lange Übertragungsdauer.
  • Ein übliches Übertragungsverfahren für Daten über einen Kommunikationskanal verwendet eine Rückwärts-Fehlerkorrektur. Die Daten werden in Pakete unterteilt und einzeln übertragen. Jedes Paket kann mit einer Prüfsumme versehen werden, anhand derer der Empfänger einen Übertragungsfehler detektieren kann. In diesem Fall meldet er das betroffene Paket an den Sender und dieser übermittelt das Paket erneut. Ist die Kommunikation vom Empfänger zum Sender nicht möglich, so kann ein solches Übertragungsverfahren nicht verwendet werden.
  • Eine der vorliegenden Erfindung zu Grunde liegende Aufgabe besteht in der Angabe einer verbesserten Technik, mit der Daten von einem Sender an einen Empfänger über einen Kommunikationskanal auch dann mit erhöhter Wahrscheinlichkeit korrekt übertragen werden können, wenn der Kommunikationskanal fehlerbehaftet ist und über ihn übermittelte Daten mit einer gewissen Wahrscheinlichkeit verändert werden können. Die Erfindung löst diese Aufgabe mittels der Gegenstände der unabhängigen Ansprüche. Unteransprüche geben bevorzugte Ausführungsformen wieder.
  • Dazu wird vorgeschlagen, zur Übermittlung mehrere unidirektionale Kanäle zu verwenden und die Daten auf die Kanäle in einer vorbestimmten Weise zu verteilen.
  • Ein erstes Verfahren zum unidirektionalen Datentransfer von Daten von einem Sender an einen Empfänger umfasst Schritte des Demultiplexens der Daten in mehrere Datenströme; des Codierens der Datenströme jeweils mittels einer Vorwärts-Fehlerschutz-Codierung; des Versendens der Datenströme über zugeordnete Kommunikationskanäle vom Sender an den Empfänger; des Korrigierens eines möglichen Fehlers in einem der empfangenen Datenströme auf der Basis der Vorwärts-Fehlerschutz-Codierung; des Entfernens der Vorwärts-Fehlerschutz-Codierung aus den Daten; und des Multiplexens der Daten.
  • Erfindungsgemäß kann eine Vorwärts-Fehlerkorrektur mit einer Übertragung über mehrere Kommunikationskanäle kombiniert werden, um eine mit erhöhter Wahrscheinlichkeit korrekte und angemessen effiziente Übermittlung der Daten zu realisieren. Dabei können unterschiedliche Kanäle unterschiedliche Eigenschaften aufweisen und insbesondere unterschiedliche Übertragungsgeschwindigkeiten unterstützen. Im Gegensatz zur Mehrfach-Übertragung der kompletten Daten kann eine erhebliche Übertragungskapazität eingespart werden.
  • Die Vorwärts-Fehlerschutz-Codierung eines Datenstroms kann eine ausreichende Menge redundanter Information beisteuern um eine Verfälschung der Daten während der Übermittlung nicht nur zu erkennen, sondern auch zu beheben. Üblicherweise kann die Menge der durch die Vorwärts-Fehlerschutz-Codierung eingestreuten Informationen gesteuert werden, wobei die Anzahl von korrigierbaren Fehlern in den übertragenen Daten mit der Menge der redundanten Informationen ansteigen kann. Üblicherweise kann die Fehlerkorrektur derart durchgeführt werden, dass auch bestimmt wird, ob die Fehlerbehebung erfolgreich war oder nicht. Insbesondere kann bestimmt werden, wenn mehr Fehler in den Daten vorliegen als behoben werden können. Das Verfahren kann über eine Anzahl Kanäle und/oder die Wahl oder Parametrierung einer zugeordneten Vorwärts-Fehlerschutz-Codierung gut skalierbar sein. Die Wahrscheinlichkeit einer erfolgreichen, also unverfälschten Übermittlung kann auf der Basis der redundanten Informationen und Übertragungsparametern bestimmt werden. Beispielsweise kann bestimmt werden, dass ein Ein-Bit-Fehler durchschnittlich alle 100 Jahre und ein Zwei-Bit-Fehler durchschnittlich alle 500 Jahre auftritt. Für bestimmte Anwendungen, etwa die Übermittlung von Logs, kann dies als „sichere Übermittlung“ akzeptiert werden.
  • Entsprechend werden auf Empfängerseite auch mehrere Decodierer in umgekehrter Reihenfolge parallel oder seriell betrieben. Als Besonderheit tauschen diese Decodierer untereinander statistische Informationen zur Fehlerkorrektur aus und führen den Decodierungsprozess iterativ aus, wodurch sich für einen vergleichsweise geringen algorithmischen Aufwand eine sehr leistungsstarke Fehlerkorrektur ergibt. Zwar ist die Anzahl der Decodierer gleich der Anzahl der Codierer, die Anzahl der Iterationen beim Decodierungsprozess im Regelfall aber größer als die Anzahl der Decodierer.
  • In einer Ausführungsform wird wenigstens einer der Datenströme mit einer Vorwärts-Fehlerschutz-Codierung in Abhängigkeit eines ihm zugeordneten Kommunikationskanals codiert. So können Kommunikationskanäle mit unterschiedlichen Störungswahrscheinlichkeiten verbessert unterstützt werden. Ein Hinzufügen von mehr redundanter Information als für den Kommunikationskanal angemessen ist, kann vermieden werden.
  • Ein zweites Verfahren zum unidirektionalen Datentransfer von Daten von einem Sender an einen Empfänger umfasst Schritte des Codierens der Daten mittels einer Vorwärts-Fehlerschutz-Codierung; des Demultiplexens der Daten in mehrere Datenströme; des Versendens der Datenströme über zugeordnete Kommunikationskanäle vom Sender an den Empfänger; des Multiplexens der Daten seitens des Empfängers; des Korrigierens eines möglichen Fehlers in den empfangenen Daten auf der Basis der Vorwärts-Fehlerschutz-Codierung; und des Entfernens der Vorwärts-Fehlerschutz-Codierung aus den Daten.
  • Im Unterschied zum oben angegebenen ersten Verfahren erfolgt hier das Codieren vor dem Demultiplexen. Insbesondere wenn davon ausgegangen werden kann, dass die Kommunikationskanäle ähnliche Störungswahrscheinlichkeiten aufweisen, können auftretende Fehler verbessert korrigiert werden. Merkmale oder Vorteile können zwischen den Verfahren übertragen werden.
  • Die Datenströme können beispielsweise mittels UDP (User Datagram Protocol) versandt werden. Dazu können die Daten in Blöcke unterteilt werden, die mittels UDP transportierbar sind. Eine Fragmentierung über mehrere UDP-Pakete kann erfolgen. UDP ist als unbestätigtes Übertragungsprotokoll weit verbreitet, sodass bei der Wahl von Netzwerkkomponenten eine vergrößerte Auswahl bestehen kann. Außerdem kann die Übertragung über ein bestehendes, möglicherweise auch öffentliches Netzwerk erfolgen. UDP ist im RFC768 beschrieben eine Variante UDP-Lite im RFC3828. Praktisch kann auch jedes andere unidirektionale Protokoll verwendet werden.
  • Die Vorwärts-Fehlerschutz-Codierung kann in Abhängigkeit einer Art zu übermittelnder Daten gewählt sein. So können Textdaten, die beispielsweise als Logs anfallen können, mit einer anderen Vorwärts-Fehlerschutz-Codierung abgesichert werden als ein Videodatenstrom, oder Binärdaten eines ausführbaren Programms. Bestimmte Muster wie eine Verteilung von digitalen Zeichen oder eine Wiederholung von Bitsequenzen kann dabei speziell berücksichtigt werden. Die Art der Daten kann automatisch bestimmt werden oder als Parameter vorgegeben sein.
  • Die Vorwärts-Fehlerschutz-Codierung kann auch in Abhängigkeit einer Übermittlungszeit und/oder Übermittlungsdauer gewählt sein. Ist beispielsweise bekannt, dass zu bestimmten Uhrzeiten mit einem niedrigeren Datendurchsatz und/oder einer höheren Wahrscheinlichkeit von Bitfehlern zu rechnen ist, so kann die Vorwärts-Fehlerschutz-Codierung in diesen Zeiten mehr redundante Information beisteuern, um eine verbesserte Kompensation von Fehlern zu erlauben.
  • In einer Variante des Verfahrens sind zu übermittelnde Daten in einer Datei enthalten, wobei die Datei in mehrere Teilstücke unterteilt wird; und die Teilstücke jeweils mittels eines Verfahrens nach einem der vorangehenden Ansprüche übermittelt werden. Dabei können die Teilstücke gleichzeitig übermittelt werden. Die Datei kann beispielsweise in aufeinander folgende Abschnitte unterteilt werden und die Abschnitte können miteinander verschränkt übermittelt werden. So kann an jedem Abschnitt ein verschiebbares Fenster („sliding window“) gebildet werden, in welche Daten übertragen werden. Die Fenster der Abschnitte können in gleichem Maß über die Daten bewegt werden. Dies kann insbesondere bei einer sehr großen Datei vorteilhaft sein.
  • Eine Zuordnung von Datenströmen zu Kommunikationskanälen kann für wenigstens zwei der Teilstücke unterschiedlich sein. Dadurch kann ein systematischer Fehler unterbunden werden, der entstehen kann, wenn Teile der Abschnitte zyklisch synchronisiert übertragen werden. Eine Bestimmungssicherheit für einen Fehler und eine Wahrscheinlichkeit für die Behebbarkeit eines Fehlers können erhöht sein.
  • Die empfangenen Daten können mit der enthaltenen Vorwärts-Fehlerschutz-Codierung abgespeichert werden und die Vorwärts-Fehlerschutz-Codierung kann erst zum Zugriff auf die Daten entfernt werden. Dadurch kann ein möglicher Fehler im Bereich eines Datenspeichers ebenfalls kompensiert werden. In einer Ausführungsform können empfangene Daten zunächst auf Übertragungsfehler überprüft werden. Traten keine Fehler auf, so können die empfangenen Daten unverändert abgespeichert werden. Müssen einer oder mehrere Fehler korrigiert werden, können die redundanten Informationen nach der Korrektur neu erstellt werden, bevor die Daten abgespeichert werden.
  • Eine Sendevorrichtung zum unidirektionalen Datentransfer von Daten an einen Empfänger umfasst einen Demultiplexer, der zum Demultiplexen von Daten eingerichtet ist; einen Codierer, der zum Codieren von Daten mittels einer Vorwärts-Fehlerschutz-Codierung eingerichtet ist; Schnittstellen zur Verbindung mit mehreren Kommunikationskanälen; und eine Verarbeitungseinrichtung. Dabei ist die Verarbeitungseinrichtung dazu eingerichtet, ein Demultiplexen der Daten, ein Versehen der Daten mit einer Vorwärts-Fehlerschutz-Codierung und ein Versenden der Daten zu steuern. Diese Variante kann zu einem hierin beschriebenen ersten Verfahren korrespondieren. Eine weitere Sendevorrichtung kann zu einem hierin beschriebenen zweiten Verfahren korrespondieren. Hierbei können Positionen des Demultiplexers und des Codierers bezüglich des Datenflusses vertauscht sein. Vorteile oder Merkmale der Sendevorrichtungen untereinander oder zwischen einer Sendevorrichtung und einem korrespondierenden Verfahren können austauschbar sein.
  • Der Kommunikationskanal kann mittels einer Datendiode mit einer der Schnittstellen verbunden sein, um ein Empfangen von Daten von einem der Kommunikationskanäle zu verhindern. Mehrere Kommunikationskanäle können jeweils mittels einer zugeordneten Datendiode abgesichert sein. Jede Datendiode kann einen eigenen Kommunikationskanal realisieren. Eine Datendiode stellt eine rein unidirektionale Übertragung sicher. Zum Schutz der Sendevorrichtung kann eine ausgehende Datendiode vorgesehen sein, die ein Empfangen von Daten verhindert. Die Datendiode kann in Form eines Netzwerkprotokollierers („Data Capture Unit“) realisiert sein, der derart eingerichtet werden kann, eine Datenübertragung zwischen zwei Netzwerkkomponenten rückwirkungsfrei abzutasten. Ein Netzwerkprotokollierer kann deutlich kostengünstiger als eine speziell ausgebildete Datendiode sein. Eine Datenkommunikation könnte zwischen dem Codierer (oder, korrespondierend zum zweiten Verfahren dem Demultiplexer) und einem Blindgerät (Nulldevice) mittels des Netzwerkprotokollierers abgetastet und über den Kommunikationskanal ausgesandt werden. Das Blindgerät kann die Daten vollständig verwerfen.
  • Eine Empfangsvorrichtung zum unidirektionalen Datentransfer von Daten von einem Sender umfasst Schnittstellen zur Verbindung mit mehreren Kommunikationskanälen; einen Multiplexer, der zum Multiplexen von Daten eingerichtet ist; einen Decodierer, der zum Decodieren von Daten eingerichtet ist, die mit einer Vorwärts-Fehlerschutz-Codierung versehen sind; und eine Verarbeitungseinrichtung. Dabei ist die Verarbeitungseinrichtung dazu eingerichtet, ein Empfangen der Daten, ein Multiplexen der Daten und ein Decodieren der Daten zu steuern. Diese Ausführungsform kann zu einem ersten hierin beschriebenen Verfahren korrespondieren. Für eine Anwendung in Verbindung mit einem hierin beschriebenen zweiten Verfahren können der Multiplexer und der Decodierer bezüglich eines Datenflusses vertauschte Positionen aufweisen. Vorteile oder Merkmale der Empfangsvorrichtungen können untereinander oder mit den zugeordneten Sendevorrichtunten bzw. korrespondierenden Verfahren austauschbar sein.
  • Der Kommunikationskanal kann mittels einer Datendiode mit den Schnittstellen verbunden sein, um ein Versenden von Daten durch den Empfänger an eine andere Stelle zu verhindern. Zum Schutz der Empfangsvorrichtung kann eine eingehende Datendiode vorgesehen sein, die ein Senden von Daten verhindert.
  • Ein System umfasst eine hierin beschriebene Sendevorrichtung und eine hierin beschriebene Empfangsvorrichtung. Dabei sind bevorzugt die Schnittstellen der Sendevorrichtung paarweise mit denen der Empfangsvorrichtung verbunden.
  • Die oben beschriebenen Eigenschaften, Merkmale und Vorteile dieser Erfindung sowie die Art und Weise, wie diese erreicht werden, werden klarer und deutlicher verständlich im Zusammenhang mit der folgenden Beschreibung der Ausführungsbeispiele, die im Zusammenhang mit den Zeichnungen näher erläutert werden, wobei
    • 1 ein beispielhaftes System;
    • 2 ein beispielhaftes Verfahren; und
    • 3 eine Variante des Verfahrens

    darstellen.
  • 1 zeigt ein beispielhaftes System 100 zur Übertragung von Daten zwischen einer Sendevorrichtung 105 und einer Empfangsvorrichtung 110 über mehrere Kommunikationskanäle 115. Es wird davon ausgegangen, dass die Kommunikationskanäle 115 von der gleichen Art sind, beispielsweise hinsichtlich Bandbreite, Übertragungsmedium, Latenzzeit, Fehlerrate oder Verfügbarkeit. Es können aber auch mehr oder weniger stark unterschiedliche Kommunikationskanäle 115 unterstützt werden. 115. Die Sendevorrichtung 105 kann Teil einer größeren Datenverarbeitungsanlage sein und ist dazu eingerichtet, Daten auszusenden, aber nicht zu empfangen. Die Empfangseinrichtung 110 kann Teil ebenfalls einer größeren Datenverarbeitungsanlage sein und ist umgekehrt dazu eingerichtet, Daten zu empfangen, aber nicht auszusenden. Eine Kommunikation soll ausschließlich von der Sendevorrichtung 105 zur Empfangsvorrichtung 110 fließen, ein Rückkanal, auch nur zur Bestätigung eines übertragenen Datenblocks, ist nicht vorgesehen.
  • Die Sendevorrichtung 105 umfasst einen optionalen Datenspeicher 120, einen Demultiplexer 125, einen Codierer 130, eine oder mehrere Schnittstellen 135 und bevorzugt eine Verarbeitungseinrichtung 132. Zwischen einer Schnittstelle 135 und einem der Kommunikationskanäle 115 kann eine ausgehende Datendiode 140 vorgesehen sein.
  • Der Datenspeicher 120 ist zur Ablage einer Datei oder bevorzugt strukturierter Daten eingerichtet, die an die Empfangseinrichtung 110 übermittelt werden sollen. Der Datenspeicher 120 kann auch durch eine Schnittstelle ersetzt sein, über die zu übertragende Daten bezogen werden können.
  • Der Demultiplexer 125 ist dazu eingerichtet, die zu übertragenden Daten in mehrere Datenströme aufzuteilen, wobei bevorzugt jedem Kommunikationskanal ein Datenstrom zugeordnet ist und umgekehrt. Zur Aufteilung können sequentiell vorliegende Daten in Pakete zerlegt und diese unterschiedlichen Datenströmen zugewiesen werden, beispielsweise zyklisch. Die Aufteilung kann in bekannter Weise derart erfolgen, dass übertragene Pakete später wieder zu den Originaldaten zusammengefügt werden können, beispielsweise indem die Pakete Sequenznummern tragen.
  • Der Codierer 130 ist dazu eingerichtet, Daten, die er vom Demultiplexer 125 erhält, mit einer Vorwärts-Fehlerschutz-Codierung zu codieren. Dabei fügt er den Daten systematisch redundante Informationen hinzu. Gegebenenfalls werden auch Prüfsummen über eines oder mehrere Pakete gebildet und eingefügt, um das Bestimmen eines Fehlers in den Daten zu ermöglichen. Für jeden Datenstrom 115 kann ein Codierer 130 vorgesehen sein oder der Codierer 130 kann unabhängig auf mehreren Datenströmen 115 arbeiten. Auch ein kombinierter Betrieb, bei dem er mehrere Datenströme 115 in abhängiger Weise codiert, ist möglich. Bevorzugt stellt der Codierer 130 Datenpakete bereit, die mittels UDP transportiert werden können.
  • Die Schnittstelle 135 ist dazu eingerichtet, ausgehende Daten an ein Übertragungsmedium eines zugeordneten Kommunikationskanals 115 auszugeben. Hier kann insbesondere eine Umsetzung von Informationen in ein physikalisches Phänomen wie einen Licht- oder Stromwert erfolgen. In einer Ausführungsform ist eine einzige Schnittstelle 135 für mehrere Datenströme und Kommunikationskanäle 115 vorgesehen.
  • Die Datendiode 140 ist dazu eingerichtet, Daten nur in einer vorbestimmten Richtung zu befördern, die in 1 durch die Pfeilrichtung gegeben ist. Das aus der Elektrotechnik entlehnte Symbol einer Diode zeigt, dass ein Informationsfluss entgegen der Pfeilrichtung unterbunden ist. Eine solche Kommunikation wird auch Simplex-Kommunikation genannt. Zur Realisierung einer Datendiode 140 kann eine dedizierte kommerzielle Lösung verwendet werden. Alternativ kann ein Netzwerkprotokollierer verwendet werden, der Daten an den Kommunikationskanal unidirektional und rückwirkungsfrei bereitstellen kann. Eine solche Einrichtung ist auch als „Data Capture Unit“ bekannt. In einer anderen als der gezeigten Ausführungsform sind die Datendiode 140 und die Schnittstelle 135 in ihren Positionen vertauscht.
  • Die Verarbeitungseinrichtung 132 umfasst bevorzugt einen programmierbaren Mikrocomputer oder Mikrocontroller und ist zur Steuerung von Komponenten der Sendevorrichtung 105 eingerichtet. Dabei kann die Verarbeitungseinrichtung 132 auch eines oder mehrere der weiteren Elemente der Sendevorrichtung 105 umfassen.
  • In der vorliegenden Ausführungsform werden seitens der Sendevorrichtung 105 zu übertragende Daten zuerst demultiplexiert und dann codiert. In einer anderen Ausführungsform können auch zuerst eine Codierung und danach eine Demultiplexierung erfolgen. Dazu können die Elemente 125 und 130 in ihren Positionen in der Sendevorrichtung 105 vertauscht sein; zwischen ihnen ist dann nur noch eine statt wie dargestellt mehrerer Verbindungen nötig.
  • Die Empfangsvorrichtung 110 arbeitet in komplementärer Weise zur Sendevorrichtung 105. Sie umfasst die im Wesentlichen gleichen Elemente wie die Sendevorrichtung 105, nur sind an Stelle des Multiplexers 125 ein Demultiplexer 145 und an Stelle des Codierers 130 ein Decodierer 150 vorgesehen. Alle oben bezüglich der Sendevorrichtung 105 beschriebenen Variationen sind hier auch möglich. Varianten der Sende- und der Empfangsvorrichtung 105, 110 können unabhängig voneinander gewählt werden, allerdings müssen die Reihenfolgen von Demultiplexen und Codieren seitens der Sendevorrichtung 105 und Decodieren und Multiplexen seitens der Empfangsvorrichtung 110 aufeinander abgestimmt sein.
  • Das Demultiplexen und Decodieren erfolgt in umgekehrter Reihenfolge gegenüber der Sendevorrichtung 105. In der dargestellten Ausführungsform also werden die über die Schnittstellen 135 empfangenen Datenströme empfängerseitig zunächst jeweils mittels des Decodierers 150 decodiert und dann mittels des Multiplexers 145 multiplexiert. In einer anderen Ausführungsform, bei der senderseitig zuerst ein Codieren und dann ein Demultiplexieren erfolgen, werden empfängerseitig zuerst ein Multiplexieren und dann ein Decodieren durchgeführt. Das Ergebnis ist in jedem Fall, dass die übermittelten Daten wieder im Originalformat vorliegen und im Datenspeicher 120 abgelegt werden können. Auch dieser Datenspeicher 120 kann durch eine Schnittstelle ersetzt werden, über welche die Daten bereitgestellt werden.
  • Das Demultiplexieren umfasst ein Zusammenführen von Fragmenten zu einer Datei oder einem Datenstrom. Das Decodieren umfasst das Entfernen von redundanten Informationen, die seitens der Sendevorrichtung 105 hinzugefügt wurden. Dabei wird bevorzugt zunächst auf der Basis von Prüfsummen über bestimmte Abschnitte von Daten überprüft, ob während der Übertragung ein Defekt an den Daten eingetreten ist. Für einen Abschnitt können üblicherweise Fehler bis zu einer ersten vorbestimmten Anzahl von defekten Bits bestimmt werden. Fehler bis zu einer zweiten vorbestimmten Anzahl von Bits können auch repariert werden, wobei die zweite Anzahl üblicherweise kleiner als die erste ist.
  • In einer weiteren Ausführungsform kann das Decodieren auch ausgesetzt werden, bis die empfangenen Daten gebraucht werden. Dazu können die bevorzugt demultiplexierten, aber noch nicht decodierten Daten zunächst im Datenspeicher 120 abgelegt werden. Soll auf die Daten zugegriffen werden, kann die erforderliche Decodierung unmittelbar durchgeführt werden.
  • 2 zeigt ein schematisches Ablaufdiagramm eines Verfahrens 200 zur Übermittlung von Daten, insbesondere mittels eines Systems 100 wie in 1 dargestellt ist. Zunächst liegen Daten in einem exemplarischen Block vor, der sechs Einheiten umfasst. Eine Einheit kann beispielsweise einem UDP-Paket bzw. dessen Nutzlast entsprechen.
  • In einem ersten Schritt 205 werden die Daten mit einer Vorwärts-Fehlerschutz-Codierung codiert, wobei Informationen hinzugefügt werden, sodass acht Einheiten Daten entstehen. Die zusätzlichen Informationen können an beliebigen Stellen hinzugefügt werden; üblicherweise erfolgt eine gewisse Verschränkung, bei der die neuen Informationen einigermaßen gleichmäßig über die zu sichernden Nettodaten verteilt werden. Wie viele Informationen hinzugefügt werden, kann üblicherweise gesteuert werden, wobei allgemein mehr hinzugefügte Informationen zu einer robusteren Übertragung führen können.
  • Die Vorwärts-Fehlerschutz-Codierung kann insbesondere einen Block-Code, einen kontinuierlichen Code oder einen Turbo Code umfassen. Ein Block-Code arbeitet stets auf einem Datenblock vorbestimmter Länge; bekannte Block-Codes umfassen Reed-Solomon, Reed-Muller, Golay, Multidimensionale Parity, MDS, Hadamard, Expander oder Hamming. Ein kontinuierlicher Code, auch Faltungscode genannt, erlaubt die Übermittlung eines potentiell endlosen Datenstroms. Allerdings ist für eine gegebene Situation kein systematisches Verfahren zur Erzeugung eines passenden Faltungscodes bekannt. Man versucht, Eigenarten der zu übertragenden Daten oder des Übertragungsmediums durch passende Wahl bestimmter Parameter des Faltungscodes zu modellieren. Häufig muss eine große Zahl möglicher Faltungscodes in einer Simulation auf seine Anwendbarkeit geprüft werden. Das Decodieren eines Faltungscodes erfolgt üblicherweise mittels des Viterbi-Algorithmus.
  • Ein Turbo-Codierer besteht aus mindestens zwei parallel oder seriell geschalteten Codierern für die elementare Codierung. Die elementaren Codierer stellen jeweils für sich einen bestimmten Kanalcode dar. Der erste Codierer erhält die Nutzdaten in unveränderter Form, und dessen Ausgabe wird über einen sogenannten Interleaver, welcher die Datenreihenfolge nach bestimmten Regeln umstellt, an den zweiten Codierer als Eingabe weitergeleitet. Der zweite Codierer liefert, bei nur zwei Codierern, schließlich die zu übertragende Datenfolge.
  • In einem Schritt 210 werden die codierten Daten bevorzugt multiplexiert. Dabei wird mehreren Kommunikationskanälen 115 jeweils eine Abfolge von Dateneinheiten zugeordnet. Das Multiplexieren kann berücksichtigen, dass unterschiedliche Kommunikationskanäle 115 unterschiedliche Datendurchsätze aufweisen können. Ein Kommunikationskanal 115 mit hohem Datendurchsatz kann mehr Dateneinheiten pro Zeit erhalten als ein Kommunikationskanal 115 mit niedrigerem Datendurchsatz. Anschließend werden die Daten in einem Schritt 215 von der Sendevorrichtung 105 an die Empfangsvorrichtung 110 übermittelt.
  • In einem Schritt 220 werden die Daten multiplexiert, sodass die einzelnen Einheiten wieder in der gleichen Reihenfolge vorliegen wie vor dem Schritt 210. Das Resultat kann optional in einem Schritt 225 abgespeichert werden. Zu einem anderen Zeitpunkt, beispielsweise wenn auf die abgespeicherten Daten zugegriffen werden soll, kann in einem Schritt 230 eine Decodierung erfolgen, bei der die redundanten Informationen, die im Schritt 205 hinzugefügt wurden, wieder entfernt werden. Danach können die Daten übertragen oder erneut abgespeichert werden.
  • 3 zeigt eine Variante 300 des Verfahrens 200 von 2. Zur Übertragung einer Datei 305 soll diese nicht sequentiell verarbeitet, sondern in mehrere Teile 310 zerlegt werden, um dann die Teile 310 jeweils auf eine hierin bereits beschriebene Art und Weise über die Kommunikationskanäle 115 zu übermitteln. Entscheidend ist hierbei, dass die Teile 310 nebenläufig, gleichzeitig oder verschränkt über die Kommunikationskanäle 115 übertragen werden. Außerdem ist bevorzugt, dass eine Verteilung von Dateneinheiten auf Kommunikationskanäle 115 (vgl. 2) bei mindestens zwei der erzeugten Datenströme unterschiedlich ist, um die Entropie auf der Übertragungsstrecke zu erhöhen.
  • Im vorliegenden Beispiel sind vier Teile 310 und vier Kommunikationskanäle 115 vorgesehen. Im Rahmen der Darstellung sollen von jedem Teil 310 acht Dateneinheiten übertragen werden. Dazu werden über einen ersten Kommunikationskanal 115.1 von einem ersten Teil 310.1 die Einheiten 1 und 5 übertragen, von einem zweiten Teil 310.2 die Einheiten 1 und 5 und von einem dritten Teil 310.3 die Einheiten 1 und 5. Die über die anderen Kommunikationskanäle 115 übertragenen Einheiten der Teile 310 sind aus 3 abzulesen.
  • Die beschriebene Vorgehensweise stellt sicher, dass von allen Teilen 310 Einheiten übertragen werden. Ein Fenster von Daten jedes Teils 310, die sich in der Übertragung befinden, wird dabei kontinuierlich bewegt. Man spricht auch von einem „Sliding Window“-Ansatz.
  • Obwohl die Erfindung im Detail durch das bevorzugte Ausführungsbeispiel näher illustriert und beschrieben wurde, so ist die Erfindung nicht durch die offenbarten Beispiele eingeschränkt und andere Variationen können vom Fachmann hieraus abgeleitet werden, ohne den Schutzumfang der Erfindung zu verlassen.

Claims (15)

  1. Verfahren (200) zum unidirektionalen Datentransfer von Daten von einem Sender (105) an einen Empfänger (110), wobei das Verfahren (200) folgende Schritte umfasst: - Demultiplexen (210) der Daten in mehrere Datenströme; - Codieren (205) der Datenströme jeweils mittels einer Vorwärts-Fehlerschutz-Codierung; - Versenden (215) der Datenströme über zugeordnete Kommunikationskanäle vom Sender an den Empfänger; - Korrigieren (230) eines möglichen Fehlers in einem der empfangenen Datenströme auf der Basis der Vorwärts-Fehlerschutz-Codierung; - Entfernen (230) der Vorwärts-Fehlerschutz-Codierung aus den Daten; und - Multiplexen (220) der Daten.
  2. Verfahren (200) nach Anspruch 1, wobei wenigstens einer der Datenströme mit einer Vorwärts-Fehlerschutz-Codierung in Abhängigkeit eines ihm zugeordneten Kommunikationskanals (115) codiert wird.
  3. Verfahren (200) zum unidirektionalen Datentransfer von Daten von einem Sender an einen Empfänger, wobei das Verfahren (200) folgende Schritte umfasst: - Codieren (205) der Daten mittels einer Vorwärts-Fehlerschutz-Codierung; - Demultiplexen (210) der Daten in mehrere Datenströme; - Versenden (215) der Datenströme über zugeordnete Kommunikationskanäle (115) vom Sender an den Empfänger; - Multiplexen (220) der Daten seitens des Empfängers; - Korrigieren (230) eines möglichen Fehlers in den empfangenen Daten auf der Basis der Vorwärts-Fehlerschutz-Codierung; und - Entfernen (230) der Vorwärts-Fehlerschutz-Codierung aus den Daten.
  4. Verfahren (200) nach einem der vorangehenden Ansprüche, wobei die Datenströme mittels UDP versandt werden.
  5. Verfahren (200) nach einem der vorangehenden Ansprüche, wobei die Vorwärts-Fehlerschutz-Codierung in Abhängigkeit einer Art zu übermittelnder Daten gewählt ist.
  6. Verfahren (200) nach einem der vorangehenden Ansprüche, wobei die Vorwärts-Fehlerschutz-Codierung in Abhängigkeit einer Übermittlungszeit und/oder Übermittlungsdauer gewählt ist.
  7. Verfahren (200), wobei zu übermittelnde Daten in einer Datei (305) enthalten sind; die Datei (305) in mehrere Teilstücke (310) unterteilt wird; und die Teilstücke (310) jeweils mittels eines Verfahrens (200) nach einem der vorangehenden Ansprüche übermittelt werden.
  8. Verfahren (200) nach Anspruch 7, wobei die Teilstücke (310) gleichzeitig übermittelt werden.
  9. Verfahren (200) nach Anspruch 7 oder 8, wobei eine Zuordnung von Datenströmen zu Kommunikationskanälen (115) für wenigstens zwei der Teilstücke (310) unterschiedlich ist.
  10. Verfahren (200) nach einem der vorangehenden Ansprüche, wobei die empfangenen Daten mit der enthaltenen Vorwärts-Fehlerschutz-Codierung abgespeichert (225) werden und die Vorwärts-Fehlerschutz-Codierung erst zum Zugriff auf die Daten entfernt (230) wird.
  11. Sendevorrichtung (105) zum unidirektionalen Datentransfer von Daten an einen Empfänger (110), wobei die Sendevorrichtung (105) folgendes umfasst: - einen Demultiplexer (125), der zum Demultiplexen von Daten eingerichtet ist; - einen Codierer (130), der zum Codieren von Daten mittels einer Vorwärts-Fehlerschutz-Codierung eingerichtet ist; - Schnittstellen (135) zur Verbindung mit mehreren Kommunikationskanälen (115); und - eine Verarbeitungseinrichtung (132), die dazu eingerichtet ist, ein Demultiplexen der Daten, ein Versehen der Daten mit einer Vorwärts-Fehlerschutz-Codierung und ein Versenden der Daten zu steuern.
  12. Sendevorrichtung nach Anspruch 11, wobei der Kommunikationskanal (115) mittels einer Datendiode (140) mit einer der Schnittstellen verbunden ist, um ein Empfangen von Daten von einem der Kommunikationskanäle (115) zu verhindern.
  13. Empfangsvorrichtung (110) zum unidirektionalen Datentransfer von Daten von einem Sender (105), wobei die Empfangsvorrichtung (110) folgendes umfasst: - Schnittstellen (135) zur Verbindung mit mehreren Kommunikationskanälen (115); - einen Multiplexer (145), der zum Multiplexen von Daten eingerichtet ist; - einen Decodierer (150), der zum Decodieren von Daten eingerichtet ist, die mit einer Vorwärts-Fehlerschutz-Codierung versehen sind; - eine Verarbeitungseinrichtung (132), die dazu eingerichtet ist, ein Empfangen der Daten, ein Multiplexen der Daten und ein Decodieren der Daten zu steuern.
  14. Empfangsvorrichtung (110) nach Anspruch 13, wobei der Kommunikationskanal (115) mittels einer Datendiode mit den Schnittstellen verbunden ist, um ein Versenden von Daten über einen der Kommunikationskanäle (115) zu verhindern.
  15. System (100), umfassend eine Sendevorrichtung (105) nach einem der Ansprüche 11 oder 12 und eine Empfangsvorrichtung (110) nach einem der Ansprüche 13 oder 14.
DE102018213065.5A 2018-08-03 2018-08-03 Fehlerkorrekturverfahren für unidirektionalen Datentransfer Ceased DE102018213065A1 (de)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE102018213065.5A DE102018213065A1 (de) 2018-08-03 2018-08-03 Fehlerkorrekturverfahren für unidirektionalen Datentransfer
PCT/EP2019/068402 WO2020025266A1 (de) 2018-08-03 2019-07-09 Fehlerkorrekturverfahren für unidirektionalen datentransfer
EP19745995.1A EP3797482A1 (de) 2018-08-03 2019-07-09 Fehlerkorrekturverfahren für unidirektionalen datentransfer
CN201980051692.3A CN112470413A (zh) 2018-08-03 2019-07-09 用于单向数据传输的纠错方法
US17/260,300 US20210288749A1 (en) 2018-08-03 2019-07-09 Error correction method for a unidirectional data transfer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102018213065.5A DE102018213065A1 (de) 2018-08-03 2018-08-03 Fehlerkorrekturverfahren für unidirektionalen Datentransfer

Publications (1)

Publication Number Publication Date
DE102018213065A1 true DE102018213065A1 (de) 2020-02-06

Family

ID=67480164

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018213065.5A Ceased DE102018213065A1 (de) 2018-08-03 2018-08-03 Fehlerkorrekturverfahren für unidirektionalen Datentransfer

Country Status (5)

Country Link
US (1) US20210288749A1 (de)
EP (1) EP3797482A1 (de)
CN (1) CN112470413A (de)
DE (1) DE102018213065A1 (de)
WO (1) WO2020025266A1 (de)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030002533A1 (en) * 2000-02-03 2003-01-02 Doron Rajwan Coding method
US20100021166A1 (en) * 2008-02-22 2010-01-28 Way Winston I Spectrally Efficient Parallel Optical WDM Channels for Long-Haul MAN and WAN Optical Networks
US20110260918A1 (en) * 2009-08-27 2011-10-27 Icomm Technologies Inc. Method and apparatus for a wireless mobile system implementing beam steering phase array antenna
EP2719105B1 (de) * 2011-06-11 2017-12-13 Samsung Electronics Co., Ltd. Vorrichtung und verfahren zum senden und empfangen von paketen in einem rundfunk- und kommunikationssystem

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2239876A3 (de) * 1997-06-19 2011-01-26 Kabushiki Kaisha Toshiba Informationsdaten-Multiplexübertragungssystem, dafür verwendeter Multiplexer und Demultiplexer, und Fehlerkorrekturkoder/dekoder
KR100674423B1 (ko) * 2001-01-19 2007-01-29 엘지전자 주식회사 송/수신 시스템 및 데이터 처리 방법
DE602005015768D1 (de) * 2005-03-29 2009-09-10 Thomson Licensing Ngs fountain kodierter signale
KR101738867B1 (ko) * 2010-07-07 2017-05-25 에스케이텔레콤 주식회사 오류정정을 위한 방송 신호 부호화 및 복호화 방법, 이를 위한 방송 신호 송수신 장치 및 이를 위한 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030002533A1 (en) * 2000-02-03 2003-01-02 Doron Rajwan Coding method
US20100021166A1 (en) * 2008-02-22 2010-01-28 Way Winston I Spectrally Efficient Parallel Optical WDM Channels for Long-Haul MAN and WAN Optical Networks
US20110260918A1 (en) * 2009-08-27 2011-10-27 Icomm Technologies Inc. Method and apparatus for a wireless mobile system implementing beam steering phase array antenna
EP2719105B1 (de) * 2011-06-11 2017-12-13 Samsung Electronics Co., Ltd. Vorrichtung und verfahren zum senden und empfangen von paketen in einem rundfunk- und kommunikationssystem

Also Published As

Publication number Publication date
US20210288749A1 (en) 2021-09-16
CN112470413A (zh) 2021-03-09
WO2020025266A1 (de) 2020-02-06
EP3797482A1 (de) 2021-03-31

Similar Documents

Publication Publication Date Title
WO2008089901A1 (de) Verfahren und anlage zur optimierten übertragung von daten zwischen einer steuereinrichtung und mehreren feldgeräten
DE69917307T2 (de) Vorrichtung und verfahren zur übertragung von punktierten oder wiederholten daten
DE19846721A1 (de) Verfahren zur Kodierung und Dekodierung und Vorrichtung zum Kodieren oder Dekodieren
EP0219917B1 (de) Vermittlungsanlage mit Fehlerkorrektur
EP1175047B1 (de) Verfahren und Anordnung zum Schutz gegen Paketverlusten bei einer paketorientierten Datenübertragung
DE10318068B4 (de) Verfahren und Vorrichtung zum Paket-orientierten Übertragen sicherheitsrelevanter Daten
EP0802651A2 (de) Fehlerrobustes Multiplexverfahren mit möglicher Retransmission
DE102018213065A1 (de) Fehlerkorrekturverfahren für unidirektionalen Datentransfer
DE102004036383A1 (de) Codier-und Decodierverfahren , sowie Codier- und Decodiervorrichtungen
WO2022189561A1 (de) Kommunikationsverfahren und kommunikationsteilnehmer
EP2605457A1 (de) Verfahren zum Übertragen von Nutzdaten
EP1511215B1 (de) Verfahren und Vorrichtung zur Datenübertragung gemä einem Hybrid-ARQ-Verfahren
DE102013201422B3 (de) Verfahren zum Wiederherstellen verlorengegangener und/ oder beschädigter Daten
DE102016201408B4 (de) Verfahren zum Übertragen von Daten
DE102011115100B3 (de) Verfahren zum Wiederherstellen von verloren gegangenen und/oder beschädigten Daten
DE102017203202A1 (de) Verfahren zum Übertragen von Nachrichten in einem Kommunikationsnetzwerk, Gateway und Kommunikationsnetzwerk
DE102010005702A1 (de) Codieren und Decodieren von Daten zur Übertragung über einen fehlerhaften Übertragungskanal
EP4236132A2 (de) Effizient übertragbare bitfolge mit eingeschränkter disparität und leitungskodierter vorwärtsfehlerkorrektur
DE102014215477B3 (de) Verfahren zum Übertragen von Daten
EP1720275B1 (de) Verfahren und Vorrichtung zum Auswählen von Korrektursymbolen
DE2445508A1 (de) Verfahren zur gesicherten uebertragung von in digitaler form vorliegender signale
DE102011103564B3 (de) Verfahren zur Wiederherstellung verlorener und/oder beschädigter Daten
DE102018208962A1 (de) Verfahren und System zum fehlerkorrigierenden Übertragen eines Datensatzes über eine unidirektionale Kommunikationseinheit
EP1317090A1 (de) Verfahren und Vorrichtung zum Codieren verschiedener Paketdaten für verschiedene Empfänger
WO2010072570A1 (de) Verfahren zum senden und empfangen eines datenblocks

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final