Faça a gestão dos temporizadores de BGP
Esta página descreve o seguinte:
- Os temporizadores BGP do Cloud Router e as respetivas definições, incluindo orientações para configurar as mesmas definições no seu router no local.
- Atualizar o intervalo de keepalive do BGP para o Cloud Router.
Temporizadores e definições de BGP
O router na nuvem e o router no local mantêm a comunicação através do seguinte conjunto de definições de temporizador.
Temporizador de keep-alive
Os sistemas BGP trocam mensagens keepalive para determinar se um link ou um anfitrião falhou ou já não está disponível. Em conjunto com o temporizador de espera, o temporizador de manutenção indica se um router está acessível ao respetivo par BGP.
O temporizador de keepalive é o KEEPALIVE_INTERVAL
entre as mensagens BGP periódicas
trocadas entre um Cloud Router e o respetivo router
paritário no local. Pode configurar este valor conforme descrito no artigo
Atualize o intervalo de keepalive do BGP.
O valor predefinido é 20 segundos. A Google recomenda que defina os temporizadores de keepalive para o mesmo valor no router no local e no Cloud Router.
Pausa o temporizador
Este temporizador define o período de tempo que um Cloud Router ou um router no local tem de esperar, na ausência de uma notificação de reinício elegante (pacote TCP FIN
ou RST
) ou uma notificação BGP CEASE
, antes de mover a sessão BGP para o estado DOWN
.
Os routers negociam um tempo de espera para cada sessão BGP. O tempo de suspensão negociado é o menor dos valores do temporizador de suspensão configurados no Cloud Router e no router no local. Quando o tempo de suspensão negociado é atingido e não é recebida nenhuma notificação de reinício
elegante nem uma notificação BGP CEASE
, um router move a sessão BGP para o estado DOWN
e toma as seguintes
medidas:
- Remove todos os trajetos aprendidos da sessão BGP
- Interrompe as rotas de publicidade
Para configurar o temporizador de suspensão do Cloud Router, atualize o intervalo de manutenção do BGP do Cloud Router. O Cloud Router define o valor do temporizador de espera como três vezes o valor do intervalo de keepalive configurado. Por exemplo, se definir o temporizador de keepalive para 20 segundos, o temporizador de espera é de 60 segundos. Para mais informações, consulte o artigo Atualize o intervalo de manutenção do BGP.
Temporizador de reinício elegante
Este temporizador define o período de tempo durante o qual um router preserva o estado da sessão BGP anterior após uma notificação de reinício elegante (pacote TCP FIN
ou RST
) do router de pares.
Ao mesmo tempo que preserva o estado da sessão BGP anterior, o router mantém as rotas aprendidas da sessão recebidas do router de pares e continua a anunciar as respetivas rotas ao router de pares. Se for estabelecida uma nova sessão de BGP enquanto o estado da sessão de BGP anterior estiver a ser preservado, não há interrupção da conetividade. No entanto, se não for estabelecida uma nova sessão de BGP, a sessão passa para o estado DOWN
no final do temporizador de reinício gradual. Quando se encontra no estado DOWN
, os trajetos aprendidos da sessão recebidos do router de pares são removidos e o router deixa de anunciar os respetivos trajetos ao router de pares.
Um router que suporta o reinício elegante anuncia um valor de temporizador de reinício elegante que define o período de tempo que o outro router tem de esperar após uma notificação de reinício elegante. Dois routers ligados podem usar valores de temporizador de reinício
elegante diferentes, e espera-se que cada router respeite o valor de temporizador de reinício
elegante do respetivo par. Quando estabelece uma nova sessão de BGP, cada router comunica o seu próprio valor do temporizador de reinício gracioso ao router de pares através da mensagem OPEN
do BGP.
O Cloud Router suporta o reinício gradual e o temporizador de reinício gradual do Cloud Router está definido para 120 segundos. Cada Cloud Router envia uma notificação de reinício elegante antes de cada evento de manutenção de software se o router de pares também suportar o reinício elegante.
Se configurou o seu router no local com o reinício elegante, também pode enviar uma notificação de reinício elegante para o Cloud Router durante eventos de reinício ou manutenção do router no local. Defina o tempo de exposição do reinício gradual do router no local para um valor adequado às suas necessidades.
Para mais informações sobre o reinício elegante, consulte o RFC 4724.
Temporizador de caminho obsoleto
Esta definição determina o tempo que um router espera antes de eliminar as rotas aprendidas depois de receber uma mensagem de fim de registo (EOR) do outro router. Este temporizador começa quando a sessão de BGP é reinicializada após um reinício controlado, mas o prefixo em questão não foi abordado por uma mensagem UPDATE
. Recomendamos que defina o temporizador stalepath para 300 segundos no router no local para corresponder à definição do Cloud Router.
Atualize o intervalo de keepalive do BGP
Para modificar o intervalo de keepalive do BGP num Cloud Router, siga estes passos.
Consola
Na Google Cloud consola, aceda à página Routers na nuvem.
Selecione o Cloud Router que contém o intervalo BGP a modificar.
Na página Detalhes do router, clique em
Editar.Atualize o intervalo de manutenção do par BGP. Este valor tem de ser um inteiro entre 20 e 60 que especifica o número de segundos para o intervalo. A predefinição são 20 segundos.
Clique em Guardar.
gcloud
Execute o comando update
:
gcloud compute routers update ROUTER_NAME \ --project=PROJECT_ID \ --keepalive-interval=KEEPALIVE_INTERVAL \ --region=REGION
Substitua o seguinte:
ROUTER_NAME
: o nome do Cloud RouterPROJECT_ID
: o projeto que contém o Cloud RouterKEEPALIVE_INTERVAL
: o intervalo entre as mensagens keepalive do BGP que são enviadas para o router de paresEste valor tem de ser um número inteiro entre 20 e 60 que especifica o número de segundos para o intervalo. A predefinição são 20 segundos.
REGION
: a região onde o Cloud Router está localizado
O resultado é semelhante ao seguinte:
Updating router [my-router]...done.
API
Use o método
routers.patch
para atualizar o campo bgp.keepaliveInterval
:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "bgp": { "keepaliveInterval": KEEPALIVE_INTERVAL } }
Substitua o seguinte:
PROJECT_ID
: o projeto que contém o Cloud RouterREGION
: a região onde o Cloud Router está localizadoROUTER_NAME
: o nome do Cloud RouterKEEPALIVE_INTERVAL
: o intervalo entre as mensagens keepalive do BGP que são enviadas para o router de paresEste valor tem de ser um número inteiro entre 20 e 60 que especifica o número de segundos para o intervalo. A predefinição são 20 segundos.
O que se segue?
- Para desativar uma sessão de BGP temporariamente ou removê-la por completo, consulte o artigo Desative ou remova sessões de BGP.
- Para resolver problemas ao usar o Cloud Router, consulte o artigo Resolução de problemas.