网络OSI七层参考模型

OSI七层概念模型

历史背景: 20世纪70年代,当时计算机网络的发展还处于起步阶段,各个厂商和组织使用的网络协议存在着互不兼容的问题。为了解决这个问题,国际标准化组织(ISO)于1977年成立了一个工作组,负责制定一个通用的网络协议标准,即OSI七层模型。

在这里插入图片描述
OSI在实际中并不实用,只是作为参考,在网络出现问题时可以从一个宏观的整体的去解决问题。
在这里插入图片描述
如今互联网广泛使用的为TCP/IP协议,也就是四层网络模型(但是实际上划分为五层更为合理,将物理层单独分开)

OSI七层模型形成目的

7. 应用层 (Application Layer):

解决问题: 提供网络服务给最终用户。 目的: 提供网络服务,支持用户应用程序的网络需求。
举例: HTTP、FTP、SMTP等协议,负责支持用户应用,例如网页浏览、文件传输和电子邮件。

  • 再举个简单的例子:

华为电脑用浏览器访问苹果电脑搭建的网站,两个应用具体需要如何进行交互就是应用层的事情了,应用层并不是说你需要使用什么应用程序,而是应用如何沟通,常用的应用层协议HTTP协议

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/7798eaf0c6314a68838955e552baaccf.png

使得应用之间可以实现沟通,应用层就是最接近用户的那一层, 但是应用层只不过是逻辑上把两个两个应用连通, 实际物理上的连通是需要物理层的

1. 物理层 (Physical Layer):

解决问题: 传输比特流(0和1)。 目的:确定数据如何在物理介质上传输,例如电缆、光纤、无线电波等。
举例:确定电压水平、电缆的连接方式、传输介质的频谱利用等

在这里插入图片描述
在这里插入图片描述

我们要发送出去的数据在计算机里只不过是无数的0和1(也就是比特(bit)),物理层就要把这些比特用不同的媒介传输出去

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

用电,光或者其他形式的电磁波来表示和传输信号数据从网络接口出去以后会经过不同的网络拓扑,并不是一条线走到底因此需要中继器和集线器这样的设备,但还是不够信号要去到哪台设备是需要定向的,所以需要更高级的网络模型,数据链路层油然而生

2. 数据链路层 (Data Link Layer):

解决问题: 直接点对点的数据传输,通过物理层提供的服务。
目的: 提供可靠的数据传输,检测和纠正传输错误。
举例:Ethernet协议负责帧的组装和解析,MAC地址的管理,错误检测和纠正。

在数据链路层这里,比特会被封装成帧,帧就是这一层表示数据的特殊名字而已 ,在封装的时候会加上MAC地址,也就是传说中的物理地址,网卡出厂的时候就有着全球唯一的MAC地址
在这里插入图片描述
在这里插入图片描述
为了可以通过MAC地址对不同设备进行数据的传输,就出现了交换机(这里说的是二层交换机)
在这里插入图片描述

在这里插入图片描述
比方说这里有一台交换机,连接多台主机,发送端发送数据的时候,交换机就知道了发送端的MAC地址,如果此时交换机也知道接收端的MAC地址,就可以把数据直接发送过去了,物理地址就是这样一跳一跳地进行传递

另外因为物理层在传输0和1的时候,可能会0变成1,或者1变成0,会进行差错检测,以及一定的差错纠正,另外设备之间的传输能力以及接受能力也是个问题,很可能这边“喷水”式传输,另一边“夹缝式”接受,因此需要流控制来避免这种不对称,我们知道互联网是一张大网,如果用MAC物理地址来作为唯一的寻址方法是不科学的,所以出现了网络层

3. 网络层 (Network Layer):

解决问题: 将数据从源主机传输到目标主机,跨越不同的网络。
目的: 确定最佳路径,进行逻辑寻址,并处理数据包的路由。
举例:IP协议是网络层的代表,负责在不同网络之间进行数据包的路由。

比如我和你买了同一个厂的网卡,我和你你的网卡差别只有一个字母,但是我和你距离十万八千里
在这里插入图片描述
物理地址此时就很难做出快速定位,相当于我有你的名字,但不知道你住哪里,找不到你

因此需要IP地址来进行寻址和路由选择

