Comment # 5 on bug 1055057 from
(In reply to Markos Chandras from comment #4)
> Thank you Michal. That's a really awesome explanation. I believe the code
> responsible for this is here
> 
> https://github.com/openstack/openstack-ansible-tests/blob/master/test-
> prepare-host.yml#L196-L197

Introduced by... "Initial testing commit". Of course. :-)

> but it lacks some context. It probably doesn't do what it is supposed to do.

Almost certainly. My wild guess is they are trying to work around the fact that
with the virtual networking devices for guest-host communication, "checksum
offload" actually means "don't care about checksums". Sender pretends to
offload
checksumming to hardware and sends the packet as is, receiver ignores the
checksum and sets skb->ip_summed as if it were checked by hardware. Only if
the packet is later forwarded out of the physical box, the checksum is actually
computed. Which makes a good sense as the risk of packet being corrupted on the
"line" between guest and host is essentially zero.

So I guess the questions are why should we care about correct checksums and
if we do, why only for TCP when correct checksum should only matter when
userspace application processes the whole packet including headers which is
rarely the case for TCP. And even if there is a reason for that, it would be
IMHO more practical to fix the checksums on receiver side.


You are receiving this mail because: