2 - Ip Routing Basics
O capítulo descreve o funcionamento básico do roteamento, como um roteador
seleciona suas rotas, e aborda alguns conceitos importantes, como route import,
preferência externa e interna, cost, e o processo de envio de um pacote.
RIB e FIB
RIB é uma tabela gerada pelo roteador, ela faz parte do control plane, e
resumidamente, é a routing-table normal, com as rotas estáticas, diretas, e
dinâmicas. Essa tabela não é a tabela final usada no envio, não é exatamente o
que o roteador usa para enviar, serve mais para organizar, e para humanos
entenderem, é como se ela estivesse 1 camada acima da FIB.
FIB é uma tabela que o MPU fornece para a LPU para que ela possa fazer
encaminhamento de dados, isso é, a FIB carrega as entradas IP, mas ao invés de
next-hop como int g0/0/1, lá ela vai ter um número que representa a interface, e
esse é o next-hop que o roteador entende. Além disso, a FIB está no forwarding
plane, porque já é o último passo para enviar.
RIB = Routing Information Base
FIB = Forwarding Information Base
Envio de dados
O envio de dados acontece da seguinte forma, consideremos a seguinte
topologia:
PC1—R1—Internet—R2—PC2
O envio de dados começa no instante que o PC1 deseja trocar dados com o
PC2, e tenta estabelecer uma conexão TCP.
Para que isso seja possível, é necessário roteamento, o PC só vai precisar de
uma rota, que é a do gateway, porque é a única opção dele, e o pacote vai sair
primeiro dele para o roteador.
2 - Ip Routing Basics 1
Assim que o R1 receber o pacote, a LPU, especificamente o chip de
encaminhamento vai combinar o IP de destino com as entradas da FIB, e se ele
tiver, vai enviar para o next-hop especificado lá, que vai ser um número que
especifica a interface, mas não é feito para ser familiar a humanos.
Após esse processo, o pacote vai subir para SFU, que vai entregar para a
downlink LPU, que vai remontar os pacotes, e refazer o processo, até o pacote
sair do roteador.
Essa FIB é baseada no RIB, e foi fornecida pela MPU, considerando que seja
um dispositivo high-end.
Roteamento
O roteamento funciona de uma forma simples e baseado em alguns princípios,
assim que o roteador receber um pacote, vai checar o destino e combinar ele
com alguma rota que ele tenha.
As rotas contém algumas informações, as principais são:
Endereço de rede: ex: [Link]/24.
Preferência: Existem 2 tipos de preferência, interna, e externa, a externa é
aquele valor de 0 a 255, e pode ser alterada por protocolo ou rota. A interna é
definida por protocolo e não pode ser alterada.
Protocolo: direta, estática, ou protocolos dinâmicos, por exemplo BGP e OSPF.
Custo: É o valor do custo da rota, costuma ser 0, ou definido durante o cálculo
da rota por um protocolo dinâmico, serve para comparar rotas geradas por um
mesmo protocolo, e costuma ser muito relevante para protocolos de
roteamento dinâmico.
2 - Ip Routing Basics 2
Na hora de selecionar uma rota, o dispositivo realiza o processo AND, que não
sei a sigla, mas é o seguinte:
A primeira regra é o “longest match”, é meio estranho de se entender por conta
da tradução, mas significa que o endereço de rede mais próximo vai ser
selecionado, por exemplo, se eu tiver um pacote com destino para [Link], e 2
rotas, uma para rede [Link]/16 e outra para a [Link]/24, o roteador seleciona
a segunda.
Caso essa regra não decida, que é quando eu tenho 2 rotas para mesma rede,
o desempate acontece pela preferência externa, aquele número lá. Quanto
menor o valor, maior a importância, isso é, se eu tiver uma rota com
preferencia 70, e outra 60, a 60 ganha.
Se as preferências externas empatam, a próxima é a preferência interna, que é
fixa por protocolo. Por exemplo, rota estática com preferencia 10 vs OSPF com
preferencia 10, OSPF vence.
Se forem 2 rotas do mesmo protocolo, e as preferências internas empatarem,
tem o custo, que serve para comparar quem é do mesmo protocolo, e quanto
menor melhor.
Se o custo empatar, a primeira sobe para a tabela de roteamento.
OBS: Na tabela de roteamento só aparece 1 rota por endereço de rede, então
se você tiver 2 pro mesmo destino, só a que for melhor sobe para tabela.
Route-Import
Route-Import é uma solução para trazer rotas de um protocolo para outro, por
exemplo, trazer uma rota estática para dentro do OSPF, sendo utilizada para
conectar partes do roteamento, entretanto, se não configurar direito podem
acontecer coisas muito ruins com a rede.
Cuidados: Loops e Sub-optimal path
Quando se importa uma rota, deve se prestar atenção num problema chamado
route-injection.
2 - Ip Routing Basics 3
Considere a seguinte topologia:
Considere que o R1 importa a rota de um segmento que ele tem acesso para
dentro do OSPF, e o R2 importa as rotas OSPF dele para dentro do IS-IS, e o R4
repassa elas para o R3, que importa o IS-IS para dentro do OSPF. Isso gera um
loop de importação de rota, gerando carga desnecessária de tráfego e carga
desnecessária nos roteadores.
Outro problema que pode ocorrer, é o custo mal configurado, caso o R1 não
configure o custo para a rota dele, o R3 pode acabar usando a rota
R3>R4>R2>R1, porque o custo padrão da rota importada do IS-IS é 15, e a ASE
padrão do OSPF é 150.
2 - Ip Routing Basics 4