Netzwerkkodierungstheorie

Werbung
Netzwerkkodierung
in Theorie und Praxis
Praktische Anwendungen der
Netzwerkkodierung
Netzwerkkodierungstheorie
Prof. Dr.-Ing. Frank Fitzek
M.Sc. Juan Cabrera
Communication Networks Group
Prof. Dr.-Ing. Eduard Jorswieck
Dipl.-Ing. Johannes Richter
Communications Theory Group
Netzwerkkodierungstheorie
2. Vorlesung
„Hauptsatz der Netzwerkcodierung“
Sommersemester 2016
Eduard Jorswieck
Johannes Richter
Theoretische
Nachrichtentechnik
Hauptsatz der Netzwerkcodierung I
Wir betrachten ein „multicast“-Szenario auf einem Netzwerk, das als
Graph G = (V , E) dargestellt wird, mit h Quellen s1 , . . . , sh , die mit Rate
Eins zu N Empfängern R1 , . . . , RN senden wollen.
Satz (Hauptsatz der Netzwerkcodierung)
Betrachte einen gerichteten azyklischen Graph G(V , E) mit normierten
Kanten c(e) = 1, h Quellen mit normierten Raten und N Empfängern.
Angenommen der „min-cut“ zu allen Empfängern ist h. Dann existiert ein
Multicast-Übertragungsverfahren über ein hinreichend großes Alphabet
Fq , in dem die Netzwerkknoten die Eingangsdaten linear über Fq kombinieren, so daß zu jedem Empfänger gleichzeitig eine Rate von h realisiert
wird.
36
Hauptsatz der Netzwerkcodierung II
σ1
σ2
c`
σ1
α1
σ2
×
×
α2
α1 σ1 α2 σ2
+
α1 σ1 + α2 σ2
α1 σ1 + α2 σ2
Abbildung: Lineare Netzwerkcodierung an einem Knoten `
37
Hauptsatz der Netzwerkcodierung III
• In einem komplexen Netzwerk wird eine solche lokale
Linearkombination mehrmals hintereinander angewendet.
• Die h Symbole σ1 , . . . , σh werden also beim Durchfließen des
Graphens mit einem globalen Codierungsvektor
c(e) = [c1 (e), . . . , ch (e)] multipliziert, d.h.
 
σ1
 .. 
