-
课程前言
计算机网络就如虚拟世界和现实世界的桥梁,这个桥梁的质量和使用者的能力决定了现实世界的人类可以借助这个桥梁完成多少工作。
课程的分析方法将会:
自底向上 自顶向下 从简单开始,逐渐变复杂 从复杂开始,逐渐变简单 将模块逐步拼凑成一个系统 从复杂的系统问题入手,拆分为模块问题 通过这个课程,我们可以:
建立对计算机网络的整体认知,对计算机网络中的各种概念(网络分层、网络协议、网络应用等)有初步的理解。 进而可以在后续的实际工作中能高效解决网络问题。
- 通过一个示例建立对计算机网络的整体认识
- 建立对网络协议分层的认知
- 分析HTTP1、2、3的关系
- 介绍CDN运行的基本原理
- 了解网络安全的最基本原则
P.S.本节课不会详细描述各协议的应用与规范,只为建立对计算机网络整体的初步认识。
引入:蟹堡王帝国
设立转发点,尽量避免重复线路,以此为原则,蟹堡王走出比奇堡,通过北京、上海连通了全国,建立了蟹堡王帝国:
由蟹堡王帝国类比计算机网络,关系如下:
计算机网络简化后的拓扑图:
电路交换 & 分组交换
在实际应用中,通常根据网络的特点和需求来选择不同的交换方式。
电路交换:1 to 1
分组交换:1 to n
网络分层
- 物理层
- 链路层
- 网络层
- 运输层
- 应用层
协议
定义:协议是计算机网络中进行通信和交换信息时所遵循的规则和标准。协议可以分为通信协议和网络协议两种类型。协议的存在依赖于连接协议定义了两个通信的端口之间交换数据的格式以及顺序。
区分:电路交换和分组交换是两种截然不同的通信技术。电路交换主要用于实时通信,如电话系统,而分组交换则广泛应用于现代计算机网络,如互联网。分组交换具有更高的资源利用率和更强的适应性,因此在大多数场景下,分组交换是更优的选择。
网络分层
“快递员不关心包裹内容、卡车司机不关心车厢里拉的是什么、高速公路不关心开的什么车”
定义:
网络应用是指利用计算机网络技术开发出来的各种应用软件,如Web浏览器、电子邮件、文件传输协议等。网络应用可以极大地方便人们的生活和工作,如通过HTTP协议实现网上购物、通过SMTP协议实现电子邮件发送等。
标头和载荷
- 标头记录了两个端口的信息以及传递数据所需要的协议识别信息。
- 载荷负载着传递的数据内容
网络协议
协议的存在依赖于连接:
协议定义了在两个或多个通信实体之间交换的报文格式和顺序,以及报文发送和/或接受一条报文或其他事件所采取的动作。
HTTP
(听懵了,后续记得回顾这部分)
## HTTP的连接模型和示例
TCP协议格式
## 小结
- 网络组成部分:主机、路由器、交换机等组成
- 网路结构:网络的网络
- 信息交换方式:电路交换和分组交换
- 网络分层:分清职责,物理层、链路层、网络层、运输层和应用层
- 网络协议:标头和载荷