`
kimi0912
  • 浏览: 12993 次
  • 性别: Icon_minigender_1
  • 来自: 天津
最近访客 更多访客>>
社区版块
存档分类
最新评论

HTTP 1.1与HTTP 1.0的比较

    博客分类:
  • Web
阅读更多

From: http://wenku.baidu.com/view/79da6821af45b307e87197b7.html 

       

          一个WEB站点每天可能要接收到上百万的用户请求,为了提高系统的效率,HTTP 1.0规定浏览器与服务器只保持短暂的连接,浏览器的每次请求都需要与服务器建立一个TCP连接,服务器完成请求处理后立即断开TCP连接,服务器不跟踪每个客户也不记录过去的请求。但是,这也造成了一些性能上的缺陷,例如,一个包含有许多图像的网页文件中并没有包含真正的图像数据内容,而只是指明了这些图像的URL地址,当WEB浏览器访问这个网页文件时,浏览器首先要发出针对该网页文件的请求,当浏览器解析WEB服务器返回的该网页文档中的HTML内容时,发现其中的<img>图像标签后,浏览器将根据<img>标签中的src属性所指定的URL地址再次向服务器发出下载图像数据的请求,如图所示。

 

 

         显然,访问一个包含有许多图像的网页文件的整个过程包含了多次请求和响应,每次请求和响应都需要建立一个单独的连接,每次连接只是传输一个文档和图像,上一 次和下一次请求完全分离。即使图像文件都很小,但是客户端和服务器端每次建立和关闭连接却是一个相对比较费时的过程,并且会严重影响客户机和服务器的性 能。当一个网页文件中包含Applet,JavaScript文件,CSS文件等内容时,也会出现类似上述的情况。

 

         为了克服HTTP 1.0的这个缺陷,HTTP 1.1支持持久连接,在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟。一个包含有许多图像的网页文件的多个请求和应答可以在一个连接中传输,但每个单独的网页文件的请求和应答仍然需要使用各自的连接。HTTP 1.1还允许客户端不用等待上一次请求结果返回,就可以发出下一次请求,但服务器端必须按照接收到客户端请求的先后顺序依次回送响应结果,以保证客户端能够区分出每次请求的响应内容,这样也显著地减少了整个下载过程所需要的时间。基于HTTP 1.1协议的客户机与服务器的信息交换过程,如图所示。

 

 

 

         可见,HTTP 1.1在继承了HTTP 1.0优点的基础上,也克服了HTTP 1.0的性能问题。不仅如此,HTTP 1.1还通过增加更多的请求头和响应头来改进和扩充HTTP 1.0的功能。例如,由于HTTP 1.0不支持Host请求头字段,WEB浏览器无法使用主机头名来明确表示要访问服务器上的哪个WEB站点,这样就无法使用WEB服务器在同一个IP地址和端口号上配置多个虚拟WEB站点。在HTTP 1.1中增加Host请求头字段后,WEB浏览器可以使用主机头名来明确表示要访问服务器上的哪个WEB站点,这才实现了在一台WEB服务器上可以在同一个IP地址和端口号上使用不同的主机名来创建多个虚拟WEB站点。HTTP 1.1的持续连接,也需要增加新的请求头来帮助实现,例如,Connection请求头的值为Keep-Alive时,客户端通知服务器返回本次请求结果后保持连接;Connection请求头的值为close时,客户端通知服务器返回本次请求结果后关闭连接。HTTP 1.1还提供了与身份认证、状态管理和Cache缓存等机制相关的请求头和响应头。


 

  • 大小: 19.5 KB
  • 大小: 39.8 KB
分享到:
评论

相关推荐

    geronimo-jms_1.1_spec-1.0.jar

    geronimo-jms_1.1_spec-1.0.jar

    HTTP1.0&HTTP1.1(rfc2616)

    HTTP1.0和HTTP1.1是其两个主要版本,它们在互联网通信中扮演着至关重要的角色。这里我们将深入探讨这两个版本的区别与特点。 **HTTP1.0** HTTP1.0是HTTP协议的第一个广泛使用的版本,它定义了Web的基本通信机制。在...

    geronimo-interceptor_1.1_spec-1.0.jar

    geronimo-interceptor_1.1_spec-1.0

    UVC 1.0/1.1/1.5协议

    **UVC 1.0/1.1/1.5协议详解** USB Video Class (UVC) 是一种标准,用于定义USB设备上的视频捕获功能,使得计算机可以通过USB接口与各种视频源(如网络摄像头、摄像机等)进行通信。UVC 1.0、1.1和1.5是这一标准的...

    http 1.1/1.0 RFC中文文档

    在这个压缩包中包含的两个文件,RFC2616(HTTP/1.1)中文版.pdf和RFC1945(HTTP/1.0)中文版.pdf,分别是对HTTP 1.1和HTTP 1.0协议的官方文档的中文翻译。 HTTP 1.0是早期的版本,它定义了HTTP的基本操作,如GET、...

    TLS1.0、1.1、1.2、1.3

    标题提及的“TLS1.0、1.1、1.2、1.3”指的是安全传输层协议(Transport Layer Security)的不同版本。TLS是互联网上广泛使用的安全协议,它确保了数据在客户端和服务器之间的加密传输,从而保护用户的隐私和信息安全...

    极智复刻者go1.1鼠标驱动 v1.0 官方版

    极智go1.1驱动是专用于极智复刻者go1.1鼠标的驱动程序,用户可以通过它自定义设置鼠标的快捷键组合以及鼠标dpi和鼠标灯光颜色等等,非常的方便快捷,拥有这款鼠标的小伙伴们可以下载了!驱动介绍:极智go1.1驱动是专...

    TCG-Glossary-V1.1-Rev-1.0.pdf

    "TCG Glossary V1.1 Rev 1.0.pdf"是该组织发布的一份词汇表,详细解释了与可信计算相关的术语和概念。这份文档对于理解和实施TPM(Trusted Platform Module,可信平台模块)等相关技术至关重要。 TPM是一种硬件安全...

    jstl1.1和jstl1.0

    **JSTL1.1与JSTL1.0详解** JavaServer Pages Standard Tag Library (JSTL) 是一个用于简化JavaServer Pages (JSP) 开发的标签库,它提供了一系列预定义的标签,帮助开发者处理常见的任务,如迭代、条件判断、XML...

    USB UVC协议文档,包括1.0、1.1、1.5版本

    USB UVC(Universal Video Class)协议是USB设备类定义的一部分,用于支持视频设备与主机之间的通信。这个协议标准由USB Implementers Forum (USB-IF)制定,旨在简化视频捕获设备的设计,如网络摄像头、数码相机等。...

    Http1.1 手册、文档等

    HTTP1.1相对于HTTP1.0做了许多改进,包括但不限于连接管理的优化、支持持久连接、增加新的请求方法、引入更多首部字段以及对缓存机制的强化。例如,HTTP1.1引入了Keep-Alive首部,允许在一个TCP连接上发送多个请求和...

    CCIX_Base_Specification_Revision1.1_Version1.0.pdf

    《CCIX基础规范修订1.1版1.0》详细阐述了Cache Coherent Interconnect for Accelerators(CCIX)技术的起源、发展及其与Peripheral Component Interconnect Express(PCIe)的兼容性和区别。该规范旨在提供一个高...

Global site tag (gtag.js) - Google Analytics