计算机网络期末冲刺:核心大题与实验题实战解析
1. 子网划分实战解析
子网划分是计算机网络考试中的高频考点,几乎每年都会出现。很多同学一看到IP地址和子网掩码就头疼,其实只要掌握核心逻辑,这类题目就是送分题。
先来看一个典型考题(改编自2018年考研真题):
某公司申请到一个C类IP地址192.168.1.0,需要划分6个子网,每个子网至少支持25台主机。请确定子网掩码,并列出所有子网的网络地址和可用IP范围。
解题四步法:
- 确定借位数量:C类地址默认掩码是255.255.255.0(/24)。要划分6个子网,需要满足2^n ≥ 6,n=3(因为2^3=8≥6)
- 计算新掩码:原掩码24位 + 借用的3位 = /27,即255.255.255.224
- 验证主机位:剩余5位主机位(32-27=5),每个子网可用IP为2^5-2=30≥25,满足需求
- 划分子网块:块大小=256-224=32,因此子网为:
- 192.168.1.0/27(实际可用:1-30)
- 192.168.1.32/27(33-62)
- 192.168.1.64/27(65-94)
- 192.168.1.96/27(97-126)
- 192.168.1.128/27(129-158)
- 192.168.1.160/27(161-190)
易错点提醒:
- 第一个子网的网络地址(如192.168.1.0)和最后一个子网的广播地址(如192.168.1.191)不能分配给主机
- 实际考试中可能要求写出二进制形式的子网划分过程,建议用"与运算"演示:
# Python验证子网计算 ip = 0xC0A80100 # 192.168.1.0的十六进制 mask = 0xFFFFFFE0 # 255.255.255.224 print(f"子网1网络地址: {ip & mask}") # 输出子网1的网络地址
2. CSMA/CD难点突破
CSMA/CD(载波监听多路访问/冲突检测)是以太网的核心协议,考试常考计算题。记住这三个关键公式:
- 争用期(碰撞窗口)= 2τ (τ为单程传播时延)
- 最小帧长= 2τ × 数据传输速率
- 退避时间= r × 2τ (r为随机数)
典型例题分析:
某以太网采用CSMA/CD协议,电缆长度2km,信号传播速度2×10^8m/s,数据传输速率10Mbps。求:
- 争用期长度 2) 最小帧长
解题步骤:
- 计算单程时延τ = 距离/传播速度 = 2000/(2×10^8) = 10μs
- 争用期 = 2τ = 20μs
- 最小帧长 = 争用期×速率 = 20×10^-6 × 10×10^6 = 200bit = 25B (注意:以太网规定最小帧长为64B,因此实际需要填充)
避坑指南:
- 单位换算要一致(1μs=10^-6s,1Mbps=10^6bps)
- 实际帧长不足64B时需要填充,但计算时按理论值
- 当题目给出帧长1518B时,可能考察成功传输时延=发送时延+传播时延
3. TCP拥塞控制实战
TCP拥塞控制是传输层重点,常结合拥塞窗口变化图出题。掌握这四个阶段:
- 慢启动:窗口从1开始指数增长(每RTT翻倍)
- 拥塞避免:达到阈值后线性增长(每RTT +1)
- 快重传:收到3个重复ACK时立即重传
- 快恢复:阈值降为当前窗口一半,从新阈值开始拥塞避免
解题模板:
假设阈值初始为16,当拥塞窗口为24时发生超时: 1. 新阈值 = 24/2 = 12 2. 窗口重置为1,进入慢启动 3. 窗口达到12后转为拥塞避免 4. 若在窗口=18时收到3个重复ACK: - 新阈值 = 18/2 = 9 - 窗口 = 9,直接进入拥塞避免真题演练(2016年考研题):
设TCP拥塞控制阈值ssthresh初始为8,当拥塞窗口cwnd=12时出现超时,之后又收到3个重复ACK。请画出cwnd变化示意图(横坐标为传输轮次)。
参考答案:
- 超时后:ssthresh=6,cwnd=1(慢启动)
- cwnd=2,4,6(指数增长)
- cwnd=7,8...(线性增长)
- 收到3个DupACK时:ssthresh=当前cwnd/2,cwnd=ssthresh
4. RIP实验配置详解
RIP(路由信息协议)是必考实验题,记住这些关键命令:
Router> enable Router# configure terminal Router(config)# router rip // 启用RIP Router(config-router)# version 2 // 指定RIPv2 Router(config-router)# network 192.168.1.0 // 宣告直连网络 Router(config-router)# no auto-summary // 关闭自动汇总 Router(config-router)# exit常见问题排查:
- 邻居无法建立:检查
network宣告的网段是否包含接口IP - 路由不更新:确认两端都使用相同版本(v1或v2)
- 路由环路:启用水平分割(默认开启)
实验题示例:
在Packet Tracer中配置R1和R2的RIP协议,使得PC1(192.168.1.2/24)能ping通PC2(192.168.3.2/24)
配置要点:
- 两台路由器接口配置正确IP
- 双方都宣告192.168.1.0和192.168.3.0网络
- 验证命令:
show ip route // 查看路由表 debug ip rip // 观察RIP更新(实验后记得undebug all) ping 192.168.3.2 source 192.168.1.2 // 指定源地址测试
5. TCP三次握手与四次挥手
这是必考概念题,需要掌握每个报文段的标志位和序列号变化。
三次握手过程:
- 客户端→服务端:SYN=1, seq=x(随机)
- 服务端→客户端:SYN=1, ACK=1, seq=y, ack=x+1
- 客户端→服务端:ACK=1, seq=x+1, ack=y+1
四次挥手过程:
- 主动方→被动方:FIN=1, seq=u
- 被动方→主动方:ACK=1, ack=u+1
- 被动方→主动方:FIN=1, ACK=1, seq=v, ack=u+1
- 主动方→被动方:ACK=1, seq=u+1, ack=v+1
常考陷阱:
- 握手阶段SYN要消耗一个序列号(所以第三次握手的seq=x+1)
- TIME_WAIT状态持续2MSL(考试可能问为什么需要这个状态)
- 半关闭状态(一方发送FIN后仍能接收数据)
真题解析(2011年):
主机A向B发起TCP连接,A的初始序列号为1000,B的初始序列号为2000。写出第三次握手时A发送的报文段内容。
答案:
- SYN=0, ACK=1
- seq=1001(A的初始seq+1)
- ack=2001(B的初始seq+1)
6. 数据报分片计算
IP分片考察三个字段:标识、标志(DF/MF)、片偏移。解题步骤:
- 确定MTU(通常以太网为1500B,包含20B IP头)
- 计算每片最大数据长度 = MTU - IP头 = 1480B
- 分片数量 = ceil(原始数据长度/1480)
- 片偏移 = 前一片的偏移 + 前一片数据长度/8
例题:
原始数据报4000B(含20B IP头),MTU=1500B。求各分片参数。
解答:
- 第一片:1480B数据,偏移=0,MF=1
- 第二片:1480B数据,偏移=185(1480/8),MF=1
- 第三片:1020B数据,偏移=370(2960/8),MF=0
注意:
- 片偏移单位是8字节
- 最后一片MF=0,其他MF=1
- 所有分片标识字段相同
7. 路由表更新算法
距离向量算法是RIP的核心,解题时按这个流程操作:
- 收到邻居的路由表后,先把所有"距离"+1,"下一跳"改为邻居
- 对比原路由表:
- 新目的网络:直接添加
- 相同目的网络:
- 下一跳相同:更新
- 下一跳不同:选距离短的
例题:
路由器B原有路由表:
目的网络 距离 下一跳 N1 7 A N2 2 C 收到C发来的路由信息:
目的网络 距离 N2 4 N3 8 求B更新后的路由表。
解答步骤:
- 先处理C的表:距离+1,下一跳改C → N2:5/C, N3:9/C
- 对比更新:
- N1:保留原条目
- N2:5<原距离2?不更新
- N3:新网络,添加
最终答案:
| 目的网络 | 距离 | 下一跳 |
|---|---|---|
| N1 | 7 | A |
| N2 | 2 | C |
| N3 | 9 | C |
8. 考前冲刺建议
最后三天复习策略:
- 重点突破:优先掌握子网划分、CSMA/CD计算、TCP拥塞窗口变化这三类大题
- 实验速记:熟记RIP配置命令和排错步骤(至少手敲3遍)
- 概念梳理:对比记忆CSMA/CD与CSMA/CA、RIP与OSPF的区别
- 真题训练:近5年考题做两遍,第一遍按知识点分类做,第二遍模拟考试环境
常见计算题公式汇总:
- 奈奎斯特定理:C = 2W log₂V
- 香农公式:C = W log₂(1+S/N)
- 信道利用率:U = (发送时延)/(发送时延+2×传播时延)
- 最小帧长:Lmin = 2τ × R
实验题检查清单:
- 接口IP配置正确且no shutdown
- 路由协议版本一致
- network语句包含所有直连网络
- 防火墙/ACL是否阻止了协议报文
