データリンク層:ネットワーク通信の土台
コンピューターネットワークにおいて、データの信頼性の高い送受信を支える重要な役割を担うのがデータ
リンク層です。
OSI参照モデルでは第2層、TCP/IPモデルでは
リンク層に相当し、
物理層と
ネットワーク層の間に位置することで、物理的な伝送と論理的なネットワーク接続を繋ぎます。
データ
リンク層の主な役割は、隣接するノード間での信頼性の高い
データ転送を実現することです。具体的には、以下の機能を提供します。
データの送受信:
物理層を通じて、隣接ノードとの間でデータパケット(フレーム)の送受信を行います。ワイドエリアネットワーク(WAN)では離れたノード間、ローカルエリアネットワーク(LAN)では同一セグメント内のノード間での通信を担います。
エラー検出と訂正:
物理層で発生する伝送エラーを検出し、可能な限り訂正します。エラー検出には、フレームチェックシーケンス(FCS)などの技術が用いられます。エラー訂正ができない場合は、上位層にエラーを通知します。
フロー制御: 送信側と受信側の速度差によってデータが送受信できない状況を避けるため、データの送信速度を調整します。受信側の処理能力を超えないよう、適切にデータを送信することで、ネットワーク全体の効率を向上させます。
アクセス制御: 複数のノードが同時に同じ通信回線を使用する場合、データの衝突を防ぐためのアクセス制御を行います。
イーサネットなどでは、
CSMA/CD|CSMA_CDなどの手法を用いて、ノード間のアクセスを制御します。
データリンクプロトコル
データ
リンク層では、様々なプロトコルが利用されます。代表的なものとして以下が挙げられます。
イーサネット: LANで広く利用されているプロトコル。
CSMA/CD|CSMA_CDを用いたアクセス制御を採用しています。
PPP (Point-to-Point Protocol): 2点間の通信に用いられるプロトコル。モデム接続などに使われます。
HDLC (High-Level Data Link Control): WANなど、様々な環境で使用される汎用的なプロトコルです。
ADCCP (Advanced Data Communication Control Procedure): IBMが開発したプロトコル。
MAC層とLLC層
IEEE 802規格に準拠したネットワークでは、データ
リンク層はさらに2つの副層に分割されます。
MAC (Media Access Control)層: 物理的な媒体へのアクセス制御を担当します。具体的なアクセス方法(
CSMA/CD|CSMA_CDなど)や、物理アドレス(MACアドレス)の管理を行います。人間の会話に例えると、誰がいつ発言するかを調整する役割です。
LLC (Logical Link Control)層: 論理的なリンク制御を担当します。上位層のプロトコルとのインタフェース、
フロー制御、エラー制御などを実行します。これは、会話の内容を理解し、適切にやり取りする役割に例えられます。
LLC層は、MAC層とは独立して動作するため、異なるMAC層を持つネットワークでも、LLC層を介して通信することができます。
データリンク層とソフトウェア
データ
リンク層は、
オペレーティングシステム(OS)内のネットワークドライバとして実装されることが多いです。OSは、データ
リンク層と上位層(
ネットワーク層など)との間でデータのやり取りを行うためのインターフェース(ODI、NDIS、SANA IIなど)を提供しています。
まとめ
データ
リンク層は、
物理層と
ネットワーク層をつなぐ重要な層であり、信頼性の高い
データ転送を実現するために様々な機能を提供しています。ネットワーク通信を理解する上で、データ
リンク層の役割を理解することは不可欠です。様々なプロトコルや、MAC層とLLC層の機能を理解することで、ネットワークの仕組みをより深く理解することができるでしょう。