CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
Introduction to Network Coding
1. 1
Presented by:
Mohamed Y. Selim
Visiting Scholar at Iowa State University
Lecturer Assistant at Suez Canal University
myousef@ieee.org
2. I. Introduction to Network Coding
NetworkNetwork
CodingCoding
WhyWhy??
DefinitionsDefinitions
22 of 47
CodingCoding
WhyWhy??
What?What?
3. I. Introduction to Network Coding
What is Network Coding
Network Coding is a field of information theory
and coding theory and is a method of attaining
maximum information flow in a network.
33 of 47
maximum information flow in a network.
Network Coding Theory points out that it is
necessary to consider encoding/decoding data on
nodes in network in order to achieve optimal
throughput.
10. I. Introduction to Network Coding
Network Coding: The Butterfly
1010 of 47
11. I. Introduction to Network Coding
Network Coding: The Butterfly
1111 of 47
12. I. Introduction to Network Coding
Kirchhoff Versus Network Coding
1212 of 47
13. I. Introduction to Network Coding
Network Coding: The Butterfly
1313 of 47
14. I. Introduction to Network Coding
Network Coding: The Butterfly
1414 of 47
15. I. Introduction to Network Coding
Network Coding: The Butterfly
1515 of 47
16. I. Introduction to Network Coding
Network Coding: The Butterfly
1616 of 47
17. I. Introduction to Network Coding
Network Coding: The Butterfly
1717 of 47
18. 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
, ´)(),()(
etaileheade
ee
v
l
el 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
20. 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
21. 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
22. 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.
23. 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)
24. I. Introduction to Network Coding
Signal-Level Network Coding (PNC)
2424 of 47
25. 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
26. 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
27. 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 B2
B2 B2
2727 of 47
C3C2C1
C6C5C4
B1 B2B2
C5 Sends Block 2
B2 B2
B1 is STILL missing!!
Without Network
Coding
28. 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 B2
B2 B1+B2
B1+B2
B1
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
29. 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.
30. I. Introduction to Network Coding
Network Coding Applications (VANET Application)
Internet
R
Y
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
31. I. Introduction to Network Coding
Network Coding Applications (VANET Application)
Internet
Buffer
Buffer
Buffer
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:kblocks
B2
B3
Bk
+
*a1
*a2
*a3
*ak
Random Linear Combination
32. I. Introduction to Network Coding
Network Coding Applications
3232 of 47
33. I. Introduction to Network Coding
Network Coding Applications
3333 of 47
34. I. Introduction to Network Coding
Network Coding Applications
3434 of 47
44. 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