tcp/ip二














注意程序释放了端口不一定释放了端口是协议栈释放









以下是关于 IP 报文 和 TCP 报文 的详细解释文档,包括它们各自的结构、字段说明及长度。此文档不包含对比,而是分别讲解每种报文的格式与用途,并附有简化结构图。
📄 IP 报文 和 TCP 报文结构与字段详解文档
🧱 一、IPv4 报文(IP Packet)详解
📌 功能说明:
IP 报文是网络层的核心数据结构,用于将数据从一个主机传送到另一个主机。它负责寻址与路由转发,但不提供可靠性。
🧩 报文结构图(IPv4 Header)
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Version| IHL |Type of Service| Total Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Identification |Flags| Fragment Offset |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Time to Live | Protocol | Header Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination IP Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options (if any, variable) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
📦 IP 报文字段详解
| 字段名 | 长度(bit) | 说明 |
|---|---|---|
| Version | 4 | IP 协议版本(IPv4 为 4) |
| IHL | 4 | IP 头部长度(以 4 字节为单位),最小值 5(即 20 字节) |
| Type of Service | 8 | 服务类型,控制优先级、延迟、吞吐量等 |
| Total Length | 16 | IP 报文总长度(包括头部和数据),单位为字节 |
| Identification | 16 | 唯一标识,用于分片重组 |
| Flags | 3 | 标志位:如 DF(不分片)、MF(更多分片) |
| Fragment Offset | 13 | 分片偏移,单位为 8 字节 |
| Time to Live (TTL) | 8 | 生存时间,防止环路,经过每个路由器减 1 |
| Protocol | 8 | 上层协议编号(如 TCP 为 6,UDP 为 17) |
| Header Checksum | 16 | 检查 IP 头部是否损坏 |
| Source IP Address | 32 | 源 IP 地址 |
| Destination IP Address | 32 | 目标 IP 地址 |
| Options(可选) | 可变 | 特殊控制用途,如安全级别、时间戳等 |
| 填充(Padding) | 可变 | 使头部总长度为 4 字节倍数 |
📐 IPv4 报文头最小为 20 字节,最大 60 字节(包含 options)
🧱 二、TCP 报文(TCP Segment)详解
📌 功能说明:
TCP 报文是传输层的数据结构,提供可靠、面向连接、按序传输的数据通道,支持流量控制、重传机制和拥塞控制。
🧩 报文结构图(TCP Header)
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Port | Destination Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Acknowledgment Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data |Rese-|U|A|P|R|S|F| |
|Offset|rved |R|C|S|S|Y|I| Window Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Checksum | Urgent Pointer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options (if any, variable) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data (payload) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
📦 TCP 报文字段详解
| 字段名 | 长度(bit) | 说明 |
|---|---|---|
| Source Port | 16 | 源端口号 |
| Destination Port | 16 | 目标端口号 |
| Sequence Number | 32 | 本段数据第一个字节的序号 |
| Acknowledgment Number | 32 | 期望接收的下一个序列号 |
| Data Offset(Header Length) | 4 | TCP 头部长度(单位为 4 字节) |
| Reserved | 3 | 保留字段 |
| Flags(控制位) | 9 | 如 SYN, ACK, FIN, RST 等,见下表 |
| Window Size | 16 | 接收方缓冲区剩余空间(流量控制) |
| Checksum | 16 | 校验整个 TCP 段(包括伪首部) |
| Urgent Pointer | 16 | 如果 URG 位为 1,表示紧急数据的结束偏移 |
| Options(可选) | 可变 | 例如最大报文段、时间戳、窗口扩大等 |
| Data(Payload) | 可变 | 实际传输的数据内容 |
🧿 TCP 控制位(Flags)说明
| 名称 | 简写 | 含义 |
|---|---|---|
| URG | 紧急 | 紧急指针字段有效 |
| ACK | 确认 | 确认号有效 |
| PSH | 推送 | 请求立即传送给接收应用 |
| RST | 重置 | 强制断开连接 |
| SYN | 同步 | 建立连接(握手) |
| FIN | 结束 | 关闭连接 |
📏 三、长度总结
| 报文类型 | 最小长度 | 最大长度(含可选字段) |
|---|---|---|
| IPv4 Header | 20 字节 | 60 字节 |
| TCP Header | 20 字节 | 60 字节(含 options) |
| TCP Payload | 0+ 字节 | 取决于 MTU、窗口大小 |
✅ 四、常见组合(抓包可见)
| 场景 | IP 报文 | TCP 报文 |
|---|---|---|
| 建立连接 | Protocol = 6 | Flags: SYN, ACK |
| 传输数据 | Protocol = 6 | Flags: PSH, ACK |
| 正常关闭连接 | Protocol = 6 | Flags: FIN, ACK |
| 异常断开连接 | Protocol = 6 | Flags: RST |
📘 五、总结
-
IP 报文负责“主机到主机”的路由传输,定位的是 IP 地址。
-
TCP 报文负责“端口到端口”的可靠通信,处理的是连接、确认、重传等控制。
-
TCP 报文是被 IP 报文封装发送的,是一种分层封装的体现。
+-----------------------------+
| 以太网帧(MAC 层) |
| +------------------------+ |
| | IP 报文(L3) | |
| | +--------------------+| |
| | | TCP 报文(L4) || |
| | | +--------------+ || |
| | | | 应用数据 | || |
| | | +--------------+ || |
| | +--------------------+ |
| +------------------------+ |
+-----------------------------+















重传

浙公网安备 33010602011771号