要摸清网络,那么第一步肯定是要清楚网络协议的分层结构,看分层结构相当于从上帝视角来看网络,这样后续针对每一个层深入学习就不会摸不着头脑。
对于同一台设备上的进程间通信,有很多种方式,比如有管道、消息队列、共享内存、信号等方式,而对于不同设备上的进程间通信,就需要网络通信,而设备是多样性的,所以要兼容多种多样的设备,就协商出了一套通用的网络协议。
OSI 标准模型
OSI(Open System Interconnect),即开放式系统互联。
互联⽹的通信协议都对应了 7 层中的某⼀层,通过这⼀点,可以了解协议在整个⽹络模型中的作⽤,⼀般来说,各个分层的主要作⽤如下
应⽤层 :应⽤层是 OSI 标准模型的最顶层,是直接为应⽤进程提供服务的。其作⽤是在实现多个系统应⽤进
程相互通信的同时,完成⼀系列业务处理所需的服务。包括⽂件传输、电⼦邮件远程登录和远端接⼝调⽤等
协议。
表示层 : 表示层向上对应⽤进程服务,向下接收会话层提供的服务,表示层位于 OSI 标准模型的第六层,表
示层的主要作⽤就是将设备的固有数据格式转换为⽹络标准传输格式。
会话层 :会话层位于 OSI 标准模型的第五层,它是建⽴在传输层之上,利⽤传输层提供的服务建⽴和维持会
话。
传输层 :传输层位于 OSI 标准模型的第四层,它在整个 OSI 标准模型中起到了⾄关重要的作⽤。传输层涉
及到两个节点之间的数据传输,向上层提供可靠的数据传输服务。传输层的服务⼀般要经历传输连接建⽴阶
段,数据传输阶段,传输连接释放阶段 3 个阶段才算完成⼀个完整的服务过程。
⽹络层 :⽹络层位于 OSI 标准模型的第三层,它位于传输层和数据链路层的中间,将数据设法从源端经过若
⼲个中间节点传送到另⼀端,从⽽向运输层提供最基本的端到端的数据传送服务。
数据链路层 :数据链路层位于物理层和⽹络层中间,数据链路层定义了在单个链路上如何传输数据。
物理层 :物理层是 OSI 标准模型中最低的⼀层,物理层是整个 OSI 协议的基础,就如同房屋的地基⼀样