ループバックネットワーク、またはSTPが必要な理由

問題の本質



ネットワークスイッチ(別名スイッチ)の寿命の目的は、送信者から受信者にパケットを絶えず転送することです。 作業を最適化するために、スイッチにはいわゆるスイッチが含まれています。 パケットを受信したデバイスのアドレスと、これらのパケットを受信した物理ポート番号を含むCAMテーブル。



言い換えると、スイッチが最近コンピュータAからポート1にパケットを受信した場合、「comp。 ”->”ポート1、およびコンピューターA宛てのパケットはポート1にのみ自動的に転送れ、他のどこにも転送されないため、ネットワーク帯域幅が節約され、パッシブトラフィックインターセプターが無効になります。



しかし、ブロードキャストパケットが到着した場合、スイッチは何をすべきでしょうか?

これらのパケットは、最初に受信された場所を除き、すべてのポートに転送れると想定するのが論理的です。

特定のネットワーク構成では、非常に悲しい結果につながる可能性があります...



システム内で閉ループが形成されるように、いくつかのスイッチが接続されているとします。



画像



クラウドのスイッチ1がブロードキャストパケットを受信するとどうなりますか? それを伝播し、ポート1、2、および3に送信します(パケットはポート4から来たため、返信されません)。 ポート2でパケットを受信したスイッチ2は、ポート1および3にパケットのコピーを送信します。ポート1でパケットを受信したスイッチ3は、ポート2および3にパケットのコピーを送信します。その後、デバイスからデバイスに転送されるコピーは、利用可能な帯域幅全体を占めるまで(または操作性を失う前にデバイスの脳を打ち負かすまで)同じスキームに従ってますます増加します。



しかし、同時に、ネットワークで「ループ」なしで行うことは絶対に不可能です。なぜなら、フォールトトレランスは優れたネットワークの最も重要な特性だからです。 つまり、2つの重要なネットワークノード(通常のユーザーのコンピューターは考慮していません)の間には、チャネルまたは中間デバイスに障害が発生した場合に複数の物理パスが必要です。 そして、それはループを意味します。



救助へのSTP



上記の「ブロードキャストストーム」の問題は、スイッチでSTPプロトコル(またはその拡張機能の1つ)を起動することで解決されます。



スパニングツリープロトコル、または拡張ツリープロトコルは、ネットワークを「ツリーのような」外観に導きます。ルートと「ブランチ」がそこから成長します。 スイッチの1つが「ルート」(ルートブリッジ)になり、他のすべてのスイッチは、この機能を持つすべてのポートのルートに到達する「コスト」を計算し(つまり、実際には遠くのどこかにループバックします)、 無効にしますすべての最適でないリンク。 したがって、「ループ」を壊します。 将来、ネットワーク障害が発生し、「ルート」が動作中のポートを介して突然到達不能になった場合、以前にブロックされたポートの最高のものがオンになり、通信が復元されます。



そして今、より詳細に


STPの主な「主力製品」は、BPDUと呼ばれるブリッジプロトコルデータユニットです。 これらはパケットです-「プローブ」、スイッチによって送信され、自身に含まれています:

1)ルートスイッチ識別子(ルートID)。

2)パケットを形成したスイッチの識別子(ブリッジID)。

3)2番目から1番目までのパスのコスト(コスト)。

4)BPDUがルート化されたポート。



ネットワークの電源が入ったばかりだとします。 スイッチは互いについて何も知りません。 お互いを見つけて、誰がツリーの「ルート」になるかを選択する必要があります。 スイッチは一緒にすべてのBPDUポートに注ぎ始めます。ここで、スイッチは愛する人の「ルート」を示します(ルートID =ブリッジID)。



STPは、2バイトの優先度(デフォルトは32768)とスイッチのMACアドレスの2つの部分で構成される最小のブリッジIDで「ルート選択」スイッチを獲得するように機能します。 したがって、設定が行われず、全員が同じ優先順位を持っている場合、最小のMACアドレスを持つスイッチが優先されます。 これが組織内で最も古い(そしておそらく最もパフォーマンスの低い)スイッチになる可能性が非常にゼロではないため、論理的な結果が得られます。 優先順位を設定してください!



そのため、IDが最小のスイッチは、受け入れられた同志BPDUを無視し、回線を曲げ続けます。最初のBPDUとまったく同じように、2秒ごとにBPDUを送信します。 彼はトポロジの「ルート」であり、ポートを切断しません。

しかし、残りは、自分のブリッジIDよりも小さいルートID値を持つBPDUを受信したため、「ルート」がどこかにあることを理解しています。 BPDUの送信を停止します。 これ以降、彼らは単に「ルート」スイッチのBPDUをリレーし、ブリッジIDを置き換え、「ルート」に到達する「コスト」を再カウントします(受信したBPDUのシェアに追加します)。



値の値は、BPDUの送信元のインターフェイスの速度のみに依存し、 たとえばここで興味のある人が見ることができます



