日々の忘備録代わりと、チラシのウラで。
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
UDLD Negotiationについても少しだけ。
以下の図ではSwitchAのPortで送信Stackが発生した状態を想定しています。
SwitchAはUDLD Packetを送出しているつもりになっているが実際にはSwitchAのUDLD PacketはSwitchBには到達していません。
UDLDの動作として対向装置のUDLD Packetに対するAgingTimerが0になると再開処理が発生します。
AgingTimerは対向装置からUDLD Packetを受信しないと減算されていきます。対向装置からの正常なUDLD Packetを受信するとInterval×3回にResetされます。
つまり、対向装置からの最後の正常なUDLD Packet受信後Interval×3回の時間を経過すると再開処理が走ることになります。
以下の図を例にSiwtchAの動作とSwitchBの動作を説明します。
1.SwitchBではSwitchAのUDLD Packetが受信出来ないためSwitchAからの最終正常UDLD Packet受信後、Interval×3回時間経過後再開処理に走ります。
2.SwitchAではSwitchBからのUDLD Packetに含まれるAgingTimerの情報を元に自身のEntryがAge Outしたことを認識し再開処理に走ります。※再開処理はSwitchAでもSwitchBでも行われることに注意してください。
3.再開処理時の動作としては再同期FlagのたったUDLD Massageが1sec毎に8回続けて送出されます。
4.再開処理でも対向装置から応答がなかった場合の動作は通常モードとAggressiveモードで異なります。
5.通常モードで動作している場合にはSwitchAのPortはerrdisableとなりますが、SwitchBのPortは再開処理終了後は7secごとに1回UDLD Packetが送出されます。つまり、''SwitchBのPortはerrdisable stateへと移行しません''。
6.Aggressiveモードで動作している場合にはSwitchA、SwitchBともに再開処理終了後errdisable stateへと移行します。
障害発生からerrdisableまでの時間は障害発生時間とUDLD Packet送信Timingに依存し、最大でInterval×3+7secということになります。IntervalのDefaultは15secなので15×3+7=52secとなります。
UDLD Packetについても少し。
UDLD Packetは送信先MAC Addressが01-00-0c-cc-cc-ccのMulticast Addressが使用されます。
正常な状態(Bidirectional)でやりとりされるUDLD Packetには自身のDevice情報(MAC Address、Port番号、シリアル番号およびシステム名)と対向装置のDevice情報(MAC Address、Port番号)が含まれます。
正常な状態では各装置に設定されたIntervalでUDLD Packetを送信しますがEcho/Replyの関係はありません。
異常かどうかの判断時(Detection)は自身のDevice情報のみが含まれるUDLD Packetが対向装置間でやりとりされます。この際、送信されるUDLD Packetには再同期FlagがたっているためEcho/Replyの関係があります。つまり、対向からのUDLD Packetを受信した場合即座に応答を返します。