本文是计算机网络系列的第一篇文章
学东西得先有个全局观
才不会只见树木不见森林
所以本文将先从计算机网络的网络模型开始
分别介绍各层模型
它分别是啥,
它包含了啥,
它能干啥.
计算机网络的整体结构其实很清晰
就是由几层 不同的协议层来组成一套 层层配合 完成网络传输的工作机制
搞明白了这个模型的层次结构
从整体上你也就搞懂了"网络"是怎么一回事
1
例子
进入正题
思考一下标题提出的那个问题
按下微信的发送按钮以后都发生了啥?
思考一分钟
下面用尽可能通俗的语言来说一下
(水平有限 可能会有理解不到位 欢迎后台交流指正 ) )=
1
第一步:微信发出去以后,数据在空气中以电磁波形式传播 这些数据都是0和1组成的比特序列
2
第二步:光有0和1的序列是无法解读出信息的 所以得有一种机制规定分组这些0和1序列的方式 有了分组以后才能解读出信息 否则拿到比特序列以后是无从下手的
3
第三步:有了数据有了对数据的分组 还得知道数据传给哪一步手机(网络设备) ,所以这一步是找到目的手机的地址 将数据包发送到指定手机
4
第四步:数据传到手机以后还不够 因为手机上有那么多APP 你怎么知道该传给哪一个APP? 所以这一步将数据包发送到指定手机上的指定APP 也就是微信
5
第五步: 在数据源源不断的发过来的过程中 手机需要对这个数据连接会话进行管理 比如收到一段数据以后就进行通知
6
第六步:在微信收到这些数据包中都是统一格式的 现在要把它解析成它原本的格式 比如原来是一个表情包 一段视频 一段文字等等 这一步就负责数据格式的转化 或者加密解密 加压解压
7
第七步:转换完成以后 在用微信特有一种"解析处理方式" (不同类型的APP可能有自己特有的解析处理方式) 呈现给用户
bingo!
你的微信发到了对方的手机上了!
2
OSI七层模型
上面整个过程代表的其实就是
计算机网络的七层模型
学名叫OSI七层网络模型
1
第一步: 物理层
负责把网络设备(电脑 手机等)
连接起来的物理手段
(双绞线 光钎 电磁波等) ,
传递0和1的电信号
2
第二步: 数据链路层
规定比特序列的分组方式和解读方式
将比特组合成字节进而组合成帧
同时要进行差错校验等功能
3
第三步: 网络层
建立设备到设备之间的通信
每个连接到网络的设备都会有
一个唯一的标识----IP地址
网络层用ip地址找到目的设备
常用协议有:ICMP IGMP IP ARP RARP 等等
4
第四步:传输层
建立程序到程序之间的通信
同时保证数据的可靠传输(数据不丢失)等等功能
常用协议有TCP UDP
5
第五步:会话层
建立、管理、终止会话。
常用协议有SMTP DNS
6
第六步:表示层
数据的格式转换、加密解密、加压解 压。
常用协议有 TELNET SNMP等
7
第七步:
应用层
针对特定应用的一个协处理层 网络服务与最终用户的一个接口。
协议有:HTTP FTP TFTP SMTP等
比如网页请求用Http 文件传输用FTP
邮件发送用POP3
上面说的微信这类即时通讯软件有它自己特有的应用传层协议
3
TCP/IP四层模型
osi七层模型分类繁琐细腻
将物理层和数据链路层综合成网络接口层 将 会话层 表示层 应用层综合成应用层
就有了TCP/IP四层网络模型
Tcp/IP四层模型已经成为了事实上业界应用的模型
4
五层模型
五层模型是综合七层和四层结合的模型
保留了物理层和数据链路层
将 会话层 表示层 应用层综合成应用层
5
对比
回复 "福利" 免费获取价值338元的算法课资料
回复 "进群" 进入 实习/秋招互助群 ,还有各种内部笔记资料分享
老铁! 点个关注吧!
现在关注 你就是老粉了!
原创不易 拒绝白嫖 点个在看
▼
往期精彩回顾
▼