Software and firmware engineers developing products based on the Intel IXP2400 or IXP2800 network processors will find this guide to be an invaluable resource, whether they are new to programming Intel network processors or already familiar with the IXP1200 processor. Users will progress through a set of tasks typically faced by network software engineers, from basic receive and transmit operations to more complex packet processing. Each task is deconstructed, through working example code, into what the appropriate parts of the software and hardware can do and why it is important to the design and implementation. The various tradeoffs that are possible within the software and hardware are also fully analyzed. This coding guide progresses in steps from simple, single-threaded programs to a complete multithreaded reference application using the microblock programming paradigm. Application and programming notes are used throughout to accelerate the pace for readers already familiar with IXP1200 programming. Complete and working code examples from the book and the Intel IXA Software Developer's Kit are included on the CD-ROM.