Douglas E.Comer:普度大學(xué)的一位杰出的計(jì)算機(jī)科學(xué)教授,思科系統(tǒng)公司的訪問教授成員,并且是計(jì)算機(jī)網(wǎng)絡(luò)和TCP/IP以及因特網(wǎng)方面的國(guó)際公認(rèn)的專家。他的著作已翻譯成16種語言,并廣泛用于世界各地的工業(yè)界和學(xué)術(shù)界。作為他的得意之作,這套共分三卷的《用TcP/IP進(jìn)行網(wǎng)際互連》徹底改變了組網(wǎng)和網(wǎng)絡(luò)方面的教育,并且他的不斷創(chuàng)新的工作繼續(xù)影響著研究生和大學(xué)生所學(xué)的課程。作為美國(guó)計(jì)算機(jī)學(xué)會(huì)的會(huì)士,在他獲得的許多榮譽(yù)中包括Usenix終生成就獎(jiǎng)。
圖書目錄
Foreword Preface Chapter 1 Introduction And Overview 1.1 TCP/IP Protocols 1.2 The Need To Understand Details 1.3 Complexity Of Interactions Among Protocols 1,4 The Approach In This Text 1.5 The Importance Of Studying Code 1.6 The Xinu Operating System 1.7 Organization Of The Remainder Of The Book 1.8 Summary Chapter 2 The Structure Of TCP/IP Software In An Operating System 2.1 Introduction 2.2 The Process Concept 2.3 Process Priority 2.4 Process Synchronization 2.5 lnterprocess Communication 2.6 Device Drivers, Input, And Output 2.7 Network Input and Interrupts 2.8 Passing Packets To Higher Level Protocols 2.9 Passing Datagrams From IP To Transport Protocols 2.10 Delivery To Application Programs 2.11 Information Flow On Output 2.12 From TCP Through IP To Network Output 2.13 UDP Output 2.14 Summary Chapter 3 Network Interface Layer 3.1 Introduction 3.2 The Network Interface Abstraction 3.3 Ethernet Definitions 3.4 Logical State Of An Interface 3.5 Local Host Interface 3.6 Buffer Management 3.7 Demultiplexing Incoming Packets 3.8 Summary Chapter 4 Address Discovery And Binding (ARP) 4.1 Introduction 4.2 Conceptual Organization Of ARP Software 4.3 Example ARP Design 4.4 Data Structures For The ARP Cache 4.5 ARP Output Processing 4.6 ARP Input Processing 4.7 ARP Cache Management 4.8 ARP Initialization 4.9 ARP Configuration Parameters 4.10 Summary Chapter 5 IP: Global Software Organization 5.1 Introduction 5.2 The Central Switch 5.3 IP Software Design 5.4 IP Software Organization And Datagram Flow 5.5 Byte-Ordering In The IP Header 5.6 Sending A Datagram To IP 5.7 Table Maintenance 5.8 Summary Chapter 6 IP: Routing Table And Routing Algorithm 6.1 Introduction 6.2 Route Maintenance And Lookup 6.3 Routing Table Organization 6.4 Routing Table Data Structures 6.5 Origin Of Routes And Persistence 6.6 Routing A Datagram 6.7 Periodic Routing Table Maintenance 6.8 IP Options Processing 6.9 Summary Chapter 7 IP: Fragmentation And Reessembly 7.1 Introduction 109 7.2 Fragmenting Datagrams 7.3 Implementation Of Fragmentation 7.4 Datagram Reassembly 7.5 Maintenance Of Fragment Lists 7.6 Initialization 7.7 Summary Chapter 8 IP: Error Processing (ICMP) 8.1 Introduction 8.2 ICMP Message Formats 8.3 Implementation Of ICMP Messages 8.4 Handling Incoming ICMP Messages 8.5 Handling An ICMP Redirect Message 8.6 Setting A Subnet Mask 8.7 Choosing A Source Address For An ICMP Packet 8.8 Generating ICMP Error Messages 8.9 Avoiding Errors About Errors 8.10 Allocating A Buffer For ICMP 8.11 The Data Portion Of An ICMP Message 8.12 Generating An ICMP Redirect Message 8.13 Summary Chapter 9 IP: Multicast Processing (IGMP) 9.1 Introduction 9.2 Maintaining Multicast Group Membership Information 9.3 A Host Group Table 9.4 Searching For A Host Group 9.5 Adding A Host Group Entry To The Table 9.6 Configuring The Network Interface For A Multicast Address 9.7 Translation Between IP and Hardware Multicast Addresses 9.8 Removing A Multicast Address From The Host Group Table 9.9 Joining A Host Group 9.10 Maintaining Contact With A Multicast Router 9.11 Implementing IGMP Membership Reports 9.12 Computing A Random Delay 9.13 A Process To Send IGMP Reports 9.14 Handling Incoming IGMP Messages 9.15 Leaving A Host Group 9.16 Initialization Of IGMP Data Structures 9.17 Summary Chapter 10 UDP: User Datagrams 10.1 Introduction 10.2 UDP Ports And Demultiplexing 10.3 UDP Input Processing 10.4 UDP Output Processing 10.5 Summary Chapter 11 TCP: Data Structures And Input Processing 11.1 Introduction 11.2 Overview Of TCP Software 11.3 Transmission Control Blocks 11.4 TCP Segment Format 11.5 Sequence Space Comparison 11.6 TCP Finite State Machine 11.7 Example State Transition 11.8 Declaration Of The Finite State Machine 11.9 TCB Allocation And Initialization 11.10 Implementation Of The Finite State Machine 11.11 Handling An Input Segment Chapter 12 TCP: Finite State Machine Implementation 12.1 Introduction 12.2 CLOSED State Processing 12.3 Graceful Shutdown 12.4 Timed Delay After Closing 12.5 TIME-WAIT State Processing 12.6 CLOSING State Processing 12.7 FIN- WAIT-2 State Processing 12.8 FIN-WAlT-1 State Processing 12.9 CLOSE-WAIT State Processing 12.10 LAST-ACK State Processing 12.11 ESTABLISHED State Processing 12.12 Processing Urgent Data In A Segment 12.13 Processing Other Data In A Segment 12.14 Keeping Track Of Received Octets 12.15 Aborting A TCP Connection 12.16 Establishing A TCP Connection 12.17 Initializing A TCB 12.18 SYN-SENT State Processing 12.19 SYN-RECEIVED State Processing 12.20 LISTEN State Processing 12.21 Initializing Window Variables For A New TCB 12.22 Summary Chapter 13 TCP: Output Processing 13.1 Introduction 13.2 Controlling TCP Output Complexity 13.3 The Four TCP Output States 13.4 TCP Output As A Process 13.5 TCP Output Messages 13.6 Encoding Output States And TCB Numbers 13.7 Implementation Of The TCP Output Process 13.8 Mutual Exclusion 13.9 Implementation Of The IDLE State 13.10 Implementation Of The PERSIST State 13.11 Implementation Of The TRANSMIT State 13.12 Implementation Of The RETRANSMIT State 13.13 Sending A Segment …… Chapter 14 TCP:Timer Management Chapter 15 TCP:Flow Control And Adaptive Retransmission Chapter 16 TCP:Urgent Data Processing And The Push Funcion Chapter 17 Socket-Level Interface Chapter 18 RIP:Active Route Propagation And Passive Acqusition Chapter 19 OSPF:Route Propagation With An SPF Algorithm Chapter 20 SNMP:MIB Variables Representations And Bindings Chapter 21 SNMP:Client And Server Chapter 22 SNMP:Table Access Functions Chapter 23 Implementation In Retrospect Appendix1 Cross Reference Of Procedure Calls Appendix2 Cross Reference Of C Structures Used In The code Appendix3 Xinu Functions And Constants Used In The Code Bibliography Index