Diferença entre tabela de roteamento e encaminhamento

10

Qual é a diferença entre tabelas de encaminhamento e roteamento?

jokerrnej
fonte

Respostas:

16

Roteamento é a decisão sobre qual interface um pacote deve ser enviado. Essa decisão também deve ser tomada para pacotes criados localmente. As tabelas de roteamento contêm endereços de rede e a interface ou o nexthop associado. Este refere-se a ip routee ip rule(num contexto Linux).

Encaminhamento refere-se a pacotes que atingem um sistema, mas não são destinados a esse sistema. O encaminhamento é uma decisão do sistema: "Pego o pacote e tento levá-lo ao seu destino". Em vez de simplesmente largar. "encaminhamento" é um termo comum no contexto de filtros de pacotes. O Netfilter do Linux possui três cadeias em sua tabela base: INPUT, OUTPUT e FORWARD. Essa cadeia apenas toma a decisão "Esse pacote deve ser encaminhado ou descartado?" (se o encaminhamento geralmente estiver ativado no sistema; Linux novamente: / proc / sys / net / ipv4 / ip_forward).

Hauke ​​Laging
fonte
O que dizer de: cat / proc / sys / net / ipv4 / ip_forward vs cat / proc / sys / net / ipv4 / conf / eth0 / forwarding?
JohnyTex
10

Na maioria dos sistemas - aqueles com uma única conexão de rede - eles serão os mesmos. Em um roteador, no entanto, eles tendem a ser diferentes.

A tabela de roteamento contém todas as rotas que um roteador aprende com seus pares e vizinhos usando um protocolo de roteamento dinâmico como OSPF ou BGP. Cada rota é classificada e avaliada, com base nos parâmetros do protocolo de roteamento em uso, e o subconjunto de entradas da tabela de roteamento 'melhores' é colocado na tabela de encaminhamento. Quando o roteador recebe um pacote, ele procura o endereço de destino na tabela de encaminhamento para decidir por qual interface enviar o pacote e qual deve ser o endereço do próximo salto. À medida que novas rotas são aprendidas, interfaces ativadas ou desativadas ou alterações de política feitas no esquema de classificação, a tabela de roteamento é reavaliada e a tabela de encaminhamento atualizada.

As tabelas de roteamento geralmente são armazenadas na RAM; as tabelas de encaminhamento em equipamentos de alto desempenho serão distribuídas pelas placas de linha (em sistemas modulares) e armazenadas no TCAM de alta velocidade. Normalmente, há um número finito de rotas que podem ser mantidas no TCAM; quando a tabela de encaminhamento excede a capacidade do TCAM, os pacotes podem ser descartados ou roteados no software (que é significativamente mais lento).

techieb0y
fonte
4

Antes de tudo, no meu ponto de vista, acho que você deve primeiro entender claramente a distinção entre encaminhamento e roteamento , que geralmente é negligenciada. De acordo com o livro Computer Networks na página 240 de Lary L.Peterson , o encaminhamento é uma série de ações que o roteador executará quando receber um pacote, incluindo olhar para o endereço de destino, consultar uma tabela e enviar o pacote em uma direção determinada por essa mesa. No entanto, o roteamento aqui se refere ao processo pelo qual as tabelas de encaminhamento são criadas.

Voltando à pergunta original, podemos concluir que, embora possamos manter uma tabela de encaminhamento e uma tabela de roteamento nas mesmas estruturas, há muitas razões para separá-las. Uma tabela de encaminhamento geralmente precisa ser estruturada para otimizar o processo de busca de um endereço ao encaminhar um pacote, que contém mais informações, como endereço MAC. Por outro lado, a tabela de roteamento geralmente se concentra no cálculo de alterações na topologia, e as entradas na tabela de roteamento geralmente são mais sucintas, incluindo apenas o IP do próximo salto.

AaronChen
fonte
-1

A tabela de roteamento contém todo o caminho para o destino diferente (o mesmo destino pode ter 2 ou mais caminhos diferentes)

mas

A tabela de encaminhamento contém apenas o melhor caminho para cada destino (apenas um caminho para cada destino)

Souhaieb
fonte
Acho que essa resposta não acrescenta nada às respostas já aqui. Também não tenho certeza.
MadHatter