ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

计算机网络期末复习全攻略:高频考点与计算题套路

计算机网络期末复习全攻略:高频考点与计算题套路 每到期末计算机网络都是最让人头大的课之一。协议多到记不住公式看着简单但一用就错背了一整本的英文缩写拿到试卷还是不知道先写哪个。这篇内容就是照着期末考试的题型和重点来整理的把高频考点、计算题的固定套路、还有试卷上反复出现的坑都摊开讲清楚。不管你是用谢希仁的《计算机网络》第七版第八版还是用自顶向下那本只要把这里面的东西吃透期末及格完全不是问题冲高分也有明显效果。先说下这篇内容的定位它是一份复习提纲、一份错题本、也是一套解题模板。适合两类人一类是平时上课听了点但没形成体系想在考前快速串联知识点的另一类是直接想靠考前突击过关的。无论哪种建议都先花一小时把整体框架读一遍再针对薄弱环节重点补。别一上来就背细节那是做无用功。1. 先说清楚计算机网络期末到底考什么1.1 这门课的考试特点计算机网络和数据结构、操作系统这些课不太一样它的知识点特别碎。从光纤里的光信号到浏览器里的HTTP请求跨度非常大但又都串在一条主线上就是数据从一台主机到另一台主机的完整旅程。期末命题基本围绕这条主线展开分三类题型概念简答、计算分析、协议过程描述。概念简答考的是你对分层模型、协议机制的掌握比如TCP和UDP的区别什么是三次握手这类属于背了就有分。计算分析考的是信道容量、CRC校验、子网划分、滑动窗口利用率这些属于套路题掌握了方法就是送分。协议过程描述最难考试会让你画状态迁移图、描述某个字段的作用或者给一个场景让你分析哪个环节出错这需要真正理解协议的执行过程而不是死记硬背。有个重要的认知要先建立期末考的内容和实际工程项目里的网络问题有很大区别。考试为了考察原理会把很多工程上的复杂性简化成理想模型比如假设信道只有噪声没有其他干扰、假设队列不排队之类。所以复习的时候别用工程思维去较真先按教材的逻辑把模型吃透。1.2 复习顺序与时间分配很多人复习计算机网络喜欢从第一章开始往后翻这是效率最低的方式。我的建议是分层模型优先因为整个学科的体系就是围绕分层建立的。你先把数据链路层、网络层、传输层这三层的关系搞明白后面所有知识点都能找到放置的位置。推荐的复习顺序是这样先用一个下午把OSI和TCP/IP分层模型背熟搞清楚每一层解决什么问题、数据单位叫什么、主要协议有哪些。接着攻物理层和数据链路层这两层是计算题集中地要重点掌握公式和使用条件。然后到网络层IP地址和子网划分是必考计算题路由协议是简答常客。再到传输层TCP的各种机制是全书的精华不能只背结论要理解为什么要这么设计。最后是应用层记住典型协议和端口号配合常见的请求响应过程即可。时间分配上如果总共有十天的冲刺时间我的建议是分层框架占一天物理层加数据链路层占两天网络层占两天传输层占两天半应用层占一天剩下一天半做综合套题。如果只剩三天那就放弃那些边角知识点主攻计算题和TCP、IP这两大核心仍然能保住及格分。2. 分层体系打死也要背下来的框架2.1 OSI七层模型一张表记住各层干什么OSI参考模型把网络通信分成七层从下到上依次是物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。记忆的顺序是从上往下背更容易应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。取每层英文的关键字就是All People Seem To Need Data Processing中文口诀怎么顺怎么来重点是别把顺序搞反。每层对应解决的问题和处理的典型设备最好用一张表来整理层次核心职责典型设备数据单位应用层为应用程序提供网络服务接口网关部分功能报文表示层数据格式转换、加密、压缩—报文会话层建立、管理和终止会话—报文传输层端到端通信、可靠传输、流量控制四层交换机报文段网络层路由选择、逻辑寻址、分组转发路由器分组/包数据链路层相邻节点可靠传输、差错检测、物理寻址交换机、网桥帧物理层透明传输原始比特流、定义电气和接口特性集线器、中继器比特考试常见的一个坑是混淆各层的数据单位。物理层是比特链路层是帧网络层是分组传输层是报文段这五个名词必须记准确。问IP分组在传输过程中经过哪些封装变化标准答案就是应用层产生报文传输层加TCP头部变成报文段网络层加IP头部变成分组链路层加帧头帧尾变成帧物理层转成比特流发送。2.2 TCP/IP四层模型与OSI的对应现实世界用的是TCP/IP模型考试也会考两者的对应关系。TCP/IP模型从上到下是应用层、传输层、网际层、网络接口层。这里有个很多老师喜欢强调的点TCP/IP的应用层对应OSI的应用层加表示层加会话层网络接口层对应OSI的物理层加数据链路层。实际题目里经常给一个协议问你它属于哪一层。HTTP、DNS、DHCP、SMTP、POP3、FTP都属于应用层TCP和UDP属于传输层IP、ICMP、IGMP、OSPF属于网际层ARP和RARP从教材逻辑来说一般归到网络层或网络接口层附近具体看你们教材的章节安排谢希仁版本把ARP放在网络层讲考研408也按这个走。复习的时候把常见协议背下来判断归属题就稳了。这里特别提醒一点OSI模型在考试里出现的频率非常高但不是让你背七层就完了。经常有综合题这样出假设用户访问一个网站从应用层到物理层数据依次经过哪些封装每层添加什么字段。这道题就要求你把整个TCP/IP协议栈的执行过程串起来。所以复习时不要孤立记每一层要在脑子里形成一条完整的数据链路。2.3 封装与解封装数据在网里怎么旅行封装是计算机网络里最核心的机制之一几乎每个层次的协议都在做封装。通俗理解就是每一层给上层的数据包加上自己的隐私包装传输层加端口号网络层加IP地址链路层加MAC地址和帧校验序列。举个实际例子。你在浏览器里输入一个网址并回车应用层的HTTP协议生成一个请求报文交给传输层后TCP给这个报文加上源端口和目的端口计算校验和封装成段。然后交给网络层IP协议在段前面加上源地址和目的地址封装成分组。再交给链路层以太网协议在分组前面加上目的MAC地址和源MAC地址后面加上FCS校验码封装成帧。物理层把这个帧转成比特流通过网线发送出去。接收方做的事情正好反过来逐层去掉头部把数据递给上层。这个过程叫解封装。考试常问路由器转发数据时修改哪些字段标准答案是修改TTL、校验和可能改写源和目的MAC地址跨网络转发时但不修改源和目的IP地址除非NAT。这个问题我在很多试卷里都见过属于看起来简单但容易漏细节的题。3. 物理层与数据链路层计算题最集中的地方3.1 奈奎斯特定理与香农定理两个公式的适用场景物理层的计算题基本围绕两个公式展开奈奎斯特定理和香农定理。奈奎斯特定理适用于无噪声的理想低通信道公式是C 2W log2V其中C是信道容量W是带宽V是信号电平的种数比如二元信号V2四元信号V4。香农定理适用于有高斯白噪声的信道公式是C W log2(1S/N)S/N是信噪比。考试最常见的坑有两个第一个是信噪比单位换算。题目给的是信噪比为30dB要求用香农公式计算必须先把分贝值转换成倍数关系S/N(dB) 10 log10(S/N)所以30dB对应S/N 1000然后代入公式得到C W log2(11000) ≈ W × 9.97。如果不做换算直接套S/N30结果就差得离谱。第二个坑是混淆两个公式的使用条件。题干说在无噪声信道中传输采用4种不同电平信号那就用奈奎斯特定理题干说已知信噪比那就用香农定理。这两种题并列出现就是考察你能不能分清楚。我见过最夸张的一道题把两者混在一起前半问用奈奎斯特后半问用香农很多人直接用同一个公式白白丢掉十几分。这两个公式还有一种考法是反过来考给你信道容量和带宽问你最少需要多少种信号电平。这时候把公式变形log2V C/(2W)然后算V 2的C/(2W)次方向上取整。注意结果必须是整数这属于隐含的送分点。3.2 CRC校验与海明码计算步骤要写完整数据链路层的差错控制是必考的知识点CRC循环冗余校验又是其中的重点。CRC的原理是发送方和接收方约定一个生成多项式发送方在数据后面附加校验码让整个数据加校验码可以被生成多项式对应的二进制数整除接收方用同样的多项式做除法余数为零则无差错。考试计算CRC的标准步骤是这样假设要发送的数据是101001生成多项式是G(x) x3 x2 1对应二进制1101。先在数据后面补k个0k等于生成多项式的最高次幂这里是3所以数据变成101001000。然后把这个加零后的数据按模2除法除以1101模2除法就是异或运算每一位都按位异或不提借位。除完得到的余数就是CRC校验码假设是001把余数拼到原始数据后面发送即101001001。高频陷阱是余数的位数。如果余数不足k位要在前面补0补足k位。比如算出来余数是1但k3就要写成001。很多同学在这里丢分不是不会算是细节没注意。海明码在期末出题频率比CRC低一些但也不能忽略。记住这个判断关系式2^r ≥ n r 1其中n是有效信息位数r是校验位数。海明码的校验位放在2的幂次位置第1、2、4、8位等每个校验位负责一群特定位置的数据位出错时通过多个校验位确定出错点。做题时按教材给的表格一步一步写校验位方程算出结果后回代验证基本不会错。3.3 滑动窗口与ARQ可靠传输的三种机制数据链路层的流量控制和可靠传输核心是三套自动重传请求机制停等协议、后退N帧协议GBN、选择重传协议SR。这三者经常放在同一道题里对比让你算信道利用率、最大窗口、序号范围。停等协议最简单发送窗口大小和接收窗口大小都是1发完一个帧必须等确认才能发下一个。信道的利用率很低公式为U 发送时间 / (发送时间 RTT 确认帧发送时间)如果发送时间和确认发送时间都可以忽略就近似为U Td / (Td RTT)。这个公式必须记住每年都考。GBN协议的发送窗口大于1接收窗口仍然为1。它的特点是发送方允许连续发送多个帧但如果某个帧出错接收方丢弃该帧之后的所有帧发送方从出错帧开始全部重发。GBN的信道利用率计算公式为当窗口足够大时利用率可以接近1瓶颈在于RTT。至于窗口大小和序号比特数的关系如果序号字段有n位那么发送窗口必须满足 Wmax ≤ 2^n - 1。这里很多人记成2^n全是坑GBN为了区分新旧帧必须留出空间所以最大值是减1。SR协议是发送窗口和接收窗口都大于1只重传出错的帧效率最高但接收缓冲和复杂度也高。SR的窗口上限公式是Wmax ≤ 2^(n-1)因为发送窗口和接收窗口大小之和不超过序号空间。这三种机制经常配合一道综合计算题题目给数据帧长度、信道速率、RTT让你分别计算三种情况下的最大信道利用率。解题步骤固定先算发送时间Tf 数据帧比特数 / 速率然后算单程传播时间TpRTT就是2Tp接着算总周期最后用公式代入。把这三套模板练熟这套题就是白送分。3.4 以太网与CSMA/CD退避算法的逻辑要理解以太网是数据链路层到物理层最典型的实现CSMA/CD载波监听多点接入/碰撞检测是共享式以太网的核心协议。考试常考它的工作流程先听后发、边发边听、冲突停止、随机退避。这四句话是标准答案几乎每年都背一遍。CSMA/CD采用截断二进制指数退避算法这里有几个关键参数。争用期是2倍的单程传播时延即2τ也称冲突窗口。重传次数为k时退避时间是r倍的争用期r从0到2^k - 1中随机取上限是2^10 - 1。这些参数的具体取值考试可能会给关键是理解退避时间随重传次数指数增长目的是降低重发冲突概率。关于最小帧长的计算也是高频考点。当共享式以太网中两个站点之间的距离确定时必须保证帧的发送时间不小于争用期这样才能保证发送方在发送完帧之前能检测到冲突。公式是最小帧长 数据速率 × 2τ。比如一段以太网总线两端距离2000米信号传播速度是2×10^8m/s单程传播时延是10微秒争用期20微秒。如果数据速率是10Mbps最小帧长就是10×10^6 × 20×10^-6 200比特也就是25字节。但以太网标准规定最小帧长64字节比理论值大是为了留出安全余量。记住这个概念比死背64字节有用得多。出题人只要改距离、改速率你就能自己算出来不需要背标准答案。4. 网络层IP地址和路由算法的主战场4.1 IP地址与子网划分年年考年年有人算错网络层最核心的计算题就是IP地址相关的内容。IPv4地址共32位用点分十进制表示。A类地址第一位固定0网络号占8位地址范围1.0.0.0到126.255.255.255但127.x.x.x是环回地址不能用。B类地址前两位固定10网络号16位范围128.0.0.0到191.255.255.255。C类地址前三位固定110网络号24位范围192.0.0.0到223.255.255.255。D类以1110开头是组播地址E类保留。子网划分的标准步骤我总结成四步。第一步根据需求确定需要多少个子网或者每个子网需要多少主机。第二步根据子网数或主机数确定子网号位数和主机号位数遵循2的幂次规则主机地址部分全0是网络地址全1是广播地址这两个不能用。第三步写出新的子网掩码。第四步列出每个子网的网络地址、可用主机范围和广播地址。举个例子把192.168.1.0/24划分成4个子网。需要2位子网号因为2^24。原来的子网掩码是255.255.255.0从主机位借2位后变成255.255.255.192等价于/26。每个子网的地址数是2^664个可用主机数62个。四个子网的网络地址分别是192.168.1.0/26、192.168.1.64/26、192.168.1.128/26、192.168.1.192/26。每个子网的广播地址是下一个子网网络地址减一最后一个子网的广播地址是192.168.1.255。这些数字必须算熟。这道题几乎每个学校期末都考而且经常要求每个子网能容纳30台主机需要划出多少个可用的子网。解题要反过来主机位数至少满足2^k - 2 ≥ 30k最小为5因为2^5 - 2 30刚好够。原来主机位8位借走3位能划2^3 8个子网。这种反向推导的题目关键是先算主机位不是先算子网位。4.2 CIDR与路由聚合合并路由要看清前缀无分类编址CIDR是让IP地址摆脱ABC类限制的重要技术期末会考路由聚合计算。路由聚合就是把多个子网路由合并成一个更大范围的网络地址关键是找这些地址的共同前缀。实际操作中把每个网络地址转成二进制从左边开始找共同位一直找到不同的地方共同位的数量就是新的前缀长度。例如要把192.168.68.0/24和192.168.69.0/24聚合先看第三个字节68的二进制是0100010069是01000101。前7位都是0100010最后一位不同所以共同前缀是16723位聚合后的地址是192.168.68.0/23。这里有个细节聚合后的地址不一定是原来某个子网的网络地址而是它们共同覆盖的更大地址块。考试常设的陷阱是聚合时不能把前缀不同的网络强行合并比如192.168.70.0/24和192.168.71.0/24能合并成192.168.70.0/23但如果和192.168.69.0/24合并就得按整体再找共同前缀不能简单相加。CIDR还有一个高频考点是路由表匹配规则采用最长前缀匹配。一张路由表里有很多条目一条目的IP到达路由器后路由器逐条计算最佳匹配项选择掩码最长的那个作为转发出口。这个知识点经常和路由聚合一起考聚合后前缀变短匹配范围变大会降低路由表的精确性所以有时不能过度聚合。4.3 路由协议RIP、OSPF、BGP各显神通路由协议按作用范围分家内部网关协议常见的就是RIP和OSPF外部网关协议是BGP。这张关系图必须清晰。RIP基于距离向量算法核心是跳数作为度量标准规定最大跳数为1516就表示不可达。RIP向邻居发自己的全量路由表邻居根据Bellman-Ford方程更新自己的表。RIP的收敛速度慢容易产生路由环路解决机制包括水平分割、毒性逆转、触发更新。考试常考距离向量算法如何更新路由表方法是先根据不同邻居发来的信息分别计算到各目标的最短距离然后选最小者。OSPF基于链路状态算法核心是泛洪LSA链路状态通告构建全网拓扑图然后用Dijkstra算法计算最短路径树。OSPF收敛快、支持区域划分和等价负载均衡适合大型网络。RIP和OSPF的对比题目出现频率很高考点包括度量标准跳数 vs 代价、算法类型距离向量 vs 链路状态、更新方式定期全网广播 vs 触发泛洪、路由表信息全表 vs 邻居关系状态等。BGP用于自治系统之间它用的不是单纯的最短路径而是策略路由。考试一般只要求知道BGP邻居关系建立在TCP连接之上端口179路由属性包括AS_PATH、NEXT_HOP等。这个层级的题目在期末不会出得太深记住基本概念就够了。5. 传输层TCP是绝对的重头戏5.1 TCP三次握手与四次挥手必考且常考状态变化三次握手和四次挥手是传层最经典的知识点几乎所有考卷都会出现。三次握手的完整过程要能默写客户端发送SYN报文序号seq x进入SYN_SENT状态。服务器收到后回复SYNACK报文自己的序号seq y确认号ack x1进入SYN_RCVD状态。客户端收到后发送ACK报文确认号ack y1进入ESTABLISHED状态。服务器收到后也进入ESTABLISHED状态。注意三次握手的状态转换叫做客户端主动打开服务器被动打开SYN报文不能携带数据但会消耗一个序号。四次挥手的过程是这样的发完数据后主动关闭方发送FIN报文seq u进入FIN_WAIT_1状态。被动方回复ACKack u1进入CLOSE_WAIT状态。等被动方数据也发送完成后它发送FIN报文seq v进入LAST_ACK状态。主动方收到FIN后回复ACKack v1进入TIME_WAIT状态等待2MSL后关闭。被动方在收到ACK后直接进入CLOSED状态。这里有两个高频考点。第一个是第二个和第三个报文的作用第二步ACK和SYN同时置位确认收到的同时请求建立连接所以服务器必须等自己的SYN准备好才能回复不能提前发ACK再单独发SYN。第二个是TIME_WAIT状态主动关闭方在发送最后一个ACK后必须等待2MSL最大报文段寿命才能彻底关闭目的是确保最后的ACK到达对方防止因ACK丢失导致对方重发FIN同时让之前在网络中滞留的报文失效。有个很常考的变体题目如果客户端发FIN的同时还想再传输数据会不会有问题。答案是不能因为FIN表示发送方不再发送数据但接收方可以继续发送。这就是TCP连接是全双工的每个方向独立关闭这个知识点。5.2 TCP可靠传输序号、确认号与重传机制TCP的可靠传输基于序号、确认号和重传机制。TCP报文段的序号字段表示本报文段第一个字节在整个数据流中的编号字节流每个字节分配一个序号。确认号字段表示期望收到对方下一个字节的序号这个机制叫累计确认含义是序号小于等于ack-1的字节我都收到了。累计确认这个知识点考试频率很高。假设某报文段seq 2000携带100字节数据那么接收方正确接收后回复的ack就是2100表示期待收到序号2100及其之后的字节。注意确认号始终表示期望的下一个字节序号而不是最后一个收到的序号。很多人在这里记错丢分非常可惜。超时重传机制里有一个概念叫RTT往返时间TCP用自适应算法估计超时时间教材里提到Karn算法计算RTT时不考虑重传报文段若出现重传则超时时间加倍。这个知识点最多出选择填空知道结论即可。快速重传机制则解决了等待超时时间过长的问题。接收方收到乱序的报文段时立即重复发送针对前一个数据的ACK发送方连续收到3次重复ACK就立即重传对应报文不必等超时。题目里如果出现收到3个冗余ACKTCP做了什么答案就是快速重传。5.3 流量控制与拥塞控制两个容易混淆的概念流量控制和拥塞控制这对概念考试必考而且很多人在简答题里混着写。先讲清楚区别流量控制是接收端控制发送端的发送速率防止接收方处理不过来主要机制是滑动窗口通过TCP报文头里的窗口字段实现它是一个端到端的过程。拥塞控制是网络层面控制全局的流量防止网络中的路由器负荷过载是发送端主动调节速率的过程。拥塞控制在考试里的地位非常高四个算法必须默写慢启动、拥塞避免、快速重传、快速恢复。刚开始发送时cwnd拥塞窗口从1开始每收到一个ACKcwnd加倍呈现指数增长这叫慢启动。当cwnd达到ssthresh慢启动阈值时进入拥塞避免阶段每个RTT只增加1转为线性增长。当发生超时重传时ssthresh设为当前cwnd的一半cwnd重置为1重新慢启动。当收到3个重复ACK触发快速重传时ssthresh设为当前cwnd的一半cwnd也减半但进入快速恢复阶段线性增长不必回到1。利用一张图可以轻松回忆慢启动是一段陡坡拥塞避免是一段缓坡发生超时是跌回谷底快重传是半山腰继续爬。理解了形状就不会忘了。窗口字段在设计上决定发送窗口大小是min(rwnd, cwnd)rwnd是接收方通告的大小cwnd是拥塞窗口。这个式子也是常考简答题发送方发送窗口的大小取决于什么。5.4 UDP知道这些就够了UDP相比TCP简单得多考题也以对比题为主。UDP是无连接的发送前不需要建立会话UDP尽最大努力交付不保证可靠性UDP没有拥塞控制和流量控制发送速率不受网络状态限制UDP首部只有8字节比TCP的20字节以上小很多。支持一对一、一对多、多对多和广播而TCP只支持一对一的通信。UDP首部结构包括源端口、目的端口、长度、校验和每项各2字节。校验和的计算有个注意点UDP计算校验和时要加上伪首部伪首部包含源IP地址、目的IP地址、协议字段等这些信息来自IP层。这个设计是为了让传输层能检查IP层交付是否出错虽然增加了耦合但实现了跨层校验。考试如果问为什么UDP校验和要算伪首部就答防止IP分组被投递到错误的主机或错误的高层协议。需要补充的是UDP适用的典型场景DNS查询、RTP音视频流、DHCP、SNMP等这些应用要么数据量小、要么实时性要求高、要么本身有应用层重传机制。期末简答题经常让列举UDP适用的应用这个列表要记牢。6. 应用层背就完了但要有条理6.1 HTTP与HTTPS问题越来越细应用层考点最集中的就是HTTP协议。HTTP采用客户端服务器模型使用TCP作为底层传输协议默认端口80。HTTP本身是无状态协议服务器不记忆每次请求之间的上下文。为了解决无状态问题后来引入了Cookie和Session机制期末如果考HTTP如何记住用户登录状态标准流程是服务器返回Set-Cookie响应头后续请求带上Cookie字段。HTTP报文的格式也常考。请求报文包含请求行方法、URL、版本、首部行、空行、请求体。响应报文包含状态行版本、状态码、短语、首部行、空行、响应体。状态码的记忆从大类入手2xx成功3xx重定向4xx客户端错误5xx服务器错误。200 OK表示成功301永久重定向302临时重定向400 Bad Request404 Not Found500 Internal Server Error。高频选择题就是让你判断某个状态码含义。HTTPS相当于在HTTP和TCP之间加了一层TLS/SSL端口443。它的工作流程是客户端发起握手服务器返回证书客户端验证证书并生成对称密钥通过公钥加密传给服务器双方随后用对称密钥加密通信。所以HTTPS的安全性建立在非对称密钥交换 对称加密传输的组合上。问HTTPS为什么既用非对称又用对称标准答案是非对称计算慢不适合大数据量只在握手阶段交换密钥对称加密计算快适合实际数据传输。6.2 DNS域名如何变成IPDNS是域名解析系统它是应用层的一个分布式数据库。DNS的命名空间是一个树状结构从根开始依次是顶级域名、二级域名、三级域名等如www.example.com从右往左依次是顶级域com、二级域example、主机名www。解析过程分两种方式递归查询和迭代查询。客户端首先查本地DNS缓存没有就发起查询。在递归方式中各级DNS服务器代客户端持续查找直到返回最终结果在迭代方式中DNS服务器只告诉客户端下一步去问谁由客户端逐级查询。经常考的题目是用户在浏览器输入www.example.com描述完整解析过程。标准答案浏览器查本地DNS缓存没有则向本地域名服务器发送查询请求本地域名服务器先查自己的缓存没有则向根域名服务器查询根域名服务器返回.com顶级域服务器的地址本地域名服务器再请求.com顶级域服务器.com服务器返回example.com权威域名服务器的地址本地域名服务器最后请求example.com权威服务器获得A记录返回IP并缓存。注意在这个链条里客户端只和本地DNS服务器交互本地DNS服务器代替客户端完成了后续的递归查询。DNS默认使用UDP 53端口但在区域传输服务器之间同步数据时使用TCP 53。原因很简单普通查询报文很短UDP延迟低而区域传输数据量大需要TCP可靠性。这个对比也是简易考点。6.3 DHCP与邮件协议常用但容易忽略DHCP动态主机配置协议让主机自动获取IP地址、子网掩码、默认网关和DNS服务器。工作过程四个步骤客户端广播DHCP DISCOVERDHCP服务器回应DHCP OFFER客户端请求DHCP REQUEST服务器确认DHCP ACK。考试经常问的是第4个步骤为什么是广播因为客户端还没有分配到IP地址发送DHCP REQUEST是为了通知其他服务器自己已接受某台的offer避免多个服务器都保留这个IP导致冲突。邮件协议也经常出题。用户代理向邮件服务器发送邮件用SMTP端口25Email服务器之间转发也用SMTP。收件人从邮件服务器读取邮件用POP3端口110或IMAP端口143。POP3把邮件下载到本地后就从服务器删除IMAP则保留在服务器端允许在多设备间同步。FTP协议使用两个连接控制连接端口21数据连接端口20。FTP有主动模式和被动模式的区别但期末一般只考控制连接和数据连接各自的作用。如果考408这个协议细节要看得更仔细。7. 计算题与典型题型的解题套路7.1 速率与时间计算题时间计算题的解题关键是搞清楚总时延包含哪些部分。一路数据从源主机到目的主机总时延 发送时延 传播时延 处理时延 排队时延。发送时延 数据长度 / 发送速率发生在网卡处数据一个比特一个比特地进入信道所需时间。传播时延 信道长度 / 电磁波传播速度是信号在介质中从一端到另一端的时间和发送速率无关。处理时延和排队时延通常假设忽略不计。举个典型例子数据传输速率为100Mbps文件大小是10MB信道长度1000公里传播速度是2×10^8 m/s。发送时延 10×10^6×8 / 100×10^6 0.8秒。传播时延 10^6 / (2×10^8) 0.005秒 5毫秒。总时延 ≈ 0.805秒。这里有个经典的坑文件大小10MB笔试时要换算成比特很多人直接10除以速率结果差了8倍。如果涉及分组交换还要考虑存储转发的时延。比如一个大文件分割成多个分组从第一台路由器到第三台路由器每个分组都要经历完整的三段传播。第一分组到达中间路由器后才能开始向下一段转发后续分组可以流水线式地并行传输。这道题出综合计算时做题套路是先画时间轴把每一段发送时间和传播时间分别标出来再判断重叠区间。7.2 信道利用率计算题信道利用率是期末计算里占分比较重的题型经常和滑动窗口机制绑在一起。记住核心公式信道利用率 发送时间 / 一个发送周期总时间。这里的发送周期是从发送方开始发送数据到收到确认并准备发下一帧为止的时间。如果题目用停等协议发送周期 数据帧发送时间 RTT 确认帧发送时间。确认帧通常很短可以忽略所以利用率 Td / (Td RTT)。举个例子数据帧长1000比特发送速率1MbpsTd 1毫秒往返时延RTT 10毫秒利用率 1/(110) ≈ 9.1%。如果题目用GBN或SR协议窗口大小为W那么利用率 min(W×Td / (Td RTT), 1)。原理是窗口内允许连续发送W个帧但如果W个帧在一个RTT内都能发完且还没等到第一个确认那利用率就会小于1如果窗口足够大发送方一直有数据可发利用率饱和到1。注意问最大窗口大小时要考虑序号空间限制前面说过的GBN和SR的公式这两个知识点经常合在一道大题里。还有一类题是为了保证信道利用率不低于某个值问你至少需要多大的窗口。此时把公式倒过来W×(发送周期) ≥ 利用率×周期再把序号空间上限也带入约束取满足两者的最小整数。7.3 子网划分题的标准步骤子网划分再强调一次解题模板这个模板对考试拿分极其有效。看到题先别急题目无非三种问法给子网数求子网掩码、给主机数求可用子网数、给IP地址判断属于哪个子网。第一种前文192.168.1.0/24分成4个子网的例子已经做过流程固定求借位数、更新掩码、列子网地址。第二种反算某组织申请了202.112.78.0/23的地址块要求每个子网可容纳至少60台主机问最多可以划分多少个子网。解题主机位需要2^6 - 2 ≥ 60所以主机位至少6位。原地址块/23有主机位9位子网位最多9-63位最多划2^38个子网每个子网的掩码为/26即233主机地址范围按64个为一组划分。第三种判断归属某主机IP为192.168.5.10子网掩码为255.255.255.128求网络地址和广播地址。把IP和掩码逐位与运算得到网络地址192.168.5.0因为10的二进制和128的掩码与之后低7位全清零属于192.168.5.0/25这个子网广播地址就是主机位全1192.168.5.127可用主机范围192.168.5.1到192.168.5.126。这类题的陷阱多数出现在忘记扣除网络地址和广播地址以及子网掩码写成255.255.255.128但没有标/25。考试时建议每个题目最后都强制自查一遍主机位够不够。8. 常见问题与易错点速查8.1 概念辨析型易错点把概念混淆的错误总结成一张表考前对照自查比反复翻书效率更高容易混淆的组核心区别传输时延 vs 传播时延传输时延是数据进入信道的时间取决于速率传播时延是信号在信道中走的时间取决于距离比特率 vs 波特率波特率是码元速率比特率 波特率 × log2(码元种数)流量控制 vs 拥塞控制接收方控制 vs 网络拥堵控制逻辑地址 vs 物理地址IP地址供网络层寻址MAC地址供链路层寻址路由器 vs 交换机路由器按IP地址转发隔离广播域交换机按MAC地址转发隔离冲突域但不过滤广播冲突域 vs 广播域冲突域是物理层概念广播域是数据链路层以上概念分组交换 vs 电路交换分组交换是存储转发按需分配电路交换是预先建立专线连接透明传输 vs 透明性链路层对上层隐藏物理细节透明指双方看来好像不存在对方停等 ARQ vs 选择重传确认机制和重传粒度的差异还有一个高频判断陷阱分组交换相对于电路交换来说没有建立连接的过程吗。严格讲绝大多数分组交换不需要在建连阶段预留资源但TCP本身会在传输层建立连接那属于端到端连接。答题时要区分网络层是否需要连接和传输层是否需要连接。8.2 协议细节型易错点协议细节的易错点比概念更难发现往往是你觉得自己会了但一考试就错。举几个典型的例子三次握手第二次的报文名称不能写成ACK报文必须是SYNACK报文因为SYN标志和ACK标志同时为1。填空题里写错直接扣分。TCP的确认号不是已经收到的最后一个字节序号而是期望收到的下一个字节序号。一字之差全错。接收窗口和拥塞窗口的英文缩写rwnd表示接收方窗口cwnd表示发送方拥塞窗口发送方的实际窗口由两者共同决定。连接释放时服务器收到客户端的FIN后可以继续发送数据这个阶段叫半关闭。回答为什么TCP要四次挥手时关键是每个方向的连接需要单独关闭。UDP校验和计算时加伪首部但伪首部不参与传输只用于校验计算。这个考点每年都有人把伪首部是UDP首部的一部分当作选项结果选错。IP分组的首部长度默认20字节可选字段最多40字节所以首部最大60字节。这个数值在不同教材里都会出现记清单位是字节。以太网MAC帧的前8字节是前导码和帧起始定界符标准答案里的帧长不包括前导码。做计算题时看清楚题目算的是MAC帧还是传输的比特数。ARP协议解决的是已知IP地址求MAC地址它只在同一广播域内有效。跨网段时源主机会先把分组发给默认网关用网关的MAC地址封装帧。8.3 考前最后三天怎么用这份资料这份内容不可能代替整本教材它的作用是帮你把骨架立起来。考前三天我建议按这个方法用第一天把第2章的分层框架和第4、5、6章的重点协议读一遍边读边在纸上画图把TCP三次握手、滑动窗口、DNS解析流程都能默画出来。第二天集中刷第7章的计算题模板每类题不追求多做三道到五道做到步骤完整。第三天翻第8章的易错点表逐条确认再把错题本里的类似错误对照一遍。最后再分享一个小技巧是我自己考计算机网络时一直在用的方法。考试前拿一张A4纸横过来把OSI七层画成七条横线每层下面列出它的数据单位、主要协议、端口号和典型设备然后合上书默背一遍漏掉的地方就是你的薄弱环节。这个方法看起来简单但效果很稳定能把散乱的知识点在短时间内压缩成一张图。计算题那边把香农、奈奎斯特、CRC、滑动窗口利用率、子网划分这几类题的套路步骤各自写在便利贴上考前十分钟快速扫一遍进考场看到类似的题就不会慌。
返回列表