Luiz Otavio O Souza (loos@) developed these for igb(4) and, by extension, em(4) for use in netmap-fwd.
He’s just gone back to Brazil with 82599 ixgb(4) hardware. I’m sure he’ll develop similar patches for ixgb(4) in the near future. Chelsio is also “on the list”, but I figured I’d speak to np@ about it first. ;-) We might do ixl(4) as well. Before Luiz retired to Brazil, we discussed upstreaming these to FreeBSD. We’re committed to make it happen, but I doubt they make 11. Jim > On Jun 15, 2016, at 6:50 PM, Navdeep Parhar <n...@freebsd.org> wrote: > > On 06/15/2016 16:15, Andrey Yakovlev wrote: >> ive heard on bsdcan this year that some patches exist to add hwcsum >> offloading to netmap, hope to see it chelsio at least > > cxgbe/cxl is a bit sneaky and will let you override netmap (on tx only). > The ncxl interfaces declare themselves capable of checksumming but all > such capabilities are disabled by default. Just enable txcsum on the > interface and the hardware will do checksum insertion on tx. No way to > solve the rx part entirely within the driver -- netmap has to be willing > to accept checksum related flags from the driver. > > Regards, > Navdeep > >> >> -- >> ./andy >> >> >> 14.06.2016, 12:15, "Dominik Schoeffmann" <schoe...@in.tum.de>: >>> Dear Netmap Developers, >>> >>> during the course of my bachelor's thesis, I modified a packet generator >>> called MoonGen [1] in order to utilize netmap. >>> One key component was to flexibly offload checksums for different kinds >>> of packets (IPv4, UDP, TCP). >>> The ixgbe netmap patch was modified [2] in order to construct context >>> descriptors and suitable data descriptors. This is implemented in less >>> than 250 LoC (including pseudo-header calculations). >>> The man page states, that checksum offloading is available via ethtool, >>> although a solution inside the netmap API might be a cleaner way for >>> applications to actually use these features. >>> Attached is a graph showing the performance implication of using >>> offloading in the current implementation. >>> As can be seen, offloading has only a minor impact. >>> When regarding this data (and comparing it to other frameworks), please >>> keep in mind, that internally a lot of per-packet effort is needed due >>> to the software architecture of the packet generator. >>> >>> The question being: >>> Would it not make sense to include checksum offloading inside of netmap >>> in order to accomodate applications operating on layer 3 and above? >>> As these programs need to calculate the checksums in software, it would >>> be just as fast to move these calculations to the kernel for NICs >>> without checksum offloading support (and the kernel would act as a library). >>> The problem which currently is imposed by the fact, that netmap exports >>> the complete ring, is that context descriptors disrupt the data >>> descriptors, which is unpleasant for the application. >>> But you may find the data interesting nevertheless. >>> >>> Best Regards, >>> Dominik Schoeffmann >>> >>> [1] https://github.com/dschoeffm/MoonGen/tree/netmap >>> [2] https://github.com/dschoeffm/netmap/tree/mg-chksum-offloading >> _______________________________________________ >> freebsd-net@freebsd.org mailing list >> https://lists.freebsd.org/mailman/listinfo/freebsd-net >> To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org" >> > > _______________________________________________ > freebsd-net@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org" _______________________________________________ freebsd-net@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"