Passa al contenuto principale

6.8.12. Detect Multiplier Change (Modifica del moltiplicatore di rilevamento)

6.8.12. Detect Multiplier Change (Modifica del moltiplicatore di rilevamento)

Quando un sistema desidera modificare il valore di bfd.DetectMult, DEVE seguire la procedura di manipolazione dei timer descritta nella sezione 6.8.3, utilizzando una sequenza di Poll.

Procedura:

  1. Il sistema imposta bfd.DetectMult al nuovo valore desiderato.

  2. Il sistema trasmette un pacchetto di controllo BFD con il nuovo valore nel campo Detect Mult e con il bit Poll (P) impostato.

  3. Il sistema continua a utilizzare il vecchio valore per i propri calcoli interni (se applicabile) fino a quando non riceve un pacchetto di controllo BFD con il bit Final (F) impostato.

  4. Una volta ricevuto il pacchetto con il bit Final, il nuovo valore diventa effettivo.

Considerazioni:

  • Il moltiplicatore di rilevamento viene utilizzato dal sistema remoto per calcolare il tempo di rilevamento. Quando il sistema locale cambia il suo bfd.DetectMult, sta informando il sistema remoto di quanto tempo il sistema remoto dovrebbe attendere prima di dichiarare la sessione Down se non riceve pacchetti di controllo BFD.

  • Se il sistema aumenta il bfd.DetectMult, sta dando al sistema remoto più tempo prima di dichiarare un guasto. Questo cambio è generalmente sicuro e può tollerare una certa asincronia.

  • Se il sistema diminuisce il bfd.DetectMult, sta richiedendo che il sistema remoto dichiari i guasti più rapidamente. Il sistema DEVE assicurarsi attraverso la sequenza di Poll che il sistema remoto sia consapevole di questo cambio prima che diventi effettivo, per evitare che il sistema locale dichiari falsamente la sessione Down a causa dell'applicazione del nuovo moltiplicatore da parte del sistema remoto prima che il sistema locale sia pronto.

Impatto sul tempo di rilevamento:

Il cambio di bfd.DetectMult influenza il calcolo del tempo di rilevamento sul sistema remoto. Il sistema remoto ricalcolerà bfd.DetectTime come:

bfd.DetectTime = nuovo bfd.RemoteDetectMult * bfd.DesiredMinTxInterval

Dove bfd.RemoteDetectMult è il nuovo valore del moltiplicatore ricevuto dal sistema locale.

Coordinazione con altri cambiamenti:

Se il sistema desidera cambiare sia bfd.DetectMult che altri parametri (come bfd.DesiredMinTxInterval o bfd.RequiredMinRxInterval) simultaneamente, può farlo in una singola sequenza di Poll, trasmettendo un pacchetto con tutti i nuovi valori e il bit Poll impostato.