OSI基本参照モデルとTCP/IP -情報処理シンプルまとめ

OSI基本参照モデルとTCP/IPに関するブログのアイキャッチ画像 ネットワーク

 基本情報技術者試験など情報処理技術者試験を受験する方にとっては必須の,OSI基本参照モデルとTCP/IPについてシンプルにまとめています。OSI基本参照モデルについては,層(レイヤー)ごとに役割を説明しています。TCP/IPについては,層(レイヤー)ごとの役割,OSI基本参照モデルとの比較,TCP/IP通信の流れ,コネクション型とコネクションレス型,プロトコル(FTP,HTTP,HTTPS,SMTP,IMAP,POP3,DNS,DHCP,TELNET,SSH,LDAP,NTP,SNMP,TCP,UDP,SSL/TLS,IP,ICMP,NAT,NAPT,IPsec,ARP,RARP,Ethernet,PPP,PPPoE,フレームリレー,ATM)について簡単に説明しています。概念ばかりで理解に時間がかかるかもしれませんが,繰り返し,じっくり読んでみましょう。

OSI基本参照モデル

 OSI基本参照モデルとは,コンピューターの異機種間接続を実現するために,通信プロトコルを7つの層(レイヤー)に分けて定義したモデルのことをいいます。

※ 通信プロトコル…コンピューター同士が通信するときのルールや手順を定めたもの

第7層
アプリケーション層
アプリケーションごとの規定。(Webの閲覧,ファイルやメールの転送などで)やり取りするデータや,その構造を規定する
第6層
プレゼンテーション層
データの表現形式の規定。文字コードやデータの圧縮方法などを共通にするための機能を提供する
第5層
セション層
通信プログラム間での,通信の確立,維持,終了の規定。通信モード(全二重や半二重)や同期・非同期モードの管理なども行う
第4層
トランスポート層
実際に通信するプログラムの管理。通信の信頼性も確保する
第3層
ネットワーク層
ネットワーク間の通信のための規定。通信の経路選択や中継制御などを行う
第2層
データリンク層
隣接ノード間の通信のための規定。隣接ノード間で,信号の受け渡しを行う
第1層
物理層
電気信号に変換されたデータを送るための規定。ケーブルやコネクタの形状など,物理的な仕様が規定されている

※ 上位層(第5層~第7層)…通信サービスに着目したプロトコル。Webの閲覧,電子メールなど

※ 下位層(第1層~第4層)…ノード間のデータ通信に着目したプロトコル

※ ノード…節,集合点という意味。ネットワークは点(機器)と線(伝送路)で表すことができ,この点のことをノードという。具体的には,コンピューターやルーター,スイッチングハブなど,ネットワークに接続されている,すべての機器のことをいう

TCP/IP(Transmission Control Protocol / Internet Protocol)

 TCP/IPとは,インターネットで通信を行うためのプロトコルです。OSI基本参照モデルを簡略化したもので,インターネットの普及とともに事実上の業界標準(デファクトスタンダード)になりました。

アプリケーション層OSI基本参照モデルのセション層と,プレゼンテーション層と,アプリケーション層に相当
実際には,セション層と,プレゼンテーション層と,アプリケーション層の機能が,1つのアプリケーションに実装されていたり,複数のアプリケーションに分けて実装されていたりする
トランスポート層OSI基本参照モデルのトランスポート層に相当
ポート番号により通信をするアプリケーションを識別し,データの転送効率や信頼性を確保しながら,データ(セグメント)を送り届ける
インターネット層OSI基本参照モデルのネットワーク層に相当
IPアドレスにより(ルーターなどで分割された)ネットワークやホストを識別して,最適な経路を選択しながら,データ(パケット)を送り届ける
ネットワーク
インタフェース層
OSI基本参照モデルの物理層と,データリンク層に相当
隣接ノード間で,データ(フレーム)を送受信する。使用するプロトコルは環境によって異なり,たとえば,Ethernetの場合,MACアドレスにより(通信相手となるノードや中継ノードとなる)隣接ノードを識別し,データ(フレーム)を送り届ける

※ ポート番号…通信をするアプリケーションを識別するために使用する。インターネットで,よく使われるアプリケーションには決められたポート番号が割り当てられる(ウェルノウンポート番号)

※ ウェルノウンポート番号については,「TCP,UDP(トランスポート層)-トランスポート層-ポート番号-ウェルノウンポート番号 -情報処理シンプルまとめ」参照

※ ホスト…コンピューターネットワークに接続されたIPアドレスを持つコンピューターやネットワーク機器のこと

OSI基本参照モデルとTCP/IPの比較

