Protocolo de Informação de Roteamento - Routing Information Protocol

O Routing Information Protocol ( RIP ) é um dos mais antigos protocolos de roteamento de vetor de distância que emprega a contagem de saltos como uma métrica de roteamento . O RIP evita loops de roteamento implementando um limite no número de saltos permitidos em um caminho da origem ao destino. O maior número de saltos permitidos para RIP é 15, o que limita o tamanho das redes que o RIP pode suportar.

O RIP implementa o split horizon , o envenenamento da rota e os mecanismos de holddown para evitar que informações de roteamento incorretas sejam propagadas.

Em RIPv1, os roteadores transmitem atualizações com sua tabela de roteamento a cada 30 segundos. Nas primeiras implantações, as tabelas de roteamento eram pequenas o suficiente para que o tráfego não fosse significativo. À medida que as redes aumentaram de tamanho, no entanto, tornou-se evidente que poderia haver uma grande explosão de tráfego a cada 30 segundos, mesmo se os roteadores tivessem sido inicializados em momentos aleatórios.

Na maioria dos ambientes de rede, o RIP não é a escolha preferida de protocolo de roteamento , pois é hora de convergir e a escalabilidade é ruim em comparação com EIGRP , OSPF ou IS-IS . No entanto, é fácil de configurar, porque o RIP não requer nenhum parâmetro, ao contrário de outros protocolos.

O RIP usa o protocolo de datagrama do usuário (UDP) como seu protocolo de transporte e é atribuído ao número de porta reservado 520.

Desenvolvimento de roteamento de vetor de distância

Com base no algoritmo Bellman – Ford e no algoritmo Ford – Fulkerson , os protocolos de roteamento do vetor de distância começaram a ser implementados a partir de 1969 em redes de dados como ARPANET e CYCLADES . O predecessor do RIP foi o Gateway Information Protocol (GWINFO), desenvolvido pela Xerox em meados da década de 1970 para rotear sua rede experimental. Como parte do conjunto de protocolos Xerox Network Systems (XNS), GWINFO transformado no protocolo de informações de roteamento XNS. Este XNS RIP, por sua vez, tornou-se a base para os primeiros protocolos de roteamento, como o IPX RIP da Novell , o protocolo de manutenção da tabela de roteamento (RTMP) da AppleTalk e o IP RIP. A distribuição de software Berkley de 1982 do sistema operacional UNIX implementou o RIP no daemon roteado . O lançamento 4.2BSD provou ser popular e se tornou a base para as versões subsequentes do UNIX, que implementaram o RIP no daemon roteado ou fechado . Em última análise, o RIP foi amplamente implantado antes que o padrão escrito por Charles Hedrick fosse aprovado como RIPv1 em 1988.

A contagem de saltos RIP

A métrica de roteamento usada pelo RIP conta o número de roteadores que precisam ser passados ​​para alcançar uma rede IP de destino. A contagem de saltos 0 denota uma rede que está diretamente conectada ao roteador. 16 saltos denotam uma rede inacessível, de acordo com o limite de saltos RIP.

Versões

Existem três versões padronizadas do Routing Information Protocol: RIPv1 e RIPv2 para IPv4 e RIPng para IPv6 .

RIP versão 1

A especificação original do RIP, definida no RFC 1058, foi publicada em 1988. Na inicialização, e a cada 30 segundos depois, um roteador com implementação RIPv1 transmite para 255.255.255.255 uma mensagem de solicitação por meio de cada interface habilitada para RIPv1. Os roteadores vizinhos que recebem a mensagem de solicitação respondem com um segmento RIPv1, contendo sua tabela de roteamento . O roteador solicitante atualiza sua própria tabela de roteamento, com o endereço de rede IP alcançável, contagem de saltos e próximo salto, ou seja, o endereço IP da interface do roteador do qual a resposta RIPv1 foi enviada. À medida que o roteador solicitante recebe atualizações de diferentes roteadores vizinhos, ele só atualizará as redes alcançáveis ​​em sua tabela de roteamento, se receber informações sobre uma rede alcançável que ainda não tenha em sua tabela de roteamento ou informações de que uma rede que possui em sua tabela de roteamento é alcançável com uma contagem de saltos mais baixa. Portanto, um roteador RIPv1 terá, na maioria dos casos, apenas uma entrada para uma rede alcançável, aquela com a contagem de saltos mais baixa. Se um roteador receber informações de dois roteadores vizinhos diferentes de que a mesma rede pode ser alcançada com a mesma contagem de saltos, mas por meio de duas rotas diferentes, a rede será inserida na tabela de roteamento duas vezes com roteadores de próximo salto diferentes. O roteador habilitado para RIPv1 executará o que é conhecido como balanceamento de carga de custo igual para pacotes IP.

