Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
1
Presented by:
Mohamed Y. Selim
Visiting Scholar at Iowa State University
Lecturer Assistant at Suez Canal University
myo...
I. Introduction to Network Coding
NetworkNetwork
CodingCoding
WhyWhy??
DefinitionsDefinitions
22 of 47
CodingCoding
WhyWhy...
I. Introduction to Network Coding
What is Network Coding
Network Coding is a field of information theory
and coding theory...
I. Introduction to Network Coding
What is Network Coding
44 of 47
I. Introduction to Network Coding
What is Network Coding
InformationInformation
theorytheory
WirelessWireless
networksnetw...
I. Introduction to Network Coding
Example: Two-way Relay Comm.
66 of 47
I. Introduction to Network Coding
Example: Two-way Relay Comm.
77 of 47
I. Introduction to Network Coding
Example: Two-way Relay Comm.
88 of 47
I. Introduction to Network Coding
Network Coding: The Butterfly
99 of 47
I. Introduction to Network Coding
Network Coding: The Butterfly
1010 of 47
I. Introduction to Network Coding
Network Coding: The Butterfly
1111 of 47
I. Introduction to Network Coding
Kirchhoff Versus Network Coding
1212 of 47
I. Introduction to Network Coding
Network Coding: The Butterfly
1313 of 47
I. Introduction to Network Coding
Network Coding: The Butterfly
1414 of 47
I. Introduction to Network Coding
Network Coding: The Butterfly
1515 of 47
I. Introduction to Network Coding
Network Coding: The Butterfly
1616 of 47
I. Introduction to Network Coding
Network Coding: The Butterfly
1717 of 47
I. Introduction to Network Coding
Linear Network Coding
• Random Processes in a Linear
Network
Source Input:
Info. Along E...
I. Introduction to Network Coding
Linear Network Coding (The Transfer Matrix)
v2
e1
e2
e5
)1,( 1vX )1,(vZ
)3,()2,()1,()( 1...
I. Introduction to Network Coding
Linear Network Coding (Solution)
• We want
• Choose to be
an identity matrix.
BAM eeeeee...
I. Introduction to Network Coding
Random Linear Network Coding
Ho, Koetter, Medard, Karger, Effros (2003/06)
Random coeffi...
I. Introduction to Network Coding
Random Linear Network Coding
• How to select the coefficients ξ ?
Randomly Select
Coeffi...
I. Introduction to Network Coding
Signal-Level Network Coding (PNC)
Allows wireless signals to add up physically
Can furth...
I. Introduction to Network Coding
Signal-Level Network Coding (PNC)
2424 of 47
I. Introduction to Network Coding
Signal-Level Network Coding (PNC)
2525 of 47
For more details:
http://arxiv.org/ftp/arxi...
I. Introduction to Network Coding
Network Coding Applications (VANET Application)
Computer Networks
Wireless/Satellite Com...
I. Introduction to Network Coding
Network Coding Applications (VANET Application)
C1 Sends Block 1
B1
C3 Sends Block 2
B2
...
I. Introduction to Network Coding
Network Coding Applications
C1 Sends Block 1
B1
C3 Sends Block 2
B2
C2 Sends a Coded Blo...
I. Introduction to Network Coding
Network Coding Applications (VANET Application)
CarTorrent is a BitTorrent-like file pro...
I. Introduction to Network Coding
Network Coding Applications (VANET Application)
Internet
R
Y
YY
RRR
Without Network
Codi...
I. Introduction to Network Coding
Network Coding Applications (VANET Application)
Internet
Buffer
Buffer
Buffer
With Netwo...
I. Introduction to Network Coding
Network Coding Applications
3232 of 47
I. Introduction to Network Coding
Network Coding Applications
3333 of 47
I. Introduction to Network Coding
Network Coding Applications
3434 of 47
Satellite/Wireless Application
I. Introduction to Network Coding
35
Satellite/Wireless Application
I. Introduction to Network Coding
36
Satellite/Wireless Application
I. Introduction to Network Coding
37
Satellite/Wireless Application
I. Introduction to Network Coding
38
Satellite/Wireless Application
I. Introduction to Network Coding
39
Satellite/Wireless Application
I. Introduction to Network Coding
40
Satellite/Wireless Application
I. Introduction to Network Coding
41
Satellite/Wireless Application
I. Introduction to Network Coding
42
A+B
I. Introduction to Network Coding
Satellite/Wireless Application
43
I. Introduction to Network Coding
Network Coding Practical Problems
• Network Delay
• Centralized Knowledge of Graph Topol...
I. Introduction to Network Coding
References
4545 of 47
I. Introduction to Network Coding
References
4646 of 47
‫ن‬ ‫ا‬ ‫رب‬ ‫د‬ ‫ا‬
Thank You
4747 of 47
‫ن‬ ‫ا‬ ‫رب‬ ‫د‬ ‫ا‬
Upcoming SlideShare
Loading in …5
×

Introduction to Network Coding

1,677 views

Published on

Introduction to Network Coding
Presented by:
Mohamed Y. Selim

Published in: Engineering
  • Be the first to comment

Introduction to Network Coding

  1. 1. 1 Presented by: Mohamed Y. Selim Visiting Scholar at Iowa State University Lecturer Assistant at Suez Canal University myousef@ieee.org
  2. 2. I. Introduction to Network Coding NetworkNetwork CodingCoding WhyWhy?? DefinitionsDefinitions 22 of 47 CodingCoding WhyWhy?? What?What?
  3. 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.
  4. 4. I. Introduction to Network Coding What is Network Coding 44 of 47
  5. 5. I. Introduction to Network Coding What is Network Coding InformationInformation theorytheory WirelessWireless networksnetworks ChannelChannel codingcoding QuantumQuantum informationinformation theorytheory GraphGraph theorytheory 55 of 47 ComputerComputer networksnetworks SwitchingSwitching theorytheory ComputerComputer sciencescience CryptographyCryptography OptimizationOptimization theorytheory GameGame theorytheory MatroidMatroid theorytheory DataData storagestorage
  6. 6. I. Introduction to Network Coding Example: Two-way Relay Comm. 66 of 47
  7. 7. I. Introduction to Network Coding Example: Two-way Relay Comm. 77 of 47
  8. 8. I. Introduction to Network Coding Example: Two-way Relay Comm. 88 of 47
  9. 9. I. Introduction to Network Coding Network Coding: The Butterfly 99 of 47
  10. 10. I. Introduction to Network Coding Network Coding: The Butterfly 1010 of 47
  11. 11. I. Introduction to Network Coding Network Coding: The Butterfly 1111 of 47
  12. 12. I. Introduction to Network Coding Kirchhoff Versus Network Coding 1212 of 47
  13. 13. I. Introduction to Network Coding Network Coding: The Butterfly 1313 of 47
  14. 14. I. Introduction to Network Coding Network Coding: The Butterfly 1414 of 47
  15. 15. I. Introduction to Network Coding Network Coding: The Butterfly 1515 of 47
  16. 16. I. Introduction to Network Coding Network Coding: The Butterfly 1616 of 47
  17. 17. I. Introduction to Network Coding Network Coding: The Butterfly 1717 of 47
  18. 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
  19. 19. I. Introduction to Network Coding Linear Network Coding (The Transfer Matrix) v2 e1 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 4241 eYeYeY eeee ββ += )()()( 2,1,5 5251 eYeYeY eeee ββ += )()()( 4,3,6 6463 eYeYeY eeee ββ += )()()( 4,3,7 7473 eYeYeY eeee ββ += )()()()1,( 71,61,51,4 765 eYeYeYvZ eee εεε ++= )()()()2,( 72,62,52,4 765 eYeYeYvZ eee εεε ++= )()()()3,( 73,63,53,4 765 eYeYeYvZ 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 εεε εεε εεε
  20. 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. 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. 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. 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. 24. I. Introduction to Network Coding Signal-Level Network Coding (PNC) 2424 of 47
  25. 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. 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. 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. 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. 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. 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. 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. 32. I. Introduction to Network Coding Network Coding Applications 3232 of 47
  33. 33. I. Introduction to Network Coding Network Coding Applications 3333 of 47
  34. 34. I. Introduction to Network Coding Network Coding Applications 3434 of 47
  35. 35. Satellite/Wireless Application I. Introduction to Network Coding 35
  36. 36. Satellite/Wireless Application I. Introduction to Network Coding 36
  37. 37. Satellite/Wireless Application I. Introduction to Network Coding 37
  38. 38. Satellite/Wireless Application I. Introduction to Network Coding 38
  39. 39. Satellite/Wireless Application I. Introduction to Network Coding 39
  40. 40. Satellite/Wireless Application I. Introduction to Network Coding 40
  41. 41. Satellite/Wireless Application I. Introduction to Network Coding 41
  42. 42. Satellite/Wireless Application I. Introduction to Network Coding 42
  43. 43. A+B I. Introduction to Network Coding Satellite/Wireless Application 43
  44. 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
  45. 45. I. Introduction to Network Coding References 4545 of 47
  46. 46. I. Introduction to Network Coding References 4646 of 47
  47. 47. ‫ن‬ ‫ا‬ ‫رب‬ ‫د‬ ‫ا‬ Thank You 4747 of 47 ‫ن‬ ‫ا‬ ‫رب‬ ‫د‬ ‫ا‬

×