Olá Junior!...obrigado por me ajudar
mais uma vez!
Bom...vamos lá....
Sim....é exatamente isso que você descreveu abaixo.
E lendo o que você escreveu, meu caiu a ficha (pelo menos
acho!..rsrsrsrs!) que tudo realmente está correto!
Ou seja, segui sua sugestão e abri 2 terminais no servidor rodando
o tcpdump em ambas as interfaces dos links. Foi aí que lembrei que
os testes que eu estava fazendo usando o "ping" e o "traceroute"
usam o protocolo "icmp" e portanto ele ele cai na regra da tabela
principal.
E como você disse:
"3. O restante do tráfego vai para a tabela principal, onde você
definiu o balanceamento de carga. Assim, hora os pacotes vão sair
pelo link 1 e hora pelo link2. Dessa forma, e-mail está no link1,
web no link2 e o restante balanceado a 50%."
Então, quando eu usava o PING ou o TRACEROUTE nas estações eles
hora saiam e retornavam por um link e hora saiam e retornavam por
outro link pois o restante do tráfego, que inclui "icmp" também
entra neste balanceamento de 50%
Desta forma, a saída do tcpdump, quando eu usava o PING/TRACEROUTE
sempre mostravam atividade.
E quando somente abria um browser e navegava em páginas web,
somente o LINK-2 mostrava atividade de entrada e saída de pacotes
uma vez que nesse link são redirecionados os protocolos http(80)
e https(443).
Está correto meu raciocínio?
Em 27-07-2016 15:24, Linux - Junior Polegato escreveu:
Em 27-07-2016 14:12, Keppler
escreveu:
Load Balancing: Dá para melhorar desempenho?
[...]
Olá!
Vou tentar entender e responder abaixo o que entendi de suas
regras:
1. Os links 1 e 2 têm o mesmo peso, usados para o "nexthop"
(tabela principal) decidir quantas novas conexões irão para um ou
para outro link, no caso será 50% para cada link.
2. Você criou as tabelas 1 e 2 para definir rotas padrão para os
links 1 e 2 respectivamente, onde os pacotes marcados com 0x10
(e-mail, portas 110,23,25,465,587) vão para a tabela1, que por sua
vez o link1; e marca outros pacotes com 0x20 (web, portas 80,443)
vão para a tabela2, portanto link2. Fixou-se dessa forma e-mail no
link 1 e web no link 2.
3. O restante do tráfego vai para a tabela principal, onde você
definiu o balanceamento de carga. Assim, hora os pacotes vão sair
pelo link 1 e hora pelo link2. Dessa forma, e-mail está no link1,
web no link2 e o restante balanceado a 50%.
4. O roteamento mantém um cache, de forma a manter o mesmo link de
entrada/saída para determinadas conexões, de forma a persistir
conexões num mesmo link, assim um download ou upload fica preso à
um link até seu término. O mesmo ocorre com o ping, contudo, como
existe um tempo entre cada ping, aí pode ocorrer que uma nova
requisição de ping mude de link e não seja entendido pelo destino
como uma sequência do ping anterior, pois vai chegar para ele com
um IP diferente, daí é geralmente ignorado, causando timeout na
origem.
Você pode monitorar o que sai e chega de icmp nos links do seu
roteador abrindo 2 terminais lado a lado com o seguinte comando em
cada e veja o que acontece:
T1: tcpdump -i $placa_rede_1 -n icmp
T2: tcpdump -i $placa_rede_2 -n icmp
Sobre o tempo, continua sendo 8, 9 ou 10 ms, com 2 casos
esporádicos de 20 e 30 que são susceptíveis à variações
momentâneas em algum ponto do caminho.
Espero ter ajudado.
--
[]'s
Junior Polegato
|