TCP/IP illustrated - Stevens, W. Richard; Wright, Gary R. (Reading : Addison-Wesley, 1996)
Part I. TCP for Transactions -- 1. T/TCP Introduction -- 1.1 Introduction -- 1.2 UDP Client-Server -- 1.3 TCP Client-Server -- 1.4 T/TCP Client-Server -- 1.5 Test Network -- 1.6 Timing Example -- 1.7 Applications -- 1.8 History -- 1.9 Implementations -- 1.10 Summary -- 2. T/TCP Protocol -- 2.1 Introduction -- 2.2 New TCP Options for T/TCP -- 2.3 T/TCP Implementation Variables -- 2.4 State Transition Diagram -- 2.5 T/TCP Extended States -- 2.6 Summary -- 3. T/TCP Examples -- 3.1 Introduction -- 3.2 Client Reboot -- 3.3 Normal T/TCP Transaction -- 3.4 Server Receives Old Duplicate SYN -- 3.5 Server Reboot -- 3.6 Request or Reply Exceeds MSS -- 3.7 Backward Compatibility -- 3.8 Summary -- 4. T/TCP Protocol (Continued) -- 4.1 Introduction -- 4.2 Client Port Numbers and TIME_WAIT State -- 4.3 Purpose of the TIME_WAIT State -- 4.4 TIME_WAIT State Truncation -- 4.5 Avoiding the Three-Way Handshake with TAO -- 4.6 Summary -- 5. T/TCP Implementation: Socket Layer -- 5.1 Introduction -- 5.2 Constants -- 5.3 sosend Function -- 5.4 Summary -- 6. T/TCP Implementation: Routing Table -- 6.1 Introduction -- 6.2 Code Introduction -- 6.3 radix_node_head Structure -- 6.4 rtentry Structure -- 6.5 rt_metrics Structure -- 6.6 in_inithead Function -- 6.7 in_addroute Function -- 6.8 in_matroute Function -- 6.9 in_clsroute Function -- 6.10 in_rtqtimo Function -- 6.11 in_rtqkill Function -- 6.12 Summary -- 7. T/TCP Implementation: Protocol Control Blocks -- 7.1 Introduction -- 7.2 in_pcbladdr Function -- 7.3 in_pcbconnect Function -- 7.4 Summary -- 8. T/TCP Implementation: TCP Overview -- 8.1 Introduction -- 8.2 Code Introduction -- 8.3 TCP protosw Structure -- 8.4 TCP Control Block -- 8.5 tcp_init Function -- 8.6 tcp_slowtimo Function -- 8.7 Summary -- 9. T/TCP Implementation: TCP Output -- 9.1 Introduction -- 9.2 tcp_output Function -- 9.3 Summary -- 10. T/TCP Implementation: TCP Functions -- 10.1 Introduction -- 10.2 tcp_newtcpcb Function -- 10.3 tcp_rtlookup Function -- 10.4 tcp_gettaocache Function -- 10.5 Retransmission Timeout Calculations -- 10.6 tcp_close Function -- 10.7 tcp_msssend Function -- 10.8 tcp_mssrcvd Function -- 10.9 tcp_dooptions Function -- 10.10 tcp_reass Function -- 10.11 Summary -- 11. T/TCP Implementation: TCP Input -- 11.1 Introduction -- 11.2 Preliminary Processing -- 11.3 Header Prediction -- 11.4 Initiation of Passive Open -- 11.5 Initiation of Active Open -- 11.6 PAWS: Protection Against Wrapped Sequence Numbers -- 11.7 ACK Processing -- 11.8 Completion of Passive Opens and Simultaneous Opens -- 11.9 ACK Processing (Continued) -- 11.10 FIN Processing -- 11.11 Summary -- 12. T/TCP Implementation: TCP User Requests -- 12.1 Introduction -- 12.2 PRU_CONNECT Request -- 12.3 tcp_connect Function -- 12.4 PRU_SEND and PRU_SEND_EOF Requests -- 12.5 tcp_usrclosed Function -- 12.6 tcp_sysctl Function -- 12.7 T/TCP Futures -- 12.8 Summary -- Part II. Additional TCP Applications -- 13. HTTP: Hypertext Transfer Protocol -- 13.1 Introduction -- 13.2 Introduction to HTTP and HTML -- 13.3 HTTP Protocol -- 13.4 An Example -- 13.5 HTTP Statistics -- 13.6 Performance Problems -- 13.7 Summary -- 14. Packets Found on an HTTP Server -- 14.1 Introduction -- 14.2 Multiple HTTP Servers -- 14.3 Client SYN Interarrival Time -- 14.4 RTT Measurements -- 14.5 listen Backlog Queue -- 14.6 Client SYN Options -- 14.7 Client SYN Retransmissions -- 14.8 Domain Names -- 14.9 Timing Out Persist Probes -- 14.10 Simulation of T/TCP Routing Table Size -- 14.11 Mbuf Interaction -- 14.12 TCP PCB Cache and Header Prediction -- 14.13 Summary -- 15. NNTP: Network News Transfer Protocol -- 15.1 Introduction -- 15.2 NNTP Protocol -- 15.3 A Simple News Client -- 15.4 A More Sophisticated News Client -- 15.5 NNTP Statistics -- 15.6 Summary -- Part III. The Unix Domain Protocols -- 16. Unix Domain Protocols: Introduction -- 16.1 Introduction -- 16.2 Usage -- 16.3 Performance -- 16.4 Coding Examples -- 16.5 Summary -- 17. Unix Domain Protocols: Implementation -- 17.1 Introduction -- 17.2 Code Introduction -- 17.3 Unix domain and protosw Structures -- 17.4 Unix Domain Socket Address Structures -- 17.5 Unix Domain Protocol Control Blocks -- 17.6 uipc_usrreq Function -- 17.7 PRU_ATTACH Request and unp_attach Function -- 17.8 PRU_DETACH Request and unp_detach Function -- 17.9 PRU_BIND Request and unp_bind Function -- 17.10 PRU_CONNECT Request and unp_connect Function -- 17.11 PRU_CONNECT2 Request and unp_connect2 Function -- 17.12 socketpair System Call -- 17.13 pipe System Call -- 17.14 PRU_ACCEPT Request -- 17.15 PRU_DISCONNECT Request and unp_disconnect Function -- 17.16 PRU_SHUTDOWN Request and unp_shutdown Function -- 17.17 PRU_ABORT Request and unp_drop Function -- 17.18 Miscellaneous Requests -- 17.19 Summary -- 18. Unix Domain Protocols: I/O and Descriptor Passing -- 18.1 Introduction -- 18.2 PRU_SEND and PRU_RCVD Requests -- 18.3 Descriptor Passing -- 18.4 unp_internalize Function -- 18.5 unp_externalize Function -- 18.6 unp_discard Function -- 18.7 unp_dispose Function -- 18.8 unp_scan Function -- 18.9 unp_gc Function -- 18.10 unp_mark Function -- 18.11 Performance (Revisited) -- 18.12 Summary -- Appendix A. Measuring Network Times -- A.1 RTT Measurements Using Ping -- A.2 Protocol Stack Measurements -- A.3 Latency and Bandwidth -- Appendix B. Coding Applications for T/TCP -- Bibliography -- Index
v. 3: TCP for transactions, HTTP, NNTP, and the UNIX domain protocols -- Incluye índice y bibliografía.
Keywords: TCP/IP; INTERNET; PROTOCOLOS DE REDES