Michael P DiGioia <mpd@world.std.com> Mon, 14 June 1993 21:14 UTC

Received: from ietf.nri.reston.va.us by IETF.CNRI.Reston.VA.US id aa11067; 14 Jun 93 17:14 EDT
Received: from CNRI.RESTON.VA.US by IETF.CNRI.Reston.VA.US id aa11063; 14 Jun 93 17:14 EDT
Received: from thumper.bellcore.com by CNRI.Reston.VA.US id aa20918; 14 Jun 93 17:14 EDT
Received: by thumper.bellcore.com (4.1/4.7) id <AA05917> for ietf-archive@nri.reston.va.us; Mon, 14 Jun 93 17:13:47 EDT
Received: from world.std.com by thumper.bellcore.com (4.1/4.7) id <AA05913> for /usr/lib/sendmail -oi -fowner-pip X-pip; Mon, 14 Jun 93 17:13:45 EDT
Received: by world.std.com (5.65c/Spike-2.0) id AA16518; Mon, 14 Jun 1993 17:13:40 -0400
Date: Mon, 14 Jun 1993 17:13:40 -0400
Sender: ietf-archive-request@IETF.CNRI.Reston.VA.US
From: Michael P DiGioia <mpd@world.std.com>
Message-Id: <199306142113.AA16518@world.std.com>
To: SSmith@chipcom.com, pip@thumper.bellcore.com, sip@caldera.usc.edu

>> "standard"?  If so, how come over half the world's business can be done with
>> a protocol that is "less than standard"?  Couldn't standard protocols embrace
>> the same efficiencies attained by these commercial products?  (Question:  My>> understanding is that internal checksums are often avoided in these
>> protocols.  If so, why can't they just be removed from the "standard"?

>These "optimizations" all make the assumption that the packets are
>adequately protected by the datalink checksum (e.g. Ethernet FCS).
>This is more or less ok when you are dealing with a single datalink
>(which could be bridged/repeatered) because the datalink FCS is, in
>effect, an end-to-end checksum on the packet.  However, once you get
>to a routed network, the datalink FCS is no longer end-to-end. In
>each router, the datalink checksum is checked on reception and a new
>one generated on transmission (this is needed because the packet
>changes (TTL gets decremented, maybe the packet gets fragmented), or
>because you are changing media (going from Ethernet to a WAN)).  So,
>if an "optimized" packet goes through a router, there will be places
>where the packet is not protected by an end-to-end checksum. So, the
>TCP/UDP checksum is used to provide end-to-end protection.

>Once you have an internetwork layer (such as IP), you can not assume
>that the packets will never go through a router.

>Finally, checksum calculations do not seem to be as big, bad, and
>ugly as one would think. For instance, in TCP, the biggest
>performance hit seems to be poor timeout/retransmission algorithms.

Also, checksum calculation performance delays can be cut more then half
by recoding things like division operations and matching machine word lengths
and cache to efficient data store and recall.

Therefore, with the proper attention given to this area of performance, one
can reduce the amount of unwanted delays from these calculations.



Mike P DiGioia (MPD)
ThinkTek Consulting

mpd@world.std.com
/mpd
  •   Michael P DiGioia