THM-网络基础-OSI七层模型
什么是OSI模型
OSI模型(或 Open Systems Interconnection Model开放系统互连模型)是网络中使用的绝对基础模型。这个关键模型提供了一个框架,规定所有联网设备将如何发送、接收和解释数据。
OSI 模型的主要优点之一是设备在与其他设备通信时可以在网络上具有不同的功能和设计。其他设备可以理解通过遵循 OSI 模型一致性的网络发送的数据。
OSI 模型由七层组成,如下图所示。每一层都有一组不同的职责,从第 7 层到第 1 层排列。
在数据经过的每一层,都会发生特定的过程,并将信息片段添加到这些数据中,这就是我们将在这个房间内即将进行的任务中讨论的内容。然而,现在,我们只需要了解这个过程称为封装以及 OSI 模型如下图所示:
7.应用层
OSI 模型的应用层是您最熟悉的层。这种熟悉是因为应用层是在其中制定协议和规则以确定用户应如何与发送或接收的数据进行交互的层。
电子邮件客户端、浏览器或文件服务器浏览软件(如 FileZilla)等日常应用程序提供友好的图形用户界面( GUI ) ,供用户与发送或接收的数据进行交互。其他协议包括DNS(域名系统),这是将网站地址转换为 IP 地址的方式。
6.表示层
OSI 模型的第 6 层是开始进行标准化的层。因为软件开发人员可以以不同的方式开发任何软件,例如电子邮件客户端,所以数据仍然需要以相同的方式处理——无论软件如何工作。
该层充当应用程序层(第 7 层)之间的数据转换器。接收计算机还将理解以一种格式发送到计算机的数据以另一种格式发送。例如,当您发送电子邮件时,其他用户可能有另一个电子邮件客户端给您,但是电子邮件的内容仍然需要显示相同。
数据加密(如访问安全站点时的 HTTPS)等安全功能发生在这一层。
5.会话层
一旦从表示层(第 6 层)正确转换或格式化数据,会话层(第 5 层)将开始创建与数据目的地的另一台计算机的连接。建立连接后,将创建一个会话。当此连接处于活动状态时,会话也是如此。
会话层(第 5 层)使两台计算机同步,以确保它们在发送和接收数据之前处于同一页面上。一旦这些检查到位,会话层将开始将发送的数据分成更小的数据块,并开始一次一个地发送这些数据块(数据包)。这种划分是有益的,因为如果连接丢失,则只有尚未发送的块需要再次发送——而不是整个数据(可以将其视为在视频游戏中加载保存文件)。
值得注意的是,会话是唯一的——这意味着数据不能在不同的会话中传输,但实际上,只能在每个会话中传输。
4.传输层
OSI 模型的第 4 层在通过网络传输数据方面起着至关重要的作用,可能有点难以掌握。在设备之间发送数据时,它遵循两种不同协议中的一种,这两种协议是根据几个因素决定的:
- TCP协议
- UDP协议
TCP
让我们从TCP开始。Transmission Control Protocol 传输控制协议( TCP )。该协议在设计时考虑了可靠性和保证。该协议在发送和接收数据所需的时间内保留两个设备之间的恒定连接。
不仅如此,TCP还在其设计中加入了错误检查。错误检查是 TCP 如何保证从会话层(第 5 层)中的小块发送的数据已被接收并以相同的顺序重新组合。
TCP优缺点:
TCP优点 | TCP的缺点 |
---|---|
保证数据的准确性 | 需要保证两个设备的可靠连接,如果没有收到一小块数据,则无法使用整个数据块 |
能够同步两个设备防止彼此被数据淹没 | 慢速连接可能会阻碍另一台设备,因为连接将一直保留在接受计算机上 |
为可靠性执行更多的过程 | TCP比UDP慢的多,使用此协议的设备必须完成更多的工作 |
TCP用于文件共享、互联网浏览或发送电子邮件等情况。这种用法是因为这些服务要求数据准确和完整(如果没有数据完整性,发送电子邮件就会更大可能出现邮件丢失的情况)。
在下图中,我们可以看到一张狗的图片是如何从“网络服务器”分解成小块数据(称为数据包)的,“计算机”在此处将狗的图片重新构造为正确的顺序.
UDP
现在让我们转到U ser D atagram P rotocol(或 简称U D P )。该协议远不如它的兄弟——TCP协议先进。它没有 TCP 提供的许多功能,例如错误检查和可靠性。事实上,任何通过 UDP 发送的数据都会被发送到计算机,无论它是否到达那里。两个设备之间没有同步或保证;只希望它的传输是好的,能够抵达目标主机,祈祷吧。
虽然这听起来很不利,但它确实有其优点,我们将在下表中列出:
UDP的优点 | UDP的缺点 |
---|---|
UDP比TCP快的多 | UDP不关心是否收到数据 |
UDP让应用层(用户软件)决定是否可以控制数据包的发送速度 | 从这个意义上说,它对软件开发人员来说是相当灵活的 |
UDP不像 TCP 那样在设备上保留持续连接 | 这意味着不稳定的连接会给用户带来糟糕的体验 |
使用与之前相同的示例,我们现在可以看到“计算机”仅接收到数据包 #1 和 #3,这意味着图像丢失了一半(当然这只是一个例子,网络稳定不会出现)。
UDP在发送少量数据的情况下很有用。例如,用于发现设备的协议(ARP 和 DHCP)或视频流等更大的文件。
3.网络层
OSI模型的第三层(网络层)是数据路由和重组的神奇之处(从这些小块到大块)。首先,路由只是确定这些数据块应该发送的最佳路径。
虽然这一层的一些协议确切地确定了数据到达设备应该采用的“最佳”路径,但我们应该只知道它们存在于网络模块的这个阶段。简而言之,这些协议包括OSPF(O pen S hortest Path First )和RIP(R outing Information Protocol )。决定采用何种路线的因素由以下因素决定:
- 什么路径最短?即数据包需要经过的设备数量最少。
- 什么路径最靠谱?我以前在该路径上丢失过数据包吗?
- 哪条路径的物理连接速度更快?即是使用铜连接(较慢)还是光纤(相当快)的路径?
在这一层,一切都通过 IP 地址处理,例如 192.168.1.100。能够使用 IP 地址传送数据包的设备(例如路由器)被称为第 3 层设备,因为它们能够在 OSI 模型的第三层工作。
2.数据链路层
数据链路层侧重于传输的物理寻址,它从网络层接收数据包(数据包含有IP地址),使用IP地址广播得到接收端的物理MAC地址。每台启用网络的计算机内部都有一个Network Interface Card网络接口卡( NIC ),它带有一个唯一的MAC地址来识别它。
MAC地址由制造商设置并直接烧入卡中;它们无法更改——尽管它们可以被欺骗。当通过网络发送信息时,实际上是物理地址用于确定将信息发送到哪里。
此外,以适合传输的格式呈现数据也是数据链路层的工作。
1.物理层
这一层是最容易掌握的层之一。简而言之,这一层指的是网络中使用的硬件传输线,是您能找到的最低层。设备使用电信号在二进制编号系统(1 和 0)中相互传输数据。
例如,以太网电缆连接设备,如下图所示:
OSI七层闯关