[GTER] ksoftirqd 100%

Rubens Kuhl rubensk at gmail.com
Fri Aug 2 23:15:03 -03 2013


2013/8/2 Marcelo Gondim <gondim at intnet.com.br>

> Pessoal,
>
> Faz muito tempo que não uso Linux em qualquer solução de roteamento com
> tráfego alto. Tenho usado FreeBSD mas hoje voltei à fazer testes com o
> Linux como concentrador PPPoE e quando o tráfego chega em 80Mbps lá vem a
> porcaria do ksoftirqd consumindo CPU. Sei que isso está relacionado com a
> alta requisição de interrupção no sistema mas pelo amor de Deus com 80Mbps?
> A máquina é um Dual Quad Xeon de 3.0 Ghz com 8Gb de ram e uma Intel Server
> Dual Port Gigabit.
>
> Anulei os conntracks usando:
>
> iptables -A OUTPUT -t raw -j NOTRACK
> iptables -A PREROUTING -t raw -j NOTRACK
>

PPPoE é frame não-IP no lado cliente, então verifique o ebtables...



>
> Com isso não gero nenhuma conntrack no sistema.
> Fiz o cpu affinity distribuindo as irqs das interfaces de rede nas cpus.
>

Sua placa de rede suporta isso para frames não-IP ? Talvez você esteja
conseguindo fazer balanceamento só no sentido downstream.


> echo 5 > /proc/sys/net/ipv4/netfilter/**ip_conntrack_tcp_timeout_close
> echo 15 > /proc/sys/net/ipv4/netfilter/**ip_conntrack_udp_timeout
> echo 90 > /proc/sys/net/ipv4/netfilter/**ip_conntrack_udp_timeout_**stream
> echo 15 > /proc/sys/net/ipv4/netfilter/**ip_conntrack_icmp_timeout
> echo 300 > /proc/sys/net/ipv4/netfilter/**ip_conntrack_generic_timeout
>
> Mas mesmo com tudo isso ainda acontece o problema e o pior é que com
> exatamente esse mesmo hardware eu seguro um tráfego de 1.2Gbps no FreeBSD
> com lacp.
>

Mas não rodando PPPoE, né ? Agregação PPPoE é um mundo bem diferente de
roteamento IP. Notar que mesmo roteadores ASIC tem performance slow-path
para PPPoE, tanto que existem equipamento s específicos para agregação
PPPoE de larga escala (exemplo Juniper série E).


> Alguém conseguiu descobrir como resolver esse problema definitivamente?
>

Desligar o PPPoE e mudar para DHCP.


Rubens



More information about the gter mailing list