
こんにちは!
資格試験好き会社員のナガです
今回は、OSI参照モデルのデータリンク層のプロトコル「イーサネット」について紹介します!
・ネットワークスペシャリスト試験の合格を目指している
そんな方のお役に立つ記事となっておりますのでぜひご覧ください!
・OSI参照モデルって何?
・データリンク層って何?
・プロトコルって何?
という方はこちらの記事を先にご確認ください。


OSI参照モデルのデータリンク層のプロトコル
OSI参照モデルのデータリンク層では、
隣接するノードと通信を行うためのプロトコルが定義されています。
ノードとはネットワークに接続されている機器のことです。



あなたが使用している
PCやスマートフォンをイメージしてもらえればOKです
隣接するノードとは、同じネットワークに属するノードのことです。
例えば、あなたの職場のPCをイメージしてみてください。
あなたのPCと、あなたの隣の席のAさんのPCは
同じネットワークに属するため隣接するノードとなります。
同じネットワークのことをLAN(ローカルエリアネットワーク)といいます
一方、取引先企業のBさんのPCはどうでしょうか?
取引先企業は、あなたの職場とは別のネットワーク(LAN)を構築しています。
そのため、あなたの職場のPCと取引先企業のBさんのPCは隣接するノードとはいえません。
OSI参照モデルのデータリンク層のプロトコルを使用することで、
隣接するノードとの通信を行うことができます。
隣接しないノード(ネットワークが異なるノード)との通信を行うためには
データリンク層のプロトコルだけでは力不足なため、ネットワーク層のプロトコルの力を借りないといけません。
ネットワーク層のプロトコルについてはまた別の記事でご説明いたします。
イーサネット
イーサネットはデータリンク層の代表的なプロトコルです。
イーサネットを使用することで隣接するノードとの通信を行うことができます。
OSI参照モデルのデータリンク層のプロトコルには、他に「ATM」や「FDDI」などもあります。
しかし、現在はほとんどのケースでイーサネットが使われているためイーサネットを押さえておきましょう。
イーサネットは、使用するケーブルや通信速度によっていくつかの規格に分類されます。
イーサネットは有線接続で通信する際のプロトコルです。
そのためケーブルの規格が定められています。このケーブルは一般にLANケーブルと呼ばれています。
※無線接続で通信する際はまた別のプロトコルが使用されます。
IEEE 802.11シリーズ≒Wi-Fi(ワイファイ)と呼ばれるものです。
100Mbpsの通信速度で通信ができるイーサネットを「ファストイーサネット」
1Gbpsの通信速度で通信ができるイーサネットを「ギガビットイーサネット」と呼びます。
ノードのLANケーブルの差込口(「イーサネットインターフェース」と呼ばれます)には「MACアドレス」と呼ばれる固有のアドレスが割り当てられています。




MACアドレスはネットワーク上の住所のことで、
MACアドレスを参照することで通信相手を識別することができます。
MACアドレスについてはこちらの記事をご確認ください。


イーサネットヘッダとFCS
イーサネットでは、
送信したいデータに宛先MACアドレスと送信元MACアドレスをくっつけて送信することで、
「誰に」「誰が」データを送信したかが分かるようになっています。
このデータにくっつける情報を「イーサネットヘッダ」と呼びます。



荷物を送る時と同じイメージです
荷物(データ)に送り主の住所と配送先の住所を記載した荷札(イーサネットヘッダ)を張り付けるイメージです
イーサネットヘッダの構成は下の図のようになっています。


順にみていきましょう。
宛先MACアドレス
データの送り先のノードのMACアドレスが設定されます。
送信元MACアドレス
データを送信するノードのMACアドレスが設定されます。
タイプ部
データリンク層の一つ上の層であるネットワーク層で使用するプロトコルを表す数値が設定されます。
例えば、 「0x0800」 は「IP」というプロトコルを表しています。
※「0x」は次につづく数値が16進数であることを表す記号です。


ノードがデータを受信したとき、
OSI参照モデルの下位の層から上位の層に向けて”非カプセル化”の処理を行います。
“非カプセル化”の詳細はこちらの記事をご確認ください。


この”非カプセル化”の処理をデータリンク層の「イーサネット」が行うとき、
「イーサネットヘッダ」の「タイプ部」の値を参照して、
上位のネットーワーク層のどのプロトコルにデータを渡せばよいか判断します。
タイプ部の数値が、
「0x0800」ならネットワーク層のプロトコル「IP」にデータを渡します。
データを受信したノードは、イーサネットヘッダの宛先MACアドレスを確認して、
自身のMACアドレス宛であればデータを受信し、そうでなければデータを破棄するようになっています。



自分宛ての荷物(データ)なら受け取るけど、
自分宛ての荷物(データ)でなければ捨てちゃいます
ワイルドですね…
FCS
イーサネットでは「データ」の後ろに「FCS」(フレームチェックシーケンス)という
送信エラーをチェックするための値をセットするようになっています。
「後ろ」にくっつけるのでFCSはイーサネットヘッダ(ヘッダ=頭)ではありません
「FCS」は「イーサネットヘッダ」と「データ」の値から特定の計算をして求めた値です。
「イーサネットヘッダ」と「データ」 の値(内容)が1ビットでも変わると、計算される「FCS」の値も異なります。
データを受信したノードは、
「イーサネットヘッダ」と「データ」から自分自身で計算した「FCS」と、
受信した「データ」の後ろにくっついている「FCS」を比較し、一致していなければデータを破棄するようになっています。
「FCS」が一致しないということはデータが到着するまでの間に、
電波の干渉などを受けて壊れてしまっていることを意味しています。
そういったデータを受信しないようにするために「FCS」を利用しているのです。
イーサネットで送ることができるデータのサイズは1500バイトまで
イーサネットでは送ることができる「データ」のサイズは1500バイトと決まっています。
これをMTU(MaximumTransmissionUnit、最大転送サイズ)といいます
イーサネットのMTUは1500バイトです
1500バイトより大きなデータを送信したい場合は、
送信時に1500バイト以下になるようにデータを分割してから別々に送信し、
受信時に分割されて送られてきたデータをもとの形に結合して戻す必要があります。
イーサネットには、上記のような、データを分割して送信したり、
受信時に分割されたデータをもとに戻したりする機能はありません。
分割と結合の処理を行うためにはデータリンク層の一つ上の層であるネットワーク層のプロトコルの力を借りないといけません。
ネットワーク層のプロトコルについてはまた別の記事でご説明いたします。
さいごに
今回は、イーサネットについてご紹介しました。
ネットワークスペシャリスト試験の勉強をされている方はぜひ押さえておきましょう!


コメント