微信消息是怎么发出去?(计算机网络层次模型)

时间:2024-03-29 08:17:30

一、OSI七层网络模型

Q:按下微信的发送按钮以后都发生了啥?

计算机网络的七层模型—OSI七层网络模型

  1. 第一步:微信发出去以后,数据在空气中以电磁波形式传播,这些数据都是0和1组成的比特序列

第一步: 物理层
负责把网络设备(电脑 手机等)
连接起来的物理手段

(双绞线 光钎 电磁波等) ,
传递0和1的电信号

  1. 第二步:光有0和1的序列是无法解读出信息的 所以得有一种机制规定分组这些0和1序列的方式 有了分组以后才能解读出信息 否则拿到比特序列以后是无从下手的

第二步: 数据链路层
规定比特序列的分组方式和解读方式
将比特组合成字节进而组合成
同时要进行差错校验等功能

  1. 第三步:有了数据有了对数据的分组 还得知道数据传给哪一步手机(网络设备) ,所以这一步是找到目的手机的地址 将数据包发送到指定手机

第三步: 网络层
建立设备到设备之间的通信
每个连接到网络的设备都会有
一个唯一的标识----IP地址
网络层用ip地址找到目的设备
常用协议有:ICMP IGMP IP ARP RARP 等等

  1. 第四步:数据传到手机以后还不够 因为手机上有那么多APP 你怎么知道该传给哪一个APP? 所以这一步将数据包发送到指定手机上的指定APP 也就是微信

第四步:传输层
建立程序到程序之间的通信
同时保证数据的可靠传输(数据不丢失)等等功能
常用协议有TCP UDP

  1. 第五步: 在数据源源不断的发过来的过程中 手机需要对这个数据连接会话进行管理 比如收到一段数据以后就进行通知

第五步:会话层
建立、管理、终止会话
常用协议有SMTP DNS

  1. 第六步:在微信收到这些数据包中都是统一格式的 现在要把它解析成它原本的格式 比如原来是一个表情包 一段视频 一段文字等等 这一步就负责数据格式的转化 或者加密解密 加压解压

第六步:表示层
数据的格式转换、加密解密、加压解压
常用协议有 TELNET SNMP等

  1. 第七步:转换完成以后 在用微信特有一种"解析处理方式" (不同类型的APP可能有自己特有的解析处理方式) 呈现给用户

第七步: 应用层
针对特定应用的一个协处理层 网络服务与最终用户的一个接口
协议有:HTTP FTP TFTP SMTP等
比如网页请求用Http 文件传输用FTP
邮件发送用POP3
上面说的微信这类即时通讯软件有它自己特有的应用传层协议

So,微信发到了对方的手机上了!


二、TCP/IP四层模型

OSI七层模型分类繁琐细腻
将物理层和数据链路层 综合成网络接口层
将 会话层 表示层 应用层 综合成应用层

就有了TCP/IP四层网络模型
TCP/IP四层模型已经成为了事实上业界应用的模型


三、五层模型

五层模型是综合七层和四层结合的模型
保留了物理层和数据链路层
将 会话层 表示层 应用层 综合成应用层

微信消息是怎么发出去?(计算机网络层次模型)


参考文章:
你的微信消息是怎么发出去的?