レイヤ2スイッチの転送方式
レイヤ2スイッチでイーサネットフレームを転送する際に、転送の判断をどの時点で行うかによって3つの方式があります。
- ストア&フォワード
- カットスルー
- フラグメントフリー
ストア&フォワード
ストア&フォワード方式はいったんフレームを全部読み込みます。フレームの最後にはFCSフィールドがあるので、FCSチェックを行いフレームのエラーチェックを行います。そのあと、MACアドレステーブルとフレームの送信先MACアドレスから転送するポートを判断して、実際にフレームを転送します。
カットスルー
カット&スルー方式は、フレームの先頭6バイトのみを読み込みます。フレームの先頭6バイトは送信先MACアドレスです。送信先MACアドレスがわかれば、MACアドレステーブルから転送するポートを判断することができるので、この時点ですぐにフレームを転送します。もしも、MACアドレステーブルにエントリがない状態ならば、フレームをすべて読み込んだあと、FCSチェックを行いエラーが発生していないフレームをフラッディングします。先頭の6バイトだけを読み込んでからすぐに転送するので、ストア&フォワード方式に比べると、フレームを早く処理することができます。その反面、FCSチェックを行わないので、もしエラーが発生したフレームでもそのまま転送してしまうという欠点があります。
フラグメントフリー
フラグメントフリー方式は、以上2つの転送方式の長所をあわせたような転送方式です。つまり、エラーチェックを行いながらある程度の処理速度を確保することができる転送方式です。フラグメントフリー方式では、フレームの最初から64バイトを読み込んだ時点で、MACアドレステーブルから転送先のポートを判断して、転送処理を開始します。イーサネットのフレームは、衝突を正確に検出するために最低64バイトのフレーム長が規定されています。衝突が起こったフレームは通常は、64バイト未満になっています。そのため、先頭から64バイト読み込むことによって、そのフレームが衝突によって壊れたフレームでないということがわかります。
