🟠

【超図解】第2層 データリンク層とは?わかりやすく解説

2023/07/25に公開

はじめに

こんにちは!猿喰です。
この記事ではネットワークを理解していただくために、OSI参照モデルをレイヤーごとに詳しく説明しています。ターゲットとしてはITパスポート、基本情報技術者レベルの知識を身につけることとしています。
今回は第2層(レイヤ2)データリンク層の説明になります。
>>OSI参照モデルについて最初から見たい方は以下の記事から御覧ください 
https://zenn.dev/itpassport/articles/03bd090fa135ba

それでは参りましょう~。

データリンク層とは?

データリンク層の役割は、ケーブルで直に接続されている同一ネットワーク内で、正確なデータ伝送を実現することです。

この同一ネットワーク内で、データ転送をするときの宛先としては"MACアドレス"というものを使います。
第1層 物理層でも紹介しましたが、コンピュータにはMACアドレスという、世界で一意の番号が割り振られています。重複はありえません。

この図では4つのPCが真ん中の機器を挟んでLAN線で接続されています。
また、左上のPCが右下の11.22.33.44.55.66というMACアドレスをもつPCにデータを送ろうとしています。


左上のPCはデータリンク層で、送信データに対して宛先(MACアドレス情報)をくくりつけます。
この宛先付きのデータを第2層の呼び方で、フレームといい、宛先情報はフレームヘッダという場所に格納します。
では、フレームを右下のPC宛てに送信してみましょう。

ここで第1層 物理層の復習になりますが、LAN線に送り出すときは物理層の仕事により、電気信号に変換され、送信されていきます。
この図ではまず、真ん中の機械にフレームが届きます。

この真ん中の機械は、第2層に登場する機器で、L2スイッチ(ブリッジ)といいます。
この機器はMACアドレス情報をもとに経路を決めることができます。
ちなみにL2スイッチという名前の覚え方ですが、第2層、レイヤー2のデータリンク層で利用される機器なのでレイヤー2スイッチ、略してL2スイッチといいます。

それでは、話を戻して、データがL2スイッチに届いたときにどのような動きをしていくか説明していこうと思います。

まず、データがL2スイッチに届くと、電気信号をフレームに変換し、ヘッダから宛先のMACアドレスを確認します。
次に、このL2スイッチが持つ、MACアドレステーブルを参照して、どの経路に通すかを決めています。例えば、今回の例でいうと、フレームヘッダにある宛先を見てみると、11.22.33.44.55.66のMACアドレス宛になっています。
そのアドレスの宛先はL2スイッチのポート2に接続されているPCということがわかりますので、L2スイッチはポート2に接続されているLAN線に対してのみ、データを転送します。
そのため、このL2スイッチに接続されている他のPCにデータが届くことがありません。
これは物理層の時に紹介したリピータとの大きな違いです。
リピータは全ての接続ポートにデータを転送するのに比べ、こちらは必要なポートのみに転送するため、無駄なデータの衝突を防ぐことが可能です。
ちなみに、リピータという機器は現在ほとんど利用されておらず、リピータの機能をもったL2スイッチを利用することがほとんどです。
しかしながら、情報処理の試験では、リピータの機器の話がまだ出る可能性がありますので、覚えておいてください。

ちなみに、MACアドレスがテーブルに登録されていないときは、リピータ同様、すべてのポートへ転送します。
通信をしていく中で、学習し、MACアドレステーブルを作っていく、という流れです。

ここまでの説明でデータリンク層の通信の流れについて、説明しました。

データリンク層の代表的なプロトコル

それでは次にデータリンク層のプロトコルを紹介します。

レイヤ2のプロトコルとしては、イーサネットとトークンリングが有名です。
イーサネットは、現在もっとも普及しているレイヤ2(第二層)のプロトコルです。
プロトコルを理解するにはトポロジーとアクセス制御方式を知ることが重要です。
詳しく見ていきましょう。

まずトポロジーとはLANの接続形態のことを言います。
接続形態としては記載してるようにスター型、バス型、リング型があります。
スター型はハブを中心として放射状に各コンピュータを接続する形態です。
イーサネットで利用されています。

バス型は一本の基幹となるケーブルに各コンピュータを接続する形態です。
こちらもイーサネットで利用されています。

リング型はリング状に各コンピュータを接続する形態です。
トークンリングで利用されています。

また、アクセス制御方式とは、通信媒体上で生じる信号の衝突を回避するために、データリンク層における信号の伝達を制御する方法のことを言います。

CSMA/CD方式では、ネットワーク上の通信状況を監視して、他に送信を行っている筐体がない場合に限ってデータの送信を開始します。

それでも同時に送信してしまい、パケットの衝突(コリジョン)が発生することもあります。

パケットのコリジョンが発生した場合は、各々ランダムに求めた時間待機してから再度パケットの再送を行います。
これがCSMA/CD方式のアクセス制御です。


トークンパッシング方式では、トークンという送信の権利を表すデータがネットワーク上を一方通行でぐるぐる回っています。誰も送信の権利を利用していない状態のトークンを”フリートークン”といいます。
また、データを送信したい場合は、このトークンにデータをくっつけて送信します。
このデータくっついた状態のトークンをビジートークンといいます。

そして、リング型に繋がっているコンピュータは、トークンが回ってきたときに自分宛のパケット出ない場合は無視して次に流します。

自分宛ならデータを受け取り、受領のサインをつけて送信者に戻します。

そして元の送信者にビジートークンが戻ると、受領確認のサインを送信者は破棄してトークンをフリートークンに戻し、またネットワークに流します。
この一連の流れがトークンパッシング方式です。

ここで紹介したように、プロトコルによって、接続形態がどのようになるか、アクセス制御方式はどのようなやり方があるか、ということが決まっています。
ここはしっかり押さえておきましょう。
では第2層の説明はこれで終了します。

次は第3層 ネットワーク層のプロトコルと役割を見ていきましょう~!
https://zenn.dev/itpassport/articles/5944d5bd936228

おわりに

これらのIT知識を動画でも説明してます。
動画のほうがいい方、最低限のIT知識をがっちり取得したい方は以下からどうぞ。
おかげさまで数万人に受講してもらってます。
※期間限定で86%OFFクーポンリンクを貼っておきます~

Discussion