计算机网络总结(3)——HTTP1. 0与 HTTP1.1的区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xiaojie_570/article/details/87468277

长连接、HOST域、带宽优化、消息传递和缓存

1. 长连接

HTTP1.1 支持长连接和请求流水线处理,在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟,在HTTP1.1 中默认开启:keep-alive,一定程度上弥补了HTTP1.0 每次请求都需要创建连接的缺点。

2. HOST头处理

在HTTP1.0 中认为每台服务器都绑定一个唯一的IP地址,因此,请求消息中的URL并没有传递主机名(hostname)。但是随着虚拟主机技术的发展,在一台物理服务器上可以存在多个虚拟主机,并且它们共享一个IP地址。HTTP1.1 的请求消息和相应消息都支持HOST头处理,且请求消息如果没有HOST头,会报错(400 Bad Request)。

3. 带宽优化

在HTTP1.0中,存在一些浪费带宽的现象,例如客户端只是需要某个对象的一部分,而服务器却将整个对象送过来了,并且不支持断点续传功能,HTTP1.1则在请求头引入了 range 头域,它允许只请求资源的某一个部分,即返回码是 206(Partial Content),这样就方便了开发者自由的选择以便于充分利用带宽和连接。

4. 缓存

在HTTP1.0中主要使用header里的If-Modified-Since,Expires来做为缓存判断的标准,HTTP1.1则引入了更多的缓存控制策略例如Entity tag,If-Unmodified-Since, If-Match, If-None-Match等更多可供选择的缓存头来控制缓存策略。

猜你喜欢

转载自blog.csdn.net/xiaojie_570/article/details/87468277