Communication Theory Project presentation

advertisement
Network Coding
Project presentation
Communication Theory
16:332:545
Amith Vikram
Atin Kumar
Jasvinder Singh
Vinoo Ganesan
Outline

Introduction




Study and Implementation





Network coding concept
Literature Survey
Terminology and Notation
Solvability in Multicast Networks
Algorithm and Pseudo-code
Low Complexity Network Codes
Network Recovery and Management
Scope for future work
Network Coding Concept

Goal: To transfer data
at the maximum
achievable throughput
in a network.
b1 b2
V1
b1
b2
V2
V3
b1
b2
b1

Idea: Process incoming
data at nodes in the
network
V6
b1+b2
V4
V7
b1+b2
b1 b2
Introduction
b2
V5
b1+b2
b1 b2
Literature Survey





Network Information Flow - Ahlswede, Cai, Li, Yeung, 2000
 Characterized the admissible coding rate region for multicast networks
 Proved that maximum throughput in a network can be achieved using ‘coding’
Linear network Coding – Li, Yeung, Cai, 2003
 Coding at nodes treated as linear transformation of incoming data
 Showed that individual maxflow bounds of each receiver can be achieved but
over a time period of the LCM of the maxflow bounds
Algebraic Approach – Koetter and Medard, 2002
 Proposed algebraic framework to study networks and capacity
 Necessary and sufficient conditions for coding to be acheivable
 Necessary and sufficient conditions for robustness to link failures
Network Management – Ho, Koetter and Medard,2002
 Quantify Network Management information required to affect link failure
recovery
Low complexity Network Codes – Jaggi, Kamal Jain, Philip Chou,2003
 Field size and thus arithmetic complexity is small; link usage is lower
Introduction
Terminology and Notation



Network denoted as a graph G=(V,E)
 V ----- Set of vertices (nodes)
 E ----- Set of Edges (line joining
pairs of vertices)
Input vector at source ’s’ x =
[x1,x2,…,xn]
Information on each outgoing link ‘e’
of source
Y (e)  [ e,1... e,n ][ x1...xn ]T
Introduction
Terminology and Notation

Information on outgoing link e* on intermediate
node
T
Y (e*)  [  e* ,e ... e* ,e ][ ye1 ... yem ]
1
m
where ‘m’ is the number of incoming edges on the node e*
‘ye’ is the incoming information on the incoming link e

Output vector at the destination (sink) node
z = [z1,…,zn]
zi  [ e1 ,i ... ek ,i ][ ye1 ... yek ]T
Introduction
Terminology and Notation

Output vector ‘z’ is z = x * M
where ‘M’ is the system transfer matrix

M=A*G*B
where A is [αi,j] is a n * k matrix where ‘k’ is total
number of edges in the network.
G = (I-F)-1 is the k * k adjacency matrix
B is [εi,j] is a k * n matrix
Introduction
Terminology and Notation
Cut: A partition of vertex set into 2 classes, S
containing source and S’ containing the sink.
Value of the cut:
s
 C ( e)
efromStoS'
x
y
where ‘C(e)’ is the rate constraint of each link
Min-Cut Max-Flow Lemma:
z
Let ‘G’ be a graph with source node ‘s’
and sink nodes ‘t1’ and ‘t2’, and rate
constraints ‘R’ .Then for l=1,2, the maxflow
from s to tl is the value of the min-cut between
s and tl and is denoted by maxflow(s,tl)
Introduction
w
t2
t1
Study and Implementation

Finding a network code for a given multicast
problem

Solvability conditions


Single source single sink :
det (M) ≠ 0
Single source multiple sink : ∏ det (Mi) ≠ 0
i

Multiple source multiple sink : det (Mii) ≠ 0
det (Mii) = 0
Study and Implementation
Algorithm for finding network codes

Given polynomial F(x), find a such that
F(a) ≠ 0

Find maximal degree ‘∂’ of F in any
variable xi and choose smallest ‘i’ such that
2i > ∂
Study and Implementation
Algorithm for finding network codes

Find an element ‘at’ in F2i such that
F(x) xt=at ≠ 0 and F


F(x) xt=at
If t = n then halt, else t t+1, goto previous
step
‘a’ is the solution to the above problem
Study and Implementation
Bound on Field size

There exists a solution to the single source
multicast network coding problem in a finite
field 2m with
m  log 2 ( NR  1)
Study and Implementation
Simulation Steps




Generate a random network (single source
multicast)
Find the network capacity using maxflow
algorithm
Generate matrices A,G, B from the network
topology
Solve for the network parameters
Study and Implementation
Coding vs Routing




Is coding really required?
How to check if routing achieves capacity?
Routing is a special case of coding with
constraints on codes
Put constraints on codes and solve to see if
routing is feasible
Study and Implementation
Simulation results
b1 b2
b1 b2
V1
b1
V1
b2
b1+b2
V2
V2
V3
b1
b2
V3
b2
b1+b2
b2
b1+b2
b1
b2
V5
V4
b1 b2
b1 b2
b2
V4
b1 b2
Study and Implementation
V5
b1 b2
Simulation results
AT=
Study and Implementation
Simulation results
Study and Implementation
Low Complexity Network Codes

Gives a solution to the single source multicast
network coding problem in a finite field 2m with
m  log 2 ( N )

Uses only union of edge-disjoint paths to each
receiver thus avoiding ‘flooding’
Study and Implementation
Network Recovery and Management



Nodes need to change their ‘behavior’ for
recovery from link failures
Network management involves switching
between appropriate codes for recovery
from link failures
Management requirement can be quantified
by the number of different codes needed
Study and Implementation
Network Recovery and Management

Two formulations of quantification

Centralized formulation



Network behavior described by an overall code
Network management requirement quantified by
logarithm of the number of codes needed
Node based formulation


Network behavior described by the number of
nodes which change behavior
Quantified by the sum of the logarithm of the
number of different behaviors of each node
Study and Implementation
Network Recovery and Management
Theorem: For a single receiver network with r processes and a
minimum capacity of C, tight bounds on the number of codes needed for
the no-failure scenario and all single link failures, assuming they are
recoverable are :
To be included in the final report

Faster implementation of the codegenerating algorithm

Comparison of Routing vs Coding on large
number of random networks
Future direction of research

Joint source-channel-network coding
Download