コース一覧
ネットワーク基礎:TCP/IP・HTTP・DNS・CDN
TCP と UDP の違い

ネットワーク基礎:TCP/IP・HTTP・DNS・CDN

ブラウザからサーバーまでデータが届く仕組みを、OSI・TCP/IP、IPとルーティング、TCP/UDP、HTTP/HTTPS、DNS、CDNから体系的に学びます。通信障害や構成選択をプロトコルから考えられるようになります。

1
ネットワークの全体像
0. ネットワークとは8分
1. OSI 7階層モデル10分
2. TCP/IP 4階層モデル9分
3. パケットとフレーム9分
4. ルーター・スイッチ・ハブ9分
2
IP とルーティング
0. IPアドレス (IPv4 / IPv6)10分
1. サブネットマスクと CIDR11分
2. NAT とプライベートIP9分
3. ルーティングと経路選択10分
4. ファイアウォール基礎9分
3
TCP / UDP
0. TCP と UDP の違い9分
1. 3-way ハンドシェイク9分
2. 輻輳制御と再送10分
3. UDP の用途 (DNS / 動画 / ゲーム)8分
4. ポート番号と well-known port9分
4
HTTP / HTTPS
0. HTTP の基本10分
1. HTTP メソッド9分
2. HTTPS と TLS ハンドシェイク10分
3. HTTP/2 と HTTP/3 (QUIC)10分
4. REST API の設計原則10分
5
DNS とドメイン
0. DNS とは8分
1. レコードタイプ10分
2. 名前解決の流れ10分
3. DNS キャッシュと TTL9分
4. CDN の仕組みと Anycast10分
6
応用
0. ロードバランサ (L4 / L7)10分
1. プロキシとリバースプロキシ9分
2. WebSocket とリアルタイム通信9分
3. gRPC と HTTP/2 利用10分

ネットワーク基礎:TCP/IP・HTTP・DNS・CDN

01ネットワークとは
02OSI 7階層モデル
03TCP/IP 4階層モデル
04パケットとフレーム
05ルーター・スイッチ・ハブ
06IPアドレス (IPv4 / IPv6)
07サブネットマスクと CIDR
08NAT とプライベートIP
09ルーティングと経路選択
10ファイアウォール基礎
11TCP と UDP の違い
123-way ハンドシェイク
13輻輳制御と再送
14UDP の用途 (DNS / 動画 / ゲーム)
15ポート番号と well-known port
16HTTP の基本
17HTTP メソッド
18HTTPS と TLS ハンドシェイク
19HTTP/2 と HTTP/3 (QUIC)
20REST API の設計原則
21DNS とは
22レコードタイプ
23名前解決の流れ
24DNS キャッシュと TTL
25CDN の仕組みと Anycast
26ロードバランサ (L4 / L7)
27プロキシとリバースプロキシ
28WebSocket とリアルタイム通信
29gRPC と HTTP/2 利用

ネットワーク基礎:TCP/IP・HTTP・DNS・CDN

TCP と UDP の違い

確実さと速さの取り替え

届かなかったことに、送った側は気づけない

ネットワークにデータを流しても、途中で捨てられることがあります。混雑した中継機は、あふれた分を黙って捨てるからです。

困るのは、捨てられたことが送り主に知らされない点です。何も言われないので、送り主は届いたと思い込んだままになります。この不安を引き受けてくれるのが TCP、引き受けないのが UDP です。どちらも同じ段で使える、並んだ選択肢です。

どちらを使うかはアプリを書くときに選びます。選んだ結果はコードの見た目にほとんど現れませんが、うまくいかなかったときの挙動がまるで変わります。

確実に届けるために、TCP が肩代わりしていること

TCP は「必ず、順番どおりに届く」を約束します。約束を守るために、内部で次のことをしています。

  • 送る前に相手と挨拶を交わし、両方向で話が通じることを確かめる
  • 送る塊 1 つ 1 つに通し番号を振り、受け取り側で順番に並べ直す
  • 受け取り側に「ここまで受け取った」と返事をさせ、返事が来ない分を送り直す
  • 混雑を検知したら、送る速度を自分から落とす

書く側は、この仕組みを一切意識しません。送ったデータは届く、順番も守られる、という前提でコードを書けます。Web の通信がそのまま TCP に乗っているのも、面倒を全部下に押し付けられるからです。

見落としやすいのは、これらが全部、送り主と受け取り側の 2 者だけで完結している点です。途中の中継機は何も手伝いません。混んでいると教えてもくれないし、落とした分を覚えてもいません。両端だけで辻褄を合わせる設計だからこそ、どんな回線の上でも同じように動きます。

約束しないほうが速い場面がある

UDP は逆です。挨拶をせず、通し番号を振らず、返事も待たず、送り直しもしません。宛先を書いて投げたら終わりです。

TCPUDP
送る前の挨拶あるない
届かなかったとき送り直す諦める
順番並べ直す届いた順のまま
荷札の大きさ20 バイト以上8 バイト

一見すると劣化版ですが、そうではありません。TCP は順番を守るために、後ろの塊が先に届いていても、前の塊が届くまで上のアプリへ渡さずに待たせます。通話や対戦ゲームでは、この待ち時間そのものが致命傷になります。1 コマ落ちた過去を取り戻すより、いまの音と映像を先に進めたい。そういう場面では、諦める設計のほうが体感がはっきり良くなります。

「速い遅い」の差ではなく、「何を諦めるか」の差だと捉えてください。守りたいものが到達なら TCP、いまこの瞬間なら UDP です。そして UDP を選んだ場合、落ちた分の後始末はアプリ側の仕事になります。何もしなくていいわけではありません。

実際の選び方はほぼ決まっています。作るものが Web サービスや API なら、意識せずとも TCP に乗ります。UDP を自分で選ぶのは、通話や配信、対戦ゲームのように待ち時間が致命的な場面か、既存のやり方では遅すぎると実測で分かったときです。まず TCP、理由があるときだけ UDP、という順番で考えてください。

このレッスンに出てくる用語

意味があいまいなまま進んだ語は、ここから読み直せます。

  • 設計何をどう作るかを決める前工程
  • エンドポイント「この URL を叩くとこの機能が動く」入口の住所
  • APIアプリ間でデータをやり取りする窓口
生田 陸人
監修生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア監修者プロフィールを見る →
編集 ゆめさく編集部·公開 2026/05/27·更新 2026/08/26

関連レッスン

  • 3-way ハンドシェイク

    TCP コネクションを確立する SYN/SYN-ACK/ACK の流れを学びます。

  • 輻輳制御と再送

    TCP が混雑時にスループットを調整する仕組みを理解します。

  • UDP の用途 (DNS / 動画 / ゲーム)

    TCP より UDP が選ばれる代表的な用途とその理由を学びます。

  • ポート番号と well-known port

    ポート番号の役割と、HTTP(80)/HTTPS(443) などの well-known port を整理します。

分からないところは Tap (AI先生) に質問できます

24 時間いつでも、あなたのレベルに合わせて日本語で答えます。

復習ミニクイズ

UDP が選ばれる典型的なユースケースはどれですか