> -----Original Message-----
> From: Bill Fischofer [mailto:bill.fischo...@linaro.org]
> Sent: Tuesday, March 28, 2017 3:05 PM
> To: Savolainen, Petri (Nokia - FI/Espoo) <petri.savolainen@nokia-bell-
> labs.com>
> Cc: lng-odp-forward <lng-odp@lists.linaro.org>
> Subject: Re: [lng-odp] [API-NEXT PATCH] api: packet: add per packet
> checksum control
> 
> On Tue, Mar 28, 2017 at 6:39 AM, Savolainen, Petri (Nokia - FI/Espoo)
> <petri.savolai...@nokia-bell-labs.com> wrote:
> > It's a mandatory feature when forwarding: "Forwarded packets need to
> maintain original, end-to-end checksum value.". A box in the middle must
> not re-compute e.g. L4 checksum. If it would do that, it could introduce
> an error in payload data and update the checksum accordingly. The
> receiving end would not notice the error, since checksum matches.
> 
> If the middle box can't be trusted not to tamper with the payload when
> forwarding, why would you trust it not to "cover its tracks" by
> recomputing checksums, or remember to call this API? End-to-end
> integrity is why protocols like IPsec are used.
> 

L4 checksums are end-to-end, not per link. L4 checksum protects e.g. against 
memory errors in mid boxes (switches and routers). What would be the point of 
having a per link L4 checksum? Link layer has CRC/checksum per link already. Is 
this use case clear now ?

-Petri 

Reply via email to