This practical introduction to computer networking takes a highly effective "engineering" approach that not only describes how networks operate but also offers insight into the principles of network design. An Engineering Approach to Computer Networking simultaneously studies all three major network technologies-Asynchronous Transfer Mode (ATM), the Internet, and telephony. You will find clear overviews of these technologies and extensive up-to-date coverage of all essential networking topics: protocol layering; multiple access; switching; scheduling; naming, addressing, and routing; error and flow control; and traffic management. For each topic, the book identifies fundamental constraints and analyzes the pros and cons of several alternative solutions. It shows you how these concepts are put to use in real networks with detailed descriptions of common protocols used in the telephone, Internet, and ATM networks, and a tour of system design and protocol implementation techniques.