lagg/lacp poor traffic distribution

Fabien Thomas fabien.thomas at netasq.com
Thu Dec 23 09:30:26 UTC 2010


On Dec 22, 2010, at 6:55 PM, Eugene Grosbein wrote:

> On 21.12.2010 21:57, Fabien Thomas wrote:
> 
>>> irq262: igb0:que 0             157354922       7927
>>> irq263: igb0:que 1                577369         29
>>> irq264: igb0:que 2                280207         14
>>> irq265: igb0:que 3                241826         12
>>> irq266: igb0:link                      2          0
>>> irq267: igb1:que 0             164620363       8293
>>> irq268: igb1:que 1                238678         12
>>> irq269: igb1:que 2                248478         12
>>> irq270: igb1:que 3                762453         38
>>> irq271: igb1:link                      3          0
>>> cpu2: timer                     39576052       1993
>>> cpu3: timer                     39576095       1993
>>> cpu1: timer                     39575913       1993
>>> Total                          989503327      49849
>>> 
>>> It seems I have four queues per igb card but only one of them works?
>> 
>> Yes.
>> 
>> Jack will certainly confirm but it seems that RSS hash does not seems to take vlan in account and default to queue0 ?
> 
> I've just read "Microsoft Receive-Side Scaling" documentation,
> http://download.microsoft.com/download/5/d/6/5d6eaf2b-7ddf-476b-93dc-7cf0072878e6/ndis_rss.doc
> 
> RSS defines that hash function may take IP and optionally port numbers only, not vlan tags.
> In case of PPPoE-only traffic this card's ability to classify traffic voids.
> Then, unpatched lagg fails to share load over outgoing interface ports.
> 
> It seems, we really need sysctl disabling lagg's use of flows, don't we?

Yes I think that it is necessary to be able to disable it because he cant be always optimal.
One improvement to the queue count would be to hash the queue id before the modulo.

> 
> Eugene Grosbein



More information about the freebsd-net mailing list