BGP Dumpning計算

Cisco公式のコマンドリファレンス見ても公式しか書いてないし、ワークブックで展開してくれてる式も「なぜそうなるの?」っていうところにいきなり飛んでてさっぱり分かんなかった。対数とかわかんないよ…
と嘆きながら調べてみるといい記事があったのでそこからの考え方を自分なりに整理。

例:ワークブックの問題そのままでいくと、公式に当てはめたら

2000 = 750 * 2^{(5/x)}

となる。ここからWindows標準の計算機で計算できるようにしようとすると

  1. 2000 / 750 = 2^(5/x)
  2. func_logtwo(2000 / 750) = func_logtwo(2^(5/x))
  3. func_logtwo(2000 / 750) = 5/x
  4. ln(2000 / 750) / ln(2) = 5/x
  5. x = 5 / ln(2000 / 750) * ln(2) = 3.5334... ≒ 4

で、正解のhalf_timeである4が出てくる。max_suppress_timeはhalf_timeの4倍なので16
よって、デフォルトも含めて記載すると

bgp dampening 4 750 2000 16

が出てくる。ということ。ワークブックに書いてあった式にいきなり飛んだのはこういう流れねーと納得

※func_logtwo(x) = log2(x)を求める関数と仮定義。計算式は ln(x) / ln(2)