Project Home
Project Home
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - PCIe shared memory network driver, turning off packet checksum: (4 Items)
   
PCIe shared memory network driver, turning off packet checksum  
I've implemented a network driver that uses PCIe shared memory for the physical layer to support network communication 
over the PCIe bus between multiple CPUs.  Since this is a 'reliable' physical layer I would like to disable packet 
checksums to improve performance. 

I can see that it's possible to enable hardware offload of Tx/Rx checksums but does anyone know if it can be completely 
disabled -- don't generate and don't check checksums.
Re: PCIe shared memory network driver, turning off packet checksum  
in case you do not need socket interface or TCP traffic, then you can even
think about implementing all required packet functionality in a driver
module yourself...

BR
VG

On Fri, Jul 9, 2010 at 2:21 AM, gary anderson <community-noreply@qnx.com>wrote:

> I've implemented a network driver that uses PCIe shared memory for the
> physical layer to support network communication over the PCIe bus between
> multiple CPUs.  Since this is a 'reliable' physical layer I would like to
> disable packet checksums to improve performance.
>
> I can see that it's possible to enable hardware offload of Tx/Rx checksums
> but does anyone know if it can be completely disabled -- don't generate and
> don't check checksums.
>
>
>
> _______________________________________________
>
> Networking Drivers
> http://community.qnx.com/sf/go/post59022
>
>
Re: PCIe shared memory network driver, turning off packet checksum  
Just as an afterthought, in case you Enable HW offloading of checksums, doesnt that mean stack will not perform any 
checksum nor check for its correctness assuming HW has done it. Whether HW actually does it or not might not be 
important to the stack....


> in case you do not need socket interface or TCP traffic, then you can even
> think about implementing all required packet functionality in a driver
> module yourself...
> 
> BR
> VG
> 
> On Fri, Jul 9, 2010 at 2:21 AM, gary anderson <community-noreply@qnx.com>wrote:
> 
> > I've implemented a network driver that uses PCIe shared memory for the
> > physical layer to support network communication over the PCIe bus between
> > multiple CPUs.  Since this is a 'reliable' physical layer I would like to
> > disable packet checksums to improve performance.
> >
> > I can see that it's possible to enable hardware offload of Tx/Rx checksums
> > but does anyone know if it can be completely disabled -- don't generate and
> > don't check checksums.
> >
> >
> >
> > _______________________________________________
> >
> > Networking Drivers
> > http://community.qnx.com/sf/go/post59022
> >
> >


RE: PCIe shared memory network driver, turning off packet checksum  
AFAIK you can disable UDP checksum in stack using following tool.
See the example section
 
http://www.qnx.com/developers/docs/6.4.0/neutrino/utilities/s/sysctl.htm
l

Another option could be to fool around stack by advertising your driver
capabilities in 
ifp->if_capabilities_rx and ifp->if_capabilities_tx flags.

Akash

-----Original Message-----
From: gary anderson [mailto:community-noreply@qnx.com] 
Sent: Friday, July 09, 2010 2:21 AM
To: drivers-networking
Subject: PCIe shared memory network driver, turning off packet checksum

I've implemented a network driver that uses PCIe shared memory for the
physical layer to support network communication over the PCIe bus
between multiple CPUs.  Since this is a 'reliable' physical layer I
would like to disable packet checksums to improve performance. 

I can see that it's possible to enable hardware offload of Tx/Rx
checksums but does anyone know if it can be completely disabled -- don't
generate and don't check checksums.



_______________________________________________

Networking Drivers
http://community.qnx.com/sf/go/post59022