Title:
Verfahren zur Übertragung von Daten
Kind Code:
A1


Abstract:

Bei einem Verfahren zum Übertragen von Daten von mehreren Sendern zu einem gemeinsamen Empfänger, wobei die Empfänger ihre Daten über einen gemeinsamen Übertragungskanal an den Empfänger senden, wobei Daten von den Sendern unter Verwendung des Coded-Slotted-ALOHA (CSA)-Verfahrens an dem Empfänger gesendet werden, wird der Slot, in dem ein Sender sein Datenpaket übermitteln soll, vom Empfänger wie folgt bestimmt:
Erstellen eines bipartiten Graphen, wobei die Check-Nodes der Anzahl der verfügbaren Slots entsprechen und die Variable-Nodes der Anzahl der verfügbaren Sender entsprechen,
wobei der Umfang des bipartiten Graphen derart optimiert wird, dass kurze Schleifen im bipartiten Graphen vermieden werden,
Zuordnen mindestens eines Check-Nodes zu jedem Sender, wobei dieser Check-Node dem oder den Slots entspricht, in denen ein Sender seine Datenpakete übermitteln soll,
wobei der Empfänger dem Sender mitteilt, in welchen Slots sie ihre Datenpakete übertragen sollen. embedded image




Inventors:
Liva, Gianluigi, Dr. (81243, München, DE)
Application Number:
DE102016220515A
Publication Date:
04/19/2018
Filing Date:
10/19/2016
Assignee:
Deutsches Zentrum für Luft- und Raumfahrt e.V., 51147 (DE)
International Classes:
Domestic Patent References:
DE102014204651A1N/A2015-09-17



Other References:
E- Paolini, G. Liva, and M. Chiani, „High Throughout Random Access via Codes on Graphs: Coded Slotted ALOHA“, in Proc. 2011 IEEE Int. Conf. Commun., Kyoto, Japan, Jun. 2011
X. Hu, E. Eleftheriou, and D. Arnold, „Regular and irregular progressive edge-growth tanner graphs“, IEEE Trans. Inf. Theory, vol. 51, no. 1, pp. 386-398, Jan. 2005
A. Venkiah, D. Declercq, and C. Poulliat, „Design of cages with a randomized progressive edge-growth algorithm“, IEEE Commun. Lett., vol. 12, no. 4, pp. 301-303, Apr. 2008
Attorney, Agent or Firm:
dompatent von Kreisler Selting Werner - Partnerschaft von Patentanwälten und Rechtsanwälten mbB, 50667, Köln, DE
Claims:
Verfahren zum Übertragen von Daten von mehreren Sendern zu einem gemeinsamen Empfänger,
wobei die Empfänger ihre Daten über einen gemeinsamen Übertragungskanal an den Empfänger senden,
wobei Daten von den Sendern unter Verwendung des Coded-Slotted-ALOHA (CSA)-Verfahrens an dem Empfänger gesendet werden,
wobei der Slot, in dem ein Sender sein Datenpaket übermitteln soll, vom Empfänger wie folgt bestimmt wird:
- Erstellen eines bipartiten Graphen, wobei die Check-Nodes der Anzahl der verfügbaren Slots entsprechen und die Variable-Nodes der Anzahl der verfügbaren Sender entsprechen,
wobei der Umfang des bipartiten Graphen derart optimiert wird, dass kurze Schleifen im bipartiten Graphen vermieden werden,
- Zuordnen mindestens eines Check-Nodes zu jedem Sender, wobei dieser Check-Node dem oder den Slots entspricht, in denen ein Sender seine Datenpakete übermitteln soll,
wobei der Empfänger dem Sender mitteilt, in welchen Slots sie ihre Datenpakete übertragen sollen.

Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Umfang des bipartiten Graphen durch einen Progressive-Edge-Growth-Algorithmus optimiert wird.

Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass Daten beim Empfänger unter Verwendung eines Successive-Interference-Cancellation-Verfahrens wieder hergestellt werden.

Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass der Empfänger an die Sender den im Rahmen des Coded-Slotted-ALOHA-Verfahrens zu verwendenden Code mitteilt.

Description:

Die Erfindung betrifft ein Verfahren zum Übertragen von Daten von mehreren Sendern zu einem Empfänger über einen gemeinsam genutzten Übertragungskanal.

