Outra origem possível para o loop de roteamento é quando um roteador envia
informações corretas sobre um destino inalcançável e logo em seguida recebe informações
erradas de algum roteador vizinho que ainda não atualizou sua tabela corretamente.
1) O roteador A passa uma atualização para o roteador B e o
roteador D, indicando que a rede 1 está inoperante. O roteador C, entretanto,
transmite uma atualização para o roteador B, indicando que a rede 1 está
disponível a uma distância de 4, através do roteador D. Isso não viola as regras
de split horizon.
2) O roteador B conclui, incorretamente, que o roteador C
ainda possui um caminho válido para a rede 1, apesar de ter uma métrica muito
menos favorável. O roteador B envia uma atualização para o roteador A,
informando o roteador A da nova rota para a rede 1.
3) O roteador A determina agora que pode enviar à rede 1
através do roteador B; o roteador B determina que pode enviar à rede 1 através
do roteador C e o roteador C determina que pode enviar à rede 1 através do
roteador D. Qualquer pacote introduzido nesse ambiente fará um loop entre
roteadores.
4) O split horizon tenta evitar essa situação. Como
mostrado na Figura acima, se uma atualização de roteamento sobre a
rede 1 chegar do roteador A, o roteador B ou D não poderá enviar informações
sobre a rede 1 de volta para o roteador A. O split horizon assim reduz as
informações de roteamento incorretas e reduz a sobrecarga do roteamento.
Com o split horizon simples, atualizações de roteamento enviadas a um roteador
vizinho não devem conter informações sobre rotas que foram aprendidas com aquele
vizinho. Por exemplo, suponha que o roteador 1 anuncie que tem uma rota para a
rede A. O roteador 2 recebe a atualização do roteador 1 e insere a informação sobre a
rede A em sua tabela de roteamento. Quando o roteador 2 envia uma atualização de
roteamento regular, ele não inclui a entrada para a rede A na atualização enviada para o
roteador 1. porque essa rota foi aprendida através dele.
|