OSI参考模型

OSI参考模型中各个分层的主要作用
OSI参考模型

OSI参考模型中定义了每一层的“作用”;定义每一层“作用”的是“协议”;“协议”是约定,其具体内容为“规范”;我们日常所使用的就是遵循各个协议具体“规范”的产品和通信手段。

  • 应用层:为应用程序提供服务并规定应用程序中通信相关的细节。包括文件传输、电子邮件、远程登录(虚拟终端)等协议。
  • 表示层:将应用处理的信息转换为适合网络传输的格式,或将来自下一层的数据转换为上层能够处理的格式。因此它主要负责数据格式的转换。
    具体来说,就是将设备固有的数据格式转换为网络标准传输格式。不同设备对同一比特流解释的结果可能会不同。因此,使它们保持一致是这一层的主要作用。
  • 会话层:负责建立和断开通信连接(数据流动的逻辑通路),以及数据的分割等数据传输相关的管理。
  • 传输层:起着可靠传输的作用。只在通信双方节点上进行处理,而无需在路由器上处理。
  • 网络层:将数据传输到目的地址。目的地址可以是多个网络通过路由器连接而成的某个地址。因此这一层主要负责寻址和路由选择。
  • 数据链路层:负责物理层面上互连的、节点之间的通信传输。例如与1个以太网相连的2个节点之间的通信。将0、1序列划分为具有意义的数据帧传输送给对端(数据帧的生成与接收)。
  • 物理层:负责0、1比特流(0、1序列)与电压的高低、光闪灭之间的互换。

OSI模型中是如何进行模块化通信传输的

发送方从第7层、第6层到第1层由上至下按照顺序传输数据,而接收端则从第1层、第2层到第7层由下至上向每个上一级分层传输数据。每个分层上,在处理由上一层传过来的数据时可以附上当前分层的协议所必须的“首部”信息。然后接收端对收到的数据进行“首部”与“内容”的分离,再转发给上一分层,并最终将发送端的数据恢复为原状。即发送方的每一次向下都会包裹一层首部,接收方按照层次逐层解析最终获得想要的信息。


通信与7个分层

下面我们以发送电子邮件为例简单的介绍下各层是如何工作的吧
首先,我们看下我们的需求:用户A发送内容为“早上好”的电子邮件给用户B
分析需求,不是发邮件的每个操作都是和通信有关的,比如用户输入“早上好”的这部分功能是和通信无关的,而是输入完成后点击“发送”按钮那一刻之后才是与通信相关的功能。


各个分层的实现
  • 应用层:“输入电子邮件内容后发送给目标地址”就相当于应用层,点击“发送”按钮的那一刻,就进入了应用层协议的处理。该协议会在所要传达数据的前端附加一个“首部”(标签)信息,首部标明了邮件主题为“早上好”和收件人为“B”,如图所示:


    典型的邮件首部报文

    这一段附有首部信息的数据传送给主机B以后由该主机上的收发邮件软件通过“收信”功能获取内容,分析其数据首部与数据正文并进行存储,若主机B的收件人的邮箱控件已满无法接收新的邮件要返回错误给发送发,这个也属于应用层要处理的范畴。

  • 表示层:关注的是数据的具体表现形式,比如说用户A和用户B所使用的应用软件本身的不同也会导致数据的表现形式不同,那么让A和B能够顺利的收取和阅读邮件除非他们所使用的客户端软件完全一致,这在现实生活中是极不可能的一件事情。
    表示层的作用就是,将发送端的数据从“某个计算机特定的数据格式”转换为“网络通用的标准数据格式”后发送出去,接收端接受到数据之后将这些网络通用的标准格式的数据恢复为“该计算机特定的数据格式”。
    此例中的“早上好”这段文字被转换成了“统一的网络数据格式”,这是虽然是一段简单的文字流,但是也有着众多复杂的编码格式,如果未能使用特定格式编码,那么在接收端接收到的邮件也有可能使乱码。
    表示层与表示层之间为了识别编码格式也会附加首部信息,从而将实际传输的数据转交给下一层去处理。
  • 会话层:通信管理
    负责建立和断开连接,确定采用哪种方式连接是会话层的主要责任;比如用户A要发5封邮件给用户B,这5封邮件怎么发可以有很多种:(1)每发送一封邮件建立一次连接,随后断开连接。(2)建立好连接后将5封邮件连续发送给对方(3)同时建立好5个连接,将5封邮件同时发送给对方
    数据的分割等数据传输相关的管理;比如将邮件的内容进行传输,我们不能将所有报文直接进行传输,需要将报文切割成一个一个的数据包进行传输,会话层会将报文进行切割,并在每个包的前端添加首部或标签,这些首部标签中记录着数据传输的数据,接收端在收到数据后,会话层会将这些这些数据重新进行排列。
  • 传输层:进行建立连接或断开连接的处理,在两个主机之间创建逻辑上的通信连接。保证数据可靠性是这一层的主要作用。
    注意:会话层负责决定建立连接和断开连接的实际,而传输层进行实际的建立和断开处理。
  • 网络层:作用使将数据传输到目的地址。目的地址很重要,只要目的地址确定,就可以在众多计算机中选出该目标地址锁对应的计算机进行数据的发送,基于这个地址,就可以在网络层进行数据包的发送处理。
  • 数据链路层、物理层:通信传输实际上是通过物理的传输介质实现的。
    数据链路层的作用是在这些通过传输介质互连的设备之间进行数据的处理,包括控制操作系统、硬件的设备驱动等。
    物理层的作用,将数据的0、1转换为电压和脉冲光传输给物理的传输介质,而相互直连的设备之间使用地址实现传输。这种地址被称为MAC(Media Access Control 介质访问控制)地址,也可称为物理地址或硬件地址。
    网络层与数据链路层都是基于目标地址将数据发送给接收端的,但是网络层负责将整个数据发送给最终目的地址,而数据链路层则只负责发送一个分段内的数据。
    其实严格来讲OSI模型与电子邮件的实际运行机制并非如例子中那么简单,上述例子只是便于理解OSI模型。

你可能感兴趣的:(OSI参考模型)