第1章 计算机网络体系结构
1.1 计算机网络概述 (答案见原书 P10)
01. 计算机网络可被理解为( B )
题目原文
- 计算机网络可被理解为( )
A. 执行计算机数据处理的软件模块
B. 由自治的计算机互联起来的集合体
C. 多个处理器通过共享内存实现的紧耦合系统
D. 用于共同完成一项任务的分布式系统
正确答案:B
题目解析
- 考点分析: 本题考察对计算机网络最核心、最权威的定义。
- 正确选项分析 (B. 由自治的计算机互联起来的集合体):
- 这个定义包含了两个关键点:
- 自治的计算机 (Autonomous Computers): 网络中的每一台计算机(主机)都是独立的、完整的计算机系统,有自己的硬件和操作系统,可以独立运行,没有主从关系。
- 互联起来的集合体 (Interconnected Collection): 这些独立的计算机通过通信介质和协议相互连接,能够进行数据交换。
- 这准确地描述了Internet等现代计算机网络的本质。
- 这个定义包含了两个关键点:
- 错误选项分析:
- A: 软件模块是程序的组成部分。
- C: "紧耦合系统"是指多个处理器共享内存和时钟,如多核处理器 或并行计算机 ,而不是计算机网络。计算机网络是松耦合的。
- D: "分布式系统"是建立在计算机网络之上的一种更高层次的系统,其目标是让用户感觉像在使用一台单一的、强大的计算机。网络是分布式系统的基础,但两者不等同。
02. 计算机网络最基本的功能是( A )
题目原文
- 计算机网络最基本的功能是( )
A. 数据通信
B. 资源共享
C. 分布式处理
D. 信息综合处理
正确答案:A
题目解析
- 考点分析: 本题考察计算机网络众多功能中的最基本、最核心的功能。
- 正确选项分析 (A. 数据通信):
- 计算机网络的所有其他高级功能,如资源共享、分布式处理、负载均衡等,都必须建立在一个基础之上,那就是能够在不同的计算机之间可靠、高效地传输数据。
- 因此,数据通信是计算机网络最根本、最基础的功能。没有它,一切都无从谈起。
- 错误选项分析:
- B, C, D: 都是在数据通信的基础上实现的更高级的功能。资源共享是建立网络最主要的目的之一,但数据通信是其前提。
03. 下列不属于计算机网络功能的是( D )
题目原文
- 下列不属于计算机网络功能的是( )
A. 提高系统可靠性
B. 提高工作效率
C. 分散数据的综合处理
D. 使各计算机相对独立
正确答案:D
题目解析
- 考点分析: 本题要求从几个描述中,找出不属于网络功能或与网络目的相悖的。
- 错误选项分析 (D. 使各计算机相对独立):
- 这个说法与计算机网络的目的 正好相反。
- 计算机网络的目的恰恰是打破 地域上的隔离,将原本独立的 计算机连接起来,使它们能够相互通信、共享资源,协同工作。
- "相对独立"(自治)是网络中计算机的属性,但"使...独立"不是网络的功能。
- 正确选项分析(是网络的功能或带来的好处):
- A. 提高系统可靠性: 网络中的一台计算机出现故障,其工作可以由其他计算机接替(备份、冗余)。
- B. 提高工作效率: 通过资源共享和协同工作实现。
- C. 分散数据的综合处理: 即分布式处理,将一个大任务分解到网络中多台计算机上并行处理。
04. 下列关于网络中的计算机的描述中,正确的是( B )
题目原文
- 下列关于网络中的计算机的描述中,正确的是( )
A. 各自独立,没有联系
B. 拥有独立的操作系统
C. 互相干扰
D. 拥有共同的操作系统
正确答案:B
题目解析
- 考点分析: 本题与第1题类似,考察对网络中计算机"自治性"的理解。
- 正确选项分析 (B. 拥有独立的操作系统):
- "自治"的一个核心体现就是每台计算机都有自己独立的操作系统。
- 网络中的计算机可以是Windows系统、Linux系统、macOS系统等,它们各自管理自己的硬件资源,独立运行,并通过网络协议进行通信。
- 错误选项分析:
- A: 它们通过网络相互联系。
- C: 设计良好的网络应该是有序通信,而不是互相干扰。
- D: 拥有共同的操作系统是分布式操作系统的特征,而不是通用计算机网络的。
05. 分组交换相比报文交换的主要改进是( C )
题目原文
- 分组交换相比报文交换的主要改进是( )
A. 差错控制更加完善
B. 路由算法更加简单
C. 传输单位更小且有固定的最大长度
D. 传输单位更大且有固定的最大长度
正确答案:C
题目解析
- 考点分析: 本题考察对报文交换和分组交换这两种存储转发技术的对比。
- 正确选项分析 (C. 传输单位更小且有固定的最大长度):
- 报文交换: 以整个报文为单位进行存储转发。如果报文很长,会导致交换节点需要巨大的缓冲区,并且会长时间占用链路,造成其他短报文的巨大延迟。
- 分组交换: 将一个长报文分割 成多个较小的、有固定最大长度 的数据单元,即分组(Packet)。
- 主要改进带来的好处:
- 减少了交换节点的缓冲区需求。
- 实现了流水线式传输: 一个报文的多个分组可以同时在网络的不同链路上传输,大大减少了传输延迟。
- 更灵活、更公平: 短报文的分组不会被长报文长时间阻塞。
- 错误选项分析:
- A, B: 差错控制和路由算法是网络层的功能,与交换方式的根本改进关系不大。
- D: 传输单位是变小了,不是变大。
06. 下列( B )是分组交换网络的缺点。
题目原文
- 下列( )是分组交换网络的缺点。
A. 信道利用率低
B. 附加信息开销大
C. 传播时延大
D. 不同规格的终端很难相互通信
正确答案:B
题目解析
- 考点分析: 本题考察分组交换的主要缺点。
- 正确选项分析 (B. 附加信息开销大):
- 在分组交换中,原始的报文被分割成多个分组。
- 为了让每个分组都能独立地在网络中传输和被正确地重组,每个分组都必须携带额外的控制信息 ,即分组头(Header)。
- 分组头中包含了源地址、目的地址、分组序号、校验和等信息。
- 这些分组头本身不承载用户数据,属于附加的开销。当分组较小时,分组头的占比会比较大,降低了传输效率。
- 错误选项分析:
- A: 分组交换采用存储转发和动态路由,可以动态共享链路,信道利用率高(这是优点)。
- C: 分组交换的流水线传输减少了传输时延(相比报文交换)。
- D: 分组交换网络(如IP网)的设计目标之一就是屏蔽底层差异,支持异构网络互联,使得不同规格的终端可以通信。
07. ...为了使数据在网络中的传输时延最小...为保证数据无差错地传送...分组交换对报文交换的主要改进是...这种改进产生的直接结果是...
题目原文
- 不同的数据交换方式有不同的性能。为了使数据在网络中的传输时延最小,首选的交换方式是(①);为保证数据无差-错地传送,不应选用的交换方式是(②);分组交换对报文交换的主要改进是(③),这种改进产生的直接结果是(④)
① A.电路交换 B.报文交换 C.分组交换
② A.电路交换 B.报文交换 C.分组交换
③ A.传输单位更小且有固定的最大长度 B.传输单位更大且有固定的最大长度 C.差错控制更完善 D.路由算法更简单
④ A.降低了误码率 B.提高了数据传输速率 C.减少传输时延 D.增加传输时延
正确答案:A, A, A, C
题目解析
- 考点分析: 本题是对三种交换方式(电路、报文、分组)的全面对比。
- 分析 ① (时延最小):
- 电路交换: 在通信前需要建立一条专用的物理通路 。一旦通路建立,数据就可以像在一条"直通管道"里一样,以电信号的速度连续传输,中间没有存储转发的延迟 。因此,对于连续传输大量数据,其总时延是最小的。 (选A)
- 分析 ② (保证无差错,不应选用):
- 电路交换 建立的是一条透明 的物理通路,它不关心 传输的是什么比特流,也不提供 任何差错控制功能。如果在传输中发生比特错误,电路交换本身是无法检测和纠正的。 (选A)
- 报文交换和分组交换在交换节点可以进行差错校验。
- 分析 ③ (分组对报文的改进):
- 如第5题所述,最主要的改进是将大报文分割成更小且有固定最大长度 的分组。 (选A)
- 分析 ④ (改进的直接结果):
- 通过将报文分割成小组,可以在网络中实现流水线式传输 。当第一个分组在第二跳传输时,第二个分组可以在第一跳传输。这种流水线效应大大减少了 整个报文从源到目的地的端到端传输时延 。 (选C)
08. 下列说法中,( A )是数据报方式的特点。
题目原文
- 下列说法中,( )是数据报方式的特点。
A. 同一报文的不同分组可以经过不同的传输路径通过通信子网
B. 同一报文的不同分组到达目的结点时顺序是确定的
C. 适合于短报文的通信
D. 同一报文的不同分组在路由选择时只需要进行一次
正确答案:A
题目解析
- 考点分析: 本题考察分组交换中的两种服务方式:数据报(Datagram) 和 虚电路(Virtual Circuit)。
- 正确选项分析 (A. ...可以经过不同的传输路径...):
- 数据报方式 是一种无连接的服务。
- 每个分组(数据报)都被当作一个独立的数据单元,独立地进行路由选择。
- 网络状况是动态变化的,因此同一报文的不同分组在网络中可能会选择不同的路径进行传输。
- 错误选项分析:
- B: 正因为路径可能不同,所以不同分组的延迟也不同,它们到达目的节点时可能是乱序的。
- C: 虚电路更适合长报文。
- D: 每个分组都需要独立进行路由选择。
09. 计算机网络分为广域网、城域网和局域网,其划分的主要依据是( A )
题目原文
- 计算机网络分为广域网、城域网和局域网,其划分的主要依据是( )
A. 网络的作用范围 B. 网络的拓扑结构 C. 网络的通信方式 D. 网络的传输介质
正确答案:A
题目解析
- 考点分析: 本题考察计算机网络最常见的分类标准。
- 正确选项分析 (A. 网络的作用范围, Geographical Scope):
- 这是最基本、最直观的分类方式:
- 局域网 (LAN - Local Area Network): 覆盖范围小,如一栋楼、一个校园。
- 城域网 (MAN - Metropolitan Area Network): 覆盖一个城市。
- 广域网 (WAN - Wide Area Network): 覆盖一个国家或全球。
- 这是最基本、最直观的分类方式:
- 错误选项分析:
- B, C, D: 都是网络的属性,但不是这种分类的依据。
10. 假设主机A和B之间的链路带宽为100Mb/s...主机A给主机B发送数据的最高理论速率为( B )
题目原文
- 假设主机A和B之间的链路带宽为100Mb/s,主机A的网卡速率为1Gb/s,主机B的网卡速率为10Mb/s,主机A给主机B发送数据的最高理论速率为( )
A. 1Mb/s
B. 10Mb/s
C. 100Mb/s
D. 1Gb/s
正确答案:B
题目解析
- 考点分析: 本题考察网络传输中的瓶颈(Bottleneck) 效应。
- 正确选项分析 (B. 10Mb/s):
- 一个端到端的数据传输路径,其最终的有效速率取决于整个路径中速率最慢的那个环节,这个环节就是瓶颈。
- 我们来分析路径上的各个环节:
- 主机A的发送能力(网卡速率): 1 Gb/s = 1000 Mb/s。
- 链路的传输能力(带宽): 100 Mb/s。
- 主机B的接收能力(网卡速率): 10 Mb/s。
- 比较这三个速率:
1000 Mb/s
,100 Mb/s
,10 Mb/s
。 - 最慢的是主机B的网卡速率,为 10 Mb/s。
- 即使主机A和链路能以更快的速度发送数据,主机B也来不及接收,数据会堆积在B的缓冲区并最终被丢弃。
- 结论: 整个通信的最高理论速率由瓶颈------主机B的网卡速率决定,为10Mb/s。
11. 某点对点链路的长度为100km...一个已发送的分组的发送时延和传播时延相等,则该分组的大小为( A )
题目原文
- 某点对点链路的长度为100km,若数据在该链路上的传播速率为10⁸m/s,链路带宽为20Mb/s,已知一个已发送的分组的发送时延和传播时延相等,则该分组的大小为( )
A. 20Kb B. 30Kb C. 40Kb D. 50Kb
正确答案:A
题目解析
- 考点分析: 本题考察网络时延的两个基本组成部分------发送时延 和传播时延的计算。
- 计算公式:
- 发送时延 (Transmission Delay):
T_send = 分组大小 / 链路带宽
- 传播时延 (Propagation Delay):
T_prop = 链路长度 / 传播速率
- 发送时延 (Transmission Delay):
- 计算过程:
- 计算传播时延
T_prop
:- 链路长度 = 100 km =
100 * 10³ m
。 - 传播速率 =
10⁸ m/s
。 T_prop = (100 * 10³) / 10⁸ = 10⁵ / 10⁸ = 10⁻³ s
。
- 链路长度 = 100 km =
- 根据条件,确定发送时延
T_send
:T_send = T_prop = 10⁻³ s
。
- 计算分组大小:
T_send = 分组大小 / 链路带宽
分组大小 = T_send * 链路带宽
- 链路带宽 = 20 Mb/s =
20 * 10⁶ bit/s
。 分组大小 = 10⁻³ s * (20 * 10⁶ bit/s) = 20 * 10³ bit
。
- 单位换算:
20 * 10³ bit = 20 Kbit = 20 Kb
。
- 计算传播时延
- 结论: 该分组的大小为20Kb。
(12) 在下图所示的采用存储转发方式的分组交换网中...则分组从 A 发送开始到 B 接收完为止,需要的时间至少是( B )
题目原文
(12) 在下图所示的采用存储转发方式的分组交换网中, 主机 A 向 B 发送两个长度为 1000B 的分组, 路由器处理单个分组的时延为 10ms(假设路由器同时最多只能处理一个分组, 若在处理某个分组时有新的分组到达, 则存入缓存区), 忽略链路的传播时延, 所有链路的数据传输速率为 1Mb/s, 则分组从 A 发送开始到 B 接收完为止, 需要的时间至少是( )
A. 34ms
B. 36ms
C. 38ms
D. 52ms
正确答案:B
题目解析
-
考点分析: 本题考察在分组交换网络中,计算端到端总时延 。需要综合考虑发送时延 和处理时延 ,并理解流水线(Pipelining) 传输的原理。
-
分析过程(画时间轴/甘特图是最佳方法):
- 我们有两个分组,P1 和 P2。
- 路径是 A -> Router -> B。
- 涉及的时延类型:
- 发送时延 (Transmission Delay):
T_send = 分组大小 / 带宽
- 处理时延 (Processing Delay):
T_proc = 10 ms
(路由器处理时延) - 传播时延 (Propagation Delay): 题目说明忽略。
- 发送时延 (Transmission Delay):
-
第一步:计算发送时延
T_send
。- 分组大小 = 1000 B (字节) =
1000 * 8
bit = 8000 bit。 - 带宽 = 1 Mb/s =
1 * 10^6
bit/s。 T_send = 8000 / (1 * 10^6) s = 0.008 s = 8 ms
。- 这意味着,将一个分组完整地发送到链路上需要8ms。
- 分组大小 = 1000 B (字节) =
-
第二步:模拟流水线传输过程。
t = 0ms
: A 开始发送 P1。t = 8ms
: A 发送 P1 完毕。P1 的最后一个比特到达路由器。路由器可以开始处理 P1。- 同时,由于 A 的链路已空闲,A 可以立即开始发送 P2。
t = 8ms ~ 16ms
: A 正在发送 P2。t = 8ms ~ 18ms
: 路由器正在处理 P1 (耗时10ms)。t = 16ms
: A 发送 P2 完毕。P2 的最后一个比特到达路由器。t = 18ms
: 路由器处理 P1 完毕。- 此时,P2 已经完整到达路由器缓存区(在16ms时就到了)。
- 路由器可以立即开始处理 P2 (耗时10ms)。
- 同时,路由器也可以立即开始将处理完的 P1 发送给 B (耗时8ms)。
t = 18ms ~ 26ms
: 路由器正在发送 P1 给 B。t = 18ms ~ 28ms
: 路由器正在处理 P2。t = 26ms
: P1 完全被 B 接收。t = 28ms
: 路由器处理 P2 完毕。- 此时,路由器到 B 的链路还在被 P1 占用(到26ms才结束)。所以路由器不能立即发送 P2。
- 【关键点】 路由器发送P2,必须等到它处理完P2(
t=28ms
)并且 它到B的链路空闲(t=26ms
)。两者取其晚者,即t=28ms
。
t = 28ms
: 路由器开始发送 P2 给 B。t = 28ms + 8ms = 36ms
: 路由器发送 P2 完毕。P2 完全被 B 接收。
-
结论:
- 整个过程结束于 P2 被 B 完全接收,时刻为 36ms。
-
公式法(流水线时延):
-
T_end-to-end = T_send_A_R(P1) + T_proc_R(P1) + T_send_R_B(P1) + T_send_A_R(P2)
? 不对。 -
T_end-to-end = (分组数 * 发送时延) + (跳数 - 1) * 发送时延 + Σ处理时延
? 也不对。 -
最可靠的方法是分析最后一个分组的路径:
- A 发送完 P2 的时刻:
2 * T_send = 16ms
。 - P2 在路由器等待处理的时间:P2在16ms到达,但路由器在18ms才处理完P1,所以P2从18ms开始被处理。等待了
18 - 16 = 2ms
。 - 路由器处理完 P2 的时刻:
18ms (开始处理) + 10ms (处理时间) = 28ms
。 - P2 在路由器等待发送的时间:路由器在28ms处理完P2,此时R->B链路已空闲(P1在26ms已发完),所以无需等待。
- 路由器发送完 P2 的时刻:
28ms (开始发送) + 8ms (发送时间) = 36ms
。
- 这也是整个过程的结束时间。
- A 发送完 P2 的时刻:
-
(13) 如下图所示...则下列说法中正确的是( B )
题目原文
(13) 如下图所示, 主机 H1 和 H2 之间有三种可选的交换方式: 电路交换、报文交换和分组交换, 其中电路交换建立电路连接的时间为 2s, 报文交换和分组交换都要经过由一个路由器连接的链路, 分组大小为 5kb。三种交换方式的数据传输速率均为 2.5kb/s, 忽略所有的传播时延、分组开销和不可预料的线路延迟, 则下列说法中正确的是( )
A. 若 H1 向 H2 发送 5kb 的数据, 则电路交换最节省时间
B. 若 H1 向 H2 发送 500kb 的数据, 则电路交换和分组交换的时间相同
C. 若 H1 向 H2 发送 10kb 的数据, 则报文交换比分组交换更节省时间
D. 若 H1 向 H2 发送 15kb 的数据, 则报文交换比电路交换更节省时间
正确答案:B
题目解析
-
考点分析: 本题是三种数据交换方式端到端总时延的计算与比较,是网络性能分析的核心题型。
-
第一步:建立三种交换方式的时延计算公式。
-
设数据总量为
L
(bit),数据传输速率为R
(b/s),分组大小为P
(bit),电路建立时间为T_setup
,网络跳数为h
(对于报文和分组交换,h=2
,即 H1->Router 和 Router->H2 两跳)。 -
1. 电路交换 (Circuit Switching) 时延
T_cs
:T_cs = T_setup + L / R
T_cs = 2s + L / (2.5 * 1024 * 8) bit/s
(注意kb/s中的k通常指1024)2.5 kb/s = 2.5 * 1024 bit/s
T_cs = 2 + L / 2560
-
2. 报文交换 (Message Switching) 时延
T_ms
:T_ms = h * (L / R)
(因为每跳都要完整接收再转发)T_ms = 2 * (L / 2560)
-
3. 分组交换 (Packet Switching) 时延
T_ps
:- 分组数
N = ceil(L / P)
T_ps = (h - 1) * (P / R) + L / R
(流水线传输的近似公式)T_ps = (2 - 1) * (5 * 1024 / 2560) + L / 2560
T_ps = 1 * (5120 / 2560) + L / 2560 = 2 + L / 2560
- 【注意】 题目中的
kb
可能是kilobit
(1000) 而不是kibibit
(1024)。在网络领域,k通常是1000。我们用k=1000
重新计算。 R = 2.5 kb/s = 2500 b/s
P = 5 kb = 5000 bit
- T_cs = 2 + L / 2500
- T_ms = 2 * (L / 2500)
- T_ps = (5000 / 2500) + L / 2500 = 2 + L / 2500
- 分组数
-
-
第二步:逐个检验选项。
-
A. L = 5kb = 5000 bit
- T_cs = 2 + 5000 / 2500 = 2 + 2 = 4s
- T_ms = 2 * (5000 / 2500) = 2 * 2 = 4s
- T_ps = 2 + 5000 / 2500 = 2 + 2 = 4s
- 三者时间相同,A错误。
-
B. L = 500kb = 500000 bit
- T_cs = 2 + 500000 / 2500 = 2 + 200 = 202s
- T_ps = 2 + 500000 / 2500 = 2 + 200 = 202s
- 电路交换和分组交换的时间相同。B正确。
-
C. L = 10kb = 10000 bit
- T_ms = 2 * (10000 / 2500) = 2 * 4 = 8s
- T_ps = 2 + 10000 / 2500 = 2 + 4 = 6s
- 分组交换比报文交换更节省时间。C错误。
-
D. L = 15kb = 15000 bit
- T_ms = 2 * (15000 / 2500) = 2 * 6 = 12s
- T_cs = 2 + 15000 / 2500 = 2 + 6 = 8s
- 电路交换比报文交换更节省时间。D错误。
-
-
结论:
- 根据计算,选项B是唯一正确的说法。
- 一个有趣的发现是,在这个特定的网络配置下(
h=2
,T_setup = P/R = 2s
),电路交换和分组交换的总时延公式恰好相同,因此它们的耗时永远相等。
好的,我们来详细分析这道经典的2010年考研真题,它考察了分组交换网络中考虑分组头开销的端到端时延计算。
(14)【2010统考真题】在下图所示的采用"存储-转发"方式的分组交换网络中...则在不考虑分组拆装时间和传播延迟的情况下,从 H1 发送到 H2 接收完为止,需要的时间至少是( C )
题目原文
(14)【2010统考真题】在下图所示的采用"存储-转发"方式的分组交换网络中,所有链路的数据传输速率为 100Mb/s, 分组大小为 1000B, 其中分组头大小为 20B。若主机 H1 向主机 H2 发送一个大小为 980000B 的文件, 则在不考虑分组拆装时间和传播延迟的情况下, 从 H1 发送到 H2 接收完为止, 需要的时间至少是( )
A. 80ms
B. 80.08ms
C. 80.16ms
D. 80.24ms
正确答案:C
题目解析
-
考点分析: 本题是分组交换网络端到端时延的综合计算题。需要依次计算分组数量 、单个分组的发送时延 ,并利用流水线传输模型来计算总时间。
-
第一步:计算需要传输的分组数量。
- 分组大小 (Packet Size): 1000 B
- 分组头 (Header Size): 20 B
- 分组的数据载荷 (Payload Size):
1000 B - 20 B = 980 B
- 文件大小 (File Size): 980000 B
- 分组数量 (Number of Packets):
文件大小 / 分组的数据载荷 = 980000 / 980 = 1000
个分组。
-
第二步:计算单个分组的发送时延
T_send
。- 发送时延 取决于整个分组的大小(包括头),而不是只看数据部分。
- 分组大小 = 1000 B =
1000 * 8
bit = 8000 bit - 链路带宽 = 100 Mb/s =
100 * 10^6
bit/s T_send = 分组大小 / 带宽 = 8000 / (100 * 10^6) = 8 * 10⁻⁵ s = 0.08 ms
-
第三步:分析网络拓扑和跳数
h
。- 从图示看,H1到H2至少需要经过两个路由器(中间的存储转发节点)。
- 路径为:H1 -> R1 -> R2 -> H2。(假设中间的节点都是路由器)
- 这是一个三跳(3-hop)的网络路径。
- 【注意】 图中H1和H2之间有三个存储转发节点,但它们之间是网状连接的。题目问"至少是",意味着我们要找一条最短路径。最短路径经过 2个 路由器,即 3跳 (H1->R, R->R, R->H2)。
- 【再次审视】 更简单的理解是,从H1到H2,数据需要经过 2段链路 (H1 -> 中间网络 -> H2),中间网络可以看作一个整体。或者,最短路径是H1 -> 中间某个路由器 -> H2,这是一个 2跳 的网络。在考研题中,除非明确画出串联的路由器,否则通常简化为2跳(即 H1 -> Router -> H2)。我们按2跳计算。
h = 2
-
第四步:使用流水线传输模型计算总时间
T_total
。- 公式:
T_total = (总分组数 - 1) * T_send + h * T_send
- 这个公式可以理解为:第一个分组需要
h * T_send
的时间才能走完全程。之后,由于流水线效应,每隔一个T_send
的时间,就有一个新的分组到达目的地。 T_total = (1000 - 1) * 0.08ms + 2 * 0.08ms
T_total = 999 * 0.08ms + 0.16ms
T_total = 79.92ms + 0.16ms = 80.08ms
- 公式:
-
【答案校对与分析】 您提供的答案是
C (80.16ms)
。我的计算结果是B (80.08ms)
。这是一个细微但关键的差别,通常源于对跳数h
的理解不同。- 我的计算基于 2跳 (H1 -> Router -> H2)。
- 我们来尝试用 3跳 (H1 -> R1 -> R2 -> H2) 重新计算。
h = 3
T_total = (1000 - 1) * 0.08ms + 3 * 0.08ms
T_total = 999 * 0.08ms + 0.24ms
T_total = 79.92ms + 0.24ms = 80.16ms
-
最终结论:
-
计算结果
80.16ms
与答案C完全匹配。 -
这说明这道题的网络拓扑应该被理解为一个需要经过两个 中间路由器,即三段链路(3跳) 的模型。例如,路径是
H1 -> 左边的节点 -> 中间的节点 -> H2
。 -
总时间 = H1发送所有分组的时间 + (h-1) * 单个分组的发送时延
-
= 1000 * 0.08ms + (3-1) * 0.08ms
-
= 80ms + 2 * 0.08ms = 80ms + 0.16ms = 80.16ms
-
这个公式更直观:H1花了80ms把所有分组都推到链路上,而最后一个分组还需要额外经过后面2跳才能到达H2。
-
(15)【2013统考真题】主机甲通过一个路由器(存储转发方式)与主机乙互连...则两种交换方式完成该报文传输所需的总时间分别为( D )
题目原文
(15)【2013统考真题】主机甲通过一个路由器(存储转发方式)与主机乙互连, 两段链路的数据传输速率均为 10Mb/s, 主机甲分别采用报文交换和分组大小为 10kb 的分组交换向主机乙发送一个大小为 8Mb (1M=10⁶) 的报文。若忽略链路传播延迟、分组头开销和分组拆装时间, 则两种交换方式完成该报文传输所需的总时间分别为( )
A. 800ms、1600ms
B. 801ms、1600ms
C. 1600ms、800ms
D. 1600ms、801ms
正确答案:D
题目解析
-
考点分析: 本题是报文交换和分组交换端到端总时延的直接计算题,是网络性能分析的基础和核心。
-
第一步:整理和统一单位。
- 报文大小 (L): 8 Mb =
8 * 10^6
bit - 链路带宽 ®: 10 Mb/s =
10 * 10^6
bit/s - 分组大小 §: 10 kb =
10 * 10^3
bit - 网络跳数 (h): 甲 -> 路由器 -> 乙,共 2跳。
- 报文大小 (L): 8 Mb =
-
第二步:计算报文交换 (Message Switching) 的总时间
T_ms
。- 公式:
T_ms = h * (L / R)
- 原理: 报文交换是"存-转 "模式。
- 甲把整个 报文发送到路由器,耗时
L/R
。 - 路由器接收完整个 报文后,再把它完整地转发给乙,又耗时
L/R
。
- 甲把整个 报文发送到路由器,耗时
- 计算:
T_ms = 2 * ( (8 * 10^6 bit) / (10 * 10^6 bit/s) )
T_ms = 2 * 0.8 s = 1.6 s
- 单位换算:
1.6 s = 1600 ms
- 公式:
-
第三步:计算分组交换 (Packet Switching) 的总时间
T_ps
。- 公式(流水线模型):
T_ps = (h - 1) * (P / R) + L / R
或T_ps = (总分组数 - 1) * (P / R) + h * (P / R)
。使用第一个公式更简单。 - 原理: 分组交换是"流水线"模式。当第一个分组在第二段链路上传输时,第二个分组可以同时在第一段链路上开始传输。
- 计算:
- 计算单个分组的发送时延 (P/R):
P / R = (10 * 10^3 bit) / (10 * 10^6 bit/s) = 10⁻³ s = 1 ms
- 计算整个报文的发送时延 (L/R):
L / R = (8 * 10^6 bit) / (10 * 10^6 bit/s) = 0.8 s = 800 ms
- 代入公式:
T_ps = (2 - 1) * (1 ms) + 800 ms
T_ps = 1 * 1 ms + 800 ms = 801 ms
- 计算单个分组的发送时延 (P/R):
- 公式(流水线模型):
-
第四步:组合结果。
- 报文交换所需时间:1600ms
- 分组交换所需时间:801ms
-
结论:
- 两种交换方式完成传输所需的总时间分别为 1600ms 和 801ms。
- 这与选项D完全匹配。
- 这个结果也清晰地展示了分组交换相比报文交换在减少端到端时延方面的巨大优势。
(16)【2023统考真题】在下图所示的分组交换网络中...则从 H1 开始发送的时刻起到 H2 收到文件全部数据时刻止,所需的时间至少是( D )
题目原文
(16)【2023统考真题】在下图所示的分组交换网络中, 主机 H1 和 H2 通过路由器互连, 2 段链路的带宽均为 100Mb/s, 时延带宽积(单向传播时延 x 带宽)均为 1000b。若 H1 向 H2 发送一个大小为 1MB 的文件, 分组长度为 1000B, 则从 H1 开始发送的时刻起到 H2 收到文件全部数据时刻止, 所需的时间至少是( )(注: 1M=10⁶)
A. 80.02ms
B. 80.08ms
C. 80.09ms
D. 80.10ms
正确答案:D
题目解析
-
考点分析: 本题是分组交换网络端到端总时延的综合计算题。与之前的题目不同,本题没有忽略传播时延,而是通过"时延带宽积"给出了计算传播时延的线索。
-
第一步:整理和统一单位,计算基本时延。
-
文件大小 (L): 1 MB =
1 * 10^6
B =8 * 10^6
bit -
分组长度 §: 1000 B =
1000 * 8
bit = 8000 bit -
链路带宽 ®: 100 Mb/s =
100 * 10^6
bit/s -
时延带宽积 (Delay-Bandwidth Product): 1000 bit
-
网络跳数 (h): H1 -> Router -> H2,共 2跳。
-
计算发送时延
T_send
:T_send = P / R = 8000 bit / (100 * 10^6 bit/s) = 8 * 10⁻⁵ s = 0.08 ms
-
计算传播时延
T_prop
:时延带宽积 = T_prop * R
T_prop = 时延带宽积 / R = 1000 bit / (100 * 10^6 bit/s) = 10⁻⁵ s = 0.01 ms
- 这是单段链路的传播时延。
-
-
第二步:计算分组数量
N
。- 题目没有提分组头开销,所以我们假设分组长度1000B就是数据载荷。
N = L / P = (1 * 10^6 B) / (1000 B) = 1000
个分组。
-
第三步:使用流水线传输模型计算总时间
T_total
。-
总时延 = H1发送所有分组的时间 + 最后一个分组在网络中传输的时延
-
1. H1发送所有分组所需时间
T_send_all
:T_send_all = N * T_send = 1000 * 0.08 ms = 80 ms
-
2. 最后一个分组从离开H1到完全被H2接收所需的时间
T_last_packet
:- 最后一个分组离开H1后,需要经过2段链路。
- 在第一段链路 (H1 -> Router):
- 传播时延:
T_prop1 = 0.01 ms
- 在路由器接收它所需的时间 (发送时延):
T_send_Router = 0.08 ms
- 传播时延:
- 在第二段链路 (Router -> H2):
- 传播时延:
T_prop2 = 0.01 ms
- 路由器发送它所需的时间 (发送时延):
T_send_H2 = 0.08 ms
- 传播时延:
- 【关键点/流水线模型】 总时间可以看作是 H1 将所有数据"推"上链路的时间,加上最后一个比特从 H1 传播到 H2 的时间。
- 总时间 = (发送第一个分组的时间) + (发送剩余 N-1 个分组的时间) + (第一个分组在网络中的传播和处理时延)
- 或者用更直观的公式:
T_total = T_send_all + (h-1) * T_send + h * T_prop
T_total = (H1发送完最后一个分组的时刻) + (最后一个分组到达H2的时刻)
- 最后一个分组在
t = 80ms
时发送完毕离开H1。 - 它需要经过两段链路才能到达H2。
- 到达路由器需要:
T_prop1 = 0.01 ms
。 - 路由器转发它需要:
T_send_Router = 0.08 ms
。 - 从路由器到H2需要:
T_prop2 = 0.01 ms
。 - 总时间 =
T_send_all + T_prop1 + T_send_Router + T_prop2
(这个模型假设路由器在最后一个分组一到达就能立刻转发) T_total = 80ms + 0.01ms + 0.08ms + 0.01ms = 80.10 ms
-
-
另一种公式推导(标准流水线时延):
T_total = (N + h - 1) * T_send + h * T_prop
T_total = (1000 + 2 - 1) * 0.08 ms + 2 * 0.01 ms
T_total = 1001 * 0.08 ms + 0.02 ms
T_total = 80.08 ms + 0.02 ms = 80.10 ms
-
结论:
- 两种计算方法都得到了相同的结果。
- 所需的时间至少是 80.10ms。
- 这与选项D完全匹配。
(17)【2024统考真题】若某分组交换网络及每段链路的带宽如下图所示,则 H1 到 H2 的最大吞吐量约为( B )
题目原文
(17)【2024统考真题】若某分组交换网络及每段链路的带宽如下图所示,则 H1 到 H2 的最大吞吐量约为( )
A. 1Mb/s
B. 10Mb/s
C. 100Mb/s
D. 1000Mb/s
正确答案:B
题目解析
-
考点分析: 本题的核心是理解端到端的吞吐量(Throughput) 受限于整条路径上带宽最低 的环节,即瓶颈链路(Bottleneck Link)。同时,需要能够在复杂的网络拓扑中,识别出所有可能的端到端路径,并找出最优路径下的瓶颈。
-
第一步:识别所有从 H1 到 H2 的可能路径。
- 设 H1 连接的路由器为 R_left,H2 连接的路由器为 R_right。中间上方的路由器为 R_up,下方的为 R_down。
- 路径1 (上路): H1 -> R_left -> R_up -> R_right -> H2
- 路径2 (中路): H1 -> R_left -> R_right -> H2
- 路径3 (下路): H1 -> R_left -> R_down -> R_right -> H2
-
第二步:分析每条路径的瓶颈带宽。
-
端到端吞吐量的上限,由该路径上所有链路带宽的最小值决定。
-
分析路径1 (上路):
- H1 -> R_left: 10Mb/s
- R_left -> R_up: 1000Mb/s
- R_up -> R_right: 1000Mb/s
- R_right -> H2: 10Mb/s
- 路径1的瓶颈带宽 = min(10, 1000, 1000, 10) = 10Mb/s
-
分析路径2 (中路):
- H1 -> R_left: 10Mb/s
- R_left -> R_right: 1Mb/s
- R_right -> H2: 10Mb/s
- 路径2的瓶颈带宽 = min(10, 1, 10) = 1Mb/s
-
分析路径3 (下路):
- H1 -> R_left: 10Mb/s
- R_left -> R_down: 100Mb/s
- R_down -> R_right: 100Mb/s
- R_right -> H2: 10Mb/s
- 路径3的瓶颈带宽 = min(10, 100, 100, 10) = 10Mb/s
-
-
第三步:确定 H1 到 H2 的最大吞吐量。
- 分组交换网络中的路由器会采用路由算法(如OSPF, RIP)来选择最优路径 。通常,"最优"意味着延迟最小或跳数最少。在这个问题中,为了获得最大吞吐量 ,路由器会选择那条瓶颈带宽最大的路径。
- 比较三条路径的瓶颈带宽:
- 路径1: 10Mb/s
- 路径2: 1Mb/s
- 路径3: 10Mb/s
- 最大 的瓶颈带宽是 10Mb/s (路径1和路径3都能达到)。
- 因此,H1到H2的最大吞吐量就是这个最优路径所能提供的最大速率。
-
结论:
- 尽管网络中有高达1000Mb/s的链路,但从H1到H2的任何一条完整路径都必然会经过带宽为10Mb/s的"接入"链路(H1->R_left 和 R_right->H2)。
- 在可选择的路径中,最优路径(上路或下路)的瓶颈带宽是10Mb/s。
- 所以,H1到H2的最大吞吐量约为 10Mb/s。
第1章 计算机网络体系结构
1.1 计算机网络概述 知识体系与考法总结
这一小节是整个计算机网络课程的开篇 ,旨在建立对网络"是什么"、"有什么用"、"如何工作"以及"如何衡量"的宏观认识。内容上,重点在于理解网络的基本定义、核心功能、交换方式的对比 以及关键性能指标的计算。这是后续所有章节学习的基础。
知识体系梳理
本部分的知识体系可以围绕"网络的基本概念 "、"核心的数据交换方式 "和"关键的性能指标"三条主线展开。
一、 网络的基本概念
- 定义 (高频考点):
- 计算机网络是由若干自治的计算机 通过通信介质和协议 互联起来的集合体。
- 关键词: "自治"(独立的操作系统,非主从)、"互联"(能够通信)。
- 与分布式系统的区别: 网络是基础,分布式系统是上层应用,强调对用户的透明性。网络是松耦合,并行机/多核是紧耦合。
- 功能:
- 最基本功能:数据通信。
- 主要功能:资源共享。
- 其他功能: 分布式处理、提高可靠性、负载均衡。
- 分类 (高频考点):
- 按作用范围:局域网 (LAN)、城域网 (MAN)、广域网 (WAN)。
- 按拓扑结构: 星型、总线型、环型、网状。
- 按交换方式: 电路交换、报文交换、分组交换。
二、 核心的数据交换方式 (必考核心)
这是本节的绝对重点,考察对三种交换技术原理、优缺点和适用场景的对比。
特性 | 电路交换 (Circuit Switching) | 报文交换 (Message Switching) | 分组交换 (Packet Switching) |
---|---|---|---|
工作方式 | 连接导向:建立连接 -> 通信 -> 释放连接 | 存储转发 (Store-and-Forward) | 存储转发 (Store-and-Forward) |
传输单位 | 比特流 | 整个报文 | 分组 (Packet) (报文分片,有固定最大长度) |
信道占用 | 独占物理通路 | 动态共享链路 | 动态共享链路 |
优点 | 时延小 (无排队)、实时性好 、无失序 | 信道利用率高 | 信道利用率高 、时延小 (流水线传输)、可靠性高 、灵活 |
缺点 | 信道利用率低 、建立连接时延长 、不提供差错控制 | 时延大 (需接收完整报文)、节点缓冲区要求高 | 附加信息开销大 (每个分组都有头)、可能失序、抖动 |
服务方式 | - | - | 数据报 (无连接) vs. 虚电路 (面向连接) |
- 数据报 vs. 虚电路 (分组交换的两种模式):
- 数据报: 每个分组独立路由,路径可能不同,可能失序。
- 虚电路: 先建立逻辑连接,所有分组沿同一路径按序传输。
三、 关键的性能指标与计算 (必考核心)
- 速率 (Rate / Bandwidth):
- 单位:
b/s
(bps),kb/s
(10³),Mb/s
(10⁶),Gb/s
(10⁹)。 - 注意区分
b
(bit) 和B
(Byte),1B = 8b
。
- 单位:
- 吞吐量 (Throughput):
- 单位时间内通过某个网络(或信道、接口)的实际数据量。
- 受限于瓶颈链路 (Bottleneck Link) 的带宽。
- 时延 (Delay / Latency):
- 发送时延 (Transmission Delay):
T_send = 分组长度 / 带宽
。 - 传播时延 (Propagation Delay):
T_prop = 链路长度 / 传播速率
。 - 处理时延 (Processing Delay): 节点检错、查路由表所需时间。
- 排队时延 (Queuing Delay): 在节点缓存中等待转发的时间。
- 端到端总时延 = Σ(发送时延 + 传播时延 + 处理时延 + 排队时延)
- 发送时延 (Transmission Delay):
- 时延带宽积 (Delay-Bandwidth Product):
= 传播时延 × 带宽
。- 物理意义:表示一条链路上能容纳的比特数,也称"以比特为单位的链路长度"。
常见考法与例题梳理
-
基本概念辨析(高频基础题)
- 考法: 考察对计算机网络、分布式系统、并行机等概念的区分;对网络核心功能和分类依据的理解。
- 例题01, 04: 强调了网络中计算机的自治性。
- 例题02: 明确了数据通信是最基本的功能。
- 例题09: 考察了作用范围是划分LAN/MAN/WAN的主要依据。
-
三种交换方式的全面对比(必考核心)
- 考法:
- 对比三种方式的优缺点、适用场景。
- 深入考察报文交换与分组交换的区别(分组更小、流水线传输)。
- 识别数据报和虚电路的特点。
- 例题05 & 07: 是该考法的典型。明确了分组交换 相比报文交换的主要改进是"传输单位更小 ",带来的直接好处是"减少传输时延"。
- 例题08: 考察了数据报方式"无连接"、"分组独立路由"、"可能失序"的特点。
- 例题13 (真题): 通过计算,直观地比较了三种方式在不同数据量下的性能优劣。
- 考法:
-
网络性能指标计算(必考计算题)
- 考法: 这是本章最稳定、最核心的计算题型。
- 计算发送时延 和传播时延。
- 寻找瓶颈链路 ,确定最大吞吐量。
- 计算端到端的总时延,特别是分组交换的流水线模型。
- 例题11: 是发送时延 vs. 传播时延的基础计算。
- 例题10 & 17 (真题): 考察了吞吐量由瓶颈决定这一核心原则。
- 例题12, 14, 15, 16 (大量真题): 集中考察了分组交换网络端到端总时延的计算。这是每年考试的热点。
- 考法: 这是本章最稳定、最核心的计算题型。
刻意练习建议
-
制作"三大交换方式"终极对比表:
- 这是本节的"法宝"。创建一个大表格,详细对比电路交换、报文交换、分组交换。
- 对比维度:工作方式、传输单位、信道占用、优点、缺点、时延特性、适用场景。
- 能独立默写和讲解这张表,就能掌握本节80%的核心内容。
-
时延计算专项训练(重中之重):
- 公式烂熟于心: 必须记牢发送时延 和传播时延的计算公式,并深刻理解它们的物理意义(发送时延是"推出去"的时间,与带宽有关;传播时延是"在路上跑"的时间,与距离有关)。
- 单位换算练习: 反复练习
kb/s
vskB/s
,b
vsB
,M
(10^6
) vsK
(10^3
)。这是计算不出错的基础。 - 流水线模型画图法: 对于分组交换的总时延计算,画时间轴(甘特图) 是最可靠、最不容易出错的方法。画出每个分组在每段链路上的发送和传播过程,可以直观地看到流水线效应。熟练后,再使用公式
T = T_send_all + (h-1)*T_send + h*T_prop
来快速求解。
-
做"情景分析"练习:
- 自己设定场景,例如:
- "我要打一个长时间的电话,应该用哪种交换方式?" (电路交换,需要稳定、实时的连接)
- "我要发一封很短的电子邮件,应该用哪种交换方式?" (分组交换/报文交换,动态共享信道,无需建立连接)
- "我要在线看高清视频(大量连续数据),哪种交换方式的体验最好?" (电路交换,时延稳定无抖动)
- 自己设定场景,例如:
通过以上系统性的梳理和有针对性的刻意练习,您将能够牢固掌握计算机网络的基本概念和性能分析方法,为后续所有章节的学习打下坚实的基础。