driver packet coalesce

Kip Macy kip.macy at gmail.com
Thu May 31 18:37:43 UTC 2007


Bruce -

All LRO implementations are currently on the host.

On 5/31/07, Bruce M. Simpson <bms at freebsd.org> wrote:
> Jack Vogel wrote:
> > On 5/31/07, Wilkinson, Alex <alex.wilkinson at dsto.defence.gov.au> wrote:
> >>     0n Wed, May 30, 2007 at 04:45:05PM -0700, Jack Vogel wrote:
> >>
> >>     > Does any driver do this now? And if a driver were to coalesce
> >>     > packets and send something up the stack that violates mss
> >>     > will it barf?
> >>
> >> erm, what is meant by "coalesce" ?
> >>
> > combining packets before sending to the stack, aka LRO.
>
> Yup - the firmware for the card's LRO engine would have to know not to
> coalesce packets not destined for the local host. I speculate many cards
> are not smart enough to do this, and LRO is an all-or-nothing
> proposition, as it's a technology designed to optimize for hosts, not
> routers; see recent discussions/slanging matches on end2end.
>
> At the moment there is no central place where we track all layer 2
> addresses for which traffic should be delivered locally. This would
> logically belong in struct ifnet, and clients e.g. CARP would have to be
> taught to add their layer 2 endpoint addresses there.
>
> It seems acceptable to disable LRO if bridging is on and document this
> behaviour.
>
> BMS
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
>


More information about the freebsd-net mailing list