L2スイッチングの通信例
L2スイッチングの通信例
以下にL2スイッチがMACアドレスを学習し、イーサネットフレームを転送する様子を具体的な例を挙げて説明します。

例として、以下のようなL2スイッチを考えます。スイッチには4つのポート(ポートA、ポートB、ポートC、ポートD)があります。
初期状態では、MACアドレステーブルは空です。
- スイッチが起動し、イーサネットフレームがポートAに到着します。フレームの送信元MACアドレスは「00:11:22:33:44:55」、宛先MACアドレスは「AA:BB:CC:DD:EE:FF」とします。
- スイッチはフレームを受信し、送信元MACアドレス「00:11:22:33:44:55」を学習します。MACアドレステーブルに以下のエントリが追加されます。
00:11:22:33:44:55 -> Port A
- スイッチはMACアドレステーブルを参照し、宛先MACアドレス「AA:BB:CC:DD:EE:FF」に関連づけられたポートを探しますが、このMACアドレスはまだテーブルに登録されていません。
- スイッチは宛先MACアドレスがMACアドレステーブルにないため、フレームを除くすべてのポート(ポートB、ポートC、ポートD)にフラッディングします。つまり、フレームはポートB、ポートC、ポートDに転送されます。
- スイッチのポートBが宛先MACアドレス「AA:BB:CC:DD:EE:FF」を持つホストに接続されているとします。そのホストがフレームを受信し、ポートBからスイッチにフレームが戻ってきます。
- スイッチはフレームを受信し、送信元MACアドレス「AA:BB:CC:DD:EE:FF」を学習します。MACアドレステーブルに以下のエントリが追加されます。
AA:BB:CC:DD:EE:FF -> Port B
- 以降、同じ宛先MACアドレス「AA:BB:CC:DD:EE:FF」がフレームを送信するたびに、スイッチはMACアドレステーブルを参照し、関連づけられたポート(ポートB)にのみフレームを転送します。他のポートには転送しません。
- さらに別のホストからイーサネットフレームが送信されます。このフレームの送信元MACアドレスは「11:22:33:44:55:66」で、宛先MACアドレスは「AA:BB:CC:DD:EE:FF」とします。
- スイッチはフレームを受信し、送信元MACアドレス「11:22:33:44:55:66」を学習します。MACアドレステーブルに以下のエントリが追加されます。
11:22:33:44:55:66 -> Port C
- スイッチはMACアドレステーブルを参照し、宛先MACアドレス「AA:BB:CC:DD:EE:FF」に関連づけられたポートを探します。MACアドレステーブルにはエントリが存在するため、関連づけられたポートであるポートBにフレームを転送します。
このように、スイッチはイーサネットフレームを受信し、MACアドレステーブルを使用してフレームを正しいポートに転送します。MACアドレステーブルはフレームの転送パスを決定するための重要な要素であり、学習によってネットワーク内のホストとポートの関連性を動的に維持します。
ただし、MACアドレステーブルは限られた容量を持っているため、大規模なネットワークや高いトラフィック量の場合にはテーブルが満杯になる可能性があります。その場合、古いエントリが上書きされることがあります。また、ネットワーク上のホストが通信を再確立する場合には、スイッチが再度学習を行う必要があります。