Aus dem Stand der Technik sind schlitzbasierte Randon-Access-Verfahren bekannt, in denen die Slots in Medium-Access-Control (MAC)-Frames zusammengefasst werden, die alle die gleiche Länge M (in Slots) aufweisen. Jeder Slot weist eine Zeitdauer Tslot, wobei der MAC-Frame eine Zeitdauer von Tframe aufweist, so dass M = Tframe /Tslot. Die Gesamtanzahl an Nutzern oder Sendern im System ist N = α•M, wobei α die normalisierte Nutzerpopulation ist. Die Nutzer sind untereinander hinsichtlich der Frames und der Slots synchronisiert. Jeder Sender unternimmt höchstens einen Versuch per MAC-Frame, ein Datenpaket (Burst) zu übertragen. Die Zeitdauer eines Bursts ist Tslot. Zu Beginn eines MAC-Frames generiert jeder Nutzer einen innerhalb des Frames zu übertragenden Burst mit einer Wahrscheinlichkeit von π, wobei π die Aktivierungswahrscheinlichkeit ist. Nutzer oder Sender, die innerhalb eines MAC-Frames einen Übertragungsversuch unternehmen, werden für diesen Frame als aktive Nutzer bezeichnet.

Informationen zum Stand der Technik können den folgenden Veröffentlichungen entnommen werden:

  1. [1] E- Paolini, G. Liva, and M. Chiani, „High Throughout Random Access via Codes on Graphs: Coded Slotted ALOHA“, in Proc. 2011 IEEE Int. Conf. Commun., Kyoto, Japan, Jun. 2011.
  2. [2] X. Hu, E. Eleftheriou, and D. Arnold, „Regular and irregular progressive edge-growth tanner graphs“, IEEE Trans. Inf. Theory, vol. 51, no. 1, pp. 386-398, Jan. 2005.
  3. [3] A. Venkiah, D. Declercq, and C. Poulliat, „Design of cages with a randomized progressive edge-growth algorithm“, IEEE Commun. Lett., vol. 12, no. 4, pp. 301-303, Apr. 2008.

Aus Veröffentlichung [1] ist das Coded-Slotted-ALOHA (CSA)-Protokoll bekannt. Vor seiner Übertragung wird der Burst eines aktiven Nutzers in k-Informationssegmente (oder Datensegmente) aufgeteilt, die jeweils dieselbe Länge in Bits aufweisen. Die k-Segmente werden dann unter Verwendung eines paketorientierten linearen Blockcodes codiert, wobei nh-codierte Segmente erzeugt werden, die alle dieselbe Länge wie die Datensegmente aufweisen. Für jede Übertragung wird der nh,k-Code durch den Nutzer zufällig aus einem Set C = {C1,C2,...,Cθ} von ϑ -Komponentencodes ausgewählt. Das Set C ist dem Empfänger ebenfalls bekannt. Sofern nicht anderweitig zum Ausdruck gebracht, wird davon ausgegangen, dass alle Komponentencodes binär sind. Für h∈ {1,2,...,θ} hat der Code Ch eine Länge von nh, eine Dimension k, und eine Rate Rh =k/nh und eine minimale Distanz dh ≥ 2. Ferner hat er keine Leersymbole.

Bei jeder Übertragung sucht ein Nutzer seinen lokalen Code aus dem Set C und zwar unabhängig von seinen vorher ausgewählten Codes und ferner ohne eine Koordination mit den anderen Nutzern. Der Code wird auf Basis einer Wahrscheinlichkeitsdichtefunktion λ={λh}h=1θembedded imageausgewählt, die dieselbe für alle Nutzer ist. Ein Nutzer, der einen Code Rh =k/nh für die Übertragung in einem MAC-Frame aussucht, wird als Typ-h-Nutzer für diesen Frame bezeichnet. Ein entsprechend codiertes Segment wird als ein Typ-h-Segment bezeichnet. Für h∈ {1,..,θ} ist ein Typ-h-codiertes Segment ausgestattet mit Informationen über den Nutzer, dem es zugeordnet ist, und ferner über den Code, der durch den Nutzer ausgewählt wurde. Außerdem weist jedes Segment Pointer zu den anderen nh -1 codierten Segmenten auf.

Der durch diese Pointer verursachte Overhead im Segmentheader kann durch verschiedene Techniken reduziert werden. Beispielsweise kann für einen festen Wert für k im Segmentheader der Code-Index h zusammen mit einem zufälligen Seed aufgenommen werden. Unter Verwendung eines vordefinierten Pseudo-Zufallsgenerators ist es hierbei möglich, die Positionen der nh -Segmente zu rekonstruieren. Dieser Pseudo-Zufallsgenerator steht sowohl dem Sender als auch dem Empfänger zur Verfügung.

