计算机网络概念
计算机网络是指在网络操作系统、网络管理软件和网络通信协议的管理和协调下,通过通信线路将多台具有独立功能的计算机及其位于不同地理位置的外部设备连接起来,实现资源共享和信息传输的计算机系统;计算机网络的主要功能是实现计算机的资源共享、网络通信和集中管理,数据通信是计算机网络最基本的功能。
重点:: 网络协议、网络分层机构、HTTP
一、前言
建立对计算机网络的整体认知,对计算机网络中的各种概念(网络分层、网络协议、网络应用)
使用方法:
1、自底向上:
从简单开始,逐渐变复杂
将模块逐步拼凑成一个系统
2、自顶向下:
从复杂开始,逐渐变简单
从复杂的系统问题入手,拆分为模块问题
二、蟹堡王帝国
三、计算机网络基础
1、网络组成部分:
主机:客户端和服务器
路由器
网络协议
2、信息交换的方式:
电路交换
分组交换 3、小结
网络组成部分:主机、路由器、交换机
网络结构:网络的网络
信息交换方式:电路交换、分组交换
网络分层:分清职责、物理层、链路层、网络层、运输层、应用层
网络协议:标头和载荷
四、web中的网络
http协议:请求响应
HTTP1.1:无法多路复用
HTTP 2:帧
前三个字节:载荷长度
第四个字节:类型
第五个字节:类型对应的Flags
第六到第九字节:第一位:保留位、第2-32位:流ID 随后的8192字节:载荷
HTTP 2:帧带来的额外好处:
1.调整响应传输的优先级
2.头部压缩
3.Server Push
HTTP2:对头堵塞,但在TCP上
1.TCP包0:包含了(包含了style.css的第1行内容)的HTTP 2 的帧
2.TCP包1:包含了(包含了main.js的全部内容)的HTTP 2 的帧
3.TCP包2:包含了(包含了style.css的第2行内容)的HTTP 2 的帧
4.TCP包3:包含了(包含了style.css的第3行内容)的HTTP 2 的帧
HTTp 3:QUIC
Quick UDP internet Connection
现代网络设备对TCP和UDP支持已经僵化
UDP不靠谱但是QUIC靠谱
QUIC可以为除HTTP协议以外的应用层协议提供支持
webSocket(从HTTP协议升级而来):
1.有状态的持久连接
2.服务器可以主动推送消息
3.用WebSocket发送消息延迟比HTTP低
五、网络安全
三要素:
1.机密性:攻击者无法获知通信内容
2.完整性:攻击者对内容进行篡改时能被发现(与身份验证关联)
3.身份验证:攻击者无法伪装成通信双方的任意一方与另一方通信
对称加密和非对称加密:
1.对称加密:加密、解密用同样的密钥
2.非对称加密:加密、解密使用不同的密钥(公钥和私钥),而且公钥加密只能用私钥解密、私钥加密只能用公钥解密
如何实现完整性:
密码散列函数性质:找到两个不同的输入使之经过密码散列函数后有相同的哈希值,在计算上使不可能的
如何实现身份验证:
数字签名:对明文内容的哈希值使用私钥加密,验证者使用公钥验证
标题:计算机网络概论 - 掘金