Abstract
Recently, random linear network coding has been widely applied in peer-to-peer network applications. Instead of sharing the raw data with each other, peers in the network produce and send encoded data to each other. As a result, the communication protocols have been greatly simplified, and the applications experience higher end-to-end throughput and better robustness to network churns. Since it is difficult to verify the integrity of the encoded data, such systems can suffer from the famous pollution attack, in which a malicious node can send bad encoded blocks that consist of bogus data. Consequently, the bogus data will be propagated into the whole network at an exponential rate. Homomorphic hash functions (HHFs) have been designed to defend systems from such pollution attacks, but with a new challenge: HHFs require that network coding must be performed in GF(\(q)\), where \(q\) is a very large prime number. This greatly increases the computational cost of network coding, in addition to the already computational expensive HHFs. This chapter exploits the potential of the huge computing power of Graphic Processing Units (GPUs) to reduce the computational cost of network coding and homomorphic hashing. With our network coding and HHF implementation on GPU, we observed significant computational speedup in comparison with the best CPU implementation. This implementation can lead to a practical solution for defending the pollution attacks in distributed systems.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Ahlswede R, Cai N, Li SR, Yeung RW (2000) Network information flow. IEEE Trans Inf Theory 46(4):1204–1216
AMD (2006) CTM guide: technical reference manual. http://ati.amd.com/companyinfo/researcher/documents/ATI_CTM_Guide.pdf
Brickell EF, Gordon DM, McCurley KS, Wilson DB (1992) Fast exponentiation with precomputation: algorithms and lower bound. In: Proceedings of EUROCRYPT’92, 1992, pp 200–207
Chu X, Jiang Y (2010) Random linear network coding for peer-to-peer applications. IEEE Netw 24(4):35–39
Chu X, Zhao K, Wang M (2008) Massively parallel network coding on GPUs. In: Proceedings of the 27th IEEE IPCCC, Dec 2008
Chu X, Zhao K, Wang M (2009) Practical random linear network coding on GPUs. In: Proceedings of IFIP networking 2009, Archen, May 2009
Dimakis AG, Godfrey PB, Wainwright MJ, Ramchandran K (2007) Network coding for distributed storage systems. In: Proceedings of IEEE INFOCOM’07, 2007
Gkantsidis C, Rodriguez P (2005) Network coding for large scale content distribution. In: Proceedings of IEEE INFOCOM’05, 2005
Gkantsidis C, Rodriguez P (2006) Cooperative security for network coding file distribution. In: Proceedings of IEEE INFOCOM’06, 2006
GNU MP (2010) Arithmetic library. http://gmplib.org/
Ho T, Koetter R, Médard M, Karger DR, Effros M (2003) The benefits of coding over routing in a randomized setting. In: Proceedings of IEEE ISIT, 2003
Katti S, Katabi D, Balakrishna H, Medard M (2008) Symbol-level network coding for wireless mesh networks. In: Proceedings of ACM Sigcomm’08, Aug 2008
Koetter R, Medard M (2003) An algebraic approach to network coding. IEEE/ACM Trans Netw 11(5):782–795
Krohn M, FreedMan M, Mazieres D (2004) On-the-fly verification of rateless erasure codes for efficient content distribution. In: Proceedings of IEEE symposium on security and privacy, Berkeley
Li S-YR, Yueng RW, Cai N (2003) Linear network coding. IEEE Trans Inf Theory 49:371–381
Li Q, Chiu D-M, Lui JCS (2006) On the practical and security issues of batch content distribution via network coding. In: Proceedings of IEEE ICNP’06, 2006, pp 158–167
NVIDIA CUDA (2008) Compute unified device architecture: programming guide, version 2.0beta2
Owens JD, Houston M, Luebke D, Green S, Stone JE, Phillips JC (2008) GPU computing. In: IEEE Proceedings, May 2008, pp 879–899
Ryoo S, Rodrigues CI, Baghsorkhi SS, Stone SS, Kirk DB, Hwu W (2008) Optimization principles and application performance evaluation of a multithreaded GPU using CUDA. In: Proceedings of ACM PPoPP’08, Feb 2008
Seiler L et al (2008) Larrabee: a many-core x86 architecture for visual computing. ACM Trans Graph 27(3):1–15
Shojania H, Li B (2007) Parallelized progressive network coding with hardware acceleration. In: Proceedings of the 15th international workshop on quality of service (IWQoS), 2007
Shojania H, Li B, Wang X (2009) Nuclei: GPU-accelerated many-core network coding. In: Proceedings of IEEE INFOCOM’09, Apr 2009
Volkov V, Demmel JW (2008) Benchmarking GPUs to tune dense linear algebra. In: Proceedings of supercomputing’08, Nov 2008
Wang M, Li B (2007) Lava: a reality check of network coding in peer-to-peer live streaming. In: Proceedings of IEEE INFOCOM’07, 2007
Yu Z, Wei Y, Ramkumar B, Guan Y (2008) An efficient signature-based scheme for securing network coding against pollution attacks. In: Proceedings of IEEE INFOCOM’08, Apr 2008
Zhao K, Chu X, Wang M, Jiang Y (2009) Speeding up homomorphic hashing using GPUs. In: Proceedings of IEEE ICC 2009, Dresden, June 2009
Acknowledgments
This work has been partially supported by the Hong Kong RGC under grant GRF HKBU210412, and by HKBU FRG2/09-10/081.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Chu, X., Zhao, K. (2013). Practical Random Linear Network Coding on GPUs. In: Yuen, D., Wang, L., Chi, X., Johnsson, L., Ge, W., Shi, Y. (eds) GPU Solutions to Multi-scale Problems in Science and Engineering. Lecture Notes in Earth System Sciences. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-16405-7_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-16405-7_6
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-16404-0
Online ISBN: 978-3-642-16405-7
eBook Packages: Earth and Environmental ScienceEarth and Environmental Science (R0)