一、对计算机网络的认知
二、蟹堡王帝国的分析:
1.蟹堡王外卖:发送者(谁吃)发送信息(吃什么)到接收者(送到哪)来表示信息的传递(客户端)
2.开蟹堡王分店(服务端):发送者的信息多了,送外卖就多了,收益按总店汇中,为了降低成本,防止重复开店的步骤, 3.小区转发点和蟹堡王城市转发分店(路由器) 4.转发表格(网络协议)
基本认知
三、网络基础
1.网络结构(网络的网络):本地网络,节点,区域网络、城域网和广域网
2.网络组成部分:由主机、路由器、交换机等组成
3.信息交换方式:电路交换和分组交换
4.网络分层:分清职责,物理层,链路层,网络层,运输层和应用层
5.网络协议(标头和载荷):存在依赖于连接,协议定义了在两个或多个通信实体之间交换的报文格式和顺序,以及报文发送和接受一条报文或其他事件所采取的动作。
6.HTTP协议实例:链路层—ip协议头部(右边16进制) 第三行:ip层 40节 第4行:tcp协议 第五行:tap协议层 TCP协议格式
四、web应用(HTTP连接模型、请求响应模型)
HTTP1.1:无法多路复用(字节发送)
HTTP2:帧(看头部信息来看)
三字字节长度,第四个字节是类型,第五个字节不同帧不同类型,第6字节是保留类,后面是长度;
HTTP2:队头堵塞,但是在TCP上,
http2:3RTT启动,交互之前过三个,效率低,
HTTP3:QUIC(新的协议)吸取二三的概念,—0RTT,更迅速,有案底(钥匙)
CDN:DNS劫持
websocket连接,有状态的持久连接 总之,Websocket从HTTP协议升级而来,CDN解决了HTTP协议之外的问题
五、网络安全:
1.三要素
机密性:攻击者无法获知通信内容 加密算法和秘钥(秘密信息) 完整性:攻击者对内容进行篡改时能发现 身份验证:攻击者无法伪装成通信双方的任意一方与另一方通信
2.对称加密和非对称加密。密码散列函数(哈希函数)
3.完整性和身份验证(相互关联)
4.如何实现完整性
有明文,以及一个密钥s,计算H(m+s)获得哈希值h
5.如何实现身份验证
签名:用于鉴别身份和防止伪造 非对称加密性质:加密、解密使用不同的密钥(公钥和私钥)
数字签名:对明文内容的哈希值使用私钥加密,验证者用公钥;公开内容进行数字签名,防止篡改
PKL保证了普通用户不需要“面对面”和根证书机构交换根证书
数字签名(指纹)=私钥加密(密码散列函数(原文))
想要实现身份验证,通信双方需要先有秘密信息,即根证书(证书链的尽头)中的公钥
HTTPS=HTTP+TLS
TLS=身份验证+加解密
身份验证靠PKL
HTTPS使用PKL完成了除客户端身份验证以外的特性,客户端身份验证靠HTTP协议实现