sábado, 21 de março de 2009

Protocolos de Routing IV

Protocolos Externos são aqueles utilizados para comunicação entre routers de sistemas autónomos diferentes. As informações de routing que passam entre sistemas autónomos são chamadas de informações de alcançabilidade (reachability). Informações de alcançabilidade são informações sobre quais redes podem ser alcançadas através de um sistema autónomo específico.

  • Exterior Gateway Protocol (EGP) é um dos protocolos de routing externos mais comum. Implementações de EGP não tentam escolher a melhor rota para um destino. EGP actualiza informações de distance-vector, mas não avalia estas informações. Os valores de distance-vector de sistemas autónomos distintos não são comparados directamente, porque cada sistema autónomo pode utilizar um critério diferente para desenvolver estes valores. EGP deixa a decisão da "melhor" rota para outro protocolo. Dois routers que pertençam a ASs diferentes e trocam informações de routing entre si são considerados "vizinhos externos" (exterior neighbors). Se ambos pertencerem ao mesmo AS são considerados "vizinhos internos" (interior neighbors). O protocolo de routing usado pelos exterior neighbors é o Exterior Gateway Protocol ou simplesmente. É ele que permite o anúncio das rotas para as redes internas do AS para o núcleo (core) da Internet. Antes de enviar informações de routing, o sistema deve trocar mensagens "EGP Hello" e "EGP I-Heard-You" (I-H-Y) com o gateway. Hello e I-H-Y são pacotes EGP especiais utilizados para estabelecer um diálogo entre dois gateways que falam EGP. Computadores que comunicam-se através de EGP são chamados de EGP neighbors, e a troca de mensagens Hello e I-H-Y são chamadas "adquirindo um vizinho". Uma vez que o vizinho é adquirido, o sistema pede informações de routing do vizinho. Este pedido de informações é chamado de poll. O vizinho responde enviando um pacote de informações de alcançabilidade chamado update. Se o sistema recebe um poll de um vizinho, ele responde com seu pacote update. Quando o sistema recebe um pacote update de seu vizinho, ele inclui as rotas do update na sua tabela de routing, mas se o vizinho não responder em três poll consecutivos, o sistema assume que o vizinho não está activo e remove a rota para o vizinho da tabela de routing.







  • Border Gateway Protocol (BGP) é um protocolo criado para substituir o protocolo EGP. O algoritmo que sustenta o BGP é definido como PATH VECTOR, assemelhando-se ao algoritmo de vetor distância, pois a partir de informações recebidas de outros sistemas autónomos é formado um vetor que armazena os ASs que formam um caminho para se chegar a determinada rede. Uma vez que os routers divulguem tal informação, é possível calcular o menor caminho para determinada rede. Nem sempre esse menor caminho é o escolhido, pois o BGP utiliza também diversos outros parâmetros para determinação do melhor caminho para determinada rede. O BGP troca informações completas de routing quando uma conexão TCP for estabelecido com seu neighbor1. Quando uma rota é modificada, ele envia para seus vizinhos apenas as alterações. Ele não envia actualizações periódicas de rotas, e ele só informa o melhor caminho para a rede de destino, isso torna a divulgação mais leve, visto que ao nível do BGP o número total de rotas da Internet é muito grande e o anúncio de todas as rotas seria inviável. Esta forma de anúncio é conhecida como incremental. Para a comunicação entre roteadores BGP existem alguns tipos de mensagens onde cada um deles tem um papel importante na comunicação BGP. Mensagens tipo OPEN são utilizadas para o estabelecimento de uma conexão BGP;Mensagens tipo NOTIFICATION reportam erros e servem para representar possíveis problemas nas conexões BGP. Mensagens tipo UPDATE são utilizadas para os anúncios propriamente ditos, incluindo rotas que devem ser incluídas na tabela e também rotas que devem ser removidos da tabela BGP. Mensagens tipo KEEPALIVE são utilizadas para manter a conexão entre routers BGP caso não existam actualizações através de mensagens UPDATE. Uma expressão utilizada para definir rotas que devem ser removidas da tabela BGP é withdrawn, que devido a dinamicidade da Internet ocorrem com muita freqüência.Outra questão importante em roteadores BGP é a questão do chamado Full Routing. Este termo é usado em routers que recebem todos os anúncios de rotas da Internet. Esta característica é desejável em core routers que possuam múltiplos pontos de interconexão com outros backbones. Nesses casos com a tabela de rotas completa será possível explorar e descobrir melhores rotas para uma determinada rede. Como efeito colateral, este recurso exige que os routers tenham bons recursos de CPU e memória. Na maioria dos casos o recurso de full routing não é utilizado, pois os routers possuem geralmente apenas um ou dois pontos de interconexão com outros backbones, não permitindo nenhuma melhora significativa no routing caso fosse usado full routing. A tabela de encaminhamento BGP possui um número que identifica sua versão, sendo incrementado cada vez que esta sofrer alguma modificação.




O BGP é um protocolo extremamente complexo e robusto. Como ele é usado na interent, ele gerencia actualizações de rota em uma tabela com 184062 rotas. Para garantir performance e escalabilidade, o BGP usa muitos parâmetros de rota, chamados de atributos, dessa forma,ele consegue definir a política de encaminhamento e garantir um ambiente de routing estável. Adicionalmente aos atributos usados pelo BGP, é implementado o classless inter-domain routing (CIDR) com o objetivo de reduzir o tamanho das tabelas de routing da internet.

Sem comentários:

Enviar um comentário