Apenas um caminho no espelho

10

Entendo que apenas o melhor caminho é anunciado aos vizinhos do eBGP, mas isso é verdade para o iBGP? Se eu fiz parceria com dois provedores, tive a impressão de que qualquer outra pessoa que fizesse uma espionagem com meus dois provedores teria dois caminhos para mim. Depois de inspecionar vários óculos, parece que não é assim.

Dennis Olvany
fonte

Respostas:

12

O BGP sempre anuncia apenas o melhor caminho para seus pares. Isso é verdade para eBGP, iBGP, reflexão de rota (que é apenas um caso especial de iBGP) e qualquer outra maneira de usar o BGP.

Mas, sim, você está correto, se estiver enviando anúncios aos provedores A e B, e eu tiver conexões e sessões BGP também com os provedores A e B, então eu devo ver os dois caminhos nas minhas tabelas BGP. Talvez eu não veja várias rotas criadas em minhas tabelas de roteamento ... isso é uma questão de configuração dos meus dispositivos e se eu permito que várias rotas com tamanhos iguais de caminho AS sejam inseridas na tabela de roteamento ... normalmente o BGP instalará apenas um rota única. As tabelas BGP, no entanto, devem mostrar anúncios de ambos os fornecedores.

Na verdade ... mesmo que eu esteja pesquisando com os provedores B e C, ou mesmo C e D, ainda assim devo ver vários caminhos em minhas tabelas BGP, desde que você esteja acessível através de B, C e D. Todas as outras coisas estão sendo iguais, meus dispositivos devem escolher B porque esse deve ser o menor caminho AS, mas eu ainda veria os caminhos com os caminhos AS mais longos de C e D. Agora, talvez C e D tenham decidido que o caminho através de A é melhor do que o caminho através de B, então os caminhos que eu veria teriam COMO CAMINHOS de "AC" e "AD", então pareceria que você não estava conectado a B, mas se o caminho através de A desaparecesse, então o caminho através de B seria propagado adiante através de C e D.

Se você pode fornecer alguns detalhes ... talvez até seus bloqueios que você está anunciando, se quiser compartilhar isso ... outros podem dar uma olhada no que estamos vendo e talvez fornecer algumas orientações mais específicas.

Jeff McAdams
fonte
2

Um aspecto ainda não coberto por essas respostas é o "caminho de adição" do BGP, que permite que um parceiro do BGP envie não apenas sua melhor rota, mas também algumas ou todas as suas alternativas.

Isso é mais útil (e provavelmente funciona) no iBGP e fornece um melhor ECMP.

Para o EBGP, se você tiver várias sessões no mesmo ponto em um único roteador, deverá usar o "caminho múltiplo" do BGP para permitir o ECMP. Dependendo de como e onde a reflexão da rota é feita em uma rede SP, isso pode resultar no uso de todas as sessões de maneira uniforme.

Aqui está uma apresentação de Dave Ward (então na Juniper, agora na Cisco) sobre add-path:

http://www.nanog.org/meetings/nanog48/presentations/Tuesday/Ward_AddPath_N48.pdf

LapTop006
fonte
2

Normalmente, os pares de BGP podem enviar apenas um único caminho para o outro, com quaisquer atualizações para esse caminho substituindo o existente.

No entanto, existe uma extensão para o BGP, normalmente conhecida como additional-pathsque coloca um identificador em cada rota enviada a um par e, portanto, permite que os pares do BGP troquem várias rotas para um caminho, fornecendo não apenas um maior escopo para a engenharia de tráfego, mas também um tempo de convergência reduzido no caso de retirada do caminho, pois o (s) prefixo (s) que não são do melhor caminho pode ser instalado no FIB como uma rota de backup que será usada no momento em que o melhor caminho é retirado - isso é particularmente significativo se você ' re-executando tabelas completas da Internet, pois o scanner BGP em um roteador Cisco é executado a cada 30 segundos, na melhor das hipóteses, e caminhar sobre 300.000 rotas cobra seu preço.

Observe que os caminhos adicionais do BGP não têm nada a ver com o ECMP, pois obviamente estamos falando sobre o recebimento de vários prefixos com o mesmo salto seguinte - com a única exceção nos casos em que você está executando o iBGP e não o usa next-hop-self(ou faz coisas sujas) com o eBGP onde o próximo ponto é preservado)

