Redes de Computadores I Conceitos Básicos (11 a. Semana de Aula) Prof. Luís Rodrigo lrodrigo@lncc.br http://lrodrigo.lncc.br 2011.02 v1 2011.11.03 (baseado no material de Jim Kurose e outros)
Algoritmos e Protocolos de Roteamento
Tópicos Conceito de Algoritmos Protocolos de roteamento estático e dinâmico Comparar e diferenciar os protocolos Interpretar como um pacote é transmitido, entre a origem e o destino
Conceitos Básicos
Conceitos Básicos A transmissão de dados através de redes interconectadas não é um processo simples São necessários Algoritmos e Protocolos que permitam o Roteamento que garantam a transmissão e entrega das informações
Conceitos Básicos Os Algoritmos são um conjunto de regras e operações bem definidas e estruturadas Eles são utilizados para descrever uma sequencia lógica para a solução de um problema O Roteamento é o processo de encaminhar os pacotes através de roteadores Ele deve procurar pelo melhor caminho entre a origem e o destino Ele designa o processo de reencaminhamento de pacotes, que se baseia no endereço IP e máscara de rede dos mesmos.
Conceitos Básicos Há dois tipos básicos de roteamento Estático: realizado através da configuração manual de uma rota permanecerá inalterada, a menos que modificada manualmente Dinâmico: Há a geração automática das rotas As rotas são definidas segundo as condições de operação das redes.
Histórico
Histórico Originalmente cada participante da rede administrava suas tabelas de roteamento e suas atualizações eram feitas manualmente. Dessa forma, a topologia da Internet em seus primórdios poderia ser descrita como um conjunto de roteadores básicos, conhecidos também por core routers ou roteadores de borda. Estes roteadores eram controlados pelo INOC (Internet Network Operations Center).
Histórico Existia também um conjunto de roteadores, conhecidos como secundários, que eram administrados por grupos isolados e eram conectados aos core routers, fornecendo acesso às redes locais de cada instituição. Em seguida, surgiu a NFSNET que inicialmente estabeleceu um único ponto de conexão com a ARPANET, posteriormente aumentando o número dessas conexões. Essa situação aumentou a complexidade do roteamento global, impossibilitando a forma manual de atualização das tabelas de rotas.
Histórico Logo, o esquema de divisão por hierarquias foi sendo substituído pelo modelo distribuído, que é o modelo utilizado até os dias de hoje. Assim sendo, o roteamento não fica mais centralizado em alguns roteadores, como nos roteadores básicos da NFSNET, mas cada roteador é responsável pelas suas redes e pela comunicação com os demais roteadores da Internet.
Histórico Para acompanhar tais mudanças, foi criado o conceito de sistema autônomo (Autonomous System, ou simplesmente AS). Que faz com que as redes e roteadores que estão sob uma mesma política sejam administradas pela própria entidade que os possui. Assim, o que ocorre internamente a um AS não será conhecido por outros sistemas autônomos, diminuindo a complexidade da Internet global.
Histórico Para a comunicação com o mundo externo, ou seja, com os demais sistemas autônomos, um dos roteadores do AS deve trocar informações com os demais ASs. Para cada AS é atribuído um AS number, que é uma identificação única. A Internet deixou de ser vista como um grande grupo de redes interligadas, agora passa a ser conjunto de Sistemas Autônomos que trocam anúncios de rotas entre si. Uma analogia a sistemas autônomos seria imaginar que a Internet hoje é formada por um conjunto de "nuvens", interligados entre si, garantindo que sempre exista algum caminho para qualquer ponto da Internet.
Algoritmos de Roteamento
Algoritmos de Roteamento Os protocolos dinâmicos podem implementar diversos algoritmos de roteamento, dentre eles destacam-se: Vetor distância Estado de enlace
Algoritmos de Roteamento Vetor distância: Também definido como algoritmo de Bellman-Ford Baseia-se na idéia que cada roteador propaga periodicamente uma tabela com todas as redes conhecidas e a distância para alcançá-las. Geralmente, a distância é calculada pelo número de next hops até alcançar uma rede. O termo HOP caracteriza-se pela passagem entre um roteador e outro.
Algoritmos de Roteamento Vetor distância: Cada roteador, ao receber os anúncios de todos os demais, calcula o caminho ótimo baseado no menor número de HOPs para chegar a determinada rede. Cada roteador ao receber as informações de outras redes incrementa o número de HOPs e anuncia as rotas divulgadas para os demais roteadores.
Algoritmos de Roteamento Estado de enlace: Ou algoritmo Link State Baseia-se na idéia de que cada roteador possui informações sobre as redes que estão conectadas a ele e, periodicamente, testa para determinar se cada enlace está ativo. Cada roteador divulga uma lista sobre o status de cada conexão, dizendo se estas estão ativas ou inativas. Quando um roteador recebe um conjunto de mensagens sobre o estado dos enlaces das redes próximas a ele, é aplicado o algoritmo SPF de Dijskstra.
Algoritmos de Roteamento Estado de enlace: Este algoritmo tem vantagem sobre o Vetor Distância, pois o cálculo do melhor caminho é feito localmente e não depende do cálculo de roteadores intermediários. Outra vantagem é que este algoritmo converge mais rapidamente devido a utilização de flooding para divulgação do estado de seus enlaces, ou seja, divulga de forma mais eficaz os melhores caminhos para suas redes a todos os roteadores conectados.
Protocolos de Roteamento
Protocolos de Roteamento Os protocolos de roteamento dividem-se em dois grupos, explicados a seguir: EGP (Exterior Gateway Protocol): utilizados para a comunicação inter AS usado para a comunicação entre roteadores que se encontram em diferentes sistemas autônomos. garantem que todos os sistemas autônomos pela Internet mantenham informações consistentes para garantir o funcionamento do roteamento global. Exemplo de protocolo: BGP.
Protocolos de Roteamento IGP (Interior Gateway Protocol): utilizados na comunicação intra AS usados para comunicação entre roteadores em um mesmo sistema autônomo. Hoje este grupo é representado por vários protocolos, como: RIP OSPF IGRP entre outros.
Protocolos de Roteamento
Protocolos de Roteamento O processo de configuração do roteamento interno a um AS pode ser feito de duas formas: Estática: baseada na configuração manual de rotas em geral não existe mais que um caminho para chegar a determinada rede ou roteador do AS. Na ocorrência de alguma mudança na rede ou falha, o administrador deve fazer todos os ajustes manualmente. A confiabilidade e o tempo de resposta a problemas podem não ser satisfatórios.
Protocolos de Roteamento Dinâmica: Utilização de protocolos de roteamento que automatizam os ajustes de configuração Fazem o anúncio de rotas e detecção do melhor caminho de forma automática, sem a intervenção do administrador da rede. Para a configuração externa de um AS deverá obrigatoriamente ser utilizado um protocolo tipo EGP, visto que não existe outra forma de propagação das redes pertencentes a ele.
Protocolos de Roteamento - IGP RIP: O Routing Information Protocol foi um dos primeiros protocolos IGP popularizado pela implementação da ferramenta routed implementação direta do algoritmo de vetor distância. O cálculo do melhor caminho baseia-se no número de roteadores que um pacote iria percorrer até chegar a seu destino
Protocolos de Roteamento - IGP RIP: O Routing Information Protocol Periodicamente (30seg), cada roteador RIP envia atualizações contendo todos os prefixos de sua tabela de rotas aos demais roteadores. As mensagens de atualização (update) contem: Endereço de destino da rede/host Endereço IP do gateway que está enviando a mensagem A métrica atual, que por ser única, indica o número de HOPs para a rede/host destino
Protocolos de Roteamento - IGP RIP: O Routing Information Protocol Na recepção de atualizações, os roteadores RIP analisam e comparam a informação recebida com a informações que está na tabela de rotas Caso esta tenha novos prefixos ou métricas menores para prefixos já existentes, a tabela de rotas será modificada. No caso de um prefixo não ser divulgado durante 180 segundos, o roteador enviará uma mensagem declarando que a rota não está mais disponível Aos 270 segundos, a rota é removida da tabela.
Protocolos de Roteamento - IGP RIP: Limitações Suporta 15 HOPs, compromete o uso em redes maiores; A versão 1, suportava máscara de rede, ou seja, propaga apenas rotas de redes classful A única métrica utilizada é o número de HOPs, fazendo com que nem sempre o melhor caminho seja contemplado. 1993 surgiu a versão 2 do protocolo RIP, propondo algumas melhoras no protocolo como autenticação e inclusão de informações de máscara no anúncio de rotas (suporte a VLSM e CIDR).
Protocolos de Roteamento - IGP IGRP/ EIGRP: Interior Gateway Routing Protocol Baseia-se no algoritmo tipo vetor distância e é apresentado como uma correção das deficiências do protocolo RIP. Tanto o IGRP quanto o EIGRP são proprietários da Cisco, ou seja, presentes exclusivamente em roteadores Cisco.
Protocolos de Roteamento - IGP IGRP/ EIGRP: Interior Gateway Routing Protocol Algumas das melhorias em relação ao RIP são apresentados a seguir: Permite que o valor máximo de HOPs seja maior que 16 O uso de métricas não fica exclusivamente associado ao número de HOPs, mas pode utilizar informações como atraso, largura de banda, confiabilidade e carga do enlace.
Protocolos de Roteamento - IGP Algumas das melhorias em relação ao RIP são apresentados a seguir: Permite o balanceamento de carga. Da mesma forma que o RIP, o IGRP possui contadores que podem ser modificados pelo administrador. O tempo default para as atualizações (updates) é de 90 segundos.
Protocolos de Roteamento - IGP Em seguida, foi lançado o protocolo EIGRP, propondo melhorias sobre o atual IGRP. As principais melhorias são: Neighbor discovery/recovery: envio de mensagens de Hello para os vizinhos afim de saber quais estão disponíveis para troca de rotas. São feitas atualizações parciais Tais atualizações são feitas quando a métrica para determinada rede é modificada e somente divulgada aos roteadores que necessitam de tal informação.
Protocolos de Roteamento - IGP As principais melhorias são: Protocolo de transporte confiável RTP: Garante a entrega ordenada de pacotes do protocolo de roteamento. Máquina de estados DUAL: Aplica informações de distância para selecionar de forma eficiente e livre de loops as melhoras rotas para serem incluídas na tabela de roteamento. Quando houver uma mudança na topologia, a DUAL avalia se existe um sucessor possível.
Protocolos de Roteamento - IGP Máquina de estados DUAL: Caso não haja, mas existem vizinhos anunciado o destino, é feita novamente a recomputação. Como resultado desse funcionamento, ocorre uma melhora na a rota será re-computada. Suporte a VLSM (Variable-lenght Subnet Mask): Ao contrário dos protocolos RIP e IGRP, o EIGRP carrega a informação de máscara de rotas, permitindo o suporte a VLSM, que já é uma prática utilizada na maioria das grandes redes.
Protocolos de Roteamento - IGP OSPF: Open Shortest Path First (OSPF) Implementa o algoritmo de estado do enlace É o mais popular entre os IGPs. Utiliza o algoritmo Shortest Path First para o cálculo dos melhores caminho Utilização do conceito de ÁREA. Dividi-se de forma hierárquica roteadores nas chamadas áreas, com o intuito de diminuir a complexidade e minimizar a comunicação entre roteadores.
Protocolos de Roteamento - IGP OSPF: Open Shortest Path First (OSPF) Necessariamente deve existir uma área central, chamada de Backbone (Area 0), que deverá atuar como elo de ligação com as demais áreas existentes A comunicação entre as demais áreas deve ser feita obrigatoriamente através do Backbone.
Protocolos de Roteamento - IGP OSPF: Open Shortest Path First (OSPF) Uma prática comum são os roteadores com múltiplas interfaces localizadas em diferentes áreas. Cada interface em uma área diferente. Neste caso, o roteador irá manter uma base de dados da topologia para cada área. Esse é o caso dos roteadores 2, 4 e 7.
Protocolos de Roteamento - EGP...