TCP/IP协议栈详解
TCP/IP协议栈是互联网通信的基础,采用分层架构设计。
四层模型
1. 网络接口层 (Network Interface Layer)
- 功能: 负责物理网络传输,处理硬件细节
- 协议: Ethernet, WiFi, PPP
- 数据单元: 帧 (Frame)
- 地址: MAC地址 (48位)
2. 网络层 (Internet Layer)
- 功能: 逻辑寻址和路由选择
- 核心协议: IP (Internet Protocol)
- 数据单元: 数据报 (Datagram)
- 地址: IP地址 (IPv4/IPv6)
- 关键协议:
- IP: 无连接、不可靠的数据报传输
- ICMP: 错误报告和诊断 (ping命令)
- ARP: IP地址到MAC地址的映射
- RARP: MAC地址到IP地址的解析
3. 传输层 (Transport Layer)
-
功能: 端到端通信和可靠性保障
-
主要协议:
TCP (Transmission Control Protocol)
- 面向连接、可靠传输
- 三次握手建立连接
- 流量控制和拥塞控制
- 数据单元: 段 (Segment)
- 端口范围: 0-65535
UDP (User Datagram Protocol)
- 无连接、不可靠传输
- 简单高效,开销小
- 适用于实时应用
- 数据单元: 数据报 (Datagram)
4. 应用层 (Application Layer)
- 功能: 为用户提供网络服务
- 常见协议:
- HTTP/HTTPS: Web服务 (80/443端口)
- FTP: 文件传输 (20/21端口)
- SMTP/POP3/IMAP: 邮件服务
- DNS: 域名解析 (53端口)
- SSH: 安全远程登录 (22端口)
数据封装过程
应用数据 → 应用层头部 → 传输层头部 → 网络层头部 → 数据链路层头部 → 物理传输
端口分类
- 知名端口 (0-1023): 系统保留端口
- 注册端口 (1024-49151): 应用程序注册使用
- 动态端口 (49152-65535): 临时分配使用
常见组合
| 应用 | 传输层 | 网络层 | 端口 |
|---|---|---|---|
| Web浏览 | TCP | IP | 80/443 |
| 文件传输 | TCP | IP | 20/21 |
| 域名解析 | UDP/TCP | IP | 53 |
| 远程登录 | TCP | IP | 22 |
| 邮件发送 | TCP | IP | 25 |
| 邮件接收 | TCP | IP | 110/143 |
💡 学习建议: 理解协议栈的关键是掌握每一层的功能和数据单元的封装过程。
🔗 相关笔记: 01.01_网络基础知识 02.01_网络协议详解