学习笔记,http协议1.0,1.1,2.0之间的差别

文章目录

  • 前言
  • [http 1.1与http 1.0](#http 1.1与http 1.0)
  • [http 2.0 与http 1.x](#http 2.0 与http 1.x)
  • 注意点

前言

仅做个人学习笔记记录,如有错误,请多多包涵。

学习链接:
HTTP 1.0与1.1、2.0之间的区别
面试官:说说 HTTP1.0/1.1/2.0 的区别?


http 1.1与http 1.0

http协议1.1相对于http协议1.0

1、增加持久化链接(长连接),多个http请求可以共用同一连接。http 1.0 打开一个 tcp/ip 连接后只用来发送一个 http 请求,发完后 tcp/ip 连接关闭。

但在http 1.1中,发完后如果上一个 http 请求报文中有 connection: keep-alive,服务端在返回应答报文以后保持tcp/ip连接开启,如果是 connection: close,那么 tcp/ip 连接关闭

2、虚拟主机,多域名之间可以共享同一ip地址

(虚拟主机和NAT协议建立的IP:端口号之间的关联,公网和私网)

3、流水线处理,下一请求不必等上一请求的响应到达后发送,可以一次发送多条响应。

4、增加了更多的状态码,完善了状态码系统。

5、增加了断点续传,使用range字段来让文件下载断开后,不用重新下载,可以接着上次的下载进度。

http 2.0 与http 1.x

1、相对于1.x新增了多路复用,一条tcp链接中可以发送多条请求和响应。

可以理解为将同时传输的文件拆分成多个frame,在可用现成间轮转请求这些frame,避免一个文件请求阻塞另一个文件的情况,但是这种做法会有frame级别的阻塞,原因和TCP协议有关,也正是因为如此,才有了h3和QUIC协议

2、换成了二进制编码,相较于之前http 1.x协议的文本形式,明文传输,更加安全可靠。

3、压缩消息头,节省开销,降低延迟。

4、服务器推送,服务器可以自己推送资源到浏览器处,不用等待浏览器发送请求占用资源。

5、增加安全协议TLS

(其和https的s之间的区别)

https中的s代表的是ssl协议

tls协议和ssl协议的差别:

参考链接:
SSL与TLS到底有何区别,一见分晓
传输层安全协议TLS------密码学概述

第一篇文章指出,tsl协议基于ssl协议3.0,可以简单理解为ssl协议的升级版

根据第二篇参考文章说,ssl协议不推荐使用

注意点

http 2.0 完全没有新增请求状态码, http 1.1中状态码系统就已经完善了

二进制格式是实现多路复用的前提条件,多路复用更像是流水线处理的升级版,服务器也无需指定顺序发送响应,避免堵塞。


至此,借宿后

相关推荐
QT 小鲜肉7 分钟前
【QT/C++】Qt网络编程进阶:TCP网络编程的基本原理和实际应用(超详细)
c语言·开发语言·网络·c++·qt·学习·tcp/ip
YuanDaima204811 分钟前
安全协议设计入门:原理与分析
人工智能·笔记·安全·网络安全·密码学·安全协议·课程
浮游本尊28 分钟前
React 18.x 学习计划 - 第六天:React路由和导航
前端·学习·react.js
yuxb731 小时前
Zabbix企业级分布式监控系统(上)
笔记·学习·zabbix
现在,此刻1 小时前
李沐深度学习笔记D1-什么是深度学习
人工智能·笔记·深度学习
猿来是你_L3 小时前
UGUI笔记——3D坐标转换成UGUI坐标
笔记·3d
崎岖Qiu8 小时前
【设计模式笔记17】:单例模式1-模式分析
java·笔记·单例模式·设计模式
Chloeis Syntax9 小时前
MySQL初阶学习日记(1)--- 数据库的基本操作
数据库·学习·mysql
雪域迷影9 小时前
C#中通过get请求获取api.open-meteo.com网站的天气数据
开发语言·http·c#·get
lkbhua莱克瓦249 小时前
Java练习-正则表达式 1
java·笔记·正则表达式·github