网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

HTTP非持久连接与持久连接 | 第二部分(练习题)

更新时间:2026年03月27日   作者:spoto   标签(Tag):

先决条件:HTTP非持久连接与持久连接——设置1

关于“连接类型”的问题,你需要知道的是:非持久性连接也被称为……HTTP 1.0而“持久连接”则被称为……HTTP 1.1.

  • 非持久连接:对于每个对象来说,都需要反复进行连接设置,才能使其能够发送数据。
  • 持续连接:不需要反复进行连接设置。多个对象可以使用同一连接。

问题:假设您有一个包含30张嵌入图像的基础HTML文件。这些图像以及基础文件的大小都足够小,可以容纳在一个TCP段中。那么在以下情况下,需要多少个RTT才能下载到基础文件和那些图像呢?

(i) 非持续连接,且不存在并行连接的情况。

(ii) 与10个并行连接之间的连接并非持续存在。

(iii) 无需管道化处理的持续连接

(iv) 与管道化连接的持续连接状态

(假设 RTT 占据所有其他时间的情况)

说明:

2RTT是指建立TCP连接时所需的初始连接次数,同时它也用于HTML基础文件的连接建立过程。

总时间 = 2RTT + 传输时间

(i) 非持续连接,且不存在与之对应的并行连接:

对于每张图片来说,需要2个RTT时间:一个是用于TCP连接的延迟,另一个则是用于图片传输的延迟。
因此,30张图片的传输时间总和为:2 × 30 = 60个RTT。
总时间 = 2个RTT + 60个RTT = 62个RTT

(ii) 与10个并行连接之间的非持久性连接:

这里可以同时发送10张图片。
因此,对于30张图片来说,所需的RTT数量为:2×(30/10) = 6 RTT。
总时间 = 2个RTT + 6个RTT = 8个RTT

(iii) 无需流水线处理的持续连接:

在这里,TCP连接是不可或缺的。需要反复使用TCP连接来实现通信。
因此,对于30张图片来说,需要消耗的RTT数量就是30次。
总时间 = 2个RTT + 30个RTT = 32个RTT

(iv) 与管道化连接的持续连接:

由于采用的是持久连接模式,因此不需要反复建立TCP连接。
管道化传输意味着,只有那些能够放入一个数据包中的图像才会被发送出去。
在管道连接方式中,我们可以将所有图像一次性发送出去。
总时间 = 2个RTT + 1个RTT = 3RTT

              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料