计算机网络概论
今天简单介绍了计算机网络概论的知识,从蟹堡王引入,由浅入深地介绍了网络相关知识,课程整体专业名词较多,比较抽象,但也为我介绍了很多以前只是听过但不了解的知识,如HTTP等
①简介
建立对计算机网络的整体认知
概念:
网络分层、网络协议、网络应用
分析方法:
自底向上,自顶向下
②导入/网络基础
由蟹堡王引入,简单描述
计算机网络基础:
-
网络组成部分:
主机:客户端和服务端
路由器
网络协议 -
网络结构:网络的网络
本地网络→本地网络节点的网络→本地网络的网络
区域网络→城域网→广域网络 -
电路交换&分组交换
-
网络分层
不关注内容,只关注从哪到哪 -
协议
协议的存在依赖于连接
协议定义了在两个或多个通信实体之间交换的报文格式和顺序
以及报文发送和/或接受一条报文或其他事件所采取的动作 -
标头和载荷
标头类似于快递面单
载荷类似于快递里的内容
③Web应用
-
HTTP协议
包含两部分:请求和响应 -
HTTP协议示意
物理层
链路层-本地帧头部
网络层-IP协议头部
运输层-TCP协议头部
应用层-HTTP协议头部 -
TCP协议格式
-
HTTP链接模型
HTTP报文能以ASCII码呈现,易于理解
TCP报文难以理解以下是HTTP的发展进程
1.0(响应后马上销毁)
<short-lived connections>
无法判断多个请求所属
2.0(默认保持链接)
<Persistent connection>
采用帧,实现多路复用
调整响应传输的优先级
头部压缩
Server Push
队头堵塞:TCP
3RTT启动
3.0(多个请求顺序响应)
<HTTP pipelining>
QUIC(Quick UDP Internet Connection)(靠谱)
现存网络设备对TCP和UDP支持已经僵化
QUIC可以为除HTTP协议以外的应用层协议提供支持
1RTT-0RTT启动 降低握手延迟
-
CDN:
-
WebSocket(由HTTP升级而来) 有状态的持久连接 服务端可以主动推送消息 消息延迟低于HTTP
④网络安全
-
三要素
机密性,完整性,身份验证 -
对称加密和非对称加密
对称加密:加密解密的密钥相同
非对称加密:加密解密使用不同的密钥 -
密码散列函数(哈希函数)
输入:任意长度的内容
输出:固定长度的哈希值
性质:计算上不肯能找到具有相同哈希值的不同输入 -
机密性
加密算法和密钥等—>秘密信息
要明文通信交换秘密信息,双方要现有秘密信息 -
完整性
和身份验证相互关联 -
身份验证
数字签名:
对明文内容的哈希值使用私钥加密,
验证者使用公钥验证(一般对公开内容使用)验证的一连串证书称为证书链
根证书是证书链尽头
分发证书,验证证书的基础设施称为PKI
(Public Key Infrastructure) -
HTTPS
HTTPS=HTTP+TLS(把HTTP的明文转换成密文,再验证身份)
TLS=身份验证(依靠PKI)+加解密服务端身份验证:PKI
客户端身份验证:HTTP