简介这份PDF是西南交通大学计算机网络课程3学分的期末复习题汇编面向正在备考该课程的学生也适合需要系统梳理计算机网络基础知识的自学者。内容以填空题为主覆盖OSI七层模型、TCP/IP四层结构、协议三要素、数据链路层组帧与差错控制、流量控制与滑动窗口、HDLC帧结构、多路复用、PCM编码、网络拓扑与交换技术等核心考点并用红、蓝、绿三色标注2013-2014、2016-2017、2019-2020历年考题来源加※号标记重复出现的高频知识点便于读者按考频优先复习。资源包共1个PDF文件大小约959KB轻量便携适合打印或移动端随时翻阅。目前已有117人学习下载。通过这份题集读者可快速定位各章节重点概念与易错填空对照历年真题检验掌握程度提升期末应试效率。1. 一份 2019 年的期末卷为什么现在还有人翻出来做西南交通大学计算机网络期末复习题(3学分)2019.pdf这个标题看着像一份躺在网盘里吃灰的老资料但它其实是一份被低估的复习骨架。3 学分意味着课时比 2 学分版本多出将近三分之一覆盖范围通常从物理层的编码一直拉到应用层的 HTTP 报文中间还夹着 CRC 校验、滑动窗口、TCP 拥塞控制这些年年必考的硬骨头。很多人拿到这份 PDF 的第一反应是「打印出来刷一遍」但真正高效的做法是把它当成一份考点地图先按章节拆出知识块再对照谢希仁《计算机网络》第八版或自顶向下教材补齐理论最后用真题反推自己哪一层是空的。这份卷子适合三类人期末突击的本科生、考研 408 里计算机网络想拿高分的选手、以及工作后想补网络基础的开发者。它不新但考点分布稳定拿来当自测基准比盲目刷网课划算得多。2. 把 PDF 拆成可复习的章节结构从 3 学分考纲倒推知识块2.1 先搞清楚 3 学分版本比 2 学分多考了什么西南交大的计算机网络课程2 学分和 3 学分的差别不在难度而在覆盖广度。2 学分版本通常砍掉物理层的编码细节、网络层的路由算法推导、以及传输层的部分拥塞控制证明题。3 学分版本则要求你能手算 CRC、画出滑动窗口的状态迁移、解释慢启动和拥塞避免的临界点。拿到这份 2019 年的 PDF 后不要急着从第一题开始做先做一件事把卷面上每道题对应的章节标出来。具体操作是拿一张纸左边写题号右边写它考的是哪一层、哪个协议、哪个机制。比如一道题问「主机 A 向 B 发送 1000 字节数据MSS 为 500 字节接收窗口为 2000 字节画出前三个 RTT 的窗口变化」你标上「传输层 / TCP 滑动窗口 / 窗口缩放」。标完一整份卷子你会得到一张考点热力图重复出现的章节就是这学期老师认为的核心。这一步不需要任何工具但如果你想把 PDF 里的题目提取出来做电子化整理可以用 Python 的 pdfplumber 把文本层抽出来。注意扫描版 PDF 没有文本层抽出来是空的这种情况只能手动录入或者用 OCR。下面这段代码是处理有文本层的 PDF 的常规做法import pdfplumber # 打开 PDF逐页提取文本 with pdfplumber.open(swjtu_cn_2019.pdf) as pdf: full_text for i, page in enumerate(pdf.pages): text page.extract_text() if text: full_text f\n--- 第 {i1} 页 ---\n text else: print(f第 {i1} 页无文本层可能是扫描件) # 按关键词切分题目这里以“题”字为粗略分隔 import re questions re.split(r(?\d[\.、]), full_text) for q in questions[:5]: print(q.strip()[:200])这段代码的逻辑很直接pdfplumber 逐页读取extract_text() 拿到文本层内容如果返回 None 说明这页是图片。参数上唯一需要注意的是 pdfplumber.open() 默认不处理加密 PDF如果文件有密码会直接报错这时候得先用其他工具解密。切分题目用的正则\d[\.、]是匹配「1.」「2、」这种题号格式不同老师出题习惯不同你可能需要根据实际卷面调整。这一步做完你就有了一份可以搜索的题目文本后面查漏补缺会快很多。2.2 按「层」建文件夹物理层到应用层的五块复习材料计算机网络期末复习最怕的是东看一点西看一点最后脑子里没有层次感。我一般会按 OSI 五层模型建五个文件夹把 PDF 里的题目、教材对应章节的笔记、以及自己整理的错题分别放进去。具体分法是物理层放编码题和奈氏准则计算数据链路层放 CRC 校验、PPP 协议、以太网帧格式网络层放 IP 分片、子网划分、路由算法传输层放 TCP 三次握手、滑动窗口、拥塞控制应用层放 DNS、HTTP、FTP 的报文交互。每个文件夹里再建一个错题.md记录做错的题和错因。这个结构的好处是当你发现自己在传输层反复出错时可以集中两三天只攻这一层而不是翻完整本书再回来。以传输层为例2019 年这份卷子里大概率会出现这样一道题给出发送方和接收方的初始序列号、MSS、阈值要求画出拥塞窗口随时间的变化曲线。这种题的核心是记住三个阶段的切换条件cwnd ssthresh 时慢启动每收到一个 ACK 窗口翻倍cwnd ssthresh 时进入拥塞避免每个 RTT 窗口加一遇到超时则 ssthresh 减半、cwnd 归 1。你把这个规则写在错题本第一页每次做题前看一遍比死记硬背强。提示如果 PDF 里的题目没有答案不要花时间到处找「西南交大计算机网络 2019 答案」这种资源大概率找不到或者不完整。正确做法是拿谢希仁第八版的课后习题对照很多期末题就是从课后题改数字来的。2.3 用 CRC 校验题验证自己是否真的会算CRC 校验是数据链路层最容易被低估的考点。很多人觉得「不就是模 2 除法吗」但真到考场上生成多项式给的是 x^4 x 1 这种形式你得先把它转成二进制 10011再在数据后面补 4 个 0然后做异或除法最后取余数作为 FCS。每一步都有坑补零的个数是生成多项式最高次幂不是项数异或除法每次商 1 还是 0 看当前最高位余数位数不够要在前面补零。2019 年这份卷子里如果出现 CRC 题大概率会给你一段报文和生成多项式让你算 FCS 并验证接收端能否检测出错误。我建议你拿一道题手算三遍第一遍照着规则慢慢来第二遍掐时间第三遍试着反过来如果接收端收到的码字能被生成多项式整除说明什么如果不能整除余数对应哪一位出错这种反向思考能帮你应对选择题里「以下哪个码字是合法码字」这类变体。手算熟练之后可以用 Python 写个脚本验证自己的答案def crc_remainder(data_bits, poly_bits): # data_bits: 字符串形式的二进制数据如 1101011011 # poly_bits: 生成多项式二进制如 10011 data list(data_bits 0 * (len(poly_bits) - 1)) poly list(poly_bits) for i in range(len(data_bits)): if data[i] 1: for j in range(len(poly)): data[i j] str(int(data[i j]) ^ int(poly[j])) return .join(data[-(len(poly_bits) - 1):]) # 测试数据 1101011011生成多项式 10011 fcs crc_remainder(1101011011, 10011) print(FCS:, fcs) # 应输出 1110这段代码的关键在data[i j] str(int(data[i j]) ^ int(poly[j]))这一行它模拟的是模 2 除法的异或操作。参数上data_bits 不包含补的零函数内部会自动补poly_bits 必须包含最高位的 1。跑出来的 FCS 如果和手算一致说明你掌握了。如果不一致先检查补零个数对不对再检查异或的时候有没有漏掉某一位。3. 从 2019 年真题反推高频考点哪些题必须拿满哪些可以放3.1 子网划分与 CIDR 聚合网络层必拿分的计算题网络层有一类题是「送分题」也是「送命题」给一个 IP 地址块要求划分成若干子网或者反过来把多个子网聚合成一个 CIDR 块。2019 年这份卷子里大概率有这类题因为它是 3 学分课程里最能区分「背了」和「懂了」的题型。典型问法是某公司分配到 192.168.10.0/24需要划分成 4 个部门每个部门至少 50 台主机请给出子网掩码和每个子网的地址范围。解题步骤固定先确定借几位主机位2^n - 2 50n 最小为 6所以主机位留 6 位子网位借 2 位掩码变成 /26即 255.255.255.192。四个子网分别是 .0/26、.64/26、.128/26、.192/26。这类题最容易翻车的地方是「至少」和「最多」看反以及忘记减去网络地址和广播地址。我一般会让学生在做题时先写一行可用主机数 2^主机位 - 2。这个 -2 就是血泪教训很多人算完 2^6 64 就直接写 64 台结果被扣分。另外CIDR 聚合题要注意「最长前缀匹配」原则聚合后的块必须能覆盖所有子网且不引入额外地址。比如 192.168.0.0/24 和 192.168.1.0/24 可以聚合成 192.168.0.0/23但 192.168.0.0/24 和 192.168.2.0/24 就不能直接聚合成 /23因为中间跳过了 192.168.1.0/24。注意考试时如果题目没有明确说「全 0 和全 1 子网可用」默认按传统方法排除它们。虽然现代设备都支持全 0 全 1 子网但期末卷子往往按教材老规矩来。3.2 TCP 三次握手与四次挥手传输层画图题的得分点传输层的画图题几乎是必考。2019 年这份卷子里如果出现 TCP 连接管理大概率会要求你画出三次握手和四次挥手的报文段交换过程并标出 SYN、ACK、FIN 标志位和序列号变化。三次握手的核心是客户端发 SYN1, seqx服务端回 SYN1, ACK1, seqy, ackx1客户端再发 ACK1, seqx1, acky1。四次挥手则是主动关闭方发 FIN1, sequ对方回 ACK1, seqv, acku1对方准备好后再发 FIN1, ACK1, seqw, acku1主动方回 ACK1, sequ1, ackw1。画图时最容易丢分的是序列号写错。记住一个原则SYN 和 FIN 各消耗一个序列号纯 ACK 不消耗。所以第三次握手里客户端的 seq 是 x1因为第二次握手服务端的 ack 是 x1客户端下一个字节就是从 x1 开始。四次挥手同理主动方发完 FIN 后自己的下一个序列号是 u1但对方发 FIN 时用的 seq 是 w这个 w 和 u 没有直接关系取决于对方在两次挥手之间有没有发数据。如果题目给了「服务端在第二次和第三次挥手之间发送了 100 字节数据」那 w 就等于 v100。我建议你在复习时把三次握手和四次挥手的图各默画五遍直到不看笔记也能标出每个字段。然后做一道变体题如果第三次握手的 ACK 丢失了会发生什么答案是服务端会超时重传 SYNACK客户端收到后重新发 ACK。这种题考的是你对状态机的理解不是死记硬背。3.3 HTTP 与 DNS 的报文交互应用层容易被忽视的细节应用层在期末卷子里通常占 15 到 20 分很多人觉得「HTTP 就是 GET 和 POST」结果选择题里问「HTTP/1.1 默认是否持久连接」就卡住了。2019 年这份卷子里如果考 HTTP可能会让你写一个请求报文和响应报文的格式或者问 DNS 递归查询和迭代查询的区别。请求报文的格式是请求行方法 URL 版本、首部行Host、User-Agent、Connection 等、空行、实体主体。响应报文则是状态行版本 状态码 短语、首部行、空行、实体主体。DNS 查询是另一个高频点。递归查询是客户端只发一次请求剩下的交给本地 DNS 服务器去跑迭代查询是本地 DNS 服务器依次向根、顶级、权威服务器发请求每次拿到下一跳地址。考试时如果问「从输入 URL 到页面显示发生了什么」你要能把 DNS 解析、TCP 连接、HTTP 请求、服务器响应、浏览器渲染串起来。这道题没有标准答案但得分点在于你有没有提到 DNS 缓存、TCP 三次握手、HTTP 持久连接这几个关键词。提示复习应用层时不要只看教材拿浏览器 F12 打开 Network 面板刷新一个页面看看真实的请求头和响应头长什么样。这比背十遍书都管用。4. 避坑与排查做这份 2019 年卷子时最容易翻车的五个地方4.1 现象CRC 校验算出来的余数位数不对原因补零的个数搞错了。生成多项式 x^4 x 1 对应的二进制是 10011最高次幂是 4所以数据后面补 4 个 0不是补 5 个。很多人看到 10011 有 5 位就补 5 个 0结果余数多一位。解决记住公式补零个数 生成多项式最高次幂 二进制位数 - 1。算完之后检查余数位数是否等于最高次幂如果少了就在前面补零。4.2 现象子网划分时可用主机数算多了原因忘记减去网络地址和广播地址。比如 /26 的子网有 6 位主机位2^6 64但可用主机是 62。解决每次算完 2^n 之后立刻在草稿纸上写「-2」养成条件反射。如果题目明确说「全 0 全 1 子网可用」那只在划分子网时可用算主机数时仍然要减 2。4.3 现象TCP 拥塞控制画图时慢启动阶段画错了原因把「每收到一个 ACK 窗口加一」理解成了「每个 RTT 窗口加一」。慢启动是每收到一个 ACKcwnd 加一个 MSS所以一个 RTT 内 cwnd 翻倍。拥塞避免才是每个 RTT 加一。解决画图时先标出 ssthresh 的位置cwnd 从 1 开始指数增长到 ssthresh然后线性增长。遇到超时ssthresh 变成当前 cwnd 的一半cwnd 回到 1重新慢启动。4.4 现象HTTP 请求报文里 Host 首部写成了 IP 地址原因混淆了 Host 和 URL 里的主机名。Host 首部应该写域名比如Host: www.example.com而不是Host: 192.168.1.1。解决记住 HTTP/1.1 强制要求 Host 首部它的作用是支持虚拟主机。考试时如果题目给的是 IP 地址Host 就写 IP如果给的是域名Host 就写域名。4.5 现象DNS 递归查询和迭代查询的箭头画反了原因没分清「谁在跑腿」。递归是本地 DNS 服务器替客户端跑腿迭代是本地 DNS 服务器自己跑腿。解决画图时记住递归查询的箭头从客户端指向本地 DNS 服务器然后本地 DNS 服务器指向根服务器迭代查询的箭头从本地 DNS 服务器依次指向根、顶级、权威每次返回下一跳地址。5. 把这份 PDF 用出最大价值我的复习节奏和验证方法这份 2019 年的卷子最大的价值不是题目本身而是它帮你划定了复习边界。我的习惯是分三轮用它第一轮在复习初期把卷子当目录标出每道题对应的章节找出自己完全没印象的知识块第二轮在复习中期按章节做专项练习每做完一章就回来做卷子里对应的题检验自己是不是真的会了第三轮在考前一周掐时间完整做一遍模拟考场状态。三轮下来你会发现自己的薄弱点从「整章不会」缩小到「某类题型总错」这时候再针对性补漏效率最高。验证自己是否真的掌握了一个考点我有一个简单粗暴的方法找一道同类型的题把数字改掉然后讲给一个完全不懂的人听。如果你能让他听懂说明你懂了如果你讲着讲着卡住了说明你只是记住了答案。比如 TCP 拥塞控制你可以试着用「水管注水」的比喻讲清楚慢启动和拥塞避免的区别慢启动是刚开始不知道水管有多粗每收到一个 ACK 就把水龙头开大一倍到了阈值之后进入拥塞避免每个 RTT 只开大一点点如果水管爆了超时就把阈值降到当前的一半水龙头关到最小重新试。这个比喻能讲通考试画图就不会错。最后说一个我自己的教训不要等到考前三天才开始做这份卷子。计算机网络的知识点之间是有依赖的物理层的编码没搞懂数据链路层的 CRC 就学得别扭传输层的滑动窗口没理解TCP 拥塞控制就是天书。我一般会留出至少两周第一周按层过知识点第二周用这份 PDF 做串联和查漏。如果你现在离考试还有一个月那就更从容了每天花一小时先看教材对应章节再做卷子里的题做完把错题记下来周末统一复盘。这个节奏不快但稳。希望帮到你。本文还有配套的精品资源点击获取
企业数字化 ERP 产品动态
相关推荐
Nginx UI 开发环境搭建:基于 Devcontainer 的一键容器化开发与多节点集群调试指南 后端前端运维MCP 服务 【免费下载链接】nginx-ui Yet another WebUI for Nginx 项目地址: https://gitcode.com/gh_mirrors/ngi/nginx-ui 点击查看 免费下载 导读
本文基于 Nginx UI 仓库的 docs/guide/devcontainer.md 与 .devcontainer 目录下的真实配置&#x… · 2026/9/24 3:02:36
Orleans 生产环境部署与运维完全指南:集群规划、平台选型与故障恢复 后端微服务 【免费下载链接】orleans Cloud Native application framework for .NET 项目地址: https://gitcode.com/gh_mirrors/or/orleans 点击查看 免费下载 导读
本文是 Orleans 生产部署与运维的完整操作指南。Orleans 的生产形态是一组通过 TCP 直连的 silo… · 2026/9/24 3:02:11
单片机开发三语言协同:汇编/C/C++选型与工程实践 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 3:37:45
LLM+BI落地实战:从NL2SQL到自动异常发现的三层技术锚点 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 3:37:38
LTspice噪声仿真三大硬核误区与精准建模实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 3:37:08
MOS非本征电容:仿真与实测差异的根源与LTspice建模 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 3:37:08
如何制作电商商品展示视频 制作电商商品展示视频,你可以使用小云雀AI完成从商品素材到营销脚本、素材生成和片段返工的核心创作环节,最终产出可直接投放到电商平台或广告账户的成片素材,仅在价格合规、投放设置和最终审核环节需要人工承接。本文将以一款日常通勤保温杯… · 2026/9/24 3:36:49
N1盒子刷Armbian安装CasaOS:轻量级NAS搭建与内网穿透指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 3:36:31
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程 简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13
1D-CNN时间序列建模实战:从Conv1d原理到工业落地 简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26
柔软的L:汉语语流中被忽视的舌肌张力控制 1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44