本文へスキップ
totonoe.tech

ネットワークを整える

初級

TCP/UDP を整える。

= データの運び方の二大ルール「TCP」と「UDP」を図解

ネットワークのどこの話? 通信する両端の機器(パソコンとサーバーなど)の間の話です。途中のルータやスイッチは、TCP や UDP の中身には立ち入りません。OSI 参照モデルでは第4層(トランスポート層)にあたります(OSI参照モデル)。

TCP が初めての方は、先に そもそも TCP とは・どんな場面で使うか をどうぞ。

アニメで見る — TCP/UDP のしくみ 開くと1ステップずつ動きます
💻

クライアント

あなたのブラウザ等

① SYN「つなぎたい」
③ ACK「了解」
✅ 接続確立
🖥️

サーバ

Web サーバ等

② SYN/ACK「OK+そちらは?」
✅ 接続確立
📦

TCP

確実に届ける宅配便

🤝 接続してから送る
🔢 順序を保証
✅ 届いたか確認・再送
⚡

UDP

速さ優先の投げっぱなし

🚀 確認せず即送信
🍃 取りこぼしは許容

STEP 1

※ イメージ図です。このページは図解だけで、入力・通信は一切行いません(送信ゼロ)。

手を動かす — TCP? UDP? 用途しんだん

あなたの用途、どっちで運ぶ?

4つの質問にトグルで答えると、その用途に向くプロトコル(TCP / UDP)を理由つきで判定します。 下のシナリオを押せば、トグルが自動でセットされて結果が出ます。 判定はすべてブラウザ内。何も送信しません。

▼ シナリオから選ぶ(トグルが自動でセットされます)

質問に答えるか
シナリオを選ぶと
ここに判定が出ます

※ これは「考え方の目安」です。現実には UDP の上に独自の信頼性補正を載せる方式(QUIC など)もあり、 用途によって両者を組み合わせます。判定の軸は、上の比較表(信頼性・順序・速度)と同じです。

そもそも TCP とは

「ちゃんと届いたか」を確かめながら運ぶ、書留のような通信ルール。

TCP(Transmission Control Protocol)は、データを順番どおり・欠けなく相手に届けるための取り決めです。Web・メール・ファイル転送など、1文字でも欠けたら困る通信の裏側で働いています。書留のように、荷物(データ)を小分けにして送り、届いたかを確認し、届いていなければ送り直します。

IP が「宛先の機器まで荷物を運ぶ道筋」を受け持つのに対し、TCP は「荷物が揃って、正しい順番で相手のアプリに渡ったか」に責任を持ちます。「TCP/IP」という名前は、この2つが組になって働くことに由来します。

どこで・どんな場面で使うか

  • Web サイトを見るとき

    HTTPS でページを開く通信の多くは、TCP の上で動いています。

  • メールの送受信

    メールを送る・受け取る仕組み(SMTP・IMAP など)も TCP を使います。

  • SSH やファイル転送

    サーバーを遠隔操作したりファイルを送ったりするとき、1文字でも抜けたら困るので TCP が使われます。

  • アプリとデータベースの間

    システムの裏側で、アプリがデータベースに問い合わせる通信も、多くは TCP です。

  • 資格試験

    CCNA・基本情報技術者・ネットワークスペシャリストなどで、通信の仕組みの定番です。

知らないと何が困るか

  • 「つながらない」の原因を切り分けられない。ping は通るのに Web が開かない、といったとき、特定のポートの窓口が閉じている可能性に気づけます。
  • 遅い・切れる理由が分からない。電波の弱い場所や混んだ回線では、届かなかった分の再送が増えて通信が遅くなります。仕組みを知っていれば、体感の遅さに納得できます。
  • ファイアウォールの設定が読めない。「TCP の 443 番を許可」と書かれた設定書や、申請書の意味が分かるようになります。

上の図解アニメと「用途しんだん」で、あなたの使い方には TCP が向くのか、確かめてみてください。

3ウェイハンドシェイクとは

いきなり話し出さず、まず3回あいさつしてから。

