http知识整理

http 是什么

  • 是一种数据传输协议。
  • 它工作在应用层
  • 是一种无状态协议。
  • 是一种可靠的传输协议(可以延伸出TCP, UDP)。

优点

简单,易扩展。

缺点:

明文,容易被查看
无身份验证,容易被冒充
完整性校验,容易被篡改
解决方法,引入https
在http与tcp中间加入一个加密层。

https

优点: 加密防止查看,认证防止冒充,完整性防止篡改。
加密方法:对称加密,速度快,容易被窃取
非对称加密,速度慢,不会被窃取
实际使用:先使用非对称加密交换密钥,再通过对称加密通信。
https 缺点:速度慢,证书要高额费用
https建立链接过程

方法

post,put,patch, get, head, , delete, options, connect, trace
get, post 区别,从作用,参数,安全,幂等,去比较
作用:获取资源,提交资源
参数:放在地址里,放在实体里
安全:指的是会不会改变数据
幂等性:get,head, put, delete幂等,post非幂等
可缓存,get 可缓存

请求格式

请求格式 行,头,实体
返回格式 行(状态码),头,实体

状态码

https://mp.weixin.qq.com/s/mpIudvw-3S3BFJDSh6izUg 很全的。
https://mp.weixin.qq.com/s/U3P66NJShKPvp_JcJj2zwg
3XX https://blog.csdn.net/snowin1994/article/details/86478256
301 永久,2临时,不限制方法,3临时,要用get
304 无变化,307临时,不允许变post
https://mp.weixin.qq.com/s/U3P66NJShKPvp_JcJj2zwg
405 禁止方法,413请求体过大,414uri过长。
500 服务端错误,501 未实现,502网关错误,503服务不可用(维护或负载过大)504网关超时,505http版本不支持

http 1.x 缺陷

客户端需要使用多个连接才能实现并发和缩短延迟。
不会压缩请求和响应,导致不必要的网络流量
不支持有效资源优先级,使得tcp连接利用率低下。

http 2.0

把数据分成头部和数据帧,并压缩成二进制。
只会有一个tcp链接,承载双向数据流。
服务端主动推送
首部压缩,haffman

http 1.1 新特性

默认是长链接
支持流水线
支持同时打开多个tcp链接
支持虚拟主机
新增状态码100
支持分块传输编码
新增缓存处理命令max age

TCP UDP

tcp 有连接,一对一,可靠,流量控制,拥塞控制,面向字节流
udp 无连接,一对多,多对多,面向报文,没有拥塞控制,不可靠

三次握手

在这里插入图片描述
三次原因,确认起始序列号,确认双方通信连接状态。

四次挥手

在这里插入图片描述

四次挥手原因,服务端还有可能有数据要发送。
timeWait 时长 2msl
原因,防止服务端未收到关闭确认消息,会重新发送关闭请求。
确认原连接产生的报文都已经消失,新连接不会接收到旧报文。

流量控制
拥塞控制 (慢开始,拥塞控制,快重传,快恢复)
加倍
+1
cwnd /=2 , +1

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值