Codierte Segmente können ferner durch einen Physical-Layer-Code vor ihrer Übertragung geschützt werden. Die Zeitdauer für jedes übertragene Segment ist Tsegment = Tslot / k . Jeder Slot in dem MAC-Frame ist in k -Abschnitte (slices) aufgeteilt, von denen jeder die gleiche Zeitdauer Tsegment aufweist. Demnach können bis zu k-Segmente im selben Slot aufgenommen werden und es kann angenommen werden, dass der MAC-Frame aus kM -Abschnitten zusammengesetzt ist. Die nh -Segmente werden durch einen Typ-h-aktiven Nutzer auf nh -Slices übertragen, die vorher zufällig und gleichmäßig ausgebildet wurden.

In 1 ist der Codier- und Übertragungsprozess beispielhaft für den Fall von Nα = 3 aktiven Nutzern dargestellt. Diese werden als User i, User j und User I bezeichnet. Es gilt: kM = 10 Slices (indexiert von 1-10). Jeder Burst ist in k = 2 Informationssegmente aufgeteilt. Nutzer i wendet einen (4,2) linearen Blockcode (code Ch ∈C), während Nutzer j und Nutzer I (3,2) lineare Blockcodes verwenden. Nutzer i verwendet systematisches Codieren für seine zwei Datensegmente, so dass zwei Paritätssegmente generiert werden. Die vier codierten Segmente werden dann im MAC-Frame in den Abschnitten mit den Indizes 1, 4, 7 und 9 übermittelt. Die codierten Segmente der Nutzer j und I, die ebenfalls systematisch codiert wurden, werden in den Abschnitten 2, 4 und 10 bzw. 2, 6 und 9 übertragen. In dem gezeigten Beispiel ist das Physical-Layer-Coding nicht dargestellt.

Empfängerseitig findet das Decodieren wie folgt statt: Segmente, die in interferenzfreien Abschnitten empfangen wurden, werden in Physical-Layer decodiert und die Information über den entsprechenden Nutzer, der durch den Nutzer verwendete Code und die Positionen der anderen nh -1 Segmente im MAC-Frame werden extrahiert. Für jeden aktiven Nutzer, den der Empfänger detektiert, wird ein Maximum-a-posteriori (MAP)-Erasure-Decoding für den Code durchgeführt, der durch den jeweiligen Nutzer angewandt wurde, um so viele codierte Segmente wie möglich für den jeweiligen Nutzer wieder herzustellen. Wiederhergestellte Segmente können nun genutzt werden, um ihren Interferenzbeitrag in anderen interferenzbehafteten Abschnitten zu entfernen (successive interference cancellation). Diese Kombination von MAP-Erasure-Decoding und Successive-Interference-Cancellation wird iterativ wiederholt, bis alle Abschnitte bereinigt wurden (so dass dann alle Bursts erfolgreich decodiert wurden). Sofern dies nicht möglich ist, werden Kollisionen bestehen bleiben, wenn keine weiteren codierten Segmente über das MAP-Erasure-Decoding wieder hergestellt werden können. Es ist zu beachten, dass der Empfänger im Vorhinein nicht die Anzahl der aktiven Nutzer kennt, die einen Burst in dem aktuellen MAC-Frame übermitteln. Es wird ferner angenommen, dass der Empfänger unterscheiden kann zwischen leeren Segmenten und solchen Segmenten, in denen ein Signal eines Nutzers empfangen wurde. Ferner können Kollisionen immer durch den Empfänger detektiert werden, auch wenn keine Informationen über die Anzahl der aktiven Nutzer oder über die einzelnen kollidierenden Segmente aus dem empfangenen Signal im entsprechenden Abschnitt extrahiert werden können. Dies kann dadurch erreicht werden, dass der Segmentheader ein Integritätskontrollfeld beinhaltet, das nach dem Physical-Layer-Decoding geprüft wird.

