第三章_计算机网络体系结构要点课件.ppt
第三章 计算机网络体系结构,本章学习要点:,网络体系结构与协议的概念,OSI参考模型,OSI与TCP/IP两种模型的比较,TCP/IP参考模型,3.1 网络体系结构与协议的概念,3.1.1 什么是网络体系结构计算机网络体系结构是指整个网络系统的逻辑组成和功能分配,它定义和描述了一组用于计算机及其通信设施之间互连的标准和规范的集合。也就是说:为了完成计算机间的通信合作,把计算机互连的功能划分成有明确定义的层次,规定了同层次实体通信的协议及相邻层之间的接口服务。网络体系结构就是这些同层次实体通信的协议及相邻层接口的统称,即层和协议的集合。,3.1.2 什么是网络协议从最根本的角度上讲,协议就是规则。网络协议,就是为进行网络中的数据交换而建立的规则、标准或约定。连网的计算机以及网络设备之间要进行数据与控制信息的成功传递就必须共同遵守网络协议。,网络协议主要由以下三要素组成:语法语法是以二进制形式表示的命令和相应的结构,确定协议元素的格式(规定数据与控制信息的结构和格式)如何讲 语义语义是由发出请求、完成的动作和返回的响应组成的集合,确定协议元素的类型,即规定通信双方要发出何种控制信息、完成何种动作以及做出何种应答。讲什么交换规则交换规则规定事件实现顺序的详细说明,即确定通信状态的变化和过程,。应答关系,协议只确定计算机各种规定的外部特点,不对内部的具体实现做任何规定,这同人们日常生活中的一些规定是一样的,规定只说明做什么,对怎样做一般不加以描述。,3.1.3 网络协议的分层,计算机网络是一个非常复杂的系统,因此网络通信也比较复杂。为了减少计算机网络的复杂程度,计算机网络将其功能划分为若干个层次,这种方法就是结构化设计方法。实践证明,它是解决复杂问题的一种有效手段,其核心思想就是将系统模块化,并按层次组织各模块。,1.分层的好处 各层之间相互独立某一层并不需要知道它的下一层是如何实现的,而仅仅需要知道该层间的接口(即界面)所提供的服务。由于每一层只实现一种相对独立的功能,因而可将一个难以处理的复杂问题分解为若干个较容易处理的更小一些的问题。这样,整个问题的复杂程度就下降了。,灵活性好当任何一层发生变化时(例如技术的变化),只要层间接口关系保持不变,则在这层以上或以下各层均不受影响。各层都可以采用最合适的技术来实现,各层实现技术的改变不影响其他层 易于实现和维护分层结构使得实现和调试一个庞大而复杂的网络系统变得简单和容易。,有利于促进标准化,容易解决通信的异构性问题不同的计算机网络具有不同的体系结构,其层的数量、各层的名字和功能以及各相邻层之间的接口都不一样。然而在任何网络中,每一层都是为了向它邻接的上层提供一定的服务而设置的,而且,每一层都对上层屏蔽了如何实现协议的具体细节。这样,网络体系结构就能做到与具体的物理实现无关,哪怕连接到网络中的主机和终端的型号与性能各不相同,只要它们共同遵守相同的协议,就可以实现相互通信和相互操作。,分层原则,分层数应足够多,以免同一层中有不同的功能混杂。但分层数也不能太多,层次太多会导致体系结构过于庞杂,系统的描述和集成都有困难。每层应当定义一个定义明确的功能,且功能相对独立,修改本层功能并不影响其他层。各层边界的选择应尽量减少跨过层间接口的通信量。网络中各结点都有相同的层次。,2.各层次间的关系每一层都由一些实体(Entity)组成,这些实体抽象地表示了通信时的软件元素(如进程或子程序)或硬件元素(如智能I/O芯片等)。不同机器上同一层的实体叫做对等实体(Peer Entity)。计算机网络中,正是对等实体利用该层的协议在互相通信。,各相邻层之间要有一个接口,它定义了较低层向较高层提供的原始操作和服务。相邻层通过它们之间的接口交换信息,高层并不需要知道低层是如何实现的,仅需要知道该层通过层间的接口所提供的服务,这样使得两层之间保持了功能的独立性。对于网络结构化层次模型,其特点是每一层都建立在它的下一层之上,每一层都是向它的上一层提供一定的服务,而上一层根本不需要知道下一层是如何实现服务的。这样每一层在实现自身功能时,直接使用较低一层提供的服务,而间接地使用了更低层提供的服务,并向较高一层提供更完善的服务,同时屏蔽了具体实现这些功能的细节。,分层举例,信件内容,邮件地址,货物地址,发信人,邮局,运输系统,信件内容,邮件地址,货物地址,收信人,对信件内容的共识,对信件如何传递的共识,对货物如何运输的共识,P3,P2,P1,公路,铁路,航空,邮局,运输系统,对等层通信的实质,对等层实体之间实现的是虚拟的逻辑通信;下层向上层提供服务;上层依赖下层提供的服务来与其它主机上的对等层通信;实际通信在最底层完成。,源进程传送消息到目标进程的过程:消息送到源系统的最高层;从最高层开始,自上而下逐层封装;经物理线路传输到目标系统;目标系统将收到的信息自下而上逐层处理并拆封;由最高层将消息提交给目标进程。,目标进程,源进程,P3,P2,P1,物理通信线路,Pn-1,Pn,Pn+1,逻辑通信,网络体系结构中:每层可能会有若干个协议一个协议只属于一个层次协议可以由软件或硬件来实现:网络通信协议软件、网络驱动程序网络硬件常用协议组:TCP/IP(Windows、Unix、Linux、)NetBEUI(Windows)IPX/SPX(NetWare、Windows),3.2 OSI参考模型,网络体系结构的基本功能和特点:(1)保证存在一条有效的传输路径;(2)进行数据链路控制、误码检测、数据重发,以保证实现数据无误码的传输;(3)实现有效寻址和路径选择,保证数据准确无误的到达目的地;(4)进行同步控制,保证通信双方传输速率的匹配;(5)对报文进行有效的分组和组合,适应缓冲容量,保证数据传输质量;(6)进行网络用户对话管理和实现不同编码、不同控制方式的协议转换,保证各终端用户进行数据识别。,3.2.1 OSI参考模型的概念为了实现不同厂家生产的计算机系统之间以及不同网络之间的数据通信,国际标准化组织ISO对各类计算机网络体系结构进行了研究,并于1981年正式公布了一个网络体系结构模型作为国际标准,它定义了网络互连的七层框架,即物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。这就是开放系统互连参考模型(OSI/RM),也称为ISO/OSI。,OSI参考模型定义了不同计算机互联标准的框架结构,得到了国际上的承认。它通过分层结构把复杂的通信过程分成了多个独立的、比较容易解决的子问题。在OSI模型中,下一层为上一层提供服务,而各层内部的工作与相邻层是无关的。开放:表示能使任何两个遵守参考模型和有关标准的系统进行互连。互连:是指将不同的系统互相连接起来,以达到相互交换信息,共享资源,分布应用和分布处理的目的。,OSI参考模型的最高层为应用层,面向用户提供网络应用服务;最低层为物理层,与通信介质相连实现真正的数据通信,如图所示。除物理层之外,其余各对等层之间均不存在直接的通信关系,而是通过各对等层的协议来进行通信。只有两个物理层之间通过通信介质进行真正的数据通信。,图OSI参考模型的结构示意图,3.2.2 OSI参考模型各层的功能ISO已经为各层制定了标准,各个标准作为独立的国际标准公布。下面我们以从低层到高层的顺序,依次介绍OSI参考模型的各层。,1.物理层(Physical Layer),物理层是OSI模型的最低层,它向下直接与传输介质相连接,是开放系统和物理传输介质的接口,向上相邻且服务于数据链路层。是整个开放系统的基础,它是惟一直接提供原始比特流传输的层。其主要功能使用什么类型的传输介质,使用什么样的连接器件和连接设备。使用什么拓扑结构。使用什么样的物理信号表示二进制的0和1,以及该物理信号与传输相关的特性如何。在常用的网络设备中,集线器工作在OSI参考模型的物理层。物理层中传送的数据为比特流。,说明:第一,物理层直接与物理信道相连接,因此物理层是7层中惟一的“实连接层”;而其他各层由于都间接地使用到物理层的功能,因此为“虚连接层”。第二,“透明”是一个很重要的术语。它表示的是某一个实际存在的事物看起来却好像不存在一样。,2.数据链路层(Data Link Layer),数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层提供的服务的基础上向网络层提供服务。数据链路层的作用是对物理层传输原始比特流的功能的加强,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,即使之对网络层表现为一条无差错的链路。数据链路层的基本功能是向网络层提供透明的和可靠的数据传送服务。透明性是指该层上传输的数据的内容、格式及编码没有限制,也没有必要解释信息结构的意义;可靠的传输使用户免去对丢失信息、干扰信息及顺序不正确等的担心。,数据链路层的基本功能和提供的服务,将bit信息加以组织封装成帧。确定了数据帧的结构。通过使用硬件地址及物理地址来寻址。实现差错校验信息的组织。对共享的介质实现访问控制。在常用的网络设备中,网卡是工作在物理层和数据链路层重要的网络设备。交换机是工作在数据链路层的网络设备。数据链路层中传送的数据为帧。,3.网络层(Network Layer),网络层是OSI模型的第3层,该层传输以“分组”为单位的数据单元,其主要任务用一句话表示就是“为数据通过网络建立逻辑链接,即该层通过路由选择算法,为报文、或分组通过通信子网选择最适当的路径,并提供网络互联及拥塞控制功能”。,2.网络层的功能提供了网络层的地址(IP地址),并进行不同网络系统间的路径选择。数据包的分割和重新组合。差错校验和恢复。流量控制和拥塞控制。路由器是工作在OSI参考模型的网络层的重要设备。网络层中数据为数据包,4.传输层(transport),传输层以上各层:面向应用;以下各层:面向传输。传输层位于资源子网和通信子网的交界处,起着承上启下的作用。与网络层的部分服务有重叠交叉。如何平衡取决于两者的功能划分。真正意义上的从源到目标实现“端到端”连接的层。1-3层:链接,中继;4-7层:端到端,OSI所定义的运输层正好是七层的中间一层,是通信子网(下面3层)和资源子网(上面3层)的分界线,它屏蔽通信子网的不同,从端到端经网络透明地传送报文,完成端到端通信链路的建立、维护和释放。它解决了建立连接。保证数据无差错的传输。它完成资源子网中两结点的直接逻辑通信,实现通信子网中端到端的透明传输,5.会话层(session layer),1.会话层的基本概念:会话层又称会晤层,其服务就如两个人进行对话。会话层可以被看成是用户与网络之间的接口,其基本任务是负责两主机之间的原始报文的传输。通过会话层提供的一个面向用户的连接服务,为合作的会话层用户之间的对话和活动提供组织和同步所必须的手段,并对数据的传输进行控制和管理。会话是提供建立连接并有序传输数据的一种方法,在OSI体系结构中,会话可以使一个远程终端登录到远地计算机上,并进行文件传输或进行其他的应用。会话一般都是面向连接的,例如,当文件传输到中途时建立的连接突然断了,是从文件的开始重传还是断点续传,这个任务由会话层来完成。,2.会话层的基本功能会话的建立。通信的控制。,6.表示层(presentation layer),表示层向上对应用层服务,向下接受来自会话层的服务。表示层为在应用过程之间传送的信息提供表示方法的服务,它只关心信息发出的语法和语义。,1.表示层为应用层提供的服务有三项内容数据的表示。数据的压缩与解压。定义传输的句法和转换。,7 应用层(application layer),应用层中包含了若干个独立的、用户通用的服务协议模块。网络应用层是OSI的最高层,为网络用户之间的通信提供专用的应用程序(如WWW、FTP、TELNET等)。应用层的主要内容取决于用户的各自需要,这一层涉及的主要内容有:分布数据库、分布计算技术、网络操作系统和分布操作系统、远程文件传输、电子邮件、终端电话及远程作业录入与控制等。,提供用户接口,得到传输的数据。提供面向用户的界面,即实用程序,使得用户可以利用这些程序完成实际的工作。涉及到网络服务、服务公告及服务使用方式。,3.3 TCP/IP参考模型,OSI参考模型研究的初衷是希望为网络体系结构与协议的发展提供一种国际标准,但由于Internet在全世界的飞速发展,使得TCP/IP协议得到了广泛的应用,虽然TCP/IP不是ISO标准,但广泛的使用也使TCP/IP成为一种“实际上的标准”,并形成了TCP/IP参考模型。TCP/IP在不断发展的过程中也吸收了OSI标准中的许多概念及特征。,3.3.1 TCP/IP协议的特点:开放的协议标准,可以免费使用,并且独立于特定的计算机硬件与操作系统。独立于特定的网络硬件,可以运行在局域网、广域网,更适用于互连网中。统一的网络地址分配方案,使得整个TCP/IP设备在网中都具有唯一的地址。标准化的高层协议,可以提供多种可靠的用户服务,3.3.2 TCP/IP参考模型各层的功能,1.OSI与TCP/IP层次对应关系TCP/IP参考模型是在TCP协议是在IP协议出现之后才提出来的,它们两者之间的层次对应关系如图所示:,OSI参考模型 TCP/IP体系结构及分层协议,2.各层的功能,1、网络接口层网络接口层(Host-to-network Layer)也称为主机-网络层。在TCP/IP参考模型中没有详细定义这一层的功能,只是指出通信主机必须采用某种协议连接到网络上,并且能够传输网络数据分组。具体使用哪种协议,在本层里没有规定。实际上根据主机、网络类型与网络拓扑结构的不同,局域网基本上采用了IEEE 802系列的协议,如IEEE 802.3以太网协议、IEEE 802.5令牌环网协议;广域网较常采用的协议有PPP(Point-to-Point)、帧中继、X.25等。事实上,网络接口层运行的协议就是原来物理网络所运行的低两层协议(如以太网)或低三层协议(如X.25)。一般地说,网络接口层协议就运行在网卡中,即网卡驱动程序。,其主要功能:将网际层送来的IP数据报封装为网络帧,然后通过传输媒介发送到网络上;接收并校验传输媒介送来的网络帧,然后还原为IP数据报送到网际层该部分的功能实际上是由各通信网络本身提供的。,2、网层络互连层,主要功能是把数据报通过最佳路径送到目的端。网际层的核心协议IP,提供了无连接的数据报传输服务(不保证送达,不保序)。互联网层最主要的协议是IP协议,其主要功能为:(1)管理IP地址;(2)路由选择;(3)数据包的分片与重组。,其它重要协议:ICMP(Internet Control Message Protocol):主要用于传递控制消息;ARP(Address Resolution Protocol):为已知的IP地址确定相应的MAC地址;RARP(Reverse Address Resolution Protocol):为已知的MAC地址确定相应的IP地址。,正是IP协议才实现了不同物理网络的无缝连接,屏蔽了不同物理网络的细节。在用户看来,Internet是一个单一的网络,因为在IP层,我们看到的是全网(Internet)统一格式的IP分组。事实上,IP分组必须要通过实际的物理网络来传送。不同的物理网络要求有不同的帧格式和帧长度。IP层从网络接口层收到的是前一物理网络的一个去掉了帧头和帧尾的IP分组,这个分组在前一网络中是作为数据被封装的。IP层下面要进行的工作是间接寻径,即寻找为了将此分组送到目标主机,应该将该分组传送到下面哪个IP网关。在确定了下一个网关后,就要确定应该将此分组发送到哪一个物理网络上,这步操作称为直接寻径,网际层的四个主要协议,TCP,UDP,6,17,IP,传输层,网际层,IP分组中的协议域确定目的端的上层协议,3.传输层,传输层的主要功能:提供进程间可靠的传输服务。传输层包括TCP和UDP两种传输协议:TCP是面向连接的传输协议。在数据传输之前建立连接:人际交往协议:Hello,hello back把报文分解为多个段进行传输,在目的站再重新装配这些段,必要时重新传输没有收到或错误的段。因此它是“可靠”的。UDP是无连接的传输协议。在数据传输之前不建立连接;对发送的段不进行校验和确认。因此它是“不可靠”的。,面向连接的 TCP无连接的 UDP,FTP,SMTP,TFTP,DNS,Telnet,SNMP,21,23,25,53,69,161,TCP UDP,应用层,传输层,TCP和UDP都根据端口(port)号把信息提交给上层对应的协议(进程)。,port,4.应用层,应用层协议为文件传输、电子邮件、远程登录、网络管理、Web浏览等应用提供了支持。,4.应用层,应用层(Application Layer)是TCP/IP协议簇的最高层,他包含了OSI参考模型中会话层、表示层和应用层这些高层协议的所有功能。目前,互联网上常用的应用层协议有下面几种。(1)简单邮件传输协议(SMTP):负责互联网中电子邮件的传递。(2)超文本传输协议(HTTP):提供Web服务。(3)远程登录协议(TELNET):实现对主机的远程登录功能,常用的电子公告牌系统BBS使用的就是这个协议。(4)文件传输协议(FTP):用于交互式文件传输,如下载软件使用的就是这个协议。,(5)名字服务(DNS):实现逻辑地址(如IP地址)到域名地址的转换。(6)简单网络管理协议(SNMP):对网络设备和应用提供相应的管理。(7)路由协议(如RIP/OSPF):完成网络设备间路由信息的交换和更新。这些协议中用户经常接触到的有SMTP、HTTP、TELNET、FTP。一些协议是最终用户不需要直接了解但又必不可少的,如DNS、SNMP、,TCP/IP协议栈,TCP/IP模型的意义,TCP/IP模型产生于实践中,无缝隙地连接多个网络的能力一开始就被确定为它的主要设计目标。协议先于模型出现,模型实际上只是对已有协议的描述,因而协议与模型配合得很好。与OSI模型相比,它十分简单,然而却十分实用、十分有效;历史比OSI悠久,得到许多大公司和学术部门的强力支持,因而使用十分普遍,已经占领了广大的市场。TCP/IP在其成功的基础上坚持不断地发展和完善,他们始终密切注视着OSI的动向,不断吸收其成功之处。这些都使TCP/IP的地位日益巩固。,3.4 OSI与TCP/IP两种模型的比较,都采用了协议分层方法,将庞大且复杂的问题划分为若干个较容易处理的小问题。各协议层次的功能大体上相同,都存在网络层、传输层和应用层。两者都可以解决异构网的互连,实现世界上不同厂家生产的计算机之间的通信。都是计算机通信的国际性标准。OSI是国际通用的,而TCP/IP则是当前工业界使用最多的。都基于一种协议集的概念,协议集是一簇完成特定功能的相互独立的协议。,3.4.2 OSI与TCP/IP的差别,OSI模型定义了服务、接口和协议三个主要的概念,并将它们严格区分,而 TCP/IP参考模型最初没有明确区分服务、接口和协议。后来,人们试图改变它以便接近于OSI。因此,OSI模型中的协议比TCP/IP的协议具有更好的隐藏性。OSI参考模型是在具体协议制定之前设计的,这意味着该模型没有偏向于任何特定的协议,因此非常通用。但却造成了在模型设计时考虑不很全面,有时不能完全指导协议某些功能的实现,从而反过来导致对模型的修修补补。TCP/IP正好相反,协议在先,模型在后。模型实际上只不过是对已有协议的抽象描述,因此不会出现协议不能匹配模型的情况。,OSI模型共分为7层,而TCP/IP只有4层,除网络层、传输层和应用层外,其它各层都不相同。另外,TCP/IP虽然也分层次,但层次之间的调用关系也不像OSI那么严格。OSI最初只考虑到用一种标准的公用数据网将各种不同的系统互连在一起。而TCP/IP在设计之初就着重考虑不同网络之间的互连问题,并将网际协议IP作为一个单独的重要的层次。OSI认为数据传输的可靠性应该由点到点的数据链路层和端到端的传输层来共同保证。而TCP/IP分层思想认为,可靠性是端到端的问题,应该由传输层解决。它允许单个的链路或机器丢失或损坏数据,网络本身不进行数据恢复,可靠性的工作是由主机完成。,OSI 作为国际标准由多个国家共同努力而制定的,不得不照顾到各个国家的利益,有时不得不走一些折衷路线,造成标准大而全,效率却低。而TCP/IP参考模型并不是作为国际标准开发的,它只是对一种已有标准的概念性描述。所以,它的设计目的单一,影响因素少,协议简单高效,可操作性强。,3.4.3 网络参考模型的建议,经过前面的分析和比较,我们可以得出:OSI的七层协议体系结构既复杂又不实用,但其概念清楚。TCP/IP的协议得到了全世界的承认,但它实际上并没有一个完整的体系结构。因此,我们在学习计算机网络的体系结构时往往采用一种折衷的办法,即把OSI参考模型的会话层与表示层去掉,从而形成一种原理体系结构,它只有五层,如图所示。,本章小结,计算机网络是一个十分复杂的系统,它涉及到计算机技术、通信技术、多媒体技术等多个领域。这样一个复杂而庞大的系统要高效、可靠地运转,网络中的各个部分就必须遵守一整套合理而严谨的结构化管理规则。计算机网络就是按照高度结构化的设计思想、采用功能分层原理的方法来实现的。本章我们首先介绍了网络体系结构和网络协议的基本概念,让读者搞清楚网络为什么要采用分层体系结构,它的好处在哪里;接着详细探讨了OSI和TCP/IP两种参考模型的层次结构与层次功能,目的是让读者真正掌握各层次在数据传输中的作用;然后我们对两类参考模型进行了比较,使读者弄明白两类模型的区别何在;最后我们经过分析比较得出了一种适合于学习的网络参考模型。,