Network coding promises to significantly impact the way communications networks are designed, operated, and understood. This book presents a unified and intuitive overview of the theory, applications, challenges, and future directions of this emerging field, and is a must-have resource for those working in wireline or wireless networking. • Uses an engineering approach - explains the ideas and practical techniques • Covers mathematical underpinnings, practical algorithms, code selection, security, and network management • Discusses key topics of inter-session (non-multicast) network coding, lossy networks, lossless networks, and subgraph-selection algorithms Starting with basic concepts, models, and theory, then covering a core subset of results with full proofs, Ho and Lun provide an authoritative introduction to network coding that supplies both the background to support research and the practical considerations for designing coded networks. This is an essential resource for graduate students and researchers in electronic and computer engineering and for practitioners in the communications industry.