Marcando rotas para o estado Hold-Down
Alguns clientes, como protocolos de vetor de distância, como RIP e DVMRP, exigem que os destinos sejam anunciados como inacessíveis por um determinado tempo após a exclusão da última rota para o destino. A última rota excluída deve ser anunciada como inacessível, mesmo que as rotas mais recentes cheguem enquanto isso. A última rota excluída é marcada como em estado de retenção. O processo de retenção impede a formação de loops de roteamento. Os loops de roteamento são causados quando um protocolo de roteamento anuncia informações de roteamento obsoletas. Quando a retenção expirar, esses protocolos retomarão seu anúncio com a nova melhor rota.
Um protocolo que implementa estados de retenção indica que um destino está em um estado de retenção usando a função RtmHoldDestination . O cliente chama essa função quando anuncia a melhor rota para esse destino. Se todas as rotas para esse destino forem excluídas posteriormente, a última rota excluída será mantida em um estado de retenção pelo período de tempo especificado na chamada anterior para RtmHoldDestination.
Quando um protocolo anuncia um destino, as informações de rota usadas dependem se o protocolo usa estados de retenção e se existe uma rota no estado de retenção para o destino.
Os protocolos que não usam estados suspensos podem ignorar informações de rota relacionadas a estados suspensos para um destino e sempre anunciar a melhor rota.
Para obter um código de exemplo que mostra como usar essas funções, consulte Usar o estado de Hold-Down de rota.