网络七层模型也称为OSI模型,是一种网络通信协议体系结构,用于在计算机网络中实现通信。
1.物理层
该模型将网络通信分为七个不同的层次,如下图所示:
我们从最容易理解的一层开始,物理层:负责传输数字信号,包括电气、光学和无线信号等。
比如:我们玩电脑游戏都要上网对吧,那和我们物理层有关的几样东西。
网线,电脑网卡
如下图所示:
这两个主要的就在外面物理层上工作的,它的主要作用是传输比特流:就是由1、0转化为电流强弱来进行传输,到达目的地后再转化为1、0。
也就是我们常说的数模转换,与模数转换,这一层的数据叫做比特。
2.数据链路层
数据链路层通常也叫做链路层,在物理层和网络层之间,两台主机之间的数据传输,总是在一段一段的链路上传送的,这就需要使用专门的链路层协议。
数据链路层:负责将数据分成帧,并添加控制信息以便在物理介质上传输。
如下图所示:
每一帧的数据可以分成:报头head和数据data两部分:
- head 标明数据发送者、接受者、数据类型,如 :MAC地址;
- data 存储了计算机之间交互的数据;
3.网络层
网络层在数据链路层之上增加了路由的概念,每当数据抵达网络层时,就会检查每个帧中包含的源地址和目标地址,以确定数据是否已到达其最终目的地。
网络层负责:路由选择和逻辑寻址,以确保数据能够从源节点传输到目标节点。
4.传输层
传输层负责:数据的传输控制,包括可靠性控制和流量控制等。
传输层通过网络连接传输数据,比如:典型的TCP (传输控制协议)和 UDP (用户数据报协议),就是传输层比较常见且有代表性的协议。
传输层的服务一般要经历传输连接建立阶段,数据传送阶段,传输连接释放阶段三个阶段,才算一个完整的服务过程。
5.会话层
负责建立、管理和结束会话,以便在应用程序之间提供对话控制。
比如打开网页百度搜索,点开一个百度搜索页就是新建了一个会话
6.表示层
表示层负责:数据格式和编码,以确保数据在不同系统之间的交换。
例如:你要一张图片,我们的图片在网络中最后都会被转化为1和0的数据,那我们的接收方怎么知道收到的是一张图片呢?
这就是我们表示层的工作,他在发送的时候告诉对方数据数一张图片,那对方知道收的一大堆0和1 是图片,那把0和1转化的时候就以图片的方式去转换数据这样就不会出错。
7.应用层
应用层是最靠近用户的层,这一层为用户的应用程序,例如:电子邮件、文件传输、终端仿真、远程登录等。
就像你电脑里面的微信QQ这些软件:
并不是所有程序都属于应用层范畴,比如打开PPT,没有产生流量,这个就不属于应用层,比如打开QQ登录了,产生流量,这个就属于应用层。
以上就是网络七层模型的详解,希望对你掌握计算机网络有所帮助!
陈睿mikechen
10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。
关注「mikechen」公众号,获取更多技术干货!
后台回复【面试】即可获取《史上最全阿里Java面试题总结》,后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》