OSI基本参照モデルTCP/IPTCP/IPのプロトコル
アプリケーション層アプリケーションプログラムアプリケーション層FTP,HTTP,HTTPS,SMTP,IMAP,POP3,DNS,DHCP,TELNET,SSH,LDAP,NTP,SNMP
プレゼンテーション層
セション層
トランスポート層OSトランスポート層TCP,UDP
ネットワーク層インターネット層IP,ICMP
データリンク層デバイスドライバネットワーク
インタフェース層
Ethernet,PPP,フレームリレー,HDLC,ATM,ARP,RARP
物理層

※ ARP,RARPは,第3層に属するという見解もある

TCP/IPの通信の流れ

 TCP/IPネットワークの通信の流れは,次のようになります。

TCP/IPの通信の流れに関する説明画像

 図のように,送信データは,TCP/IPの上位層から下位層へ渡り伝送路に流れます。このとき、各層ではヘッダ(通信に必要な情報)が付加されます(カプセル化)。各層でカプセル化されたデータは次のように呼ばれます。

トランスポート層セグメント
インターネット層パケット
ネットワークインタフェース層フレーム

 具体的な流れについては、「インターネットへの接続と通信の流れ-インターネットへの接続 -情報処理シンプルまとめ」を参照してください。

インターネットへの接続と通信の流れ -情報処理シンプルまとめ
基本情報技術者試験など情報処理技術者試験を受験する方にとっては必須の,インターネットへの接続と通信の流れについてシンプルにまとめています。まず,コンピューターネットワークの種類について説明し,その後,端末をインターネットに接続する方法と通信の流れについて,具体例を載せて全体像を把握できるように説明しています。コンピューターネットワークの種類については,LAN,WAN,インターネットと,インターネットの構成(ISP(インターネットサービスプロバイダ―),IX,IDX,ピアリング),インターネットに接続しないネットワーク(イントラネット,エクストラネット)を説明しています。端末をインターネットに接続する具体例については,インターネットへの接続と設定(ISPとの契約,端末の設置と接続,IPアドレスの設定(グローバルIPアドレスの設定,プライベートIPアドレスの設定,デフォルトゲートウェイの設定)),通信に必要な情報(ルーターで管理する情報(フィルタリングテーブル,NATテーブル,ARPテーブル,MACアドレステーブル),スイッチで管理する情報(MACアドレステーブル),DMZに設置したWebサーバーや端末(PC)などで管理する情報(ARPテーブル),無線LAN端末で管理する情報(BSSIDやESSIDの設定,ARPテーブル)の説明をしたあと,①内部ネットワークに1台の端末を設置してインターネット上のWebサーバーに対して通信する場合の流れ,②内部ネットワークに有線・無線の複数の端末を設置してインターネット上のWebサーバーに対して通信する場合の流れ,③内部ネットワークの端末同士で通信する場合の流れ,④DMZにWebサーバーを設置して内部ネットワークの端末や外部から通信する場合の流れについて説明しています。ややこしいと思いますが,この分野は,全体像が掴みにくいのではないかと思いますので,ここで把握してから個々の内容に進むのがよいと思います。じっくり頑張りましょう。

TCP/IP各層の主なプロトコル

アプリケーション層

 アプリケーション層のプロトコルは,さまざまなサービスに対応しています。

FTPファイル転送用のプロトコル
HTTPWebサーバーからHTMLで記述されたWebページや,その他のファイルなどを取得するためのプロトコル
HTTPSSSL/TLSで暗号化した通信路上で,HTTP通信を利用できるようにする技術
SMTP電子メールを送信・転送するためのプロトコル
IMAP電子メールをメールサーバーのメールボックスから取り出すためのプロトコル。選択したメールだけを取り出すことができる。利用者認証の仕組みも備わっている
POP電子メールをメールサーバーのメールボックスから取り出すためのプロトコル。利用者認証の仕組みも備わっている
DNSドメイン名とIPアドレスの対応を管理するシステム
DHCPネットワークに接続したコンピューターに対してネットワーク構成情報(IPアドレスなど)を自動的に割り当てるためのプロトコル
TELNET遠隔地のコンピューターを,ネットワーク経由で遠隔操作するためのプロトコル
SSH遠隔地のコンピューターを,ネットワーク経由で遠隔操作するためのプロトコル。暗号や認証技術を利用でき,安全性が確保されている
LDAPディレクトリサービスにアクセスするためのプロトコル
NTP時刻同期を行うためのプロトコル
SNMPネットワークにある機器の管理を行うプロトコル。障害時に情報収集も行う

※ ドメイン名…インターネットでコンピューターなどを識別するために付けられた名前。階層構造で管理されている

トランスポート層

TCPコネクション型のプロトコル。通信開始時には3ウェイハンドシェイクによりコネクションを確立する。通信時にはデータの到達確認を行う(確認応答)が,受け取ったデータに過不足やエラーがあった場合には,必要に応じて送信元に再送要求する(再送制御)。また,分割して送信したデータを正しく並べ替える機能(順序制御)もある。そのため,信頼性は確保できるが,通信速度は低下する
UDPコネクションレス型のプロトコル。信頼性よりも効率を優先するため,データの到達確認は行わない。信頼性は劣るが,通信速度は速い
SSL/TLSインターネット上でデータを暗号化して送信するプロトコル。通信内容の暗号化や,サーバー認証,クライアント認証といった機能を提供する(トランスポート層とアプリケーション層の間で動作する)

※ 3ウェイハンドシェイク…TCPで接続を確立する手順。パケット(SYN,ACK)の送受信を3行程で行う

コネクション型とコネクションレス型

 コネクション型では,送受信する双方で論理的な通信回線を作るため,信頼性の高い通信が実現できます。ただし,制御情報を付加するため,伝送効率はよくありません。

 コネクションレス型では,コネクションを確立せず,送信側が一方的にデータを送信します。受信側が正常に受け取っているかは確認せず次々とデータを送るため,大量のデータを高速に送信することができます。動画など,データが多少消失してもスムーズに再生することを優先する場合に利用されます。

インターネット層

IPコネクションレス型のプロトコル。インターネットに接続された端末間でパケットの送受信を行う。ルーターが通信経路を判断し,次の転送先を決める。IPアドレスの形式も定義する
ICMPパケットの転送エラーが発生した場合に,そのエラーを通知するためのプロトコル。あて先ホストが存在するかどうかの診断にも用いられる
NAT内部ネットワークの端末からインターネットに接続する際に,プライベートIPアドレスをグローバルIPアドレスに1対1で変換する技術
NAPT内部ネットワークの端末からインターネットに接続する際に,プライベートIPアドレスとポート番号を,1つのグローバルIPアドレスと端末ごとに異なるポート番号を使用して変換することにより,複数の端末を同時にインターネットに接続する技術。IPマスカレードともいう
IPsecIPネットワークでセキュリティ機能を提供するプロトコル。鍵交換を行うIKE,認証を行うAH,暗号化や認証を行うESPなど,複数のプロトコルで構成されている

※IPパケットが消失した場合は,TCPが補完の役目を果たす

ネットワークインタフェース層

ARPIPアドレスを基に,NICに割り当てられたMACアドレスを調べるためのプロトコル
RARPIPアドレスを記憶できない端末が,MACアドレスを基にIPアドレスを調べるためのプロトコル
Ethernet有線LANのプロトコル。IEEE802.3として標準化されている(無線LANは,IEEE802.11として標準化されている)
PPP電話回線を使用し,2点間を接続して通信するためのプロトコル
PPPoEEthernetでPPPの機能を実現するためのプロトコル
フレームリレーパケット交換方式のプロトコル(WAN接続)。誤り制御や送信確認を省略したため高速伝送が可能。最低通信速度(CIR)を保証することができる
ATMパケット交換方式のプロトコル(WAN接続)。データをセル単位に分割(53バイト,固定長)して送信する。処理を簡素化できるため高速伝送が可能
PAPネットワークへの接続時に,認証サーバーへユーザーIDとパスワードを平文で送信して利用者認証を行うプロトコル
CHAPチャレンジ/レスポンス方式を利用した認証プロトコル
RADIUSネットワーク上で利用者認証を行うプロトコル。認証サーバーを(1台,または,複数台の)RADIUSクライアント(アクセスサーバー)とRADIUSサーバーに分ける構成になっている。RADIUSクライアントで,さまざまなネットワークからの認証要求を受け付け,RADIUSサーバーで,利用者認証情報を一元管理する
IEEE802.1xコンピューターなどの端末がIEEE802.1xに対応したスイッチや無線アクセスポイントなどに接続する際に,利用者認証を行う規格
EAPデータリンク層において,さまざまな認証プロトコルを利用できるようにするための技術

まとめ

 今回は,OSI基本参照モデルとTCP/IPについて,シンプルにまとめてみました。が,はじめての場合は,読んでも理解できないかもしれません。そのような場合は,この続きを読んだあと,また戻ってきてもいいかもしれません。根気のいるところだと思いますので,繰り返し,しっかり頑張りましょう。