Geht man bei dem in 1 dargestellten Beispiel davon aus, dass alle Nutzer binäre lineare Blockcodes verwenden, wird ferner davon ausgegangen, dass Nutzer i seine zwei Datensegmente mit einem (4,2) Code mit einer Generatormatrix G = [1011, 0110] codiert, und dass ferner die Nutzer j und I (3,2) Single-Parity-Check (SPC)-Code verwenden. Eine Kollision wird durch den Empfänger in den Abschnitten mit den Indizes 2, 4 und 9 detektiert, während interferenzfreie Segmente in den Abschnitten mit den Indizes 1, 6, 7 und 10 empfangen werden. Es ist leicht erkennbar, dass das MAP-Erasure-Decoding des Blockcodes, der durch den Nutzer i verwendet wurde, es erlaubt, die zwei fehlenden Segmente dieses Nutzers wieder herzustellen. Der Interferenzbeitrag dieser zwei Segmente kann dann von den entsprechenden Abschnitten (den Indizes 4 und 9) subtrahiert werden, so dass die Segmente durch den Nutzer j in Abschnitt 4 und durch den Nutzer I in Abschnitt 9 jeweils bereinigt werden können.

So eine iterative Wiederholung dieses Prozesses erlaubt es, die Datensegmente dieser zwei Nutzer wieder herzustellen.

Nachteilig bei den Verfahren, die aus dem Stand der Technik bekannt sind, ist, dass Situationen existieren, in denen Kollisionen nicht aufgelöst werden können. Beispielsweise ist es möglich, dass zwei Nutzer einen (2,1) Repetition-Code wählen und für die Übertragung ihrer zwei Segmente die gleichen Slots wählen. In diesem Fall könnte eine Kollision durch den oben dargestellten Prozess nicht aufgelöst werden.

Aufgabe der Erfindung ist es, ein Verfahren zum Übertragen von Daten durch mehrere Nutzer an einem Empfänger über einen gemeinsam genutzten Übertragungskanal bereitzustellen, durch das das Risiko von nicht auflösbaren Kollisionen reduziert wird.

Die Lösung der Aufgabe erfolgt erfindungsgemäß durch die Merkmale des Anspruchs 1.

Im Rahmen des erfindungsgemäßen Verfahrens übertragen mehrere Sender Daten an einen gemeinsamen Empfänger über einen gemeinsamen Übertragungskanal. Sofern Daten im selben Zeitschlitz und/oder im selben Frequenzschlitz übertragen werden, treten Interferenzen auf, die ein Wiederherstellen der Datensegmente behindern.

Erfindungsgemäß werden Daten von den Sendern unter Verwendung des Coded-Slotted-ALOHA-Verfahrens gesendet. Dieses Verfahren ist aus dem Stand der Technik bekannt. Wesentliche Merkmale dieses Verfahrens wurden in der Einleitung der vorliegenden Anmeldung beschrieben. Diese Merkmale können auch im Rahmen des erfindungsgemäßen Verfahrens Anwendung finden.

Erfindungsgemäß wird der Slot, in dem ein Sender sein Datenpaket übermitteln soll, von einem Empfänger wie folgt bestimmt:

Es wird ein bipartiter Graph erstellt, wobei die Check-Nodes des bipartiten Graphen der Anzahl der verfügbaren Slots entsprechen.

Erfindungsgemäß wird der Umfang (girth) des bipartiten Graphen derart optimiert, dass kurze Schleifen im bipartiten Graphen vermieden werden.

Erfindungsgemäß wird jedem Sender mindestens ein Check-Node zugeordnet, wobei dieser Check-Node dem oder den Slot/s entspricht, in dem/denen ein Sender seine Datenpakete übermitteln soll. Der Empfänger teilt den Sendern anschließend mit, in welchen Slots sie ihre Datenpakete übertragen sollen.

Im Gegensatz zum Stand der Technik wählen die Nutzer ihre Slots somit nicht zufällig aus, da dies häufig zu nicht wiederherstellbaren Fehlermustern führt. Dies liegt daran, dass diese Fehlermuster kurze Schleifen aufweisen. Derartige kurze Schleifen können durch die Optimierung des bipartiten Graphen durch das erfindungsgemäße Verfahren vermieden werden, so dass die Wahrscheinlichkeit für unauflösbare Kollisionen gesenkt werden kann. Weitere Details hierzu werden in der Figurenbeschreibung dargestellt.

Es ist bevorzugt, dass der Umfang des bipartiten Graphen durch einen Progressive-Edge-Growth-Algorithmus optimiert wird. Alternativ ist es möglich, auch andere bekannte Algorithmen zu verwenden.

Weiterhin ist es bevorzugt, dass die Daten beim Empfänger unter Verwendung eines Successive-Interference-Cancellation-Verfahrens wieder hergestellt werden.

In einer weiteren bevorzugten Ausführungsform übermittelt der Empfänger an die Sender den im Rahmen des Coded-Slotted-ALOHA-Verfahrens zu verwendenden Code.

