Description Computer Networks, 4E is the only introductory computer networking book written by authors who have had first-hand experience with many
of the protocols discussed in the book, who have actually designed some of them as well, and who are still actively designing the computer
networks today.
This newly revised edition continues to provide an enduring, practical understanding of networks and their building
blocks through rich, example-based instruction. The authors' focus is on the why of network design, not just the specifications comprising
today's systems but how key technologies and protocols actually work in the real world to solve specific problems. The new edition makes
less use of computer code to explain protocols than earlier editions. Moreover, this new edition shifts the focus somewhat higher in
the protocol stack where there is generally more innovative and exciting work going on at the application and session layers than at
the link and physical layers.
Audience
Networking professionals and upper level undergraduate and graduate students in CS, EE, and CSE programs. The size of the audience in each of these market segments is approximately equal.
Contents Foreword
Foreword to the First Edition
Preface
Chapter 1: Foundation
Problem: Building a Network
1.1 Applications
1.2 Requirements
1.2.1 Connectivity
1.2.2 Cost-Effective Resource Sharing
1.2.3 Support for Common Services
1.3 Network Architecture
1.3.1 Layering
and Protocols
1.3.2 OSI Architecture
1.3.3 Internet Architecture
1.4 Implementing Network Software
1.4.1 Application Programming
Interface (Sockets)
1.4.2 Example Application
1.4.3 Protocol Implementation Issues
1.5 Performance
1.5.1 Bandwidth and Latency
1.5.2
Delay – Bandwidth Product
1.5.3 High-Speed Networks
1.5.4 Application Performance Needs
1.6 Summary
Open Issue: Ubiquitous Networking
Further Reading
Exercises
Chapter 2: Direct Link Networks
Problem: Physically Connecting Hosts
2.1 Hardware Building Blocks
2.1.1 Nodes
2.1.2 Links
2.2 Encoding (NRZ, NRZI, Manchester, 4B/5B)
2.3 Framing
2.3.1 Byte-Oriented Protocols (PPP)
2.3.2 Bit-Oriented
Protocols (HDLC)
2.3.3 Clock-Based Framing (SONET)
2.4 Error Detection
2.4.1 Two-Dimensional Parity
2.4.2 Internet Checksum Algorithm
2.4.3 Cyclic Redundancy Check
2.5 Reliable Transmission
2.5.1 Stop-and-Wait
2.5.2 Sliding Window
2.5.3 Concurrent Logical Channels
2.6 Ethernet (802.3)
2.6.1 Physical Properties
2.6.2 Access Protocol
2.6.3 Experience with Ethernet
2.7 Rings (802.5, FDDI, RPR)
2.7.1 Token Ring Media Access Control
2.7.2 Token Ring Maintenance
2.7.3 FDDI
2.7.4 Resilient Packet Ring (802.17)
2.8 Wireless
2.8.1 Bluetooth/802.15.1
2.8.2 802.11/Wi-Fi
2.8.3 802.16/WiMAX
2.8.4 Cell Phone Technologies
2.9 Summary
Open Issue: Sensor Networks
Further Reading
Exercises
Chapter 3: Packet Switching
Problem: Not All Networks Are Directly Connected
3.1 Switching and
Forwarding
3.1.1 Datagrams
3.1.2 Virtual Circuit Switching
3.1.3 Source Routing
3.2 Bridges and LAN Switches
3.2.1 Learning Bridges
3.2.2 Spanning Tree Algorithm
3.2.3 Broadcast and Multicast
3.2.4 Limitations of Bridges
3.3 Cell Switching (ATM)
3.3.1 Cells
3.3.2
Segmentation and Reassembly
3.3.3 Virtual Paths
3.3.4 Physical Layers for ATM
3.4 Implementation and Performance
3.4.1 Ports
3.4.2
Fabrics
3.5 Summary
Open Issue: The Future of Switching
Further Reading
Exercises
Chapter 4: Internetworking
Problem: There
Is More Than One Network
4.1 Simple Internetworking (IP)
4.1.1 What Is an Internetwork?
4.1.2 Service Model
4.1.3 Global Addresses
4.1.4 Datagram Forwarding in IP
4.1.5 Address Translation (ARP)
4.1.6 Host Configuration (DHCP)
4.1.7 Error Reporting (ICMP)
4.1.8
Virtual Networks and Tunnels
4.2 Routing
4.2.1 Network as a Graph
4.2.2 Distance Vector (RIP)
4.2.3 Link State (OSPF)
4.2.4 Metrics
4.2.5 Routing for Mobile Hosts
4.2.6 Router Implementation
4.3 Global Internet
4.3.1 Subnetting
4.3.2 Classless Routing (CIDR)
4.3.3 Interdomain Routing (BGP)
4.3.4 Routing Areas
4.3.5 IP Version 6 (IPv6)
4.4 Multicast
4.4.1 Multicast Addresses
4.4.2 Multicast
Routing (DVMRP, PIM, MSDP)
4.5 Multiprotocol Label Switching
4.5.1 Destination-Based Forwarding
4.5.2 Explicit Routing
4.5.3 Virtual
Private Networks and Tunnels
4.6 Summary
Open Issue: Deployment of IPv6
Further Reading
Exercises
Chapter 5: End-to-End Protocols
Problem: Getting Processes to Communicate
5.1 Simple Demultiplexer (UDP)
5.2 Reliable Byte Stream (TCP)
5.2.1 End-to-End Issues
5.2.2
Segment Format
5.2.3 Connection Establishment and Termination
5.2.4 Sliding Window Revisited
5.2.5 Triggering Transmission
5.2.6
Adaptive Retransmission
5.2.7 Record Boundaries
5.2.8 TCP Extensions
5.2.9 Alternative Design Choices
5.3 Remote Procedure Call
5.3.1 RPC Fundamentals
5.3.2 RPC Implementations (SunRPC, DCE)
5.4 Transport for Real-Time Applications (RTP)
5.4.1 Requirements
5.4.2 RTP Details
5.4.3 Control Protocol
5.5 Performance
5.6 Summary
Open Issue: Application-Specific Protocols
Further Reading
Exercises
Chapter 6: Congestion Control and Resource Allocation
Problem: Allocating Resources
6.1 Issues in Resource Allocation
6.1.1 Network Model
6.1.2 Taxonomy
6.1.3 Evaluation Criteria
6.2 Queuing Disciplines
6.2.1 FIFO
6.2.2 Fair Queuing
6.3 TCP Congestion
Control
6.3.1 Additive Increase/Multiplicative Decrease
6.3.2 Slow Start
6.3.3 Fast Retransmit and Fast Recovery
6.4 Congestion-Avoidance
Mechanisms
6.4.1 DECbit
6.4.2 Random Early Detection (RED)
6.4.3 Source-Based Congestion Avoidance
6.5 Quality of Service
6.5.1
Application Requirements
6.5.2 Integrated Services (RSVP)
6.5.3 Differentiated Services (EF, AF)
6.5.4 Equation-Based Congestion Control
6.6 Summary
Open Issue: Inside versus Outside the Network
Further Reading
Exercises
Chapter 7: End-to-End Data
Problem:
What Do We Do with the Data?
7.1 Presentation Formatting
7.1.1 Taxonomy
7.1.2 Examples (XDR, ASN.1, NDR)
7.1.3 Markup Languages (XML)
7.2 Data Compression
7.2.1 Lossless Compression Algorithms
7.2.2 Image Compression (JPEG)
7.2.3 Video Compression (MPEG)
7.2.4 Transmitting
MPEG over a Network
7.2.5 Audio Compression (MP3)
7.3 Summary
Open Issue: Computer Networks Meet Consumer Electronics
Further Reading
Exercises
Chapter 8: Network Security
Problem: Security Attacks
8.1 Cryptographic Tools
8.1.1 Principles of Ciphers
8.1.2
Symmetric-Key Ciphers
8.1.3 Public-Key Ciphers
8.1.4 Authenticators
8.2 Key Predistribution
8.2.1 Predistribution of Public Keys
8.2.2 Predistribution of Symmetric Keys
8.3 Authentication Protocols
8.3.1 Originality and Timeliness Techniques
8.3.2 Public-Key
Authentication Protocols
8.3.3 Symmetric-Key Authentication Protocols
8.3.4 Diffie-Hellman Key Agreement
8.4 Secure Systems
8.4.1
Pretty Good Privacy (PGP)
8.4.2 Secure Shell (SSH)
8.4.3 Transport Layer Security (TLS, SSL, HTTPS)
8.4.4 IP Security (IPsec)
8.4.5
Wireless Security (802.11i)
8.5 Firewalls
8.5.1 Strengths and Weaknesses of Firewalls
8.6 Summary
Open Issue: Denial-of-Service Attacks
Further Reading
Exercises
Chapter 9: Applications
Problem: Applications Need Their Own Protocols
9.1 Traditional Applications
9.1.1 Electronic Mail (SMTP, MIME, IMAP)
9.1.2 World Wide Web (HTTP)
9.1.3 Name Service (DNS)
9.1.4 Network Management (SNMP)
9.2 Web
Services
9.2.1 Custom Application Protocols (WSDL, SOAP)
9.2.2 A Generic Application Protocol (REST)
9.3 Multimedia Applications
9.3.1
Session Control and Call Control (SDP, SIP, H.323)
9.3.2 Resource Allocation for Multimedia Applications
9.4 Overlay Networks
9.4.1
Routing Overlays
9.4.2 Peer-to-Peer Networks (Gnutella, BitTorrent)
9.4.3 Content Distribution Networks
9.5 Summary
Open Issue: New
Network Architecture
Further Reading
Exercises
Solutions to Select Exercises
Glossary
Bibliography
Bibliographic & ordering Information Hardbound, 848 pages, publication date: MAR-2007
ISBN-13: 978-0-12-370548-8
ISBN-10: 0-12-370548-7
Imprint: MORGAN KAUFFMAN Price:Order form USD 99.95 EUR 80.95 GBP 54.99
Books and book related electronic products are priced in US dollars (USD), euro (EUR), and Great Britain Pounds (GBP). USD prices apply to the Americas and Asia Pacific. EUR prices apply in Europe and the Middle East. GBP prices apply to the UK and all other countries.