W. Richard Stevens 国际的UNIX和网络专家,备受赞誉的技术作家。他1951年2月5日出生于赞比亚,后随父母回到美国。中学时就读于弗吉尼亚菲什伯恩军事学校,1973年获得密歇根大学航空和航天工程学士学位。1975年到1982年,他在亚利桑那州图森市的基特峰国家天文台从事计算机编程工作,业余时间喜爱飞行运动,做过兼职飞行教练。这期间他分别在1978年和1982年获得亚利桑那大学系统工程硕士和博士学位。此后他去康涅狄格州纽黑文的健康系统国际公司任主管计算机服务的副总裁。1990年他回到图森,从事专业技术写作和咨询工作。他写下了,包括《TCP IP详解》(三卷)、《UNIX环境**编程》和《UNIX网络编程》(两卷)。Stevens于1999年9月1日去世,年仅48岁。2000年他被国际机构USENIX追授“终身成就奖”。
目錄:
目 录
Chapter 1. Introduction 概述 1
1.1 Introduction 概述1
1.2 Layering 分层 1
1.3 TCP IP Layering TCP IP的分层 6
1.4 Internet Addresses 互联网的地址 7
1.5 The Domain Name System 域名系统 9
1.6 Encapsulation 封装9
1.7 Demultiplexing 分用11
1.8 Client-Server Model 客户-服务器模型 12
1.9 Port Numbers 端口号 12
1.10 Standardization Process 标准化过程 14
1.11 RFCs 14
1.12 Standard, Simple Services 标准的简单服务15
1.13 The Internet 互联网16
1.14 Implementations 实现16
1.15 Application Programming Interfaces 应用编程接口17
1.16 Test Network 测试网络18
1.17 Summary 小结19
Chapter 2. Link Layer 链路层21
2.1 Introduction 概述 21
2.2 Ethernet and IEEE 802 Encapsulation 以太网和IEEE 802封装21
2.3 Trailer Encapsulation 尾部封装 23
2.4 SLIP: Serial Line IP SLIP:串行线路IP 24
2.5 Compressed SLIP 压缩的SLIP 25
2.6 PPP: Point-to-Point Protocol PPP:点对点协议 26
2.7 Loopback Interface 环回接口 28
2.8 MTU *最大传输单元MTU 29
2.9 Path MTU 路径MTU 30
2.10 Serial Line Throughput Calculations 串行线路吞吐量计算30
2.11 Summary 小结 31
Chapter 3. IP: Internet Protocol IP:网际协议 33
3.1 Introduction 概述 33
3.2 IP Header IP 34
3.3 IP Routing IP路由选择37
3.4 Subnet Addressing 子网寻址42
3.5 Subnet Mask 子网掩码43
3.6 Special Case IP Addresses 特殊情况的IP地址 45
3.7 A Subnet Example 子网示例46
3.8 ifconfig Command ifconfig命令47
3.9 netstat Command netstat命令 49
3.10 IP Futures IP的未来49
3.11 Summary 小结 50
Chapter 4. ARP: Address Resolution Protocol ARP:地址解析协议 53
4.1 Introduction 概述 53
4.2 An Example 示例54
4.3 ARP Cache ARP高速缓存56
4.4 ARP Packet Format ARP的分组格式56
4.5 ARP Examples ARP示例57
4.6 Proxy ARP 代理ARP60
4.7 Gratuitous ARP 免费ARP 62
4.8 arp Command arp命令 63
4.9 Summary 小结 63
Chapter 5. RARP: Reverse Address Resolution Protocol RARP:逆地址解析协议65
5.1 Introduction 概述 65
5.2 RARP Packet Format RARP的分组格式65
5.3 RARP Examples RARP示例 66
5.4 RARP Server Design RARP服务器的设计 67
5.5 Summary 小结 68
Chapter 6. ICMP: Internet Control Message Protocol ICMP:Internet控制报文协议69
6.1 Introduction 概述 69
6.2 ICMP Message Types ICMP报文的类型70
6.3 ICMP Address Mask Request and Reply ICMP地址掩码请求与应答72
6.4 ICMP Timestamp Request and Reply ICMP时间戳请求与应答74
6.5 ICMP Port Unreachable Error ICMP端口不可达差错77
6.6 4.4BSD Processing of ICMP Messages ICMP报文的4.4BSD处理81
6.7 Summary 小结 83
Chapter 7. Ping Program Ping程序85
7.1 Introduction 概述 85
7.2 Ping Program Ping程序85
7.3 IP Record Route Option IP记录路由选项91
7.4 IP Timestamp Option IP时间戳选项95
7.5 Summary 小结 96
Chapter 8. Traceroute Program Traceroute程序 97
8.1 Introduction 概述97
8.2 Traceroute Program Operation Traceroute 程序的操作97
8.3 LAN Output 局域网输出99
8.4 WAN Output 广域网输出102
8.5 IP Source Routing Option IP源站选路选项104
8.6 Summary 小结 109
Chapter 9. IP Routing IP选路 111
9.1 Introduction 概述 111
9.2 Routing Principles 选路的原理112
9.3 ICMP Host and Network Unreachable Errors ICMP主机与网络不可达差错117
9.4 To Forward or Not to Forward 转发或不转发119
9.5 ICMP Redirect Errors ICMP重定向差错119
9.6 ICMP Router Discovery Messages ICMP路由器发现报文 123
9.7 Summary 小结125
Chapter 10. Dynamic Routing Protocols 动态选路协议127
10.1 Introduction 概述 127
10.2 Dynamic Routing 动态选路127
10.3 Unix Routing Daemons Unix选路守护程序128
10.4 RIP: Routing Information Protocol RIP:选路信息协议129
10.5 RIP Version 2 RIP版本2 136
10.6 OSPF: Open Shortest Path First OSPF:开放**短路径优先137
10.7 BGP: Border Gateway Protocol BGP:边界网关协议138
10.8 CIDR: Classless Interdomain Routing CIDR:无类型域间选路140
10.9 Summary 小结 141
Chapter 11. UDP: User Datagram Protocol UDP:用户数据报协议143
11.1 Introduction 概述 143
11.2 UDP Header UDP144
11.3 UDP Checksum UDP检验和144
11.4 A Simple Example 简单示例147
11.5 IP Fragmentation IP分段148
11.6 ICMP Unreachable Error (Fragmentation Required) ICMP不可达差错(需要分片) 151
11.7 Determining the Path MTU Using Traceroute 用Traceroute确定路径MTU 153
11.8 Path MTU Discovery with UDP 采用UDP的路径MTU发现 155
11.9 Interaction Between UDP and ARP UDP和ARP之间的交互作用157
11.10 Maximum UDP Datagram Size *最大UDP数据报长度159
11.11 ICMP Source Quench Error ICMP源站抑制差错160
11.12 UDP Server Design UDP服务器的设计162
11.13 Summary 小结 167
Chapter 12. Broadcasting and Multicasting 播和多播 169
12.1 Introduction 概述 169
12.2 Broadcasting 广播171
12.3 Broadcasting Examples 广播示例172
12.4 Multicasting 多播 175
12.5 Summary 小结 178
Chapter 13. IGMP: Internet Group Management Protocol IGMP:Internet组管理协议179
13.1 Introduction 概述 179
13.2 IGMP Message IGMP报文180
13.3 IGMP Protocol IGMP协议180
13.4 An Example 示例183
13.5 Summary 小结 186
Chapter 14. DNS: The Domain Name System DNS:域名系统 187
14.1 Introduction 概述 187
14.2 DNS Basics DNS基础188
14.3 DNS Message Format DNS的报文格式 191
14.4 A Simple Example 简单示例194
14.5 Pointer Queries 指针查询198
14.6 Resource Records 资源记录201
14.7 Caching 高速缓存203
14.8 UDP or TCP 用UDP还是用TCP 206
14.9 Another Example 另一个示例206
14.10 Summary 小结 208
Chapter 15. TFTP: Trivial File Transfer Protocol TFTP:简单文件传送协议209
15.1 Introduction 概述 209
15.2 Protocol 协议209
15.3 An Example 示例 211
15.4 Securit 安全性213
15.5 Summary 小结 213
Chapter 16. BOOTP: Bootstrap Protocol BOOTP:引导程序协议215
16.1 Introduction 概述 215
16.2 BOOTP Packet Format BOOTP的分组格式 215
16.3 An Example 示例 218
16.4 BOOTP Server Design BOOTP服务器的设计219
16.5 BOOTP Through a Router BOOTP穿越路由器220
16.6 Vendor-Specific Information 特定厂商信息 221
16.7 Summary 小结 222
Chapter 17. TCP: Transmission Control Protocol TCP:传输控制协议 223
17.1 Introduction 概述 223
17.2 TCP Services TCP服务223
17.3 TCP Header TCP225
17.4 Summary 小结 227
Chapter 18. TCP Connection Establishment and Termination TCP连接的建立与终止229
18.1 Introduction 概述 229
18.2 Connection Establishment and Termination 连接的建立与终止229
18.3 Timeout of Connection Establishment 连接建立的超时235
18.4 Maximum Segment Size *最大报文段长度236
18.5 TCP Half-Close TCP的半关闭238
18.6 TCP State Transition Diagram TCP的状态转换图240
18.7 Reset Segments 复位报文段246
18.8 Simultaneous Open 同时打开250
18.9 Simultaneous Close 同时关闭252
18.10 TCP Options TCP选项253
18.11 TCP Server Design TCP服务器的设计254
18.12 Summary 小结 260
Chapter 19. TCP Interactive Data Flow TCP的交互数据流263
19.1 Introduction 概述 263
19.2 Interactive Input 交互式输入263
19.3 Delayed Acknowledgments 经受时延的确认 265
19.4 Nagle Algorithm Nagle算法 267
19.5 Window Size Advertisements 窗口大小通告274
19.6 Summary 小结 274
Chapter 20. TCP Bulk Data Flow TCP的成块数据流275
20.1 Introduction 概述 275
20.2 Normal Data Flow 正常数据流 275
20.3 Sliding Windows 滑动窗口280
20.4 Window Size 窗口大小282
20.5 PUSH Flag PUSH标志284
20.6 Slow Start 慢启动285
20.7 Bulk Data Throughput 成块数据的吞吐量286
20.8 Urgent Mode 紧急方式292
20.9 Summary 小结 296
Chapter 21. TCP Timeout and Retransmission TCP的超时与重传297
21.1 Introduction 概述 297
21.2 Simple Timeout and Retransmission Example 超时与重传的简单示例 298
21.3 Round-Trip Time Measurement 往返时间测量299
21.4 An RTT Example RTT示例301
21.5 Congestion Example 拥塞示例 306
21.6 Congestion Avoidance Algorithm 拥塞避免算法310
21.7 Fast Retransmit and Fast Recovery Algorithms 快速重传与快速恢复算法312
21.8 Congestion Example (Continued) 拥塞示例(续)313
21.9 Per-Route Metrics 按每条路由进行度量316
21.10 ICMP Errors ICMP的差错 317
21.11 Repacketization 重新分组320
21.12 Summary 小结 321
Chapter 22. TOP Persist Timer TCP的坚持定时器323
22.1 Introduction 概述 323
22.2 An Example 示例323
22.3 Silly Window Syndrome 糊涂窗口综合症325
22.4 Summary 小结 330
Chapter 23. TOP Keepalive Timer TCP的保活定时器331
23.1 Introduction 概述 331
23.2 Description 描述332
23.3 Keepalive Examples 保活示例333
23.4 Summary 小结 337
Chapter 24. TCP Futures and Performance TCP的未来和性能339
24.1 Introduction 概述 339
24.2 Path MTU Discovery 路径MTU发现340
24.3 Long Fat Pipes 长肥管道344
24.4 Window Scale Option 窗口扩大选项 347
24.5 Timestamp Option 时间戳选项349
24.6 PAWS: Protection Against Wrapped Sequence Numbers PAWS:防止回绕的序号351
24.7 T TCP: A TCP Extension for Transactions T TCP:为事务用的TCP扩展 351
24.8 TCP Performance TCP的性能354
24.9 Summary 小结 356
Chapter 25. SNMP: Simple Network Management Protocol SNMP:简单网络管理协议 359
25.1 Introduction 概述 359
25.2 Protocol 协议360
25.3 Structure of Management Information 管理信息结构363
25.4 Object Identifiers 对象标识符364
25.5 Introduction to the Management Information Base 管理信息库介绍365
25.6 Instance Identification 实例标识367
25.7 Simple Examples 一些简单示例370
25.8 Management Information Base (Continued) 管理信息库(续)372
25.9 Additional Examples 其他示例382
25.10 Traps 385
25.11 ASN.1 and BER ASN.1和BER 386
25.12 SNMP Version 2 SNMP版本2 387
25.13 Summary 小结 388
Chapter 26. Telnet and Rlogin: Remote Login Telnet和Rlogin:远程登录389
26.1 Introduction 概述389
26.2 Rlogin Protocol Rlogin协议391
26.3 Rlogin Examples Rlogin示例396
26.4 Telnet Protocol Telnet协议 401
26.5 Telnet Examples Telnet示例 406
26.6 Summary 小结417
Chapter 27. FTP: File Transfer Protocol FTP:文件传送协议419
27.1 Introduction 概述419
27.2 FTP Protocol FTP协议419
27.3 FTP Examples FTP示例426
27.4 Summary 小结439
Chapter 28. SMTP: Simple Mail Transfer Protocol SMTP:简单邮件传送协议 441
28.1 Introduction 概述441
28.2 SMTP Protocol SMTP协议442
28.3 SMTP Examples SMTP示例448
28.4 SMTP Futures SMTP的未来452
28.5 Summary 小结459
Chapter 29. NFS: Network File System 网络文件系统461
29.1 Introduction 概述461
29.2 Sun Remote Procedure Call Sun远程过程调用461
29.3 XDR: External Data Representation XDR:外部数据表示 465
29.4 Port Mapper 端口映射器465
29.5 NFS Protocol NFS协议 467
29.6 NFS Examples NFS示例474
29.7 NFS Version 3 NFS版本3 479
29.8 Summary 小结480
Chapter 30. Other TCP IP Applications 其他TCP IP应用程序481
30.1 Introduction 概述481
30.2 Finger Protocol Finger协议481
30.3 Whois Protocol Whois协议483
30.4 Archie, WAIS, Gopher, Veronica, and WWW Archie、WAIS、Gopher、Veronica和WWW 484
30.5 X Window System X窗口系统 486
30.6. Summary 小结 490
Appendix A. The tcpdump Program tcpdump程序 491
A.1 BSD Packet Filter BSD分组过滤器 491
A.2 SunOS Network Interface Tap SunOS NIT 493
A.3 SVR4 Data Link Provider Interface SVR4 DLPI 494
A.4 tcpdump Output tcpdump输出 495
A.5 Security Considerations 安全注意事项 496
A.6 Socket Debug Option 套接字调试选项 496
Appendix B. Computer Clocks 计算机时钟 499
Appendix C, The sock Program sock程序 503
Appendix D. Solutions to Selected Exercises 部分习题的解答507
Appendix E Configurable Options 配置选项525
E.1 BSD 386 Version 1.0 526
E.2 SunOS 4.1.3 527
E.3 System V Release 4 529
E.4 Solaris 2.2 529
E.5 AIX 3.2.2 536
E.6 4.4BSD 537
Appendix F. Source Code Availability 可用源代码 539
Bibliography 参考文献 543