イーサネットの受信基本動作を以下で説明します
基本的に、『送信されたフレームは、接続されるマシン全てに届く』という理屈が根底にあります。
各マシンでは、フレーム内のあて先MACアドレスが、自分のMACアドレスと一致するかを調べます。
そして、自身宛てのMACアドレスを持つフレームだけ取り込んで使います。
一致しない他人宛のフレームに対しては、無視してなにもしません。
以下にそのイメージを示します。
次のムービーが示すようにすべてのマシンがこのフレームを取り込みます。
(取り込まないとフレーム内のMACアドレスを調べることができません。)
各マシンでは、フレーム内のあて先MACアドレスが、
自分のMACアドレスと一致するかを調べます。
一致しない他人宛のフレームに対しては、無視してなにもしません。
あて先MACアドレスが自分宛のフレームと一致する場合だけ、
MACヘッダーを取り外した情報(パケット)を、IPを処理するネットワーク層で使うことになります。
(一致する場合はネットワーク層で、
IPヘッダーをもとにして分割データならもとデータに復元され、
それが上位層などに渡され、対応したプロトコル(TCP、UDP、ICMP)応じた処理がなされます。)
この送信されてくるイーサーネットのフレームイメージは次の通りです。
(正確には、DIXイーサネットと呼ばれるフレームです。他のもう一種で、IEEE802.3イーサネットがあります。)
プリアンプル8byte | あて先MACアドレス6yte | 送信元MACアドレス6yte | タイプ2yte | データ46〜1500byte | FCS 4byte |
なお、上記のようなリピータHUBで接続するイーサーネットでは、
一本のケーブルに複数のフレームを
同時に流せません。
複数の信号が衝突すると、信号が壊れるからです。
(→半二重通信方式と呼ばれます)
そこで、この衝突を防ぐためにCSMA/CDと言う
手法が使われています。
(CSMA/CDは、Carrier Sense Multiple Access with Collision Detectionの略です。 )