🔥

【ネットワーク基礎】TCP / IPの役割

に公開

プロトコルが階層上に存在していることについて触れましたが、具体的にはどうなっているのか、みていきましょう!

TCP/IPとは

TCP/IP とは、TCP(Transmission Control Protocol)IP(Internet Protocol) という二つのプロトコルを中心とした通信の仕組みのことを指します。
異なるコンピュータネットワークが効率的かつ信頼性高く通信するために必要な機能を階層化しています。

TCP/IPモデルは、インターネット通信を4つの階層(レイヤー)に分けて設計されたプロトコルの集合体です。各層が独立した役割を持ち、下の層から順に積み上がることで、複雑な通信を実現しています。
階層ごとに異なるプロトコルを持つことで、複雑なネットワーク環境においても、コンピュータ同士が円滑に通信できるようにしているのです。

※名前に惑わされがちですが、TCPプロトコル・IPプロトコルを中心としたプロトコル群のことを指します。

TCP/IPの構成

改めてですが、TCP/IPはインターネット通信を4つの階層(レイヤー)に分けて設計されたプロトコルの集合体です。
それぞれの階層(レイヤー)ごとに使用する約束事・役割が異なります。
ここで各階層における役割を簡単にみていきましょう。

アプリケーション層


人間とネットワークのインターフェース
この層では、ユーザーが理解できるサービスを提供(Web閲覧・メール・ファイル転送など)しており、アプリケーションで扱うデータのフォーマットや手順を決めています。
データの意味を解釈し、適切な形式に変換(文字コード・画像形式・暗号化など)することで、文字や画像などのデータを人間が認識できるようになります。

トランスポート層

データ通信の"品質"を管理
ネットワーク間のデータ伝送の信頼性と効率性のバランスを制御します。
TCPは信頼性の高い接続指向のサービスを提供し、データの順序付けやエラー検出、再送を行ないます。データが正しく届けたかまで管理します。
UDPはより軽量で接続のないサービスを提供し、動画配信・音楽配信のような低遅延が要求されるアプリケーションに適しています。
なお、ポート番号でサービスを区別しているため、1台のデバイス上で複数のアプリケーションを同時に実行できます。

インターネット層

データを世界中に届ける"住所"と"経路"を管理
異なるネットワーク間でデータをルーティング(配送)します。
・IPアドレスを使って、送信元から宛先までパケットを届ける
・ルーターが中継し、最適な経路を選択する
・データの分割・再構築(大きなパケットをMTUサイズに合わせて分割)する
※「パケット」という単位でデータを配送します。

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

0と1のデータを物理信号に変換して伝送する
データの物理的な送受信を管理し、他の層が行なうより抽象的なプロセスをサポートします。
・ケーブル・電波・光ファイバーなど物理媒体での通信を直接管理しています
・同一ネットワーク内(LAN)での直接接続された機器間の通信を実現します

TCP/IPの2大プロトコルが果たす役割

IP:とにかく届ける

パケットを配送し、届かなかった場合の再送は上位層(TCP)任せになります。
(例)宅配便の「配達員」が荷物を届けるが、不在時は再配達しない。

TCP:確実に届ける

・コネクションを確立する(3ウェイハンドシェイク)
・再送制御(ACKがない場合は再送する)
・順序制御(パケットの並び替え)
(例)書留郵便+配達員が「受け取り確認」をする。

まとめ

今回はざっくりTCP/IPの役割と構成要素ごとの役割をまとめました。
TCPとUDPの違い、データが加工され組み立てられていく流れ、データの運ばれ方など、必要な知識があるため、それらについては、別記事でまとめていきますので、お楽しみに。

最後までお読みいただき、ありがとうございました。

参考・画像引用元URL

https://www.itmanage.co.jp/column/tcp-ip-protocol/
https://diveintocode.jp/blogs/Technology/depTcpIp
https://docs.oracle.com/cd/E19504-01/805-1756/6j1n5e8og/index.html
https://www.itmanage.co.jp/column/tcp-ip-protocol/
https://joho-taisaku.com/internet/
https://www.coins.tsukuba.ac.jp/~yas/ipe/inet-2003/2003-12-01/
https://nordvpn.com/ja/blog/tcp-udp-difference/
https://envader.plus/article/512
https://envader.plus/article/295
https://ascii.jp/elem/000/000/412/412372/
https://it-rpa.hatenablog.com/entry/tcpip_network

Discussion