TCP は「確実に届ける」ことを大切にする運び方です。だからデータを送る前に、相手と 3回のあいさつを交わして「お互い準備できた」と確認します。これが 3ウェイハンドシェイク。電話で「もしもし」「はい、聞こえます」「では話します」と 確認してから本題に入るのと同じ発想です。

  1. 1

    SYN =「つなぎたい」

    クライアントがサーバに「接続したい」と申し込みます。SYN(Synchronize)は、最初の合図です。

  2. 2

    SYN/ACK =「OK、そちらは?」

    サーバが「受け取った(ACK)+こちらも準備できた(SYN)」を一度に返します。承認と申し込みの合わせ技です。

  3. 3

    ACK =「了解」

    クライアントが「確認しました」と返します。これで往復3回がそろい、接続が確立。ようやく本物のデータが流れ始めます。

この往復の手間があるぶん、TCP は接続開始に一瞬の遅れが出ます。けれども「届いたか確認して、抜けたら再送する」しくみが この接続の上に乗るので、データが順番どおり・取りこぼしなく相手に届きます。

TCP と UDP の違い

確実さの TCP、速さの UDP。

観点 📦 TCP ⚡ UDP
信頼性 高い(確実に届ける) 低め(届く保証なし)
順序 送った順に並べ直す 保証しない(前後しうる)
速度 やや遅い(確認の手間) 速い(接続・確認なし)
確認応答・再送 あり(抜けたら送り直す) なし(投げっぱなし)
接続 あり(3ウェイハンドシェイク) なし(コネクションレス)
用途例 Web(HTTP/HTTPS)・メール・ファイル転送 動画通話・オンラインゲーム・DNS

どちらが「優れている」ではなく向き不向きです。1文字でも欠けたら困るもの(Web・メール・ファイル)は 確実な TCP。多少抜けても止めたくないもの(通話・ゲーム・DNS)は速い UDP。配信動画やビデオ会議では UDP 系の上に独自の補正を重ねるなど、両者を組み合わせる場面も増えています。

ひとこと:宛先には「ポート番号」もついている

TCP も UDP も、IPアドレス(どの機器か)に加えてポート番号(その機器の中のどの窓口か)を使って相手を特定します。 たとえば Web は 80/443、メールは 25/587 など。同じパソコンの中で複数のアプリが同時に通信できるのは、この窓口番号のおかげです。 ポート番号の早見は別ツール(/ports/)で扱います。

🔒 解説と比較表は読み物、上の「用途しんだん」も判定はすべてブラウザ内で行います。入力も通信もサーバには送られません(送信ゼロ)。

📘 CCNA ではここが問われる(200-301 v1.1・Network Fundamentals)

  • TCP と UDP の比較:TCP は接続を作り、順番どおり・再送つき(コネクション型)。UDP は確認なしで軽い(コネクションレス型)
  • 3ウェイハンドシェイクは SYN → SYN/ACK → ACK。終わるときは FIN を使う
  • よく出るポート:HTTP 80、HTTPS 443、SSH 22、Telnet 23、FTP 20/21、SMTP 25、DNS 53(UDP と TCP)、DHCP 67/68(UDP)、TFTP 69(UDP)、SNMP 161/162(UDP)
  • 遅れや取りこぼしに敏感な音声・動画通話は UDP を使うことが多い
  • ポートを指定して通す・止める:アクセスリストの permit tcp any any eq 80

ポートで通信を止める仕組みは ACL、住所の変換は NAT で。

たとえると

TCP は「書留」、UDP は「ふつうのはがき」にたとえられます。書留は、相手が受け取ったことを確かめ、届かなければ出し直します。そのぶん手間がかかります。はがきはポストに入れたら終わりで、速くて軽いかわりに、届いたかは分かりません。3ウェイハンドシェイクは、電話の「もしもし」「はい、どうぞ」「聞こえます」にあたる、話し始める前の3回のやり取りです。

このツールは、ネットワーク全体図のここ

  1. 自分の端末
  2. 家・会社の中
  3. 出入口
  4. 建物の外
  5. 相手のサーバー
  6. データセンター
  7. 見る・動かす

相手のサーバー側(サーバー)— 相手との会話を確実に届けるあいさつ(TCP)と、気軽に送る方式(UDP)の話です。

相手のサーバー側は、訪ねた先の会社の窓口のような場所です。OSI では第4層(トランスポート)。

「ブラウザで URL を打ってからページが出るまで」の 5 番目(TCP でつなぐ)で活躍します。

