第2章计算机网络体系结构 第2章 计算机网络体系结构 基本要求:掌握OSI/RM的层次结构、各层的PDU单元,掌握服务、接口和协议的概 念,掌握TCP/IP的层次结构:理解网络分层的作用:了解OSI/RM和TCPP模型的 区别。 本章难点:服务、接口和协议的概念 教学时数和实验:4学时,无实验 2.1计算机网络体系结构概述 在上一章中,我们对计算机网络作了概述。在本章中,我们将首先为同学们建立起关 于计算机网络体系结构的概念,然后介绍两个重要的计算机网络体系结构模型:ISO/OSI 参考模型和TCPP模型。 2.1.1为什么要建立计算机网络体系结构 为了能够使不同地理分布、且功能相对独立的计算机之间实现资源共享,计算机网络 系统需要涉及和解决许多复杂的问题,包括信号传输、差错控制、寻址、数据交换和提供 用户接口等一系列问题。计算机网络体系结构是我们为简化这些问题的研究、设计与实现 而抽象出来的一种结构模型。 结构模型有多种,如平面模型、层次模型和网状模型等,对于复杂的计算机网络系统, 般采用层次模型。在层次模型中,往往将系统所要实现的复杂功能分化为若干个相对简 单的细小功能,每一项分功能以相对独立的方式去实现。这样就有助于我们将复杂的问题 简化为若干个相对简单的问题,从而达到分而治之、各个击破的目的。就好比生产汽车, 从用户需求开始到汽车整机下线洗及需求分析、图纸设计、零部件生产和整机装配等众多 问题,如果不把这些问题进行一定的划分并实施人员分工的话,那么整个汽车生产过程将 会变得非常复杂甚至是混乱,所以几乎所有的汽车生产厂商都会将汽车生产的复杂过程分 解为几个相对简单的部分,并由不同的部门或人员去完成相应的工作。例如,由市场调查 与预测部门去完成关于用户对汽车性能、外观和价格等方面的需求分析:设计部门根据市 场调查与预测部门所递交的需求分析结果确定新车型,并产生新车型的设计图纸:零部件 生产部门根据设计部门所提供的设计图纸进行零部件生产:整机装配部门负责将有关的零 部件装配成汽车整机,最后完成一辆汽车的生产
第 2 章 计算机网络体系结构 1 第2章 计算机网络体系结构 基本要求:掌握 OSI/RM 的层次结构、各层的 PDU 单元,掌握服务、接口和协议的概 念,掌握 TCP/IP 的层次结构;理解网络分层的作用;了解 OSI/RM 和 TCP/IP 模型的 区别。 本章难点:服务、接口和协议的概念 教学时数和实验:4 学时,无实验 2.1 计算机网络体系结构概述 在上一章中,我们对计算机网络作了概述。在本章中,我们将首先为同学们建立起关 于计算机网络体系结构的概念,然后介绍两个重要的计算机网络体系结构模型:ISO/OSI 参考模型和 TCP/IP 模型。 2.1.1 为什么要建立计算机网络体系结构 为了能够使不同地理分布、且功能相对独立的计算机之间实现资源共享,计算机网络 系统需要涉及和解决许多复杂的问题,包括信号传输、差错控制、寻址、数据交换和提供 用户接口等一系列问题。计算机网络体系结构是我们为简化这些问题的研究、设计与实现 而抽象出来的一种结构模型。 结构模型有多种,如平面模型、层次模型和网状模型等,对于复杂的计算机网络系统, 一般采用层次模型。在层次模型中,往往将系统所要实现的复杂功能分化为若干个相对简 单的细小功能,每一项分功能以相对独立的方式去实现。这样就有助于我们将复杂的问题 简化为若干个相对简单的问题,从而达到分而治之、各个击破的目的。就好比生产汽车, 从用户需求开始到汽车整机下线涉及需求分析、图纸设计、零部件生产和整机装配等众多 问题,如果不把这些问题进行一定的划分并实施人员分工的话,那么整个汽车生产过程将 会变得非常复杂甚至是混乱,所以几乎所有的汽车生产厂商都会将汽车生产的复杂过程分 解为几个相对简单的部分,并由不同的部门或人员去完成相应的工作。例如,由市场调查 与预测部门去完成关于用户对汽车性能、外观和价格等方面的需求分析;设计部门根据市 场调查与预测部门所递交的需求分析结果确定新车型,并产生新车型的设计图纸;零部件 生产部门根据设计部门所提供的设计图纸进行零部件生产;整机装配部门负责将有关的零 部件装配成汽车整机,最后完成一辆汽车的生产
2 计算机网络基础 2.1.2计算机网络的分层模型 将上述分层的思想或方法运用于计算机网络中,就产生了计算机网络的分层模型。在 实施网络分层时要依据以下原则: ●根据功能进行抽象分层,每个层次所要实现的功能或服务均有明确的规定。 。每层功能的选择应有利于标准化。 ●不同的系统分成相同的层次,对等层次具有相同功能。 ·高层使用下层提供的服务时,下层服务的实现是不可见的 ●层的数目要适当。层次太少功能不明确,层次太多体系结构过于庞大。 +1层协议 实体长 +1层 >实体 N+L层 N层协议 N层 实体 实体 N层 接节 “接行 N-1层 实体长 -1层协议 >实体 N1层 图2.1网络分层模型的示意图 图2.1给出了计算机网络分层模型的示意图,该模型将计算机网络中的每台机器抽象为 若干层((layer), 每层实现 一种相对独立的功能。分层模型涉及下面 些重要的术语 ·实体与对等实体 每一层中,用于实现该层功能的活动元素被称为实体(entity),包括该层上实际存在的 所有硬件与软件,如终端、电子邮件系统、应用程序、进程等。 不同机器上位于同一层次、完成相同功能的实体被称为对等(peer to peer)实体。 ·协议 为了使两个对等实体之间能够有效地通信,对等实体需要就交换什么信息、如何交换 信息等问题制定相应的规则或进行某种约定。这种对等实体之间交换数据或通信时所必须 遵守的规则或标准的集合称为协议(protocol)。 协议由语法、语义和语序三大要素构成。语法包括数据格式、信号电平等:语义指协议 语法成分的含义 包括协调用的控制信息和差错管理:语序包括时序控制和速度匹配关系。 ·服务与接口 在网络分层结构模型中,每一层为相邻的上一层所提供的功能称为服务。N层使用N- 层所提供的服务,向N+1层提供功能更强大的服务。N层使用N1层所提供的服务时并不 需要知道N-】层所提供的服务是如何实现的,而只需要知道下一层可以为自己提供什么样 的服务,以及通过什么形式提供。N层向N+1层提供的服务通过N层和N+1层之间的接口 来实现。接口定义下层向其相邻的上层提供的服务及原语操作,并使下层服务的实现细节 对上层是透明的。就好比上面汽车生产的例子中,制造工程师并不关心汽车图纸是怎样设 计出来的,他们只关心能否得到一份可用于进行零部件生产的图纸以及通过什么渠道获得
2 计算机网络基础 2.1.2 计算机网络的分层模型 将上述分层的思想或方法运用于计算机网络中,就产生了计算机网络的分层模型。在 实施网络分层时要依据以下原则: ● 根据功能进行抽象分层,每个层次所要实现的功能或服务均有明确的规定。 ● 每层功能的选择应有利于标准化。 ● 不同的系统分成相同的层次,对等层次具有相同功能。 ● 高层使用下层提供的服务时,下层服务的实现是不可见的 ● 层的数目要适当。层次太少功能不明确,层次太多体系结构过于庞大。 实体 实体 实体 实体 实体 实体 N+1层 N+1层 N层 N层 N-1层 N-1层 N+1层协议 N层协议 N-1层协议 接口 接口 接口 接口 图 2.1 网络分层模型的示意图 图 2.1 给出了计算机网络分层模型的示意图,该模型将计算机网络中的每台机器抽象为 若干层(layer),每层实现一种相对独立的功能。分层模型涉及下面一些重要的术语。 ● 实体与对等实体 每一层中,用于实现该层功能的活动元素被称为实体(entity),包括该层上实际存在的 所有硬件与软件,如终端、电子邮件系统、应用程序、进程等。 不同机器上位于同一层次、完成相同功能的实体被称为对等(peer to peer)实体。 ● 协议 为了使两个对等实体之间能够有效地通信,对等实体需要就交换什么信息、如何交换 信息等问题制定相应的规则或进行某种约定。这种对等实体之间交换数据或通信时所必须 遵守的规则或标准的集合称为协议(protocol)。 协议由语法、语义和语序三大要素构成。语法包括数据格式、信号电平等;语义指协议 语法成分的含义,包括协调用的控制信息和差错管理;语序包括时序控制和速度匹配关系。 ● 服务与接口 在网络分层结构模型中,每一层为相邻的上一层所提供的功能称为服务。N 层使用 N-1 层所提供的服务,向 N+1 层提供功能更强大的服务。N 层使用 N-1 层所提供的服务时并不 需要知道 N-1 层所提供的服务是如何实现的,而只需要知道下一层可以为自己提供什么样 的服务,以及通过什么形式提供。N 层向 N+1 层提供的服务通过 N 层和 N+1 层之间的接口 来实现。接口定义下层向其相邻的上层提供的服务及原语操作,并使下层服务的实现细节 对上层是透明的。就好比上面汽车生产的例子中,制造工程师并不关心汽车图纸是怎样设 计出来的,他们只关心能否得到一份可用于进行零部件生产的图纸以及通过什么渠道获得
第2章计算机网络体系结构 这份图纸。 2.1.3关于网络分层模型的一个类比 为了帮助同学们更好地理解上面所介绍的实体、协议、服务、接口等概念,我们以如 图2.2所示的邮政系统为例来说明这个问题。假设处于A地的用户A要给处于B地的用户 B发送信件,则在信件传递的整个过程中,主要涉及到用户、邮局和运输部门三个层次。用 户A写好信的内容后,将它装在信封里并投入到邮筒里交由邮局A寄发,邮局收到信后 首先进行信件的分拣和整理,然后装入一个统一的邮包交付A地运输部门进行运输,如航 空信交民航部门,平信交铁路或公路运输部门等:B地相应的运输部门得到装有该信件的货 物箱后,将邮包从其中取出,并交给B地的邮局,B地的邮局将信件从邮包中取出投到用 户的信箱中,从而用户B收到了来自用户A的信件。 在这过程中,写信人和收信人都是最终用户,处于整个邮政系统的最高层:邮局处于 用户的下一层,是为用户服务的,对于用户来说,他只需知道如何按邮局的规定将信件内 容装入标准信封并投入邮局设置的邮筒就行了,而无需知道邮局是如何实现寄信过程的, 这个过程对用户来说是透明的。运输部门是为邮局服务的,并且负责实际的邮件的运送, 处于整个邮政系统的最底层。邮局只需将装有信件的邮包送到运输部门的货物运输接收窗 口,而无需操心邮包作为货物是如何到达异地的。在此邮筒就相当于邮局为用户提供服务 的接口,而运输部门的货物运输接收窗口则相当于运输部门为邮局提供服务的接口。 地 B地 用户间约定 用户/邮局约定 小信 邮局问约定 邮局A 邮局B 邮局/运输部门约定 个邮包 运输部门间约定 运输部门 运输部门 货物箱 图22邮政系统模型 另外,写信人与收信人、本地邮局和远地邮局、本地运输部门和远地运输部门则构成 了邮政系统分层模型中不同层上的对等实体。为了能将信件准确地由发信人送达收信人, 对等实体之间必须有一些约定或惯例。例如,写信时必须采用双方都懂的语言文字和文体 开头是对方称谓,最后是落款等。这样,对方收到信后才可以读懂信的内容,知道是谁写 的,什么时候写的等等。同样地,邮局之间要就邮戳的加盖、邮包格式等制定统一的规则 而运输部门之间也会就货物运输制定有关的航运规定。这些规则或约定就相当于网络分层 模型中的协议。从这里可以看出,协议是“水平的”,是控制对等实体间通信的规则:服务
第 2 章 计算机网络体系结构 3 这份图纸。 2.1.3 关于网络分层模型的一个类比 为了帮助同学们更好地理解上面所介绍的实体、协议、服务、接口等概念,我们以如 图 2.2 所示的邮政系统为例来说明这个问题。假设处于 A 地的用户 A 要给处于 B 地的用户 B 发送信件,则在信件传递的整个过程中,主要涉及到用户、邮局和运输部门三个层次。用 户 A 写好信的内容后,将它装在信封里并投入到邮筒里交由邮局 A 寄发,邮局收到信后, 首先进行信件的分拣和整理,然后装入一个统一的邮包交付 A 地运输部门进行运输,如航 空信交民航部门,平信交铁路或公路运输部门等;B 地相应的运输部门得到装有该信件的货 物箱后,将邮包从其中取出,并交给 B 地的邮局,B 地的邮局将信件从邮包中取出投到用 户的信箱中,从而用户 B 收到了来自用户 A 的信件。 在这过程中,写信人和收信人都是最终用户,处于整个邮政系统的最高层;邮局处于 用户的下一层,是为用户服务的,对于用户来说,他只需知道如何按邮局的规定将信件内 容装入标准信封并投入邮局设置的邮筒就行了,而无需知道邮局是如何实现寄信过程的, 这个过程对用户来说是透明的。运输部门是为邮局服务的,并且负责实际的邮件的运送, 处于整个邮政系统的最底层。邮局只需将装有信件的邮包送到运输部门的货物运输接收窗 口,而无需操心邮包作为货物是如何到达异地的。在此邮筒就相当于邮局为用户提供服务 的接口,而运输部门的货物运输接收窗口则相当于运输部门为邮局提供服务的接口。 用户A (写信人) 邮局A 运输部门 用户B (收信人) 邮局B 运输部门 用户间约定 邮局间约定 运输部门间约定 用户/邮局约定 邮局/运输部门约定 信 邮包 货物箱 A地 B地 信 邮包 图 2.2 邮政系统模型 另外,写信人与收信人、本地邮局和远地邮局、本地运输部门和远地运输部门则构成 了邮政系统分层模型中不同层上的对等实体。为了能将信件准确地由发信人送达收信人, 对等实体之间必须有一些约定或惯例。例如,写信时必须采用双方都懂的语言文字和文体, 开头是对方称谓,最后是落款等。这样,对方收到信后才可以读懂信的内容,知道是谁写 的,什么时候写的等等。同样地,邮局之间要就邮戳的加盖、邮包格式等制定统一的规则, 而运输部门之间也会就货物运输制定有关的航运规定。这些规则或约定就相当于网络分层 模型中的协议。从这里可以看出,协议是“水平的”,是控制对等实体间通信的规则;服务
4 计算机网络基础 是“垂直的”,是通过层间接口由下层向上层提供的。 从上述关于邮政系统的类比中我们还可以发现,尽管对收信人来说,信是来自于写信 人,但实际上这封信在A地历经了由用户→邮局→运输部门的过程,在B地则历经了从运 输部门→邮局)用户的过程。类以地,网络分层结构模型中的数据的传输,也不是直接从 发送方的最高层到接收方的最高层。在发送方,每一层都把协议数据交给它的下一层,直 到最下层:在接收方,则由最下层开始一层一层地往上送至最高层。在发送方由上而下的 过程中,每一层为了实现本层的功能都要加上相应的控制信息,从而被传输的数据在形式 上是战来越有杂:而到了接收方,在自下而上的时程中,每一层都要卸下在发送方对层 所加上的那些控制信息。就如同信件到了本地邮局要装入邮包中,邮包到了本地运输部门 要装入货运箱中,而一旦到达远端的运输部门,则要将邮包重新从货运箱中取出交给远端 邮局,而远端邮局要将信件重新从邮包中取出交给用户。计算机网络中分别将发送方和接 收方所历经的这种过程称为数据封装和数据拆封。 2.1.4计算机网络体系结构 引入分层模型后,我们将计算机网络系统中的层、各层中的协议以及层次之间接口的 集合称为计算机网络体系结构。但是,即使是遵循了前面所提到的网络分层原则,不同的 网络组织机构或生产厂商所给出计算机网络体系结构也不一定是相同的,关于层的数量、 各层的名称、内容与功能都可能会有所不同。 在计算机网络的发展历史中,曾出现过多种不同的计算机网络体系结构,其中包括BM 公司在1974年提出的SNA(系统网络结构)模型、DEC公司于1975年提出的DNA(分布 型网络的数字网络体系)模型等。这些由不同厂商自行提出的专用网络模型,在体系结构 上差异很大 至相互之间互不相容,更谈不上将运用不同厂商 产品的网络相互连 起宋 以构成更大的网络系统。体系结构的专用性实际上代表了一种封闭性,尤其在上个世纪7心 年代末至80年代初,一方面是计算机网络规模与数量的急剧增长,另一方面是许多按不同 体系结构实现的网络产品之间难以进行互操作,严重阻碍了计算机网络的发展。于是关于 计算机网络体系结构的标准化工作被提上了有关国际标准组织的议事日程。 2.2ISO/OSl网络参考模型 1979年,国际标准化组织(IS0)成立了一个分委员会来专门研究一种用于开放系统的 计算机网络体系结构,并于I983年正式提出了开放式系统互连OSl(Open System Interconnection)参考模型,简称OSI/RM。这是一个定义连接异种计算机的标准体系结构, 所谓开放是指任何计算机系统只要遵守这一国际标准,就能同其他位于世界上任何地方的、 也遵守该标准的计算机系统进行通信。 2.2.1IS0/Sl七层模型 ISO/OSI参考模型是一种将异构系统互连的分层结构,它定义了一种抽象结构,而并非
4 计算机网络基础 是“垂直的”,是通过层间接口由下层向上层提供的。 从上述关于邮政系统的类比中我们还可以发现,尽管对收信人来说,信是来自于写信 人,但实际上这封信在 A 地历经了由用户Æ邮局Æ运输部门的过程,在 B 地则历经了从运 输部门Æ邮局Æ用户的过程。类似地,网络分层结构模型中的数据的传输,也不是直接从 发送方的最高层到接收方的最高层。在发送方,每一层都把协议数据交给它的下一层,直 到最下层;在接收方,则由最下层开始一层一层地往上送至最高层。在发送方由上而下的 过程中,每一层为了实现本层的功能都要加上相应的控制信息,从而被传输的数据在形式 上是越来越复杂;而到了接收方,在自下而上的过程中,每一层都要卸下在发送方对等层 所加上的那些控制信息。就如同信件到了本地邮局要装入邮包中,邮包到了本地运输部门 要装入货运箱中,而一旦到达远端的运输部门,则要将邮包重新从货运箱中取出交给远端 邮局,而远端邮局要将信件重新从邮包中取出交给用户。计算机网络中分别将发送方和接 收方所历经的这种过程称为数据封装和数据拆封。 2.1.4 计算机网络体系结构 引入分层模型后,我们将计算机网络系统中的层、各层中的协议以及层次之间接口的 集合称为计算机网络体系结构。但是,即使是遵循了前面所提到的网络分层原则,不同的 网络组织机构或生产厂商所给出计算机网络体系结构也不一定是相同的,关于层的数量、 各层的名称、内容与功能都可能会有所不同。 在计算机网络的发展历史中,曾出现过多种不同的计算机网络体系结构,其中包括 IBM 公司在 1974 年提出的 SNA(系统网络结构)模型、DEC 公司于 1975 年提出的 DNA(分布 型网络的数字网络体系)模型等。这些由不同厂商自行提出的专用网络模型,在体系结构 上差异很大,甚至相互之间互不相容,更谈不上将运用不同厂商产品的网络相互连接起来 以构成更大的网络系统。体系结构的专用性实际上代表了一种封闭性,尤其在上个世纪 70 年代末至 80 年代初,一方面是计算机网络规模与数量的急剧增长,另一方面是许多按不同 体系结构实现的网络产品之间难以进行互操作,严重阻碍了计算机网络的发展。于是关于 计算机网络体系结构的标准化工作被提上了有关国际标准组织的议事日程。 2.2 ISO/OSI 网络参考模型 1979 年,国际标准化组织(ISO)成立了一个分委员会来专门研究一种用于开放系统的 计算机网络体系结构,并于 1983 年正式提出了开放式系统互连 OSI(Open System Interconnection)参考模型,简称 OSI/RM。这是一个定义连接异种计算机的标准体系结构, 所谓开放是指任何计算机系统只要遵守这一国际标准,就能同其他位于世界上任何地方的、 也遵守该标准的计算机系统进行通信。 2.2.1 ISO/OSI 七层模型 ISO/OSI 参考模型是一种将异构系统互连的分层结构,它定义了一种抽象结构,而并非
第2章计算机网络体系结构 具体实现的描述。OSI参考模型如图2.3所示,由下而上共有七层,分别为物理层、数据链 路层、网络层、传输层、会话层、表示层、应用层,也被依次称为O$第一层、第二层、… 第七层。 主机X 主机Y 应用层协议 应用层 应用层 APDU 接口 表示层协议 表示层 表示层 PPDU 接口 会话层协议 会话层 会话层 SPDU 接口 传输层协议 传输层 传输层 分段 接口 网络层协议 网络层 网络层 分组 接口1 数据链路层协议 数据链路层 数据链路层 接 物理层 物理媒介.… 物理层 比特流 图2.3IS0/0SI七层模型 2.2.2各层功能简介 1.物理层(Physical Laver) 物理层位于OS参考模型的最低层,它直接面向原始比特流的传输。为了实现原始比 特流的物理传输,物理层必须解决好包括传输介质、信道类型、数据与信号之间的转换、信号 传输中的衰减和噪声等在内的一系列问题。另外,物理层标准要给出关于物理接口的机械、 电气、功能和规程特性,以便于不同的制造厂家既能够根据公认的标准各自独立地制造设 备,又能使各个厂家的产品能够相互兼容 2.数据链路层(Data Link Layer) 在物理层发送和接收数据的过程中,会出现一些物理层自己不能解决的问题。例如 当两个节点同时试图在一条线路上发送数据时该如何处理?节点如何知道它所接收的数据 是否正确?如果噪声改变了一个分组的目标地址,节点如何察觉它丢失了本应收到的分组 呢?这些都是数据链路层所必须负责的工作。 数据链路层涉及相邻节点之间的可靠数据传输,数据链路层通过加强物理层传输原始
第 2 章 计算机网络体系结构 5 具体实现的描述。OSI 参考模型如图 2.3 所示,由下而上共有七层,分别为物理层、数据链 路层、网络层、传输层、会话层、表示层、应用层,也被依次称为 OSI 第一层、第二层、……、 第七层。 应用层 表示层 会话层 传输层 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 APDU PPDU SPDU 分段 分组 帧 比特流 主机X 主机Y 网络层 数据链路层 物理层 应用层协议 表示层协议 会话层协议 传输层协议 网络层协议 数据链路层协议 物理媒介 接口 接口 接口 接口 接口 接口 图 2.3 ISO/OSI 七层模型 2.2.2 各层功能简介 1.物理层(Physical Layer) 物理层位于 OSI 参考模型的最低层,它直接面向原始比特流的传输。为了实现原始比 特流的物理传输,物理层必须解决好包括传输介质、信道类型、数据与信号之间的转换、信号 传输中的衰减和噪声等在内的一系列问题。另外,物理层标准要给出关于物理接口的机械、 电气、功能和规程特性,以便于不同的制造厂家既能够根据公认的标准各自独立地制造设 备,又能使各个厂家的产品能够相互兼容。 2.数据链路层(Data Link Layer) 在物理层发送和接收数据的过程中,会出现一些物理层自己不能解决的问题。例如, 当两个节点同时试图在一条线路上发送数据时该如何处理?节点如何知道它所接收的数据 是否正确?如果噪声改变了一个分组的目标地址,节点如何察觉它丢失了本应收到的分组 呢?这些都是数据链路层所必须负责的工作。 数据链路层涉及相邻节点之间的可靠数据传输,数据链路层通过加强物理层传输原始
6 计算机网络基础 比特的功能,使之对网络层表现为一条无错线路。为了能够实现相邻节点之间无差错的数 据传送,数据链路层在数据传输过程中提供了确认、差错控制和流量控制等机制。 3.网络层Network Layer) 网络中的两台计算机进行通信时,中间可能要经过许多中间结点甚至不同的通信子网。 网络层的任务就是在通信子网中选择一条合适的路径,使发送端传输层所传下来的数据能 铭通过所选择的路径到达目的瑞。 为了实现路径选择,网络层必须使用寻址方案来确定存在哪些网络以及设备在这些网 络中所处的位置,不同网络层协议所采用的寻址方案是不同的。在确定了目标结点的位置后, 网络层还要负责引导数据包正确地通过网络,找到通过网络的最优路径,即路由选择。如 果子网中同时出现过多的分组,它们将相互阻塞通路并可能形成网络瓶颈,所以网络层还 需要提供拥塞控制机制以避免此类现象的出现。另外,网络层还要解决异构网络互连问题。 4.传输层(Transpor Layer) 传输层是OS!七层模型中唯一负责端到端节点间数据传输和控制功能的层。传输层是 OS1七层模型中承上启下的层,它下面的三层主要面向网络通信,以确保信息被准确有效地 传输:它上面的三个层次则面向用户主机,为用户提供各种服务。 传输层通过弥补网络层服务质量的不足,为会话层提供端到端的可靠数据传输服务 它为会话层屏蔽了传输层以下的数据通信的细节,使会话层不会受到下三层技术变化的影 响。但同时,它又依靠下面的三个层次控制实际的网络通信操作,来完成数据从源到目标 的传输。传输层为了向会话层提供可靠的端到端传输服务,也使用了差错控制和流量控制 等机制。 5.会i话层(Session Laver) 会话层的功能是在两个节点间建立、维护和释放面向用户的连接。它是在传输连接的 基础上建立会话连接,并进行数据交换管理,允许数据进行单工、半双工和全双工的传送。 会话层提供了令牌管理和同步两种服务功能 6.表示层(Presentation Layer) 表示层以下的各层只关心可靠的数据传输,而表示层关心的是所传输数据的语法和语 义。它主要涉及处理在两个通信系统之间所交换信息的表示方式,包括数据格式变换、数 据加密与解密、数据压缩与恢复等功能 7.应用层(Application Layer) 应用层是OSI参考模型的最高层,负责为用户的应用程序提供网络服务。与OSI其他 层不同的是,它不为任何其他OSI层提供服务,而只是为OSI模型以外的应用程序提供服 务。包括为相互通信的应用程序或进行之间建立连接、进行同步,建立关于错误纠正和控 制数据完整性过程的协商等。应用层还包含大量的应用协议,如分布式数据库的访问、文 件的交换、电子邮件、虚拟终端等。 2.2.3OSl模型中的数据传输过程 在OSI模型中,同等实体间所传输的数据称为协议数据单元PDU(Protocel Data Unit) 如图2.4所示,假设计算机1上的某个应用程序要发送数据给计算机2,则该应用程序把数
6 计算机网络基础 比特的功能,使之对网络层表现为一条无错线路。为了能够实现相邻节点之间无差错的数 据传送,数据链路层在数据传输过程中提供了确认、差错控制和流量控制等机制。 3.网络层(Network Layer) 网络中的两台计算机进行通信时,中间可能要经过许多中间结点甚至不同的通信子网。 网络层的任务就是在通信子网中选择一条合适的路径,使发送端传输层所传下来的数据能 够通过所选择的路径到达目的端。 为了实现路径选择,网络层必须使用寻址方案来确定存在哪些网络以及设备在这些网 络中所处的位置,不同网络层协议所采用的寻址方案是不同的。在确定了目标结点的位置后, 网络层还要负责引导数据包正确地通过网络,找到通过网络的最优路径,即路由选择。如 果子网中同时出现过多的分组,它们将相互阻塞通路并可能形成网络瓶颈,所以网络层还 需要提供拥塞控制机制以避免此类现象的出现。另外,网络层还要解决异构网络互连问题。 4.传输层(Transport Layer) 传输层是 OSI 七层模型中唯一负责端到端节点间数据传输和控制功能的层。传输层是 OSI 七层模型中承上启下的层,它下面的三层主要面向网络通信,以确保信息被准确有效地 传输;它上面的三个层次则面向用户主机,为用户提供各种服务。 传输层通过弥补网络层服务质量的不足,为会话层提供端到端的可靠数据传输服务。 它为会话层屏蔽了传输层以下的数据通信的细节,使会话层不会受到下三层技术变化的影 响。但同时,它又依靠下面的三个层次控制实际的网络通信操作,来完成数据从源到目标 的传输。传输层为了向会话层提供可靠的端到端传输服务,也使用了差错控制和流量控制 等机制。 5.会话层(Session Layer) 会话层的功能是在两个节点间建立、维护和释放面向用户的连接。它是在传输连接的 基础上建立会话连接,并进行数据交换管理,允许数据进行单工、半双工和全双工的传送。 会话层提供了令牌管理和同步两种服务功能。 6.表示层(Presentation Layer) 表示层以下的各层只关心可靠的数据传输,而表示层关心的是所传输数据的语法和语 义。它主要涉及处理在两个通信系统之间所交换信息的表示方式,包括数据格式变换、数 据加密与解密、数据压缩与恢复等功能。 7.应用层(Application Layer) 应用层是 OSI 参考模型的最高层,负责为用户的应用程序提供网络服务。与 OSI 其他 层不同的是,它不为任何其他 OSI 层提供服务,而只是为 OSI 模型以外的应用程序提供服 务。包括为相互通信的应用程序或进行之间建立连接、进行同步,建立关于错误纠正和控 制数据完整性过程的协商等。应用层还包含大量的应用协议,如分布式数据库的访问、文 件的交换、电子邮件、虚拟终端等。 2.2.3 OSI 模型中的数据传输过程 在 OSI 模型中,同等实体间所传输的数据称为协议数据单元 PDU (Protocel Data Unit)。 如图 2.4 所示,假设计算机 1 上的某个应用程序要发送数据给计算机 2,则该应用程序把数
第2章计算机网络体系结构 据交给了应用层,应用层在数据前面加上应用层的报头即H,从而得到一个应用层的数据 包。报头header)及报尾(tailer)是指对等层之间相互通信所需的控制信息,增加报头(报尾) 的过程称为封装。封装后得到的应用层数据包被称为应用层协议数据单元(APDU)。封装 完成后应用层将该APDU交给表示层。 表示层接收应用层传下来的APDU,它并不关心APDU中哪一部分是用户数据,哪一 部分是报头,它只在收到的APDU前面加上包含本层控制信息的报头H6,构成表示层的协 议数据单元PPDU,再交给会话层。 这一过程重复进行直到数据抵达物理层。数据在传输层封装后得到的协议数据单元称 为分段(segment),在网络层被封装后得到的协议数据单元被称为分组(packet),在数据链路 层被封装后得到的协议数据单元被称为帧(frame)。物理层在收到数据链路层送过来的数据 后,并不象其它层那样对接收的数据加上本层的控制信息,而是直接将它转换为电信号通 过传输介质送到接收端,所以在物理层不存在专门的协议数据单元名称。在接收端,当数 据一层层向上传递时,各种报头(尾)将被一层一层地剥去。例如,数据链路层在将数据交给 网络层之前要去掉帧的封装即帧头与顿尾,网络层则在将数据交给传输层之前要去掉分组 报头,依此类推,最后数据以应用层PDU格式到达接收方的应用层。 计算机A 计算机B 数据 APT m数据…≥ APDU 6数据 ,。,, 6 PPDU 数据 SPDU 数据 分段 分组 数拇 2 比特流 物理传输媒体) 图2.50S1的数据传输
第 2 章 计算机网络体系结构 7 据交给了应用层,应用层在数据前面加上应用层的报头即 H7,从而得到一个应用层的数据 包。报头(header)及报尾(tailer)是指对等层之间相互通信所需的控制信息,增加报头(报尾) 的过程称为封装。封装后得到的应用层数据包被称为应用层协议数据单元(APDU)。封装 完成后应用层将该 APDU 交给表示层。 表示层接收应用层传下来的 APDU,它并不关心 APDU 中哪一部分是用户数据,哪一 部分是报头,它只在收到的 APDU 前面加上包含本层控制信息的报头 H6,构成表示层的协 议数据单元 PPDU,再交给会话层。 这一过程重复进行直到数据抵达物理层。数据在传输层封装后得到的协议数据单元称 为分段(segment),在网络层被封装后得到的协议数据单元被称为分组(packet),在数据链路 层被封装后得到的协议数据单元被称为帧(frame)。物理层在收到数据链路层送过来的数据 后,并不象其它层那样对接收的数据加上本层的控制信息,而是直接将它转换为电信号通 过传输介质送到接收端,所以在物理层不存在专门的协议数据单元名称。在接收端,当数 据一层层向上传递时,各种报头(尾)将被一层一层地剥去。例如,数据链路层在将数据交给 网络层之前要去掉帧的封装即帧头与帧尾,网络层则在将数据交给传输层之前要去掉分组 报头,依此类推,最后数据以应用层 PDU 格式到达接收方的应用层。 数据 1 1010011 比 特 流 010111010 2 3 4 5 6 7 AP1 1 2 3 4 5 6 7 AP1 数据 计算机A 计算机B 物理传输媒体 H7 H6 H5 数据 数据 H4 H3 数据 数据 H2 数据 T2 比特流 帧 分段 分组 APDU PPDU SPDU 图 2.5 OSI 的数据传输
R 计算机网络基础 2.3TCPP模型 2.3.1 TCP/IP模型 TCPAP模型是由美国国防部创建的,所以有时又称DoD(Department of Defense)模型。 TCPP模型分为四层,由下而上分别为网络访问层、网际层、传输层、应用层,如图2.6 所示。应该指出,TCPP是OSI模型之前的产物,所以两者间不存在严格的层对应关系。 在TCPP模型中并不存在与OSI中的物理层与数据链路层相对应的部分,相反,由于TCPP 的主要目标是致力于异构网络的互连,所以在OS中的物理层与数据链路层相对应的部分 没有作任何限定。 应用层 传输层 网际层 网络接口层 图2.6 TCPAP模型 在TCPP模型中,网络访问层是TCP模型的最低层,负责接收从网际层交来的P 数据报并将P数据报通过底层物理网络发送出去,或者从底层物理网络上接收物理帧,抽 出P数据报,交给互联网层。网络访问层使采用不同技术和网络硬件的网络之间能够互联, 它包括属于操作系统的设备驱动器和计算机网络接口卡,以处理具体的硬件物理接口。 网际层负责独立地将分组从源主机送往目标主机,涉及为分组提供最佳路径的选择和 交换功能,并使这一过程与它们所经过的路径和网络无关。这好比你寄信时,你并不需要 知道它是如何到达目的地的,而只关心它是否到达了。TCPP模型的互联网层在功能上非 常类似于OSI参考模型中的网络层。 传输层的作用与OS1参考模型中传输层的作用是类似的,即在源结点和目的结点的两 个对等实体间提供可靠的端到端的数据通信。为保证数据传输的可靠性,传输层协议也提 供了确认、差错控制和流量控制等机制。另外,由在一般的计算机中,常常是多个应用程 序同时访问网络,所以传输层还要提供不同应用程序的标识。 应用层涉及为用户提供网络应用,并为这些应用提供网络支撑服务。由于TCPP将所 有与应用相关的内容都有归为一层,所以在应用层要处理高层协议、数据表达和对话控制 等任务。 2.3.2各层主要协议 TCPP事实上是一个协议系列或协议簇,目前包含了100多个协议,用来将各种计算 机和数据通信设备组成实际的TCPP计算机网络。TCPP模型各层的一些重要协议如图
8 计算机网络基础 2.3 TCP/IP 模型 2.3.1 TCP/IP 模型 TCP/IP 模型是由美国国防部创建的,所以有时又称 DoD(Department of Defense)模型。 TCP/IP 模型分为四层,由下而上分别为网络访问层、网际层、传输层、应用层,如图 2.6 所示。应该指出,TCP/IP 是 OSI 模型之前的产物,所以两者间不存在严格的层对应关系。 在TCP/IP模型中并不存在与OSI中的物理层与数据链路层相对应的部分,相反,由于TCP/IP 的主要目标是致力于异构网络的互连,所以在 OSI 中的物理层与数据链路层相对应的部分 没有作任何限定。 应用层 传输层 网际层 网络接口层 图 2.6 TCP/IP 模型 在 TCP/IP 模型中,网络访问层是 TCP/IP 模型的最低层,负责接收从网际层交来的 IP 数据报并将 IP 数据报通过底层物理网络发送出去,或者从底层物理网络上接收物理帧,抽 出 IP 数据报,交给互联网层。网络访问层使采用不同技术和网络硬件的网络之间能够互联, 它包括属于操作系统的设备驱动器和计算机网络接口卡,以处理具体的硬件物理接口。 网际层负责独立地将分组从源主机送往目标主机,涉及为分组提供最佳路径的选择和 交换功能,并使这一过程与它们所经过的路径和网络无关。这好比你寄信时,你并不需要 知道它是如何到达目的地的,而只关心它是否到达了。TCP/IP 模型的互联网层在功能上非 常类似于 OSI 参考模型中的网络层。 传输层的作用与 OSI 参考模型中传输层的作用是类似的,即在源结点和目的结点的两 个对等实体间提供可靠的端到端的数据通信。为保证数据传输的可靠性,传输层协议也提 供了确认、差错控制和流量控制等机制。另外,由在一般的计算机中,常常是多个应用程 序同时访问网络,所以传输层还要提供不同应用程序的标识。 应用层涉及为用户提供网络应用,并为这些应用提供网络支撑服务。由于 TCP/IP 将所 有与应用相关的内容都有归为一层,所以在应用层要处理高层协议、数据表达和对话控制 等任务。 2.3.2 各层主要协议 TCP/IP 事实上是一个协议系列或协议簇,目前包含了 100 多个协议,用来将各种计算 机和数据通信设备组成实际的 TCP/IP 计算机网络。TCP/IP 模型各层的一些重要协议如图
第2章计算机网络体系结构 2.7所示。 应用层 FTP HTTP SMTP TELNET DNS TFTP 传输层 TCP UDP 网际层 IP ICMP ARP RARP 网络访问层 Internet Your LAN Many LANs and WANs 图2.7 TCPAP模型各层使用的协议 TCP/P的网络接口层中包括各种物理网协议,例如Ethernet、令牌环、帧中继、ISDN 和分组交换网X25等。当各种物理网被用作传送P数据包的通道时,就可以认为是属于这 一层的内容。 网际层包括多个重要协议,互联网络协议(Internet protocol,简称IP)是其中的核心协议, P协议规定网际层数据分组的格式。另外,还包括提供网络控制和消息传递功能的因特网 控制消息协议(Internet Control message protocol,简称ICMP),提供P地址和MAC地址 之间转换的地址解释协议(Address resolution protocol,简称ARP)和反向地址解释协议 (Reverse address resolution protocol,.简称RARP)。 传输层提供了两个协议。分别是提供面向连接可靠传输的传输控制协议(Transport Control Protocol,简称TCP)和提供面向无连接的不可靠传输服务的用户数据报协议(User datagram protocol简称UDP)。 应用层包括了众多的应用与应用支撑协议。常见的应用协议有:文件传输协议FTP、 超文本传输协议HTTP、简单邮件传输协议SMTP、虚拟终端TELNET:常见的应用支撑协 议包括域名服务DNS和简单网络管理协议SNMP。 2.4OSI模型和TCPP模型的区别 ISO/OSI模型和TCPP模型有许多相似之处。具体表现在:两者都均采用了层次结构 并存在可比的传输层和网络层:两者都有应用层,虽然所提供的服务有所不同:均是一种 基于协议数据单元的包交换网络,而且分别作为概念上的模型和事实上的标准,具有同等 的重要性。但是ISO/OSI模型和TCPP模型还是有许多不同之处。下面我们讨论为两种模 型的不同之处
第 2 章 计算机网络体系结构 9 2.7 所示。 FTP HTTP SMTP DNS TFTP IP ICMP RARP Internet Your LAN TELNET TCP UDP ARP Many LANs and WANs 应用层 传输层 网际层 网络访问层 图 2.7 TCP/IP 模型各层使用的协议 TCP/IP 的网络接口层中包括各种物理网协议,例如 Ethernet、令牌环、帧中继、ISDN 和分组交换网 X.25 等。当各种物理网被用作传送 IP 数据包的通道时,就可以认为是属于这 一层的内容。 网际层包括多个重要协议,互联网络协议(Internet protocol,简称 IP)是其中的核心协议, IP 协议规定网际层数据分组的格式。另外,还包括提供网络控制和消息传递功能的因特网 控制消息协议 (Internet Control message protocol,简称 ICMP),提供 IP 地址和 MAC 地址 之间转换的地址解释协议(Address resolution protocol,简称 ARP)和反向地址解释协议 (Reverse address resolution protocol,简称 RARP)。 传输层提供了两个协议。分别是提供面向连接可靠传输的传输控制协议(Transport Control Protocol,简称 TCP)和提供面向无连接的不可靠传输服务的用户数据报协议 (User datagram protocol 简称 UDP)。 应用层包括了众多的应用与应用支撑协议。常见的应用协议有:文件传输协议 FTP、 超文本传输协议 HTTP、简单邮件传输协议 SMTP、虚拟终端 TELNET;常见的应用支撑协 议包括域名服务 DNS 和简单网络管理协议 SNMP。 2.4 OSI 模型和 TCP/IP 模型的区别 ISO/OSI 模型和 TCP/IP 模型有许多相似之处。具体表现在:两者都均采用了层次结构 并存在可比的传输层和网络层;两者都有应用层,虽然所提供的服务有所不同;均是一种 基于协议数据单元的包交换网络,而且分别作为概念上的模型和事实上的标准,具有同等 的重要性。但是 ISO/OSI 模型和 TCP/IP 模型还是有许多不同之处。下面我们讨论为两种模 型的不同之处
10 计算机网络基础 OSI TCP/IP 7 应用层 应用层 表示层 , 5 会话层 传输层 传输层 网络层 网际层 2 数据链路层 网络接口层 物理层 图2.8OSI模型和TCPAP模型的比较 OSI模型包括了七层,而TCPP模型只有四层。虽然它们具有功能相当的网络层、传 输层和应用层,但其它层并不相同。 TCPP模型中没有专门的表示层和会话层,它将与这两层相关的表达、编码和会话控 制等功能包含到了应用层中去完成。另外,TCPP模型还将OSI的数据链路层和物理层包 括到了一个网络访问层中。 OS1模型在网络层支持无连接和面向连接的两种服务,而在传输层仅支持面向连接的服 务。TCPP模型在互联网层则只支持无连接的一种服务,但在传输层支持面向连接和无连 接两种服务。 TCP/IP由于有较少的层次,因而显得更简单,并且作为从因特网NTERNET)上发展起 来的协议,已经成了网络互连的事实标准。但是,目前还没有实际网络是建立在O$七层 模型基础上的,OSI仅仅作为理论的参考模型被广泛使用。 习题与思考题 2.1请简单说明OSI七层模型中每一层的主要功能。 2.2试说明层次、协议、服务和接口的关系。 2.3OSI的第几层涉及处理下面的问题? (1)把比特流还原为帧:(2)决定使用哪些路径到达目的端:(3)差错控制:(4)拥塞控 制:(5)流量控制:(6物理传输介质:(7)加密与解密 2.4请描述在OSI参考模型中数据传输的基本过程,并提出在物理层、数据链路层、网络层 和传输层的数据传送单元分别是什么? 2.5试比较TCPAP模型和OSI模型的异同点
10 计算机网络基础 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 应用层 传输层 网际层 网络接口层 1 2 3 4 5 6 7 OSI TCP/IP 在模型中 不存在 图 2.8 OSI 模型和 TCP/IP 模型的比较 OSI 模型包括了七层,而 TCP/IP 模型只有四层。虽然它们具有功能相当的网络层、传 输层和应用层,但其它层并不相同。 TCP/IP 模型中没有专门的表示层和会话层,它将与这两层相关的表达、编码和会话控 制等功能包含到了应用层中去完成。另外,TCP/IP 模型还将 OSI 的数据链路层和物理层包 括到了一个网络访问层中。 OSI 模型在网络层支持无连接和面向连接的两种服务,而在传输层仅支持面向连接的服 务。TCP/IP 模型在互联网层则只支持无连接的一种服务,但在传输层支持面向连接和无连 接两种服务。 TCP/IP 由于有较少的层次,因而显得更简单,并且作为从因特网(INTERNET)上发展起 来的协议,已经成了网络互连的事实标准。但是,目前还没有实际网络是建立在 OSI 七层 模型基础上的,OSI 仅仅作为理论的参考模型被广泛使用。 习题与思考题 2.1 请简单说明 OSI 七层模型中每一层的主要功能。 2.2 试说明层次、协议、服务和接口的关系。 2.3 OSI 的第几层涉及处理下面的问题? (1)把比特流还原为帧;(2)决定使用哪些路径到达目的端;(3)差错控制;(4)拥塞控 制;(5)流量控制;(6)物理传输介质;(7)加密与解密 2.4 请描述在 OSI 参考模型中数据传输的基本过程,并提出在物理层、数据链路层、网络层 和传输层的数据传送单元分别是什么? 2.5 试比较 TCP/IP 模型和 OSI 模型的异同点