Band Codes: Controlled Complexity Network Coding for Peer-to-Peer Video Streaming
We present Band Codes (BC), a novel class of rate less codes that makes possible to control the computational complexity of Network Coding (NC). NC increases throughput of the networks via packet recombinations at the network nodes. In a NC scenario based on rate less codes, the recombinations at the nodes alter the packet degree distribution selected at the source and increase the computational complexity of the packet decoding process. Unlike other classes of rate less codes, BC preserve the degree distribution of the encoded packets through the recombinations at the nodes. Furthermore, BC enable to control the decoding complexity of each network node independently from the rest of the network. We evaluate BC in a P2P scenario using a purposely designed random-push protocol for live video streaming. The experiments show that BC achieve high encoding efficiency, enable nodes with different computational capabilities to coexist within the same network and reduce the processor load on a real mobile device by nearly 50%.