Menu Expand
Computer Networking: A Top-Down Approach, Global Edition

Computer Networking: A Top-Down Approach, Global Edition

James Kurose | Keith Ross

(2017)

Additional Information

Book Details

Abstract

For courses in Networking/Communications.

 

Motivate your students with a top-down, layered approach to computer networking

Unique among computer networking texts, the Seventh Edition of the popular Computer Networking: A Top Down Approach builds on the author’s long tradition of teaching this complex subject through a layered approach in a “top-down manner.” The text works its way from the application layer down toward the physical layer, motivating students by exposing them to important concepts early in their study of networking. Focusing on the Internet and the fundamentally important issues of networking, this text provides an excellent foundation for students in computer science and electrical engineering, without requiring extensive knowledge of programming or mathematics. The Seventh Edition has been updated to reflect the most important and exciting recent advances in networking.

 

MasteringComputerSciencenot included. Students, if MasteringComputerScience is a recommended/mandatory component of the course, please ask your instructor for the correct ISBN and course ID. MasteringComputerScience should only be purchased when required by an instructor. Instructors, contact your Pearson representative for more information.

 

MasteringComputerScience is an online homework, tutorial, and assessment program designed to work with this text to engage students and improve results. Interactive, self-paced tutorials provide individualized coaching to help students stay on track. With a wide range of activities available, students can actively learn, understand, and retain even the most difficult concepts.

Table of Contents

