Re: [udp-encap rev2] discussion/comments

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Andrew,

See inline...

Tom P.

> -----Original Message-----
> From: Andrew Lentvorski [mailto:bsder@xxxxxxxxxxx]
> Sent: Friday, October 08, 2010 4:19 AM
> To: Phelan, Tom
> Cc: Gerrit Renker; dccp@xxxxxxxx
> Subject: Re:  [udp-encap rev2] discussion/comments
> 
> On 10/5/10 12:32 PM, Phelan, Tom wrote:
> 
> > [TomP] I am very against doing the checksum calculation twice, once
for
> > UDP and then again for DCCP.  In my opinion, implementations should
know
> > which encapsulation is being used.
> 
> I hope I'm missing something, but ...
> 
> I'm *very* against usage-context sensitive protocol definitions.
> 
> Why should my DCCP stack need to know that it got wrapped in UDP
> somewhere along the line?
> 
> If somebody wants to only generate one checksum, it is better that
they
> punt the UDP checksum.
> 
[TomP] There have been several good comments on this already, but one
thing I'd like to add is, how can this work?  The problem is that the
DCCP checksum includes the IP addresses, which have potentially been
changed along the way.  If you "fix up" the checksum based on the
addresses you've received you could be fixing up corruption.

Because of the checksum issue the DCCP stack needs to know the
encapsulation.  It's a pretty minor thing, I think.

> Besides, my (admittedly old) copy of Stevens indicates that UDP
> checksums are optional.  Therefore, any random system routing the UDP
> packets can legally smash that checksum, no?
> 
> In addition, on an embedded system, I have to carry the code around to
> generate both a UDP checksum *and* a DCCP checksum if I have a DCCP
> stack in order to comply with this encap.  If the DCCP checksum is
> extant, I can punt the UDP checksum code.
> 
> That's not being very nice to the people running small systems.  So,
for
> example, if I want to run DCCP on a system with lwIP, I'm going to
have
> to go find the SO_NO_CHECK option in lwIP to enable UDP checksums,
kick
> it on, recompile *lwIP* (and reprogram my RTOS or similar), eat the
code
> space, and redeploy my *OS*--all just for DCCP.  That's not going to
win
> many converts.
> 
> Whereas, if you don't force the UDP checksum on people, they can
deploy
> DCCP directly to application space without having to bash the
lwIP/RTOS
> that's already installed.
> 
> I would also like to point out, that it is *less* compute intensive
for
> DCCP to compute a checksum only on its headers (that is still in the
> spec, right?) than for UDP to have to compute a checksum on the entire
> DCCP packet.
> 
> So, given that all I can see are disadvantages, what am I missing?
What
> are the advantages to using the UDP checksum?
> 
> -a



[Index of Archives]     [Linux Kernel Development]     [Linux DCCP]     [IETF Annouce]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [DDR & Rambus]

  Powered by Linux