problems of network coding in p2p and how to overcome it
play

Problems of Network Coding in P2P - and how to overcome it - PowerPoint PPT Presentation

Problems of Network Coding in P2P - and how to overcome it Christian Schindelhauer joint work with Christian Ortolf & Arne Vater presented in SPAA 09 & 10 Albert-Ludwig University Freiburg Department of Computer Science Computer


  1. Problems of Network Coding in P2P - and how to overcome it Christian Schindelhauer joint work with Christian Ortolf & Arne Vater presented in SPAA 09 & 10 Albert-Ludwig University Freiburg Department of Computer Science Computer Networks and Telematics

  2. Global Internet Traffic Shares 1993-2004 CacheLogic Research Trends of Internet Protocols 1993-2004 70 60 50 Share of Internet traffic 40 30 E-Mail 20 FTP Peer-to-Peer 10 Web 0 Source: CacheLogic 2005 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2

  3. P2P Share Germany 2007 Quelle: Ipoque 2007 3

  4. What Germans Download 2007 by Volume Quelle: Ipoque 2007 4

  5. Internet Traffic of a Geman ISP August 2009 Download HTTP 44.4 % Skype 0.8 % RTSP 1.2 % eDonkey 4 % BitTorrent 24.1 % RTMP 5 % Upload SHOUTcast 6.4 % NNTP 14.2 % HTTP 14.6 % BitTorrent 64.3 % Skype 3 % RTSP 0.1 % eDonkey 16.3 % RTMP 0.4 % SHOUTcast 0.7 % NNTP 0.7 % 5

  6. P2P Systems Germany 2007 by Volume Quelle: Ipoque 2007 6

  7. Motivation  Peer-to-peer networks - distributed system - equal participants (peers) - no client/server structure - used for • communication (i.e. Skype) • data storage (i.e. OceanStore) • file sharing 7

  8. Block-Based  Bram Cohen: BitTorrent file X  Block-based file sharing system x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 - divide file into blocks - efficient download - efficient usage of upload - usage of several sources - fairness amongst peers x 2 - uses implicit multicast trees x 3 for the distribution of blocks x 1 x 4 x 8 x 5 x 7 x 6 8

  9. BitTorrent Block Selection  Coupon-Collector-Problem 0 x 1 - reason for unevenly distributed blocks 1 x 2 - if blocks chosen randomly 5 x 3  Measures: Policies 4 x 4 - heuristics to select blocks for distribution 1 x 5 - different policies depending on progress 3 x 6 • random first 0 x 7 • rarest first 2 x 8 • endgame - very successful for popular files 9

  10. Solution: Network Coding  Optimal solution for Coupon-Collector-Problem / Policy - optimal network flow • Ahlswede, Cai, Li, and Yeung, "Network Information Flow" - practical network coding • Gkantsidis, and Rodriguez, "Network coding for large scale content distribution“  Method - sender transmits code blocks as linear combinations of the file‘s blocks - receiver collects code blocks and reconstructs the original file 10

  11. Coding and Decoding (I) x 1 x 2 x 3 encoding x 4 b i b 2 b 3 b 6 b 9 b 12 b 17 b 18 b 20 x 5 x 6 decoding x 7 x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 8 11

  12. Coding and Decoding (II)  file X = (x 1 , x 2 , ..., x n )  linear coefficients c ij  code blocks b 1 , b 2 , ..., b n  if the matrix is invertable then 12

  13. Problems of Network Coding  Overhead of storing linear coefficients - one per block - e.g. 4 GB file with 100 KB blocks • 4 GB / 100 KB = 40 KB per block • overhead 40% - better: 4 GB file and 1 MB blocks • 4 KB overhead = 0.4% Overhead of decoding  - Inversion of an (n × n)-matrix needs time O(n 3 )  Read/write accesses - writing n blocks requires reading each part n times: O(n 2 ) - disk access is much slower than memory access 13

  14. Scenario  BitTorrent is optimal regarding disk access and computation overhead, - but it suffers from the coupon collector problem (availability). 14

  15. Scenario  Network Coding is optimal regarding availability - but it has a high computational overhead as well as high disk access overhead 15

  16. Our Goal  We want to find a coding scheme that - performs better than BitTorrent regarding availability, and - requires less read/write accesses than Network Coding. 16

  17. Paircoding  Paircoding - is a reduced form of Network Coding - combines only two original blocks into one code block • p i,j = c i x i + c j y j x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 . . . p 2,3 p 4,7 p 1,2 p 4,5 p 5,7 p 3,6 p 4,6 p 1,8 p i,j 17

  18. Advantages  Easy code block creation - only two original blocks must be read  Recoding - new code blocks can be created from different code blocks - no prior decoding necessary  Decoding - requires little computation (sparse matrix inversion) - can be done lazy  Coding alleviates the coupon collector problem 18

  19. Scenario Paircoding outperforms  BitTorrent - with less overhead than Network Coding 19

  20. Simulation (I)  one seed  one downloading peer  seeder sends one random block in each round 20

  21. Policy  Policy - algorithmic choice of creating and uploading a code block depending on • receiving peer • current network configuration • availability • progress  Policy of BitTorrent - optimize throughput and fairness Policy of Practical Network Coding  - always send linearly independent code blocks - optimal 21

  22. Outperforming A file sharing system A is at least as good as B, A ≥ B if for every scenario and every policy of B there is a policy in A such that A performs at least as well as B. If A ≥ B and there exists a scenario in which A has larger progress than B, A outperforms B. A > B 22

  23. Paircoding - Results  Theorems - Paircoding outperforms BitTorrent • For all scenarios and any BitTorrent policy, Paircoing is at least as efficient as BitTorrent. • For some scenarios Paircoding is more efficient than Bittorrent, i.e. Paircoding outperforms BitTorrent. - Encoding and decoding can be performed with an almost linear number of read/write operations: O(n • α (n)). • α (n) is the inverse Ackerman function 23

  24. Treecoding( κ )  tree structure - fixed linear coefficients for all blocks x i - Xor of two nodes creates parent node  κ different trees - with linearly independent linear coefficients  root node is equivalent to a network coding block  leaves are equivalent to uncoded blocks 24

  25. Treecoding - Results  Performance hierarchy - Treecoding( κ + 1 ) > Treecoding( κ )  Treecoding performs as well as forward error correction Treecoding( κ ) ≥ FEC( κ ) -  Treecoding outperforms Fixed Paircoding ∪ κ Treecoding( κ ) > FixedPaircoding - - if the number of trees is arbitrary Treecoding and Paircoding are incomparable  Treecoding has read/write cost of  O(n), if κ = 1 - O( κ n log 2 n), for any κ - 25

  26. Class Hierarchy 26

  27. Problems of Network Coding in P2P - and how to overcome it Christian Schindelhauer joint work with Christian Ortolf & Arne Vater presented in SPAA 09 & 10 Albert-Ludwig University Freiburg Department of Computer Science Computer Networks and Telematics

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend