STPパケットの中身
具体的に下記トポロジのSwitch1とSwitch3の間の通信においてどのようなSTPパケットが流れているか確認をします。

パケットキャプチャを取得して、上のフィールドから確認していきます。

| フィールド | バイト | 内容 |
|---|---|---|
| Protocol Identifier | 2 | プロトコル識別子で、RSTPとSTPの両方で共通。IEEE 802.1Dブリッジプロトコルを示します。 値 は0x0000になります。 |
| Protocol Version | 1 | プロトコルのバージョンを示します。STPのバージョン0x00使用されます。 |
| BPDU Type | 1 | BPDUのタイプを示します。通常0になります。 |
| BPDU flags | 1 | STPのフラグを示します。このフィールドには以下のようなビットフィールドが含まれます。 ◆Topology Change Acknowledgment:トポロジ変更確認を示すフラグ。 ◆Topology Change :トポロジ変更 を示すフラグ。 ※2bit〜7bit:未使用 |
| Root Identifier | 8 | ルートブリッジの識別子で、プライオリティとMACアドレスから構成されています。STP BPDUで伝達されるルート情報です。 |
| Root Path Cost | 4 | ルートブリッジへのパスコストを示します。この値は、BPDUを送信するブリッジがルート ブリッジに到達するための累積コストを示します。 |
| Bridge Identifier | 8 | BPDUを送信しているブリッジの識別子で、プライオリティとMACアドレスから構成されています。 |
| Port identifier | 2 | BPDUが送信されるポートの識別子です。ポートプライオリティとポート番号で構成されています。 |
| Message Age | 2 | BPDUがネットワーク内を通過する際に加算される時間。BPDUが生成されてからの経過時間 を秒で示します。 |
| Max Age | 2 | BPDUが有効とみなされる最大時間(秒単位)。この時間を超えると、BPDUは無効とみなさ れます。通常は20秒です。 |
| Hello Time | 2 | ブリッジがBPDUを送信する間隔(秒単位)。通常は2秒です。 |
| Forward Delay | 2 | ポートが学習状態またはリスニング状態に留まる時間(秒単位)。通常は15秒です。 |
| Originating VLAN (PVID) | 6 | トランクでは、PVST+ および Rapid-PVST+ BPDU は 802.1Q タグが付けられるだけでなく、 その最後には、この BPDU が生成された VLAN を伝送する特別な PVID TLV も付加されます。 この検出はアクセス ポートでは機能しません。アクセス ポートでは、Cisco は 802.1Q タグや PVID TLV なしで完全に標準の BPDU を送信します。 |
RSTPパケットの中身
具体的に下記トポロジのSwitch1とSwitch3の間の通信においてどのようなRSTPパケットが流れているか確認をします。

パケットキャプチャを取得して、上のフィールドから確認していきます。

