STP(スパーニングツリープロトコル)
STP(スパーニングツリープロトコル)とは、ループ状に形成されたレイヤー2ネットワークにおいてデータトラフィックが永続的に流れ続けることを防止するプロトコルのことです。これをほっておくてループという状態におち入り、ネットワークがダウンしてしまいます。大体のネットワークエラーはリンクダウンなので気をつけて行かないといけない項目になります。
スイッチの冗長化(経路を複数作っておくこと)をすると、普通はループというものが起こるので、STPというプロトコルを入れておかないといけないわけです。冗長化というのは線を二本作って、回線が落ちない様にするためにすることです。これはサーバーなどでも適用されています。
例えば、下記のような構成では障害発生、即、回線が止まってしまいます。
なぜループがおこるのか?
ではなぜこのような冗長化を測るとループがおこるのか?
それはフラッディングが影響するからです。下の図を見ながら考えましょう。
PCAからサーバーへ通信をするためにARPリクエストを送信し、
ARPリクエストのフレームを受信したスイッチSWA)は各SW(B、C)にフラッディング(この時SWAは送信元MACアドレスをMACアドレステーブルに学習します)、
見事サーバーへ接続できました。
しかしもちろんですがAから受けたフレームをBとCもフラッディングします。そしてAもまたフラッディングを行ってしまってループという状態、これをcと言いますが、このような状態になるわけですね。
こうなると、ずっと処理できないわけですから、回線障害になるというわけです。
復習:STP(スパーニングツリープロトコル)とは、ループ状に形成されたレイヤー2ネットワークにおいてデータトラフィックが永続的に流れ続けることを防止するプロトコルのことです
これをするとポートブロッキングという一箇所ポートで送受信を止めてしまいます。こうすればループが起きないというわけですね。Catalystスイッチのデフォルトでは、ポートから未知のマルチキャストとユニキャストトラフィックのフラッディングがブロックされずに、すべてのポートにこのようなパケットがフラッディングされます。
このような宛先不明なMACアドレスが、例えば保護ポートなどに、転送されるとセキュリティ上の問題が発生
する可能性が出てくるため、ポートブロッキングにより、そのような不明なトラフィックをブロックすることが推奨されています