CHARLIE SAYS

查理如是说
DATE 2026-08-24
THEME
SERIES / NETWORK / P-150 · 网络协议

网络协议 001:网络协议和工具知识体系详解

网络基础,尤其是网络协议(TCP/IP 协议栈为主)在网络开发中极为重要。本系列按”基础 → 传输层 → 应用层 → 串联 → 工具”五步展开。

第一步:计算机网络基础

构筑任何知识体系之前,先学习整体知识点(最好是一本完整的书)。这里主要基于《计算机网络(第五版)》(谢希仁)梳理,分三部分:

  • 计算机网络基础部分梳理 —— 性能指标、分层模型、交换技术等课程主干知识点
  • 7 层协议,4 层,5 层 —— 构建全局观分三步:理解全局的网络层次;理解每一层次中常见的网络设备及功能;理解每一层的常见协议。在此基础上将其他知识点放置到相应层次(零散知识点没法帮你构筑完整体系,推荐完整看一本书)
  • IP 相关协议详解 —— IP 协议(网络层)及其配套协议:数据链路层的 ARP、网络层的 ICMP/IGMP、IPv6、网络地址转换 NAT 等

第二步:传输层协议 TCP/UDP

TCP/UDP 是后面应用层协议的基础:

  • TCP 协议详解 —— TCP 是一个巨复杂的协议,细节推荐 W.Richard Stevens《TCP/IP 详解 卷 1:协议》;本文梳理自左耳朵耗子的《TCP 的那些事儿》
  • UDP 协议详解 —— 基于 TCP 和 UDP 的协议非常广泛,有必要对照理解

第三步:应用层协议

HTTP 基于 TCP 实现,Web 开发必学;DNS 基于 UDP 实现:

  • HTTP 协议详解 —— Web 开发必备
  • DNS 相关详解 —— DNS 的核心工作是将域名翻译成计算机 IP 地址;涵盖概念、解析、调度原理(负载均衡和区域调度)等

第四步:知识点贯穿理解

  • 输入 URL 到页面加载过程详解 —— 第一,将 TCP、HTTP、DNS 解析等知识点贯穿起来;第二,在此基础上介绍浏览器渲染过程,为 Web 优化提供基础

第五步:相关工具

阅读建议

先按 1-4 步顺序建立体系,工具篇(第五步)可以在抓包分析需求出现时随时查阅。配合 Linux 常用工具(curl、ab 压测)食用更佳。

← JHipster 开发 01:为什么选 JHipster——一次生成,十年维护 目录 开发安全 001:开发安全相关知识体系详解 →
← 返回文章列表