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