「2023-09-14 プロトコル別 断時間チューニング」の版間の差分

提供: hkatou_Lab
ナビゲーションに移動 検索に移動
3行目: 3行目:
 
== Cisco ==
 
== Cisco ==
  
 +
=== LAN Switching ===
 +
{| class="wikitable"
 +
!カテゴリ
 +
!デフォルト
 +
!デフォルト設定
 +
!変更値
 +
!確認コマンド
 +
!備考
 +
|-
 +
|spanning-tree portfast (trunk)
 +
|Disable
 +
|no spanning-tree portfst
 +
|  -
 +
|show spanning-tree
 +
|ping ホストを収容するポートで未設定 + RSTP の場合、BPDU Proposal を送信して、対向側の Agreement を数十秒待機するため、断時間が延びてしまう
 +
|}
 
=== OSPF ===
 
=== OSPF ===
 
{| class="wikitable"
 
{| class="wikitable"

2022年12月5日 (月) 12:21時点における版

君はこのドキュメントを参考にしてもいいし、しなくてもいい

Cisco

LAN Switching

カテゴリ デフォルト デフォルト設定 変更値 確認コマンド 備考
spanning-tree portfast (trunk) Disable no spanning-tree portfst - show spanning-tree ping ホストを収容するポートで未設定 + RSTP の場合、BPDU Proposal を送信して、対向側の Agreement を数十秒待機するため、断時間が延びてしまう

OSPF

router ospf <process_id>
カテゴリ デフォルト デフォルト設定 変更値 確認コマンド 備考
NSF Helper Enable nsf cisco helper

nsf ietf helper

- show ip ospf


IETF NSF helper support enabled

Cisco NSF helper support enabled

隣接 NSF ルータがフェイルオーバーした際、自ルータが FIB を保持する
NSF Disable - nsf show ip ospf


Non-Stop Forwarding enabled

自ルータが SSO フェイルオーバーした際、

隣接ルータで OSPF が Down しても FIB を保持してもらう

NSR Disable - nsr show ip ospf


Non-Stop Routing enabled

実装難易度が高いため、低価格製品や IPv6 は対応していない場合が多い

常時 OSPF プロセスの状態を SSO Active と Standby で同期する

自ルータが SSO フェイルオーバーした際、

隣接ルータに影響を与えない


歴史的には NSF のほうが先に実装されている + IETF 標準であるため、NSF のほうが不具合が少なそう

BGP Disable - max-metric router-lsa on-startup wait-for-bgp show ip ospf


    Condition: on startup while BGP is converging, State: inactive

再起動後、BGP の経路を受信し終わるまで、LSA のメトリックを最大にして、OSPF でトラフィックを処理しない
timers Enable timers throttle spf 5000 10000 10000


Cisco IOS XE Everest 16.5.1b 以降

timers throttle spf 50 200 5000

timers throttle spf 10 100 5000 show ip ospf


Initial SPF schedule delay 10 msecs

Minimum hold time between two consecutive SPFs 100 msecs

Maximum wait time between two consecutive SPFs 5000 msecs

単位 msec

1:SPF 遅延

2:1つ目と2つ目の SPF 計算の間の遅延

3:最大遅延

OSPF はリンクダウン時に 6 秒程度の断時間が発生するが、これは最初の 5000msec の時間による


IOS-XE 16.5.1b 以降は、Fast Convergence Default Optimize でタイマーが高速化された

Enable timers throttle lsa 0 5000 5000


Cisco IOS XE Everest 16.5.1b 以降

timers throttle lsa 50 200 5000

timers throttle lsa 10 100 5000 show ip ospf


Initial LSA throttle delay 10 msecs

Minimum hold time for LSA throttle 100 msecs

Maximum wait time for LSA throttle 5000 msecs

単位 msec

1 : 最初の LSA 生成遅延

2 : 最小 LSA 生成遅延

3 : 最大 LSA 生成遅延

OSPF はリンクダウン時に 6 秒程度の断時間が発生するが、これは最初の 5000msec の時間による


IOS-XE 16.5.1b 以降は、Fast Convergence Default Optimize でタイマーが高速化された

Enable timers lsa arrival 1000

Cisco IOS XE Everest 16.5.1b 以降

timers lsa arrival 100

timers lsa arrival 80 show ip ospf


Minimum LSA arrival 80 msecs

単位 msec

LSA の最小受信間隔


IOS-XE 16.5.1b 以降は、Fast Convergence Default Optimize でタイマーが高速化された


BGP

router bgp <AS_Number>
カテゴリ デフォルト デフォルト設定 変更値 確認コマンド 備考
NSF /

NSF Helper

Disable - bgp graceful-restart show ip bgp neighbors <Peer_IP>


Graceful Restart Capabilty:advertised and received

自ルータが SSO フェイルオーバーした際、隣接ルータで BGP が Down しても FIB を保持してもらう
NSR Disable - bgp graceful-restart

bgp sso route-refresh-enable


iBGP / eBGP : neighbor <BGP_Peer_IP> ha-mode sso

show ip bgp neighbors <Peer_IP>


  SSO is enabled

実装難易度が高いため、低価格製品や IPv6 は対応していない場合が多い

常時 BGP プロセスの状態を SSO Active と Standby で同期する

自ルータが SSO フェイルオーバーした際、隣接ルータに影響を与えない


歴史的には NSF のほうが先に実装されている + IETF 標準であるため、NSF のほうが不具合が少なそう

timers Enable bgp update-delay 120 bgp update-delay 1 - 1 つ目のピアとセッションを確立したあと、最適経路選択・経路通知を遅延させる時間


ただし、すべてのピアが Up した際は、最適経路選択・経路通知を行う

SSO かつ VSS などのクラスタリング系技術で、論理ルータが 1 台のみの場合に使用し、再起動時のトラフィック断を減らすことが可能


もともとフルルートで収束に時間がかかることから動作しているタイマーであるため、フルルートの環境には向いていない

Enable bgp aggregate-timer 30 bgp aggregate-timer 0 - 0 の場合、集約ルートの広報を即時行う


有効な場合、タイマーの間サブネットルートを広報する


対向側ピアでサブネットルートをフィルタリングしている場合に有効と思われる

Enable timers bgp 60 180 timers bgp 10 30 show ip bgp neighbors


  Last read 00:00:01, last write 00:00:09, hold time is 30, keepalive interval is 10 seconds

キープアライブタイマーを 60 -> 10 秒、

ホールドダウンタイマーを 180 -> 30 秒に変更する


フルルート環境だとここまで短縮している例は見た記憶が無い


15 / 45 , 20 / 60 くらいが一般的と思う

BGP Additional Paths (PIC-Edge) Disable - bgp additional-paths select all

bgp additional-paths send receive

neighbor <Peer_IP> additional-paths send receive

show ip bgp neighbors


  Additional Paths send capability: advertised

  Additional Paths receive capability: advertised

バックアップ BGP ルートを RIB に保持することで、アクティブな FIB ルートが削除された際、すぐに切り替えられる機能で、EIGRP のフィージブル サクセサと類似している



特に無効時のフルルート環境はルートを受信し終わるまで、ルート未受信の宛先トラフィックがダウンし続けてしまう

有効にすることで即時に FIB を切り替えられ、断時間を大幅に短くできるため、有効な機能といえる


有効時にピアが Down / Up するため、メンテナンス時間が必要


また、RIB の保持にメモリを使用するため要注意


スイッチではあまり対応していない

用語解説

SSO = Stateful Switch Over.

ルータのルートプロセッサや、スイッチのスーパーバイザエンジンを、なるべく断時間が短くなるように切り替える仕組みのこと。

よくある勘違いとして、以下がある。

  • 勘違い : 切替時は OSPF や BGP が隣接ルータでダウンしない (実際にはダウンする)
    • ダウンしても NSF Helper で転送させる、NSR でダウンさせないなどの対処が必要
  • 勘違い : HSRP も SSO により短時間で切り替えられる
    • SSO Aware HSRP 機能が必要
    • ない場合は数十秒単位でトラフィック断が発生する

リファレンス

Change of Default OSPF and IS-IS SPF and Flooding Timers and iSPF Removal

BGP の追加パス