
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的人都在学习计算机编程开发领域的技术知识,而http协议就是我们在学习计算机网络的时候需要重点掌握的一个互联网协议,下面我们就通过案例分析来简单了解一下,HTTP1.0/1.1/2.0的区别。
1.0
HTTP1.0是在1996年引入的,从那时开始,它的普及率就达到了惊人的效果。
HTTP1.0仅仅提供了基本的认证,这时候用户名和密码还未经加密,因此很容易收到窥探。
HTTP1.0被设计用来使用短链接,即每次发送数据都会经过TCP的三次握手和四次挥手,效率比较低。
HTTP1.0只使用header中的If-Modified-Since和Expires作为缓存失效的标准。
HTTP1.0不支持断点续传,也就是说,每次都会传送全部的页面和数据。
HTTP1.0认为每台计算机只能绑定一个IP,所以请求消息中的URL并没有传递主机名(hostname)。
1.1
HTTP1.1是HTTP1.0开发三年后出现的,也就是1999年,它做出了以下方面的变化
HTTP1.1使用了摘要算法来进行身份验证
HTTP1.1默认使用长连接,长连接就是只需一次建立就可以传输多次数据,传输完成后,只需要一次切断连接即可。长连接的连接时长可以通过请求头中的keep-alive来设置
HTTP1.1中新增加了E-tag,If-Unmodified-Since,If-Match,If-None-Match等缓存控制标头来控制缓存失效。
HTTP1.1支持断点续传,通过使用请求头中的Range来实现。
HTTP1.1使用了虚拟网络,在一台物理服务器上可以存在多个虚拟主机(Multi-homedWebServers),并且它们共享一个IP地址。
2.0
HTTP2.0是2015年开发出来的标准,它主要做的改变如下
头部压缩,由于HTTP1.1经常会出现User-Agent、Cookie、Accept、Server、Range等字段可能会占用几百甚至几千字节,而Body却经常只有几十字节,所以导致头部偏重。HTTP2.0使用HPACK算法进行压缩。
二进制格式,HTTP2.0使用了更加靠近TCP/IP的二进制格式,而抛弃了ASCII码,提升了解析效率
强化安全,由于安全已经成为重中之重,所以HTTP2.0一般都跑在HTTPS上。
多路复用,即每一个请求都是是用作连接共享。一个请求对应一个id,这样一个连接上可以有多个请求。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。