OSPF で使用する最大パケットサイズは従来 1500 byte でしたが、CSCse01519 の修正により、以下のように実装が変更されました。
※具体的な修正バージョンについては bugtoolkit をご参照ください。
- DBD packet : interface MTU か 1500 byte のうちいずれか小さいほう
- LSA update packet : interface MTU
例えば、MTU 1600 byte 設定の interface の場合、DBD packet の上限は 1500 byte のままですが、LSA update packet の上限は 1600 byte になります。
この変更により、比較的大きい MTU サイズを持つ(MTU が 1500 byte を超える) interface において次のような問題が発生する場合があります。
- OSPF Neighbor が Too many retransmissions で down し、その後再度確立するものの、30 分程度経過してまた Too many retransmissions が発生する
この事象は下記のような構成など、Neighbor 間の機器において 1500 byte を超える packet を drop するような場合に発生します。
OSPF router (MTU 1600) ------ L2 Service (MTU 1500) ----- (MTU 1600) OSPF router
実装変更後も DBD packet は 1500 byte を超えませんので、それらは引き続き通過可能であり一旦 Neighbor が FULL になります。
しかし、LSA refresh などに使用される LSA update が 1500 byte を超えてしまう状況ですと、Neighbor 間の機器で drop されることにより neighbor に update が届きません。これがToo many retransmissions が発生してしまう原因となります。
このような状況が発生した場合には、まずは下記の点をご確認ください。
- MTU サイズの ping が Neighbor 間で疎通可能かどうか
- Neighbor 間で何らかのサービスを使用している場合、そのサービスで疎通が保障される MTU 設定になっているかどうか