计算机网络概论
一、前言&课程介绍
1、建立对计算机网络的整体认知
2、分析方法
- 自底向上
- 自顶向下
二、蟹堡王帝国
尽量减少重复的通讯线路
- 客户端
- 服务端
- 路由器
- 网络协议
三、计算机网络基础
1、计算机网络组成部分
- 主机:客户端和服务端
- 路由器
- 网络协议
2、网络结构:网络的网络
- 本地网络
- 通信网络:本地网络的网络
- 区域网络、城域网、广域网
3、电路交换&分组交换
4、网络分层
- 物理层 ×
- 内容层 ×
- 网络层:高速公路
- 运输层:卡车
- 应用层:快递公司
5、协议
协议的存在依赖于链接。
协议定义了在两个或多个通信实体之间交换的报文格式和顺序,以及报完发送和/或接受一条报文或其他事件所采取的动作
6、标头和载荷
收件人、寄件人关注:
- 收件地址、寄件地址
- 收件人、寄件人的姓名和电话
- 包裹内容
快递公司关注:
- 收件人、寄件人关注的东西
- 该由哪个集散点发出,哪个集散点接受
- 哪个网点派送
7、HTTP协议示例
- 链路层-本地帧头部
- 链路层-IP协议头部
- 运输层-TCP协议头部
- 应用层-HTTP协议头部
四、Web中的网络
HTTP链接模型
- 短链接模型:请求-响应模型:当一个请求被解决之后才能接受下一个请求
- 持久链接模型
- 队头堵塞问题(Head of Line Blocking)
- HTTP1.1:无法多路复用
- HTTP2:帧:可以实现多路复用,根据信息重组各个请求
- 调整响应传输的优先级
- 头部压缩
- Server Push
TCP会丢包重传
QUIC
- Quick UDP Internet Connection
- 现存网络设备对TCP和UDP支持已经僵化
- QUIC可以为除HTTP协议以外的应用层协议提供支持
3、HTTP3:
QUIC第一次访问(1RTT):
- 首先,HTTP客户端将HTTP请求发送给QUIC客户端。
- 然后,QUIC客户端将HTTP请求封装成QUIC数据包并通过UDP发送给QUIC服务端。
- 接着,QUIC服务端接收到数据包后进行解析并处理HTTP请求。
- 最后,QUIC服务端将HTTP响应封装成QUIC数据包并通过UDP发送回QUIC客户端,QUIC客户端再将HTTP响应返回给HTTP客户端。
QUIC第二次访问(0RTT):
- 同一个HTTP客户端向QUIC服务端发送请求
- QUIC客户端向QUIC服务端发送加密的HTTP请求
- QUIC服务端响应请求
- QUIC客户端发送数据给HTTP客户端
CDN:
一个地区的服务器对应一个IP,该地区的用户通过DNS访问该地区的服务器
- 推策略:主服务器热门事物主动推送给分服务器拷贝
- 拉策略:分服务器向主服务器请求冷门事物
WebSocket:
- 有状态的持久连接
- 服务端可以主动推送消息
- 延迟比HTTP低
五、网络安全
三要素:
- 机密性
- 完整性
- 身份验证
对称加密和非对称加密:
加密是否使用同样的密钥
完整性和身份验证:
完整性和身份验证互相关联