强曰为道
与天地相似,故不违。知周乎万物,而道济天下,故不过。旁行而不流,乐天知命,故不忧.
文档目录

TCP/UDP 网络协议教程

TCP/UDP 网络协议教程

概述

本教程系统地介绍 TCP/IP 协议栈中的传输层协议——TCP 和 UDP。从 OSI 模型基础开始,逐步深入到协议细节、编程实践和性能优化。

目录

章节标题核心内容
01TCP/UDP 概述OSI 模型、协议栈、适用场景对比
02IP 协议基础IP 协议、IPv4/IPv6、子网划分、路由、分片
03TCP 头部详解TCP 头部结构、标志位、序列号、确认号、窗口、校验和
04TCP 连接管理三次握手、四次挥手、状态机、TIME_WAIT、半连接
05TCP 可靠传输确认机制、重传策略、超时处理、SACK、滑动窗口
06TCP 流量控制窗口大小、接收窗口、发送窗口、零窗口
07TCP 拥塞控制慢启动、拥塞避免、快速恢复、BBR、CUBIC
08TCP 选项机制MSS、窗口缩放、时间戳、SACK 选项
09UDP 协议详解UDP 头部、无连接特性、适用场景、多播、广播
10Socket API 基础Socket 创建、绑定、监听、连接、IO 多路复用
11TCP 编程实战客户端/服务器编程、并发模型、粘包处理
12UDP 编程实战UDP 收发、广播、多播、可靠性 UDP
13QUIC 协议QUIC 原理、与 TCP 对比、0-RTT、连接迁移
14网络调试工具tcpdump、Wireshark、nc、ss、netstat、nmap
15最佳实践性能优化、安全配置、协议选择指南

学习建议

  1. 初学者:建议按顺序阅读 01-09 章,建立扎实的协议基础
  2. 有经验开发者:可直接跳转到 10-12 章的编程实战内容
  3. 运维/SRE:重点关注 04、07、14、15 章的连接管理和调试工具
  4. 面试准备:03-07 章是高频面试考点

环境准备

# 安装必要工具
sudo apt-get update
sudo apt-get install -y net-tools tcpdump wireshark nmap netcat-openbsd
sudo apt-get install -y python3 python3-pip gcc make

# Python 库
pip3 install scapy psutil