计算机网络概论 | 青训营笔记创作活动

68 阅读3分钟

计算机网络概论

前言和课程介绍

课程目标和收益

建立对计算机网络的整体认知,对计算机网络的概念:

  1. 网络分层
  2. 网络协议
  3. 网络应用

课程介绍

基本学会:

  1. 通过一个实例建立对计算机网络的整体认知
  2. 建立对网络协议分层的认知
  3. 分析HTTP1.1、2、3
  4. 介绍CDN运行的基本原理
  5. 了解网络安全的最基本原则

通过蟹堡王帝国例子进行深入

image.png

蟹老板有一个小目标,然后有一个三步走战略:在比奇堡开通外卖,在北京和上海开分店,在全国开分店并开通外卖

比奇堡外卖、北京上海分店和全国分店和通信网络示意图如下所示:

image.png

网络基础

网络组成部分:

  1. 主机:客户端和服务器
  2. 路由器、交换机
  3. 网络协议

网络结构:网络的网络

  1. 本地网络:比奇堡和小区网络(区域网络)
  2. 北京上海分店加上比奇堡:三个本地网络节点的网络(城域网)
  3. 全国通信网络:本地的网络的网络(广域网)

协议:标头和载荷

  1. 协议的存在依赖于连接
  2. 协议定义了在两个或多个通信实体之间交换的报文格式和顺序,以及报文发送和接受一条报文或其它事件所采取的动作。

HTTP协议示例

image.png

HTTP协议分为了以下几类:

  1. 链路层-本地帧头部
  2. 链路层-IP协议头部
  3. 运输层-TCP协议头部
  4. 应用层-HTTP协议头部

TCP协议格式

image.png

信息交换方式:电路交换和分组交换

网络分层:分清职责、物理层、链路层、网络层、运输层和应用层

Web中的网络

HTTP连接模型:队头堵塞

image.png

HTTP1.1:无法多路复用

HTTP2:帧带来的额外好处:

  1. 调整响应传输的优先级
  2. 头部压缩
  3. Server Push

HTTP2:队头堵塞,但是在TCP上

HTTP2:3RRT启动

HTTP3:QUIC

  1. 现代网络设备对TCP和UDP支持已经僵化
  2. UDP不靠谱但是QUIC靠谱
  3. QUIC可以为除HTTP协议以外的应用层协议提供支持

CDN:DNS劫持

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

WebSocket

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

网络安全

三要素

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