您的位置:首页 > 理论基础 > 计算机网络

计算机网络的体系结构

2014-09-25 10:23 190 查看
OSI(Open System Interconnection)体系结构



OSI模式简介

物理层:主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后再转化为1、0,也就是我们常说的数模转换与模数转换)。这一层的数据叫做比特。

数据链路层:定义了如何让格式化数据以进行传输,以及如何让控制对物理介质的访问。这一层通常还提供错误检测和纠正,以确保数据的可靠传输。

网络层:在位于不同地理位置的网络中的两个主机系统之间提供连接和路径选择。Internet的发展使得从世界各站点访问信息的用户数大大增加,而网络层正是管理这种连接的层。

传输层:定义了一些传输数据的协议和端口号(WWW端口80等),如:TCP(传输控制协议,传输效率低,可靠性强,用于传输可靠性要求高,数据量大的数据),UDP(用户数据报协议,与TCP特性恰恰相反,用于传输可靠性要求不高,数据量小的数据,如QQ聊天数据就是通过这种方式传输的)。 主要是将从下层接收的数据进行分段和传输,到达目的地址后再进行重组。常常把这一层数据叫做段。

会话层:通过传输层(端口号:传输端口与接收端口)建立数据传输的通路。主要在你的系统之间发起会话或者接受会话请求(设备之间需要互相认识可以是IP也可以是MAC或者是主机名)。

表示层:可确保一个系统的应用层所发送的信息可以被另一个系统的应用层读取。翻译官的角色,还可用于加密与解密。例如,PC程序与另一台计算机进行通信,其中一台计算机使用扩展二一十进制交换码(EBCDIC),而另一台则使用美国信息交换标准码(ASCII)来表示相同的字符。如有必要,表示层会通过使用一种通格式来实现多种数据格式之间的转换。
应用层:是最靠近用户的OSI层。这一层为用户的应用程序(例如电子邮件、文件传输和终端仿真)提供网络服务。

物理层(Physical Layer)

物理层建立在物理通信介质的基础上,作为系统和通信介质的接口,用来实现数据链路实体间透明的比特 (bit) 流传输。只有该层为真实物理通信,其它各层为虚拟通信。物理层实际上是设备之间的物理接口,物理层传输协议主要用于控制传输媒体。

物理层应该具有的功能

物理连接的建立与拆除:当数据链路层请求在两个数据链路实体之间建立物理连接时,物理层能够立即为它们建立相应的物理连接。若两个数据链路实体之间要经过若干中继数据链路实体时,物理层还能够对这些中继数据链路实体进行互联,以建立起一条有效的物理连接。当物理连接不再需要时,由物理层立即拆除。
物理服务数据单元传输:物理层既可以采取同步传输方式,也可以采取异步传输方式来传输物理服务数据单元。
物理层管理:对物理层收发进行管理,如功能的激活 (何时发送和接收、异常情况处理等)、差错控制 (传输中出现的奇偶错和格式错)等。

数据链路层(DataLink Layer)

它控制物理层与网络层之间的通信,其主要功能是如何在不可靠的物理线路上进行可靠的数据传输。为了保证传输,从网络层接收到的数据被分割成特定的可被物理层传输的帧。帧是用来移动数据的结构包,它不仅包括原始数据,还包括发送方和接收方的物理地址以及检错和控制信息。其中的地址确定了帧将发往何处,而纠错和控制信息则确保帧无差错到达。如果在传送数据时,接收点检测到所传数据中有差错,就要通知发送方重发这一帧。

数据链路层的功能和服务

无应答、无连接服务。发送前不必建立数据链路连接,接收方也不做应答,出错和数据丢失时也不做处理。这种服务质量低,适用于线路误码率很低以及传送实时性要求高的 (例如语音类的)信息等。
有应答、无连接服务。当发送主机的数据链路层要发送数据时,直接发送数据帧。目标主机接收数据链路的数据帧,并经校验结果正确后,向源主机数据链路层返回应答帧;否则返回否定帧,发送端可以重发原数据帧。这种方式发送的第一个数据帧除传送数据外,也起数据链路连接的作用。这种服务适用于一个节点的物理链路多或通信量小的情况,其实现和控制都较为简单。
面向连接的服务。该服务一次数据传送分为三个阶段:数据链路建立,数据帧传送和数据链路的拆除。数据链路建立阶段要求双方的数据链路层作好传送的准备;数据传送阶段是将网络层递交的数据传送到对方;数据链路拆除阶段是当数据传送结束时,拆除数据链路连接。这种服务的质量好,是ISO/OSI参考模型推荐的主要服务方式。

