Category
TCP/IP・ネットワークの実装ガイド(4階層モデル・IP・TCP・UDP/3ウェイハンドシェイク・状態遷移・再送・輻輳制御/TCP vs UDP・QUIC・HTTP3の使い分け)
TCP/IP は『暗記する古典』ではなく、本番のレイテンシ・コスト・正しさを左右する現役の設計知識です。本クラスタは、各層が『何を保証し、何を保証しないか』を一次情報(RFC)で押さえ、コードで動かし、TIME_WAIT・Keep-Alive・MTU/MSS・コネクションプール・タイムアウトといった運用知識まで地続きでつなぎます。ピラーで4階層モデル・カプセル化・IP/TCP/UDPの全体像と本番運用を示し、スポークで TCP の心臓部(3ウェイハンドシェイク・11状態の状態機械・累積ACKと再送・フロー制御と輻輳制御)と、TCP/UDP/QUIC の技術選定を深掘りします。核心は『TCP は再送で信頼性を作る=ネットワークから見れば at-least-once』という事実で、決済・在庫のような領域では信頼性をネットワークに丸投げせず冪等性で exactly-once を設計します。モバイル回線のタイムアウトと再送を前提に冪等性で本番二重課金0件を達成した決済信頼性レイヤーの知見を根拠に、IETF 一次情報に忠実な実コードで、落ちない・追える・正しいバックエンドの作り方を解説します。
3 articles in total
Foundational guide
Foundational guide (start here)
TCP/IP complete guide: turning the mechanism of the 4-layer model, IP, TCP, and UDP into production design with RFCs and real code
An implementation guide that explains TCP/IP in a form usable for production design. Faithful to IETF primary sources (RFC 1122, 791, 8200, 9293, 768), it systematizes — more clearly than the official docs — the 4-layer model and encapsulation, IP addressing and CIDR, the difference between TCP and UDP, Node.js/TypeScript real code, behavior that matters in production like TIME_WAIT, Keep-Alive, and MTU, and observation/debugging.
Related practical articles
- TCP/IPTCPネットワークパフォーマンス可観測性
A complete explanation of how TCP works: understanding the 3-way handshake, state transitions, retransmission, and congestion control via RFC 9293
An implementation guide that explains how TCP builds reliability, faithful to IETF primary sources (RFC 9293, 5681, 6298). It pulls together the 3-way handshake, the 11-state state machine, sequence numbers and ACK / retransmission (RTO, fast retransmit), flow control (window), and congestion control (slow start, CUBIC, BBR) — with diagrams, code, and observation commands — into a form usable for production debugging.
12 min read - TCP/IPTCPUDPネットワークアーキテクチャ設計
The difference between TCP and UDP and when to use each: understand it via the RFCs and choose with QUIC/HTTP3 in view
An explanation of whether to use TCP or UDP, with a comparison and decision flow faithful to IETF primary sources (RFC 9293, 768). It organizes the differences by reliability, ordering, boundaries, overhead, and implementation cost, and shows judgment axes usable for production technology selection — with concrete examples of HTTP/DB/gRPC, DNS, real-time voice/games, and QUIC(HTTP3), plus Node.js code.
10 min read