计算机网络概论
利用蟹堡王的商业帝国来通俗了解:
- 网络结构;
- 建立对网络协议分层的认知以及常见协议基本原理;
- 分析HTTP1、2、3的关系和基本原理;
- CDN运行的基本原理;
- 网络安全基本原则和实现。
一、了解网络结构
蟹堡王开展比奇堡外卖服务以及开分店来拓展业务范围和盈利收入。 而开启分店和外卖服务就需要考虑其中通信线路的建设。 那我们可以得到
- 蟹堡王的顾客→客户端;
- 蟹堡王分店→服务端;
- 小区转发点和蟹堡王城市转发分店→路由器;
- 转发信息表格→网络协议;
这样的结构可类比为简化后较为简单的计算机网络结构
二、计算机网络基础
(1)网络组成部分:
- 主机:客户端和服务端 作用:负责提供信息或接收信息
- 路由器 作用:负责转发主机之间的信息
- 网络协议 作用:负责提供统一的格式,方便路由器或主机对信息进行编码或解码
(2)网络结构
在蟹堡王的商业帝国中的通信线路可分为:
- 比奇堡和小区网络→本地网络
- 北京和上海分店与比奇堡→三个本地网络节点构成的网络
- 全国通信网络→全国各地本地网络构成的网络
这三种网络分别对应区域网、城域网和广域网。
(3)信息交换
信息交换的方式一般可分为两种:电路交换和分组交换。
比奇堡一开始采用的电话接通外卖方式可视为电路交换,后面采用传真机传输信息则可视为分组交换。
分组交换的好处:分组交换不用建立电路连接,不易溢出资源和带宽,接受到新的分组后会加入输出队列按顺序输出,当队列满时也会丢弃清掉的分组。
所以在计算机网络中采用的都是分组交换。大的报文会分解为n个小的报文,小的报文会经过分组,通过网络运输到目的地之后,再由主机上的软件将小的报文还原回原本的报文。
(4)网络分层
计算机网络分为五层:物理层、数据链路层、网络层、运输层、应用层。 这些网络体系结构之间互相不干扰,只专注于自身的主要任务。
(5)网络协议
网络协议存在的前提条件是两个实体之间存在连接,如果没有存在连接,则协议的存在没有有意义,所以协议依赖于连接。
协议定义了在两个或多个通信实体之间交换的报文格式和顺序,以及报文发送或接受一条报文所采取的动作,所以协议的存在避免了用错误的方式去解读用于传输信息的数字。
HTTP协议实例
左边是解析过的结果,右边是链路层帧的原始数据。
其中第二行的Null/Loopback代表的是这个链路层的帧是本机的帧,对应右边开头前四位字节18 00 00 00转化为十进制为24,代表这个链路层使用的是IPv6。第三行是IP层,IP协议的头部对应右边的5~44个字节,这44个字节中包含IP协议的版本、原IP地址、目标IP地址、载荷程度等信息。第四行为TCP协议层(运输层),TCP协议头部为20个字节。第五行为HTTP协议头部(应用层)。
TCP协议格式