在这里插入图片描述
IP这样的逻辑地址就是实现端到端的基础了,而不是物理地址那样的跳到跳传输,说到路由选择,也就是说路由器也是网络层的核心,包就是网络层里数据的名字,在封装为二层的帧之前就是包,路由器根据包里IP地址进行路由转发
在这里插入图片描述
在这里插入图片描述
地址管理和路由选择就是这一层的核心,虽然有MAC和IP地址可以抵达对方主机,但是对方主机可能运行着无数多个软件进程,就需要传输层来解决

4. 传输层 (Transport Layer):

解决问题: 提供端到端的通信,确保数据的可靠传输。
目的: 处理数据流控制、差错恢复和数据重组。
举例:TCP协议提供可靠的、面向连接的通信,而UDP协议提供无连接的、不可靠但是更高效的通信。

在这里插入图片描述
假设我用谷歌和火狐浏览器同时登录网站,如何让数据去到指定的软件服务上,就需要用到端口号作为地址来定位了,比如客户端这里生成不同的端口号
在这里插入图片描述
即时同时访问HTTP端口80也是没问题的,根据不同的源端口号来作出响应就可以了,所以传输层(运输层)在网络层的端到端基础上,实现了服务进程到服务进程的传输,段就是传输层里数据的名字
在这里插入图片描述

传输层管理两个节点之间数据的传输,负责可靠传输和不可靠传输

在这里插入图片描述

TCP

其中TCP允许应用把字节流变成多份段,而不是整个字节数据完整地发送出去

在这里插入图片描述
传输层还有流量控制来确保传输速度,再加上错误控制来进行数据完整的接收

5. 会话层 (Session Layer):

解决问题: 管理不同应用程序之间的会话。
目的: 提供对话控制,确保数据的同步和顺序传输。
举例:在不同计算机之间建立、管理和终止会话的过程。

在这里插入图片描述

  • 比方说你现在登录了某个网站,网站服务可以保持你的登录状态,不用每次都输入账号和密码,当然网站服务会管理和控制登录状态,另外会话层还负责同步服务。

  • 比方说你上次看到电影高潮的时刻突然停电了,再次登录账号的时候就可以自动同步到上次看到的时间段,不同计算机内部的各自表达方式可能不太相同

不同计算机内部的各自表达方式可能不太相同,表示层就来负责这样的转换

6. 表示层 (Presentation Layer):

解决问题: 数据格式转换、数据加密和解密等。
目的: 确保不同系统的数据格式能够正确解释。
举例:数据的编码、加密和压缩,确保在网络上传输的数据在不同系统中能够正确解释。

表示层也就是编码和解码,数据往往还需要进行加密
比方说HTTPS( SSL/ TLS)就会对我们的数据进行加密和解密,另外我们可能还需要给文件瘦身,压缩也是这一层负责的
在这里插入图片描述

总结

应用层,表示层和会话层的数据统称为应用数据或者应用负载也可以叫上层数据同时也是教科书上说的报文

数据在各层的名字分别是
在这里插入图片描述

  • 就地址来说有端口号,IP逻辑地址和MAC物理地址

  • 就传输功能来讲有服务进程到服务进程,端到端,跳到跳
    在这里插入图片描述

关联

客户端要发送数据,也就是报文,报文来到传输层加上端口号,封装成段,段来到了网络层,加上IP地址,封装成包(注意这里的包是含有目标IP地址的),毕竟你要知道数据要发送到什么地方

了解了各层的作用现在就可以把全部关联起来

