netisr+lagg+fragments=80% packet loss
Eugene Grosbein
egrosbein at rdtc.ru
Sat Feb 25 12:17:19 UTC 2012
25.02.2012 02:00, Andrew Thompson пишет:
> 2012/2/25 Eugene Grosbein <egrosbein at rdtc.ru>:
>> 25.02.2012 00:14, Eugene Grosbein пишет:
>>> This problem occurs only when net.isr.direct=0/net.isr.direct_force=0.
>>> And only when lagg1 has both ports up and running. And when I use oversized pings.
>>> At the same time, transit oversized pings go through this BRAS just fine,
>>> no packet loss at all.
>>
>> Running two copies of tcpdump for igb0 and igb1 simultaneously,
>> I see that fragments of the same ICMP echo-reply packet encapsulated within PPPoE
>> frame always go out through different ports of lagg1. Even when they arrive to client in order,
>> it seems this depends of switching network in between PPPoE server and client.
>>
>
> If you are running a recent HEAD then you can try setting
> net.link.lagg.0.use_flowid to zero.
It helps to set net.link.lagg.1.use_flowid=1, yes (but I use 8.2-STABLE with this sysctl added).
Perhaps, ip_fragment() does not keep flowid for fragments it creates.
Eugene Grosbein
More information about the freebsd-net
mailing list