Os roteadores habilitados para RIPv1 não apenas solicitam as tabelas de roteamento de outros roteadores a cada 30 segundos, mas também ouvem as solicitações de entrada de roteadores vizinhos e enviam sua própria tabela de roteamento, por sua vez. As tabelas de roteamento RIPv1 são, portanto, atualizadas a cada 25 a 35 segundos. O protocolo RIPv1 adiciona uma pequena variável de tempo aleatória ao tempo de atualização, para evitar a sincronização das tabelas de roteamento em uma LAN. Pensava-se que, como resultado da inicialização aleatória, as atualizações de roteamento se espalhariam com o tempo, mas isso não era verdade na prática. Sally Floyd e Van Jacobson mostraram em 1994 que, sem uma ligeira randomização do cronômetro de atualização, os cronômetros eram sincronizados ao longo do tempo.

O RIPv1 pode ser configurado no modo silencioso, para que um roteador solicite e processe tabelas de roteamento vizinhas e mantenha sua tabela de roteamento e contagem de saltos para redes acessíveis atualizadas, mas não envie desnecessariamente sua própria tabela de roteamento para a rede. O modo silencioso é comumente implementado para hosts.

RIPv1 usa roteamento classful . As atualizações de roteamento periódicas não transportam informações de sub-rede , sem suporte para máscaras de sub-rede de comprimento variável (VLSM). Essa limitação torna impossível ter sub - redes de tamanhos diferentes dentro da mesma classe de rede . Em outras palavras, todas as sub-redes em uma classe de rede devem ter o mesmo tamanho. Também não há suporte para autenticação de roteador, tornando o RIP vulnerável a vários ataques.

RIP versão 2

Devido às deficiências da especificação original do RIP, o RIP versão 2 (RIPv2) foi desenvolvido em 1993, publicado como RFC 1723 em 1994 e declarado Internet Standard 56 em 1998. Incluía a capacidade de transportar informações de sub-rede, suportando assim Classless Inter- Roteamento de Domínio (CIDR). Para manter a compatibilidade com versões anteriores, o limite de contagem de saltos de 15 permaneceu. O RIPv2 possui recursos para interoperar totalmente com a especificação anterior se todos os campos do protocolo Must Be Zero nas mensagens RIPv1 forem especificados corretamente. Além disso, um recurso de alternância de compatibilidade permite ajustes de interoperabilidade refinados.

Em um esforço para evitar carga desnecessária em hosts que não participam do roteamento, o RIPv2 faz o multicast de toda a tabela de roteamento para todos os roteadores adjacentes no endereço 224.0.0.9 , ao contrário do RIPv1 que usa broadcast . O endereçamento unicast ainda é permitido para aplicações especiais.

A autenticação ( MD5 ) para RIP foi introduzida em 1997.

As tags de rota também foram adicionadas no RIP versão 2. Esta funcionalidade permite uma distinção entre as rotas aprendidas com o protocolo RIP e as rotas aprendidas com outros protocolos.

RIPng

O RIPng (RIP next generation), definido no RFC 2080, é uma extensão do RIPv2 para suporte ao IPv6 , o protocolo da Internet da próxima geração. As principais diferenças entre RIPv2 e RIPng são:

  • Suporte de rede IPv6.
  • Enquanto RIPv2 suporta autenticação de atualizações RIPv1, RIPng não. Na época, os roteadores IPv6 deveriam usar IPsec para autenticação.
  • RIPv2 codifica o próximo salto em cada entrada de rota, RIPng requer codificação específica do próximo salto para um conjunto de entradas de rota.

RIPng envia atualizações na porta UDP 521 usando o grupo multicast ff02 :: 9 .

Mensagens RIP entre roteadores

As mensagens RIP usam o protocolo de datagrama do usuário na porta 520 e todas as mensagens RIP trocadas entre os roteadores são encapsuladas em um segmento UDP.

Mensagens RIPv1

O RIP definiu dois tipos de mensagens:

Solicitar mensagem
Solicitando a um roteador habilitado para RIPv1 vizinho que envie sua tabela de roteamento.
Mensagem de Resposta
Carrega a tabela de roteamento de um roteador.

Cronômetros

O protocolo de informações de roteamento usa os seguintes temporizadores como parte de sua operação:

