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

67 阅读3分钟

分析方法

自底向上

  • 从简单开始--逐渐变复杂--将模板逐步拼凑成一个系统

自顶向下

  • 从复杂开始--逐渐变简单--从复杂的系统问题入手--拆分为模块问题

计算机网络基础

网络组成部分

  • 主机--客户端 / 服务端--提供,接收信息

  • 路由器--转发主机之间的信息

  • 网络协议--提供统一格式--方便主机和路由器编码,解码

网络结构--网络的网络

  • 本地网络

  • 本地网络节点的网络

  • 本地网络的网络

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

信息交换方式

电路交换

分组交换--计算机主要采用的交换方式

网络分层

计算机的五大分层--从低到高

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

协议

协议的存在依赖于连接

网络协议--标头和载荷

Web中的网络

HTTP协议

image-20230414174525291.png

红色请求
  • 第一行(起始行)

    • GET-请求方法

    • HTTP-资源路径

    • 1.1-HTTP版本

蓝色响应
  • 第一行--状态行

    • HTTP1.1-HTTP版本

    • 200-状态码

    • OK-状态信息--可自定义

HTTP连接模型

image-20230414175239564.png

HTTP2:帧

image-20230414175528041.png

  • 1-3字节--帧的长度
  • 4字节--帧的类型
  • 5字节--传递当前帧的状态
  • 6字节--第一位(R)保留位--后面31位-当前帧所属流的ID
好处
  • 调整响应传输的优先级
  • 头部压缩
  • Server Push

HTTP3:QUIC

  • Quick UDP Internet Connection
  • 现存网络设备对TCP和UDP支持已经僵化
  • UDP不靠谱但QUIC靠谱
  • QUIC可为除HTTP协议外的应用层协议提供支持

CDN-DNS劫持

  • 域名分析一般由网站自己处理
  • 要加速的域名则重定向到CDN厂商的域名解析服务处理
  • CDN厂商根据来源确定最近的CDN服务器的IP
  • 用户直接访问最近的CDN服务器

WebSocket

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

网络安全

三要素

  • 机密性--攻击者无法获知通信内容
    • 加密需要加密算法和密钥等信息--统称为秘密信息
    • 网络是明文的--不安全
  • 完整性--攻击者对内容进行篡改时能被发现
  • 身份验证--攻击者无法伪装成通信双方的任意一方与另一方通信
  • 完整性和身份验证相互关联

对称性加密和非对称性加密

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

密码散列函数--哈希函数

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