计算机网络概论 一、网络基础
1.网络组成部分 主机:客户端和服务端 路由器 交换机 网络协议:标头和载荷
2.网络结构:网络的网络 区域网络,城域网,广域网
3.信息交换:电路交换和分组交换
4.网络分层:物理层,链路层,网络层,运输层和应用层。
5.协议:存在依赖于连接 定义了在两个或多个通信实体之间交换的报文格式和顺序,以及报文发送和/或接受一条报文或其他事件所采取的动作。
6.网络协议:标头和载荷
7.HTTP协议: 链路层-本地帧头部 Null/Loopback 链路层-IP协议头部 Internet Protocol Version 运输层-TCP协议头部 Transmission Contorl Protocol 应用层-HTTP协议头部 Hypertext Transfer Protocol GET /workspace/veplayer/tsconfig.json HTTP/1.1\r\n
二、Web应用 1.HTTP (Hypertext Transfer Protocol) 模型是用于在客户端和服务器之间传输数据的应用层协议,它定义了客户端和服务器之间的通信格式和规则。
2.HTTP连接模型: (1)HTTP/1.1(short-lived connections)无法多路复用 其所带来队头堵塞问题(Head of Line Blocking)在HTTP/1.1协议中,由于HTTP是基于TCP协议进行数据传输的,而TCP协议是一种面向流的协议,因此在传输数据时会将数据拆分为一个个TCP报文段进行传输。当服务器在处理某个TCP连接时,如果某个请求的响应没有返回,那么后续的所有请求都必须等待该请求的响应返回后才能继续发送,即便这些请求可以并发处理,这就是HTTP队头阻塞。
HTTP/1.1协议引入了长连接机制,其中每个请求和响应可以是short-lived connections,从而提高了HTTP的性能和可靠性。
(2)HTTP/2 (Persistent connection) HTTP队头阻塞会降低HTTP请求的并发性能,导致请求的响应时间变长。为了解决这个问题,HTTP/2协议引入了多路复用技术,允许在一个TCP连接上同时传输多个HTTP请求和响应,从而避免了HTTP队头阻塞的问题。
调整响应优先级,头部压缩,Server Push
(3) HTTP/3 (HTTP Pipelining) 旨在通过使用多路复用、流优先级和丢失恢复等技术来减少延迟并提高 Web 连接的可靠性。默认情况下,它还使用加密,从而增强了安全性和隐私性。
与其前身 HTTP/1 和 HTTP/2 相比,HTTP/3 在处理请求和响应的方式上有几个关键差异。例如,HTTP/3 使用 QUIC (可以为除HTTP协议以外的应用层协议提供支持)的基于数据报的传输而不是 TCP (现存设备对TCP和UDP的支持已经僵化)的基于流的传输,这样可以更有效地使用网络资源并减少延迟。
HTTP/3 仍然相对较新,尚未被 Web 服务器和浏览器广泛支持。但是,随着越来越多的Web开发人员和网络管理员意识到其优势并开始在其应用程序中实施它,其采用率预计将增长。
3.CDN解决了HTTP协议之外的问题
4.WebSocket从HTTP升级而来 有状态的持久连接 服务端可以主动推送消息 用WebSocket发送消息延迟比HTTP低
三、网络安全
1.三要素:机密性,完整性,身份验证
2.对称加密:加密,解密用同样的密钥 非对称加密:用不同的密钥(公钥加密私钥解密,私钥加密只能用公钥解密)
3.密码散列函数(哈希函数) 输入:任意长度的内容 输出:固定长度的哈希值 性质:找到两个不同的输入使之经过密码散列函数有相同的哈希值,在计算上是不可能的。
4.根证书,证书链 分发证书,验证证书的基础设施是PKI(Public Key Infrastructure)
5.HTTPS=HTTP(客户端身份验证靠HTTP协议)+TLS TLS=身份验证(服务端身份验证靠PKI)+解密