前の段: MACアドレス 次の段: NAT

このページに出てくる略語(8語)
  • TCP (Transmission Control Protocol) — 相手と確認をとりながら、確実に順番どおり届ける方式
  • UDP (User Datagram Protocol) — 確認をとらず、気軽に速く送りっぱなしにする方式
  • SYN (Synchronize) — TCP で「これから話します」と伝える最初のあいさつ
  • ACK (Acknowledgment) — TCP で「受け取りました」と返事をする合図
  • TCP/IP (Transmission Control Protocol/Internet Protocol) — 今のインターネットで使う、決まりごとの一式。OSI より層が少ない
  • L4 (Layer 4) — OSI の第4層(トランスポート層)。TCP・UDP とポート番号の話
  • FIN (Finish) — TCP で「話はここまで」と接続を終える合図
  • RST (Reset) — TCP で接続を強制的に切る合図

ネットワークの略語をすべて見る

ネットワークの全体図を見る

このツールについて

インターネットでデータを運ぶ二大ルール「TCP」と「UDP」のしくみを図で整理します。TCP が送信前に行う3回のあいさつ(3ウェイハンドシェイク)と、確実な TCP/速い UDP の使い分けを、アニメと比較表で。読むだけのページなので、通信も入力も一切ありません(送信ゼロ)。

TCPが送信前に交わす3回のあいさつ(SYN→SYN/ACK→ACK)と、確実なTCP/速いUDPの使い分けを、アニメと比較表でやさしく。

🔰 かんたんに言うと

データの送り方の2方式。TCPは「届いたか確認しながら丁寧に」(Web・メール)、UDPは「確認せず速く」(動画・通話)。用途で使い分けます。

主な機能

  • 3ウェイハンドシェイクの図解アニメ
  • TCPとUDPを対比する2モードの図解
  • 信頼性・順序・速度・再送・用途の比較表
  • Web/メール(TCP)と通話/ゲーム/DNS(UDP)の使い分け
  • ポート番号への導入

よくある質問

Q. TCPとUDPの違いは何ですか?

A. TCPは接続を作って確実に・順番どおり・取りこぼしなく届けます。UDPは接続も確認もせず速く送り、取りこぼしを許容します。確実さのTCP、速さのUDP、と覚えると分かりやすいです。

Q. 3ウェイハンドシェイクとは何ですか?

A. TCPがデータを送る前に交わす3回のあいさつです。①SYN(つなぎたい)②SYN/ACK(OK+そちらは?)③ACK(了解)の順で往復し、接続を確立してから本データを流します。

Q. なぜSYN/ACKは1回にまとめるのですか?

A. サーバ側は「受け取った合図(ACK)」と「自分も接続したい合図(SYN)」を同時に返せるためです。往復を減らせて効率的なので、2番目だけSYNとACKが合わさります。

Q. どんなときにTCP/UDPが使われますか?

A. 1文字でも欠けたら困るWeb(HTTP/HTTPS)・メール・ファイル転送はTCP。遅延が致命的でわずかな欠落を許せる動画通話・オンラインゲーム・DNSはUDPが向きます。

Q. UDPは信頼できないから使わないほうがいい?

A. いいえ。「遅れて届くより、抜けても最新を届けたい」用途ではUDPが最適です。古いコマを再送するより次の最新コマを送るほうが自然な通話・ゲームでは、むしろUDPが正解です。

Q. TCP/UDPとポート番号の関係は?

A. どちらもIPアドレス(どの機器か)に加えてポート番号(機器内のどの窓口か)で相手を特定します。同じ端末で複数アプリが同時に通信できるのはポート番号のおかげです。

Q. このツールで通信や接続テストはできますか?

A. いいえ。図解と解説だけの読み物で、入力欄も通信もありません。実際にデータが送られることはなく、端末から外には何も出ません(送信ゼロ)。

入力値はURLの「#」以降に入るためサーバーには送信されません。リンクを開くと同じ状態を復元します。

続けて整える

このツールの解説記事

totonoe.tech を運営する株式会社Koinobori は、法人向けの研修サービス「NOBORIBA®」も運営しています。 ここで手を動かした内容を、講師から教わる形の研修です。このページの道具は無料のまま、登録もいりません。

運営サイト

私たちが運営するサイト