Bevorzugte Ausführungsformen der Erfindung werden nun anhand von Figuren erläutert.

Es zeigen:

  • 1 die grundsätzliche Funktionsweise des CSA-Verfahrens,
  • 2 ein bipartiten Graphen gemäß der vorliegenden Erfindung,
  • 3 eine Darstellung der Leistungsfähigkeit des erfindungsgemäßen Verfahrens.
  • 1 wurde bereits im Zusammenhang mit dem Stand der Technik erläutert.

In 2 ist ein vereinfachter bipartiter Graph dargestellt, um die Funktionsweise des erfindungsgemäßen Verfahrens zu verdeutlichen. Der bipartite Graph weist N variable nodes (jeweils einen variable Node pro Nutzer, der im Netzwerk registriert ist) und M check nodes (einen pro Slot im MAC-Frame) auf. Dieser Graph wird unter Verwendung eines Algorithmus zur Opitimierung seines Umfangs optimiert (girth optimization). Ein entsprechender Algorithmus ist beispielsweise in den eingangs genannten Veröffentlichungen [2] und [3] dargestellt. Der Graph aus 2 weist N = 8 registrierte Nutzer (variable nodes V1 bis V8) und M = 6 Slot Frames (check nodes C1 bis C6) auf.

Im dargestellten Beispiel wird davon ausgegangen, dass jeder Nutzer einen (2,1) Repetition-Code verwendet. Der Umfang des Graphen ist 6, d.h. der kürzeste Loop in dem Graph ist 6.

Sobald die acht Nutzer im Netzwerk registriert sind, ordnet der Empfänger beispielsweise ein Gateway, jedem Nutzer einen Variable-Node zu. Beispielsweise kann dem Nutzer i der Variable-Node Vi zugeordnet werden. Hieraus geht hervor, mit welchen Check-Nodes der Variable-Node im bipartiten Graphen verbunden ist, so dass dem jeweiligen Nutzer oder Sender mitgeteilt werden kann, in welchen Slots er seine Datenpakete senden soll. Im dargestellten Fall wird beispielsweise der Empfänger Nutzer 1 mitteilen, seine Datensegmente in den Slots 1 und 3 zu übermitteln, da der erste Variable-Node mit den Check-Nodes 1 und 3 verbunden ist. Das Gleiche wird für alle anderen Sender im Netzwerk gemacht.

In 3 ist die Leistungsfähigkeit des erfindungsgemäßen Verfahrens dargestellt. Es wurde eine Übertragung über einen MAC-Frame mit M = 200 Slots für verschiedene Nutzeranzahlen simuliert (N = 2000 Nutzer, dargestellt als x10, N = 1000 Nutzer, dargestellt als x5 und N = 800 Nutzer, dargestellt als x4). Einerseits wurde der Fall simuliert, dass jeder Nutzer Daten mit einem (2,1) Repetition-Code (CRDSA-2) codiert und andererseits ein Fall, in dem die Nutzer ihren Code aus einem Set verfügbarer Codes auswählen (IRSA).

Als Vergleich wurde der Fall dargestellt, in dem gemäß dem Stand der Technik ein Nutzer die Slots, in denen er seine Datenpakete überträgt, zufällig auswählt (Random-Strategie). Die Ergebnisse werden in 2 als eine Funktion der Packet-Loss-Rate in Abhängigkeit von der Kanallast G dargestellt. Wie erkennbar ist, erlaubt das erfindungsgemäße Verfahren eine wesentliche Reduzierung der Fehlerwahrscheinlichkeit.

ZITATE ENTHALTEN IN DER BESCHREIBUNG

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.

Zitierte Nicht-Patentliteratur

  • E- Paolini, G. Liva, and M. Chiani, „High Throughout Random Access via Codes on Graphs: Coded Slotted ALOHA“, in Proc. 2011 IEEE Int. Conf. Commun., Kyoto, Japan, Jun. 2011 [0003]
  • X. Hu, E. Eleftheriou, and D. Arnold, „Regular and irregular progressive edge-growth tanner graphs“, IEEE Trans. Inf. Theory, vol. 51, no. 1, pp. 386-398, Jan. 2005 [0003]
  • A. Venkiah, D. Declercq, and C. Poulliat, „Design of cages with a randomized progressive edge-growth algorithm“, IEEE Commun. Lett., vol. 12, no. 4, pp. 301-303, Apr. 2008 [0003]