Designing Embedded Networking Applications: Essential Insights for Developers of Intel IXP4XX Network Processor Systems

It's hard to read through a book on the principles of magic without glancing at the cover periodically to make sure it isn't a book on software design.
Bruce Tognazzini
This chapter describes the APIs that make up the Intel IXP400 software. In most cases, each API corresponds to an interface on the device and provides a C-language abstraction to control, transmit, and receive data on the interface. The Ethernet interface and access component IxEthAcc has been covered in detail in Chapter 6. The APIs, or components, discussed in this chapter are:
Cryptography
ATM/UTOPIA
HSS/HDLC
TimeSync
OSAL
UART
USB
NPE download and message handler
Queue manager
For each API, you have a description of the functions available on the API and some example code fragments to show you how to use the functions. Complete details of each software API are covered in the software programmer's guide (Intel 2004c).