计算机网络是一个非常复杂的系统,而要将不同厂商的计算机、网络设备、网络管理软件融合在一起,构成一个可以硬件方便互连、信息无缝传输、资源无阻共享的大型网络,必须对计算机网络所涉及的硬件、信息格式、管理方式进行标准化。上一节的信息分层处理方式,使得计算机网络标准化这一复杂问题的解决成为可能。
20世纪70年代末,计算机网络的研究出现热潮。1974年,IBM公司发布了SNA(IBM System Network Architecture)网络体系结构模型。接着,DEC公司发布了DNA(Digital Network Architecture)模型,UNIVAC发布了 DCA(Distributed Computer Architecture)模型,美国国防部发布了TCP/IP体系结构模型。
1982年4月,国际标准化组织ISO发布了一个被称为OSI(Open System Interconnect,开放式系统互联)参考模型的计算机网络通信的国际标准,如图1-6所示。其目的是让计算机网络的软硬件厂商可以依据这个统一的规范,进行软硬件产品的研制和生产,以便用户能方便地建设自己的计算机网络,并且不同用户的网络能够互联。
图1-6 ISO OSI/RM参考模型
1.核心概念
OSI参考模型定义了计算机网络的四个核心概念:
(1)实体是指任何接收或发送信息的硬件或软件进程。它可以指硬件设备,如集线器、网络适配器、交换机、路由器等。在许多情况下,实体就是一个特定的软件模块。在OSI的七层模型中,每一层都可以看作一个实体。
(2)网络协议,简称协议,是控制两个对等实体(或多个实体)进行通信的规则的集合。网络体系结构中,如图1-6所示,每一层都有一些相应的协议实现网络通信的控制。
网络协议要求通信的各实体必须遵守约定的规程和规则,主要包含三个要素。
语义:解释控制信息每个部分的意义。它规定了需要发出何种控制信息,以及完成的动作和做出什么样的响应。
语法:是用户数据与控制信息的结构与格式,以及数据出现的顺序。
规程:是对事件发生顺序的详细说明(也可称为“同步”)。
人们形象地把这三个要素描述为:语义表示要做什么,语法表示要怎么做,规程表示做的顺序。
协议通常有两种不同的形式。一种是使用便于人来阅读和理解的硬件和软件的文字描述,另一种是使用计算机能够理解的程序代码。
(3)服务就是网络中各层向其相邻上层提供的一组操作,是相邻两层之间的界面。由于网络分层结构中的单向依赖关系,使得网络中相邻层之间的界面也是单向性的:下层是服务提供者,上层是服务的用户。服务的表现形式一般是原语操作。
N层实体实现的服务为N+1层所利用,而N层则要利用N-1层所提供的服务。N层实体可能向N+1层提供几类服务,如传输层可以为会话层提供可靠但时间开销大的传输服务,也可以为会话层提供不可靠但时间开销小的传输服务。
(4)服务访问点(Service Access Point,SAP)是协议层之间的接口,是相邻两层交换信息的通道。N+1层实体是通过N层的服务访问点来使用N层所提供的服务。N层SAP就是N+1层可以访问N层服务的地方。每一个SAP都有一个唯一地址。(www.xing528.com)
N+1层实体通过SAP把一个接口数据单元(Interface Data Unit,IDU)传递给N层实体。IDU由服务数据单元(Service Data Unit,SDU)和一些控制信息组成。为了传送SDU,N层实体可以将SDU分成几段,每一段加上一个报头后作为独立的协议数据单元(Protocol Data Unit,PDU)送出,如“分组”就是PDU。PDU报头被同层实体用来执行它们的同层协议,用于辨别哪些PDU包含数据,哪些包含控制信息,并提供序号和计数值等。
2.七层模型
如图1-7所示,OSI模型有七层结构,每层都可以有几个子层。OSI的七层从上到下分别是应用层、表示层、会话层、传输层、网络层、数据链路层、物理层;其中7,6,5,4层定义了用户应用程序的功能,3,2,1层主要面向通过网络的端到端的数据流。
图1-7 OSI七层模型的内容
各层的功能如下:
(1)应用层。为用户提供使用计算机网络的手段,也就是为用户应用进程(正在系统中运行的用户程序)提供一些特定的访问网络的接口协议,如提供远程登录服务的TELNET协议,支持WWW文件的超文本传输协议HTTP,支持网上文件传输的FTP协议,支持通过TCP/IP进行网络资源共享的NFS协议,支持电子邮件传输的SMTP协议等。
(2)表示层。其主要功能是处理计算机网络中通信双方信息的表示方式,包括定义数据格式转换、数据压缩与解压、数据加密与解密等。例如,FTP允许你选择以二进制或ASCII格式传输。如果选择二进制,那么发送方和接收方不改变文件的内容。如果选择ASCII格式,发送方将把文本从发送方的字符集转换成标准的ASCII后发送数据。接收方将标准的ASCII转换成接收方计算机的字符集。
(3)会话层。它定义了如何开始、控制和结束一个会话,包括对多个双向消息的控制和管理。所提供的若干可选服务有以下方面。
交互管理:与对话相关的数据交换可以是全双工的,也可以是半双工的。如果是半双工的,会话层提供以同步的方式控制数据交换的手段。
同步:对于长时间的网络事务,通过会话层提供的服务可以选择周期地建立与通信用户的传送相关的同步点。如果在事务处理过程中出现故障,对话可以从同步点重新开始。
异常报告:在事务处理过程中发生了不可恢复的异常,可以由会话层告知应用层。
(4)传输层。其功能包括是选择差错恢复协议还是无差错恢复协议,及在同一主机上,对不同应用的数据流的输入进行复用,还包括对收到的顺序不对的数据包的重新排序功能。协议如:TCP,UDP,SPX。
(5)网络层。这层对节点到节点的报文传输进行定义,它定义了能够标识所有节点的逻辑地址,还定义了路由实现的方式和学习的方式。为了适应最大传输单元长度小于包长度的传输介质,网络层还定义了如何将一个包分解成更小的包的分段方法。协议如:IP,IPX等。
(6)数据链路层。它定义了在单个链路上如何传输数据。这些协议与各种介质有关。协议如:CSM A/CD,ATM,FDDI等。
(7)物理层。它规范的是有关传输介质的特性,这些规范通常也参考了其他组织制定的标准。连接头、帧、帧的使用、电流、编码及光调制等都属于各种物理层规范中的内容。物理层常用多个规范完成对细节的定义。协议如:Rj45,802.3等。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。