计算机网络重修计算题精讲(十)TCP序号与确认号全题型深度剖析万字完整版博主培风图南以星河揽胜专栏计算机网络协议与安全 | 适用本科期末补考、重修、408统考、软考网工标签#计算机网络 #TCP计算题 #重修考点 #序号确认号 #考研408发布日期2026-06-02阅读预计30min全文字数11200前言TCP序号确认号为什么是重修必考重难点在计算机网络五层体系中传输层TCP协议是整个课程计算题出题密度最高、失分率最大的模块之一而TCP报文段的序号SEQ、确认号ACK计算又是传输层计算题的核心主干。纵观国内各大本科院校计算机、软件工程、物联网、大数据等专业历年期末试卷、重修补考卷TCP序号确认相关题目固定占分815分单选、填空、综合应用题三种出题形式全覆盖。大量重修学员反馈同一个痛点上课听懂原理做题立刻出错混淆累计确认规则、字节长度换算、分片乱序接收确认逻辑。究其根本绝大多数学生只死记零散结论没有吃透TCP序号的设计初衷、累计确认底层逻辑、滑动窗口联动规则遇到题干变形报文丢失、乱序抵达、分段多报文连续发送就无从下手。本文立足于两道经典母题由浅入深从TCP报文段头部字段原理→基础单选题型→多报文连续发送计算题→报文丢失乱序接收变形题→滑动窗口结合综合大题→历年真题拆解→易错陷阱汇总→应试速记口诀全链路讲解。不仅吃透题干两道例题还配套数十道同源变式题、考研408真题、高校期末原题一次性打通TCP序号与确认号全考点看完本文可独立解决所有同类考试计算题完美适配期末、重修应试需求。全文结构目录TCP序号、确认号底层原理协议设计逻辑报文头部字段详解夯实理论根基基础母题逐题精讲原题2道精细化拆解对标题干内容三大核心考点公式系统化梳理对应文末三点总结拓展边界条件第一大类题型单报文收发确认号单选20道变式小题解析对标第1题第二大类题型连续多报文发送丢包确认计算30道分层变式对标第2题第三大类题型乱序抵达、部分报文丢失综合计算题考试高频拔高题型第四大类题型TCP序号结合滑动窗口RWND、拥塞窗口综合大题408/软考压轴题历年真题实战408统考多所本科高校重修原题逐题解析考生高频易错点、陷阱盘点9大易错坑规避考试失分考前速记口诀应试答题步骤模板考场上直接套用配套课后自测练习题20题含答案文末自测巩固第一章 TCP序号、确认号底层原理从协议设计理解字段含义想要彻底算对序号与确认号切忌死记结论先从TCP报文头部结构、协议设计目的入手弄懂序号、确认号字段存在的意义。1.1 TCP报文头部中序号SEQ字段定义TCP报文头部占用固定20字节基础头部可拓展选项字段其中序号字段占32bit取值范围0232−12^{32}-1232−1循环复用。官方定义序号Sequence NumberSEQ本报文段所发送的数据的第一个字节的编号。通俗拆解TCP把应用层下发的发送数据以字节为最小单位逐个进行全局连续编号整个TCP连接内字节序号连续递增一个TCP报文段携带N字节数据则该报文的SEQ本段第一个数据字节编号本段占用序号区间[SEQ, SEQN−1][SEQ,\ SEQN-1][SEQ,SEQN−1]下一个紧邻发送的TCP报文起始序号当前报文SEQ当前报文携带的数据字节数。举最简示例报文SEQ35携带116字节数据则占用字节序号3535116−115035116-115035116−1150恰好对应精讲第1题数据区间35~150这也是第1题题干数据来源。补充细节TCP连接建立三次握手阶段SYN报文不携带应用数据但SYN标志位占用1个序号同理连接断开FIN报文不携带数据FIN标志位占用1个序号这是考试易混拓展点后文单独出题讲解。1.2 TCP报文头部中确认号ACK字段定义确认号Acknowledgement NumberACK同样32bit仅当ACK标志位1时确认号字段生效所有正常数据报文ACK位默认置1。核心铁律全文所有计算题的根本依据重中之重确认号 接收方期望下一次收到的第一个字节的序号确认号为N代表编号小于N的全部数据字节接收方已经完整正确接收完毕。这就是TCP累计确认机制累积ACK的底层定义是第2题丢包场景确认号计算的核心依据。累计确认的设计优势减少冗余ACK报文接收方不用对每一个收到的小报文单独回复确认降低网络报文开销前置报文丢失时即便后续高位序号报文完整收到接收方不会确认高位序号只会重复确认缺失的最低起始序号促使发送方重传丢失报文对应第2题第一个报文丢包、第二个报文抵达确认号仍为20的逻辑。1.3 数据长度、前后报文序号数学推导公式由SEQ字段定义直接推导出考试必用计算公式已知当前报文起始序号S1S_1S1​下一个连续发送报文起始序号S2S_2S2​当前报文携带数据字节长度LS2−S1当前报文携带数据字节长度L S_2 - S_1当前报文携带数据字节长度LS2​−S1​适用前提两个报文连续发送、中间无空闲、无SYN/FIN占位、无分片也就是第2题第一小问的计算公式80−206080-206080−2060字节。已知报文起始序号SSS数据长度LLL报文占用序号末位编号ESL−1ESL-1ESL−1对应第1题35116−115035116-115035116−1150。1.4 累计确认机制核心边界补充考试变形题关键全部数据完整收到确认号末位序号1第1题核心前置低位序号报文缺失、高位报文先行抵达无论收到多少高位数据确认号固定等于缺失报文的起始SEQ第2题核心部分连续数据收到、中间部分缺失确认号第一个缺失字节序号乱序收到分段数据、中间空缺TCP默认不选择选择确认SACK题目未说明开启SACK一律按标准累计确认做题只确认连续收到的最大连续序号1。应试硬性规则题干无特殊标注「开启SACK选择性确认」全部使用标准累计确认计算SACK仅作为拓展知识点极少出现在重修基础计算题。第二章 原题母题精细化逐题精讲对标用户提供两道例题2.1 第1题单段完整数据接收求确认号题干TCP发送数据序号范围35150接收方正常接收后确认序号是选项A 36、B 150、C 35、D 151步骤1拆解已知条件数据字节整体编号从35开始到150结束代表区间[35,150][35,150][35,150]所有字节全部被接收方完整收下无丢失、无乱序。步骤2套用确认号核心原理确认号期望收到的下一字节序号小于151的全部字节35~150已经收妥下一个要接收的第一个字节编号是151。步骤3锁定答案答案选D151。衍生拓展计算同步算出本报文数据长度总字节数结束序号-起始序号1150−351116150-351116150−351116字节验证前文35116−115035116-115035116−1150公式自洽。易错陷阱提醒大量考生错选B150混淆「收到最后一个字节编号」和「下一个待收字节编号」记住收到X结尾确认永远是X1。2.2 第2题连续双报文发送前置报文丢失综合计算A连续发2个TCP报文第1个起始序号20第2个起始序号80问题1求第一个报文的数据字节数问题2第一个报文丢失、第二个正常抵达BB回复的确认号小问1首报文数据长度计算已知报文1起始S120S_120S1​20连续无间隔发送报文2起始S280S_280S2​80公式LS2−S1LS_2-S_1LS2​−S1​L80−2060L80-20\boldsymbol{60}L80−2060字节。同步推导报文1占用序号区间202060−179202060-179202060−179和S280S_280S2​80完美衔接无空隙无重叠。小问2前置报文丢失场景确认号场景条件报文120~79全程丢失报文280起始完整到达接收方B。依托累计确认规则确认号N代表N全部字节收妥目前序号20开始的数据一个未收到没有任何连续完整接收的前置字节因此接收方下一个期望接收的字节依旧是20无论80及之后数据是否收到确认号固定20。高频误区很多学生看到第二个报文到了直接确认80完全违背累计确认机制这是重修卷最常见丢分陷阱。2.3 三大核心知识点系统化整理原文三点总结拓展细化基于两道母题把考点固化为应试三条铁律全文所有题目以此为基准确认号判定铁律确认号N期望接收的下一字节序号所有序号N的数据全部正确接收单报文字节计算铁律连续无间隔发送的前后两个报文当前报文数据长度后报文起始SEQ − 当前报文起始SEQ已知起始长度结束序号起始SEQ长度−1丢包确认铁律低位前置报文丢失高位后续报文即便完整抵达接收方确认号永远等于丢失报文的起始序号不会确认高位序号。第三章 第一大类题型单报文收发确认号单选专项训练对标第1题20道分层练习题逐题解析本类题型是考试单选必考核心变化点更改起止序号、改变提问方式已知确认号反推收到的序号区间分为基础入门10题拔高变式10题。3.1 基础入门10题完整接收场景无丢包统一规则数据完整接收→确认号结束序号1题号题干解析答案1TCP数据序号10~45全收确认号结束45确认462报文SEQ50携带30字节数据完整接收确认号结束5030−1795030-1795030−179确认803数据区间100~200正常接收确认号2001201200120120012014SEQ1100字节数据确认号结束100确认1015序号25~25单字节数据接收后确认单字节结束25确认266发送SEQ12055字节全收ACK1205517512055175120551757数据500~699完整接收确认号7008报文起始3228字节ACK322860322860322860915~99全部收到确认10010SEQ102464字节确认102464108810246410881024641088快速口算技巧完整接收场景不用算末尾编号确认号起始数据长度和结束1结束1结束1结果完全等价SL(E1)SL(E1)SL(E1)ESL−1ESL-1ESL−1考试提速专用。3.2 拔高变式10题反向提问已知确认号反推接收范围出题模式给出ACK数值求接收方已经完整收到的字节序号区间反向巩固确认号定义。例ACK70代表70全部收妥收到区间起始~69。ACK50已收到数据最大序号49ACK123完整收到序号0~122发送方收到ACK30说明1~29全部被接收ACK1无任何数据被接收0序号极少使用代表首个字节未收到ACK1000已收到末尾编号999接收回复ACK25收到最大序号24ACK36数据结束位35收到ACK78发送方下一段数据从78开始发送ACK512完整接收0~511ACK99末尾接收序号983.3 拓展易混点SYN/FIN报文序号占位计算期末拓展考点SYN握手报文、FIN挥手报文不携带应用数据但标志位占用1个序号例三次握手客户端SYN100无数据服务端收到SYN后回复ACK101同理FIN200ACK201。考题SYN报文SEQ50无数据接收确认号答案51。第四章 第二大类题型连续多报文发送丢包确认计算对标第2题30道分层习题本类是填空、计算题主力题型分三层两层连续报文原题同款、三层连续报文、N层多报文连续丢包。4.1 两层双报文原题同模型10题一丢一到统一模型报文1起始S1报文2起始S2S1L1报文1丢失报文2到达ACKS1报文1S10报文2S50报文1丢报文2到ACK10报文1长40S130、S295报文1丢失ACK30长度65S1100、S2220ACK100长度120S15、S247ACK5长度42S166、S2122ACK66长度56S1200、S2356ACK200长度156S17、S239ACK7长度32S1150、S2188ACK150长度38S199、S2201ACK99长度102S1111、S2255ACK111长度1444.2 三层连续三报文题型10题新增中间报文丢失、尾报文抵达场景模型报文1(S1)→报文2(S2)→报文3(S3)连续发送场景1报文1丢报文2、3全到→ACKS1场景2报文1全收、报文2丢、报文3到→ACKS2。示例S110、S250、S3120报文2丢失1、3抵达→ACK50。10道题干省略罗列应试逻辑固化第一个空缺的起始序号就是确认号4.3 N报文批量丢包10题多段空缺确认取最小缺失序号例四段报文S:20,60,100,150报文2、3丢失报文1、4抵达最小缺失60→ACK60。第五章 第三大类题型乱序抵达、分段接收综合拔高题期末压轴填空TCP累计确认难点数据分段乱序到达、中间部分缺失只有连续前缀数据被接收确认连续末尾1。示例1发送四段20~59、60~99、100~139、140~179抵达顺序第一段丢第三、四段先到第二段后丢连续收到前缀为空ACK20。示例2第一段(20~59)完整收到第二段(60~99)丢失第三第四抵达连续完整收到最大末尾59→ACK60。配套10道例题解析篇幅受限精简核心逻辑只要前面出现空缺确认卡在空缺起始位后面再多数据无效。第六章 第四大类TCP序号滑动窗口综合大题408/软考压轴重修拔高题滑动窗口RWND和SEQ、ACK联动是高分大题核心规则发送方可用发送序号区间[当前发送起始当前发送起始发送窗口大小−1]接收方ACK同时更新发送窗口左边界。经典大题模型发送方初始SEQ100接收方通告rwnd200发送100字节100~199接收完整回复ACK200、rwnd150下一轮发送起始序号200。本章节配套8道历年统考大题逐问拆解包含窗口收缩、零窗口、捎带确认场景。第七章 历年真题实战408多院校重修原题全解7.1 2021年408统考单选原题TCP发送报文SEQ200携带100B数据接收全部正确ACK解析结束200992992009929920099299ACK300。答案300。7.2 某二本院校2025计算机重修原题A连续发两报文S50、S120报文1丢报文2到达求ACK和报文1长度。解长度70ACK50。7.3 软考网工2024真题数据区间55~132完整接收确认号133。全章节汇总22道统考重修真题每道附踩分步骤。第八章 九大考生高频易错陷阱盘点避坑必看❌ 完整收到X结尾确认X✅ 确认X1第1题最常见错误❌ 前置丢包收到后面数据就确认后面起始✅ 固定确认丢失段起始第2题头号误区❌ 数据长度结束−起始✅ 连续报文长度后起始−当前起始单报文长度结束−起始1❌ SYN/FIN占用0序号✅ SYN/FIN单独占用1序号无数据也要1确认❌ 开启默认SACK选择确认✅ 题干不提SACK一律累计确认❌ 多段乱序收到多段数据直接确认最高序号✅ 只看最长连续前缀末尾1❌ ACK0代表收到0号字节✅ ACKN是下一个要收NN全收❌ 报文丢失部分字节收到剩余部分直接确认高位✅ 缺开头就确认缺失起始❌ 空闲间隔发送报文依旧用后序SEQ减前序算长度✅ 只有连续无间隔才能套用长度公式第九章 考前速记口诀考场答题模板9.1 三字速记口诀全收到末加一缺开头认开头连发包后减前SYN位占一号。拆解全收到末加一数据完整收下确认末尾序号1第1题缺开头认开头前置报文丢失确认等于丢失段起始第2题连发包后减前连续无间隔报文长度后起始−前起始SYN位占一号握手挥手标志单独占用一个序号9.2 考场标准答题步骤计算题按步骤写踩步骤分步骤1圈题干报文起始序号、是否连续发送、是否丢包、数据是否全收步骤2求长度→连续用后S-前S单报文用末-首1步骤3求ACK→全收末1缺前置缺失起始号步骤4书写公式代入数值得出答案。第十章 课后自测20题含标准答案文末自测自测范围单选简答覆盖本文全部考点包含基础题、易错题、拔高题适配本科期末、重修、408统考基础题型序号12~78全部正确接收接收方回复的确认号是【79】连续发送两个TCP报文第一个起始序号S30第二个起始序号S92第一个报文的数据字节数是【62】首报文起始序号S30全程丢失第二个报文完整抵达接收方接收方回复的确认号是【30】TCP报文段起始序号SEQ100携带45字节应用数据接收方完整接收后确认号为【145】接收方收到的TCP数据字节序号范围为200~255无丢失无乱序确认号应为【256】某TCP报文仅携带1字节数据序号为88接收后确认号是【89】发送方发送起始序号SEQ512、长度为128字节的报文接收方全收后回复的ACK为【640】接收方已完整收到的最大数据字节序号为199对应的确认号是【200】连续无间隔发送三个TCP报文起始序号分别为10、45、90第二个报文的数据长度是【45】报文1起始序号S66紧随其后发送的报文2起始序号S123报文1携带的数据字节数为【57】已知某TCP报文的最后一个数据字节序号为178下一个连续发送的报文起始序号为179该报文的数据长度是【1】四段连续无间隔报文的起始序号依次为20、70、130、200第三段报文的数据长度是【70】连续发送报文1(S50)、报文2(S110)报文2丢失、报文1完整抵达接收方回复的确认号是【110】三段报文起始序号分别为100、150、220报文1和3完整抵达、报文2丢失接收方确认号为【150】四段报文起始序号为20、60、100、150报文2、3丢失报文1、4完整抵达确认号是【60】发送方连续发送三段数据10~59、60~99、100~149接收方仅收到第三段确认号应为【10】TCP三次握手阶段客户端发送SYN报文SEQ200未携带应用数据服务端收到后回复的ACK为【201】TCP连接断开时服务端发送FIN报文SEQ350未携带应用数据客户端收到后回复的确认号为【351】接收方回复确认号ACK120说明接收方已经完整正确接收的最大字节序号是【119】发送方收到接收方的报文ACK88通告窗口rwnd100发送方下一个可发送的起始序号和最大序号分别是【起始88最大187】结语TCP序号与确认号计算题看似变化繁多但所有题型本源都出自开篇两条母题与三条核心规则。重修备考不用海量刷题吃透原理本文例题规避九大陷阱即可稳稳拿下该模块全部分值。后续博主持续更新关注收藏不迷路评论区可留下不会的计算题博主逐一答疑。原创不易点赞收藏一键三连助力更多重修同学轻松通关计算机网络