You are on page 1of 6

Protocolo de Roteamento Dinâmico - RIP (Routing Internet Protocol)

Introdução:

Para redes maiores, uma abordagem possível são os chamados protocolos de


Roteamento Dinâmico. Estes protocolos, uma vez instalados e configurados nos
roteadores, permitem que os roteadores troquem informações entre si, periodicamente e
que montem as tabelas de roteamento, dinamicamente, com base nestas informações.
Esta abordagem é bem mais indicada para grandes redes, pois os próprios protocolos de
roteamento dinâmicos, se encarregam de manter as tabelas de roteamento sempre
atualizadas, alterando rotas quando necessário e excluindo rotas que apresentam
problemas, tais como rotas onde o link de comunicação está fora do ar.

Como funciona o protocolo RIP:

O protocolo RIP é baseado em um algoritmo conhecido como distance-vector (distância


vetorial). Este algoritmo é baseado na distância entre dois roteadores, sendo que esta
“distância” é medida em termos do número de roteadores existentes no caminho entre
os dois roteadores – também conhecido como hopes.

Introdução ao RIP:

O protocolo RIP é baseado em uma troca de mensagens entre os roteadores que utilizam
o protocolo RIP. Cada mensagem do RIP contém uma série de informações sobre as
rotas que o roteador conhece (com base na sua tabela de roteamento atual) e a distância
do roteador para cada uma das rotas. O roteador que recebe as mensagens, com base na
sua distância para o roteador que enviou a mensagem, calcula a distância para as demais
redes e grava estas informações em sua tabela de roteamento. É importante salientar que
distância significa hope, ou melhor, o número de roteadores existentes em um
determinado caminho, em uma determinada rota.

As informações entre roteadores são trocadas quando o roteador é inicializado, quando


o roteador recebe atualizações em sua tabela de roteamento e também em intervalos
regulares. Aqui a primeira desvantagem do RIP. Mesmo que não exista nenhuma
alteração nas rotas da rede, os roteadores baseados em RIP, continuarão a trocar
mensagens de atualização em intervalos regulares, por padrão a cada 30 segundos.

Dentre outros, este é um dos motivos pelos quais o RIP não é indicado para redes
maiores, pois nestas situações o volume de tráfego gerado pelo RIP, poderia consumir
boa parte da banda disponível. Além disso, cada mensagem do protocolo RIP comporta,
no máximo, informações sobre 25 rotas diferentes, o que para grandes redes, faria com
que fosse necessária a troca de várias mensagens, entre dois roteadores, para atualizar
suas respectivas tabelas, com um grande número de rotas. Ao receber atualizações, o
roteador atualiza a sua tabela de roteamento e envia estas atualizações para todos os
roteadores diretamente conectados, ou seja, a um hope de distância.
A maior vantagem do RIP é que ele é extremamente simples para configurar e
implementar em uma rede. Sua maior desvantagem é a incapacidade de ser ampliado
para interconexões de redes de tamanho grande a muito grande.

A contagem máxima de hopes usada pelos roteadores RIP é 15. As redes que estejam a
16 hopes ou mais de distância, serão consideradas inacessíveis. À medida que as redes
crescem em tamanho, os anúncios periódicos de cada roteador RIP podem causar
tráfego excessivo nos links de WAN.

Outra desvantagem do RIP é o seu longo tempo de convergência. Quando a topologia


de interconexão da rede é alterada (por queda em um link ou por falha em um roteador,
dentre outros motivos), podem ser necessários vários minutos para que os roteadores
RIP se reconfigurem, para refletir a nova topologia de interconexão da rede. Embora a
rede seja capaz de fazer a sua própria reconfiguração, podem ser formados loops de
roteamento que resultem em dados perdidos ou sem condições de entrega.

Inicialmente, a tabela de roteamento de cada roteador inclui apenas as redes que estão
fisicamente conectadas. Um roteador RIP envia periodicamente anúncios contendo suas
entradas de tabela de roteamento para informar aos outros roteadores RIP locais, quais
as redes que ele pode acessar.

Conforme dito anteriormente, uma das principais desvantagens do algoritmo distance-


vector do RIP é o alto tempo de convergência (Fig. 1 e 2). Ou seja, quando um link ou
um roteador fica indisponível, demora alguns minutos até que as atualizações de rotas
sejam passadas para todos os roteadores. Durante este período pode acontecer de
roteadores enviarem pacotes para rotas que não estejam disponíveis. Este é um dos
principais motivos pelos quais o RIP não pode ser utilizado em redes de grande porte.

Figura 1: Ilustração Convergência Lenta.


Figura 2: Continuação da Ilustração Convergência Lenta.

O problema do Count-to-infinity:

Outro problema do protocolo RIP é a situação descrita como count-to-infinity (contar


até o infinito). Para entender este problema vamos imaginar dois roteadores conectados
através de um link de WAN. Vamos chamá-los de roteador A e B, conectando as redes
1, 2 e 3, conforme a Figura a seguir:

Figura 3: O problema count-to-infinity.

Agora imagine que o link entre o roteador A e a Rede 1 apresente problemas. Com isso
o roteador A sabe que não é possível alcançar a Rede 1 (devido a falha no link). Porém
o Roteador B continua anunciando para o restante da rede, que ele encontra-se a dois
hopes da rede A (isso porque o Roteador B ainda não teve sua tabela de roteamento
atualizada com a informação de que o link para a Rede 1 está indisponível). O Roteador
B manda este anúncio, inclusive para o roteador A.

O roteador A recebe esta atualização e considera que ele (o Roteador A) está agora a 3
hopes da Rede 1 (um hope de distância até o Roteador B + dois hopes de distância do
roteador B até a rede 1. Ele não sabe que o caminho do Roteador B para a rede 1, passa
por ele mesmo, ou seja, pelo Roteador A). Com isso volta a informação para o Roteador
B dizendo que o Roteador A está a 3 hopes de distância. O Roteador B atualiza a sua
tabela, considerando agora que ele está a 4 hopes da Rede 1 (um hope até o roteador A
+ 3 hopes que o roteador A está da rede 1, segundo o último anúncio). E este processo
continua até que o limite de 16 hopes seja atingido. Observe que mesmo com um link
com problema, o protocolo RIP não convergiu e continuou anunciando rotas
incorretamente, até atingir uma contagem de 16 hopes (que em termos do RIP significa
o infinito, inalcançável).

O problema do count-to-infinity é um dos mais graves com o uso do RIP Versão 1,


conhecido apenas como RIP v1. O Windows 200 Server e o Windows Server 2003 dão
suporte também ao RIP v2, o qual apresenta algumas modificações no protocolo, as
quais evitam, ou pelo menos minimizam problemas como o loops de roteamento e
count-to-infinity:

• Split horizon (horizonte dividido): Com esta técnica o roteador registra a


interface através da qual recebeu informações sobre uma rota e não difunde
informações sobre esta rota, através desta mesma interface. No nosso exemplo, o
Roteador B receberia informações sobre a rota para a rede 1, a partir do
Roteador B, logo o Roteador A não iria enviar informações sobre Rotas para a
rede 1, de volta para o Roteador B. Com isso já seria evitado o problema do
count-to-infinity. Em outras palavras, esta característica pode ser resumida
assim: Eu aprendi sobre uma rota para a rede X através de você, logo você não
pode aprender sobre uma rota para a rede X, através de minhas informações.
• Poison reverse (Inversão danificada): Nesta técnica, quando um roteador
aprende o caminho para uma determinada rede, ele anuncia o seu caminho, de
volta para esta rede, com um hope de 16. No exemplo da Figura anterior, o
Roteador B, recebe a informação do Roteador A, que a rede 1 está a 1 hope de
distância. O Roteador B anuncia para o roteador A, que a rede 1 está a 16 hope
de distância. Com isso, jamais o Roteador A vai tentar achar um caminha para a
rede 1, através do Roteador B, o que faz sentido, já que o Roteador A está
diretamente conectado à rede 1.
• Triggered updates (Atualizações instantâneas): Com esta técnica os
roteadores podem anunciar mudanças na métrica de uma rota imediatamente,
sem esperar o próximo período de anuncio. Esta técnica é utilizada em
combinação com a técnica de inversão danificada, para tentar diminuir o tempo
de convergência da rede, em situações onde houve indisponibilidade de um
roteador ou de um link. Esta técnica diminui o tempo necessário para
convergência da rede, porém gera mais tráfego na rede.

Comparativo entre RIP v1 e RIP v2:

O protocolo RIP v1 apresenta diversos problemas, sendo que os principais são os


destacados a seguir:

• O protocolo RIP v1 usa broadcast para fazer anúncios na rede:

Com isto, todos os hosts da rede receberão os pacotes RIP e não somente os
hosts habilitados ao RIP. Uma contrapartida do uso do Broadcast pelo protocolo
RIP v1, é que isso torna possível o uso dos chamados hosts de RIP Silencioso
(Silent RIP). Um computador configurado para ser um Silent RIP, processa os
anúncios do protocolo RIP (ou seja, reconhece os pacotes enviados pelo RIP e é
capaz de processá-los), mas não anuncia suas próprias rotas. Esta funcionalidade
pode ser habilitada em um computador que não esteja configurado como
roteador, para produzir uma tabela de roteamento detalhada da rede, a partir das
informações obtidas pelo processamento dos pacotes do RIP. Com estas
informações detalhadas, o computador configurado como Salient RIP pode
tomar melhores decisões de roteamento, para os programas e serviços nele
instalados.

• A máscara de sub-rede não é anunciada juntamente com as rotas:

Isso porque o protocolo RIP v1 foi projetado em 1988, para trabalhar com redes
baseadas nas classes padrão A, B e C, ou seja, pelo número IP da rota, deduzia-
as a respectiva classe. Com o uso da Internet e o uso de um número variável de
bits para a máscara de sub-rede (número diferente do número de bits padrão para
cada classe, conforme descrito na Parte 7), esta fato tornou-se um problema
sério do protocolo RIP v1. Com isso, o protocolo RIP v1, utiliza a seguinte
lógica, para inferir qual a máscara de sub-rede associada com determinada rota:

1. Se a identificação de rede coincide com uma das classes padrão A, B ou C, é


assumida a máscara de sub-rede padrão da respectiva classe.

2. Se a identificação de rede não coincide com uma das classes padrão, duas situações
podem acontecer:

2.1 Se a identificação de rede coincide com a identificação de rede da interface na qual


o anúncio foi recebido, a máscara de sub-rede da interface na qual o anúncio foi
recebido, será assumida.

2.2 Se a identificação de rede não coincide com a identificação de rede da interface na


qual o anúncio foi recebido, o destino será considerado um host (e não uma rede) e a
máscara de sub-rede 255.255.255.255, será assumida.

Esta abordagem gera problemas graves. Por exemplo, quando for utilizado o recurso de
supernetting, para juntar várias redes classe C em uma única rede lógica, o RIP v1 irá
interpretar como se fossem realmente várias redes lógicas e tentará montar uma tabela
de roteamento, como se as redes estivessem separadas fisicamente e ligadas por links de
WAN.

• Sem proteção contra roteadores não autorizados: O protocolo RIP v1 não


apresenta nenhum mecanismo de autenticação e proteção, para evitar que
roteadores não autorizados possam ser inseridos na rede e passar a anunciar
várias rotas falsas. Ou seja, qualquer usuário poderá instalar um roteador com
RIP v1 e adicionar várias rotas falsas, que o RIP v1 se encarregará de repassar
estas rotas para os demais roteadores da rede.

O protocolo RIP v2, oferece diversas melhorias em relação ao RIP v1, entre elas:

• Os anúncios do protocolo RIP v2 são baseados em tráfego multicast e não


mais broadcast como no caso do protocolo RIP v1: O protocolo RIP v2 utiliza
o endereço de multicast 224.0.0.9. Com isso os roteadores habilitados ao RIP
atuam como se fossem (na verdade é) um grupo multicast, registrado para
“escutar” os anúncios do protocolo RIP v2. Outros hosts da rede, não habilitados
ao RIP v2, não serão “importunados” pelos pacotes do RIP v2. Por questões de
compatibilidade (em casos onde parte da rede ainda usa o RIP v1), é possível
utilizar broadcast com roteadores baseados em RIP v2. Mas esta solução
somente deve ser adotada durante um período de migração, assim que possível,
todos os roteadores devem ser migrados para o RIP v2 e o anúncio via broadcast
deve ser desabilitado.

• Informações sobre a máscara de sub-rede são enviadas nos anúncios do


protocolo RIP v2: Com isso o RIP v2 pode ser utilizado, sem problemas, em
redes que utilizam subnetting, supernetting e assim por diante, uma vez que cada
rede fica perfeitamente definida pelo número da rede e pela respectiva máscara
de sub-rede.

• Segurança, autenticação e proteção contra a utilização de roteadores não


autorizados: Com o RIP v2 é possível implementar um mecanismo de
autenticação, de tal maneira que os roteadores somente aceitem os anúncios de
roteadores autenticados, isto é, identificados. A autenticação pode ser
configurada através da definição de uma senha ou de mecanismos mais
sofisticados como o MD5 (Message Digest 5). Por exemplo, com a autenticação
por senha, quando um roteador envia um anúncio, ele envia juntamente a senha
de autenticação. Outros roteadores da rede, que recebem o anúncio, verificam se
a senha está OK e somente depois da verificação, alimentam suas tabelas de
roteamento com as informações recebidas.

Conclusão:

Todo o processo de roteamento é baseado em Tabelas de Roteamento, existentes


em cada roteador da rede. As tabelas de roteamento podem ser criadas
manualmente, onde o administrador de cada roteador executa comandos para
criar cada uma das rotas necessárias. Essa abordagem só é possível para redes
extremamente pequenas, com um número de rotas pequeno e quando as rotas
não mudam muito freqüentemente. Para redes maiores, a única abordagem
possível é o uso dos chamados protocolos de Roteamento dinâmico como o RIP.

Bibliografia:

http://www.rederio.br/downloads/pdf/nt01100.pdf

http://penta.ufrgs.br/Jorge/rip/rip.html

http://www.juliobattisti.com.br/artigos/windows/tcpip_p14.asp

http://xlima25.sites.uol.com.br/riptrabalho.html

http://www.inf.pucrs.br/~benso/redes601/2004_2/Roteamento.ppt