カットスルー スイッチングでは、データを受信するとすぐに、たとえ送信が完了していなくても、スイッチはそのデータに対処します。 スイッチは、データの転送先ポートを判断できるように、宛先 MAC アドレスを読み取るのに十分なだけのフレームをバッファします。 宛先 MAC アドレスは、プリアンブルに従ってフレームの最初の 6 バイトに配置されています。 スイッチは、スイッチング テーブルの宛先 MAC アドレスを参照し、発信インターフェイス ポートを確認して、フレームを指定のスイッチ ポート経由で宛先に転送します。 スイッチは、このフレームに対して一切のエラー チェックを実行しません。 スイッチはフレーム全体が完全にバッファされるのを待つ必要がなく、エラー チェックも実行しないため、カットスルー スイッチングはストア アンド フォワード スイッチングよりも高速です。 ただし、スイッチはエラー チェックを実行しないため、破損したフレームもネットワーク全体に転送されます。 破損したフレームは転送されている間に帯域幅を消費します。 最終的に、破損したフレームは宛先の NIC によって廃棄されます。
アニメーションを再生してカットスルー スイッチングのプロセスを確認してください。
カットスルー スイッチングには次の 2 つのバリエーションがあります。
- ファスト フォワード スイッチング:ファスト フォワード スイッチングは遅延を低いレベルに抑えます。 ファスト フォワード スイッチングでは、宛先アドレスの読み取り後、ただちにパケットを転送します。 パケット全体を受信する前に転送を開始するので、パケットがエラーを含んだまま中継されることがあります。 この状況が発生することはめったにありません。宛先のネットワーク アダプタは、欠陥のあるパケットを受け取った場合、廃棄します。 ファスト フォワード モードでは、最初のビットの受信から最初のビットの送信までが遅延として測定されます。 ファスト フォワード スイッチは、カットスルー方式のスイッチングとして一般的なものです。
- フラグメント フリー スイッチング:フラグメント フリー スイッチングでは、スイッチが転送前にフレームの最初の 64 バイトを保存します。 フラグメント フリー スイッチングは、ストア アンド フォワード スイッチングとファスト フォワード スイッチングの中間的なものと見なせます。 フラグメント フリー スイッチングがフレームの最初の 64 バイトのみを保存するのは、ほとんどのネットワーク エラーおよびコリジョンが最初の 64 バイトで発生するからです。 フラグメント フリー スイッチングでは、フレームを転送する前にコリジョンが発生していないことを確認するためにフレームの最初の 64 バイトに対して簡単なエラー チェックを実行することで、ファスト フォワード スイッチングの機能強化を図っています。 フラグメント フリー スイッチングは、遅延は大きいが整合性の高いストア アンド フォワード スイッチングと、整合性は低下するが遅延の小さいファスト フォワード スイッチングの中間的なものです。
図に、カットスルー スイッチングの例を示します。
一部のスイッチは、ユーザが定義したエラー率のしきい値に達するまでは、ポート単位のカットスルー スイッチングを実行するように設定されており、しきい値に達した後はストア アンド フォワードに自動的に変更します。 エラー率がしきい値を下回ると、ポートはカットスルー スイッチングに自動的に戻ります。