Aprendizado e descoberta 3min de Leitura - 03 de fevereiro de 2021

BGP, conceitos e aplicações

Cabos conectados a servidores

This post is also available in: Português

Você já ouviu falar em BGP? Sabe do que se trata?

O BGP – Border Gateway Protocol – se trata de um EGP (exterior gateway protocol), um protocolo de gateway externo padronizado, projetado para trocar informações de roteamento e acessibilidade entre sistemas autônomos na internet. Esse protocolo é frequentemente classificado como um protocolo vetor de caminho, porém também pode ser classificado como um protocolo de roteamento de vetor de distância.

Ou seja, BGP é o método de roteamento que permite o funcionamento da internet através da troca de informações de prefixos IP e políticas entre sistemas autônomos e não seria possível, por exemplo, realizar uma pesquisa no Google ou enviar um e-mail sem ele.

Protocolo de roteamento BGP

Criado em 1989, o BGP surgiu com o intuito de reger um diálogo entre os roteadores e de suportar as diferentes infraestruturas já existentes, provendo escalabilidade, flexibilidade e redundância, além de possibilitar a criação de políticas de roteamento que respeitassem as particularidades e os anseios de cada uma das organizações que se conectavam à Internet.

Atualmente, o BGP é um dos protocolos mais importantes e utilizados para comunicação entre ISP’s – Internet Service Provider (em português: provedor de serviço de internet) é qualquer organização que ofereça serviços de acesso, participação ou utilização da Internet. É ele que faz com que a internet funcione, e faz isso habilitando o roteamento de dados na internet.

Por exemplo, supondo que você, aqui no Brasil, carregue um site com servidores de origem nos Estados Unidos, é o protocolo BGP que permite que a comunicação aconteça de forma rápida e eficiente.

O BGP utiliza-se de uma série de métricas para determinar qual o melhor caminho, são elas, respectivamente: peso e preferência local (atribuído pelo administrador de rede) origem, número de sistemas autônomos no caminho (distância em saltos, onde cada salto é um sistema autônomo), código de origem (se ele veio de um IGP, EGP ou se é incompleto), MED (atributo para especificar a saída quando temos múltiplas saídas), preferência de iBGP sob o eBGP, caminho IGP mais curto para o próximo BGP, caminho mais antigo, ID de roteador e endereço de IP do roteador vizinho.

Principais características

Entre as principais características do BGP estão:

– Suporte às diferentes arquiteturas de comunicação de dados, permitindo flexibilidade na concepção dos projetos de infraestrutura;

– Atualização incremental das tabelas de roteamento (apena no momento inicial incremental das tabelas de roteamento (apenas no momento inicial são enviados todos os dados);

– Uso do protocolo TCP – Transmission Control Protocol – na troca das mensagens de controle, através da porta 179;

– Disponibilização do Classless Interdomain Routing (CIDR), recurso que possibilita a agregação ou sumarização de rotas IP;

– Opção de autenticação da conexão entre os roteadores envolvidos (chamados de BGP speakers) por meio de senhas.

Tipos de mensagens BGP

O protocolo BGP utiliza um conjunto de mensagens para estabelecer uma comunicação com os demais roteadores, monitorar as sessões ativas, enviar atualizações de roteamento e notificar erros.

Cada uma destas mensagens é empregada para um tipo específico de ação. Conheça os 4 tipos de mensagens BGP:

Open message – abertura

Inicia uma sessão de comunicação entre roteadores BGP (chamados também de peer), após a abertura da conexão TCP na porta 179. Indica a versão do protocolo, o número do sistema autônomo e a identificação do roteador.

Update message – atualização

Após a sessão BGP ser estabelecida, os roteadores iniciam a troca de seus prefixos IP através de mensagens update, que detalham cada uma das rotas propagadas para o BGP peer.

Essas mensagens transportam atualizações das tabelas de roteamento, como: rotas que devam ser removidas e adicionadas, atributos dos caminhos pelos quais os pacotes IP serão encaminhados etc.

Notification message – notificações

Mensagens enviadas quando uma condição de erro é detectada. São usadas para encerrar uma sessão ativa e informar a quaisquer roteadores conectados do porquê do encerramento da sessão.

Keepalive

Após o estabelecimento e da troca de mensagens de update, os BGP peers enviam periodicamente keepalives para assegurar que a conexão esteja ativa entre os roteadores.

Estas 4 mensagens são a base dos diferentes estados que uma sessão BGP pode se apresentar: idle, connect, active, open sent, open confirm e established. A troca de prefixos de roteamento é realizada apenas na última etapa que, inicialmente, contempla a tabela completa.

Após isso, apenas alterações são compartilhadas entre os roteadores que estabeleceram conexão. São encaminhados também diversos atributos que possibilitam a determinação da melhor rota para cada um dos destinos, não somente baseada no menor caminho, mas por meio de outros critérios que conferem ao administrador do sistema autônomo a flexibilidade necessária para a criação de suas políticas de roteamento.

Ficou com alguma dúvida sobre o roteamento BGP? Converse com nossos especialistas e saiba mais.

This post is also available in: Português