Path: utzoo!utgpu!attcan!uunet!husc6!think!ames!pasteur!ucbvax!NDSUVM1.BITNET!NU021172
From: NU021172@NDSUVM1.BITNET (Marty Hoag)
Newsgroups: comp.protocols.ibm
Subject: Re: (none)
Message-ID: <8809282349.AA06202@jade.berkeley.edu>
Date: 28 Sep 88 16:37:26 GMT
References: 
Sender: daemon@ucbvax.BERKELEY.EDU
Reply-To: Marty Hoag 
Organization: The Internet
Lines: 32

>
>The one assumption TCP *does* make is that lower layers will not deliver
>a corrupted datagram and claim it's correct. The TCP (and IP and UDP)
>checksum(s) are a low-cost but extrememly useful last-ditch protection
>of this assumption, and are well worth it.
>

   PLEASE remember that IP is a connectionless UNRELIABLE delivery
protocol.  There is NO checking of the data in the packet - ONLY the
header fields!  TCP and UDP checksums are only needed if you care what
data you will be getting...  ;-)

   Other than the header fields of the IP packet, you are not
guarenteed that the rest of the packet is correct or that the packet
will even be delivered.  The only reason IP checks the headers is to
attempt to get them to the right place...  =;-) This makes IP fairly
simple to implement.  I am sure the NFS implementation which turns off
checksums should NOT do that if the packets go outside the local
ethernet (unless there is some other way to ensure the integrity).

   In SNA there is a reliable connection provided at a lower level.
Of course, many protocols do further checking on the data but it is
quite a different arrangement than in IP.


-----------
Marty Hoag
ND Higher Education Computer Network    US Mail: NDSU Computer Center
Phone: (701)-237-8639                            PO Box 5164 / UCCS
Bitnet:  NU021172@NDSUVM1    (NOTE 0 = ZERO)     Fargo, ND  58105
ARPA:    NU021172@VM1.NoDak.EDU
UUCP:    ...!psuvax1!NDSUVM1.BITNET!NU021172