《计算机网络》第二学期期末试卷A (精选01)
《计算机网络》第二学期期末试卷A (精选01)
大学生期末考试复习平台前往平台





一、计算机网络基础知识(每小题 5 分,共 40 分)
1、 学生 A 希望访问某网站 www.tsinghua.edu.cn,A 在其浏览器中输入:
https://www.tsinghua.edu.cn,直到网站首页显示在其浏览器中。
请问:在此过程中,参考 TCP/IP 模型(不考虑最下层),数据经过了哪几层,各层都用到了哪些协议?
::::: details 查看答案与解析
答案:
数据主要经过了应用层、传输层和网络层(网际层)。
各层用到的主要协议如下:
- 应用层:HTTP/HTTPS(获取网页)、DNS(域名解析)。
- 传输层:TCP(HTTPS传输)、UDP(DNS查询)。
- 网络层:IP(数据报寻址)、ARP(获取网关MAC地址)。
解析:
- 域名解析:浏览器首先需要知道服务器的 IP 地址,向 DNS 服务器发起查询。此过程使用 DNS 协议(应用层),基于 UDP 传输(传输层)。
- 建立连接:获取 IP 后,浏览器与服务器通过三次握手建立 TCP 连接(传输层)。
- 安全传输:HTTPS 在 TCP 之上建立 TLS/SSL 安全通道进行加密传输(应用层/传输层之间)。
- 请求网页:连接建立后,浏览器发送 HTTP GET 请求(应用层)。
- 数据路由:所有数据在网络中传输时都被封装为 IP 数据报(网络层),并通过 ARP 协议获取下一跳(如默认网关)的 MAC 地址。
难度: ⭐
考点: #TCP/IP模型 #网络协议
:::: details 💡 学习锦囊
📖 相关公式与知识点:
- TCP/IP 四层模型:应用层、传输层、网际层、网络接口层。
- 常见协议端口:DNS (53), HTTP (80), HTTPS (443)。
::: tip 思路分析
从用户输入 URL 到页面显示的经典流程出发,追踪数据包的生成与传输,按层次归纳所用协议。
:::
::: warning 易错点
- 遗漏 DNS 或 ARP 等辅助协议。
- 混淆协议所在的层次(如误认为 ARP 是数据链路层或物理层)。
:::
::::
:::: details 🔄 举一反三
- 当你在浏览器输入
ping www.baidu.com时,用到了哪些协议?
::: details 查看练习答案与解析
答案:DNS、UDP、ICMP、IP、ARP。解析:首先通过 DNS 解析域名,然后使用 ICMP 协议进行连通性测试。
::: - 在 TCP/IP 模型中,ARP 协议属于哪一层?
::: details 查看练习答案与解析
答案:网络层(网际层)。
解析:ARP 负责将网络层的 IP 地址解析为链路层的 MAC 地址。
:::
::::
:::::
2、简述计算机网络三层设备类型及其在碰撞域和广播域上的区别。
::::: details 查看答案与解析
答案:
- 第一层(物理层)设备:如集线器(Hub)、中继器。
- 碰撞域:不能隔离碰撞域(所有端口属于同一个碰撞域)。
- 广播域:不能隔离广播域(所有端口属于同一个广播域)。
- 第二层(数据链路层)设备:如以太网交换机(Switch)、网桥。
- 碰撞域:能隔离碰撞域(每个端口都是一个独立的碰撞域)。
- 广播域:不能隔离广播域。
- 第三层(网络层)设备:如路由器(Router)。
- 碰撞域:能隔离碰撞域。
- 广播域:能隔离广播域(每个端口都是一个独立的广播域)。
解析:
- 碰撞域(Collision Domain):连接在同一物理介质上的所有站点的集合,这些站点竞争同一信道,容易发生冲突。交换机通过识别 MAC 地址并进行存储转发,实现了端口间的隔离。
- 广播域(Broadcast Domain):网络中能接收任一设备发出的广播帧的所有设备的集合。路由器工作在三层,默认不转发广播报文,从而隔离了广播域。
难度: ⭐
考点: #网络设备 #碰撞域 #广播域
:::: details 💡 学习锦囊
📖 相关公式与知识点:
- 碰撞域属于物理层概念,广播域属于数据链路层/网络层概念。
- VLAN(虚拟局域网)也可以在二层隔离广播域。
::: tip 思路分析
对比物理层、数据链路层 and 网络层核心设备的功能特点,层级越高,处理数据的粒度越细,隔离能力越强。
:::
::: warning 易错点
- 误认为交换机(二层)可以隔离广播域。
- 混淆集线器和交换机的工作原理。
:::
::::
:::: details 🔄 举一反三
- 一个 24 口的百兆交换机,默认情况下有几个碰撞域和几个广播域?
::: details 查看练习答案与解析
答案:24 个碰撞域,1 个广播域。解析:交换机每个端口独享带宽,是一个独立的碰撞域;但默认属于同一个局域网,无法隔离广播。
::: - 路由器工作在 OSI 模型的哪一层?其核心功能是什么?
::: details 查看练习答案与解析
答案:网络层。核心功能是路由选择和分组转发。
:::
::::
:::::
3、简述拥塞控制和流量控制的定义和区别。
::::: details 查看答案与解析
答案:
- 定义:
- 流量控制(Flow Control):抑制发送端的发送速率,以确保接收端来得及接收,防止接收缓冲区溢出。
- 拥塞控制(Congestion Control):防止过多的数据注入到网络中,以避免网络中的路由器或链路过载。
- 区别:
- 范围不同:流量控制是点对点的控制(端到端);拥塞控制是全局性的控制(涉及所有主机和路由器)。
- 感知机制:流量控制基于接收方通告的窗口大小(rwnd);拥塞控制基于网络丢包或延迟感知的拥塞窗口(cwnd)。
解析:
- 流量控制解决的是“接收方处理不过来”的问题,通过滑动窗口机制实现。
- 拥塞控制解决的是“网络带宽不够用”的问题,通过慢开始、拥塞避免、快重传、快恢复四个算法动态调整。
难度: ⭐
考点: #流量控制 #拥塞控制 #TCP协议
:::: details 💡 学习锦囊
📖 相关公式与知识点:
- 发送窗口 = min ( cwnd , rwnd ) \min(\text{cwnd}, \text{rwnd}) min(cwnd,rwnd)。
::: tip 思路分析
从控制的对象(发送方/接收方 vs 全局网络)和目的出发进行对比记忆。
:::
::: warning 易错点
- 将两者的定义混淆。
- 认为拥塞控制只是发送方单方面决定的。
:::
::::
:::: details 🔄 举一反三
- TCP 的拥塞避免算法中,拥塞窗口(cwnd)是如何增长的?
::: details 查看练习答案与解析
答案:每个轮次(RTT)加 1,呈加法增大(AIMD 中的 AI 部分)。
解析:当 cwnd 达到阈值(ssthresh)后,进入拥塞避免阶段,窗口由指数增长变为线性增长。
:::
::::
:::::
4、 简述主机 1(IP 地址为 192.168.1.1/24,MAC 地址为 E1)向主机 2(IP 地址为192.168.1.2/24,MAC 地址为 E2)发送数据时 ARP 协议的工作过程。
::::: details 查看答案与解析
答案:
- 查询缓存:主机 1 检查本地的 ARP 缓存表,寻找 192.168.1.2 对应的 MAC 地址。若存在,则直接使用并发送数据。
- 广播请求:若缓存中没有,主机 1 在局域网内广播发送 ARP 请求报文(源 IP 为 192.168.1.1,源 MAC 为 E1,目的 IP 为 192.168.1.2,目的 MAC 为全 F)。
- 识别响应:局域网内的所有主机收到该广播。主机 2 发现请求的 IP 与自己匹配,先将主机 1 的 IP-MAC 映射存入自己的 ARP 缓存。
- 单播回复:主机 2 向主机 1 单播发送 ARP 响应报文(源 IP 为 192.168.1.2,源 MAC 为 E2)。
- 记录并发送:主机 1 收到响应,将主机 2 的 MAC 地址(E2)记入 ARP 缓存,随后开始封装并发送数据帧。
解析:
ARP(地址解析协议)实现了从网络层 IP 地址 to 数据链路层 MAC 地址的映射。核心机制是“广播询问,单播回答”。
难度: ⭐
考点: #ARP协议 #局域网通信
:::: details 💡 学习锦囊
📖 相关公式与知识点:
- ARP 缓存表具有老化机制(TTL),防止拓扑变化导致地址错误。
::: tip 思路分析
按照“查表 -> 广播 -> 匹配 -> 响应 -> 记录”的顺序梳理网络交互流程。
:::
::: warning 易错点
- 混淆请求(广播)和响应(单播)的发送方式。
- 跨网段通信时误认为直接请求目标主机(实际应请求网关)。
:::
::::
:::: details 🔄 举一反三
- 如果主机 2 的 ARP 缓存表是满的,它还会记录主机 1 的映射吗?
::: details 查看练习答案与解析
答案:会。ARP 缓存通常采用 LRU(最近最少使用)算法进行替换更新。
:::
::::
:::::
5、已知信道带宽为 6KHz、采用如下图所示的QAM调制, 分别计算在不考虑噪声情况下和信噪比为30dB 情况下的最大数据传输速率。(要求列出简要计算步骤)