Como se trata de uma extensão, os dois roteadores devem oferecer suporte e negociar o recurso no momento da conexão (ou, alternativamente, negociaram capacidade dinâmica). É utilizável com o eBGP e o iBGP.

Olipro
fonte
0

Tentar procurar suas próprias rotas de óculos nem sempre funciona da maneira que você espera, principalmente se você compra de alguém que compra muito trânsito. Por exemplo, a Internap compra trânsito de muitos outros grandes ISPs. Se você comprar da Internap e de outra pessoa, há uma boa chance de que sua rota no outro provedor fique oculta em virtude de não ser a melhor. A maioria dos ISPs prefere suas próprias rotas de clientes. Ver ou não ver suas próprias rotas em um espelho tem muito pouco a ver se sua rota estiver propagando corretamente ou não.

Aaron
fonte
0

Sua pergunta não toca no próprio BGP, mas nas políticas do ISP. Nem sempre - por política ou por engano - seus provedores anunciarão seu espaço para upstreams. Você está usando PI ou PA a propósito?

Łukasz Bromirski
fonte
0

Há muita filtragem entre você e o LG (espelho) que pode remover seu prefixo do caminho ou de outro. Qual é a duração do seu prefixo anunciado? Você tem espaço PI ou PA? Como o melhor caminho é anunciado aos pares, você pode competir entre dois caminhos a montante e apenas um está chegando à LG. Se você desligar um de seus caminhos, ele aparecerá na LG após a convergência? Isso lhe dirá que você está perdendo um para o melhor caminho. Experimente a LG com seus provedores para confirmar que seu prefixo existe primeiro e tente trabalhar até o próximo SP.

Para sua pergunta de melhor caminho do iBGP, o padrão é anunciar apenas uma.

generalnetworkerror
fonte
-1

A resposta não é um simples "sim" ou "não", mas acho que essencialmente sua observação é realmente verdadeira de que "isso não é verdade".

Para mais detalhes, veja aqui .

Para fins de curadoria, a SE prefere respostas que são puramente links para outras páginas, portanto, reproduzirei algumas delas aqui, caso a fonte um dia desapareça ou mude.

Como funciona o melhor algoritmo de caminho

O BGP atribui o primeiro caminho válido como o melhor caminho atual. O BGP compara o melhor caminho com o próximo caminho na lista, até que o BGP chegue ao fim da lista de caminhos válidos. Esta lista fornece as regras usadas para determinar o melhor caminho:

1) Prefira o caminho com o PESO mais alto.

Nota: PESO é um parâmetro específico da Cisco. É local para o roteador no qual está configurado.

2) Prefira o caminho com o LOCAL_PREF mais alto.

Nota: Um caminho sem LOCAL_PREF é considerado como tendo o valor definido com o comando de preferência local padrão do bgp ou como tendo um valor de 100 por padrão.

3) Prefira o caminho que foi originado localmente por meio de uma rede ou subcomando agregado do BGP ou por redistribuição de um IGP.

Os caminhos locais originados pelos comandos de rede ou redistribuir são preferidos aos agregados locais originados pelo comando agregate-address.

4) Prefira o caminho com o AS_PATH mais curto.

Nota: Esteja ciente destes itens:

Esta etapa será ignorada se você tiver configurado o comando bgp bestpath as-path ignore.

Um AS_SET conta como 1, não importa quantos ASs estejam no conjunto.

O AS_CONFED_SEQUENCE e o AS_CONFED_SET não estão incluídos no comprimento do AS_PATH.

5) Prefira o caminho com o tipo de origem mais baixo.

Nota: O IGP é menor que o Exterior Gateway Protocol (EGP) e o EGP é menor que INCOMPLETO.

6) Prefira o caminho com o menor discriminador de múltiplas saídas (MED).

Nota: Esteja ciente destes itens:

Essa comparação ocorre apenas se o primeiro AS (o vizinho) for o mesmo nos dois caminhos. Qualquer sub-AS da confederação é ignorado.

