好书推荐 好书速递 排行榜 读书文摘

Computer Networking

Computer Networking
作者:James F. Kurose / Keith W. Ross
副标题:A Top-Down Approach
出版社:Pearson
出版年:2012-03
ISBN:9780132856201
行业:计算机
浏览数:38

内容简介

Computer Networking continues with an early emphasis on application-layer paradigms and application programming interfaces (the top layer), encouraging a hands-on experience with protocols and networking concepts, before working down the protocol stack to more abstract layers.

This book has become the dominant book for this course because of the authors’ reputations, the precision of explanation, the quality of the art program, and the value of their own supplements.

Visit the authors’ blog for information and resources to discuss the newest edition, as well as valuable insights, teaching tips, and discussion about the field of Computer Networking

......(更多)

作者简介

Jim Kurose

Jim Kurose is a Distinguished University Professor of Computer Science at the University of Massachusetts, Amherst.

Dr. Kurose has received a number of recognitions for his educational activities including Outstanding Teacher Awards from the National Technological University (eight times), the University of Massachusetts, and the Northeast Association of Graduate Schools. He received the IEEE Taylor

Booth Education Medal and was recognized for his leadership of Massachusetts’ Commonwealth Information Technology Initiative. He has been the recipient of a GE Fellowship, an IBM Faculty Development Award, and a Lilly Teaching Fellowship.

Dr. Kurose is a former Editor-in-Chief of IEEE Transactions on Communications and of IEEE/ACM Transactions on Networking. He has been active in the program committees for IEEE Infocom, ACM SIGCOMM, ACM Internet Measurement Conference, and ACM SIGMETRICS for a number of years and has served as Technical Program Co-Chair for those conferences. He is a Fellow of the IEEE and the ACM. His research interests include network protocols and architecture, network measurement, sensor networks, multimedia communication, and modeling and performance evaluation. He holds a PhD in Computer Science from Columbia University.

Keith RossKeith Ross

Keith Ross is the Leonard J. Shustek Chair Professor and Head of the Computer Science Department at Polytechnic Institute of NYU. Before joining NYU-Poly in 2003, he was a professor at the University of Pennsylvania (13 years) and a professor at Eurecom Institute (5 years). He received a B.S.E.E from Tufts University, a M.S.E.E. from Columbia University, and a Ph.D. in Computer and Control Engineering from The University of Michigan. Keith Ross is also the founder and original CEO of Wimba, which develops online multimedia applications for e-learning and was acquired by Blackboard in 2010.

Professor Ross’s research interests are in security and privacy, social networks, peer-to-peer networking, Internet measurement, video streaming, content distribution networks, and stochastic modeling. He is an IEEE Fellow, recipient of the Infocom 2009 Best Paper Award, and recipient of 2011 and 2008 Best Paper Awards for Multimedia Communications (awarded by IEEE Communications Society). He has served on numerous journal editorial boards and conference program committees, including IEEE/ACM Transactions on Networking, ACM SIGCOMM, ACM CoNext, and ACM Internet Measurement Conference. He also has served as an advisor to the Federal Trade Commission on P2P file sharing.

......(更多)

目录

Chapter 1 Computer Networks and the Internet 1

1.1 What Is the Internet? 2

1.1.1 A Nuts-and-Bolts Description 2

1.1.2 A Services Description 5

1.1.3 What Is a Protocol? 7

1.2 The Network Edge 9

1.2.1 Access Networks 12

1.2.3 Physical Media 18

1.3 The Network Core 22

1.3.1 Packet Switching 22

1.3.2 Circuit Switching 27

1.3.3 A Network of Networks 32

1.4 Delay, Loss, and Throughput in Packet-Switched Networks 35

1.4.1 Overview of Delay in Packet-Switched Networks 35

1.4.2 Queuing Delay and Packet Loss 39

1.4.3 End-to-End Delay 42

1.4.4 Throughput in Computer Networks 44

1.5 Protocol Layers and Their Service Models 47

1.5.1 Layered Architecture 47

1.5.2 Encapsulation 53

1.6 Networks Under Attack 55

1.7 History of Computer Networking and the Internet 60