::::: details 查看答案与解析
答案:
- 不考虑噪声情况:最大数据传输速率为 48 Kbps。
- 信噪比为 30dB 情况:最大数据传输速率约为 59.8 Kbps。
解析:
-
分析星座图:
由图可知,QAM 调制星座图共有 16 个点,表示有 16 种不同的状态(码元)。因此,每个码元携带的数据量为:n = log 2 ( 16 ) = 4 bits n = \log_2(16) = 4 \text{ bits} n=log2(16)=4 bits
-
无噪声情况(奈奎斯特定理):
C max = 2 W log 2 ( N ) C_{\max} = 2W \log_2(N) Cmax=2Wlog2(N)
其中 W = 6 KHz W = 6\text{ KHz} W=6 KHz, N = 16 N = 16 N=16。
C max = 2 × 6000 × 4 = 48000 bps = 48 Kbps C_{\max} = 2 \times 6000 \times 4 = 48000 \text{ bps} = 48 \text{ Kbps} Cmax=2×6000×4=48000 bps=48 Kbps -
有噪声情况(香农公式):
C max = W log 2 ( 1 + S / N ) C_{\max} = W \log_2(1 + S/N) Cmax=Wlog2(1+S/N)
已知信噪比 S N R d B = 30 dB SNR_{dB} = 30\text{ dB} SNRdB=30 dB,转换为比值:
30 = 10 log 10 ( S / N ) ⇒ S / N = 10 3 = 1000 30 = 10 \log_{10}(S/N) \Rightarrow S/N = 10^3 = 1000 30=10log10(S/N)⇒S/N=103=1000C max = 6000 × log 2 ( 1 + 1000 ) ≈ 6000 × 9.9672 = 59803 bps ≈ 59.8 Kbps C_{\max} = 6000 \times \log_2(1 + 1000) \approx 6000 \times 9.9672 = 59803 \text{ bps} \approx 59.8 \text{ Kbps} Cmax=6000×log2(1+1000)≈6000×9.9672=59803 bps≈59.8 Kbps
难度: ⭐⭐
考点: #奈氏准则 #香农公式 #QAM调制
:::: details 💡 学习锦囊
📖 相关公式与知识点:
- 奈氏准则适用于无噪声信道。
- 香农公式给出了有噪声信道的极限传输速率。
::: tip 思路分析
首先通过图像识别出码元状态数,再分别应用奈氏和香农两个核心公式计算。
:::
::: warning 易错点
- 误将 30dB 直接代入香农公式,忘记转换为比值。
- 星座图点数数错。
:::
::::
:::: details 🔄 举一反三
- 若信道带宽为 4KHz,采用 4 相位、每相位 2 种振幅的 QAM 调制,无噪声下的最大速率是多少?
::: details 查看练习答案与解析
答案:24 Kbps。解析:状态数 N = 4 × 2 = 8 N = 4 \times 2 = 8 N=4×2=8。 C = 2 × 4 K × log 2 ( 8 ) = 24 Kbps C = 2 \times 4\text{K} \times \log_2(8) = 24\text{ Kbps} C=2×4K×log2(8)=24 Kbps。
::: - 信噪比为 20dB 时,带宽为 3KHz 的信道最大容量是多少?
::: details 查看练习答案与解析
答案:约 20 Kbps。
解析: S / N = 100 S/N = 100 S/N=100。 C = 3 K × log 2 ( 101 ) ≈ 3 K × 6.658 = 19.97 Kbps C = 3\text{K} \times \log_2(101) \approx 3\text{K} \times 6.658 = 19.97\text{ Kbps} C=3K×log2(101)≈3K×6.658=19.97 Kbps。
:::
::::
:::::
6、 假定要发送信息位串为 11001011,采用 CRC 校验,若生成多项式为 P ( X ) = X 4 + X 2 + X + 1 P(X) = X^4 + X^2 + X + 1 P(X)=X4+X2+X+1,试回答以下问题。
(1)求应添加在数据后面的余数。(写出计算过程)
(2)若数据在传输过程中最后两个 1都变成了 0,问接收端能否发现,为什么?
(3)采用CRC检验后,数据链路层的传输是否为可靠传输?
::::: details 查看答案与解析
答案:
(1) 应添加的余数为 0111。
(2) 能发现。因为接收端收到受损数据后,进行模 2 除法运算得到的余数(1001)不为 0。
(3) 不是可靠传输。CRC 只能保证“无差错接收”,无法处理帧丢失、失序等问题。
解析:
(1) 生成多项式 P ( X ) = X 4 + X 2 + X + 1 P(X) = X^4 + X^2 + X + 1 P(X)=X4+X2+X+1,对应二进制位串为 10111 10111 10111(阶数 k = 4 k=4 k=4)。
数据后补 4 个 0,得到 110010110000 110010110000 110010110000。
进行模 2 除法运算:
- 11001 ⊕ 10111 = 01110 11001 \oplus 10111 = 01110 11001⊕10111=01110,补位得 11100 11100 11100
- 11100 ⊕ 10111 = 01011 11100 \oplus 10111 = 01011 11100⊕10111=01011,补位得 10111 10111 10111
- 10111 ⊕ 10111 = 00000 10111 \oplus 10111 = 00000 10111⊕10111=00000,补位得到最后的 10000 10000 10000
- 10000 ⊕ 10111 = 00111 10000 \oplus 10111 = 00111 10000⊕10111=00111
最终余数为 0111。
(2) 错误数据为 110010000111 11001000 0111 110010000111,用 10111 10111 10111 去除,余数为 1001 ≠ 0 1001 \neq 0 1001=0,故能检测。
难度: ⭐⭐
考点: #CRC校验 #差错检测
:::: details 💡 学习锦囊
📖 相关公式与知识点:
- 模 2 运算法则:异或操作(相同为 0,不同为 1)。
::: tip 思路分析
牢记模 2 除法的核心步骤,注意补零的个数等于生成多项式的最高阶数。
:::
::: warning 易错点
- 补零个数错误。
- 模 2 减法做成了普通减法(忘记异或规则)。
:::
::::
:::: details 🔄 举一反三
- 若数据为 1010,生成多项式为 X 3 + 1 X^3 + 1 X3+1,求校验位。
::: details 查看练习答案与解析
答案:011。
解析:多项式对应 1001 1001 1001。 1010000 ÷ 1001 1010000 \div 1001 1010000÷1001 余数为 011 011 011。
:::
::::
:::::
7、假设主机A通过一条TCP连接向主机 B发送两个TCP报文段。第一个报文段的序号为 160,第二个报文段的序号为 300。
(1)第一个报文段中携带多少字节数据?主机 B收到第一个报文发回的确认号是多少?
(2)假设第一个报文段丢失而第二个报文段到达主机 B,那么在主机 B发往主机A的确认报文中,确认号应该是多少?
::::: details 查看答案与解析
答案:
(1) 第一个报文段携带了 140 字节 数据;主机 B 发回的确认号是 300。
(2) 确认号应该是 160。
解析:
(1) TCP 序号是本报文段发送的数据的第一个字节的编号。
第一个报文段的起始序号为 160,第二个为 300。
所以第一个报文段的数据量为:
300 − 160 = 140 字节 300 - 160 = 140 \text{ 字节} 300−160=140 字节
确认号是期望收到对方下一个报文段的第一个数据字节的序号,即 $160 + 140 = 300$。
(2) TCP 采用累积确认机制。当第一个报文段丢失时,即使收到了第二个报文段,主机 B 仍然期望收到序号 160 开始的数据,因此发回的确认号依然是 160。
难度: ⭐⭐
考点: #TCP序号 #累积确认
:::: details 💡 学习锦囊
📖 相关公式与知识点:
- 确认号 = 已成功接收的最后一个字节序号 + 1 \text{确认号} = \text{已成功接收的最后一个字节序号} + 1 确认号=已成功接收的最后一个字节序号+1。
::: tip 思路分析
理解 TCP 序号的连续性以及确认号“期待下一字节”的深刻含义。
:::
::: warning 易错点
- 误认为确认号是对收到报文的简单应答。
- 忽略累积确认导致丢失时确认号不推进。
:::
::::
:::: details 🔄 举一反三
- 若 A 发送了 1-100 和 101-200 两个段,201-300 丢失,B 收到前两个段,确认号是多少?
::: details 查看练习答案与解析
答案:201。
解析:1-200 均已收到,期待第 201 字节。
:::
::::
:::::
8、网络如下图连接,启动前,两个交换机(SW1,SW2)中的转发表都是空的,之后有以下各站向其他的站发送了数据帧,请将有关数据填写在表中。

