Académique Documents
Professionnel Documents
Culture Documents
Monografia apresentada na disciplina Laboratrio de Redes II no Mestrado de Redes de Computadores da UNIFACS. Alunos : Manoel Carvalho Marques Neto manoel.netom@unifacs.br Romildo Martins da Silva Bezerra romildo@ufba.br
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
Bezerra, Romildo Martins da Silva e Neto, Manoel Marques 2002 Protocolos de Roteamento. Salvador : UNIFACS, 2002 22 p. Monografia da disciplina Laboratrio de Redes II do curso de Mestrado de Redes . UNIFACS 1. Redes de Computadores 1. Ttulo
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
Resumo
Esta monografia apresenta os principais protocolos de roteamento interno, RIP (Routing Information Protocol) e OSPF (Open Shortest Path First), enfatizando de forma didtica o funcionamento, caractersticas, vantagens e problemas.
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
1. Introduo
O roteamento esttico demonstrou-se ineficiente medida que as redes cresciam e se tornavam mais complexas, onerando o processo de administrao dos mantenedores da rede.
Um segunda alternativa foi a utilizao de uma arquitetura de roteadores que possuam a informao completa de todas as redes, permutando informaes de roteamento periodicamente e dinamicamente. Nesta soluo no foi utilizada a opo default para evitar loops de caminhos. Esta soluo tambm se mostrava ineficiente com o crescimento das redes, pois possua problemas de administrao e desempenho.
Com o objetivo de garantir a comunicao entre todas as redes com um alto grau de confiabilidade, necessrio um protocolo de roteamento capaz de conter informaes parciais que permitam o trfego de pacotes entre todos os hosts com o mnimo de custo.
Como dito em [1] O roteamento que utiliza informaes parciais permite autonomia na efetivao de mudanas de roteamento local, mas introduz a possibilidade de inconsistncias que podem tornar alguns destinos inacessveis a partir de algumas origens. Tais erros podem ocorrer no processo de transmisso d dados dos roteadores ou devido a problemas nos algoritmos de roteamento.
Neste trabalho estudaremos dois algoritmos de roteamento, RIP (Routing Information Protocol) e OSPF (Open Shortest Path First), que utilizam os algoritmos de roteamento de distncia vetorial e roteamento hierrquico, respectivamente.
Ambos os protocolos descritos nesta monografia esto trabalhando no escopo do Interior Gateway Protocol IGP, por atuarem dentro de um sistema autnomo.
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
O RIP foi desenvolvido na Universidade da Califrnia (Berkeley) com o objetivo de oferecer informaes consistentes sobre o roteamento e acessibilidade de suas redes locais. Baseado em pesquisas anteriores da Xerox Corporation, O RIP implementa um protocolo proprietrio da Xerox com pequenas melhorias
implementadas.
A popularizao do RIP no decorreu devido algum mrito tcnico, mas principalmente devido : Distribuio gratuita do software routed1 integrado ao popular UNIX 4BSD, permitindo uma rpida difuso entre todas as universidades e centros de pesquisa da poca Simplicidade de implementao, que por outro lado gera alguns limites tcnicos
O RIP divide a rede em mquinas ativas, roteadores que anunciam suas rotas as demais, e mquinas passivas, que no anunciam e atualizam suas rotas baseadas em anncios.
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
O funcionamento bastante simples, um roteador atuando de modo ativo difunde uma mensagem extrada de sua base de dados composta de pares, onde cada par contm o endereo IP e um nmero inteiro que indica a distncia do roteador at aquela rede. O anncio utiliza o conceito broadcast, desta forma um roteador envia sua tabela para todos os seus vizinhos em intervalos predefinidos de tempo (geralmente 30 segundos). Estas mensagens fazem com que os roteadores vizinhos atualizem suas tabelas e que por sua vez sero enviadas aos seus respectivos vizinhos.
Para indicar a distncia at a rede de destino, o RIP utiliza a mtrica de contagem de passos da rota (hop count metric), onde o nmero um indica os seus roteadores vizinhos, dois indica o vizinho dos vizinhos e assim sucessivamente. fato que esta tcnica no indica o melhor caminho entre o roteador e as redes destino. Fatores como largura de banda, estado de utilizao dos links, entre outros podem garantir uma maior eficincia.
eth1 eth0
eth1 eth2
Roteador C
Roteador E
Para maior entendimento, simularemos o RIP usando o exemplo acima com cinco roteadores interconectados por seis links. Ao iniciar o sistema a tabela de cada roteador s contm a sua prpria rota. Ex.: De A para A Enlace Local Mtrica 0
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
Estipulando-se a mtrica 1 para todos os ns, isto , admite-se a distncia de cada roteador para seus respectivos vizinhos como 1. E ainda supondo que A envie primeiro sua tabela de atualizao, B e D atualizaro as suas tabelas conforme so mostradas abaixo: De B para B A Enlace Local A para B Mtrica 0 1
De D para D A
Mtrica 0 1
Agora que B e D atualizaram suas tabelas, B transmite sua tabela para seus vizinhos A, C e E. D faz o mesmo para A e E. A, ao receber a mensagem de B e D, atualiza sua tabela.
Quando um n recebe uma tabela de atualizao de outro n, ele verifica cada rota de modo a privilegiar as rotas de menor mtrica com mesmo destino. Desta forma as mensagens vo se atualizando at as tabelas convergirem.
O tempo de convergncia muito importante para que a rede no fique por muito tempo desatualizada. Para isso existem algumas implementaes a respeito de rotas muito grandes. Uma delas o mtodo Split Horizon With Poisonous Reverse.
Para entendermos este mtodo usaremos o exemplo a seguir, utilizando a sub-rede do exemplo anterior: se A quiser enviar um pacote para C, ento A verificar em sua tabela que a melhor rota aquela que passa por B. Mas se houver algum problema com o enlace 2, aquele entre B e C, ento B ao encaminhar o pacote oriundo de A ir procurar uma outra rota. Neste momento existe a possibilidade de B escolher como a melhor rota, aquela que passa por A, utilizando como sada o enlace 1, entre A e B. Se B optar por esta rota estar formando um loop. Para que isso no ocorra a mensagem de A para B deve informar que C no alcanvel por A, isto , A coloca em
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
sua rota at C com uma mtrica infinita (16), desta forma impede que B devolva para A este pacote.
Para isso as mensagens enviadas por cada roteador devem ser diferenciadas para cada um de seus vizinhos. Outro mtodo o Split Horizon onde existe a omisso do envio de rotas que passam pelo n que receber a mensagem.
Existe ainda um mtodo chamado de Triggered Update que est relacionado com o tempo de envio da tabela de atualizao. Por esse mtodo, o roteador envia sua mensagem de atualizao sempre que notar alterao na sua tabela, ao invs de esperar pelo tempo de envio. Isto diminui a quantidade de mensagens erradas (desatualizadas), diminuindo a quantidade de loops existentes. Por outro lado, carrega muito a rede. Para evitar isto, um contador inicializado para contar at um nmero aleatrio entre 1 e 5. Se ocorrer alguma mudana dentro neste intervalo, ela deve esperar at o fim do contador para ser enviada.
O limite mximo de hops, com quinze sendo maior inteiro aceito o RIP no indicado para infra-estruturas distribudas complexas;
A mtrica de contagem de hops nem sempre (em alguns casos quase nunca) refletem realmente o melhor caminho a seguir entre os links;
O alto consumo de largura de banda, decorrente do broadcast ocorrido a cada trinta segundos para cada roteador;
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
10
Tempo de convergncia lento, gerando inconsistncia na tabela de roteamento. Tcnicas para a reduo deste problema so vistas a seguir.
O primeira tcnica denominada de Split Horizon, onde um roteador registra a interface atravs do qual recebeu determinada rota e no difunde as informaes que tem sobre ela atravs da mesma interface. Este mtodo apresenta problemas com alguns tipos de topologias.
Uma segunda sada seria quando uma conexo desaparecesse o roteador que anuncia a conexo retm a entrada por vrios perodos de atualizao e inclui um custo infinito em sua difuso, chamada de Poison Reverse. Recomenda-se o uso destas duas primeiras tcnicas para maior eficincia.
Existe ainda um mtodo chamado de Triggered Update que est relacionado com o tempo de envio da tabela de atualizao. Por esse mtodo, o roteador envia sua mensagem de atualizao sempre que notar alterao na sua tabela, ao invs de esperar pelo tempo de envio. Isto diminui a quantidade de mensagens erradas (desatualizadas), diminuindo a quantidade de loops existentes. Por outro lado, carrega muito a rede. Para evitar isto, um contador inicializado para contar at um nmero aleatrio entre 1 e 5. Se ocorrer alguma mudana dentro neste intervalo, ela deve esperar at o fim do contador para ser enviada.
Infelizmente a utilizao destas tcnicas criam novos problemas geralmente relacionados com o processo de difuso em broadcast.
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
11
O RIP utiliza o protocolo UDP na porta 520 no processo de transmisso e recepo de suas mensagens, o formato da mensagem tambm idntico e pode ser visto a seguir :
0 COMANDO (1-5) FAMLIA DA REDE 1 8 VERSO 16 DEVE SER ZERO DEVE SER ZERO 32
ENDEREO IP DA REDE 1 DEVE SER ZERO DEVE SER ZERO DISTNCIA PARA A REDE 1 FAMLIA DA REDE 2 DEVE SER ZERO
ENDEREO IP DA REDE 2 DEVE SER ZERO DEVE SER ZERO DISTNCIA PARA A REDE 2 . . .
Nos campos onde aparece DEVE SER ZERO, so campos no utilizados na primeira verso do RIP. Estes campos so utilizados nas verses RIPv2 e RIPng (para redes com IPv6).
O campo comando usado para especificar o propsito do datagrama de acordo com a tabela a seguir :
Comando 1 2 3 4 5 Descrio Solicitao de informaes de roteamento parcial ou complexo Resposta contendo pares de distncia de rede a partir da tabela de roteamento Ativar o modo de rastreio (hoje obsoleto) Desativar o modo de rastreio (hoje obsoleto) Reservado para uso interno
O formato do pacote permite ao RIP carregar informaes de roteamento de vrios protocolos diferentes. Portanto, cada rota da tabela contm um identificador de
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
12
endereo da famlia para indicar que tipo de endereo est especificado. Na prtica, o RIP no tem sido usado para suportar outros protocolos que no o IP.
Quando recebendo uma resposta, o roteador examinar as rotas uma por uma, conferindo se o endereo um endereo de classe vlida (A, B ou C), verificar se o endereo de rede no 127 (loop-back) ou 0 (endereo broadcast) e se a mtrica no maior que infinito. Conferido todos os pontos acima ser feita a anlise da tabela com a mensagem recebida para verificar a necessidade de atualizao (Pooling Algorithm). O tamanho mximo de uma mensagem 512 bytes, o que permite at 25 rotas por mensagem. Se houver mais de 25 rotas para reportar, o RIP enviar um segundo pacote.
O tempo de atualizao de rotas de 30 segundos e se uma rota no for atualizada dentro de 180 segundos, sua distncia colocada em infinito e a entrada ser mais tarde removida. Maiores detalhes podem ser vistos na RFC 1058. 2.3.1 RIPv2 A segunda verso do RIP incluem melhorias de suporte a mscaras de comprimentos variveis e acrscimo de rota, permitindo uma melhor poltica de alocao de endereos e mensagens de roteamento menores. Alm disso, utiliza multicasting2 para diminuir significativamente o impacto das freqentes atualizaes de sistemas e fornece uma sistema de autenticao
(pequenas unidades de informao em rede) para um determinado grupo de mquinas simultaneamente, de forma eficiente. Pode ser comparado com as tecnologias unicast (de mquina a mquina) e broadcast (de uma mquina para todas as mquinas). A informao enviada de forma semelhante ao broadcast, mas somente os computadores que realmente desejam receber a informao, iro receb-la. Para isso eles se "inscrevem" em grupos, e a informao somente ser passada de roteador (mquinas que conectam as vrias redes formando a internet global) a roteador se algum do outro lado estiver disposto a receber a informao
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
13
rudimentar, inserindo um nvel de segurana no processo de roteamento. Apesar de todas estas implementaes, a segunda verso RIP ainda sofre dos problemas de arquitetura assim como seu antecessor. Maiores detalhes podem ser vistos na RFC 1722.
2.3.2 RIPng
Corresponde a verso do RIP para as redes baseadas em Ipv6. Lanado em 1997, o RIPng manteve a simplicidade do algoritmo RIP deixando as modificaes apenas para o formato da mensagem que pode ser vista a seguir.
0 COMANDO 8 VERSO 16 DEVE SER ZERO 32
A distino entre rede, sub-rede e roteadores no precisa ser feita, pois o endereo IPv6 no ambguo, o que elimina a necessidade de mscara de sub-rede. A rota default usada quando no conveniente listar todas as redes possveis nas atualizaes do RIPng e quando um ou mais roteadores esto preparados para lidar com o trfego para redes no listadas.
O RIPng no tem processo de autenticao prprio, como o RIP-2, ele confia na autenticao do IPv6. Maiores detalhes podem ser vistos na RFC 2080.
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
14
Baseado no protocolo de roteamento IS-IS (Intermediate System to Intermediate System), o OSPF otimizado para redes IP em particular.
Com o uso do OSPF, os roteadores mantm uma banco de dados independente da rea de roteamento administrativa incluindo informaes sobre as redes disponveis, os equipamentos das redes e o custo por interface de cada uma das conexes. Nota-se que este modelo oferece informaes de topologia e infra-estrutura da rede.
Caso exista uma mudana do estado da rede, cada um dos roteadores dentro da rea descobre e incorpora aos seus banco de dados locais, executa clculos de acordo com o custo dos caminhos de rede e reconstri a tabela de roteamento. O OSPF aplica um algoritmo de vetor de custo a um banco de dados de objetos de rede e utiliza as informaes na determinao de rotas.
Oferece balanceamento de carga, se o gerenciador indicar mais de uma rota com o mesmo custo o OSPF faz balanceamento de carga;
Permite particionamento das redes onde cada rea tem seu recursos exclusivo, ou seja, o conhecimento da topologia de uma regio fica apenas disponvel para ela;
Define autenticao para toda a comunicao entre roteadores com grande variedade de esquemas de autenticao;
Entretanto facilidades tem um custo associado que corresponde a uma exigncia maior do hardware dos roteadores, encarecendo o valor dos equipamentos.
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
15
Opes(1 byte)
Verificao LS (2 bytes)
Comprimento (2 bytes)
Idade do LS se refere ao tempo em segundos desde que a rota foi primeiramente anunciada; Opes define as caractersticas do roteador que a enviou, entre elas, a capacidade de roteamento externo. Dos 8 bits que possui, somente 2 esto definidos no OSPF-2: o bit "E" (External links) e "T" (Type of Service). O primeiro identifica as rotas externas e o segundo indica se o roteador suporta ou no este servio;
Tipo de LS caracteriza o tipo de conexo; ID do Estado da Conexo varia dependendo do tipo de LS mas, em geral, representado pelo endereo IP e o roteador de anncio, representado pelo endereo IP do roteador que enviou a mensagem;
Roteador de Anncio especifica o roteador que enviou a rota na tabela. Para entradas de conexo de roteador, este campo idntico ao ID do Estado da Conexo;
Nmero de Sequncia de LS o nmero usado para detectar rotas velhas e duplicadas. Quanto maior o nmero, mais recente a rota. Ele usado no algoritmo de flooding;
Verificao LS destinado ao algortmo de verificao (checksum) e, portanto, usado para detectar dados corrompidos na rota;
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
16
4 . OSPF x RIP
A convergncia do protocolo OSPF muito mais rpida pois enquanto o RIP converge proporcionalmente ao nmero de ns da rede, o outro converge em uma proporo logartmica ao nmero de enlaces.
Nem sempre a melhor rota entre dois roteadores deve ser a nica utilizada, pois isso pode implicar em sua sobrecarga. Anlises matemticas provaram que a diviso do trfego em duas rotas mais eficiente. Por isso o OSPF utiliza esse mtodo de diviso de caminhos. Essa diviso realizada por um algoritmo muito complexo, pois, como dificilmente uma fonte e um destino tem duas rotas possveis exatamente iguais, feita uma anlise se as rotas so suficientemente iguais. Alm disso, deve-se decidir a frao do trfego que deve ser enviado em cada uma delas.
O protocolo OSPF tm diversas vantagens sobre o protocolo RIP, entretanto o RIP possui uma fcil implementao, alm de utilizar menos processamento para os roteadores, sendo implementado com bons resultados para redes de pequeno porte. Para redes maiores o OSPF leva a vantagem no tempo de convergncia e na escolha das rotas, sendo mais vantajoso neste caso. Ainda existe outra problema para a implementao do protocolo OSPF; alguns roteadores, principalmente os de menor poder de processamento e os mais antigos, no esto aptos a utilizar o protocolo OSPF, enquanto o protocolo RIP implementado pela grande maioria dos roteadores.
Protocolos de Roteamento Manoel Carvalho Marques Neto e Romildo Martins da Silva Bezerra
17
5. Referncias Bibliogrficas
1. Huitema, Christian; Routing in the Internet; Prentice-Hall, New Jersey 1995. 2. Tanenbaum, Andrew S.; Computer Networks; 3 Edio; Prentice-Hall, New Jersey 1996. 3. RFC 1058; C. Hedrick Rutgers University; Routing Information Protocol; June 1988. 4. RFC 1388; G. Malkin Xylogics, Inc.; RIP Version 2 Carrying Additional Information; January 1993. 5. RFC 1246; J. Moy, EditorRequest for Comments: 1246; Experience with OSPF Protocol; July 1991. 6. RFC 2080; Malking, G.; RIPng for IPv6; January 1997.