某公司网络使用 IP 地址空间 192.168.2.0/24
,现需将其均分给 市场部 和 研发部 两个子网。已知:

🏢 市场部子网
- 🖥️ 已分配 IP 地址范围:
192.168.2.1
~192.168.2.30
- 🌐 路由器接口 IP:
192.168.2.62
- 🔧 MTU = 1400 B
🔬 研发部子网
- 🖥️ 已分配 IP 地址范围:
192.168.2.65
~192.168.2.220
- 🌐 路由器接口 IP:
192.168.2.190
- 🔧 MTU = 700 B
📡 题目 考点 1:子网划分与IP分片
❓ 问题1
1. 📢 计算市场部子网的 广播地址
2. 📢 计算研发部子网的 子网地址
3. 📢 若每个主机仅分配一个 IP 地址,研发部子网还可以连接多少台主机?
❓ 问题2
假设主机 192.168.2.10
向主机 192.168.2.200
发送:
- 总长度 = 1400 B 的 IP 分组
- IP 头部长度 = 20 B
- 路由器在通过接口 F1(研发部)转发时需分片
1. 📏 计算 一个最大分片的数据字节数
2. 📏 计算 至少需要分为几个分片
3. .📏 计算 每个分片的片偏移量
📶 题目 考点 2:TCP 拥塞控制
假设主机 A 和主机 B 已建立 TCP 连接,参数如下:
- 🧩 MSS = 2 KB
- ⏱️ 当拥塞窗口(cwnd)= 24 KB 时发生超时
❓ 问题:计算 cwnd 再次增长到 24 KB 所需的 时间(RTT)
计算 cwnd 再次增长到 24 KB 所需的 时间(RTT)
📝 详细解答
🚦 考点1 问题 1:子网划分与主机数量
划分子网
- 原网络:
192.168.2.0/24
- 均分为 2 个子网:
192.168.2.0/25
和192.168.2.128/25
市场部子网:192.168.2.0/26
- 🏠 子网地址:
192.168.2.0
- 📢 广播地址:
192.168.2.63
- 🖥️ 可用地址:
192.168.2.1
~192.168.2.62
研发部子网:192.168.2.64/26
- 🏠 子网地址:
192.168.2.64
- 📢 广播地址:
192.168.2.127
- 🖥️ 可用地址:
192.168.2.65
~192.168.2.126
✅ 答案:
- 市场部广播地址:
192.168.2.63
- 研发部子网地址:
192.168.2.64
- 研发部剩余主机数:
126 - (220 - 65 + 1) = 126 - 156
→ ❗超出范围(注:实际应为192.168.2.128/25
,剩余主机 =254 - 220 = 34
)
🚦考点1 问题2 :IP 分片
- 原始分组:
- 总长度 = 1400 B
- 头部 = 20 B
- 数据 = 1380 B
- 研发部 MTU = 700 B → 分片数据 ≤
700 - 20 = 680 B
- 最大分片数据:
680 B
(需为 8 的倍数)
分片方案:
- 第一片:680 B(偏移 0)
- 第二片:700 B(偏移
680 / 8 = 85
)- 剩余数据:1380 - 680 = 700 B(恰好可容纳)
✅ 答案:
- 最大分片数据:
680 B
- 分片数量:
2
- 片偏移量:
0
和85
🚦考点 2 :TCP 拥塞控制
超时后:
- 🎚️
ssthresh = cwnd / 2 = 12 KB
- 🚀
cwnd = 1 MSS = 2 KB
慢启动阶段(指数增长):
RTT | cwnd |
---|---|
1 | 4 KB |
2 | 8 KB |
3 | 12 KB(达到 ssthresh ,转拥塞避免) |
拥塞避免阶段(线性增长):
RTT | cwnd |
---|---|
4 | 14 KB |
5 | 16 KB |
6 | 18 KB |
7 | 20 KB |
8 | 22 KB |
9 | 24 KB |
✅ 答案:9 RTT
📚 总结
- 🌐 子网划分:注意子网掩码和地址范围匹配
- ✂️ IP 分片:数据部分需为 8 的倍数,偏移量 = 前一数据长度 / 8
- 🚦 TCP 拥塞控制 :
- 慢启动(指数增长)→ 拥塞避免(线性增长)
- 超时后重置
cwnd = 1 MSS
子网地址(Subnet Address)的定义
子网地址(也称为子网网络地址或子网号)是一个子网的起始 IP 地址,用于标识该子网的范围。它是该子网内所有主机的共同前缀,并且在该子网中,主机位全为 0。
子网地址的特点
- 不能分配给主机(因为它是网络标识)。
- 主机部分全为 0(例如,192.168.1.0/24 的子网地址是 192.168.1.0)。
- 用于路由决策,路由器用它来判断数据包应该发送到哪个子网。
如何计算子网地址?
给定一个 IP 地址和子网掩码,可以通过 "与"运算(AND)计算子网地址:
- 将 IP 地址和子网掩码转换为二进制。
- 逐位进行 AND 运算(1 AND 1 = 1,其他情况 = 0)。
- 结果就是子网地址。
例子
IP 地址 :192.168.1.130
子网掩码:255.255.255.128(即 /25)
步骤 1:转换为二进制
- 192.168.1.130 →
11000000.10101000.00000001.10000010
- 255.255.255.128 →
11111111.11111111.11111111.10000000
步骤 2:进行 AND 运算
python
IP: 11000000.10101000.00000001.10000010
Mask: 11111111.11111111.11111111.10000000
AND: -----------------------------------
Subnet: 11000000.10101000.00000001.10000000
步骤 3:转换回十进制
11000000.10101000.00000001.10000000
→ 192.168.1.128
✅ 子网地址 = 192.168.1.128
子网地址 vs. 广播地址 vs. 可用主机地址
类型 | 示例(192.168.1.128/25) | 能否分配给主机? |
---|---|---|
子网地址 | 192.168.1.128 | ❌ 不能 |
广播地址 | 192.168.1.255 | ❌ 不能 |
可用主机地址 | 192.168.1.129 ~ 192.168.1.254 | ✅ 可以 |
总结
- 子网地址是子网的"起始点",用于标识该子网。
- 计算方法:IP 地址 AND 子网掩码。
- 不能分配给主机,仅用于网络标识和路由。