Abstract:
Network coding has emerged as a promising technique to increase network capacity, improve the robustness and security as well as better share the available resources of networks, in which intermediate nodes are allowed to perform processing operations on the incoming packets, in addition to just forwarding them. The recent advance in network coding techniques is reviewed in this context. Firstly, the basic idea of network coding is introduced and its benefit over routing under multicast scenario is illustrated. Then the centralized and decentralized coding schemes are classified and analyzed in detail. And some advantages and disadvantages of the two kinds of coding schemes are compared. Furthermore, synchronization, error correction and speed of encoding and decoding for practical network coding are discussed. Moreover, the state of arts in application of network coding in wireless networks, P2P content distribution, distributed storage systems and network security are summarized respectively. Finally, the open issues and challenges for network coding referring to both theory and application in near future are proposed. It is an important trend to design a simple and efficient network coding scheme and combine network coding with other technologies, such as channel coding and modulation, routing, queue scheduling and streaming media, etc.