数据链路层协议

数据链路层协议可分为面向字符的通信规程和面向比特的通信规程。

面向字符的通信规程是利用控制字符控制报文的传输。报文由报头和正文两部分组成。报头用于传输控制,包括报文名称、源地址、目标地址、发送日期以及标识报文开始和结束的控制字符。正文则为报文的具体内容。目标节点对收到的源节点发来的报文,进行检查,若正确,则向源节点发送确认的字符信息;否则发送接收错误的字符信息。

面向比特的通信规程典型是以帧为传送信息的单位,帧分为控制帧和信息帧。在信息帧的数据字段 (即正文)中,数据为比特流。比特流用帧标志来划分帧边界,帧标志也可用作同步字符。

网络层(NetWork Layer)

广域网络一般都划分为通信子网和资源子网,物理层、数据链路层和网络层组成通信子网,网络层是通信子网的最高层,完成对通信子网的运行控制。网络层和传输层的界面,既是层间的接口,又是通信子网和用户主机组成的资源子网的界限,网络层利用本层和数据链路层、物理层两层的功能向传输层提供服务。

数据链路层的任务是在相邻两个节点间实现透明的无差错的帧级信息的传送,而网络层则要在通信子网内把报文分组从源节点传送到目标节点。在网络层的支持下,两个终端系统的传输实体之间要进行通信,只需把要交换的数据交给它们的网络层便可实现。至于网络层如何利用数据链路层的资源来提供网络连接,对传输层是透明的。

网络层控制分组传送操作,即路由选择,拥塞控制、网络互连等功能,根据传输层的要求来选择服务质量,向传输层报告未恢复的差错。网络层传输的信息以报文分组为单位,它将来自源的报文转换成包文,并经路径选择算法确定路径送往目的地。网络层协议用于实现这种传送中涉及的中继节点路由选择、子网内的信息流量控制以及差错处理等。

路由选择算法可分为静态算法和动态算法。静态路由算法是指总是按照某种固定的规则来选择路由,例如,扩散法、固定路由选择法、随机路由选择法和流量控制选择法。动态路由算法是指根据拓扑结构以及通信量的变化来改变路由,例如,孤立路由选择法、集中路由选择法、分布路由选择法、层次路由选择法等

网络层的功能

网络层的主要功能是将网络地址翻译成对应的物理地址,并决定如何将数据从发送方路由到接收方

建立和拆除网络连接:在数据链路层提供的数据链路连接的基础上,建立传输实体间或者若干个通信子网的网络连接。互连的子网可采用不同的子网协议。
路径选择、中继和多路复用:网际的路径和中继不同与网内的路径和和中继,网络层可以在传输实体的两个网络地址之间选择一条适当的路径,或者在互连的子网之间选择一条适当的路径和中继。并提供网络连接多路复用的数据链路连接,以提高数据链路连接的利用率。
分组、组块和流量控制:数据分组是指将较长的数据单元分割为一些相对较小的数据单元;数据组块是指将一些相对较小的数据单元组成块后一起传输。用以实现网络服务数据单元的有序传输,以及对网络连接上传输的网络服务数据单元进行有效的流量控制,以免发生信息"堵塞"现象。
差错的检测与恢复:利用数据链路层的差错报告,以及其他的差错检测能力来检测经网络连接所传输的数据单元,检测是否出现异常情况。并可以从出错状态中解脱出来。

传输层(TransPort Layer)

从传输层向上的会话层、表示层、应用层都属于端一端的主机协议层。传输层是网络体系结构中最核心的一层,传输层将实际使用的通信子网与高层应用分开。从这层开始,各层通信全部是在源与目标主机上的各进程间进行的,通信双方可能经过多个中间节点。传输层为源主机和目标主机之间提供性能可靠、价格合理的数据传输。具体实现上是在网络层的基础上再增添一层软件,使之能屏蔽掉各类通信子网的差异,向用户提供一个通用接口,使用户进程通过该接口,方便地使用网络资源并进行通信。

传输层功能:传输层独立于所使用的物理网络,提供传输服务的建立、维护和连接拆除的功能;选择网络层提供的最适合的服务。传输层接收会话层的数据,分成较小的信息单位,再送到网络层,实现两传输层间数据的无差错透明传送。

传输层提供面向连接和无连接两种类型的服务。这两种类型的服务和网络层的服务非常相似。传输层提供这两种类型服务的原因是因为,用户不能对通信子网加以控制,无法通过使用通信处理机来改善服务质量。传输层提供比网络层更可靠的端一端间数据传输,更完善的查错纠错功能。传输层之上的会话层、表示层、应用层都不包含任何数据传送的功能。