1.7.1 The Development of Packet Switching: 1961—1972 60

1.7.2 Proprietary Networks and Internetworking: 1972—1980 62

1.7.3 A Proliferation of Networks: 1980—1990 63

1.7.4 The Internet Explosion: The 1990s 64

1.7.5 The New Millennium 65

1.8 Summary 66

Homework Problems and Questions 68

Problems 70

Wireshark Lab 78

Interview: Leonard Kleinrock 80

Chapter 2 Application Layer 83

2.1 Principles of Network Applications 84

2.1.1 Network Application Architectures 86

2.1.2 Processes Communicating 88

2.1.3 Transport Services Available to Applications 91

2.1.4 Transport Services Provided by the Internet 93

2.1.5 Application-Layer Protocols 96

2.1.6 Network Applications Covered in This Book 97

2.2 The Web and HTTP 98

2.2.1 Overview of HTTP 98

2.2.2 Non-Persistent and Persistent Connections 100

2.2.3 HTTP Message Format 103

2.2.4 User-Server Interaction: Cookies 108

2.2.5 Web Caching 110

2.2.6 The Conditional GET 114

2.3 File Transfer: FTP 116

2.3.1 FTP Commands and Replies 118

2.4 Electronic Mail in the Internet 118

2.4.1 SMTP 121

2.4.2 Comparison with HTTP 124

2.4.3 Mail Message Format 125

2.4.4 Mail Access Protocols 125

2.5 DNS–The Internet’s Directory Service 130

2.5.1 Services Provided by DNS 131

2.5.2 Overview of How DNS Works 133

2.5.3 DNS Records and Messages 139

2.6 Peer-to-Peer Applications 144

2.6.1 P2P File Distribution 145

2.6.2 Distributed Hash Tables (DHTs) 151

2.6.3 Case Study: P2P Internet Telephony with Skype 158

2.7 Socket Programming: Creating Network Applications 156

2.7.1 Socket Programming with UDP 157

2.7.2 Socket Programming with TCP 163

2.8 Summary 168

Homework Problems and Questions 169

Problems 171

Socket Programming Assignments 179

Wireshark Labs 181

Interview: Bram Cohen 182

Chapter 3 Transport Layer 185

3.1 Introduction and Transport-Layer Services 186

3.1.1 Relationship Between Transport and Network Layers 186

3.1.2 Overview of the Transport Layer in the Internet 189

3.2 Multiplexing and Demultiplexing 191

3.3 Connectionless Transport: UDP 198

3.3.1 UDP Segment Structure 202

3.3.2 UDP Checksum 202

3.4 Principles of Reliable Data Transfer 204

3.4.1 Building a Reliable Data Transfer Protocol 206

3.4.2 Pipelined Reliable Data Transfer Protocols 215

3.4.3 Go-Back-N (GBN) 218

3.4.4 Selective Repeat (SR) 223

3.5 Connection-Oriented Transport: TCP 230

3.5.1 The TCP Connection 231

3.5.2 TCP Segment Structure 233

3.5.3 Round-Trip Time Estimation and Timeout 238

3.5.4 Reliable Data Transfer 242

3.5.5 Flow Control 250

3.5.6 TCP Connection Management 252

3.6 Principles of Congestion Control 259

3.6.1 The Causes and the Costs of Congestion 259

3.6.2 Approaches to Congestion Control 265

3.6.3 Network-Assisted Congestion-Control Example:

ATM ABR Congestion Control 266

3.7 TCP Congestion Control 269

3.7.1 Fairness 279

3.8 Summary 283

Homework Problems and Questions 285

Problems 288

Programming Assignments 300

Wireshark Lab: Exploring TCP 301

Wireshark Lab: Exploring UDP 301

Interview: Sally Floyd 302

Chapter 4 The Network Layer 305

4.1 Introduction 306

4.1.1 Forwarding and Routing 308

4.1.2 Network Service Models 310

4.2 Virtual Circuit and Datagram Networks 313

4.2.1 Virtual-Circuit Networks 314

4.2.2 Datagram Networks 317

4.2.3 Origins of VC and Datagram Networks 319

4.3 What’s Inside a Router? 320

4.3.1 Input Processing 322

