网络知识
OSI 七层网络模型
- 应用层: 为用户进程提供网络服务
- 表示层:负责数据的转化,数据的压缩/解压,数据的加密/解密等
- 会话层:负责会话的建立,管理,销毁等服务
- 传输层:基于TCP/UDP进行 端口对端口的传输
- IP层:数据打包成IP数据报,在路由器/交换机上传输
- 数据链路层:
- 物理层:
TCP/IP 网络模型
- 应用层
- 传输层
- IP层
- 数据链路层
DNS解析
DNS解析过程
HTTPDNS优化
HTTP 的版本区别
HTTP1.0与 HTTP1.1
- 缓存优化
- 网络带宽及网络连接都优化
- host请求头添加
- 支持长连接(串行单线程处理请求,可以同时发起多个请求,但必须等待前一个请求处理完,才会处理新的请求,否则只能被阻塞)
HTTP1.1与HTTP2.0
- 新的二进制文件
- 多路复用(多个请求可以在一个连接上并行执行,某个请求耗时严重,不会影响到其他连接的正常执行)
- 做到了延迟的优化,TCP连接是慢启动,因此突发性和短时性的http连接不高效,通过复用连接可以更有效的使用TCP
- Header压缩 (一个页面有100个资源要加载,而每次请求都有1kb的消息头,则至少要消耗100kb获取请求头,http2.0,维护了一个字典,用以差量更新http头部)
- 服务端推送(服务端会主动把客户端所需要的资源一起发给客户端)
TCP 与UDP
TCP 是面向连接的,可靠,慢,占用头部字节20多
UDP是无连接的,尽最大交付,快,占用头部字节少8