T
c(e)σ = [c1 (e), . . . , ch (e)] ·  .  .
σh
• Der Codierungsvektor einer Kante e ist also der Vektor mit
Koeffizienten der Quellensymbole, die als Linearkombination durch e
fließen.
• Die Dimension ist immer 1 × h.
38
Hauptsatz der Netzwerkcodierung IV
• Wichtig ist der Fluß durch die letzte Kante vor dem Empfänger Rj .
I
I
Angenommen ρji sei das Symbol auf der letzten Kante des Pfads
(si , Rj ) und Aj die Matrix, deren i-te Zeile der Codierungsvektor
der letzten Kante des Pfads (si , Rj ) ist.
Dann muß der Empfänger Rj das folgende lineare System lösen:
[ρj1 , ..., ρjh ]T = Aj [σ1 , ..., σh ]T
I
I
um die Orginialinformationssymbole σ1 , ..., σh zu empfangen.
Um das lineare Gleichungssystem eindeutig lösen zu können,
müssen alle Aj für alle 1 ≤ j ≤ N vollen Rang besitzen.
Außerdem muß jeder Codierungsvektor des Ausgangs eines
Knoten in der linearen Hülle der Codierungsvektoren des
Eingangs des Knotens liegen.
39
Hauptsatz der Netzwerkcodierung V
Satz (Algebraische Formulierung)
In der linearen Netzwerkcodierung existieren Koeffizienten αk in einem genügend großen Körper Fq der lokalen Codierungsvektoren,
so daß alle Matrizen A1 , ..., AN die die Information an den Empfängern beschreiben, vollen Rang haben.
Lemma (Sparse Zeros Lemma)
Es sei f (α1 , ..., αη ) ein multivariates Polynom in den Variablen
α1 , ..., αη mit maximalem Grad in jeder Variable von maximal d.
Dann existieren Werte p1 , ..., pη in jedem endlichen Körper der Größe q > d, so daß f (α1 = p1 , ..., αη = pη ) 6= 0 und f nicht identisch
Null ist.
• Dieser Hilfssatz wird manchmal “sparse zeros lemma” oder auch
Schwartz-Zippel Lemma genannt, da es aus diesem folgt.
• Wir geben einen separaten einfachen induktiven Beweis an =⇒ Tafel
40
Hauptsatz der Netzwerkcodierung VI
A
B
C
D
E
F
41
Hauptsatz der Netzwerkcodierung VII
• Viele offene Fragen entstehen durch den Hauptsatz:
I
I
I
I
Können wir einen linearen Netzwerkcode effizient konstruieren?
Wir groß muß der Körper sein?
Wie groß ist der Aufwand für die Netzwerkcodierung?
Was sind die Gewinne?
• Eine andere Frage ist bezüglich der Annahmen: Welche Annahmen
aus dem Hauptsatz können fallengelassen werden?
1. Normierte Kapazität an den Kanten: nicht restriktiv, beliebige
rationale Zahlen und parallele Kanten sind erlaubt.
2. Gewichteter Graph: restriktiv, man kann ein Gegenbeispiel
konstruieren, in dem der Hauptsatz dann nicht mehr stimmt.
3. Keine Verzögerung beim Übertragen: nicht restriktiv. Es wird ein
Zusammenhang zu Faltungscodes hergestellt.
4. Azyklischer Graph: nicht restriktiv. Durch geeignete
Maßnahmen können zyklische Graphen entschärft werden.
42
Hauptsatz der Netzwerkcodierung VIII
5. Dieselben min-cut Werte: restriktiv. Wenn die Empfänger
unterschiedliche min-cut Werte haben, kann nur mit einer Rate,
die gleich dem Minimum über alle min-cuts ist, übertragen
werden, da ja alle Empfänger alle Linearkombinationen
decodieren können müssen (das Butterfly-Netzwerk ist ein
Gegenbeispiel).
• Zwischen Netzwerk-codes und linearen Fehlerschutzcodes gibt es
einen Zusammenhang: Die globalen Codierfunktionen in einem
linearen Netzwerkcode entsprechen den Spalten der Generatormatrix
eines linearen Fehlerschutzcodes.
• Allerdings muß jede Codierfunction das Gesetz der
Informationserhaltung befolgen (linear span). Die Wahl der
Generatormatrix beim linearen Fehlerschutzcode ist frei.
43
Hauptsatz der Netzwerkcodierung IX
• Es gibt eine weitere Taxonomie bei linearen Netzwerkcodes:
Es sei h beliebig und fe die globale Codierfunktion.
VT =< {fe : e ∈ In(T )} >, mit < . > als lineare Hülle einer Menge
von Vektoren.
a) Wenn dim(VT ) = h für alle Knoten T und maxflow(T ) ≥ h dann
heißt der Code linearer multicast-Netzwerkcode.
b) Wenn dim(VT ) = min(h, maxflow(T )) für alle Knoten T , dann
heißt der Code linearer broadcast-Netzwerkcode.
c) Wenn dim(< ∪T ∈T VT >) = min(h, maxflow(T )) für alle
Mengen von Knoten T , dann heißt der Code linearer
dispersion-Netzwerkcode.
• Offenbar gilt: c) → b) → a), d.h. jeder lineare
dispersion-Netzwerkcode ist ein broadcast ist ein multicast
Netzwerkcode.
44
Hauptsatz der Netzwerkcodierung X
• Taxonomie Beispiel:
[1 0]
s
[0 1]
[1 0]
s
[0 0]
[1 0]
[0 1]
T
U
T
U
[0 1]
[1 0]
[1 0]
[1 0]
[1 0]
W
s
[1 0]
[0 0]
W
s
[1 0]
[0 1]
[0 1]
T
U
T
U
[0 0]
[0 0]
[1 0]
W
[0 0]
W
45
Hauptsatz der Netzwerkcodierung XI
• Unicast / Multicast
I
I
Ein multicast Szenario wird beschrieben durch einen gerichteten
Graph G = (V , E), einen Quellenknoten s ∈ V (an dem h
normierte Quellen si anliegen) und eine Menge von Empfängern
R = {R1 , ..., RN }. Eine Multicast-Instanz wird also durch das
Tripel (G, S, R) beschriben.
Eine Instanz (G, S, R) erfüllt die multicast-Eigenschaft für Rate h
falls der min-cut Wert von s zu jedem Empfänger größer gleich h
ist.
• Eine Zuordnung von Codiervektoren zu einem Graphen heißt
möglich oder erreichbar, wenn der Codiervektor an der Kante e in der
linearen Hülle der Codierungsvektoren der Elternkanten In(e) liegt.
• Ein gültiger Netzwerkcode ist jede erreichbare Zuordnung von
Codevektoren, so dass die Matrix Aj für alle Empfänger Rj und
1 ≤ j ≤ N , vollen Rang hat.
46
Hauptsatz der Netzwerkcodierung XII
• Ein Netzwerk ist linear lösbar falls lineare Operationen existieren, so
dass jeder Empfänger dieselbe maximale Rate erhält, als wenn er alle
Netzwerkresourcen exklusiv benutzen würde.
• Codierungspunkte sind die Kanten des Graphen an denen
Netzwerkcodierung durchgeführt wird.
• Ein Graph heisst minimal mit der multicast Eigenschaft falls das
Entfernen irgendeiner Kante die Eigenschaft verletzen würde.
47
Hauptsatz der Netzwerkcodierung XIII
S1
S2
S1
S2
S1
S2
C
C
C
D
D
D
E
F
E
F
E
F
G
H
G
H
G
H
R1
I
I
I
K
K
K
R2
R1
R2
R1
R2
48
Hauptsatz der Netzwerkcodierung XIV
Nächste Vorlesung
• Algorithmus zur Konstruktion von Netzwerkcodes
• Systematischer Entwurf:
I
I
Liniengraph
Teilbaumzerlegung ...
• Zufällige Netzwerkcodierung ...
49
Herunterladen