OSI七层结构

实际上就是一系列的协议,根据功能人为的分成了七层,也可以分为五层、四层。

先后关系

物理层 -- 数据链路层 -- 网络层 -- 传输层 -- 会话层 -- 表示层 -- 应用层

物理层

计算机之间的通信,必须有底层物理层面的连通。中间传输的是电信号,也就是二进制传输。为启动、关闭和维护物理链路定义了电气规范、机械规范、过程规范和功能规范。

之前常用的介质:集线器

  1. 使所有设备在同一冲突域中,当两条线上同时有电流向某一方向流动,电流波在碰撞时会造成相互影响的结果,引起冲突
  2. 是所有设备在同一广播域中。电流是具有扩散特性的,只要有导线,周围就充满电流。
  3. 使相同设备分享同一带宽。在集合多条电线时,带宽会平均分配

数据链路层

对物理层的电信号进行分组,后来制定了统一的协议--以太网协议Ethernet

  • 一组数据为一个帧,将数据按照规定进行分配(前导符、目标地址、源地址、长度、数据、FSC)
  • 这里的地址为MAC地址:Ethernet规定,接入internet的的设备都必须具有网卡,发送端和接收端的地址就是指网卡的地址,即MAC地址

类比举例:在同一间教室(同一个局域网内),A向B要某部电影的资源,A的地址就为源地址,B的地址就为目标地址,而某部电影的资源就是数据,数据在物理层转换为二进制,又在物理链路层和地址等一起打包,通过广播的方式进行通信。

广播:在同一局域网内,发送消息所有设备都可以接收到,所有设备都打开数据包检查接收方是否为自己,如果不是则丢弃。

对应硬件设备为交换机,每一段都有自己的冲突域,依然只有一个广播域。

数据链路层支持错误检测--这一层只支持奇偶校验

网络层

计算机网络中有多个局域网,如果不只是在同一个局域网内进行通信,仅靠广播已达不到要求了。

网络层定义了IP协议,数据链路层中的MAC地址定义了设备在某局域网中的位置,而IP地址定义了设备在哪一个局域网。

类比举例:当A需要找隔壁教室的B同学借一本书,就需要通过教室负责人找到隔壁教室的负责人,隔壁教室负责人再通过广播方式找到B同学。

以上的教室负责人就是网关

在设备通信时,首先需要找到自己局域网的网关,让其与另一局域网网关进行通信,将自己要通信的设备和数据给网关,实现跨局域网通信

数据链路层会将网络层的数据和地址等进行打包,再发给物理层,物理层根据IP判断是否在同一局域网,如果在直接广播;如果不在则发给IP地址对应的网关,对应网关再在对应局域网进行广播。

而此时跨网络通信就需要通过IP寻址,再选择最佳路径进行通信。

此处的数据:ip头、源地址和目标地址,形成数据包。

传输层

IP和MAC地址找到了特定局域网上的特定主机,接下来就要对应用程序进行处理,比如某主机上同时打开了qq和qq音乐,此时两个应用程序之间需要通信。

应用程序通过端口来进行标识,端口就是应用程序与网关关联的编号

传输层就是建立了主机端到端的连接,提供了可靠而透明的数据传输服务,错误检测数据并恢复数据

此时就产生了两个协议,TCP 、UDP协议

会话层

建立、中止、连接应用程序之间的会话

表示层

提供用于各应用层的数据转换规则,使得应用层之间传输的数据能够被理解。也可以提供数据压缩和加密。

应用层

是为计算机用户提供应用接口,也为用户直接提供各种网络服务。此时包含HTTP、FTP等网络协议。

数据封装--应用层到物理层

数据解析--物理层到应用层

对等通信

以上的每一层,发送方和接收方都是对等的,不存在交叉

原文地址:https://www.cnblogs.com/ashen1999/p/12733562.html