计算机网络综合题

网络大题的固定动作:先定这一问落在哪一层,再按地址、封装、时间三套口径分别落笔。

网络每年只有一道综合题,13 分,18 套卷子里一共 19 道(2014 年被打乱顺序,第 42、43 两题都是网络)。它是全卷最容易预测的一支:题型只有六种,而且这六种的落笔口径互不相干,认出类型就能直接开写。

知识框架概要

一、一次通信从上往下只走一遍,每层各改一件事

应用层数据 → TCP 段(加 seq/ack/窗口) → IP 分组(加源/目的 IP、TTL)
           → 帧(加源/目的 MAC) → 比特流

逐跳的时候只有两条规矩:

  1. IP 地址端到端不变,MAC 地址每一跳都换——跨网时帧的目的 MAC 是默认网关的 MAC,见 MAC 地址ARP 流程
  2. 只有经过 NAT 才改 IP,出方向改源、入方向改目的,见 NAT 表

二、地址题只有三个动作:切、聚、查

  1. 切:由需求主机数解主机位 2ᴺ − 2 ≥ 需求,剩下的位给子网号,见 子网划分变长子网划分
  2. 聚:同方向的连续前缀合并,前缀每短 1 位合并两条,见 子网聚合
  3. 查:转发一律 最长前缀匹配;路由表格式见 路由表

三、设备按「隔离什么」来选

要隔离选谁
都不隔离集线器冲突域
只隔离冲突域交换机交换机
冲突域和广播域都隔离路由器广播域

在典型二层拓扑题中,主机和服务器也有 IP;交换机端口和集线器端口不承担三层转发。作为网关的路由器接口要配置该网段的接口 IP,该地址才是主机的默认网关。

四、时间题的三套模型互不通用

  1. 链路层看一帧利用率 = N × 数据帧发送时延 ÷ (发送时延 + RTT + 确认帧时延),见 信道利用率窗口大小限制
  2. 传输层看一轮 RTT:拥塞窗口每轮翻倍或加一,见 拥塞控制慢开始
  3. CSMA/CD 看一个 2τ:最小帧长 = 2τ × 数据率,见 限制条件

五、序号只有三句话

数据首字节序号 = 初始序号 + 1;FIN 的序号 = 最后一个数据字节 + 1;对某个报文段的确认号 = 它最后一个字节的序号 + 1。见 三次握手四次挥手滑动窗口机制

解题注意点

认出类型之后,下面四条按类型挑一条用——它们的口径互不通用。

先认出这一问属于哪一种

题干里出现类型第一笔写什么
若干局域网、需求主机数、要求路由项尽可能少地址规划与填表2ᴺ − 2 ≥ 需求
拓扑图 + 「H1 访问 H2 / 服务器」逐跳封装与设备追踪先判断源和目的在不在同一网络
一串十六进制、或 IP/TCP 首部字节清单报文字段解读画字节尺:以太网头 14B,IP 头内源 IP 在第 13~16 字节
RTT、MSS、拥塞窗口、接收缓存传输层时间与窗口列轮次表,每轮写 cwnd
距离、传播速率、数据率、利用率链路层效率与限制先算单程传播时延 τ
RIP / OSPF / BGP、AS、收敛路由协议与算法先按规模选协议

地址题按四类顺序填路由表

1. 直连网络     下一跳留空,只写接口
2. 特定主机路由 掩码 255.255.255.255
3. 远端 / 聚合  下一跳 = 对端路由器接口的 IP
4. 默认路由     0.0.0.0 / 0.0.0.0

要求「路由项尽可能少」就先聚合同方向的连续前缀:/25 + /25 → /242009#47)、/24 + /24 → /232014#43)、/25 + /24 → /232013#47)。聚合之后仍然服从最长前缀匹配,2013#47 的 194.17.20.200 同时匹配 /23 和 /25,走 /25 那一条。

变长划分从最大需求切起:2025#47 先切生活区 10.10.10.128/25,再切作业区 10.10.10.64/26。可用主机数要连路由器接口一起扣:2018#47 是 126 − 80 − 1 = 45。

分片固定三步(见 IP 数据报分片):

最大片数据 = ⌊(MTU − 首部) ÷ 8⌋ × 8
片数       = ⌈(总长度 − 首部) ÷ 最大片数据⌉
片偏移     = 它前面的数据字节数 ÷ 8

追踪题按帧序列写,不跳步