| フィールド | バイト | 内容 |
|---|---|---|
| Protocol Identifier | 2 | プロトコル識別子で、RSTPとSTPの両方で共通。IEEE 802.1Dブリッジプロトコルを示します。 値 は0x0000になります。 |
| Protocol Version | 1 | プロトコルのバージョンを示します。RSTPでは、STPのバージョン0x00に対して、0x02が使用されます。 |
| BPDU Type | 1 | BPDUのタイプを示します。0x00はConfiguration BPDU、0x02はRSTP BPDUを示します。 |
| BPDU flags | 1 | RSTPのフラグを示します。このフィールドには以下のようなビットフィールドが含まれます。 ◆TCA:トポロジ変更の確認 (Topology Change Acknowledgment) を示すフラグ。 ◆Agreement:合意 (Agreement) を示すフラグ。RSTPでは、プロポーザル/アグリーメントの 仕組みで、迅速なネットワーク収束を可能にします。 ◆Forwarding:フォワーディング状態 (Forwarding State) を示すフラグ。 ◆Learning:学習状態 (Learning State) を示すフラグ。 ◆Port Role:ポートの役割 (Port Role) を示すビットフィールド (2ビット)。このフィールドは、 ポートが現在持っている役割を示します。ポートの役割には以下の種類があります ・ 0 Unknown ・1 Alternate/Backup Port(代替/バックアップポート) ・2 Root Port(ルートポート) ・3 Designated Port(指定ポート) 11: 不使用(Reserved) ◆Proposal:プロポーザル (Proposal) を示すフラグ。RSTPの速い収束を実現するためのプロポ ーザル/アグリーメントの仕組みの一部です。 ◆TC:トポロジ変更 (Topology Change) を示すフラグ。このフラグは、ネットワークトポロジに 変更が発生したことを示すために使用されます。 |
| Root Identifier | 8 | ルートブリッジの識別子で、プライオリティとMACアドレスから構成されています。RSTP BPDUで伝達されるルート情報です。 |
| Root Path Cost | 4 | ルートブリッジへのパスコストを示します。この値は、BPDUを送信するブリッジがルート ブリッジに到達するための累積コストを示します。 |
| Bridge Identifier | 8 | BPDUを送信しているブリッジの識別子で、自身のブリッジIDが入ります。 |
| Port identifier | 2 | BPDUが送信されるポートの識別子です。ポートプライオリティとポート番号で構成されています。 |
| Message Age | 2 | BPDUがネットワーク内を通過する際に加算される時間。BPDUが生成されてからの経過時間 を秒で示します。 |
| Max Age | 2 | BPDUが有効とみなされる最大時間(秒単位)。この時間を超えると、BPDUは無効とみなさ れます。通常は20秒です。 |
| Hello Time | 2 | ブリッジがBPDUを送信する間隔(秒単位)。通常は2秒です。 |
| Forward Delay | 2 | ポートが学習状態またはリスニング状態に留まる時間(秒単位)。通常は15秒です。 |
| Version 1 Length | 1 | RSTP BPDUのバージョン1フィールドの長さを示します。RSTPでは通常、長さは0です。 |
| Originating VLAN (PVID) | 6 | トランクでは、PVST+ および Rapid-PVST+ BPDU は 802.1Q タグが付けられるだけでなく、 その最後には、この BPDU が生成された VLAN を伝送する特別な PVID TLV も付加されます。 この検出はアクセス ポートでは機能しません。アクセス ポートでは、Cisco は 802.1Q タグや PVID TLV なしで完全に標準の BPDU を送信します。 |
STPでは未使用だったBPDU flagのフィールドにProposalやAgreementビットなどを使用することで高速コンバージェンスを実現しています。
MSTパケットの中身
具体的に下記トポロジのSwitch1とSwitch3の間の通信においてどのようなSTPパケットが流れているか確認をします。


CSTと接続用に使用される個所はバージョンが3になっていること以外はほとんどRSTPの中身と同じです。一番下にMST Extensionというフィールドが追加されています。

MST Extensionの中身はIST関連のフレームとMSTI関連のフレームで分かれています。
IST関連のフレーム
| フィールド | バイト | 内容 |
|---|---|---|
| MST Config ID format selector | 1 | MST(Multiple Spanning Tree)のバージョンやフォーマットを示すフィールド です。通常0。 |
| MST Config name | 32 | リージョン名。 |
| MST Config revision | 2 | MSTドメインの設定リビジョン番号 |
| MST Config digest | 16 | MSTインスタンス情報のハッシュ値です。MSTインスタンスのマッピング情報が 一致しているかを検証するために使用されます。 |
| CIST Internal Root Path Cost | 4 | CISTの内部のルートパスコストです。 |
| CIST Bridge Identifier | 8 | CISTのルートブリッジまたはルートスイッチを識別するための識別子です。 |
| CIST Remaining hops | 1 | CISTのルートスイッチまでの残りのホップ数を示します。 |
MSTI関連のフレーム(インスタンスの数だけこれが続きます)
| フィールド | バイト | 内容 |
|---|---|---|
| MSTI flags | 1 | ◆TCA:トポロジ変更の確認 (Topology Change Acknowledgment) を示すフラグ。 ◆Agreement:合意 (Agreement) を示すフラグ。。 ◆Forwarding:フォワーディング状態 (Forwarding State) を示すフラグ。 ◆Learning:学習状態 (Learning State) を示すフラグ。 ◆Port Role:ポートの役割 (Port Role) を示すビットフィールド (2ビット)。 このフィールドは、ポートが現在持っている役割を示します。 ポートの役割には以下の種類があります ・ 0 Unknown ・1 Alternate/Backup Port(代替/バックアップポート) ・2 Root Port(ルートポート) ・3 Designated Port(指定ポート) ・11: 不使用(Reserved) ◆Proposal:プロポーザル (Proposal) を示すフラグ。 ◆TC:トポロジ変更 (Topology Change) を示すフラグ。 |
| Regional Root | 8 | MSTリージョン内のルートブリッジを示す識別子 |
| Internal root path cost | 4 | MSTリージョン内のルートブリッジからこのスイッチまでの内部のルートパスコスト |
| Bridge Identifier Priority | 1 | 自身のISTルートのブリッジIDが入ります。 |
| Port identifier priority | 1 | ポートのプライオリティを示します。 |
| Remaining hops | 1 | MSTインスタンスにおけるルートブリッジまでの残りのホップ数 |