TCP/IPって、そもそもナニ?

はじめに

「TCP/IP」を一言で言うと、インターネットやネットワークでコンピューター同士が通信するための「お約束事(ルール)」の集まりです。

私たちは日本語を話す人同士なら会話ができますが、英語しか話せない人とは話せませんよね。コンピューターも同じで、それぞれが勝手な方法で通信しようとしても、お互いに理解できず、情報をやり取りできません。

そこで、「こうやって通信しようね」という共通のルールが必要になります。それがTCP/IPです。

なぜTCP/IPが必要なの?

  • 世界中のコンピューターが繋がるため: あなたのパソコン、スマートフォンのアプリ、Webサイトのサーバーなど、世界中の様々な種類のコンピューターが、国やメーカー、種類に関係なく互いに情報をやり取りできるようにするためです。
  • 情報を正確に届けるため: 大量の情報を送るときに、途中で情報が失われたり、順番が入れ替わったりしないように、確実に届けるための仕組みが必要です。

合わせて読みたい

TCP/IPの「TCP」と「IP」は何をしているの?

TCP/IPは、いくつかのルール(プロトコル)の組み合わせですが、特に重要なのが「TCP」と「IP」です。

例えるなら、あなたが友達に手紙を送る場面を想像してみてください。

  1. IP (Internet Protocol) — データの「配達人」
役割データの「住所」を決めて、目的地まで「道案内」をするプロトコルです。手紙の例で言えば、「手紙に相手の住所を書いて、郵便局に出す」役割です。
IPアドレスインターネット上のコンピューターには、それぞれ固有の「IPアドレス」という住所が割り当てられています(例: 192.168.1.1 のような数字の羅列)。IPは、この住所を使ってデータを適切な場所に送ります。
特徴とにかく目的地までデータを送り届けようとします。ですが、届いたかどうかは確認しませんし、順番がバラバラになっても気にしません。ただ「送る」だけです。
  1. TCP (Transmission Control Protocol) — データの「丁寧な確認係」
役割IPが送ったデータが「きちんと相手に届いたか」「順番通りに届いたか」を確認し、もし届いていなければ「もう一度送って」とお願いしたり、バラバラに届いたデータを「正しい順番に並び替える」プロトコルです。手紙の例で言えば、「手紙が届いたら確認の電話をして、内容が間違ってないか、順番がおかしくないかを確認する」役割です。
特徴信頼性が高く、データが欠けたり、順番が入れ替わったりしないように保証します。Webサイトを見たり、ファイルをダウンロードしたりするときに、データが正確に届くのはTCPのおかげです。

実際の通信はこんな感じ!

データを分割例えば、あなたがWebサイトを見るとき、Webページの情報はそのまま丸ごと送られるのではなく、小さな「パケット」という塊に分割されます。
IPが送り出す各パケットには、送る側のIPアドレスと、受け取る側のIPアドレス(Webサイトのサーバーの住所)が付けられます。IPは、それぞれのパケットを適切な道筋で送ります。
TCPが確認・ 再構築受信側では、TCPがパケットを一つずつ受け取ったか確認します。もし途中で失われたパケットがあれば、送信側に「もう一度送って」と要求します。バラバラに届いたパケットも、正しい順番に並べ替えて、元のWebページの情報に復元します。
アプリに渡すきちんと復元されたデータが、最終的にWebブラウザなどのアプリケーションに渡され、Webページとして表示されます。

まとめ

TCP/IPは、インターネットやネットワークが正しく機能するための、最も基本的な「共通の言葉」であり、「交通ルール」のようなものです。

  • IP: データを目的地に運ぶ「住所と配達」の役割
  • TCP: 運ばれたデータが「正しく、順番通りに、確実に届いたか」を確認・保証する役割

この二つのプロトコルが協力することで、私たちは快適にインターネットを利用できるのです。