# 计算机网络概论
学习目标
- 网络结构
- TCP/UDP
- HTTP 1 / HTTP2 / HTTP3 (QUIC)
- WebSocket
- CDN
- 安全(SSL/TLS/基础密码学)
01 前言 &课程介绍
建立对计网的整体认知,初步理解网络分层,网络协议,网络应用等,进而在工作中高效的解决网络问题
02 蟹堡王帝国
自低向上,从0搭建全国互联网;
网络的搭建我感觉就是从一个地方到另一个地方的通信,两个地方之间的通信的距离要短,因为要考虑成本。成本越低越好。
03 计算机网络基础
3.1 常见的应用协议和网络应用如何工作:
- 传真机----计算机
- 小区的转发点---路由器
- 蟹堡往的前台---合成路由器
- 厨房---服务器
- 分店之间的表格---网络协议
3.2 网络组成部分
- 主机:客户端和服务端 (负责发送接收信息)
- 路由器(负责转发主机之间的信息)
- 网络协议 (负责统一的格式,方便路由器或主机对信息进4. 行编码或解码)
- 更底层的知识:交换机,调制解调器,光纤
3.3 网络的结构:网络的网络
- 局域网
- 城域网
- 广域网
3.4 电路交换 & 分组交换
电路交换效率低,占用带宽,当前台多了的话,不在点餐时间他们都会很闲,浪费资源;并且前台的通话数量也是有限的,也会造成资源浪费的情况;
传真就可以看作是分组交换,有报文,不会预留资源于带宽,一组一组的进行信息传递,满了之后会丢包效率高,计算机中的通信都是采用分组交换;
3.5 网络分层
网络分为5层:网络层,运输层,应用层,链路层,物理层;每层各负其责,相当于黑盒;
- 高速公路不需要关心高速路上开的什么车----网络层(相当于告诉高速公路)
- 卡车司机不需要关心卡车里面是什么货物----运输层(卡车司机)
- 快递公司不需要关心快递里面是什么--------应用层(快递公司)
3.6 网络协议:
- 标头和载荷---相当于取快递上的快递信息;收件人看的信息,寄件人看的信息,快递公司看的信息,相当于标头;快递的实物相当于载荷;
- 两个实体之间必须能够交换信息,否则协议就没有意义;即协议的存在依赖于连接;
- 协议定义了在两个或多个实体之间交换的报文格式和顺序,以及报文发送共和/或接受一条报文或其他事件所采取的动作。
- http协议示列没看懂,没有理解讲的哪是哪儿;
- 报文= 链路层头+IP协议头+http协议头+tcp协议头+htcp正文
04 Web 中的网络
web的基础协议http协议;有很多可以影响web的性能:比如通信物理距离,路由器的选择;
4.1 HTTP协议的基本结构,请求,响应
http协议请求响应模型,网络利用率不高;无法在请求响应中插入内容,会导致cookie重复发很多次,无法压缩,增大了报文的体积;
4.2 HTTP 1 / HTTP2 / HTTP3 (QUI
- HTTP 1.0 关闭连接,可通过设置connection来修改,效率低
- HTTP 1.1 改成不关闭连接,请求响应后销毁Http连接
- HTTP 2.0 keep-alive 默认连接,会默认连接一段时间,以实现连接重用---帧的结构,没有解决队头堵塞问题
- HTTP 管线 允许客户端发送多个请求,服务端按顺序进行响应,但不中用,没有解决队头堵塞问题,存在安全问题,性能不高
- HTTP 3 会更快,用的QUIC协议,避免队头堵塞
4.3 HTTP之外的影响web性能的因素:
- 物理距离
- money
- 服务器够不够,
CDN介绍(昆明小明访问抖音视频:url域名:vedio.douyin.com)
4.4 WebSocket
另一种协议,握手方式特别,是从Http协议升级来的;要先用http协议,在Http协议的基础上,进行沟通,在用webSocket通信;只需要知道发送消息和服务端的接收消息;
4.5 小结
- HTTP123的演进历史
- CDN解决了HTTP协议之外的问题
- WebSocket从HTTP协议升级而来
05 网络安全----明文世界说暗话
5.1 网络安全三要素:
-
机密性: 攻击者无法获知通信内容
- 加密需要加密算法和密钥等信息(秘密信息)
- 网络是明文的,不安全
- 所以要想实现机密性,那么通信双方需要先有秘密信息(公钥)
-
完整性:攻击者对内容进行篡改能够被发现
-
身份验证:攻击者无法伪装成通信双方的任意一方与另一方通信
- 完整性和身份验证相互关联
5.2 网络安全:对称加密和非对称加密
- 对称加密:加密,解密用同样的密钥
- 非对称加密:加密,解密使用不同的密钥(公钥和私钥),公钥加密只能用私钥解密,私钥加密只能用公钥解密
5.3 网络安全:密码散列函数
网络安全:如何实现身份验证
- 数字签名 网络安全:HTTPS 把HTTP的明文换成密文,再验证身份,即HTTPS
- HTTPS = HTTP + TLS
- TLS = 身份验证 + 加解密
- 身份验证靠PKI 服务端身份验证靠PKI,客户端身份验证靠HTTP协议
06 小结
- 一个半小时的视频+笔记花了我上午3h,下午1h,哦买噶,听的还是有点迷迷糊糊,总感觉是听了个大概的样子;
- 笔记中可能会有些错误,欢迎指出,一起进步~
- 祝大家快乐学习每一天~
标题:计算机网络概论 - 掘金