4.3.2 Switching 324

4.3.3 Output Processing 326

4.3.4 Where Does Queuing Occur? 327

4.3.5 The Routing Control Plane 331

4.4 The Internet Protocol (IP): Forwarding and Addressing in the Internet 331

4.4.1 Datagram Format 332

4.4.2 IPv4 Addressing 338

4.4.3 Internet Control Message Protocol (ICMP) 353

4.4.4 IPv6 356

4.4.5 A Brief Introduction into IP Security 362

4.5 Routing Algorithms 363

4.5.1 The Link-State (LS) Routing Algorithm 366

4.5.2 The Distance-Vector (DV) Routing Algorithm 371

4.5.3 Hierarchical Routing 379

4.6 Routing in the Internet 383

4.6.1 Intra-AS Routing in the Internet: RIP 384

4.6.2 Intra-AS Routing in the Internet: OSPF 388

4.6.3 Inter-AS Routing: BGP 390

4.7 Broadcast and Multicast Routing 399

4.7.1 Broadcast Routing Algorithms 400

4.7.2 Multicast 405

4.8 Summary 412

Homework Problems and Questions 413

Problems 416

Socket Programming Assignment 428

Programming Assignment 429

Wireshark Labs 430

Interview: Vinton G. Cerf 431

Chapter 5 The Link Layer: Links, Access Networks, and LANs 433

5.1 Introduction to the Link Layer 434

5.1.1 The Services Provided by the Link Layer 436

5.1.2 Where Is the Link Layer Implemented? 437

5.2 Error-Detection and -Correction Techniques 438

5.2.1 Parity Checks 440

5.2.2 Checksumming Methods 442

5.2.3 Cyclic Redundancy Check (CRC) 443

5.3 Multiple Access Links and Protocols 445

5.3.1 Channel Partitioning Protocols 448

5.3.2 Random Access Protocols 449

5.3.3 Taking-Turns Protocols 459

5.3.4 DOCSIS: The Link-Layer Protocol for Cable Internet Access 460

5.4 Switched Local Area Networks 461

5.4.1 Link-Layer Addressing and ARP 462

5.4.2 Ethernet 469

5.4.3 Link-Layer Switches 476

5.4.4 Virtual Local Area Networks (VLANs) 482

5.5 Link Virtualization: A Network as a Link Layer 486

5.5.1 Multiprotocol Label Switching (MPLS) 487

5.6 Data Center Networking 490

5.7 Retrospective: A Day in the Life of a Web Page Request 495

5.7.1 Getting Started: DHCP, UDP, IP, and Ethernet 495

5.7.2 Still Getting Started: DNS, ARP 497

5.7.3 Still Getting Started: Intra-Domain Routing to the DNS Server 498

5.7.4 Web Client-Server Interaction: TCP and HTTP 499

5.8 Summary 500

Homework Problems and Questions 502

Problems 503

Wireshark Labs 510

Interview: Simon S. Lam 511

Chapter 6 Wireless and Mobile Networks 513

6.1 Introduction 514

6.2 Wireless Links and Network Characteristics 519

6.2.1 CDMA 522

6.3 WiFi: 802.11 Wireless LANs 526

6.3.1 The 802.11 Architecture 527

6.3.2 The 802.11 MAC Protocol 531

6.3.3 The IEEE 802.11 Frame 537

6.3.4 Mobility in the Same IP Subnet 541

6.3.5 Advanced Features in 802.11 542

6.3.6 Personal Area Networks: Bluetooth and Zipbee 544

6.4 Cellular Internet Access 546

6.4.1 An Overview of Cellular Network Architecture 547

6.4.2 3G Cellular Data Networks: Extending the Internet to Cellular Subscribers 550

6.4.3 On to 4G: LTE 553

6.5 Mobility Management: Principles 555

6.5.1 Addressing 557

6.5.2 Routing to a Mobile Node 559

6.6 Mobile IP 564

6.7 Managing Mobility in Cellular Networks 570

6.7.1 Routing Calls to a Mobile User 571

6.7.2 Handoffs in GSM 572

6.8 Wireless and Mobility: Impact on Higher-Layer Protocols 575