访问一个域名的固定链条是:ARP 查本地 DNS 服务器 → DNS 请求与响应 → 发现目的不在本网 → ARP 查默认网关 → 才发 HTTP(2021#47)。配套的三条口径:

  • 交换机的转发表只记「从某端口进来过的帧的源 MAC」,从没主动发过帧的主机不进表;
  • 广播帧(DHCP Discover、ARP 请求)的目的 MAC 是全 1,同一广播域内所有接口都收到,Discover 的源 IP 是 0.0.0.0、目的 IP 是 255.255.255.255;
  • 802.11 数据帧三个地址按「帧来自 AP」记:地址 1 接收端、地址 2 是 AP、地址 3 发送端,见 802.11 数据帧地址

问「经过路由器改了哪些字段」只写变的那几个:源/目的 IP(仅 NAT)、TTL 减 1、首部校验和重算,有分片再加总长度、标志、片偏移。2011#47 的评分说明写明:把 IP 首部所有字段罗列一遍不给分。

时间题分层套公式

链路层(见 ARQ 协议):

τ = 距离 ÷ 传播速率
停等有效数据率 = 数据比特 ÷ (数据帧发送时延 + 确认帧发送时延 + 2τ)
GBN 利用率 U   = N × Td ÷ (Td + RTT + Ta)      捎带确认时 Ta = Td
GBN 序号位数 k 满足 2ᵏ ≥ N + 1;若题目是 SR,要按题目给出的发送/接收窗口约束另算序号空间
CSMA/CD 最小帧长 = 2τ × 数据率

2017#47 由此得 50%,2025#47 反解出 N ≥ 7.2 取 8、再由 2⁴ ≥ 9 得 4 位;2022#47 用 64B 的最小帧长反推出两站最远 210m。

传输层(见 流量控制拥塞避免):

发送窗口 = min(拥塞窗口, 接收窗口)
慢开始:每收到一个新确认 cwnd += 1 MSS(每轮翻倍),到阈值转拥塞避免每轮 +1
rwnd(只收不取)= 接收缓存 − 已收字节
总时间(题目忽略处理/排队时延,按整轮 RTT 计)= 1 个 RTT 建连 + 数据轮数 × RTT

2016#41 的三个窗口是 9KB / 12KB / min = 9KB;2026#47 的总时间是 4 个 RTT = 20ms;2023#47 用 6 个 RTT 得 18000B ÷ 60ms = 2.4Mb/s。单向释放连接要 3 次单向传送,也就是 1.5 个 RTT(2016#41 的 300ms)。

协议题按规模和边界答

  1. 跳数可能超过 15 就用 OSPF,小网可用 RIP;若题目采用固定 30 s 更新的简化模型,才用 收敛时间 = 30s × 跳数
  2. TTL 至少设为「最多经过的路由器数 + 1」,而「到达时的 TTL」= 初始值 − 路径上的路由器台数;
  3. 跨 AS 用 BGP,它是应用层协议、报文封装在 TCP 里;同 AS 内扩散用 iBGP,跨 AS 用 eBGP,都用 UPDATE 报文;
  4. 无策略时 BGP 先比 AS 路径长度,等长再看其他属性(2024#47)。

历年题索引

六种类型和它们的口径是通用的,下面这张表只用来查「某一年额外拐了什么弯」。

真题主线这一年特别问了什么
2009#47子网划分 + 路由表 + 聚合主机路由掩码全 1、默认路由、对端怎么聚合
2010#47CSMA/CD 冲突时间与效率双方都检测到冲突的最短、最长时间
2011#47以太网帧的十六进制解读网关 MAC、ARP 请求的目的 MAC、非流水线要几个 RTT
2012#47IP / TCP 首部字节分析哪几个分组做了填充、已收几字节、由 TTL 差算跳数
2013#47聚合路由表 + 最长匹配某个地址走哪个接口、两台路由器之间用什么协议
2014#42链路状态信息建图 + 最短路径该抽象成哪种数据结构、链式存储怎么定义
2014#43最少路由项 + TTL到达主机时的 TTL;加默认路由后链路状态信息增什么
2015#47DHCP + ARP + 网关配错动态分配的最大地址范围;网关配错的后果
2016#41TCP 三个窗口 + 时间第 8 个确认到达时三个窗口各多大;释放连接最短时间
2017#47GBN 捎带确认 + 利用率还能发几帧、要重发几帧、最大利用率
2018#47子网地址 + IP 分片还能接多少台主机;最大片长度与片偏移
2019#47设备选型 + 接口 IP哪些接口要配 IP;谁能收到发往 .127 的分组
2020#47NAT 表 + 逐跳地址变化经过每一台路由器后源、目的 IP 各是什么
2021#47逐层封装 + 交换表追踪t1 时刻交换表里有什么;H2 至少收到几个帧
2022#47冲突域广播域 + CSMA/CD两台主机最远能隔多少米;802.11 的三个地址
2023#47FTP + 序号 + 拥塞窗口控制连接和数据连接谁是持久的;至少要多长时间
2024#47路由协议选择 + BGP 选路RIP 收敛时间、eBGP 与 iBGP、AS 路径怎么比
2025#47卫星时延 + GBN 窗口 + 变长划分窗口至少多大、序号至少几位
2026#47握手挥手字段 + 窗口 + 总时间最后一个报文段的 seq、ack 和 FIN 各取什么

易错清单

  • 可用主机数只减 2。还要扣掉已分配的主机和路由器接口(2018#47:126 − 80 − 1 = 45)。
  • 聚合完就照聚合项转发。聚合不改变最长前缀匹配的结论(2013#47)。
  • TTL 三种问法混用。「到达时是多少」减路由器台数、「至少设为多少」要加 1、「经过了几个路由器」是两端相减(2014#432024#472012#47)。
  • 以太网填充的判据记成 64B。判据是有效载荷是否小于 46B(2012#47)。
  • 发送窗口只看拥塞窗口。要取 min(cwnd, rwnd),还要看手里究竟还剩多少数据(2016#412026#47)。
  • NAT 一次改两端。出方向只改源 IP,到对侧 NAT 才改目的 IP(2020#47)。
  • 交换表把没发过帧的主机也记进去。它只学源 MAC;但那台主机照样会收到广播帧(2021#47)。
  • 网关配错就答「完全不通」。同网段仍然可达,只有跨网段不通(2015#47)。

上一页:文件系统与磁盘