后端开发专用 · 计算机网络学习仓库
三轨并行:自顶向下 · TCP/IP 详解 卷1 · UNIX 网络编程 卷1 · 陈硕 PNP 实验
主攻:HTTP/TCP/IP 原理、Socket 编程、抓包排障、安全与路由
Computer-Networking/
├─ top_down/ # 《自顶向下》Ch1–8 + 99 实践(01_–99_)
├─ TCP-IP-Volume1-Protocols/ # 《TCP/IP 详解》卷1 第2版(18 章,节笔记平铺在章目录)
├─ UNP_Vol1/ # 《UNIX 网络编程》卷1(四阶段 Ch1–31,节笔记平铺)
├─ PNP/ # 陈硕《实用网络编程》实验(code/ + Rust 对照)
├─ http-authoritative-guide/ # 《HTTP 权威指南》(chapter-summary + 01-小节英文名.md)
├─ HTTP-The-Definitive-Guide/ # 旧结构(study.md),见该目录 README 迁移说明
├─ wireshark-packet-analysis/ # Wireshark:chapter-XX/chapter-summary + 01-小节英文名.md
└─ scripts/ # 目录生成、链接修正等维护脚本
| 资料 | 入口 | 说明 |
|---|---|---|
| 自顶向下 | top_down/README.md | 章级 study.md + 小节 */study.md |
| TCP/IP 卷1 | QUICKREF.md · OUTLINE.md | chapterNN-主题/ 下 x.y-*.md 与 study.md 同级 |
| UNP 卷1 | UNP_Vol1/README.md · OUTLINE.md | ChapterNN_*/ 下 x.y_*.md 与 study.md 同级 |
| PNP 实验 | PNP/README.md · OUTLINE · study | 粘包/Netcat/epoll 等;04 Netcat 已有 Rust |
| PNP↔UNP | 三者关系 | 实战课 vs 教科书;非 UNP 配套 |
| HTTP 指南 | http-authoritative-guide/ · OUTLINE | 21 章 · chapter-summary + 小节笔记 |
| Wireshark 实战 | wireshark-packet-analysis/ | 每章 chapter-summary.md + 小节 01-xxx.md · 速查 |
双轨对照:自顶向下 ↔ TCP/IP 卷1(各章 study.md 内互链);写 Socket 时 UNP 与 top_down §2.7 / §3 对照。
| 主题 | 笔记 |
|---|---|
| C/S → B/S 演进 | TCP/IP 1.1 · UNP 1.1 |
| 分层典型攻击 | TCP/IP 1.8 · 一页背诵 |
| 日常上网链路三选一 | §6.1(以太网 / Wi‑Fi / PPPoE) |
| TCP 封装与逐跳转发 | §4 封装 · 全流程 |
| 控制平面入门 | §5 是什么 |
完整章表:top_down/README.md
每章 章级study.md= 精读;各小节study.md= 背版(考点 + 易错 + 留白)。
第 1 章 · 网络基础 — study.md
| 小节 | 笔记 |
|---|---|
| 1.1 互联网概述 | study.md · README 威胁地图 |
| 1.2 网络边缘与接入 | study.md |
| 1.3 网络核心与交换 | study.md |
| 1.4 时延丢包吞吐量 | study.md |
| 1.5 协议分层 | study.md |
第 2 章 · 应用层 — study.md
| 小节 | 笔记 |
|---|---|
| 2.1 应用层原理 | study.md |
| 2.2 HTTP 与 Web | study.md |
| 2.3 电子邮件 | study.md |
| 2.4 DNS | study.md |
| 2.5 P2P | study.md |
| 2.6 视频流媒体 | study.md |
| 2.7 UDP / TCP Socket | UDP · TCP |
| 2.8 WZP 私有协议 | study.md |
第 3 章 · 运输层 — study.md
| 小节 | 笔记 |
|---|---|
| 3.1 运输层概述 | study.md |
| 3.2 复用与分用 | study.md |
| 3.3 UDP | study.md |
| 3.4 可靠传输原理 | study.md |
| 3.5 TCP 连接与传输 | study.md |
| 3.6 TCP 流量控制 | study.md |
| 3.7 TCP 拥塞控制 | study.md |
第 4 章 · 网络层数据平面 — study.md
| 小节 / 专题 | 笔记 |
|---|---|
| 4.1 网络层概述 | study.md |
| 4.2 路由器内部 | study.md |
| 4.3 IPv4/IPv6/NAT | study.md |
| 4.4 SDN/OpenFlow | study.md |
| TCP⊂IP⊂MAC 封装 | #ch4-encapsulation |
| 逐跳转发全流程 | #ch4-packet-walkthrough |
第 5 章 · 网络层控制平面 — study.md
| 小节 / 专题 | 笔记 |
|---|---|
| 控制平面是什么 | #ch5-control-plane-basics |
| 5.1 路由算法 | study.md |
| 5.2 OSPF | study.md |
| 5.3 BGP | study.md |
| 5.4 SDN 控制平面 | study.md |
| 5.5 ICMP/SNMP | study.md |
第 6 章 · 链路层 — study.md
| 小节 | 笔记 |
|---|---|
| 6.1 链路层服务 | study.md |
| 6.2 差错检测 | study.md |
| 6.3 MAC 协议 | study.md |
| 6.4 以太网/ARP/交换机 | study.md |
| 6.5 数据中心/MPLS | study.md |
第 7 章 · 无线网络(选学)— study.md
| 小节 | 笔记 |
|---|---|
| 7.1 Wi‑Fi / 802.11 | study.md |
| 7.2 4G/5G LTE | study.md |
| 7.3 移动性管理 | study.md |
第 8 章 · 网络安全 — study.md
| 小节 / 专题 | 笔记 |
|---|---|
| 分层攻击一页表 | layer-attacks-cheatsheet.md |
| 8.1 密码学基础 | study.md |
| 8.2 完整性与签名 | study.md |
| 8.3 TLS/HTTPS | study.md |
| 8.4 IPsec/VPN | study.md |
| 8.5 防火墙/IDS | study.md |
| 目录 | 说明 |
|---|---|
| 99_practice_wireshark_lab | Wireshark 抓包实验 |
| 99_socket_code_demo | Socket 示例代码 |
| 99_review_exercises_notes | 习题与面试整理 |
- 01 网络基础 → 五层、时延、分组交换
- 02 应用层 → HTTP、DNS、Socket 入门
- 03 运输层(重中之重) → TCP/UDP、握手、可靠传输、拥塞
- 04–05 网络层 → 转发、OSPF/BGP
- 06 链路层 → MAC、ARP、交换机
- 08 安全 → TLS/HTTPS、威胁分层表
- 07 无线 → 用到再学
- 并行:UNP 写代码 · TCP/IP 抠协议细节
| 路径 | 用途 |
|---|---|
README.md |
小节速查 |
study.md |
精读 / 背版 + 链到章级 |
demo_code/ |
示例代码 |
UNP / TCP-IP:节笔记为章目录下 {节名}.md,见各自 README。
- 吃透 Socket,能手写 TCP 客户/服务器
- 理解 TCP 机制,能分析粘包、断连、TIME_WAIT 等
- 掌握 HTTP/HTTPS 全流程,能对照抓包
- 具备路由、NAT、ARP、安全分层等排障常识
- 应对后端网络相关面试
- 抓包:Wireshark
- 调试:
nc、NetAssist 等 - 语言:Go / Python / C(与 UNP 示例对照)
- 教材:自顶向下 · TCP/IP 卷1 第2版 · UNP 卷1
feat: 新增xx章节笔记
docs: 补全/重组笔记与链接
refactor: 目录结构调整(如 top_down/)
code: 示例代码
fix: 修正知识点或链接