# Communication Theory Project presentation by malj

VIEWS: 4 PAGES: 23

• pg 1
```									         Network Coding
Project presentation
Communication Theory
16:332:545

Amith Vikram   Atin Kumar     Jasvinder Singh   Vinoo Ganesan
Outline
   Introduction
   Network coding concept
   Literature Survey
   Terminology and Notation
   Study and Implementation
   Solvability in Multicast Networks
   Algorithm and Pseudo-code
   Low Complexity Network Codes
   Network Recovery and Management
   Scope for future work
Network Coding Concept
b1 b2
   Goal: To transfer data                     V1

at the maximum
achievable throughput                 b1                         b2

in a network.               V2
V3

b1             b2

b1
V6
   Idea: Process incoming                                  b1+b2
b2

data at nodes in the
V4                       V7                       V5
network                                    b1+b2         b1+b2

b1 b2
b1 b2

Introduction
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
Y (e*)  [  e* ,e ... e* ,e ][ ye1 ...yem ]
T
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                s

containing source and S’ containing the sink.

Value of the cut:             C (e)
efro m S to S'
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                      w

constraints ‘R’ .Then for l=1,2, the maxflow       t1
t2

from s to tl is the value of the min-cut between
s and tl and is denoted by maxflow(s,tl)

Introduction
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
V1
b1                     b2
b1+b2                        b2

V2
V3            V2
V3
b1            b2
b1+b2            b2
b1+b2

b1
b2
b2

V4                                        V5
V4                                         V5

b1 b2                                                b1 b2
b1 b2                                     b1 b2

Study and Implementation
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

Study and Implementation
Network Recovery and Management
   Nodes need to change their ‘behavior’ for
   Network management involves switching
between appropriate codes for recovery
   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 code-
generating algorithm

   Comparison of Routing vs Coding on large
number of random networks
Future direction of research
   Joint source-channel-network coding

```
To top