Section Title Page Action Price
Cover Cover
Title Page 1
Copyright Page 2
About the Authors 3
Preface 7
Contents 19
Chapter 1: Computer Networks and the Internet 29
1.1. What Is the Internet? 30
1.1.1. A Nuts-and-Bolts Description 30
1.1.2. A Services Description 33
1.1.3. What Is a Protocol? 35
1.2. The Network Edge 37
1.2.1. Access Networks 40
1.2.2. Physical Media 46
1.3. The Network Core 49
1.3.1. Packet Switching 51
1.3.2. Circuit Switching 55
1.3.3. A Network of Networks 59
1.4. Delay, Loss, and Throughput in Packet-Switched Networks 63
1.4.1. Overview of Delay in Packet-Switched Networks 63
1.4.2. Queuing Delay and Packet Loss 67
1.4.3. End-to-End Delay 69
1.4.4. Throughput in Computer Networks 71
1.5. Protocol Layers and Their Service Models 75
1.5.1. Layered Architecture 75
1.5.2. Encapsulation 81
1.6. Networks Under Attack 83
1.7. History of Computer Networking and the Internet 87
1.7.1. The Development of Packet Switching: 1961–1972 87
1.7.2. Proprietary Networks and Internetworking: 1972–1980 88
1.7.3. A Proliferation of Networks: 1980–1990 90
1.7.4. The Internet Explosion: The 1990s 91
1.7.5. The New Millennium 92
1.8. Summary 93
Homework Problems and Questions 95
Wireshark Lab 105
Interview: Leonard Kleinrock 107
Chapter 2: Application Layer 111
2.1. Principles of Network Applications 112
2.1.1. Network Application Architectures 114
2.1.2. Processes Communicating 116
2.1.3. Transport Services Available to Applications 118
2.1.4. Transport Services Provided by the Internet 121
2.1.5. Application-Layer Protocols 124
2.1.6. Network Applications Covered in This Book 125
2.2. The Web and HTTP 126
2.2.1. Overview of HTTP 126
2.2.2. Non-Persistent and Persistent Connections 128
2.2.3. HTTP Message Format 131
2.2.4. User-Server Interaction: Cookies 136
2.2.5. Web Caching 138
2.3. Electronic Mail in the Internet 144
2.3.1. SMTP 146
2.3.2. Comparison with HTTP 149
2.3.3. Mail Message Formats 149
2.3.4. Mail Access Protocols 150
2.4. DNS—The Internet’s Directory Service 154
2.4.1. Services Provided by DNS 155
2.4.2. Overview of How DNS Works 157
2.4.3. DNS Records and Messages 163
2.5. Peer-to-Peer Applications 168
2.5.1. P2P File Distribution 168
2.6. Video Streaming and Content Distribution Networks 175
2.6.1. Internet Video 175
2.6.2. HTTP Streaming and DASH 176
2.6.3. Content Distribution Networks 177
2.6.4. Case Studies: Netflix, YouTube, and Kankan 181
2.7. Socket Programming: Creating Network Applications 185
2.7.1. Socket Programming with UDP 187
2.7.2. Socket Programming with TCP 192
2.8. Summary 198
Homework Problems and Questions 199
Socket Programming Assignments 208
Wireshark Labs: HTTP, DNS 210
Interview: Marc Andreessen 212
Chapter 3: Transport Layer 215
3.1. Introduction and Transport-Layer Services 216
3.1.1. Relationship Between Transport and Network Layers 216
3.1.2. Overview of the Transport Layer in the Internet 219
3.2. Multiplexing and Demultiplexing 221
3.3. Connectionless Transport: UDP 228
3.3.1. UDP Segment Structure 232
3.3.2. UDP Checksum 232
3.4. Principles of Reliable Data Transfer 234
3.4.1. Building a Reliable Data Transfer Protocol 236
3.4.2. Pipelined Reliable Data Transfer Protocols 245
3.4.3. Go-Back-N (GBN) 249
3.4.4. Selective Repeat (SR) 254
3.5. Connection-Oriented Transport: TCP 261
3.5.1. The TCP Connection 261
3.5.2. TCP Segment Structure 264
3.5.3. Round-Trip Time Estimation and Timeout 269
3.5.4. Reliable Data Transfer 272
3.5.5. Flow Control 280
3.5.6. TCP Connection Management 283
3.6. Principles of Congestion Control 289
3.6.1. The Causes and the Costs of Congestion 289
3.6.2. Approaches to Congestion Control 296
3.7. TCP Congestion Control 297
3.7.1. Fairness 307
3.7.2. Explicit Congestion Notification (ECN): Network-assisted Congestion Control 310
3.8. Summary 312
Homework Problems and Questions 314
Programming Assignments 329
Wireshark Labs: Exploring TCP, UDP 330
Interview: Van Jacobson 331
Chapter 4: The Network Layer: Data Plane 333
4.1. Overview of Network Layer 334
4.1.1. Forwarding and Routing: The Network Data and Control Planes 334
4.1.2. Network Service Models 339
4.2. What’s Inside a Router? 341
4.2.1. Input Port Processing and Destination-Based Forwarding 344
4.2.2. Switching 347
4.2.3. Output Port Processing 349
4.2.4. Where Does Queuing Occur? 349
4.2.5. Packet Scheduling 353
4.3. The Internet Protocol (IP): IPv4, Addressing, IPv6, and More 357
4.3.1. IPv4 Datagram Format 358
4.3.2. IPv4 Datagram Fragmentation 360
4.3.3. IPv4 Addressing 362
4.3.4. Network Address Translation (NAT) 373
4.3.5. IPv6 376
4.4. Generalized Forwarding and SDN 382
4.4.1. Match 384
4.4.2. Action 386
4.4.3. OpenFlow Examples of Match-plus-action in Action 386
4.5. Summary 389
Homework Problems and Questions 389
Wireshark Lab 398
Interview: Vinton G. Cerf 399
Chapter 5: The Network Layer: Control Plane 401
5.1. Introduction 402
5.2. Routing Algorithms 404
5.2.1. The Link-State (LS) Routing Algorithm 407
5.2.2. The Distance-Vector (DV) Routing Algorithm 412
5.3. Intra-AS Routing in the Internet: OSPF 419
5.4. Routing Among the ISPs: BGP 423
5.4.1. The Role of BGP 423
5.4.2. Advertising BGP Route Information 424
5.4.3. Determining the Best Routes 426
5.4.4. IP-Anycast 430
5.4.5. Routing Policy 431
5.4.6. Putting the Pieces Together: Obtaining Internet Presence 434
5.5. The SDN Control Plane 435
5.5.1. The SDN Control Plane: SDN Controller and SDN Control Applications 438
5.5.2. OpenFlow Protocol 440
5.5.3. Data and Control Plane Interaction: An Example 442
5.5.4. SDN: Past and Future 443
5.6. ICMP: The Internet Control Message Protocol 447
5.7. Network Management and SNMP 449
5.7.1. The Network Management Framework 450
5.7.2. The Simple Network Management Protocol (SNMP) 452
5.8. Summary 454
Homework Problems and Questions 455
Socket Programming Assignment 461
Programming Assignment 462
Wireshark Lab 463
Interview: Jennifer Rexford 464
Chapter 6: The Link Layer and LANs 467
6.1. Introduction to the Link Layer 468
6.1.1. The Services Provided by the Link Layer 470
6.1.2. Where Is the Link Layer Implemented? 471
6.2. Error-Detection and -Correction Techniques 472
6.2.1. Parity Checks 474
6.2.2. Checksumming Methods 476
6.2.3. Cyclic Redundancy Check (CRC) 477
6.3. Multiple Access Links and Protocols 479
6.3.1. Channel Partitioning Protocols 481
6.3.2. Random Access Protocols 483
6.3.3. Taking-Turns Protocols 492
6.3.4. DOCSIS: The Link-Layer Protocol for Cable Internet Access 493
6.4. Switched Local Area Networks 495
6.4.1. Link-Layer Addressing and ARP 496
6.4.2. Ethernet 502
6.4.3. Link-Layer Switches 509
6.4.4. Virtual Local Area Networks (VLANs) 515
6.5. Link Virtualization: A Network as a Link Layer 519
6.5.1. Multiprotocol Label Switching (MPLS) 520
6.6. Data Center Networking 523
6.7. Retrospective: A Day in the Life of a Web Page Request 528
6.7.1. Getting Started: DHCP, UDP, IP, and Ethernet 528
6.7.2. Still Getting Started: DNS and ARP 530
6.7.3. Still Getting Started: Intra-Domain Routing to the DNS Server 531
6.7.4. Web Client-Server Interaction: TCP and HTTP 532
6.8. Summary 534
Homework Problems and Questions 535
Wireshark Lab 543
Interview: Simon S. Lam 544
Chapter 7: Wireless and Mobile Networks 547
7.1. Introduction 548
7.2. Wireless Links and Network Characteristics 553
7.2.1. CDMA 556
7.3. WiFi: 802.11 Wireless LANs 560
7.3.1. The 802.11 Architecture 561
7.3.2. The 802.11 MAC Protocol 565
7.3.3. The IEEE 802.11 Frame 570
7.3.4. Mobility in the Same IP Subnet 574
7.3.5. Advanced Features in 802.11 575
7.3.6. Personal Area Networks: Bluetooth and Zigbee 576
7.4. Cellular Internet Access 579
7.4.1. An Overview of Cellular Network Architecture 579
7.4.2. 3G Cellular Data Networks: Extending the Internet to Cellular Subscribers 582
7.4.3. On to 4G: LTE 585
7.5. Mobility Management: Principles 588
7.5.1. Addressing 590
7.5.2. Routing to a Mobile Node 592
7.6. Mobile IP 598
7.7. Managing Mobility in Cellular Networks 602
7.7.1. Routing Calls to a Mobile User 604
7.7.2. Handoffs in GSM 605
7.8. Wireless and Mobility: Impact on Higher-Layer Protocols 608
7.9. Summary 610
Homework Problems and Questions 611
Wireshark Lab 616
Interview: Deborah Estrin 617
Chapter 8: Security in Computer Networks 621
8.1. What Is Network Security? 622
8.2. Principles of Cryptography 624
8.2.1. Symmetric Key Cryptography 626
8.2.2. Public Key Encryption 632
8.3. Message Integrity and Digital Signatures 638
8.3.1. Cryptographic Hash Functions 639
8.3.2. Message Authentication Code 641
8.3.3. Digital Signatures 642
8.4. End-Point Authentication 649
8.4.1. Authentication Protocol ap1.0 650
8.4.2. Authentication Protocol ap2.0 650
8.4.3. Authentication Protocol ap3.0 651
8.4.4. Authentication Protocol ap3.1 651
8.4.5. Authentication Protocol ap4.0 652
8.5. Securing E-Mail 654
8.5.1. Secure E-Mail 655
8.5.2. PGP 658
8.6. Securing TCP Connections: SSL 659
8.6.1. The Big Picture 660
8.6.2. A More Complete Picture 663
8.7. Network-Layer Security: IPsec and Virtual Private Networks 665
8.7.1. IPsec and Virtual Private Networks (VPNs) 666
8.7.2. The AH and ESP Protocols 668
8.7.3. Security Associations 668
8.7.4. The IPsec Datagram 669
8.7.5. IKE: Key Management in IPsec 673
8.8. Securing Wireless LANs 674
8.8.1. Wired Equivalent Privacy (WEP) 674
8.8.2. IEEE 802.11i 676
8.9. Operational Security: Firewalls and Intrusion Detection Systems 679
8.9.1. Firewalls 679
8.9.2. Intrusion Detection Systems 687
8.10. Summary 690
Homework Problems and Questions 692
Wireshark Lab 700
IPsec Lab 700
Interview: Steven M. Bellovin 701
Chapter 9: Multimedia Networking 703
9.1. Multimedia Networking Applications 704
9.1.1. Properties of Video 704
9.1.2. Properties of Audio 705
9.1.3. Types of Multimedia Network Applications 707
9.2. Streaming Stored Video 709
9.2.1. UDP Streaming 711
9.2.2. HTTP Streaming 712
9.3. Voice-over-IP 716
9.3.1. Limitations of the Best-Effort IP Service 716
9.3.2. Removing Jitter at the Receiver for Audio 719
9.3.3. Recovering from Packet Loss 722
9.3.4. Case Study: VoIP with Skype 725
9.4. Protocols for Real-Time Conversational Applications 728
9.4.1. RTP 728
9.4.2. SIP 731
9.5. Network Support for Multimedia 737
9.5.1. Dimensioning Best-Effort Networks 739
9.5.2. Providing Multiple Classes of Service 740
9.5.3. Diffserv 747
9.5.4. Per-Connection Quality-of-Service (QoS) Guarantees: Resource Reservation and Call Admission 751
9.6. Summary 754
Homework Problems and Questions 755
Programming Assignment 763
Interview: Henning Schulzrinne 765
References 769
Index 811
Back Cover Back Cover