返回首页
当前位置: 主页 > 互联网技术 > 网络管理 >

OSI参考模型详解

时间:2015-10-20 10:37来源:电脑教程学习网 www.etwiki.cn 编辑:admin

在网络互连中,有两个标准可以考虑:合法的和事实的。合法的意味着用权力或法律建立。

 

事实的意味着用实际的事实建立,尽管没有得到官方或法律上的承认,但T C P / I P为那个协议创建了一个事实标准,尽管它在得到广泛接受之前并没有成为标准。OSI(Open SystemInterconnection, 开放系统互连)参考模型是一个合法的标准。国际标准化组织( I S O )创建了O S I模型,并在1 9 8 4年发布,以为供应商提供一个网络模型,这样它们的产品可以在网络上协调工作。O S I参考模型提供了层次分析工具,以理解互连技术,以及当前和未来网络发展的基础。这个模型也考虑了由D A R PA项目工程师面对的互通性和互操作性挑战。O S I模型回答这些挑战的方法是通过一个7层的协议模型。通过将模型分解为层,互通性和互操作性的能力变得可以管理,因为每层都是自包含的,而并不依赖于操作系统或其他的因素。分层方法也使供应商受益,因为它们仅仅需要将开发工作集中在它们自己的产品使用的层上,而且可以建立在其他层的现有协议基础上。不仅仅使开发代价降低到最低程度,而且可销售性增加了,因为可以使用其他供应商的产品。

(一).O S I参考模型将计算机网络分为7层,我们将从最底层开始,依次讨论模型的各层所要完成的功能。