| 发送的帧 | SW1 的转发表 | SW2 的转发表 |
|---|---|---|
| A->D | 地址: A, 端口: 1 | 地址: A, 端口: 4 |
| C->E | 地址: C, 端口: 3 | 地址: C, 端口: 4 |
| E->C | 地址: E, 端口: 4 | 地址: E, 端口: 2 |
| B->A | 地址: B, 端口: 2 | 无变化 |
| D->E | 无变化 | 地址: D, 端口: 1 |
::::: details 查看答案与解析
答案:
见上表(注:无变化表示该帧未泛洪到该交换机,或该交换机未记录新地址)。
解析:
交换机基于源 MAC 地址进行转发表的学习(反向学习)。
- A->D:SW1 从端口 1 收到,记录 A:1,泛洪。SW2 从端口 4 收到,记录 A:4。
- C->E:SW1 从端口 3 收到,记录 C:3,泛洪。SW2 从端口 4 收到,记录 C:4。
- E->C:SW2 从端口 2 收到,记录 E:2。因 SW2 查表知 C 在端口 4,故单播转发。SW1 从端口 4 收到,记录 E:4,单播转发至端口 3。
- B->A:SW1 从端口 2 收到,记录 B:2。因 SW1 查表知 A 在端口 1,直接单播转发,SW2 无法收到此帧。
- D->E:SW2 从端口 1 收到,记录 D:1。查表知 E 在端口 2,单播转发,SW1 无法收到此帧。
难度: ⭐⭐
考点: #交换机自学习 #帧转发机制
:::: details 💡 学习锦囊
📖 相关公式与知识点:
- 过滤:若目标地址在已知端口,则只向该端口转发。
- 泛洪:若目标地址未知,则向除源端口外的所有端口广播。
::: tip 思路分析
模拟网络通信,一步步追踪数据帧的流向,明确只有帧流经的交换机才能学习到源地址。
:::
::: warning 易错点
- 误认为所有帧都会在全网泛洪。
- 学习的是源 MAC 地址,不是目的 MAC 地址。
:::
::::
:::: details 🔄 举一反三
- 若之后 A 发送数据给 B,哪些交换机能学到 A 的地址?
::: details 查看练习答案与解析
答案:SW1。
解析:SW1 已知 B 在端口 2,直接单播转发,帧不流经 SW2。
:::
::::
:::::
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)