视频加载失败

课程

3340 字
约 10 分钟

第五章 运输层

计算机网络exams/rainclass/divided-classes·更新于 2026-09-15

第五章 运输层

5.1 单选题

操作系统给每一个进程都分配有唯一的进程号 ID,以下哪个不是网络通信使用端口号而不使用进程号 ID 标识应用进程的原因。

  • A. 进程号不仅具有本地意义,而且是动态变化的
  • B. 不同操作系统进程号格式不同
  • C. 通信双方无法事先得知对方的 PID
  • D. 进程号只具有本地意义

答案D

解析: 这是一个经典的概念题。不使用进程号(PID)而使用端口号的原因主要有:

  1. 进程号不仅具有本地意义,而且是动态变化的(对应 A、B):操作系统启动不同进程的顺序不同,PID 就会不同;不同操作系统 PID 格式也不同。网络协议需要一种标准的、静态的标识符。
  2. 通信双方无法事先得知对方的 PID(对应 C):客户端不知道服务器进程当前的 PID 是多少,但知道它监听的“熟知端口”(如 HTTP 80)。

关于 D:虽然“进程号只具有本地意义”这句话本身是对的,但端口号也只具有本地意义(标识本地主机上的某个服务)。因此,D 选项描述的特性是两者共有的,并不是“弃用 PID 选用端口”的区别性原因。我们选用端口是因为它的标准化独立于 OS 进程管理的特性。


5.2 单选题

下列关于 UDP 协议的叙述中,正确的是 ( ) I. UDP 是无连接的传输层协议,发送数据前不需要建立连接。 II. UDP 支持复用(多个应用进程通过不同端口发送数据)和分用(接收端根据端口号将数据交付给不同进程)。 III. UDP 虽然有校验和,但提供可靠传输。

  • A. 仅 I
  • B. 仅 I、II
  • C. 仅 II、III
  • D. I、II、III

答案B

解析:

  • I 正确:UDP 是无连接的传输层协议,发送数据前不需要建立连接。
  • II 正确:UDP 支持复用(多个应用进程通过不同端口发送数据)和分用(接收端根据端口号将数据交付给不同进程)。
  • III 错误:UDP 虽然有校验和(Checksum),但如果校验出错误,它通常只是简单地丢弃该数据报,不提供重传机制,因此它不能保障可靠数据传输。可靠传输是 TCP 的特性。

综上,仅 I 和 II 正确。


5.3 单选题

以下关于 IP 和 UDP 协议计算检验和说法,正确的是

  • A. IP 协议和 UDP 协议都只计算首部检验和
  • B. IP 协议和 UDP 协议都计算数据部分检验和
  • C. IP 协议只计算数据部分检验和,UDP 协议计算首部检验和
  • D. IP 协议只计算首部检验和,UDP 协议计算首部和数据部分检验和

答案D

解析:

  • IP 协议:IP 数据报在网络层每经过一个路由器,TTL(生存时间)都会减 1,因此首部会发生变化。为了减少路由器的处理开销,IP 协议只对首部计算检验和,不检查数据部分。
  • UDP 协议:UDP 提供端到端的传输,为了保证数据的完整性,UDP 的检验和覆盖首部、伪首部以及数据部分

5.5 单选题

每一条 TCP 连接唯一地被通信两端的两个端点所确定,即 TCP 连接 ::=

  • A. {socket1, socket2}
  • B. {socket1, socket2} = {(IP1: port1), (IP2: port2)}
  • C. {IP1, IP2}
  • D. {port1, port2}

答案B

解析: TCP 连接是端到端的,由通信两端的**套接字(Socket)**唯一确定。

  • 套接字 = (IP地址 : 端口号)
  • 因此,一条 TCP 连接可以表示为:{ (IP1 : port1), (IP2 : port2) }
  • 选项 A 格式错误,将 IP 和端口分开组合了。
  • 选项 C 和 D 搭配错乱。

5.6 简答题

主机 A 向主机 B 连续发送了两个 TCP 报文段,其序号分别是 70 和 100。试问: (1) 第一个报文段携带的数据有多少字节? (2) 主机 B 收到第一个报文段后发回的确认中的确认号应当是多少? (3) 如果 B 收到第二个报文段后发回的确认中的确认号是 180,试问第二个报文段的数据有多少字节? (4) 如果第一个报文段丢失了,但第二个报文段到达了 B。B 在第二个报文段到达后向 A 发送的确认号是多少?

答案

  1. 30
  2. 100
  3. 80
  4. 70

解析:

  • (1):第一个报文段序号 70,第二个报文段序号 100。说明第一个报文段携带的数据长度 = 10070=30100 - 70 = 30 字节。
  • (2):B 收到第一个报文段(70-99)后,期待下一个字节是 100,因此确认号(Ack)为 100
  • (3):B 收到第二个报文段后确认号是 180。说明第二个报文段结束于 179。数据长度 = 180100=80180 - 100 = 80 字节。
  • (4):TCP 使用累积确认。如果第一个报文段(70-99)丢失,即使收到了第二个(100-179),B 仍然处于等待 70 的状态。因此 B 发送的确认号依然是它期待的第一个字节号,即 70

5.7 填空题

α=0.1\alpha = 0.1。已知 TCP 的往返时延的当前值是 30ms。现在收到了三个接连的确认报文段… 试计算新的估计的往返时延值 RTTSRTT_S 分别是 [填空1] ms,[填空2] ms,[填空3] ms。

答案29.6;29.84;29.26 (保留两位小数)

解析: 计算公式:RTTSRTT_S = (1α)×(1 - \alpha) \timesRTTSRTT_S +α×+ \alpha \timesRTTRTT 样本 α=0.1\alpha = 0.1,所以公式为:RTTS=0.9×Old+0.1×SampleRTT_S = 0.9 \times Old + 0.1 \times Sample

  1. 第一个样本 26msRTT1=0.9×30+0.1×26=27+2.6=29.6 msRTT_1 = 0.9 \times 30 + 0.1 \times 26 = 27 + 2.6 = 29.6 \text{ ms}
  2. 第二个样本 32ms(使用上一步更新后的 RTT 作为旧值): RTT2=0.9×29.6+0.1×32=26.64+3.2=29.84 msRTT_2 = 0.9 \times 29.6 + 0.1 \times 32 = 26.64 + 3.2 = 29.84 \text{ ms}
  3. 第三个样本 24ms(使用上一步更新后的 RTT 作为旧值): RTT3=0.9×29.84+0.1×24=26.856+2.4=29.25629.26 msRTT_3 = 0.9 \times 29.84 + 0.1 \times 24 = 26.856 + 2.4 = 29.256 \approx 29.26 \text{ ms}

8 (14年考研33题) 单选题

在 OSI 参考模型中,直接为会话层提供服务的是 ()

  • A. 应用层
  • B. 表示层
  • C. 传输层
  • D. 网络层

答案C

解析: OSI 模型遵循下层为上层服务的原则。

  • 第 7 层:应用层
  • 第 6 层:表示层
  • 第 5 层:会话层
  • 第 4 层:传输层

因此,传输层直接为会话层提供服务。

Profile Image of the Author
Sonder
好想要技术
这是公告标题
这只是一个公告
分类
标签
站点信息
构建平台
GitHub Actions
博客版本
Firefly v6.16.7
文章许可
CC BY-NC-SA 4.0
文章目录