データリンク層とは
OSI参照モデルの第2層。
同一ネットワーク内で、正確にデータを届けるための仕組みを担っています。
主なキーワードは「MACアドレス」「フレーム」「スイッチ」などです。
① MACアドレスとARPの仕組み
● MACアドレスとは?
- 機器を識別するための「物理アドレス」
- 48ビット(6バイト)で構成
- 前半24ビット:ベンダーコード
- 後半24ビット:シリアル番号
- 16進数で表記(例:
00-1A-2B-3C-4D-5E)
● ARPとは?
IPアドレスからMACアドレスを求めるプロトコル(Address Resolution Protocol)
ARPの基本フロー
- 送信先のMACアドレスがARPテーブルにあるか確認
- ない場合 → 同一ネットワークにARPリクエスト(ブロードキャスト)
「このIPアドレス、誰?」 - 対象の端末は**ARPリプライ(ユニキャスト)**で応答
「俺だよ!」 - 送信元はその情報をARPテーブルに登録
外部ネットワークとの通信時
- 宛先IPのサブネットマスクを確認し、外部ネットワークと判断
- デフォルトゲートウェイのMACアドレスをARPで取得
- 以降の転送はルーターがネットワーク部を基に中継
② イーサネット(Ethernet)
● フレームの構造(IEEE 802.3)
| 項目 | サイズ | 説明 |
|---|---|---|
| 宛先MACアドレス | 6バイト | 送り先の識別子 |
| 送信元MACアドレス | 6バイト | 送信元の識別子 |
| タイプ | 2バイト | 上位プロトコルを識別(IPv4など) |
| データ | 46〜1500バイト | 実際のデータ |
| FCS | 4バイト | フレーム誤り検出(Frame Check Sequence) |
CSMA/CD (Carrier Sense Multiple Access / Collision Detection)
初期のイーサネット(ハブを使用した環境など)で使われていたアクセス制御方式です。現在はスイッチングハブの普及によりあまり使われていません。
- キャリア感知 (Carrier Sense): 通信路の空きを確認します。
- 多重アクセス (Multiple Access): 複数のノードがアクセスできます。
- 衝突検出 (Collision Detection): 衝突が発生した場合に検出します。
- 動作の流れ:
- キャリア感知: 通信路が空いているかを確認します。
- 送信開始: データ転送を開始します。
- 衝突検出: 他のデータ転送と重なった(衝突した)ことを検出します。
- ジャム信号送出: 「衝突発生」の信号を全体に送ります。
- バックオフ(再送待ち): 各ノードがランダムな時間待ってから再送を行います。
③ スイッチの仕組み
● スイッチとは?
レイヤ2(データリンク層)の機器。
MACアドレスを基にフレームを転送します。
● 主な機能
- バッファリング(ストア&フォワード)
フレームを一時的に保管してから転送する。 - 全二重通信/半二重通信
- 全二重:送受信を同時に実行
- 半二重:送信か受信のどちらかのみ - MACアドレス学習
受信ポートと送信元MACを記録して、宛先ポートを学習。
宛先が不明な場合は**フラッディング(全ポート送信)**を行う。
| 機能 | 説明 |
| MACアドレス学習 | フレームの送信元MACアドレスを見て、どのポートにそのMACアドレスの機器が接続されているかを学習し、MACアドレステーブルに登録します。 |
| フラッディング | MACアドレステーブルに送信先MACアドレスがない場合、フレームを受信したポートを除く全ポートにフレームをブロードキャストして、宛先を探します。 |
| バッファリング | 伝送するフレームを一時的にスイッチ内で保管する機能です。この転送方式をストアアンドフォワードと呼びます。 |
| 全二重通信/半二重通信 | スイッチは基本的に全二重通信(送信・受信を同時に可能)で動作します。 |
● ハブとの違い
| 項目 | ハブ | スイッチ |
|---|---|---|
| 層 | 物理層(L1) | データリンク層(L2) |
| 転送方式 | 全ポートに送信 | MACアドレスで選別 |
| 通信 | 半二重 | 全二重 |
| コリジョンドメイン | 全体で1つ | ポートごとに独立 |
コリジョンドメイン:
- データの衝突が発生する範囲のこと。スイッチのポートは、それぞれが独立したコリジョンドメインを構成します。


コメント