持久性连接和非持久性连接

HTTP连接有两种,一种为持久性连接;另一种为非持久性连接。

由于不同的HTTP版本,使用不同的方式。

在这里分析一下二者的区别:

一、非持久性连接(Nonpersistent HTTP)

特点:每个TCP连接最多允许传输一个对象

           HTTP 1.0使用的非持久性连接

过程:

 

响应时间分析与建模

我们需要知道:

RTT (Round Trip time):从客户端发送一个很小的数据包到服务器并返回所经历的时间。

响应时间(Response time):

              a.发起建立TCP连接:1个RTT

              b.发送HTTP请求消息到HTTP响应消息的前几个字节到达:  1个RTT

              c.响应消息中所含文件/对象的传输时间 

      Total=2RTT+文件发送时间

非持久性连接的问题

    每个对象需要2个RTT

    操作系统需要为每个TCP连接开销资源

二、持久性连接

发送响应后,服务器保持TCP连接的打开

后续的HTTP消息可以通过这个连接发送

(1)无流水(pipelining)的持久性连接

客户端只有收到前一个响应后才发送新的请求

每个被引用的对象耗时1个RTT

 (2)带有流水机制的持久性连接

HTTP 1.1的默认选项

客户端只要遇到一个引用对象就尽快发出请求

理想情况下,收到所有的引用对象只需耗时约1个RTT

 

感谢大家的学习,希望我们一起讨论,一起努力,加油吧!

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值