Em outras palavras, os MEDs serão comparados apenas se o primeiro AS no AS_SEQUENCE for o mesmo para vários caminhos. Qualquer AS_CONFED_SEQUENCE anterior é ignorado.

Se o bgp always-compare-med estiver ativado, os MEDs serão comparados para todos os caminhos.

Você deve desativar esta opção em todo o AS. Caso contrário, podem ocorrer loops de roteamento.

Se bgp bestpath med-confed estiver ativado, os MEDs serão comparados para todos os caminhos que consistem apenas em AS_CONFED_SEQUENCE.

Esses caminhos se originaram dentro da confederação local.

O MED de caminhos recebidos de um vizinho com um MED de 4.294.967.295 é alterado antes da inserção na tabela BGP. O MED muda para 4.294.967.294.

Os caminhos recebidos sem o MED recebem um MED igual a 0, a menos que você tenha ativado o melhor caminho do BGP com a falta do pior.

Se você ativou o melhor caminho do BGP como desaparecido, os caminhos receberão um MED de 4.294.967.294.

O comando deterministic-med bgp também pode influenciar esta etapa.

Refira como os roteadores BGP usam o discriminador da saída múltipla para a melhor seleção de caminho para uma demonstração.

7) Prefira o eBGP sobre os caminhos do iBGP.

Se o melhor caminho estiver selecionado, vá para a Etapa 9 (caminhos múltiplos).

Nota: Os caminhos que contêm AS_CONFED_SEQUENCE e AS_CONFED_SET são locais para a confederação. Portanto, esses caminhos são tratados como caminhos internos. Não há distinção entre Confederação Externa e Confederação Interna.

8) Prefira o caminho com a métrica IGP mais baixa ao próximo salto do BGP.

Continue, mesmo se o melhor caminho já estiver selecionado.

9) Determine se vários caminhos exigem instalação na tabela de roteamento para o BGP Multipath.

Continue, se o melhor caminho ainda não estiver selecionado.

10) Quando os dois caminhos forem externos, prefira o caminho que foi recebido primeiro (o mais antigo).

Esta etapa minimiza o desvio da rota porque um caminho mais novo não substitui o anterior, mesmo que o caminho mais recente seja a rota preferida com base nos próximos critérios de decisão (etapas 11, 12 e 13).

Pule esta etapa se algum desses itens for verdadeiro:

Você ativou o comando bgp best path compare-routerid.

Nota: As versões de software Cisco IOS 12.0.11S, 12.0.11SC, 12.0.11S3, 12.1.3, 12.1.3AA, 12.1.3.T e 12.1.3.E introduziram este comando.

O ID do roteador é o mesmo para vários caminhos, porque as rotas foram recebidas do mesmo roteador.

Não há atualmente o melhor caminho.

O melhor caminho atual pode ser perdido quando, por exemplo, o vizinho que oferece o caminho desce.

11) Prefira a rota que vem do roteador BGP com o menor ID do roteador.

O ID do roteador é o endereço IP mais alto do roteador, com preferência aos endereços de loopback. Além disso, você pode usar o comando bgp router-id para definir manualmente o ID do roteador.

Nota: Se um caminho contiver atributos de refletor de rota (RR), o ID do originador será substituído pelo ID do roteador no processo de seleção de caminho.

12) Se o ID do originador ou do roteador for o mesmo para vários caminhos, prefira o caminho com o comprimento mínimo da lista de clusters.

Isso está presente apenas em ambientes BGP RR. Ele permite que os clientes examinem RRs ou clientes em outros clusters. Nesse cenário, o cliente deve estar ciente do atributo BGP específico do RR.

13) Prefira o caminho que vem do endereço vizinho mais baixo.

Este endereço é o endereço IP usado na configuração do vizinho BGP. O endereço corresponde ao ponto remoto usado na conexão TCP com o roteador local.

Dito isto, no entanto, eu posso estar errado. Sou um novato nesse campo.

Osteoboon
fonte
Enquanto o algoritmo de decisão BGP é definitivamente útil e algo que deve saber muito bem, eu não acho que particularmente responde à pergunta OPs (a menos que eu tenho mal interpretado isso)
Aaron
Redes SOHO, redes corporativas, redes de provedores ... tudo baseado nos mesmos fundamentos.
Dennis Olvany