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