Suchen und Finden
Front cover
1
Title page
4
Copyright page
5
Foreword
8
Foreword to the First Edition
10
Preface
12
Audience
12
Changes in the Fourth Edition
13
Approach
14
Pedagogy and Features
15
Road Map and Course Use
16
Exercises
18
Supplemental Materials and Online Resources
19
Acknowledgments
19
Table of Contents
22
1 Foundation
31
Problem: Building a Network
31
1.1 Applications
33
1.2 Requirements
35
1.2.1 Connectivity
36
1.2.2 Cost-Effective Resource Sharing
40
1.2.3 Support for Common Services
43
1.3 Network Architecture
48
1.3.1 Layering and Protocols
49
1.3.2 OSI Architecture
55
1.3.3 Internet Architecture
57
1.4 Implementing Network Software
59
1.4.1 Application Programming Interface (Sockets)
60
1.4.2 Example Application
62
1.4.3 Protocol Implementation Issues
66
1.5 Performance
69
1.5.1 Bandwidth and Latency
69
1.5.2 Delay × Bandwidth Product
73
1.5.3 High-Speed Networks
75
1.5.4 Application Performance Needs
77
1.6 Summary
79
Open Issue: Ubiquitous Networking
80
Further Reading
81
Exercises
84
2 Direct Link Networks
93
Problem: Physically Connecting Hosts
93
2.1 Hardware Building Blocks
95
2.1.1 Nodes
95
2.1.2 Links
100
2.2 Encoding (NRZ, NRZI, Manchester, 4B/5B)
108
2.3 Framing
113
2.3.1 Byte-Oriented Protocols (PPP)
113
2.3.2 Bit-Oriented Protocols (HDLC)
116
2.3.3 Clock-Based Framing (SONET)
118
2.4 Error Detection
121
2.4.1 Two-Dimensional Parity
122
2.4.2 Internet Checksum Algorithm
123
2.4.3 Cyclic Redundancy Check
125
2.5 Reliable Transmission
130
2.5.1 Stop-and-Wait
131
2.5.2 Sliding Window
134
2.5.3 Concurrent Logical Channels
144
2.6 Ethernet (802.3)
145
2.6.1 Physical Properties
145
2.6.2 Access Protocol
148
2.6.3 Experience with Ethernet
152
2.7 Rings (802.5, FDDI, RPR)
153
2.7.1 Token Ring Media Access Control
156
2.7.2 Token Ring Maintenance
158
2.7.3 FDDI
159
2.7.4 Resilient Packet Ring (802.17)
160
2.8 Wireless
162
2.8.1 Bluetooth (802.15.1)
165
2.8.2 Wi-Fi (802.11)
166
2.8.3 WiMAX (802.16)
172
2.8.4 Cell Phone Technologies
174
2.9 Summary
176
Open Issue: Sensor Networks
177
Further Reading
178
Exercises
180
3 Packet Switching
195
Problem: Not All Networks Are Directly Connected
195
3.1 Switching and Forwarding
197
3.1.1 Datagrams
199
3.1.2 Virtual Circuit Switching
201
3.1.3 Source Routing
208
3.2 Bridges and LAN Switches
212
3.2.1 Learning Bridges
213
3.2.2 Spanning Tree Algorithm
216
3.2.3 Broadcast and Multicast
221
3.2.4 Limitations of Bridges
222
3.3 Cell Switching (ATM)
224
3.3.1 Cells
224
3.3.2 Segmentation and Reassembly
229
3.3.3 Virtual Paths
234
3.3.4 Physical Layers for ATM
235
3.4 Implementation and Performance
237
3.4.1 Ports
239
3.4.2 Fabrics
243
3.5 Summary
247
Open Issue: The Future of Switching
248
Further Reading
248
Exercises
250
4 Internetworking
261
Problem: There Is More Than One Network
261
4.1 Simple Internetworking (IP)
263
4.1.1 What Is an Internetwork?
263
4.1.2 Service Model
265
4.1.3 Global Addresses
277
4.1.4 Datagram Forwarding in IP
279
4.1.5 Address Translation (ARP)
283
4.1.6 Host Configuration (DHCP)
288
4.1.7 Error Reporting (ICMP)
291
4.1.8 Virtual Networks and Tunnels
291
4.2 Routing
295
4.2.1 Network as a Graph
297
4.2.2 Distance Vector (RIP)
298
4.2.3 Link State (OSPF)
306
4.2.4 Metrics
315
4.2.5 Routing for Mobile Hosts
318
4.2.6 Router Implementation
323
4.3 Global Internet
326
4.3.1 Subnetting
328
4.3.2 Classless Routing (CIDR)
332
4.3.3 Interdomain Routing (BGP)
335
4.3.4 Routing Areas
345
4.3.5 IP Version 6 (IPv6)
347
4.4 Multicast
358
4.4.1 Multicast Addresses
360
4.4.2 Multicast Routing (DVMRP, PIM, MSDP)
361
4.5 Multiprotocol Label Switching
372
4.5.1 Destination-Based Forwarding
373
4.5.2 Explicit Routing
379
4.5.3 Virtual Private Networks and Tunnels
381
4.6 Summary
385
Open Issue: Deployment of IPv6
387
Further Reading
388
Exercises
389
5 End-to-End Protocols
409
Problem: Getting Processes to Communicate
409
5.1 Simple Demultiplexer (UDP)
411
5.2 Reliable Byte Stream (TCP)
413
5.2.1 End-to-End Issues
414
5.2.2 Segment Format
416
5.2.3 Connection Establishment and Termination
419
5.2.4 Sliding Window Revisited
423
5.2.5 Triggering Transmission
429
5.2.6 Adaptive Retransmission
432
5.2.7 Record Boundaries
436
5.2.8 TCP Extensions
437
5.2.9 Alternative Design Choices
439
5.3 Remote Procedure Call
440
5.3.1 RPC Fundamentals
441
5.3.2 RPC Implementations (SunRPC, DCE)
448
5.4 Transport for Real-Time Applications (RTP)
455
5.4.1 Requirements
457
5.4.2 RTP Details
458
5.4.3 Control Protocol
462
5.5 Performance
466
5.6 Summary
469
Open Issue: Application-Specific Protocols
470
Further Reading
471
Exercises
472
6 Congestion Control and Resource Allocation
485
Problem: Allocating Resources
485
6.1 Issues in Resource Allocation
487
6.1.1 Network Model
487
6.1.2 Taxonomy
491
6.1.3 Evaluation Criteria
493
6.2 Queuing Disciplines
496
6.2.1 FIFO
497
6.2.2 Fair Queuing
498
6.3 TCP Congestion Control
503
6.3.1 Additive Increase/Multiplicative Decrease
503
6.3.2 Slow Start
506
6.3.3 Fast Retransmit and Fast Recovery
512
6.4 Congestion-Avoidance Mechanisms
515
6.4.1 DECbit
515
6.4.2 Random Early Detection (RED)
516
6.4.3 Source-Based Congestion Avoidance
522
6.5 Quality of Service
528
6.5.1 Application Requirements
529
6.5.2 Integrated Services (RSVP)
535
6.5.3 Differentiated Services (EF, AF)
545
6.5.4 Equation-Based Congestion Control
551
6.6 Summary
553
Open Issue: Inside versus Outside the Network
554
Further Reading
555
Exercises
556
7 End-to-End Data
571
Problem: What Do We Do with the Data?
571
7.1 Presentation Formatting
573
7.1.1 Taxonomy
574
7.1.2 Examples (XDR, ASN.1, NDR)
578
7.1.3 Markup Languages (XML)
582
7.2 Data Compression
586
7.2.1 Lossless Compression Algorithms
588
7.2.2 Image Compression (JPEG)
590
7.2.3 Video Compression (MPEG)
595
7.2.4 Transmitting MPEG over a Network
600
7.2.5 Audio Compression (MP3)
604
7.3 Summary
605
Open Issue: Computer Networks Meet Consumer Electronics
606
Further Reading
607
Exercises
608
8 Network Security
615
Problem: Security Attacks
615
8.1 Cryptographic Tools
618
8.1.1 Principles of Ciphers
618
8.1.2 Symmetric-Key Ciphers
620
8.1.3 Public-Key Ciphers
622
8.1.4 Authenticators
624
8.2 Key Predistribution
628
8.2.1 Predistribution of Public Keys
628
8.2.2 Predistribution of Symmetric Keys
633
8.3 Authentication Protocols
633
8.3.1 Originality and Timeliness Techniques
634
8.3.2 Public-Key Authentication Protocols
635
8.3.3 Symmetric-Key Authentication Protocols
636
8.3.4 Diffie-Hellman Key Agreement
640
8.4 Secure Systems
642
8.4.1 Pretty Good Privacy (PGP)
642
8.4.2 Secure Shell (SSH)
644
8.4.3 Transport Layer Security (TLS, SSL, HTTPS)
647
8.4.4 IP Security (IPsec)
651
8.4.5 Wireless Security (802.11i)
654
8.5 Firewalls
655
8.5.1 Strengths and Weaknesses of Firewalls
658
8.6 Summary
660
Open Issue: Denial-of-Service Attacks
661
Further Reading
662
Exercises
663
9 Applications
669
Problem: Applications Need Their Own Protocols
669
9.1 Traditional Applications
671
9.1.1 Electronic Mail (SMTP, MIME, IMAP)
672
9.1.2 World Wide Web (HTTP)
679
9.1.3 Name Service (DNS)
686
9.1.4 Network Management (SNMP)
695
9.2 Web Services
697
9.2.1 Custom Application Protocols (WSDL, SOAP)
699
9.2.2 A Generic Application Protocol (REST)
705
9.3 Multimedia Applications
707
9.3.1 Session Control and Call Control (SDP, SIP, H.323)
708
9.3.2 Resource Allocation for Multimedia Applications
717
9.4 Overlay Networks
722
9.4.1 Routing Overlays
724
9.4.2 Peer-to-Peer Networks (Gnutella, BitTorrent)
731
9.4.3 Content Distribution Networks
743
9.5 Summary
748
Open Issue: New Network Architecture
749
Further Reading
750
Exercises
751
Solutions to Select Excercises
758
Chapter 1
758
Chapter 2
759
Chapter 3
761
Chapter 4
762
Chapter 5
764
Chapter 6
765
Chapter 7
771
Glossary
772
Bibliography
798
Index
814
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.