ietf
[Top] [All Lists]

RE: re the plenary discussion on partial checksums

2003-07-17 00:40:35
What bit is needed ?

Again, this is a layer 2 property.  If you want to receive layer 2
frames with errors in them just get a Layer 2 device and tell it to not
do the checksum calculation (much like you put an ethernet nic into
Promiscous mode so it doesn't drop all of the frames not destined for
it.

As for asking for end-end characterization of this, I think it is
crazy... The bit can be in your IP header address fields(and on small
ACK packets, statistically it WILL be there) so the packet wouldn't have
even made it to your host, it can be in the TCP port fields so it won't
be received on the correct connection... Much more, the infrastructure
might as well let the packet get dropped.

I would have a hard time taking an IP header bit and making it the "Do
not drop this packet in the presense of a bit error somewhere in the
frame from layer 2 - layer 3".  Don't think it is a good idea.
Bill

-----Original Message-----
From: owner-ietf(_at_)ietf(_dot_)org [mailto:owner-ietf(_at_)ietf(_dot_)org] On 
Behalf Of
Keith Moore
Sent: Wednesday, July 16, 2003 2:45 PM
To: John Stracke
Cc: moore(_at_)cs(_dot_)utk(_dot_)edu; ietf(_at_)ietf(_dot_)org
Subject: Re: re the plenary discussion on partial checksums


so it seems like what we need is a bit in the IP header to indicate 
that L2 integrity checks are optional, and to specify for various 
kinds of IP-over-FOO how to implement that bit in FOO.

How would an app know to set this bit? The problem is that different 
L2s will have different likelihoods of corruption; you may decide that

it's safe to set the bit on Ethernet, but not on 802.11*.  And, in 
general, the app doesn't know all of the L2s that may be involved when

it sends a packet.

I'm not sure that the app needs to know how much lossage to expect, or
to specify how much lossage is too much.  It just wants the bits, errors
included.  Depending on the app's needs it might dynamically adapt to
varying degrees of error by adding its own FEC, e2e retransmission,
and/or interleaving, and this probably works better than trying to have
the app either determine statically how much error it can expect or by
having the app specify to the network how much error is acceptable.

I suppose we could define a maximum error rate (say 15%) that
IP-over-FOO should be designed to provide if the "lossage okay" bit is
set.  But practically speaking I doubt it's necessary to do that- links
that are designed to support lossy traffic will already have enough FEC
or whatever to suit that kind of traffic.

The biggest questions I have are:

- where to put this bit? 

- are there unintended consequences of doing this that we can forsee?


Keith