深入理解 TCP 协议:从原理到实战培训
1
开篇词 —— 小册食用指南
2
TCP/IP 历史与分层模型
3
TCP 概述 —— 可靠的、面向连接的、基于字节流、全双工的协议
4
来自 Google 的协议栈测试神器 —— packetdrill
5
支撑 TCP 协议的基石 —— 剖析首部字段
6
数据包大小对网络的影响 —— MTU 与 MSS 的奥秘
7
繁忙的贸易港口 —— 聊聊端口号
8
临时端口号是如何分配的
9
从三次握手说起
10
聊聊 TCP 自连接那些事
11
谈谈四次挥手
12
TCP 头部时间戳选项
13
TCP 11 种状态变迁及模拟重现
14
全连接队列和半连接队列与 backlog
15
原始但德高望重的 DDoS 攻击方式 —— SYN Flood 攻击原理
16
来快速打开吧
17
Address already in use —— 聊聊 Socket 选项之 SO_REUSEADDR
18
一台主机上两个进程可以同时监听同一个端口吗
19
优雅关闭连接 —— Socket 选项之 SO_LINGER
20
一个神奇的状态 —— TIME_WAIT
21
产生场景、Connection reset 与 Broken pipe
22
重传机制 —— 超时重传、快速重传与 SACK
23
重传间隔有讲究 —— 多久重传才合适
24
滑动窗口
25
有风度的 TCP —— 拥塞控制
26
Nagle 算法那些事
27
延迟确认那些事
28
keepalive 原理
29
TCP RST 攻击与如何杀掉一条 TCP 连接
30
ESTABLISHED 状态的连接收到 SYN 会回复什么?
31
定时器一览 —— 细数 TCP 的定时器们
32
网络工具篇(一) —— telnet、nc、netstat
33
网络工具篇(二) —— 网络包的照妖镜 tcpdump
34
网络命令篇(三) —— 网络分析屠龙刀 wireshark
35
案例分析 —— JDBC 批量插入真的就批量了吗
36
案例分析 —— TCP RST 包导致的网络血案
37
案例分析 —— 一次 Zookeeper Connection Reset 问题排查
38
案例分析 —— 一次百万长连接压测 Nginx OOM 的问题排查分析