Border Gateway Protocol Prof.: Ronaldo Alves Ferreira Alunos: Diego de Assis Fernandes Fabrício Sérgio de Paula Tópicos • • • • • • Introdução O que é um Sistema Autônomo? Exterior Gateway Protocol Border Gateway Protocol Classless InterDomain Routing Conclusão Introducao • BGP – Protocolo de roteamento – Surgiu com crescimento da Internet – “Melhoramento” do EGP O que é um Sistema Autônomo? • No início – Poucas redes conectadas – Tabelas de rotas gerenciadas manualmente – Entradas para todas as redes • Crescimento – Prática inadequada – Necessidade de atualizações automáticas ... • Primeira solução – Um único backbone (centralizado) – Core routers: todos os destinos • Gateway-to-Gateway Protocol: atualização automática de rotas – Non-Core routers: rotas parciais – Problema: crescimento contínuo da Internet ... • Segunda solução – Problema: descentralização – Substituir o conceito de LANs conectadas ao backbone central – Surgimento dos Sistemas Autônomos ... • Sistema Autônomo – Varias redes de uma mesma organização – Liberdade de escolher esquema e arquitetura local mais conveniente – Roteamento Interno • Várias redes dentro de um AS – Roteamento Externo • Entre ASs – Identificação: ASN Exterior Gateway Protocol • Solução inicial para roteamento externo • Conceitos – Vizinhos externos – Vizinhos internos • Sistemas Autônomos ligados ao backbone • Função – Trocar informações entre ASs vizinhos ... • Características – Baseado no vetor de distâncias – Encapsulado no datagrama IP • Procedimentos para troca de informações – Concordam em ser vizinhos – Testam o link com vizinhos – Troca de tabelas de roteamento ... • Problemas – Tabelas completas trocadas em updates – Encapsulamento IP • Entrega não-confiável • Fragmentação • Segurança – Topologia em árvore ... • Problemas (cont.) – Vetor de Distância • Loops • Sem informação para “política de roteamento” – Maior crescimento • Topologia complexa Border Gateway Protocol • Sucessor do EGP • Conceitos: – – – – Vizinhos externos: peers Path: conexão entre ASs iBGP eBGP ... • Características – Vetor de caminhos • Lista de Paths – Roteamento interno feito por um IGP (RIP, OSPF, IGRP, EIGRP) – Peers: importância política – Funciona sobre TCP – Interage com roteadores EGP – Definição de políticas de roteamento ... • Vetor de caminhos – Lista dos ASs entre a origem e destino – Evita loops – Métricas diversas • Diferentes interesses e decisões autônomas (locais) – Mensagens de roteamento maiores ... • Processamento de caminhos Roteador recebe mensagem de atualização Se AS já está no caminho então Descarta mensagem (loop) Senão Analiza/Atualiza rota Insere AS no caminho Repassa mensagem aos peers ... • Usando uma conexão TCP – Simplifica o protocolo: TCP faz entrega confiável – Dados como fluxo de bytes • Não existe fragmentação – Usa porta 179 ... • Sessão BGP – Estabelecimento da conexão TCP – Transmissão da tabela de rotas completa – Quando houver mudanças na tabela, incrementos são enviados – Mensagens keep-alive são enviadas periodicamente – Caso aconteça algum erro, a sessão é encerrada ... • Métricas e políticas – Definidas pelo administrador do AS – Métricas bem conhecidas: quantidade de ASs num caminho – Políticas: regras políticas, de segurança e econômicas “Tráfego iniciando ou terminando na IBM®, não trafega para Microsoft®” ... • Mensagens BGP – Cabeçalho 19 bytes – Campos do cabeçalho • Marker: sincronização e autenticação • Length: tamanho total (incluindo cabeçalho) • Type: tipo da mensagem (OPEN, UPDATE, NOTIFICATION, KEEPALIVE) – Tamanho: 19 a 4096 bytes ... • OPEN: utilizada para estabelecer uma sessão BGP entre neighbors ou peers – – – – Version: Versão do protocolo AS Number: Número do ASs do “sender” BGP Identifier: Endereço IP Hold Time: Tempo máximo de espera entre UPDATEs e/ou KEEPALIVE – Optional Parameters Lenght – Optional Parameters (pode conter autenticação) ... • NOTIFICATION: mensagens de erro ou de encerramento de sessão – Error: tipo da notificação (Erro no cabeçalho) – Error subcode: mais informações (Tipo de mensagem inválida) – Data: pode conter dados referentes ao erro ... • KEEPALIVE: Trocadas periodicamente para verificar se a comunicação está ativa – Não possui campos adicionais – Recomenda-se enviar 3/hold-time ... • UPDATE: contém atualizações de rotas – – – – Unfeasivel Routes Length Withdrawn Routes: rotas removidas Total Path Attribute Lenght Path Attributes: utilizados para decidir a melhor rota – NLRI Information: Endereços IP para as rotas anunciadas Classless InterDomain Routing • • • • Internet continua crescendo Classe A: muito grande Classe C: muito pequena Classe B: escolhida => desperdício de endereços • Esgotamento da Classe B • Explosão das tabelas de roteamento • BGP- 4 suporta CIDR ... • Solução: alocação de Classes C contíguas – Faixas de endereços regionais Europa => 194.0.0.0 - 195.255.255.255 Am. Norte => 198.0.0.0 - 199.255.255.255 – Máscaras de super-redes: agregar redes Provedor recebe classes C: 197.8.0.0 e 197.8.1.0 Na notação CIDR: 197.8.0.0/23 Conclusão • Com o crescimento inesperado da Internet, novas tecnologias de endereçamento e roteamento foram necessárias. • O BGP/CIDR tem um papel importante no roteamento atual, porém pode ser futuramente substituído por outro protocolo com a chegada de novas versões do IP.