传输层协议类型

传输层协议和网络层提供的服务有关。网络层提供的服务于越完善,传输层协议就越简单,网络层提供的服务越简单,传输层协议就越复杂。传输层服务可分成五类:

0类:提供最简单形式的传送连接,提供数据流控制。
1类:提供最小开销的基本传输连接,提供误差恢复。
2类:提供多路复用,允许几个传输连接多路复用一条链路。
3类:具有0类和1类的功能,提供重新同步和重建传输连接的功能。
4类:用于不可靠传输层连接,提供误差检测和恢复。

基本协议机制包括建立连接、数据传送和拆除连接。传输连接涉及四种不同类型的标识:
用户标识:即服务访问点SAP,允许实体多路数据传输到多个用户。
网络地址:标识传输层实体所在的站。
协议标识:当有多个不同类型的传输协议的实体,对网络服务标识出不同类型的协议。
连接标识:标识传送实体,允许传输连接多路复用。

会话层(Session Layer)

会话是指两个用户进程之间的一次完整通信。会话层提供不同系统间两个进程建立、维护和结束会话连接的功能;提供交叉会话的管理功能,有一路交叉、两路交叉和两路同时会话的3种数据流方向控制模式。会话层是用户连接到网络的接口。负责在网络中的两节点之间建立、维持和终止通信。 会话层的功能包括:建立通信链接,保持会话过程通信链接的畅通,同步两个节点之间的对话,决定通信是否被中断以及通信中断时决定从何处重新发送

会话层的主要功能:

会话层的目的是提供一个面向应用的连接服务。建立连接时,将会话地址映射为传输地址。会话连接和传输连接有三种对应关系,一个会话连接对应一个传输连接;多个会话连接建立在一个传输连接上;一个会话连接对应多个传输连接。
数据传送时,可以进行会话的常规数据、加速数据、特权数据和能力数据的传送。
会话释放时,允许正常情况下的有序释放;异常情况下由用户发起的异常释放和服务提供者发起的异常释放。

表示层(Presentation Layer)

应用程序和网络之间的翻译官,在表示层,数据将按照网络能理解的方案进行格式化;这种格式化也因所使用网络的类型不同而不同。

表示层的目的是处理信息传送中数据表示的问题。由于不同厂家的计算机产品常使用不同的信息表示标准,例如在字符编码、数值表示、字符等方面存在着差异。如果不解决信息表示上的差异,通信的用户之间就不能互相识别。因此,表示层要完成信息表示格式转换,转换可以在发送前,也可以在接收后,也可以要求双方都转换为某标准的数据表示格式。所以表示层的主要功能是完成被传输数据表示的解释工作,包括数据转换、数据加密和数据压缩等。

表示层协议主要功能有:

为用户提供执行会话层服务原语的手段
提供描述负载数据结构的方法
管理当前所需的数据结构集和完成数据的内部与外部格式之间的转换。例如,确定所使用的字符集、数据编码以及数据在屏幕和打印机上显示的方法等。表示层提供了标准应用接口所需要的表示形式。

表示层可以管理数据的加密与解密,如系统口令的处理。例如:在Internet上查询你银行账户,使用的即是一种安全连接。你的账户数据在发送前被加密,在网络的另一端,表示层将对接收到的数据解密。除此之外,表示层协议还对图片和文件格式信息进行解码和编码。

应用层(Application Layer)

应用层作为用户访问网络的接口层,给应用进程提供了访问OSI环境的手段。

应用进程借助于应用实体 (AE)、实用协议和表示服务来交换信息,应用层的作用是在实现应用进程相互通信的同时,完成一系列业务处理所需的服务功能。当然这些服务功能与所处理的业务有关。

应用进程使用OSI定义和通信功能,这些通信功能是通过OSI参考模型各层实体来实现的。应用实体是应用进程利用OSI通信功能的唯一窗口。它按照应用实体间约定的通信协议 (应用协议),传送应用进程的要求,并按照应用实体的要求在系统间传送应用协议控制信息,有些功能可由表示层和表示层以下各层实现。

应用实体由一个用户元素和一组应用服务元素组成。用户元素是应用进程在应用实体内部,为完成其通信目的,需要使用的那些应用服务元素的处理单元。实际上,用户元素向应用进程提供多种形式的应用服务调用,而每个用户元素实现一种特定的应用服务使用方式。用户元素屏蔽应用的多样性和应用服务使用方式的多样性,简化了应用服务的实现。应用进程完全独立于OSI环境,它通过用户元素使用OSI服务。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: