Date: Fri, 30 Jul 2004 03:33:02 +0200 (MEST) Subject: Eric A. Hall, Internet Core Protocols: The definitive guide Hej! Eric A. Hall, Internet Core Protocols: The definitive guide Denna bok läste jag ut i måndags. O'Reilly förlag bäddar ju för kvalitet. Och jag blev inte besviken. 416 mkt noga, och under lång tid, lästa sidor, med understrykningar och sånt. Innehåll: 1 An introduction to TCP/IP 2 The Internet Protocol 3 The Address Resolution Protocol 4 Multicasting and IGMP 5 The Internet Control Message Protocol 6 The User Datagram Protocol 7 The Transmission Control Protocol A The Internet Standardization Process B IP Addressing Fundamentals Låter väl kul alltihop? Vem ska då läsa denna bok? Sådana som jag! Man bör inte börja med den om man inte kan använda ifconfig, route, netstat, ping osv, iaf grundläggande. Däremot om man provat på tcpdump eller tethereal, och vill förstå vad allt de programmen visar betyder. Alltså sånt här (det är bara några millisekunders trafik på mitt yttre nät): 0.322457 194.47.221.112 -> 194.47.240.220 TCP 64699 > 412 [PSH, ACK] Seq=100088 Ack=0 Win=64010 Len=324 0.322472 194.47.240.220 -> 130.235.60.250 TCP 1885 > 1412 [ACK] Seq=25144 Ack=0 Win=64081 Len=1460 0.322480 194.47.240.220 -> 194.47.221.112 TCP [TCP Dup ACK 322#3] 412 > 64699 [ACK] Seq=0 Ack=83056 Win=27575 Len=0 SLE=1831299721 SRE=1831305561 0.322555 194.47.240.220 -> 130.235.60.250 TCP 1885 > 1412 [ACK] Seq=26604 Ack=0 Win=64081 Len=1460 0.322673 194.47.240.220 -> 130.235.60.250 TCP 1885 > 1412 [ACK] Seq=28064 Ack=0 Win=64081 Len=1460 0.322805 194.47.240.220 -> 130.235.60.250 TCP 1885 > 1412 [ACK] Seq=29524 Ack=0 Win=64081 Len=1460 Alla protokollen ovan behandlas utförligt, även ganska enkla/simpla som ARP och UDP. Men givetvis är kap7 störst, TCP är ganska komplicerat. Det var främst i det kapitlet jag lärde mig mest, att förstå begrepp man hört talas om tidigare och hade ungefärlig uppfattning om, men inte alla detaljer. Som Nagle-algoritmen, selective acks, sliding windows; SYN, FIN, RST och andra flaggor; de olika "circuit states" som man ofta ser i netstat, osv. TCP/IP är väldigt intressant, och nyttigt. Ganska fantastiskt att standarder/protokoll som utvecklades omkring 1978-1981 fortfarande används på alla nätverk på internet, i mycket högre hastigheter än vad det fanns teknik för då, och på flera hundra miljoner datorer världen över, för saker som www, e-post, fildelning osv. Den handlar dock knappt inte alls om protokollen ovanför tcp: som http, smtp, pop3, imap, ssh osv. Det finns andra böcker om dessa. Mer konkret, och med enklare termer, vad man kan använda kunskaperna från denna bok till: 1. Förstå tekniken bakom Internet (stort egenvärde i sig). 2. Kunna felsöka lättare. 3. Kunna optimera för t.ex. maximal genomströmning eller svarstid (ungefär som att trimma moped, det går i vissa fall att tredubbla, men helt lagligt, och inte lika oljigt.. ;-).