On Thu, Jul 30, 2015 at 03:58:13PM +0200, Yann Droneaud wrote:
> Hi,
> 
> Le jeudi 30 juillet 2015 à 04:46 -0700, Yuval Shaia a écrit :
> > This enhancement suggest the usage of IB CRC instead of CSUM in IPoIB 
> > CM. IPoIB CM uses RC (Reliable Connection) which guarantees the 
> > corruption free delivery of the packet.
> > 
> > InfiniBand uses 32b CRC which provides stronger data integrity 
> > protection compare to 16b IP Checksum.
> 
> InfiniBand 32b CRC <=> Ethernet 32b CRC, it's link layer, layer 2.
> 
> IPv4 checksum is at another level, it's internet layer, layer 3.
> 
> >  So, there is no added value that IP/TCP Checksum provides in the IB 
> > world.
> > 
> 
> Sure, IPv4 checksum is a thing of the past: checksum was dropped from
> IP header in IPv6: it assumes the lower layer, such as Ethernet,
> provides the required integrety check.
Right, will change description to something like this:
InfiniBand 32b CRC offers strong data integrity protection compare CSUM.
> 
> I think not checking the IPv4 checksum should be a choice, carefully
> thought, for inside a fabric, as I understand your proposal, packet
> with invalid checksum will be allowed to go in/out of the fabric.
If peer supports this feature do you see any reason why not?
> 
> It sound like it's a departure from the behavior one can expect from an
> IPv4 network stack.
> 
> > The proposal is to tell network stack that IPoIB-CM supports IP 
> > Checksum offload. This enables the kernel to save the time of 
> > checksum calculation of IPoIB CM packets. Network sends the IP packet 
> > without adding the IP Checksum to the header. On the receive side, 
> > IPoIB driver again tells the network stack that IP Checksum is good 
> > for the incoming packets and network stack avoids the IP Checksum 
> > calculations.
> > 
> > During connection establishment the driver determine if peer supports
> > IB CRC as checksum. This is done so driver will be able to calculate
> > checksum before transmiting the packet in case the peer does not 
> > support this feature.
> > 
> 
> Two questions:
> 
> - What will see tool such as wireshark/tcpdump when sniffing checksum
> -less IPv4 packets sent/received on IPoIB interface ?
Never checked it but i assume 0 or what ever the kernel put there when
driver reports NETIF_F_IP_CSUM.
I can check and zero if needed but any reason to believe it is needed?
> 
> - What might happen if such checksum-less IPv4 packet is later routed to a 
> different IPv4 network ?
Same as my question above, if peer supports this feature do you see
anything wrong?
> 
> > With this enhancement throughput is increased by 60%.
> > 
> 
> > Signed-off-by: Yuval Shaia <yuval.sh...@oracle.com>
> 
> Regards.
> 
> -- 
> Yann Droneaud
> OPTEYA
> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to