Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

RSTP(アールエスティーピー)とは | 意味や読み方など丁寧でわかりやすい用語解説

RSTP(アールエスティーピー)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

読み方

日本語表記

ラピッドスパニングツリープロトコル (ラピッドスパニングツリープロトコル)

英語表記

RSTP (アールエスティピー)

用語解説

RSTP(Rapid Spanning Tree Protocol)は、イーサネットネットワークにおけるループを防止し、同時にネットワーク障害発生時の経路切り替えを高速化するためのプロトコルである。IEEE 802.1wとして標準化されており、従来のSTP(Spanning Tree Protocol, IEEE 802.1d)の進化版として位置づけられる。STPが抱えていたネットワーク収束時間の長さという課題を解決し、現代の高速で信頼性の高いネットワーク構築に不可欠な技術となっている。

イーサネットネットワークでは、可用性や帯域幅を確保するために、複数の物理経路を冗長化して構築することが一般的である。しかし、物理的なループが存在すると、フレームがネットワーク内を無限に循環し、ブロードキャストストームやMACアドレステーブルの不安定化といった深刻な障害を引き起こす。STPやRSTPは、このようなループを論理的に防止するため、冗長経路の一部を一時的にブロックし、ループのないツリー構造を形成する。障害発生時にはブロックされていた経路を開放することで、通信を維持する役割を担う。

従来のSTPは、障害発生時にネットワークが新しい経路に収束するまでの時間が長く、数十秒に及ぶことがあった。これは、STPがフォワードディレイタイマーやマックスエイジタイマーといった固定のタイマー値に基づいてポートの状態を遷移させていたためである。例えば、ブロッキング状態からフォワーディング状態へ移行するまでに、リスニング状態とラーニング状態をそれぞれフォワードディレイの期間待つ必要があり、その間に通信が停止してしまう問題があった。この遅延は、特にVoIPなどのリアルタイム通信や、データベースへのアクセスなど中断が許されないアプリケーションにとって大きな影響を与えた。

RSTPは、このSTPの課題を解決するため、いくつかの重要なメカニズムを導入し、大幅な高速化を実現している。まず、ポートの状態遷移を簡略化した。STPには、ディスエーブル、ブロッキング、リスニング、ラーニング、フォワーディングの5つのポート状態があったが、RSTPでは、ディスエーブルに相当するものはそのままに、廃棄(Discarding)、学習(Learning)、転送(Forwarding)の3つの状態に集約している。廃棄状態は、STPのブロッキング状態とリスニング状態を合わせたものであり、フレーム転送もMACアドレス学習も行わないが、BPDU(Bridge Protocol Data Unit)の送受信は行う。これにより、不要なタイマー待ちを削減している。

次に、ポートの役割を明確化し、特に障害時の経路切り替えを高速化する新しい役割を導入した。STPにはルートポート(Root Port)と指定ポート(Designated Port)があったが、RSTPではこれらに加えて、代替ポート(Alternate Port)とバックアップポート(Backup Port)という二つの新しい役割が加わった。代替ポートは、指定ポートが存在するセグメントへの代替パスを提供するポートであり、ルートポートが故障した場合に高速にルートポートの役割を引き継ぐことができる。一方、バックアップポートは、指定ポートの役割を持つスイッチ自身に接続されている別のポートであり、指定ポートが故障した場合の代替となる。特に代替ポートは、あらかじめ廃棄状態として待機しているため、障害発生時に即座に転送状態へ移行し、STPのような長いタイマーを待つことなく高速な経路切り替えを可能にする。

RSTPの高速収束を支えるもう一つの重要なメカニズムが、「提案・合意(Proposal/Agreement)」プロセスである。STPでは、スイッチは自身のBPDUを隣接スイッチに送信し、タイマーが切れるのを待ってポートの状態を遷移させたが、RSTPでは、ルートブリッジへのパスを提供する可能性のある指定ポートは、隣接スイッチに「提案(Proposal)」を送信する。隣接スイッチはこれを受け取ると、自身の非指定ポートを廃棄状態に設定し、ルートポートが安定したら「合意(Agreement)」を返す。この提案・合意のやり取りを通じて、隣接スイッチ間で高速にポート状態の同期と経路の確立を行うことで、タイマーベースの待ち時間を大幅に短縮し、ほぼ瞬時にルートポートや指定ポートを転送状態に遷移させることが可能になる。

また、RSTPは障害検出の高速化も実現している。STPでは、BPDUの受信が停止してからMax Ageタイマーが切れるまで待ってから経路の再計算を開始するため、時間がかかった。RSTPでは、BPDUを一定間隔(デフォルトではHello Timeの2秒ごと)で送信し、3回連続でBPDUを受信できなかった場合(デフォルトでは6秒)に、隣接スイッチのダウンと判断し、より迅速に障害を検出して経路の再計算を開始する。さらに、エッジポート(Edge Port)という概念も導入された。これは、エンドデバイス(PCやサーバーなど)が接続されるポートであり、BPDUを受信しないことを前提とする。エッジポートに設定されたポートは、リンクアップすると即座に転送状態へ移行するため、STPのようなリスニングやラーニングの待ち時間がない。ただし、エッジポートがBPDUを受信した場合は、自動的にエッジポートの指定が解除され、通常のRSTPポートとして動作する。

RSTPはSTPとの互換性も保持しており、STPが動作するスイッチとRSTPが動作するスイッチが混在する環境でも動作可能である。しかし、互換性モードではSTPのタイマーベースの動作に引きずられる部分があるため、RSTPの真の高速性を最大限に引き出すためには、ネットワーク内の全てのスイッチをRSTPで動作させることが望ましい。

このように、RSTPはSTPが抱えていた収束時間の課題を解決し、ネットワークの可用性を高め、サービスの中断時間を最小限に抑える上で非常に重要なプロトコルである。現代のエンタープライズネットワークやデータセンターネットワークにおいて、RSTPは安定した高速通信を維持するための基盤技術として広く利用されている。

関連コンテンツ