6.9 Summary 578

Homework Problems and Questions 578

Problems 580

Wireshark Labs 583

Interview: Deborah Estrin 584

Chapter 7 Multimedia Networking 587

7.1 Multimedia Networking Applications 588

7.1.1 Properties of Video 588

7.1.2 Properties of Audio 590

7.1.3 Types of Multimedia Network Applications 591

7.2 Streaming Stored Video 593

7.2.1 UDP Streaming 595

7.2.2 HTTP Streaming 596

7.2.3 Adaptive Streaming and DASH 600

7.2.4 Content Distribution Networks 602

7.2.5 Case Studies: Netflix, YouTube, and KanKan 608

7.3 Voice-over-IP 612

7.3.1 Limitations of the Best-Effort IP Service 612

7.3.2 Removing Jitter at the Receiver for Audio 614

7.3.3 Recovering from Packet Loss 618

7.3.4 Case Study: Internet Telephony with Skype 621

7.4 Protocols for Real-Time Interactive Applications 623

7.4.1 RTP 623

7.4.2 SIP 626

7.5 Network Support for Multimedia 632

7.5.1 Dimensioning Best-Effort Networks 634

7.5.2 Providing Multiple Classes of Service 636

7.5.3 Diffserv 648

7.5.4 Per-Connection Quality-of-Service (QoS) Guarantees:

Resource Reservation and Call Admission 652

7.6 Summary 655

Homework Problems and Questions 656

Problems 658

Programming Assignment 666

Interview: Henning Schulzrinne 668

Chapter 8 Security in Computer Networks 671

8.1 What Is Network Security? 672

8.2 Principles of Cryptography 675

8.2.1 Symmetric Key Cryptography 676

8.2.2 Public Key Encryption 683

8.3 Message Integrity and Digital Signatures 688

8.3.1 Cryptographic Hash Functions 689

8.3.2 Message Authentication Code 691

8.3.3 Digital Signatures 693

8.4 End-Point Authentication 700

8.4.1 Authentication Protocol ap1.0 700

8.4.2 Authentication Protocol ap2.0 701

8.4.3 Authentication Protocol ap3.0 701

8.4.4 Authentication Protocol ap3.1 703

8.4.5 Authentication Protocol ap4.0 703

8.5 Securing E-mail 705

8.5.1 Secure E-mail 706

8.5.2 PGP 710

8.6 Securing TCP Connections: SSL 711

8.6.1 The Big Picture 713

8.6.2 A More Complete Picture 716

8.7 Network-Layer Security: IPsec and Virtual Private Networks 718

8.7.1 IPsec and Virtual Private Networks (VPNs) 718

8.7.2 The AH and ESP Protocols 720

8.7.3 Security Associations 720

8.7.4 The IPsec Datagram 721

8.7.5 IKE: Key Management in IPsec 725

8.8 Securing Wireless LANs 726

8.8.1 Wired Equivalent Privacy (WEP) 726

8.8.2 IEEE802.11i 728

8.9 Operational Security: Firewalls and Intrusion Detection Systems 731

8.9.1 Firewalls 731

8.9.2 Intrusion Detection Systems 739

8.10 Summary 742

Homework Problems and Questions 744

Problems 746

Wireshark Lab 752

IPsec Lab 752

Interview: Steven M. Bellovin 753

Chapter 9 Network Management 755

9.1 What Is Network Management? 756

9.2 The Infrastructure for Network Management 760

9.3 The Internet-Standard Management Framework 764

9.3.1 Structure of Management Information: SMI 766

9.3.2 Management Information Base: MIB 770

9.3.3 SNMP Protocol Operations and Transport Mappings 772

9.3.4 Security and Administration 775

9.4 ASN.1 778

9.5 Conclusion 783

Homework Problems and Questions 783

Problems 784

Interview: Jennifer Rexford 786

References 789

Index 823

......(更多)

读书文摘

因为排队时延随时间变化,所以分组n发送到路由器n的往返时延实际上比分组n+1发送到路由器n+1的往返时延更大。的确,我们在上述例子中观察到了这种现象:到路由器6的时延比到路由器7的时延大。

......(更多)

猜你喜欢

点击查看