Atualizar cronômetro
Controla o intervalo entre duas mensagens de resposta gratuitas. Por padrão, o valor é 30 segundos. A mensagem de resposta é transmitida a todas as interfaces habilitadas para RIP.
Cronômetro inválido
O cronômetro inválido especifica por quanto tempo uma entrada de roteamento pode ficar na tabela de roteamento sem ser atualizada. Isso também é chamado de cronômetro de expiração. Por padrão, o valor é 180 segundos. Depois que o temporizador expirar, a contagem de saltos da entrada de roteamento será definida como 16, marcando o destino como inacessível.
Flush Timer
O cronômetro de descarga controla o tempo entre a rota ser invalidada ou marcada como inacessível e a remoção da entrada da tabela de roteamento. Por padrão, o valor é 240 segundos. Isso é 60 segundos a mais do que o cronômetro inválido. Portanto, por 60 segundos, o roteador anunciará essa rota inalcançável para todos os seus vizinhos. Este temporizador deve ser definido com um valor mais alto do que o temporizador inválido.
Temporizador de Holddown
O temporizador de hold-down é iniciado por entrada de rota, quando a contagem de saltos muda de um valor inferior para um valor superior. Isso permite que a rota se estabilize. Durante esse tempo, nenhuma atualização pode ser feita para essa entrada de roteamento. Isso não faz parte do RFC 1058. Esta é a implementação da Cisco . O valor padrão deste temporizador é 180 segundos.

Limitações

  • A contagem de saltos não pode exceder 15, ou as rotas serão descartadas.
  • Máscaras de sub-rede de comprimento variável não são suportadas pelo RIP versão 1 (que é obsoleto).
  • O RIP tem convergência lenta e problemas de contagem até o infinito .

Implementações

  • Cisco IOS , software usado em roteadores Cisco (suporta versão 1, versão 2 e RIPng)
  • Software Cisco NX-OS usado em switches de data center Cisco Nexus (suporta apenas RIPv2)
  • Software Junos usado em roteadores, switches e firewalls Juniper (suporta RIPv1 e RIPv2)
  • Roteamento e acesso remoto, um recurso do Windows Server , contém suporte RIP
  • Quagga , um pacote de roteamento de software de código aberto gratuito baseado no GNU Zebra
  • BIRD , um pacote de roteamento de software de código aberto gratuito
  • Zeroshell , um pacote de roteamento de software livre e gratuito
  • Uma implementação RIP introduzida pela primeira vez no 4.2BSD , roteada, sobrevive em vários de seus descendentes, incluindo FreeBSD e NetBSD .
  • O OpenBSD introduziu uma nova implementação, ripd, na versão 4.1 e retirou o roteamento na versão 4.4.
  • Os roteadores Netgear geralmente oferecem uma escolha de duas implementações de RIPv2; eles são rotulados como RIP_2M e RIP_2B. RIP_2M é a implementação RIPv2 padrão usando multicast - que requer que todos os roteadores na rede suportem RIPv2 e multicast, enquanto RIP_2B envia pacotes RIPv2 usando difusão de sub-rede - tornando-o mais compatível com roteadores que não suportam multicast, incluindo roteadores RIPv1.
  • Os roteadores HG633 ADSL / VDSL da Huawei suportam roteamento passivo e ativo com RIP v1 e v2 no lado LAN e WAN.

Protocolos semelhantes

O Interior Gateway Routing Protocol (IGRP) proprietário da Cisco era um protocolo um pouco mais capaz do que o RIP. Ele pertence à mesma família básica de protocolos de roteamento de vetor de distância .

A Cisco encerrou o suporte e a distribuição do IGRP em seu software de roteador. Ele foi substituído pelo Enhanced Interior Gateway Routing Protocol (EIGRP), que tem um design completamente novo. Embora o EIGRP ainda use um modelo de vetor de distância, ele se relaciona ao IGRP apenas no uso das mesmas métricas de roteamento. O IGRP oferece suporte a várias métricas para cada rota, incluindo largura de banda , atraso , carga , MTU e confiabilidade .

Veja também

Referências

Leitura adicional

  • Malkin, Gary Scott (2000). RIP: Um protocolo de roteamento intra-domínio . Addison-Wesley Longman. ISBN  0-201-43320-6 .
  • Edward A. Taft, Gateway Information Protocol (revisado) (Xerox Parc, Palo Alto, maio de 1979)
  • Xerox System Integration Standard - Internet Transport Protocols (Xerox, Stamford, 1981)

links externos