A abreviatura BGP significa Border Gateway Protocol. É um protocolo de roteamento de vetor de caminho, com o qual os vários sistemas autônomos (AS) da Internet podem ser conectados uns aos outros e os dados podem ser roteados através dos limites do AS.
De acordo com os relatórios, uma atualização do software BGP deu errado e causou a interrupção do Facebook.
O Border Gateway Protocol pode ser usado no AS. Dentro de um AS, geralmente funciona com os chamados Interior Gateway Protocols (IGP), como Open Shortest Path First (OSPF) ou Intermediate System to Intermediate System (IS-IS).
O Border Gateway Protocol (BGP) é um padrão de rede que estabelece os caminhos lógicos de conexão entre sistemas autônomos pelos quais os dados passam. As principais características do BGP estão descritas no RFC 1163. A versão atualmente usada é o BGPv4, que está definido nos RFCs 4271, 4760 e 4364, entre outros.
O Border Gateway Protocol não se limita ao roteamento de IPv4 ou IPv6, mas também pode ser usado para outros protocolos ou rótulos MPLS. O BGP foi projetado para escalar e ser confiável. É um mecanismo de roteamento difícil de ser ativado e executado, e leva tempo para os caminhos de conexão convergirem.
Como funciona o Border Gateway Protocol?
O Border Gateway Protocol funciona com base em vetores de caminho. Para comunicar informações de roteamento, os roteadores estabelecem conexões TCP seguras entre si. Mensagens e informações são enviadas e recebidas por meio dessas sessões do BGP. A porta usada para isso é a porta TCP 179. Os tipos de mensagens possíveis são:
- ABRIR: para iniciar a troca de informações dentro de uma sessão
- KEEPALIVE: para confirmar uma mensagem ABERTA e para manter as sessões. As sessões são mantidas ativas com mensagens KEEPALIVE regulares dos roteadores conectados
- ATUALIZAÇÃO: para informar sobre mudanças de caminho
- NOTIFICAÇÃO: para encerrar uma conexão e excluir caminhos, por exemplo, porque as mensagens KEEPALIVE não são mais recebidas
As mensagens UPDATE desempenham um papel central no Border Gateway Protocol. Os roteadores usam essas notificações para descobrir sobre novas rotas ou para serem informados quando as existentes desaparecerem. O roteador pode criar um gráfico que representa a rede de sistemas autônomos com base nos dados recebidos. O procedimento de geração do gráfico desconsidera os loops e leva em consideração as características dos caminhos incluídos na atualização. Os atributos possíveis de uma rota são:
- AS_PATH: informações sobre qual AS um destino pode ser alcançado. Os sistemas autônomos são representados por números AS
- Próximo salto: endereço IP do próximo nó intermediário no caminho para um prefixo
- Métrica IGP: Informações sobre os custos através da própria rede
- Multi-Exit Discriminator (MED): para priorizar conexões paralelas
- Tags ou comunidades de roteamento: valores longos de 32 bits com os quais os prefixos podem ser marcados para fins de filtragem
- Preferência local: para selecionar um caminho dentro de um AS
- Origem: fonte de um prefixo. Os valores possíveis são internos, externos ou incompletos
Diferenciação entre EBGP e IBGP
Não apenas diferentes sistemas autônomos podem ser conectados ao Border Gateway Protocol. O protocolo de roteamento também pode ser usado para interconectar roteadores dentro de um AS. Dependendo do uso, fala-se em BGP externo ou interno (EBGP ou IBGP).
Os dados são direcionados por meio de um sistema autônomo por meio dos roteadores de um AS conectado ao IBGP. Para isso, os roteadores propagam as rotas aprendidas via EBGP em seu próprio AS. Isso torna possível transmitir os atributos específicos do BGP dos prefixos. As sessões BGP devem ser estabelecidas entre todos os roteadores que usam o Border Gateway Protocol para se comunicar.
Um Interior Gateway Protocol (IGP), como OSPF (Open Shortest Path First) ou IS-IS, geralmente é necessário para a conexão real entre os roteadores. Os refletores de rota são um método usado para evitar dificuldades de dimensionamento resultantes da malha completa em grandes redes. Cada roteador BGP precisa apenas de uma conexão com o refletor de rota, que rastreia todas as rotas recebidas via EBGP e as distribui a todos os roteadores no AS via IBGP.