OSI 七层模型详解

105 阅读6分钟

大家好,我是蛋蛋。

3T+技术学习视频资源,500+技术电子书,大量高效工具及网站,关注程序员蛋蛋即可免费获取

​ OSI(Open System Interconnect),即开放式系统互联。 一般都叫OSI参考模型,是 ISO(国际标准化组织)组织在1985年研究的网络互连模型。

​ ISO为了更好的使网络应用更为普及,推出了OSI参考模型。其含义就是推荐所有公司使用这个规范来控制网络。这样所有公司都有相同的规范,就能互联了。

OSI 七层参考模型将通信协议中必要的功能分成了 7 层。通过这些分层,可以将比较复杂的网络协议更加简单化。

将每个分层独立使用,即使系统中某些分层发生变化,也不会波及整个系统。

s

上图完整展示了整个七层模型的具体细节,七层通信作为发送方,会从第 7 层开始,一直往下,第6层到第 1层,按照顺序传输数据,接收端则会从第 1 层、第 2 层到第 7 层由下至上向每个上一级分层传输数据。

应用层

应用层是最靠近用户的一层,为计算机用户提供应用接口,也为用户直接提供各种网络服务,这一层常见的网络协议有:HTTP 、HTTPS、FTP、SMTP 等。

例如用户 A 在主机 A 上新建一封电子邮件,指定收件人为 B,输入邮件内容 :”开开心心“。

当用户输入完后点击发送的那一刻开始,就进入了应用层协议的处理。

该层协议会在所要发送的数据前端附加一个首部信息。首部消息表明了要发送的内容和要发送到的地方。

表示层

表示层更关注数据的具体表现形式。提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。

如果用户 A 是通过 QQ 邮箱发送的,而用户 B 是通过 网易邮箱接收的,那么因为两者邮件客户端不一致,为了能够顺利收取和阅读邮件,会将数据格式转换为 网络通用的标准数据格式发送出去,接收端收到数据后再将这些通用标准数据转换为自己特定的数据格式再进行相应处理。

表示层与表示层之间为了识别编码格式也会附加首部信息,从而将实际传输的数据转交给下一层去处理。

会话层

​ 会话层就是负责建立、管理和终止表示层实体之间的通信会话。该层的通信由不同设备中的应用程序之间的服务请求和响应组成。

假设用户 A 新建了 5 封邮件准备发给用户 B。例如,可以每发一封邮件时建立一次连接,随后断开连接。还可以已经一经建立好连接就将 5 封邮件连续发送给对方。决定采用何种连接方法是会话层的主要责任。

会话层也会像应用层或表示层那样,在收到的数据前端附加首部或标签信息再转给下一层。

传输层

主机 A 确保与主机 B 之间的通信并准备发送数据。这个过程叫 建立连接。有了这个连接主机 A发送的邮件就可以到主机 B。此外,当通信传输结束后,有必要将连接断开。

如上,进行建立连接或断开连接的处理,在两个主机之间创建逻辑上的通信连接是传输层的主要作用。如果数据没有到达,它还会负责重发,保证数据传输的可靠性。

该层向高层屏蔽了下层数据通信的细节,使高层用户看到的只是在两个传输实体间的一条主机到主机的、可由用户控制和设定的、可靠的数据通路。我们通常说的,TCP UDP就是在这一层。

网络层

网络层的作用是在网络与网络相互连接的环境中,将数据从发送端主机发送到接收端主机。这一层主要用到的协议就是 IP 协议。

IP 协议使数据能够发送到地球的另一端,这期间它使用 IP 地址作为主机的标识。还有一个 ICMP 也需要关注下,IP 数据包如果在发送途中出现异常无法到达对端目标地址时,需要给发送端一个发送异常通知,ICMP 就是为这一功能而制定的。

网络层就相当于快递公司庞大的快递网络,全国不同的集散中心,比如说,从上海发往北京的顺丰快递,首先要到顺丰的上海集散中心,从上海集散中心再送到河北保定集散中心,从保定集散中心再寄到北京顺义集散中心。这个每个集散中心,就相当于网络中的一个IP节点。

数据链路层

将比特组合成字节,再将字节组合成帧,使用链路层地址 (以太网使用MAC地址)来访问介质,并进行差错检测。

在计算机网络中由于各种干扰的存在,物理链路是不可靠的。因此,这一层的主要功能是在物理层提供的比特流的基础上,通过差错控制、流量控制方法,使有差错的物理线路变为无差错的数据链路,即提供可靠的通过物理介质传输数据的方法。
该层通常又被分为介质访问控制(MAC)和逻辑链路控制(LLC)两个子层。

MAC子层的主要任务是解决共享型网络中多用户对信道竞争的问题,完成网络介质的访问控制;

LLC子层的主要任务是建立和维护网络连接,执行差错校验、流量控制和链路控制。
数据链路层的具体工作是接收来自物理层的位流形式的数据,并封装成帧,传送到上一层;同样,也将来自上层的数据帧,拆装为位流形式的数据转发到物理层;并且,还负责处理接收端发回的确认帧的信息,以便提供可靠的数据传输。

物理层

实际最终信号的传输是通过物理层实现的。主要功能就是利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。

通过物理介质传输比特流。常用设备有(各种物理设备)集线器、中继器、调制解调器、网线、双绞线、同轴电缆。这些都是物理层的传输介质。