1. 物理层
物理层(physical layer)的主要功能是完成相邻结点之间原始比特流的传输。物理层议关心的典型问题是使用什么样的物理信号来表示数据” 1″和” 0″;一位持续的时间多长;数据传输是否可同时在两个方向上进行;最初的连接如何建立和完成通信后连接如何终止;物理接 口(插头和插座)有多少针以及各针的用处。物理层的设计主要涉及物理层接口的机械、电气、 功能和过程特性,以及物理层接口连接的传输介质等问题。物理层的设计还涉及到通信工程领 域内的一些问题。
2. 数据链路层
数据链路层( data link layer)的主要功能是如何在不可靠的物理线路上进行数据的可靠传输。数据链路层完成的是网络中相邻结点之间可靠的数据通信。为了保证数据的可靠传输,发送方把用户数据封装成帧( f r a m e),并按顺序传送各帧。由于物理线路的不可靠,因此发送方 发出的数据帧有可能在线路上发生出错或丢失(所谓丢失实际上是数据帧的帧头或帧尾出错), 从而导致接收方不能正确接收到数据帧。为了保证能让接收方对接收到的数据进行正确性判断, 发送方为每个数据块计算出C R C(循环冗余检验)并加入到帧中,这样接收方就可以通过重新 计算C R C来判断数据接收的正确性。一旦接收方发现接收到的数据有错,则发送方必须重传这 一帧数据。然而,相同帧的多次传送也可能使接收方收到重复帧。比如,接收方给发送方的确 认帧被破坏后,发送方也会重传上一帧,此时接收方就可能接收到重复帧。数据链路层必需解 决由于帧的损坏、丢失和重复所带来的问题。数据链路层要解决的另一个问题是防止高速发送方的数据把低速接收方”淹没”。因此需要某种信息流量控制机制使发送方得知接收方当前还有多少缓存空间。为了控制的方便,流量控制常常和差错处理一同实现。
3. 网络层
网络层(network layer)的主要功能是完成网络中主机间的报文传输,其关键问题之一是使 用数据链路层的服务将每个报文从源端传输到目的端。在广域网中,这包括产生从源端到目的 端的路由,并要求这条路径经过尽可能少的I M P。如果在子网中同时出现过多的报文,子网可能 形成拥塞,必须加以避免,此类控制也属于网络层的内容。 当报文不得不跨越两个或多个网络时,又会产生很多新问题。例如第二个网络的寻址方法 可能不同于第一个网络;第二个网络也可能因为第一个网络的报文太长而无法接收;两个网络 使用的协议也可能不同,等等。网络层必须解决这些问题,使异构网络能够互连。 在单个局域网中,网络层是冗余的,因为报文是直接从一台计算机传送到另一台计算机的, 因此网络层所要做的工作很少。
4. 传输层
传输层( transport layer)的主要功能是完成网络中不同主机上的用户进程之间可靠的数据 通信。 传输层要决定对会话层用户,最终对网络用户,提供什么样的服务。最好的传输连接是一 条无差错的、按顺序传送数据的管道,即传输层连接是真正端到端的。换言之,源端机上的某 进程,利用报文头和控制报文与目标机上的对等进程进行对话。在传输层下面的各层中,协议 是每台机器与它的直接相邻机器之间(主机- I M P、I M P-I M P)的协议,而不是最终的源端机和目标机之间(主机-主机)的协议。在它们中间,可能还隔着多个I M P。即1至3层的协议是点到点的协议,而4至7层的协议是端到端的协议。 由于绝大多数主机都支持多用户操作,因而机器上有多道程序,这意味着多条连接将进出 于这些主机,因此需要以某种方式区别报文属于哪条连接。识别这些连接的信息可以放入传输 层的报文头中。除了将几个报文流多路复用到一条通道上,传输层还必须管理跨网连接的建立 和拆除。这就需要某种命名机制,使机器内的进程能够讲明它希望交谈的对象。另外,还需要 有一种机制来调节信息流,使高速主机不会过快地向低速主机传送数据。尽管主机之间的流量 控制与I M P之间的流量控制不尽相同,但是稍后我们将看到类似的原理对二者都适用。
5. 会话层
会话层( session layer)允许不同机器上的用户之间建立会话关系。会话层允许进行类似传 输层的普通数据的传送,在某些场合还提供了一些有用的增强型服务。允许用户利用一次会话 在远端的分时系统上登录,或者在两台机器间传递文件。会话层提供的服务之一是管理对话控制。会话层允许信息同时双向传输,或任一时刻只能单向传输。如果属于后者,类似于物理信道上的半双工模式,会话层将记录此时该轮到哪一方。 一种与对话控制有关的服务是令牌管理( token management)。有些协议保证双方不能同时进行同样的操作,这一点很重要。为了管理这些活动,会话层提供了令牌,令牌可以在会话双方之 间移动,只有持有令牌的一方可以执行某种关键性操作。另一种会话层服务是同步。如果在平 均每小时出现一次大故障的网络上,两台机器间要进行一次两小时的文件传输,想想会出现什 么样的问题?每一次传输中途失败后,都不得不重新传送这个文件。当网络再次出现大故障时, 可能又会半途而废。为了解决这个问题,会话层提供了一种方法,即在数据中插入同步点。每 次网络出现故障后,仅仅重传最后一个同步点以后的数据。
6. 表示层
表示层( presentation layer)完成某些特定的功能,对这些功能人们常常希望找到普遍的解 决办法,而不必由每个用户自己来实现。值得一提的是,表示层以下各层只关心从源端机到目 标机可靠地传送比特,而表示层关心的是所传送的信息的语法和语义。表示层服务的一个典型 例子是用一种大家一致选定的标准方法对数据进行编码。大多数用户程序之间并非交换随机的 比特,而是交换诸如人名、日期、货币数量和发票之类的信息。这些对象是用字符串、整型数、 浮点数的形式,以及由几种简单类型组成的数据结构来表示。 网络上计算机可能采用不同的数据表示,所以需要在数据传输时进行数据格式的转换。例 如在不同的机器上常用不同的代码来表示字符串( A S C I I和E B C D I C)、整型数(二进制反码或 补码)以及机器字的不同字节顺序等。为了让采用不同数据表示法的计算机之间能够相互通信 并交换数据,我们在通信过程中使用抽象的数据结构(如抽象语法表示A S N . 1)来表示传送的 数据,而在机器内部仍然采用各自的标准编码。管理这些抽象数据结构,并在发送方将机器的 内部编码转换为适合网上传输的传送语法以及在接收方做相反的转换等工作都是由表示层来完 成的。 另外,表示层还涉及数据压缩和解压、数据加密和解密等工作。
7. 应用层
连网的目的在于支持运行于不同计算机的进程进行通信,而这些进程则是为用户完成不同 任务而设计的。可能的应用是多方面的,不受网络结构的限制。应用层( application layer)包 含大量人们普遍需要的协议。虽然,对于需要通信的不同应用来说,应用层的协议都是必须的。 例如, P C机用户使用仿真终端软件通过网络仿真某个远程主机的终端并使用该远程主机的 资源。这个仿真终端程序使用虚拟终端协议将键盘输入的数据传送到主机的操作系统,并接收 显示于屏幕的数据。 再比如,当某个用户想要获得远程计算机上的一个文件拷贝时,他要向本机的文件传输软 件发出请求,这个软件与远程计算机上的文件传输进程通过文件传输协议进行通信,这个协议 主要处理文件名、用户许可状态和其他请求细节的通信。远程计算机上的文件传输进程使用其 他特征来传输文件内容。 由于每个应用有不同的要求,应用层的协议集在I S O / O S I模型中并没有定义,但是,有些确定的应用层协议,包括虚拟终端、文件传输、和电子邮件等都可作为标准化的候选。

(二).tcp/ip分层结构

------分隔线----------------------------
标签(Tag):OSI参考模型
------分隔线----------------------------
推荐内容
猜你感兴趣