OSI参照モデル


🐯 概要

OSI参照モデルとはコンピュータがもつべき通信機能を階層構造に分割したモデルです。

  • 第7層アプリケーション層
    • システム上のプロセスにとって、システム間の通信機能のエントリポイントとなる層
  • 第6層プレゼンテーション層
    • アプリケーション層とのデータ交換について、統一的なデータ表現形式を提供する
  • 第5層セッション層
    • プレゼンテーション層とのデータ交換について、データの編成、到着順序の保証、データ送受信タイミングの同期等の機能を提供する
  • 第4層トランスポート層
    • セッション層に対して、対抗するセッション層とのデータ交換を透過的に見せる機能を提供する
  • 第3層ネットワーク層
    • トランスポート層に対して、「コネクション指向データ転送、非コネクション指向データ転送」の機能を提供する
  • 第2層データリンク層
    • 物理層と協調して、ネットワーク層に対してデータ転送やデータ誤り訂正などの機能を提供する
  • 第1層物理層
    • 通信ハードウェアおよび、その物理的・電気的特性を示す層である

🗻 データリンク層

データリンクの種類

データリンクの種類には次のようなものがある。



出典:はじめてUNIXで仕事をする人が読む本

リンク上に複数のノードの中で、正しい相手と送受信するための制御をメディアアクセス制御MAC(Media Access Control)という。
Ethernetで使われるCSMA/CDや、無線LANなどで使われるCSMA/CA、トークンパッシングなどがあります。

データリンク層の機能

データ転送

ビット、バイト、フレームといった転送単位や伝送速度、エンコードルールなどが決まっていて、送信したデータを受信側がきちんと受け取れるようにします。

衝突回避

多数の機器が同一の物理メディアを共用して通信を行う場合がある。そのときに同時送信による衝突を回避します。

誤り検出/訂正

冗長符号などによって受け取ったデータが正しいことを確認、誤りのあるデータを破棄、もしくは受信側で誤り訂正を行います。

フロー制御

送信データが受信側機器の能力を超えて送られ、とりこぼすのを防ぐためにデータ送信を遅らせたり、一時的にやめてもらう要求を行います。

🐹 参考リンク

📚 おすすめの書籍

🖥 サーバについて

このブログでは「Cloud Garage」さんのDev Assist Program(開発者向けインスタンス無償提供制度)でお借りしたサーバで技術検証しています。 Dev Assist Programは、開発者や開発コミュニティ、スタートアップ企業の方が1GBメモリのインスタンス3台を1年間無料で借りれる心強い制度です!(有償でも1,480円/月と格安)