OSI(Open System Interconnect),即开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互联模型。该体系结构标准定义了网络互连的七层框架(物理层、数据链路层、网络层、传输层、会话层、表示层和应用层),即ISO开放系统互连参考模型。在这一框架下进一步详细规定了每一层的功能,以实现开放系统环境中的互连性、互操作性和应用的可移植性。[1]
中文名
OSI参考模型
外文名
Open System Interconnect
解 释
开放式系统互联
设定组织
设定时间
1985年
目 的
开放系统环境中的互连性等
目录
- 9 ISO 7498概念
- 10 影响
简介
编辑
开放系统OSI标准定制过程中所采用的方法是将整个庞大而复杂的问题划分为若干个容易处理的小问题,这就是分层的体系结构方法。在OSI中,采用了三级抽象,即体系结构、服务定义和协议规定说明。
OSI参考模型定义了开放系统的层次结构、层次之间的相互关系及各层所包含的可能的服务。它是作为一个框架来协调和组织各层协议的制定,也是对网络内部结构最精练的概括与描述进行整体修改。
OSI的服务定义详细说明了各层所提供的服务。某一层的服务就是该层及其下各层的一种能力,它通过接口提供给更高一层。各层所提供的服务与这些服务是怎么实现的无关。同时,各种服务定义还定义了层与层之间的接口和各层的所使用的原语,但是不涉及接口是怎么实现的。
OSI标准中的各种协议精确定义了应当发送什么样的控制信息,以及应当用什么样的过程来解释这个控制信息。协议的规程说明具有最严格的约束。
ISO/OSI参考模型并没有提供一个可以实现的方法。ISO/OSI参 考模型只是描述了一些概念,用来协调进程间通信标准的制定。在OSI范围内,只有在各种的协议是可以被实现的而各种产品只有和OSI的协议相一致才能互 连。这也就是说,OSI参考模型并不是一个标准,而只是一个在制定标准时所使用的概念性的框架。
在历史来看,在制定计算机网络标准方面起着很大作用的两大国际组织是CCITT和ISO。CCITT与ISO TC97的工作领域是不同的,CCITT主要是从通信角度考虑一些标准的制定,而ISO的TC97则关心信息的处理与网络体系结构。但是随着科学技术的发展,通信与信息处理的界限变得比较模糊了。于是,通信与信息处理就都成为了CCITT与TC97共同关心的领域。CCITT的建议书X.200就是开放系统互连的基本参考模型,它和ISO 7498基本是相同的。
最早的时候网络刚刚出现的时候,很多大型的公司都拥有了网络技术,公司内部计算机可以相互连接。可是却不能与其它公司连接。因为没有一个统一的规范。计算机之间相互传输的信息对方不能理解。所以不能互联。
划分原则
编辑
ISO为了更好的使网络应用更为普及,就推出了OSI参考模型。其含义就是推荐所有公司使用这个规范来控制网络。这样所有公司都有相同的规范,就能互联了。提供各种网络服务功能的计算机网络系统是非常复杂的。根据分而治之的原则,ISO将整个通信功能划分为七个层次,划分原则是:
(1)网路中各节点都有相同的层次;
(2)不同节点的同等层具有相同的功能;
(3)同一节点内相邻层之间通过接口通信;
(4)每一层使用下层提供的服务,并向其上层提供服务;
(5)不同节点的同等层按照协议实现对等层之间的通信。
(6)根据功能需要进行分层,每层应当实现定义明确的功能。
(7)向应用程序提供服务
分层
编辑
分层的好处是利用层次结构可以把开放系统的信息交换问题分解到一系列容易控制的软硬件模块-层中,而各层可以根据需要独立进行修改或扩充功能,同时,有利于个不同制造厂家的设备互连,也有利于大家学习、理解数据通讯网络。
OSI参考模型中不同层完成不同的功能,各层相互配合通过标准的接口进行通信。
第7层应用层:OSI中的最高层。为特定类型的网络应用提供了访问OSI环境的手段。应用层确定进程之间通信的性质,以满足用户的需要。应用层不仅要提供应用进程所需要的信息交换和远程操作,而且还要作为应用进程的用户代理,来完成一些为进行信息交换所必需的功能。它包括:文件传送访问和管理FTAM、虚拟终端VT、事务处理TP、远程数据库访问RDA、制造报文规范MMS、目录服务DS等协议;应用层能与应用程序界面沟通,以达到展示给用户的目的。 在此常见的协议有:HTTP,HTTPS,FTP,TELNET,SSH,SMTP,POP3等。
第6层表示层:主要用于处理两个通信系统中交换信息的表示方式。为上层用户解决用户信息的语法问题。它包括数据格式交换、数据加密与解密、数据压缩与终端类型的转换。
第5层会话层:在两个节点之间建立端连接。为端系统的应用程序之间提供了对话控制机制。此服务包括建立连接是以全双工还是以半双工的方式进行设置,尽管可以在层4中处理双工方式 ;会话层管理登入和注销过程。它具体管理两个用户和进程之间的对话。如果在某一时刻只允许一个用户执行一项特定的操作,会话层协议就会管理这些操作,如阻止两个用户同时更新数据库中的同一组数据。
第4层传输层:—常规数据递送-面向连接或无连接。为会话层用户提供一个端到端的可靠、透明和优化的数据传输服务机制。包括全双工或半双工、流控制和错误恢复服务;传输层把消息分成若干个分组,并在接收端对它们进行重组。不同的分组可以通过不同的连接传送到主机。这样既能获得较高的带宽,又不影响会话层。在建立连接时传输层可以请求服务质量,该服务质量指定可接受的误码率、延迟量、安全性等参数,还可以实现基于端到端的流量控制功能。
第3层网络层:本层通过寻址来建立两个节点之间的连接,为源端的运输层送来的分组,选择合适的路由和交换节点,正确无误地按照地址传送给目的端的运输层。它包括通过互连网络来路由和中继数据 ;除了选择路由之外,网络层还负责建立和维护连接,控制网络上的拥塞以及在必要的时候生成计费信息。
第2层数据链路层:在此层将数据分帧,并处理流控制。屏蔽物理层,为网络层提供一个数据链路的连接,在一条有可能出差错的物理连接上,进行几乎无差错的数据传输(差错控制)。本层指定拓扑结构并提供硬件寻址。常用设备有网卡、网桥、交换机;
第1层物理层:处于OSI参考模型的最底层。物理层的主要功能是利用物理传输介质为数据链路层提供物理连接,以便透明的传送比特流。常用设备有(各种物理设备)集线器、中继器、调制解调器、网线、双绞线、同轴电缆。
数据发送时,从第七层传到第一层,接收数据则相反。
上三层总称应用层,用来控制软件方面。下四层总称数据流层,用来管理硬件。除了物理层之外其他层都是用软件实现的。
数据在发至数据流层的时候将被拆分。
在传输层的数据叫段,网络层叫包,数据链路层叫帧,物理层叫比特流,这样的叫法叫PDU(协议数据单元)[2]
各层功能
编辑
(1)物理层(Physical Layer)
物理层是OSI参考模型的最低层,它利用传输介质为数据链路层提供物理连 接。它主要关心的是通过物理链路从一个节点向另一个节点传送比特流,物理链路可能是铜线、卫星、微波或其他的通讯媒介。它关心的问题有:多少伏电压代表 1?多少伏电压代表0?时钟速率是多少?采用全双工还是半双工传输?总的来说物理层关心的是链路的机械、电气、功能和规程特性。
(2)数据链路层(Data Link Layer)
数据链路层是为网络层提供服务的,解决两个相邻结点之间的通信问题,传送的协议数据单元称为数据帧。
数据帧中包含物理地址(又称MAC地址)、控制码、数据及校验码等信息。该层的主要作用是通过校验、确认和反馈重发等手段,将不可靠的物理链路转换成对网络层来说无差错的数据链路。
此外,数据链路层还要协调收发双方的数据传输速率,即进行流量控制,以防止接收方因来不及处理发送方来的高速数据而导致缓冲器溢出及线路阻塞。
(3)网络层(Network Layer)
网络层是为传输层提供服务的,传送的协议数据单元称为数据包或分组。该层的主要作用是解决如何使数据包通过各结点传送的问题,即通过路径选择算法(路由)将数据包送到目的地。另外,为避免通信子网中出现过多的数据包而造成网络阻塞,需要对流入的数据包数量进行控制(拥塞控制)。当数据包要跨越多个通信子网才能到达目的地时,还要解决网际互连的问题。
(4)传输层(Transport Layer)
传输层的作用是为上层协议提供端到端的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题。该层向高层屏蔽了下层数据通信的细节,使高层用户看到的只是在两个传输实体间的一条主机到主机的、可由用户控制和设定的、可靠的数据通路。
传输层传送的协议数据单元称为段或报文。
(5)会话层(Session Layer)
会话层主要功能是管理和协调不同主机上各种进程之间的通信(对话),即负责建立、管理和终止应用程序之间的会话。会话层得名的原因是它很类似于两个实体间的会话概念。例如,一个交互的用户会话以登录到计算机开始,以注销结束。
(6)表示层(Presentation Layer)
表示层处理流经结点的数据编码的表示方式问题,以保证一个系统应用层发出的信息可被另一系统的应用层读出。如果必要,该层可提供一种标准表示形式,用于将计算机内部的多种数据表示格式转换成网络通信中采用的标准表示形式。数据压缩和加密也是表示层可提供的转换功能之一。
(7)应用层(Application Layer)
应用层是OSI参考模型的最高层,是用户与网络的接口。该层通过应用程序来完成网络用户的应用需求,如文件传输、收发电子邮件等。
数据封装过程
编辑
OSI参考模型中每个层次接收到上层传递过来的数据后都要将本层次的控制信息加入数据单元的头部,一些层次还要将校验和等信息附加到数据单元的尾部,这个过程叫做封装。
每层封装后的数据单元的叫法不同,在应用层、表示层、会话层的协议数据单 元统称为data(数据),在传输层协议数据单元称为segment(数据段),在网络层称为packet(数据包),数据链路层协议数据单元称为 frame(数据帧),在物理层叫做bits(比特流)。
当数据到达接收端时,每一层读取相应的控制信息根据控制信息中的内容向上层传递数据单元,在向上层传递之前去掉本层的控制头部信息和尾部信息(如果有的话)。此过程叫做解封装。
这个过程逐层执行直至将对端应用层产生的数据发送给本端的相应的应用进程。
以用户浏览网站为例说明数据的封装、解封装过程。
当用户输入要浏览的网站信息后就由应用层产生相关的数据,通过表示层转换 成为计算机可识别的ASCII码,再由会话层产生相应的主机进程传给传输层。传输层将以上信息作为数据并加上相应的端口号信息以便目的主机辨别此报文,得 知具体应由本机的哪个任务来处理;在网络层加上IP地址使报文能确认应到达具体某个主机,再在数据链路层加上MAC地址,转成bit流信息,从而在网络上 传输。报文在网络上被各主机接收,通过检查报文的目的MAC地址判断是否是自己需要处理的报文,如果发现MAC地址与自己不一致,则丢弃该报文,一致就去 掉MAC信息送给网络层判断其IP地址;然后根据报文的目的端口号确定是由本机的哪个进程来处理,这就是报文的解封装过程。
比喻
编辑
7 应用层:老板
6 表示层:相当于公司中演示文稿、替老板写信的助理
5 会话层:相当于公司中收寄信、写信封与拆信封的秘书
4 传输层:相当于公司中跑邮局的送信职员
3 网络层:相当于邮局中的排序工人
2 数据链路层:相当于邮局中的装拆箱工人
1 物理层:相当于邮局中的搬运工人[1]
模型用途
编辑
OSI模型用途相当广泛。
比如交换机、集线器、路由器等很多网络设备的设计都是参照OSI模型设计的。
网络设计者在解决网络体系结构时经常使用ISO/OSI(国际标准化组织/开放系统互连)七层模型,该模型每一层代表一定层次的网络功能。最下面是物理层,它代表着进行数据传输的物理介质,换句话说,即网络电缆,其上是数据链路层,它通过网络接口卡提供服务。
若干概念
编辑
上面我们简单的说明了7层体系的OSI参考模型,为了方便起见,我们常常把上面的7个层次分为低层与高层。低层为1~4层,是面向通信的,高层为5~7层,是面向信息处理的。
开放系统互连是使世界范围内的应用进程能开放式(而不是封闭式)的进行信息交换。开放系统互连基本参考模型的正式文件是ISO 7498国际标准,又记为OSI/RM,笼统的称为OSI,我国的相应标准是GB 9387。
为了更好的理解OSI参考模型以及日后更深入的学习OSI的各个层次,我们将先对一些容易混淆的概念进行阐述, 然后对ISO 7498中最重要的基本概念进行阐述。
首先,在上面我们已经说起过体系结构的 问题,并且已经知道体系结构是抽象的,而实现是具体的。在一般情况下,"系统"是指实际运作的一组物体或物件,而在"OSI系统"这种说法中,"系统"具 有其特殊含义(即参考模型),为了区别起见,我们用"实系统"表示在现实世界中能够进行信息处理或信息传递的自治整体,它可以是一台或多台计算机以及这些 计算机相关的软件、外部设备、终端、操作员、信息传输手段的集合。若这种实系统和在和其他实系统通信时遵守OSI标准,则这个实系统就叫做开放实系统。但是,一个开放实系统的各种功能都不一定和互连有关,而我们以后要讨论的开放系统互连参考模型中的系统,只是在开放实系统中和互连有关的部分,我们把这部分系统称为开放系统。
ISO 7498概念
编辑
在OSI标准的制定过程中,所采用的方法是将整个庞大而复杂的问题划分为 若干个较容易处理的范围较小的问题,在OSI中,问题的处理采用了自上而下逐步求精的方法。先从最高一级的抽象开始,这一级的约束很少,然后逐渐更加精细 的进行描述,同时加上越来越多的约束,在OSI中,采用了图3-1的三级抽象,这三级抽象分别是:体系结构、服务定义和协议规范,规范也称规格说明。
OSI体系结构也 就是OSI参考模型,它是OSI所制定的标准中最高一级的抽象。用比较形式化的语言来讲,体系结构相当于对象或客体的类型,而具体的网络则相当于对象的一 个实例。OSI参考模型正是描述了一个开放系统所要用到的对象的类型,它们之间的关系以及这些对象类型与这些关系之间的一些普遍的约束。
比OSI参考模型更低一级的抽象是OSI的服务定义。服务定义较详细的定 义了各层所提供的服务。某一层的服务就是该层及其一些各层的一种能力,它通过接口提供给更高的一层,各层所提供的服务与这些服务是怎样实现的无关。此外, 各种服务还定义了层与层之间的抽象接口,以及各层为进行层与层之间的交互而用的服务原语。但这并不涉及到这个接口是怎样实现的。
OSI标准中最低层的抽象是OSI协议规范,各层的协议规范精确的定义:应当发送什么样的控制信息,以及应当用什么样的过程来解释这个控制信息。协议的规范具有最严格的约束。
最后需要知道的是,在制定计算机网络标准方 面起着很大作用的两大国际组织CCITT和ISO。许多问题都是他们共同商议决定的。从历史上看,CCITT与ISO的TC97工作领域是很不相同 的,CCITT原来是从通信的角度考虑一些标准的制定,而TC97则关心信息处理。但随着科学技术的发展,通信与信息处理的界限越来越模糊了,于是通信与 信息处理就成为CCITT和TC97所共同关心的领域。CCITT的建议书X.200就是关于开放系统互连参考模型的,它和上面提到的ISO 7498 基本上是相同的。
影响
编辑
OSI是一个定义良好的协议规范集,并有许多可选部分完成类似的任务。
它定义了开放系统的层次结构、层次之间的相互关系以及各层所包括的可能的任务。是作为一个框架来协调和组织各层所提供的服务。
OSI参考模型并没有提供一个可以实现的方法,而是描述了一些概念,用来协调进程间通信标准的制定。即OSI参考模型并不是一个标准,而是一个在制定标准时所使用的概念性框架。