introduction to network coding
TRANSCRIPT
1
Presented by:
Mohamed Y. SelimVisiting Scholar at Iowa State University
Lecturer Assistant at Suez Canal University
I. Introduction to Network Coding
Network Network CodingCodingWhyWhy??
DefinitionsDefinitions
22 of 47
CodingCodingWhyWhy??
What?What?
I. Introduction to Network Coding
� What is Network Coding
�Network Coding is a field of information theoryand coding theory and is a method of attainingmaximum information flow in a network.
33 of 47
maximum information flow in a network.
�Network Coding Theory points out that it isnecessary to consider encoding/decoding data onnodes in network in order to achieve optimalthroughput.
I. Introduction to Network Coding
� What is Network Coding
Information Information theorytheory
Wireless Wireless networksnetworks
ChannelChannelcodingcoding
Quantum Quantum information information
theorytheory
GraphGraphtheorytheory
55 of 47
Computer Computer networksnetworks
SwitchingSwitchingtheorytheory
ComputerComputersciencescience
CryptographyCryptography
OptimizationOptimizationtheorytheory
Game Game theorytheory
Matroid Matroid theorytheory Data Data
storagestorage
I. Introduction to Network Coding
� Linear Network Coding
• Random Processes in a Linear Network
� Source Input:� Info. Along Edges:
{ }),...,(),,(),( 10 lvxlvxlvX =
The index is a { }),...(),()( 10 eyeyeY =Weighted Combination
of processes
Weighted Combination of processes from
1818 of 47
� Info. Along Edges:� Sink Output:
• Relationship among them
The index is a time index
{ }),...(),()( 10 eyeyeY ={ }),...,(),,(),( 10 lvzlvzlvZ =
∑∑==
+=)(´)(´:
´,
)(
1, ´)(),()(
etaileheadeee
v
lel eYlvXeY βα
µ
∑=
=veheade
je eYjvZ´)(´:
´, ´)(),( εe comes out of v
of processes generated at v
of processes from adjacent edges of e
Weighted Combination from all
incoming edges
I. Introduction to Network Coding
� Linear Network Coding (The Transfer Matrix)
v2e1
e2
e5
)1,( 1vX )1,(vZ
)3,()2,()1,()(111 ,3,2,11 vXvXvXeY eee ααα ++=
)3,()2,()1,()(222 ,3,2,12 vXvXvXeY eee ααα ++=
)3,()2,()1,()(333 ,3,2,13 vXvXvXeY eee ααα ++=
)()()( eYeYeY ββ +=
))3,(),2,(),1,(( 111 vXvXvXxLet =))3,(),2,(),1,(( 444 vZvZvZz=
Mxz ⋅=
1919 of 47
e4v1
v3
v4
e2
e3
e6
e7
)1,( 1vX
)2,( 1vX
)3,( 1vX
)1,( 4vZ)2,( 4vZ
)3,( 4vZ
)()()( 2,1,4 4241eYeYeY eeee ββ +=
)()()( 2,1,5 5251eYeYeY eeee ββ +=
)()()( 4,3,6 6463eYeYeY eeee ββ +=
)()()( 4,3,7 7473eYeYeY eeee ββ +=
)()()()1,( 71,61,51,4 765eYeYeYvZ eee εεε ++=
)()()()2,( 72,62,52,4 765eYeYeYvZ eee εεε ++=
)()()()3,( 73,63,53,4 765eYeYeYvZ eee εεε ++=
BAM
eeee
eeeeeeeeee
eeeeeeeeee
⋅
⋅=
7363
7442644252
7441644151
,,
,,,,,
,,,,,
0 ββββββββββββ
=
321
321
321
,3,3,3
,2,2,2
,1,1,1
eee
eee
eee
A
ααααααααα
=
3,2,1,
3,2,1,
3,2,1,
777
666
555
eee
eee
eee
B
εεεεεεεεε
I. Introduction to Network Coding
� Linear Network Coding (Solution)
• We want
• Choose to be an identity matrix.
BAM eeeeeeeeee
eeeeeeeeee
⋅
⋅=7442644252
7441644151
,,,,,
,,,,,
ββββββββββ
Mxz ⋅=xz =
A
2020 of 47
an identity matrix.
• Choose B to be the inverse of
=
3,2,1,
3,2,1,
3,2,1,
777
666
555
eee
eee
eee
B
εεεεεεεεε
,
321
321
321
,3,3,3
,2,2,2
,1,1,1
=
eee
eee
eee
A
ααααααααα
BAM
eeee
eeeeeeeeee ⋅
⋅=
7363
7442644252
,,
,,,,,
0 βββββββ
7363
7442644252
7441644151
,,
,,,,,
,,,,,
0 eeee
eeeeeeeeee
eeeeeeeeee
ββββββββββββ
NETWORK CODING SOLUTION EXISTS IF DETERMINANT OF M
IS NON-ZERO
I. Introduction to Network Coding
� Random Linear Network Coding
� Ho, Koetter, Medard, Karger, Effros (2003/06)
� Random coefficients for linear network coding
2121 of 47
� Can decode with probability ≈ 1
� Enables network coding in unknown network topologies
I. Introduction to Network Coding
� Random Linear Network Coding
• How to select the coefficients ξ ?
� Randomly Select
� Coefficients are chosen uniformly at random from a finite field F
2222 of 47
� Coefficients are chosen uniformly at random from a finite field Fq(Fq is the set of integers from 0 to q-1, where q=2g )
� If q is large, then the probability of that two coefficient vectors are dependent is small.
I. Introduction to Network Coding
� Signal-Level Network Coding (PNC)
�Allows wireless signals to add up physically
�Can further improve the efficiency of wireless network coding
2323 of 47
�Physical-Layer NC: Zhang, Liew, and Lam (2006)
�Analog NC: Katti, Gollakota, and Katabi (2007)
I. Introduction to Network Coding
� Signal-Level Network Coding (PNC)
2525 of 47
For more details:
http://arxiv.org/ftp/arxiv/papers/1105/1105.4261.pdf
I. Introduction to Network Coding
� Network Coding Applications (VANET Application)
� Computer Networks
� Wireless/Satellite Communications
2626 of 47
� Distributed information storage/ dissemination
(e.g., Bit-Torrent)
� Robust Network Management
� Network Error Correction
I. Introduction to Network Coding
� Network Coding Applications (VANET Application)
C1 Sends Block 1
B1
C3 Sends Block 2
B2
C2 Sends Block 2
B1 B2B2 B2
2727 of 47
C3C2C1
C6C5C4
B1 B2B2
C5 Sends Block 2
B2 B2
B1 is STILL missing!!Without Network
Coding
I. Introduction to Network Coding
� Network Coding Applications
C1 Sends Block 1
B1
C3 Sends Block 2
B2
C2 Sends a Coded Block: B1+B2
B1 B2B2 B1+B2
B1+B2B1
B1+B2
2828 of 47
C3C2C1
C6C5C4
B1 B2B1+B2
C5 Sends a Coded Block: B1+B2
B1+B2 B1+B2B2 B1
C4 and C6 successfully recovered both blocksWith Network Coding
I. Introduction to Network Coding
� Network Coding Applications (VANET Application)
�CarTorrent is a BitTorrent-like file protocol VANET.
�A car passing by an access point, pulls as many blocks as
2929 of 47
A car passing by an access point, pulls as many blocks as
possible. Once it’s out-of-range, it’ll start talking to others to
pull blocks.
�Each peer sends the availability of blocks to others.
I. Introduction to Network Coding
� Network Coding Applications (VANET Application)
Internet
RY
YY
RRR
Without Network Coding
3030 of 47
Downloading Blocks from AP
Exchange Blocks via multi-hop pulling
G
Y2
Gossiping Availability of Blocks
Y
I. Introduction to Network Coding
� Network Coding Applications (VANET Application)
InternetBuffer
BufferBuffer
With Network Coding
3131 of 47
Downloading Coded Blocks from AP
Outside Range of AP
Buffer
Re-Encoding: Random Linear Comb.of Encoded Blocks in the Buffer
Exchange Re-Encoded Blocks
Meeting Other Vehicles with Coded Blocks
“coded” block
B1
File
: kbl
ocks B2
B3
Bk
+
*a1
*a2*a3
*ak
Random Linear Combination
I. Introduction to Network Coding
� Network Coding Practical Problems
• Network Delay
• Centralized Knowledge of Graph Topology
• Packet Loss
4444 of 47
• Packet Loss
• Link Failures
• Change in Topology or Capacity