そもそも、なぜSTPが必要なのか?
女性笑顔
これは分かります。
機器間でBPDU(Bridge Protocol Data Unit)をやりとりすることで、ループを防ぐため。ループが発生すると、ネットワークが輻輳状態になって、通信ができないからです。
そのとおり。
だが、LANの設計をするときに、あえてループを作ることが一般的である。なぜだろうか?
それは、ループ構成を組んで、STPを有効にしておけば、障害時にはそのループが迂回経路になるからだ。しかも、障害時には自動的にSTPの再計算が走って、迂回経路に自動切り替えしてくれるから便利である。
従来のCSTでは、切り替えのコンバージェンス(収束)に40秒ほどかかっていたが、RSTPなどでは、数秒で切り替わる。

STPの目的を整理すると次の2つになる。

STPの目的
.襦璽廚硫麋
⊃頼性向上(冗長性の確保)

過去問では、スパニングツリーの機能を、「複数のブリッジ間で情報を交換し合い、ループ発生や障害時の迂回ルート決定を行う。(平成17年度 午前 問44)」、「BPDUと呼ばれる制御フレームをやり取りして通信のループを回避するプロトコル。(平成21年度 午後1問1)」と述べています。

デメリット
STPによるデメリットもあります。それは、「PCを接続しても直ちに通信が可能な状態にならない(H21NW午後1問1設問3(3)」ことです。
STPが有効なSwitchingHUBにPCを接続しても、IEEE802.1Dによる通常のSTPの場合、BPDUのやりとりが行われるので、正常に接続されるまでに40秒ほどかかってしまう。

PC→HUB→STP有効のSW→DHCPサーバ

という構成の場合、PCがDHCPによるIPアドレスを要求しても、STP有効のSWがリンクアップされず、DHCPサーバからIPアドレスが取得できないという問題が発生することもある。

STPの無効化
スイッチ全体で無効にする場合(no spanning-tree protocol)と、ポート単位で無効にする(portfast)場合がある。上記で書いたような問題を回避するために、PCを接続するポートには、portfastを入れることがあります。

以下は情報処理試験では出題されないと思いますので参考程度に

スパニングツリーの種類
・STP(Spanning Tree Protocol):IEEE 802.1Dで規定 ←Dは大文字が正式。
・PVST(Per VLAN Spaninng Tree) VLANごとのSpaninng Tree。※CiscoではPVST+
・RSTP(Rapid Spanning Tree):IEEE 802.1wで切り替えが速いSTP。現在はIEEE802.1Dに統合されている。CSTPの場合、トポロジー変更があったことをTCN(Topology Change Notification)BPDUで知らせ、そこから再計算をスタートさせる。RSTPではTCN BPDUをネットワーク全体に伝えることはせず、変更が必要なスイッチと直接やりとり(Handshake方式)を行うことで、高速化している。ただ、リンクダウンなどではなく、リンクアップや機器が追加された場合は、全体の再計算が必要なので、通常のSTPと同様の収束時間が必要。
・MSTP(Multiple Spanning Tree Protocol):IEEE802.1s。PVSTはVLANごとのSTP。しかし、VLANが増えてくると、それぞれでSTPを処理すると負荷が増える。そこで、VLANをまとめてインスタンスというグループを作り、そのグループでSTPを設定する。

参考
119通報のシステムトラブルは、STPの設定をしなかったためにループを起こしたことのようだ。「システム障害はなぜ二度起きたか」(日経BP社)は、「2011年1月、消防車や救急車の出動を支援する東京消防庁の情報システムがダウンし、119通報がつながりにくくなる事態が発生した。原因は一本のLANケーブルの誤接続によって通信の「ループ」が発生したこと。予備システムも機能せず、影響は約四時間半に及んだ」と述べられている。