[FUG-BR] Problema sério com link aggregation LACP no FreeBSD 10.2-RELEASE
Marcelo Gondim
gondim em bsdinfo.com.br
Quarta Setembro 16 01:42:18 BRT 2015
On 15-09-2015 22:08, Giovanni Tirloni wrote:
> On 09/15/2015 06:28 AM, Marcelo Gondim wrote:
>> Eu tenho 2 laggs nesse router e depois que atualizei, quando chegava
>> no horário
>> de pico e subia o tráfego nesses laggs, simplesmente meu load subia
>> pra 40.x à
>> 53.x, minha sessão BGP de um desses laggs com a operadora caía e
>> levantava de 5
>> em 5 minutos me gerando grande problema aqui no provedor.
>>
>> Nos logs ficavam aparecendo:
>>
>> /var/log/messages:Sep 9 19:21:43 rt01 kernel: igb5: Interface stopped
>> DISTRIBUTING, possible flapping
>> /var/log/messages:Sep 9 19:21:44 rt01 kernel: igb4: Interface stopped
>> DISTRIBUTING, possible flapping
>
> Ola Marcelo,
>
> Não sei até que ponto você está disposto a investigar esse problema,
> mas se puder voltar para o 10.2 e iniciar a maquina em verbose mode
> [1], pode ser que outras mensagens ajudem a elucidar esse problema.
>
> Você poderia enviar a saída do ifconfig das interfaces ixb/lagg, a
> configuração do link aggr switch, as informações físicas da interface
> (pciconf -lv) e de boot (egrep ´(lagg|igb)' /var/run/dmesg.boot)?
>
> Desde a 10.1-RELEASE, o driver igb teve muitas mudanças. É difícil
> dizer exatamente o que pode ter causado essa regressão sem mais detalhes.
>
> [1] -
> https://www.freebsd.org/doc/handbook/boot-introduction.html#boot-init
Opa Giovanni,
É complicado eu fazer isso pois o router segura a Internet de 4 cidades.
São quase 4.5Gbps de tráfego e mais de 20.000 assinantes.
Se eu fizer isso vou ter muitos cancelamentos tendo em vista que já
fiquei uns 3 dias apresentando esse problema e achando que era uma das
Operadoras de trânsito. Não posso colocar um ambiente desse em testes,
infelizmente.
Por isso informei a revisão que estava usando sem problemas, para tentar
ajudar à descobrir o que foi alterado nesse espaço de tempo e que possa
estar causando isso.
Com relação ao fato de que o próprio pessoal do projeto usa o FreeBSD
11, eu vejo isso como um grande erro. O current deveria ser testado sim
mas antes de mais nada deveria ser usado a versão de produção que é a
10.x e torná-la mais estável e robusta ainda. Somente usando o sistema,
é que se encontram as falhas.
Para mim os nomes deveriam ser diferentes então: STABLE deveria se
chamar TESTING, RELEASE de UNSTABLE e o CURRENT de RELEASE. Ouvi muito
sobre a organização em que é feito o sistema. A versão 8.x na qual
comecei à ver FreeBSD era excelente e me ajudou bastante. Mas
sinceramente nesses últimos anos me deparo com algumas coisas que parece
coisa de "universitário" mesmo. Me lembra o RouterOS da Mikrotik onde
mexem em uma coisa e estraga outra e vai mexendo e tentando acertar.
As versões de produção deveriam ser a mais rock solid possível, ainda
lembro dessa frase. No entanto cada vez que atualizo para uma release,
algo acontece e coisas param de funcionar ou passam à funcionar meia
boca. Mesmo acontecendo essas coisas faço a minha parte que é abrir um
PR e mandar e-mail para as listas freebsd-stable ou freebsd-net mas sem
evolução do problema.
Mesmo com todos esses problemas o FreeBSD ainda é o sistema que aguenta
e segura o meu tráfego e gostaria de vê-lo melhorar cada vez mais.
Continuar levantando essa bandeira mas é preciso que o pessoal do core
ou alguém lá acorde para esses problemas. Hoje minha realidade é a seguinte:
- Ficar fazendo testes com o sistema em produção, derrubando os
assinantes até descobrir onde está o problema.
- Esperar que alguém passe pelo mesmo problema e consiga reproduzir o
erro para que seja corrigido em algum momento virando uma MFC.
- Mudar para STABLE e ficar atualizando o source de tempo em tempo,
torcendo para que alguém descubra algo errado e corrija. Como foi meu
caso com a X520-SR2.
- Mudar para o CURRENT e ficar correndo riscos mas pelo jeito é o que o
Projeto FreeBSD está usando em produção.
- Aprender à programar em C, estudar o código do source, corrigir e
disponibilizar o patch.
- Contratar um programador C para estudar o problema e resolver.
- Investir uma grana em Juniper MX5.
Não estou vendo muitas opções boas mas são essas aí.
Estou muito desanimado com o sistema mas agora tenho que manter até onde
eu consiga.
[]'s
Gondim
Mais detalhes sobre a lista de discussão freebsd