计算机网络-自定向下积累(2)-应用层-非持续连接和持续连接

  在很多应用中,服务器端和客户端长时间通信,其中客户发出一系列请求并且服务器对每个请求进行相应。

  那么每个请求/相应对是经一个单独的TCP连接发送,还是所有的请求/相应都用相同TCP连接发送呢?

  前一种方法,称为非持续连接;后一种方法,称为持续连接。

  HTTP既能够  使用非持续连接,也能够 使用持续连接。尽管HTTP在其默认的方式下使用持续连接,HTTP客户和服务器也能配置

成使用非持续连接。下面简单的讨论一下这两种连接:

  1.采用非持续连接的HTTP

  HTTP客户接收响应报文后,TCP连接关闭。每个TCP连接只传输一个请求报文和一个响应报文,这样产生的TCP连接就会很多。

  实际上,浏览器可以打开5~10个并行的TCP连接,而每条连接处理一个请求响应事务,很明显,这样能够节省时间。

  往返时间RTT:指的是一个短分组从客户到服务器然后再返回客户所花费的时间。RTT包括分组传播时延、分组在中间路由器和交换机上的排队时延以及分组处理时延。粗略来说,请求并接收一个HTML文件所需的时间就是两个RTT加上服务器传输HTML文件的时间,如下图。

             

 

 

  

  2.采用持续连接的HTTP

  很明显第1种方法,客户和服务器都要分配TCP的缓冲区和保持TCP变量,web服务器的负担会大;而且每个对象会遭受两倍的RTT的交付时延,即一个RTT用于创建TCP,另一个RTT用于请求和接收一个对象。

  采用持续连接时,服务器发送响应后保持该TCP连接打开。在相同的客户与服务器之间的后续请求和响应报文能够通过相同的TCP连接进行传送。那么,如果一条连接经过一定的时间间隔(一个可配置的超时间隔)仍未被使用,HTTP服务器就关闭该连接。HTTP的默认模式是使用带流水线的持续连接。

  

  

 

转载于:https://www.cnblogs.com/xiaobai-2017/p/9336757.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值