Error correcting coding is often analyzed in terms of its application to the separate levels within the data network in isolation from each other. In this fresh approach, the authors consider the data network as a superchannel (a multi-layered entity) which allows error correcting coding to be evaluated as it is applied to a number of network layers as a whole. By exposing the problems of applying error correcting coding in data networks, and by discussing coding theory and its applications, this original technique shows how to correct errors in the network through joint coding at different network layers. Discusses the problem of reconciling coding applied to different layers using a superchannel approachIncludes thorough coverage of all the key codes: linear block codes, Hamming, BCH and Reed-Solomon codes, LDPC codes decoding, as well as convolutional, turbo and iterative codingConsiders new areas of application of error correcting codes such as transport coding, code-based cryptosystems and coding for image compressionDemonstrates how to use error correcting coding to control such important data characteristics as mean message delayProvides theoretical explanations backed up by numerous real-world examples and practical recommendationsFeatures a companion website containing additional research results including new constructions of LDPC codes, joint error-control coding and synchronization, Reed-Muller codes and their list decodingBy progressing from theory through to practical problem solving, this resource contains invaluable advice for researchers, postgraduate students, engineers and computer scientists interested in data communications and applications of coding theory.