Preface |
|
xvii | |
Trademarks |
|
xxiii | |
|
|
1 | (32) |
|
1.1 Overview of the Internet |
|
|
2 | (7) |
|
|
2 | (2) |
|
|
4 | (2) |
|
|
6 | (1) |
|
1.1.4 Accessing the Internet |
|
|
7 | (1) |
|
1.1.5 Hardware and Software |
|
|
8 | (1) |
|
|
9 | (13) |
|
|
9 | (3) |
|
1.2.2 TCP/IP Protocol Suite |
|
|
12 | (8) |
|
|
20 | (2) |
|
|
22 | (2) |
|
|
22 | (1) |
|
1.3.2 Birth of the Internet |
|
|
22 | (2) |
|
|
24 | (1) |
|
1.4 Standards and Administration |
|
|
24 | (3) |
|
|
24 | (2) |
|
1.4.2 Internet Administration |
|
|
26 | (1) |
|
1.5 End-Chapter Materials |
|
|
27 | (2) |
|
|
27 | (1) |
|
|
28 | (1) |
|
|
28 | (1) |
|
|
29 | (2) |
|
|
29 | (1) |
|
|
29 | (1) |
|
|
30 | (1) |
|
1.7 Simulation Experiments |
|
|
31 | (2) |
|
|
31 | (1) |
|
|
32 | (1) |
|
Chapter 2 Application Layer |
|
|
33 | (106) |
|
|
34 | (4) |
|
|
35 | (1) |
|
2.1.2 Application-Layer Paradigms |
|
|
36 | (2) |
|
2.2 Client-Server Paradigm |
|
|
38 | (6) |
|
2.2.1 Application Programming Interface |
|
|
39 | (4) |
|
2.2.2 Using Services of the Transport Layer |
|
|
43 | (1) |
|
2.3 Standard Client-Server Applications |
|
|
44 | (48) |
|
2.3.1 World Wide Web and HTTP |
|
|
44 | (15) |
|
|
59 | (4) |
|
|
63 | (13) |
|
|
76 | (2) |
|
|
78 | (3) |
|
2.3.6 Domain Name System (DNS) |
|
|
81 | (11) |
|
2.4 Peer-to-Peer Paradigm |
|
|
92 | (22) |
|
|
92 | (3) |
|
2.4.2 Distributed Hash Table (DHT) |
|
|
95 | (2) |
|
|
97 | (7) |
|
|
104 | (4) |
|
|
108 | (4) |
|
2.4.6 A Popular P2P Network: BitTorrent |
|
|
112 | (2) |
|
2.5 Socket Interface Programming |
|
|
114 | (14) |
|
2.5.1 Socket Interface in C |
|
|
114 | (14) |
|
2.6 End-Chapter Materials |
|
|
128 | (2) |
|
|
128 | (1) |
|
|
129 | (1) |
|
|
129 | (1) |
|
|
130 | (6) |
|
|
130 | (1) |
|
|
130 | (2) |
|
|
132 | (4) |
|
2.8 Simulation Experiments |
|
|
136 | (1) |
|
|
136 | (1) |
|
|
136 | (1) |
|
2.9 Programming Assignment |
|
|
137 | (2) |
|
Chapter 3 Transport Layer |
|
|
139 | (102) |
|
|
140 | (14) |
|
3.1.1 Transport-Layer Services |
|
|
141 | (13) |
|
3.2 Transport-Layer Protocols |
|
|
154 | (21) |
|
|
154 | (1) |
|
3.2.2 Stop-and-Wait Protocol |
|
|
155 | (5) |
|
3.2.3 Go-Back-N Protocol (GBN) |
|
|
160 | (6) |
|
3.2.4 Selective-Repeat Protocol |
|
|
166 | (7) |
|
3.2.5 Bidirectional Protocols: Piggybacking |
|
|
173 | (1) |
|
3.2.6 Internet Transport-Layer Protocols |
|
|
173 | (2) |
|
3.3 User Datagram Protocol (UDP) |
|
|
175 | (6) |
|
|
175 | (1) |
|
|
176 | (3) |
|
|
179 | (2) |
|
3.4 Transmission Control Protocol (TCP) |
|
|
181 | (46) |
|
|
181 | (3) |
|
|
184 | (1) |
|
|
185 | (3) |
|
|
188 | (6) |
|
3.4.5 State Transition Diagram |
|
|
194 | (4) |
|
|
198 | (2) |
|
|
200 | (5) |
|
|
205 | (8) |
|
3.4.9 TCP Congestion Control |
|
|
213 | (10) |
|
|
223 | (4) |
|
|
227 | (1) |
|
3.5 End-Chapter Materials |
|
|
227 | (1) |
|
|
227 | (1) |
|
|
227 | (1) |
|
|
228 | (1) |
|
|
228 | (11) |
|
|
228 | (1) |
|
|
229 | (3) |
|
|
232 | (7) |
|
3.7 Simulation Experiments |
|
|
239 | (1) |
|
|
239 | (1) |
|
|
239 | (1) |
|
3.8 Programming Assignment |
|
|
240 | (1) |
|
|
241 | (134) |
|
|
242 | (19) |
|
4.1.1 Network-Layer Services |
|
|
243 | (3) |
|
|
246 | (5) |
|
4.1.3 Network-Layer Performance |
|
|
251 | (4) |
|
4.1.4 Network-Layer Congestion |
|
|
255 | (3) |
|
4.1.5 Structure of A Router |
|
|
258 | (3) |
|
4.2 Network-Layer Protocols |
|
|
261 | (38) |
|
4.2.1 IPv4 Datagram Format |
|
|
262 | (7) |
|
|
269 | (17) |
|
4.2.3 Forwarding of IP Packets |
|
|
286 | (9) |
|
|
295 | (4) |
|
|
299 | (34) |
|
|
300 | (2) |
|
|
302 | (11) |
|
4.3.3 Unicast Routing Protocols |
|
|
313 | (20) |
|
|
333 | (17) |
|
|
333 | (3) |
|
4.4.2 Multicasting Basics |
|
|
336 | (7) |
|
4.4.3 Intradomain Routing Protocols |
|
|
343 | (6) |
|
4.4.4 Interdomain Routing Protocols |
|
|
349 | (1) |
|
|
350 | (11) |
|
|
351 | (2) |
|
|
353 | (5) |
|
4.5.3 Transition from IPv4 to IPv6 |
|
|
358 | (1) |
|
|
359 | (2) |
|
4.6 End-Chapter Materials |
|
|
361 | (1) |
|
|
361 | (1) |
|
|
361 | (1) |
|
|
362 | (1) |
|
|
362 | (11) |
|
|
362 | (1) |
|
|
363 | (3) |
|
|
366 | (7) |
|
4.8 Simulation Experiments |
|
|
373 | (1) |
|
|
373 | (1) |
|
|
373 | (1) |
|
4.9 Programming Assignment |
|
|
374 | (1) |
|
Chapter 5 Data-Link Layer: Wired Networks |
|
|
375 | (104) |
|
|
376 | (2) |
|
|
377 | (1) |
|
|
377 | (1) |
|
|
378 | (1) |
|
5.2 Data Link Control (DLC) |
|
|
378 | (25) |
|
|
378 | (3) |
|
5.2.2 Flow and Error Control |
|
|
381 | (1) |
|
5.2.3 Error Detection and Correction |
|
|
382 | (14) |
|
|
396 | (7) |
|
5.3 Multiple Access Protocols |
|
|
403 | (16) |
|
|
404 | (12) |
|
|
416 | (3) |
|
|
419 | (1) |
|
5.4 Link-Layer Addressing |
|
|
419 | (9) |
|
5.5 Wired Lans: Ethernet Protocol |
|
|
428 | (14) |
|
|
428 | (1) |
|
|
429 | (7) |
|
5.5.3 Fast Ethernet (100 Mbps) |
|
|
436 | (1) |
|
|
437 | (1) |
|
5.5.5 10-Gigabit Ethernet |
|
|
438 | (1) |
|
|
438 | (4) |
|
|
442 | (18) |
|
5.6.1 Point-to-Point Networks |
|
|
443 | (5) |
|
|
448 | (7) |
|
5.6.3 Switched Network: ATM |
|
|
455 | (5) |
|
|
460 | (4) |
|
|
460 | (1) |
|
5.7.2 Link-Layer Switches |
|
|
461 | (2) |
|
|
463 | (1) |
|
5.8 End-Chapter Materials |
|
|
464 | (2) |
|
5.8.1 Recommended Reading |
|
|
464 | (1) |
|
|
464 | (1) |
|
|
465 | (1) |
|
|
466 | (10) |
|
|
466 | (1) |
|
|
466 | (2) |
|
|
468 | (8) |
|
5.10 Simulation Experiments |
|
|
476 | (1) |
|
|
476 | (1) |
|
|
477 | (1) |
|
5.11 Programming Assignments |
|
|
477 | (2) |
|
Chapter 6 Wireless Networks and Mobile IP |
|
|
479 | (68) |
|
|
480 | (23) |
|
|
480 | (3) |
|
6.1.2 IEEE 802.11 Project |
|
|
483 | (12) |
|
|
495 | (6) |
|
|
501 | (2) |
|
6.2 Other Wireless Networks |
|
|
503 | (24) |
|
|
503 | (7) |
|
|
510 | (11) |
|
|
521 | (6) |
|
|
527 | (9) |
|
|
527 | (2) |
|
|
529 | (1) |
|
|
530 | (5) |
|
6.3.4 Inefficiency in Mobile IP |
|
|
535 | (1) |
|
6.4 End-Chapter Materials |
|
|
536 | (2) |
|
|
536 | (1) |
|
|
537 | (1) |
|
|
537 | (1) |
|
|
538 | (7) |
|
|
538 | (1) |
|
|
538 | (2) |
|
|
540 | (5) |
|
6.6 Simulation Experiments |
|
|
545 | (1) |
|
|
545 | (1) |
|
|
545 | (1) |
|
6.7 Programming Assignment |
|
|
545 | (2) |
|
Chapter 7 Physical Layer and Transmission Media |
|
|
547 | (60) |
|
|
548 | (15) |
|
|
549 | (7) |
|
7.1.2 Transmission Impairment |
|
|
556 | (2) |
|
|
558 | (2) |
|
|
560 | (3) |
|
|
563 | (11) |
|
7.2.1 Digital-to-Digital Conversion |
|
|
563 | (6) |
|
7.2.2 Analog-to-Digital Conversion |
|
|
569 | (5) |
|
|
574 | (7) |
|
7.3.1 Digital-to-Analog Conversion |
|
|
574 | (5) |
|
7.3.2 Analog-to-Analog Conversion |
|
|
579 | (2) |
|
7.4 Bandwidth Utilization |
|
|
581 | (10) |
|
|
581 | (6) |
|
|
587 | (4) |
|
|
591 | (7) |
|
|
591 | (5) |
|
7.5.2 Unguided Media: Wireless |
|
|
596 | (2) |
|
7.6 End-Chapter Materials |
|
|
598 | (2) |
|
7.6.1 Recommended Reading |
|
|
598 | (1) |
|
|
598 | (1) |
|
|
599 | (1) |
|
|
600 | (7) |
|
|
600 | (1) |
|
|
600 | (1) |
|
|
601 | (6) |
|
Chapter 8 Multimedia and Quality of Service |
|
|
607 | (94) |
|
|
608 | (15) |
|
8.1.1 Lossless Compression |
|
|
608 | (9) |
|
|
617 | (6) |
|
|
623 | (7) |
|
|
623 | (1) |
|
|
623 | (4) |
|
|
627 | (2) |
|
|
629 | (1) |
|
8.3 Multimedia in the Internet |
|
|
630 | (11) |
|
8.3.1 Streaming Stored Audio/Video |
|
|
631 | (3) |
|
8.3.2 Streaming Live Audio/Video |
|
|
634 | (1) |
|
8.3.3 Real-Time Interactive Audio/Video |
|
|
635 | (6) |
|
8.4 Real-Time Interactive Protocols |
|
|
641 | (33) |
|
8.4.1 Rationale for New Protocols |
|
|
642 | (3) |
|
|
645 | (3) |
|
|
648 | (3) |
|
8.4.4 Session Initialization Protocol (SIP) |
|
|
651 | (7) |
|
|
658 | (2) |
|
|
660 | (14) |
|
|
674 | (13) |
|
8.5.1 Data-Flow Characteristics |
|
|
674 | (1) |
|
|
675 | (1) |
|
8.5.3 Flow Control to Improve QoS |
|
|
676 | (6) |
|
8.5.4 Integrated Services (IntServ) |
|
|
682 | (4) |
|
8.5.5 Differentiated Services (DiffServ) |
|
|
686 | (1) |
|
8.6 End-Chapter Materials |
|
|
687 | (2) |
|
8.6.1 Recommended Reading |
|
|
687 | (1) |
|
|
688 | (1) |
|
|
688 | (1) |
|
|
689 | (11) |
|
|
689 | (1) |
|
|
689 | (3) |
|
|
692 | (8) |
|
8.8 Simulation Experiments |
|
|
700 | (1) |
|
|
700 | (1) |
|
|
700 | (1) |
|
8.9 Programming Assignments |
|
|
700 | (1) |
|
Chapter 9 Network Management |
|
|
701 | (30) |
|
|
702 | (4) |
|
9.1.1 Configuration Management |
|
|
702 | (2) |
|
|
704 | (1) |
|
9.1.3 Performance Management |
|
|
705 | (1) |
|
9.1.4 Security Management |
|
|
705 | (1) |
|
9.1.5 Accounting Management |
|
|
705 | (1) |
|
|
706 | (16) |
|
9.2.1 Managers and Agents |
|
|
706 | (1) |
|
9.2.2 Management Components |
|
|
707 | (2) |
|
|
709 | (1) |
|
|
710 | (3) |
|
|
713 | (3) |
|
|
716 | (6) |
|
|
722 | (4) |
|
|
722 | (1) |
|
|
723 | (3) |
|
|
726 | (1) |
|
9.4 End-Chapter Materials |
|
|
726 | (1) |
|
|
726 | (1) |
|
|
726 | (1) |
|
|
726 | (1) |
|
|
727 | (4) |
|
|
727 | (1) |
|
|
727 | (1) |
|
|
728 | (3) |
|
Chapter 10 Network Security |
|
|
731 | (74) |
|
|
732 | (3) |
|
|
732 | (1) |
|
|
732 | (2) |
|
10.1.3 Services and Techniques |
|
|
734 | (1) |
|
|
735 | (16) |
|
10.2.1 Symmetric-Key Ciphers |
|
|
735 | (11) |
|
10.2.2 Asymmetric-Key Ciphers |
|
|
746 | (5) |
|
10.3 Other Aspects of Security |
|
|
751 | (15) |
|
|
751 | (1) |
|
10.3.2 Message Authentication |
|
|
752 | (1) |
|
|
753 | (5) |
|
10.3.4 Entity Authentication |
|
|
758 | (3) |
|
|
761 | (5) |
|
|
766 | (26) |
|
10.4.1 Application-Layer Security |
|
|
767 | (9) |
|
10.4.2 Transport-Layer Security |
|
|
776 | (6) |
|
10.4.3 Network-Layer Security |
|
|
782 | (10) |
|
|
792 | (2) |
|
10.5.1 Packet-Filter Firewall |
|
|
793 | (1) |
|
|
793 | (1) |
|
10.6 End-Chapter Materials |
|
|
794 | (2) |
|
|
794 | (1) |
|
|
794 | (1) |
|
|
795 | (1) |
|
|
796 | (7) |
|
|
796 | (1) |
|
|
796 | (2) |
|
|
798 | (5) |
|
10.8 Simulation Experiments |
|
|
803 | (1) |
|
|
803 | (1) |
|
|
803 | (1) |
|
10.9 Programming Assignments |
|
|
803 | (2) |
|
Chapter 11 Socket Programming In Java |
|
|
805 | (36) |
|
|
806 | (4) |
|
11.1.1 Addresses and Ports |
|
|
806 | (3) |
|
11.1.2 Client-Server Paradigm |
|
|
809 | (1) |
|
11.2 Programming with UDP |
|
|
810 | (13) |
|
11.2.1 Iterative Approach |
|
|
810 | (10) |
|
11.2.2 Concurrent Approach |
|
|
820 | (3) |
|
11.3 Programming with TCP |
|
|
823 | (12) |
|
11.3.1 Iterative Approach |
|
|
823 | (9) |
|
11.3.2 Concurrent Approach |
|
|
832 | (3) |
|
11.4 End-Chapter Materials |
|
|
835 | (1) |
|
|
835 | (1) |
|
|
835 | (1) |
|
|
835 | (1) |
|
|
836 | (2) |
|
|
836 | (1) |
|
|
836 | (2) |
|
|
838 | (1) |
|
11.6 Programming Assignments |
|
|
838 | (3) |
Appendix A Unicode |
|
841 | (4) |
Appendix B Positional Numbering System |
|
845 | (8) |
Appendix C HTML, CSS, XML, and XSL |
|
853 | (8) |
Appendix D Miscellaneous Information |
|
861 | (4) |
Appendix E 8B/6T Code |
|
865 | (2) |
Glossary |
|
867 | (34) |
References |
|
901 | (4) |
Index |
|
905 | |