Subject: Re: PROBLEM: Bnx2x Checksum/Length Error Over GRE Tunnel

From: Rick Jones <[email-masked]>
Date: Tue, 03 Feb 2015 11:29:28 -0800

On 02/03/2015 10:46 AM, Eric Dumazet wrote:
> On Tue, 2015-02-03 at 20:05 +0200, Eren Türkay wrote:
>> Hello,
>>
>> I am having incorrect checksum and length calculation error when using
>> GRE tunnel and this leads to unstable/unreliable connections where even
>> simple nc connection cannot be made correctly due to a lot of TCP
>> retransmissions. The reported iperf output becomes 23Kbit/s.
>>
>> When I disable tx checksumming with "ethtool -K eth0 tx off", the
>> problem seems to be solved but then I lose tcp segmentation offloading
>> support, without which adds an additional overhead on 10Gbit network
>> interface. With tx off, I get 4 to 7Gbit/s with parallel 40 connections
>> using iperf.
>>
>> In tcpdump output (tcpdump -i em1 proto gre) when tx checksumming is
>> enabled, I see "checksum error" in every packet + "IP truncated-ip -
>> 63631 bytes missing!" messages, and a lot of TCP
>> retransmissions. When tx is off, checksums are correct but I get 4-7Gbit
>> output. With GSO generalization code in [0] it is reported that
>> 9.3Gbit/s is possible over GRE tunnel but I'm nowhere near these results.
>
> Strange, I am using bnx2x with no such problem.

A pedantic question, but do the driver and firmware versions match 
between your setup and his?

rick