但因为目标IP地址不是同一个网络下的,要发送到其他的网络就需要经过默认网关,现在就出现了一个问题,客户端主机最初并不知道默认网关的MAC地址,没有办法封装成帧,这个时候就可以用ARP协议进行广播,找到网关IP对应的MAC地址把包封装成帧(源MAC地址填自己的,目标MAC地址填广播地址
在这里插入图片描述
假设当前网络有个二层交换机,这个交换机只需要记录下不同的接口对应的MAC地址就好了,交换机收到广播后就帮忙发送出去“人手一份”,所以默认网关收到消息后查看了帧,发现了发送端的MAC地址,再解封发现包里面的IP地址,就会把客户端MAC地址和IP地址关联为一台主机,同时默认网关会把自己的IP地址放入包里,再结合自己的MAC地址封装成帧,默认网关就这样做出响应,这样原路返回,发送端就知道默认网关的MAC地址了,现在就可以封装成帧,并且发送数据

在这里插入图片描述

比特流到了默认网关的时候,解封为帧发现是送给自己的,那解封为包查看到目标IP地址是在另一网络中的,就会进行路由转发,最终到达了目的网络,如果目标的网关知道目标IP地址和MAC地址是哪台主机,封装成帧就可以直接发送过去了

在这里插入图片描述

如果不知道也还是可以用ARP喊下街就好,目标主机收到包确认是自己的IP地址以后,解封查看段可以发现源和目标端口号,用目标端口号给到指定的应用程序,应用程序处理好以后,就可以按照源的信息做出响应,回去的原理也是一样的

**说明:**本文是作为哔哩哔哩up主(技术蛋老师)讲解OSI七层网络参考模型的笔记

  • 7
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: OSI参考模型(Open Systems Interconnection Reference Model)是一种七层网络模型,用于描述在计算机网络中如何进行通信。它规定了计算机网络中数据传输的过程,并规定了各层的功能OSI参考模型分为七层: 1. 物理层(Physical Layer):规定了网络中如何传输数据的物理方式,包括电缆、无线信号等。 2. 数据链路层(Data Link Layer):规定了如何在两台计算机之间传输数据,包括帧的格式和传输方式。 3. 网络层(Network Layer):规定了如何在不同的网络之间传输数据,包括路由和分组。 4. 传输层(Transport Layer):规定了如何在两台计算机之间传输数据,包括端口号和流量控制。 5. 会话层(Session Layer):规定了如何在两台计算机之间建立会话,包括连接建立和断开。 6. 表示层(Presentation Layer):规定了如何将数据表示成适合传输的格式,包括加密和压缩。 7. 应用层(Application Layer):规定了如何在计算机之间进行应用程序通信 ### 回答2: OSI七层参考模型是一种用来描述计算机网络功能分布和协议分层的理论框架。该模型由国际标准化组织(ISO)在20世纪80年代初开发并发布。 该模型将计算机网络通信过程分为七个层次,每个层次负责特定的功能和协议,通过层次之间的接口实现不同层次之间的通信。这些层次从下到上分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 物理层负责传输比特流,提供物理连接的传输介质及信号传输。数据链路层将物理层提供的比特流划分为帧,并进行误码检测与纠正,提供可靠的数据传输。网络层负责选择最佳路径将数据包送达目标主机,进行路由和逻辑编址。传输层提供端到端的数据传输,负责数据分段、流量控制和差错恢复。会话层允许不同主机上的应用程序建立、管理和终止会话。表示层负责数据格式转换、加密和解密。应用层为最终用户提供应用服务,例如电子邮件、文件传输、网站浏览等。 使用OSI七层参考模型有助于不同厂商的设备和协议之间的互操作性,使得不同层次的功能可以独立开发和更新。该模型也能够帮助网络工程师和管理员分析和解决网络问题,提供了一种共同的语言和框架。尽管现实世界中的网络往往采用的是TCP/IP协议栈,而不是纯粹的OSI模型,但OSI七层参考模型仍然被广泛使用和参考。 ### 回答3: OSI(开放系统互联)七层参考模型是一种用于网络通信的标准体系结构。该模型将通信协议的功能划分为七个层次,每个层次负责执行特定的任务,从而实现网络中不同设备之间的数据传输和通信。 以下是七个层次的简要介绍: 1. 物理层:负责网络物理介质的传输,包括传输媒介、数据连接和电压等。 2. 数据链路层:处理数据包和帧的传输,通过物理连接的可靠通信链路传输数据。 3. 网络层:通过路由选择和路径规划实现不同网络之间的通信,负责地址寻址和数据分组处理。 4. 传输层:提供端到端的数据传输,分为面向连接的可靠传输和无连接的不可靠传输。 5. 会话层:建立和管理通信会话,负责会话控制和数据交换。 6. 表示层:处理数据的格式和代码转换,确保不同设备间的数据互通。 7. 应用层:提供用户与网络之间的接口,支持各种应用程序的通信和交互。 通过这种分层的设计,OSI模型能够使网络通信的各个方面分工明确,并且可以实现不同厂商的设备在同一网络中协同工作。每个层次之间通过接口进行通信,这种模块化的设计使得网络协议的开发、维护和升级更加灵活和可靠。此外,OSI模型也为网络故障诊断和问题定位提供了参考标准,能够帮助网络管理员更方便地解决网络通信问题。 总而言之,OSI七层参考模型是一种规范和指导,用于标准化网络通信协议的设计和实施。它能够促进不同厂商和设备在网络中的互操作性,提供有效的通信方式,并支持网络的管理与维护。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值