一、网络分层
1、TCP/IP分层管理(TCP/IP:网络传输层协议)
TCP/IP协议按层次主要为:应⽤层,传输层,⽹络层,数据链路层。
2、应用层
(1) HTTP(应用层协议)
版本:V1.1
(2) Websocket
客户端和服务端之间持久连接
(3) grpc(分布式架构)
是谷歌给予http2.0版本来设计的
理解:远程过程调用
访问远程像调用本地的一样
二、HTTP协议
1、微服务架构的通信模式(分布式架构演变而来):
在微服务的架构中,采用的是轻量级的REST API的通信模式,或者使用grpc协议
REST API:
(1) HTTP协议(无状态的协议码)
(2) JSON格式
2、http请求流程
(1)http是一种无状态的协议码
(2) 所以就演变了cookie技术的发展,但是cookie存储在客户端(本地),不安全
(3) 所以又有了session,而session存储在服务端,如数据库、Redis
(4) Token:本质上使用session原理实现的,又称为令牌
cookie请求流程
Session请求流程
token请求流程
三、面试内容
1、HTTP请求流程
2、请求方法
3、请求头(request)和请求(response)
4、cookie请求流程、session请求流程、token请求流程,以及HTTPS请求流程
四、HTTPS (超文本传输安全协议)
HTTP的协议它是存在缺陷的,这些缺陷主要为:
(1) 通信内容是明⽂,内容很可能被第三⽅获取到
(2) 不验证通信⽅的身份信息,容易被伪装
(3) ⽆法证明请求头的完整性
基于HTTP存在这些缺陷,也就有了HTTPS的协议,我们可以把HTTPS可以汇总为:HTTPS=HTTP+加密+认证+完 整性保护。
HTTP认证体系
HTTP/1.1版本中,使⽤的认证⽅式具体为:
BASIC认证,也就是基本认证
DIGEST认证,也就是摘要认证