计算机网络概论 | 青训营笔记

61 阅读3分钟

一、课程目标

建立对计算机网络的整体认知,对计算机网络中的各种概念(网络分层、网络协议、网络应用等)有初步的理解。

二、课程内容

1、网络基础

计算机组成内容:

  • 主机
  • 路由器
  • 网络协议

网络结构:网络的网络

  • 区域网
  • 城域网
  • 广域网

信息交换方式:

  • 电路交换
  • 分组交换

网络分层

  • 物理层
  • 链路层
  • 网络层
  • 运输层
  • 应用层

协议:协议的存在依赖于连接。

  • 协议定义了在两个或多个通信实体之间交换的报文格式和顺序,以及报文发送和/或接受一条报文或其他事件所采取的动作。

image.png image.png

2、Web中的网络

HTTP协议

image.png

帧的结构

  • 前三个字节:载荷长度

  • 第四个字节:类型

  • 第五个字节:类型对应的Flags

  • 第六到第九字节:

    第1位:保留位

    第2-32位:流ID

  • 随后的8192字节:载荷

帧的好处

  • 调整响应传输的优先级
  • 头部压缩
  • Server Push

WebSocket

好处

  • 有状态的持久连接
  • 服务端可以主动推送消息
  • 用WebSocket发送消息延迟比HTTP低

image.png

image.png

3、网络安全

三要素:

  • 机密性:攻击者无法获知通信内容
  • 完整性:攻击者对内容进行篡改时能被发现
  • 身份验证:攻击者无法伪装成通信双方的任意一方与另一方通信

对称加密与非对称加密:

  • 对称加密:加密、解密用同样的密钥
  • 非对称加密:加密、解密使用不同的密钥(公钥和私钥),而且公钥加密只能用私钥解密、私钥加密只能用公钥解密

密码散列函数(哈希函数)

  • 输入:任意长度的内容
  • 输出:固定长度的哈希值
  • 性质:找到两个不同的输入使之经过密码散列函数后有相同的哈希值,在计算上是不可能的

机密性

  • 加密需要加密算法和密钥等信息(统称为秘密信息)
  • 网络是明文的,不安全

如何实现机密性

  • 已知:网络是明文的
  • 如果双方可以通过明文通信商量出秘密信息,那么攻击者也可以
  • 所以想要通过明文通信交换秘密信息,通信双方需要先有秘密信息

HTTPS

  • 把HTTP的明文换成密文,再验证身份,即HTTPS。
  • HTTPS= HTTP + TLS
  • TLS=身份验证+验证+加解密
  • 身份验证靠 PK
  • 服务端身份验证靠PKI,客户端身份验证靠HTTP协议。

小结:

  • 网络安全三要素:机密性、完整性和身份验证
  • 在没有提前交换秘密信息的前提下,无法在不安全的信道交换秘密信息
  • PKI保证了普通用户不需要“面对面”和根证书机构交换根证书
  • HTTPS使用PKI完成了除客户端身份验证以外的特性,客户端身份验证靠HTTP协议实现