Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucbvax!A.ISI.EDU!CERF From: CERF@A.ISI.EDU Newsgroups: comp.protocols.tcp-ip Subject: Re: Pseudo headers in TCP/UDP checksum -- Why? Message-ID: <[A.ISI.EDU]17-Feb-89.19:03:51.CERF> Date: 18 Feb 89 00:03:00 GMT References: <10010@pasteur.Berkeley.EDU> Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 14 Mike, We wanted to make sure that we had true end/end (at TCP level) checking since the IP level passed through gateways as was potentially modified en route. We didn't want to literally duplicate information in the TCP header which was carried in the IP header, so we formed a pseudo header for efficiency (taking some of the IP fields which were not supposed to change and making them play a part in the TCP level checking). Vint Cerf p.s. This may sound like a "layer crossing violation" but was just a way of not duplicating header information.