連載
» 2019年11月25日 06時00分 公開

はじめての車載イーサネット(3):なぜMACアドレスとIPアドレスがあるのか? その違いは? (2/4)

[中村伸彦(ベクター・ジャパン),MONOist]

スイッチによる転送

 さて、前回トポロジーのところで触れましたが、現在のイーサネットはスイッチを経由してつながるスイッチ型トポロジーです。スイッチ(※4)とは複数のイーサネット接続を持ち、それぞれから送られてくるイーサネットフレームのMACアドレスを解析し、適切な相手に転送する機能を持っています。スイッチの持つ接続の口のことをポートと呼びます。なお、このようにMACアドレスを基にイーサネットフレーム(レイヤー2PDU)を振り分けるので、ここでのスイッチはレイヤー2スイッチ(※5)と呼ばれることもあります。各ポートにどのMACアドレスを持つノードがつながっているかを動的に学習していきます。また接続を静的に設定する機能を持つものもあります。

(※4)皆さまのオフィスにもあるイーサネットコネクター(RJ45)が複数接続できるようになっている装置です。
(※5)「スイッチングハブ」と呼ばれることもあります。なお、MACアドレスを見ることなく全てのポートに無条件にイーサネットフレームを転送するものを「リピータハブ」と呼びます。

フラッディング

 とはいえ、立ち上がったばかりのスイッチは、どのポートにどのMACアドレスを持つノードがつながっているは、分かりません。そのため、次に示すようなイーサネットフレームのやりとりを通して、徐々に学習していきます。

  1. ポートからイーサネットフレームを受信すると、そのフレームのSAをそのポートにつながるノードのMACアドレスとしてMACアドレステーブルに登録します
  2. 同時にDAを解析し、そのアドレスを持つポートがあればそこに転送しますが、そうでない(送信先不明の)場合には、受信ポート以外の全てのポートに転送します。この動きをフラッディングといいます
  3. フラッディングによって転送されたフレームは、各ノードに届きますが、ここでDAが各ノードのMACアドレスに一致しなかった場合には、そこで破棄されます。一方、一致した場合には受け入れられ、何らかの応答が送り返されます
  4. スイッチは、1の時と同様に送り返されたフレームを受信したポートに、そのフレームのSAをそこにつながるノードのMACアドレスとして登録、DAを解析し1で登録したポートに転送します
  5. この1〜4を繰り返し、ポートとMACアドレスの関係を全て把握していきます

 この学習の結果により、スムーズなイーサネットフレームの転送が実現されているのですが、実はこれには弱点があります。それは、スイッチが扱うMACアドレステーブルに登録できる数が限られており、また一定時間がたつとMACアドレステーブルから登録が削除されるという(※6)点です。

(※6)継続的に通信を行っていれば削除されません。

 図3-1と図3-2に示したような小さなネットワークであれば、全てを登録できるかもしれませんが、ネットワークにつながるスイッチが増えていけば、新たなMACアドレスを持つイーサネットフレームが増えますので、そのうちMACアドレステーブルに登録できなくなり、フラッディングによる無用なトラフィックが発生し、通信の効率が極端に低下してしまいます。つまり、スイッチだけで構成されたネットワークを無制限に大きくすることは現実的ではないということです。

図3-1 送信先が不明な場合に受信ポート以外の全てのポートに転送する動きをフラッディングという(クリックして拡大) 出典:ベクター
図3-2 宛先が分かる場合には特定のポートに転送する(クリックして拡大) 出典:ベクター

VLAN(Virtual LAN)

 VLAN(Virtual LAN)は、スイッチで構成されたネットワーク内に論理的な壁を立てるための仕組みです。ブロードキャストで送信されたフレームはVLANの範囲外には届けられません。トラフィック制御やセキュリティの観点で導入されることがあります。1つのスイッチだけでできているネットワークであればスイッチのポートにVLANを設定するだけで済みますが、スイッチをまたがるVLANの場合にはVLANタグを追加することで、そのイーサネットフレームがどのVLANに属するかを、受け取るスイッチに示します。VLANタグは通常スイッチが扱うので、各ノードでは気にすることはありません(図4-1、図4-2、図4-3参照)。

図4-1 VLAN ID1、2を設定するイメージ(左)
図4-2 VLANタグを追加することで、スイッチをまたがるVLANを設定できる(右)(クリックして拡大) 出典:ベクター
図4-3 VLAN付きイーサネットフレームの構造(クリックして拡大) 出典:ベクター

Copyright © ITmedia, Inc. All Rights Reserved.