最もコストの高いルートBPDUが取得されたポートルートポートと呼ばれ、常に機能します。 最悪のコストのルートBPDUが取得されるポートは、明らかにループを引き起こしますが、これは取り除く必要があります。 このようなリンクは、ブリッジIDが低いスイッチによってブロックされます。 しかし、障害が発生した場合にそれらを復活させる必要があるため、完全にブロックされるわけではありません。 そのようなリンクのBPDUは、引き続き送受信されます。

ブリッジIDが両方のパケットで同じ場合(たとえば、スイッチが複数のケーブルで接続されている場合)、送信ポート番号が小さい方が勝ちます(Fa0 / 1がFa0 / 2に勝ちます)。



ポートの種類


802.1d標準で定義されているクラシックSTPでは、ポートは次のようになります。



1)ルートポート-ルートにつながり、兄弟の中で最もコストが低く、含まれています。

2)指定ポート-「ルート」ではなく、一部のネットワークセグメントに接続します。

明らかな理由により、「ルート」スイッチには単一のルートポートがありません。 すべてのポートが指定されています。

3)ブロックされたポート-ルートにつながり、最適なパスコストがあります。 BPDUを除くすべてのトラフィックに対してブロックされます。 一方、このリンクには機能する指定ポートがあります。



状態と遷移


しかし、最も興味深いのはポートの状態です。 上記で、私はそれらを2だけで分割しました-それは動作するか、ブロックされます。 実際、STPの作業は瞬時のものではないという単純な理由で、時間がかかります。 そして、ネットワークに嵐を引き起こすことは非常に速いビジネスです。 したがって、ポートは「回避する」、いわば、プロセスの状態のチェーンを通過します。



1)リスニング-ポートがオンになりました(ケーブルが詰まっている/電源が入っています)。

トラフィックを送信するのは怖いです-ループの場合はどうなりますか? したがって、 BPDU以外のトラフィックは送信されません。 ルートを探していますが、どのポートが機能するのか疑問に思っています。

期間-デ​​フォルトでは15秒。スイッチのダイオードがオレンジ色に点滅します。

2)学習

トラフィックを送信するのはまだ怖いですが、スイッチはすでにBPDUに加えてパケットを受け入れており、CAMテーブルのMACアドレスを記憶しています。

期間はデフォルトで15秒です。

3)転送

ランプは明るい緑色で点滅し、ポートは動作してデータを送信しています。

4)ブロック/無効

まあ、すべてが名前で明確です。 ループを作成しないようにリンクを無効にする必要があったか、ポートが管理上無効になりました。



ポートがオンになってからデータ転送が開始されるまで、最低30秒が経過することに注意してください。 高速読み込みのコンピュータの場合(またはIP電話ポートに接続されている場合)、これにより問題が発生する可能性があります。 (portfastモードを有効にすることで完了しましたが、これは別の会話のトピックです。)



ネットワーク障害が発生した場合、BPDUが使用されていた場所で、使用が停止します。 そして、ブロックされたポートは、タイムアウト(20秒)を待ってから最適なBPDUを受信し、指定モードに切り替えられ、リスニング-ラーニング-転送状態チェーン(+30秒)を通過します。

したがって、ネットワークの健全性の復元には最大50秒かかります。 ただし、これは一般的な障害後の動作不能よりもはるかに優れていることを認める必要があります。



そして最後に



その後、私が言及した(ネットワークの回復が遅い)STPの短所は、プロトコルの拡張によって解決されました。

それらを簡単に検討してください。



1)RSTP(高速、高速)



障害の発生したルートポート(「最高」の2位)の交換候補をメモリに保存し、すべてのタイマーを待たずに非常に迅速に切り替えることができます。 ルートポートで3つのBPDUが連続して取得されませんでしたか? あまり考えずに切り替えます。



2)PVST +(VLANごと、VLAN)



リンク全体をブロックする理由 リソースの無駄遣い! 各VLANの独立したSTPトポロジを計算してみましょう。 したがって、1つのVLANについては、いくつかのリンクがブロックされ、別のリンクについては他のリンクがブロックされます。 法律は尊重され、利益は確実です。 同時に、VLAN番号は送信されたBPDUに優先的に保存されます。 12個の下位ビットがVLAN番号に割り当てられ、4個の上位ビットのうち、実際に優先順位が形成されます(この状況では、4096単位で16の正当な値しかありません)。 したがって、VLAN 3のデフォルトの優先度フィールドは32768 + 3 = 32771になります。



3)Rapid PVST



シスコ独自の、最初の2つのプロパティを組み合わせます。



4)MSTP(複数)



PVST +は間違いなく優れていますが、9000を超えるVLANがある場合はどうでしょうか。 各トポロジのトポロジを誤って計算すると、プロセッサに大きな負荷がかかる可能性があります。 また、受信した各トポロジの微調整に関与していない場合は必要ですか? MSTを使用すると、いわゆるVLANをグループ化できます。 インスタンス(セット)、これらのより大きなフォーメーションのトポロジを既に計算しています。



執筆中


ウィキペディアと頭のCCNAコースの残りの知識が使用されました。






All Articles