第03章-体系结构ppt.ppt_第1页
第03章-体系结构ppt.ppt_第2页
第03章-体系结构ppt.ppt_第3页
第03章-体系结构ppt.ppt_第4页
第03章-体系结构ppt.ppt_第5页
已阅读5页,还剩126页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第3章 网络体系结构与网络协议,第三章 主要内容,3.1 网络体系结构的基本概念 3.2 OSI参考模型 3.3 TCP/IP参考模型 3.4 OSI参考模型与TCP/IP参考模型的比较,本章学习要求:,理解:协议、层次、接口与网络体系结构的概念及分层思想 掌握:网络体系结构的层次化研究方法 理解和掌握:OSI参考模型及各层的基本功能 理解和掌握:TCP/IP参考模型及各层的基本功能 了解:OSI参考模型与TCP/IP参考模型的比较,本章知识结构,3.1 网络体系结构的概念,社会上存在的邮政系统,用户/邮局约定,邮局/运输部门约定,信,邮包,邮车,邮包,信,图3.1 邮政系统的分层模型,用户子

2、系统,邮局子系统,运输子系统,1. 网络协议的概念,在计算机网络中为数据交换而建立的规则、标准或约定的集合称为网络协议(Network Protocol) ; 网络协议的三要素 语法:即用户数据与控制信息的结构与格式;包括数据格式、编码及信号电平等。 语义:指需要发出何种控制信息,完成何种动作以及做出何种响应 时序:指事件的执行顺序,涉及速度匹配和排序,即对事件实现顺序的详细说明。如速度匹配、排序等 “语义”规定通信双方准备“讲什么”,“语法”规定通信双方“如何讲”,“时序”规定通信双方的“应答关系”,2、协议、层次、接口与体系结构的概念,协议(protocol):一种通信规约 层次(laye

3、r) 接口(interface) 体系结构(architecture),(1)层次(layer),层次是人们处理复杂问题的基本方法,将要实现的功能分配在不同层次中,对每个层次要完成的服务及服务要求都有明确规定; 不同的系统分成相同的层次,不同系统的最低层之间存在着“物理”通信,不同系统的对等层次之间存在着“虚拟”通信; 对不同系统的对等层之间的通信有明确的通信规定; 高层使用低层提供的服务时,并不需要知道低层服务的具体实现方法。,(2)接口(interface),接口是同一结点内相邻层之间交换信息的连接点; 同一结点的相邻层之间存在明确规定的接口,低层向高层通过接口提供服务; 只要接口条件不变

4、、低层功能不变,低层功能的实现方法与技术变化不会影响整个系统。,网络体系结构(network architecture),将计算机互联的功能划分成有明确定义的层次,并规定同层实体通讯的协议和邻层间的接口服务。这种层和协议的集合称之为网络体系结构; 计算机网络体系结构是网络中分层模型以及各层功能的精确定义。 实现(implementation)是遵循这种体系结构的前提下用何种硬件或软件完成这些功能的问题。 体系结构是抽象的,实现是指能运行的硬件和软件。,计算机网络的体系结构及其划分所遵循的原则,网络体系结构为什么要采用分层次的结构? 网络体系结构采用分层次的结构,是因为“分层”可以把庞大而复杂的

5、问题转化为若干较小的局部问题,而这些较小的局部问题就比较易于研究和处理。,层次模型,层次模型,实体 在每一层中,任何可以发送或接收信息的硬件或软件进程称为实体。 服务 在网络分层模型中,每一层为相邻的上一层所提供的功能称为服务。 第N层向第N+1层提供服务,第N+1层使用第N层所提供的服务; 第N+1层的实体为第N层的服务用户,第N层的实体则为服务提供者。 接口 在同一系统中,相邻两层的实体交换信息的地方称为接口或服务访问点SAP(Service Access Point)。第N层向第N+1层提供服务是通过第N层与第N+1层之间的接口来实现的。 在网络中 对等层之间的约定称为协议,它是网络中用

6、于规定信息的格式以及如何发送和接收信息的一套规则,是平行对等关系。 相邻层之间的约定称为接口,它是网络中上下层之间传递数据的约定,是垂直调用关系。,协议与服务有何区别?有何关系?,为进行网络中的数据交换而建立的规则、标准或约定称为网络协议,或简称为协议。网络协议是计算机网络的不可缺少的组成部分。 协议是控制两个对等实体(或多个实体)进行通信的规则的集合。协议的语法方面的规则定义了所交换的信息的格式,而协议的语义方面的规则定义了发送者或接收者所要完成的操作。 在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下面一层所提供的服务。 协议和服务在概念上是很

7、不一样的。 首先,协议的实现保证了能够向上一层提供服务。使用本层服务的实体只能看见服务而无法看见下面的协议。下面的协议对上面的实体是透明的。 其次,协议是“水平的”,即协议是控制对等实体间通信的规则。但服务是“垂直的”,即服务是由下层向上层通过层接口提供的。另外,并非在一层内完成的全部功能都称为服务,只有那些能够被高一层实体“看得见”的功能才能称之为“服务”。本层的服务用户只能看见服务而无法看见下面的协议。,划分层次的概念举例,主机 1 向主机 2 通过网络发送文件。 可以将要做的工作进行如下的划分。 第一类工作与传送文件直接有关。 确信对方已做好接收和存储文件的准备。 双方协调好一致的文件格

8、式。 两个主机将文件传送模块作为最高的一层 。剩下的工作由下面的模块负责。,两个主机交换文件,文件传送模块,主机 1,主机 2,文件传送模块,只看这两个文件传送模块 好像文件及文件传送命令 是按照水平方向的虚线传送的,把文件交给下层模块 进行发送,把收到的文件交给 上层模块,再设计一个通信服务模块,文件传送模块,主机 1,主机 2,文件传送模块,只看这两个通信服务模块 好像可直接把文件 可靠地传送到对方,把文件交给下层模块 进行发送,把收到的文件交给 上层模块,通信服务模块,通信服务模块,再设计一个网络接入模块,文件传送模块,主机 1,主机 2,文件传送模块,通信服务模块,通信服务模块,网络接

9、入模块,网络接入模块,通信网络,网络 接口,网络 接口,网络接入模块负责做与网络接口细节有关的工作 例如,规定传输的帧格式,帧的最大长度等。,计算机网络的体系结构划分所遵循的原则是什么,(1)每层的功能应是明确的,并且是相互独立的。当某一层的具体实现方法更新时,只要保持上、下层的接口不变,便不会对邻层产生影响。 (2)层间接口必须清晰,跨越接口的信息量应尽可能少。 (3)层数应适中。若层数太少,则造成每一层的协议太复杂;若层数太多,则体系结构过于复杂,使描述和实现各层功能变得困难。 (4)不同的系统分成相同的层次,对等层次具有相同的功能;,3、计算机网络层次结构的优点,(1) 各层之间相互独立

10、 (2) 灵活性好 (3) 各层采用最合适的技术实现而不影响其他层 (4) 易于实现与维护 (5) 分层有利于促进标准化工作,网络体系结构的国际标准,网络体系结构标准化建设经历了两个阶段 第一阶段是各计算机制造厂商网络体系结构标准化; 第二阶段是国际网络体系结构标准化。 各公司推出的网络体系结构 1974年,IBM公司,系统网络体系结构(System Network Architecture,SNA)。 1975年,美国数字网络设备DEC公司发布数字网络体系结构(Digital Network Architecture,DNA)标准。 1976年,Univac公司提出了分布式通信体系结构(Di

11、stributed Communication Architecture,DCA)标准。 Burroughs公司的BNA标准等。,网络体系结构的国际标准,1984年,国际标准化组织(ISO)颁布了“开放系统互联参考模型”,即OSI/RM (Open System Interconnect Reference Model),定义了网络互联的7层框架。 法律上的(de jure)国际标准 OSI 并没有得到市场的认可。 因特网上使用的TCP/IP协议及其体系结构成为业界公认的事实标准。 是非国际标准 TCP/IP 现在获得了最广泛的应用。 TCP/IP 常被称为事实上的(de facto) 国际标

12、准。,3.2 OSI参考模型,3.2.1 OSI参考模型的基本概念 3.2.2 OSI参考模型的结构 3.2.3 OSI参考模型各层的功能 3.2.4 OSI环境中的数据传输过程,3.2.1 OSI参考模型的基本概念,在制定计算机网络标准方面,起着很大作用的两大国际组织:国际电报与电话咨询委员会(CCITT)与国际标准化组织(ISO) CCITT与ISO的工作领域:CCITT 主要考虑通信标准的制定,ISO主要考虑信息处理与网络体系结构。,OSI标准中开放的概念,OSI中的“开放”是指只要遵循OSI标准,一个系统就可以与位于世界任何地方、同样遵循同一标准的其它任何系统进行通信; OSI标准采用

13、三级抽象: 体系结构(architecture) 服务定义(service definition) 协议说明(protocol specification),体系结构,开放系统的层次结构、层次之间的相互关系,以及各层所包括的可能的服务; 作为一个框架来协调和组织各层协议的制定; 对网络内部结构最精炼地概括与描述。,服务定义,详细说明各层提供的服务; 某层的服务是该层及其以下各层的一种能力; 低层的服务通过接口向上一层提供; 各层提供的服务与这些服务是如何实现无关; 定义各层之间的接口与各层使用的原语,但不涉及接口的具体实现。,3.2.2 OSI参考模型的结构,ISO在制定OSI参考模型是对层次

14、划分的主要原则是 : 网络中的所有结点都具有相同的层次; 不同结点的同等层具有相同功能; 同一结点内相邻层之间通过接口通信; 每层可使用下层提供的服务,并向其上层提供服务; 不同结点的同等层通过协议实现对等层之间的通信。,3.2.3 OSI参考模型的结构,OSI模型的特点 OSI模型本身不是网络体系结构的全部内容,其最重要的贡献是将服务、接口、协议3个概念区分清楚; 它不是基于某个特定的协议集而设计的,因而它更具有通用性; OSI模型在协议实现方面存在某些不足,原因是OSI模型太复杂; 它对今后计算机网络技术朝标准化、规范化方向发展有指导意义。,3.2.3 OSI参考模型各层的功能,物理层(P

15、hysical Layer) 数据链路层(Data Link Layer) 网络层(Network Layer) 传输层(Transport Layer) 会话层(Session Layer) 表示层(Presentation Layer) 应用层(Application Layer),1.物理层的主要功能,位于最底层,直接与物理信道相连。其功能是对上层屏蔽传输媒介的区别,利用传输介质为通信的网络结点之间建立、管理和释放物理连接; 规定通信双方相互连接的机械、电气、功能和规程特性。在数据终端设备(DTE)和数据通信设备(DCE)之间完成物理连接 实现比特流的透明传输,为数据链路层提供数据传输服

16、务; 物理层的数据传输单元是比特 (bit)。,1.物理层,物理连接的建立、维护和释放:当一个数据链路实体请求与另一个数据链路实体之间建立物理连接时,物理层应该能为它们建立相应的物理连接。在通信时,要维持这个连接。通信结束,要立即释放连接。 二进制位流的传输:在物理连接上一般都采用串行传输,即一个一个比特按照时间顺序传输。串行传输可采用同步传输方式,也可采用异步传输方式。 物理层的管理:完成物理层的某些管理事务,如发送和接收比特流、异常情况处理、故障情况报告等 。,1.物理层特性,机械特性 规定接口所用的接线器的形状、尺寸、引线数目和排列方式,传输介质的参数和特性等。 电气特性 主要考虑信号波

17、形的参数、电压和阻抗的大小、编码方式等。 功能特性 对接口连线的功能给出确切的定义,如数据线、控制线、定时线和地线等。 规程特性 规定了使用接口线实现数据传输的操作过程。 常用的标准有美国电子工业协会EIA的RS-232-C、RS-366-A、RS-449,国际电报电话咨询委员会CCITT建议的X2.1,(美国)电气和电子工程师学会IEEE 802系列标准。,1.物理层特性,传输介质 有线传输介质有双绞线、同轴电缆和光纤; 无线传输介质有无线电波、红外线和激光。 连接器和插座 RJ-45插座和RJ-45连接器; BNC插座和BNC连接器; 转换器:有RJ-45到DB-9的转换器、DB-25到D

18、B-9的转换器等。 物理层设备 对信号进行放大和整形的设备,主要有中继器(Repeater)和集线器(Hub) 。,2.数据链路层的主要功能,在物理层提供的服务基础上,数据链路层在通信的实体间建立数据链路连接;并向网络层提供无差错的透明传输 数据链路层主要负责数据链路的建立、维持和拆除,然后将网络层送下来的信息(包) 组成帧传送,传输以“帧”为单位的数据包; 采用差错控制与流量控制方法,使有差错的物理线路变成无差错的数据链路。,数据链路的概念,链路(Link) 是从一个结点到相邻结点的一段物理线路,中间没有任何其他交换结点。在进行数据通信时,两个计算机之间的通信路径往往要经过许多段这样的链路,

19、可见链路只是一条路径的组成部分。链路又称为物理链路。 数据链路(Data Link) 是指当需要在一条链路上传送数据时,除了必须具有一条物理线路之外,还必须有一些必要的通信协议来控制这此数据的传输。若把实现这些规程和协议的硬件和软件加到物理线路上,这样就构成了数据链路,即逻辑链路。 现在最常用的方法是使用适配器(或拨号适配器或以太网中网卡)来实现这些协议的硬件和软件。一般的适配器都包括了数据链路层和物理层这两层的功能。 当采用复用技术时,一条链路上可有多条数据链路,“电路接通”与“数据链路接通”的区别: 电路接通:表示链路两端的交换机已开机,物理连接已能传送比特流。但此时数据传输并不可靠。 在

20、物理连接基础上,再建立数据链路连接,才是数据链路接通。此后,由于数据链路连接具有检测、确认和重传等功能,才使不太可靠的物理链路变成可靠的数据链路,进行可靠的数据传输。当数据链路断开是,物理电路连接不一定跟着断开。 使数据可靠传输,数据链路层须具有以下功能: 链路管理: 帧的装配与分解 帧的同步 流量控制与顺序控制 差错控制 使接收端能区分数据和控制信息 透明传输 寻址,数据链路层的简单模型,局域网,广域网,主机 H1,主机 H2,路由器 R1,路由器 R2,路由器 R3,电话网,局域网,主机 H1 向 H2 发送数据,从层次上来看数据的流动,数据链路层的简单模型( 续),局域网,广域网,主机

21、H1,主机 H2,路由器 R1,路由器 R2,路由器 R3,电话网,局域网,主机 H1 向 H2 发送数据,链路层,高层,运输层,网络层,物理层,链路层,高层,运输层,网络层,物理层,链路层,网络层,物理层,链路层,网络层,物理层,链路层,网络层,物理层,R1,R2,R3,H1,H2,仅从数据链路层观察帧的流动,数据据链路层-从层次结构看数据据的流动,IP 数据报,1010 0110,帧,取出,数据 链路层,网络层,链路,结点 A,结点 B,物理层,数据 链路层,结点 A,结点B,发送,接收,链路,IP 数据报,1010 0110,帧,装入,数据据链路层-数据链路层像个数字管道,常在两个对等的

22、数据链路层之间画出一个数字管道,而在这条数字管道上传输的数据单位是帧。 早期的数据通信协议曾叫作通信规程(procedure)。因此在数据链路层,规程和协议是同义语。,数据据链路层三个基本问题,(1) 封装成帧 (2) 透明传输 (3) 差错控制,(1) 封装成帧,每一种链路层协议都规定了帧的数据部分的长度上限最大传送单元 MTU (Maximum Transfer Unit)。 在数据链路层,结点在发送数据时,将网络层传下来的分组添加首部和尾部等控制信息封装成帧发送到链路上; 结点在接收过程中,链路层把物理层传上来的帧剥去帧的首部和尾部后的数据(分组)取出来上交网络层。,帧结束,帧首部,IP

23、 数据报,帧的数据部分,帧尾部, MTU,数据链路层的帧长,从这里开始发送,帧开始,数据据链路层-帧的封装与定界,帧的格式 从网络层接收的分组(IP数据报)加上帧的首部和帧的尾部组装成帧。,数据据链路层-帧的封装与定界,帧开始 用以指示一个帧的开始,如标志01111110。 地址 用于设备或机器的物理寻址。 帧的长度/类型/控制 该字段在不同的数据链路层协议中有不同的规定,帧的长度通常以字节为单位,帧的类型主要包括数据帧和控制帧。 数据 承载网络层的数据分组(Packet)。 帧校验序列FCS(Frame Check Sequence) 提供与差错检测有关的信息。 帧结束 用以指示一个帧的结束

24、,如标志01111110 。,数据据链路层-帧的封装与定界,帧的定界 帧的定界就是提供关于帧的边界的识别功能,即标识帧的开始与结束。 帧的定界的方法 带字符填充的首尾界符法; 带位填充的首尾标志法。,数据据链路层-帧的封装与定界,带字符填充的首尾界符法 用一些特定的字符来定界一帧的起始与终止。 同步原理 在一帧的开头用ASCII字符DLE STX在帧尾用DLE ETX作为帧的首尾定界符; DLE(Data Link Escape):ASCII值为16,转义标志; STX(Start of Text):ASCII值为2,文本开始标志; ETX(End of Text):ASCII值为3,文本终止

25、标志。 若数据信息位中有与特定字符相同的字符将会被误判为帧的首尾定界符,为了使接收方对帧实现正确判断,就在其前面再插入一个DLE,这样数据部分的DLE就会成对出现; 在接收方遇到两个连续的DLE时,则认为是数据部分,删除一个DLE。,数据据链路层-帧的封装与定界,字符填充的首尾界原理,数据据链路层-帧的封装与定界,带位填充的首尾标志法 用一组特定的位模式(01111110)来标志一帧的起始与终止。 数据字段中可能会出现与特定的位模式(01111110)一样的8比特组合,这样接收方就会误以为是帧的边界; 为了不会引起对帧边界的误判,保证透明传输,带位填充的首尾标志法也采用填充技术,但它一次只填充

26、一个比特0。 当发送方在数据部分遇到5个连续的1时,就自动在其后插入一个0,即所谓“逢5个1插0”。 接收方遇到5个连续的1之后是一个“0”时,就删除该0,即所谓的“逢5个1删0”,这样就恢复了原始数据,实现了数据传输的透明性。,数据据链路层-帧的封装与定界,带位填充的首尾标志法示例,帧的开始和结束使用专门指明的“帧首部”和“帧尾部”标记。 当所传数据中的比特组合恰巧出现了与某一个控制信息完全一样的组合时,必须有可靠的措施,使接收方不会将这种比特组合的数据误认为是某种控制信息。 在帧首部和帧尾部之间的数据部分就不允许出现和帧首部或帧尾部一样的比特组合,否则就会出现帧定界的判断错误。 数据链路层

27、协议就必须设法解决这个问题。 透明传输数据链路层协议允许所传送的数据可具有任意形式的比特组合。,(2) 透明传输,(3)差错控制,接收方通过对差错编码的检查,可以判断一帧在传输过程中是否出现差错。 差错编码技术有两类 一类是前向纠错,接收方收到有差错的数据帧时,能够自动将差错改正过来,但开销大,不适合于计算机通信; 另一类是差错检测,接收方可以检测出收到的帧有差错,立即将它丢弃,或重传,或由高层进行处理。,(3)差错检测,反馈差错控制法 向数据发送方提供有关接收方接收情况的反馈信息; 如果发送方收到了关于某个帧的肯定确认,则它知道此帧已正确到达; 如果收到的是否定确认,则意味着发生了差错,相应

28、的帧必须被重传。 重传通常又分为反馈检测法和自动请求重发法。,(3)数据据链路层-差错控制,反馈检测法 又称回送校验法,是指通信双方进行数据传输时,接收方将接收到的数据重新发回给发送方,由发送方检查是否与原数据完全相符。 若不相符,则发送方发送一个控制字符通知接收方删除出错的数据,并重新发送该数据; 若相符,则发送下一个数据。,(3)数据据链路层-差错控制,数据链路层差错控制最常用的方法是 自动请求重发 。 发送方将要发送的数据帧附加一定的冗余检验码后一并发送,接收方则根据检错码对数据进行差错检测,如CRC校验。 若发现错误,就返回请求重发的应答,发送方收到请求重发的应答后,便重新传送该数据帧

29、。 自动请求重发又有两种实现协议,即停止-等待(Stop-and-Wait)协议和连续ARQ协议。,(3)数据据链路层-差错控制,停止-等待协议 发送方在发出一帧之后必须停下来等待接收方对所发送的帧进行确认。 若确认对方已经正确收到,则发送方继续发送下一个帧; 否则,发送方就重发该帧。,(3)数据据链路层-差错控制,数据帧在链路上传输时可能会出现的几种情况。,(a)正常情况,(b)数据帧出错,(c)数据帧丢失,(d)确认帧丢失,(3)数据据链路层-差错控制,连续ARQ协议 在发送方发送完一个数据帧后,不是停下来等待确认帧,而是可以连续再发送多个帧; 帧的个数取决于发送方的发送能力和接收方的接收

30、能力; 对于连续ARQ方式,必须对不同的帧进行编号; 连续ARQ分别采用两种不同的处理方式: 后退N帧(Go-Back-N)ARQ方式 选择性重传(Selective Repeat)ARQ方式。 选择重传ARQ协议可避免重传那些本来已经正确到达接收端的数据帧,但是必须付出的代价:在接收端需要设置具有相当容量的缓存空间,数据据链路层其他功能,链路管理 为相邻结点之间的可靠数据传输提供必要的数据链路的建立、维护和释放机制。 帧的同步 指接收方能够从收到的比特流中准确地分出一帧的开始和结束 物理寻址 提供有效的物理编址与寻址功能,在多点连接的情况下,既要保证每一帧都能正确送到目的站,又要使接收方知道

31、是哪个站发送的。 流量控制 流量控制实际上是对发送方的数据流量进行控制,使其发送速率不至于超过接收方的接收速率。,数据据链路层-流量控制,流量控制 实际上是对发送方的数据流量进行控制,使其发送速率不至于超过接收方的接收速率。 流量控制并不是数据链路层特有的功能,许多高层协议中也提供流量控制功能,只是控制对象不同而已。 对数据链路层来说,控制的是相邻两结点间的数据链路层上的流量; “停止-等待协议”和“滑动窗口协议”是两个著名的流量控制协议。 而对传输层来说,控制的是从源结点到目的结点之间端到端的流量。,数据据链路层-流量控制,滑动窗口(Slide Window)协议 在滑动窗口机制中,ARQ实

32、际上又分为 连续ARQ或回退N 和选择重传两种工作方式。 在使用连续ARQ协议时,如果发送端一直没有收到对方的确认,那么实际上发送端并不能无限制的发送数据帧,其原因如下。 (1) 当未被确认的数据帧的数目太多时,只要有一帧出错或丢失,就会有很多的数据帧需要重传,这必然浪费很多时间,增大了开销。 (2) 为了对所发送的大量数据帧进行编号,每个数据帧的发送序号也要占用较多的比特,这样又增加了一些不必要的开销。 在连续ARQ协议中必须将已发送出去、但未被确认的数据帧的数目加以限制,这就是滑动窗口协议所要讨论的内容。 它在发送端和接收端分别设定发送窗口(Sending Window)和接收窗口(Rec

33、eiving Window)。,发送窗口与接收窗口,加入适当的控制机制,循环使用已收到确认的那些帧的序号,在发送端和接收端分别设定“发送窗口”和“接收窗口”。 发送窗口用来对发送端进行流量控制,而发送窗口的大小Ws代表在还没有收到对方确认的条件下发送端最多可以发送多少个数据帧。 接收窗口是为了控制哪些数据帧可以接收而哪些帧不可以接收。在接收端,只有当收到的数据帧的发送序号落入接收窗口内才允许将该数据帧收下。 只有在接收窗口旋转(滑动)时,发送窗口才有可能旋转(滑动)。但发送端如果没有收到已发送的那些帧的任何确认,同样也不会旋转(滑动)。接收窗口保持不动时,发送窗口无论如何也不会旋转(滑动),正

34、因为收发两端的窗口按照以上规律不断旋转(滑动),因此这种协议被称为滑动窗口协议。,滑动窗口协议示例-3比特编号,注:可以用水平窗口和圆形窗口两种方法来表示发送与接收窗口。,发送端,接收端,数据据链路层-流量控制,数据据链路层-流量控制,滑动窗口协议的工作实例,例题1:,若帧序号位数为3位,发送窗口尺寸为2,采用Go-back-N方法,画出由初态出发相继发生下列事件时的发送方及接收方滑动窗口状态变化过程图示: (1)发送0号帧(2)发送1号帧(3)接收0号帧(4)接收确认0号帧(5)发送2号帧 6)接收1号帧,例题2:,在下图所示各发送窗口图示下面标出窗口变化说明(参照第一窗口说明)。,_发送2

35、号帧 _ _接收1号帧确认_ _发送3号帧 _ _接收2号帧确认_ _接收3号帧确认_,例3:相邻两个结点A、B通过后退N帧ARQ协议通信,帧顺序号为3位,窗口大小为4。假定A正在发送,B正在接收,对下面三种情况说明窗口的位置: 1) A开始发送之前; 2) A发送了0,1,2三帧,而B应答了0,1两个帧; 3) A发送了3,4,5三个帧,而B应答了第4帧。,解:已知帧的顺序号为3bit,则对后退N帧ARQ协议,发送方可循环使用这8个序号(07) 。而发送窗口WT=4,说明在未收到接收方确认信息情况下,发送端最多允许发放4个数据帧。由于是后退ARQ协议,接收端的Wr恒等于1。,开始发送之前,发

36、方可以发送序号为0,1,2,3的4个数据帧,而接收方刚开始只能接收0号帧。 当A发送0,1,2三帧后,又收到B发回的对0,1两帧的确认,则发送窗口可顺时针转两个号,接收窗也顺时转两个号,做好接收2号帧的准备。,3)当A发送了3,4,5三帧,而B应答了第4帧时,说明4号及以前的所有数据帧均已正确无误地传到了B结点。因此发送方窗口可顺时旋转三个号,即6,7,0,而接收窗口也做好了接收5号帧的准备。,3. 网络层的主要功能,网络层是通信子网的最高层。 基本功能:实现端到端的网络连接,屏蔽不同子网技术的差异,向上层提供一致的服务 主要功能: 路由选择和转发。通过路由选择算法为分组通过通信子网选择最适当

37、的路径; 通过网络连接在主机之间提供分组交换功能 分组的分段与成块,差错控制、顺序化、流量控制 网络层的数据服务单元是 分组。,典型的服务类型,将数据包分组:固定长度、可变长度,由网络决定 网络层把分组向下传送给数据链路层,帧方式在链路上传送 不可靠的无连接服务 典型实例:Internet的IP 实现方式:数据报(datagram) 可靠的面向连接服务 典型实例:ATM 实现方式:虚电路(VC) 通常:服务:是对高一层而言的,属于外观表现, 功能:则是本层内部的活动。,4.传输层的主要功能,向用户提供可靠端到端(end-to-end)数据传输服务;是计算机网络中的资源子网和通信子网的接口和桥梁

38、,完成资源子网中两节点间的直接逻辑通信 提供端到端进程间的可靠数据传输机制 包括面向连接服务的建立机制,即能为高层数据的传输建立、维护与拆除传输连接,以实现透明的、可靠的端到端的传输,进行端到端的错误恢复与流量控制以及能对网络层出现的丢包、乱序或重复问题做出反应。 提供分段机制 当上层的协议数据包的长度超过网络层所能承载的最大数据传输单元时,传输层要提供必要的分段功能,并在接收方的对等层提供合并分段的功能。 提供多路复用机制 处理数据包错误、数据包次序,以及其他的关键传输问题; 传输层信息传送的基本单位是报文,传输层,在OSI模型中,传输层处于第4层,向高层屏蔽下层数据通信的细节,它是最重要、

39、最关键的一层,起到承上启下的作用,是唯一负责总体数据传输和控制的一层,是整个分层体系的核心。 常将OSI模型中的下3层统称为面向通信子网的层,而将传输层及以上的各层统称为面向资源子网或主机的层。 另一种划分则是将传输层及以下的各层统称为面向数据通信的层,而将传输层以上的3层统称为面向应用的层。,传输层在中的地位,5.会话层的主要功能,它利用传输层提供的端到端数据传输服务,具体实施服务请求者与服务提供者之间的通信,负责维护两个结点之间的传输链接,以便确保点-点传输不中断;属于进程间通信范畴。 会话层的功能包括会话连接到传输连接的映射、数据传送、会话连接的恢复和释放、会话管理、令牌管理和活动管理。

40、管理两个结点之间的数据交换。,6. 表示层的主要功能,用于处理在两个通信系统中交换信息的表示方式; 通过抽象的方法来定义一种数据类型或数据结构, 通过使用这种抽象的数据结构在各端系统之间实现数据类型和编码的转换。 数据格式变换; 数据加密与解密; 数据压缩与恢复。 表示层信息传送的基本单位是报文。,7. 应用层的主要功能,它是OSI/RM的最高层,是直接面向用户的一层,是作为用户使用OSI功能的唯一窗口。 应用层确定进程之间的通信性质以满足用户的需要,负责用户信息的语义表示,并在两个通信者之间进行语义匹配。应用层信息传送的基本单位是用户数据报文。 应用层要识别并保证通信对方的可用性,使协同工作

41、的应用程序之间同步; 建立传输错误纠正与保证数据完整性的控制机制。,OSI/RM各层之间比较,3.2.4 OSI环境中的数据传输过程,OSI环境包括主机中从应用层到物理层的7层与通信子网(即虚线框部分)。物理传输介质不包括在OSI环境中。,OSI环境中的数据流,(1)当应用进程A的数据传送到应用层时,应用层为数据加上本层控制报头,构成应用层的数据服务单元,再传输到表示层,(2)表示层为数据加上本层的控制报头,构成表示层的数据服务单元,再传送到会话层。以此类推传送到传输层。,(3)传输层为数据加上本层的控制报头,构成传输层的数据服务单元(称为报文Message)。,(4)报文传送到网络层时,由于

42、网络层数据单元长度有限制,传输层的报文将被分成多个较短的数据字段,加上网络层的控制报头,构成网络层的数据服务单元(称为分组Packet)。,(5)网络层的分组传送到数据链路层时,加上数据链路层的控制信息,构成数据链路层的数据单元(称为帧Frame)。,(6)数据链路层的帧传到物理层后,以比特流的方式通过传输介质传输出去。当比特流到达目的结点时,再从物理层依层上传,每层对各自层的控制报头进行处理(剥离)。将用户数据上交高层,最终将进程A数据送给主机B的进程B。,3.3 TCP/IP参考模型,3.3.1 TCP/IP参考模型的发展 3.3.2 TCP/IP参考模型各层的功能,3.3.1 TCP/I

43、P参考模型的发展,在TCP/IP协议研究时,并没有提出参考模型; 1974年,Kahn定义最早的TCP/IP参考模型; 20世纪80年代,Leiner、Clark等人对TCP/IP参考模型进一步研究; TCP/IP协议一共出现6个版本,后3个版本是版本4、版本5与版本6; 我们目前使用的是版本4,通常称为IPv4 ; IPv6被称为下一代的IP协议。,TCP/IP协议的特点,TCP/IP可以越层使用更低层提供的服务,有更高的协议效率。 在设计时考虑到要与具体的物理传输无关,没有对最低两层做出规定,但实际上这两层在进行设计与维护时还是很重要的。 网络接口层并不是一个层次,而是一个接口,有时还包括

44、OSI中的最低两层。 TCP/IP一开始就考虑到多种异构网互联,并将IP协议作为TCP/IP的重要组成部分。 TCP/IP 应用层的功能包含了会话层和表示层的功能。,3.3.2 TCP/IP参考模型各层的功能,一、TCP/IP参考模型的层次 应用层(application layer) 传输层(transport layer) 互连层(internet layer)(网际层) 主机-网络层(host-to-network layer)网络接口层,TCP/IP参考模型与OSI参考模型的对应关系,1、主机-网络层,TCP/IP参考模型的最低层,负责通过网络发送和接收IP数据报; 接收从IP层发来的

45、IP数据报并通过低层物理网发送出去; 或者从低层物理网上接收物理帧,抽出IP数据报,交给IP层 允许主机连入网络时使用多种现成的协议,例如Ethernet、令牌网、X.25、帧中继、ATM协议等; 当一种物理网被用作传送IP包的通道时,就可以认为是这层的内容; 充分体现TCP/IP协议的兼容性与适应性,它为TCP/IP的成功奠定基础。,2、互连层(网际层),负责为分组交换网上的不同主机提供通信服务;相当OSI参考模型网络层无连接网络服务; 在发送数据时,处理传输层发送的请求,把传输层产生的报文段或用户数据报封装成分组或包(IP数据报)发送到相应的网络输出线; 在接收数据时,在收到其他主机发送的

46、数据报之后,检查目的地址,如需要转发,则选择发送路径进行转发,如目的地址为本结点的IP地址,则除去报头,将分组送交传输层处理; 处理互联的路由选择、流控与拥塞等问题。,互连层主要协议,AIP协议 IP协议的主要作用是:尽力而为的将IP分组从发送端主机通过互联网环境送达接收端主机。 IP协议的作用体现在以下几个方面 IP协议规定了全网通用的地址格式,并在统一机构管理下进行地址分配,保证一个IP地址对应一台主机。 IP协议采用数据报交换方式 IP协议为传输层提供尽力而为的数据传输服务,不保证IP分组一定送达,也不负责处理传输中的错误,发现错误的分组就丢弃,分组的重新组装和纠错问题都交给传输层去解决

47、。 IP协议是一种无连接的、提供“尽力而为”服务的网络层协议。,B、 ARP协议,ARP协议的作用 将IP地址转换为物理地址。 这里的IP地址指的是为到达最终的目的主机,路由器或网关所指定的下一站的IP地址,物理地址也是下一站IP所对应的物理地址。 ARP的解析,只能在一个局域网内完成。,B、 ARP协议,ARP协议的原理 主机需要与任何其他计算机或路由器进行通信时,首先要查询本地ARP高速缓存,如果ARP高速缓存中存在这个IP地址及其对应的物理地址,解析便告完成. 如果ARP高速缓存中没有该IP地址,那么ARP便在LAN上发出一个广播,“你们谁的IP地址是*?请把你的物理地址告诉我”,LAN

48、上的每一台主机或路由器均要查看ARP请求中包含的IP地址,如果该IP地址与某一台主机或路由器的IP地址一致,那么该主机或路由器便生成一个ARP应答信息,信息中包含了与IP地址对应的物理地址。 然后源主机ARP将IP地址与物理地址的组合添加到它的高速缓存中,以便以后查询。,CRARP协议 RARP是反向地址转换协议。当物理地址已知,但IP地址不知道时,则使用RARP解析。 DInternet控制信息协议 Internet控制信息协议的作用是向源主机报告差错。送往远程计算机的数据要经过一个或多个路由器,这些路由器在将信息发送到它的最终目的地的过程中会遇到一系列问题,如分组是否到达目的主机?在传输过

49、程中出现了哪些差错?路由器使用ICMP信息将这些问题通知源主机。 E多播协议(IGMP) IGMP协议是一个支持多播的协议,它运行在路由器上,用于帮助多播路由器识别加入到一个多播组的成员主机,并将组成员信息转发给其他多播路由器。,3、传输层,在互连网中源主机与目的主机的对等实体间建立用于会话的端-端连接;负责为两个主机中进程之间的通信提供服务; 在两主机进程实体之间提供可靠的端到端的数据传输; 1)传输层主要有3三个基本功能 端到端的连接 复用与分用 复用就是多个应用进程可同时使用下面传输层的服务; 分用是指传输层把收到的信息分别交付给上面应用层中相应的进程。 面向连接的服务和无连接的服务,(

50、1)端到端的连接,两个主机进行通信实际上就是两个主机中应用进程的互相通信 ,传输层为网络环境中主机的应用进程提供了端到端进程通信服务,(2)复用与分用功能,应用层不同的进程将传下来的报文交给传输层后,再往下就共用网络层提供的服务。,(3)面向连接的服务和无连接的服务,面向连接的服务通信可靠。 一是数据不丢失,二是数据的发送和接收顺序是一致的。传输层提供的面向连接的服务通过确认重发机制来保证数据不丢失;发送和接收顺序一致是通过其缓冲区来实现的,传输层为每个数据设置了一个序号,收到一个数据后并不直接交给上层,而是先查看其序号,如果序号小的数据还没有到来,则需要将该数据放到缓冲区,等待前面的数据都到

51、达并排序后才交给上层。 无连接的服务主要提供一个应用进程的标识,是一种不可靠的服务,不提供确认重传机制,所以协议开销比较小,通信效率高。,2)传输层的两个协议,Internet为传输层设计了如下两个协议。 传输控制协议(Transmission Control Protocol,TCP)。 TCP提供面向连接的服务。 用户数据报协议(User Datagram Protocol,UDP)。 UDP是一种无连接的、不可靠的传输层协议。,(1)TCP协议,TCP协议的主要特点 提供面向连接的服务(Connection Oritention) TCP协议是面向连接的协议,发送数据之前通信双方要建立连

52、接,通信结束要拆除连接; 高可靠性(High Reliability) TCP协议通过确认和超时重传机制保证数据传输可靠,若收到正确的帧,就给发送方发送“确认信息”,若发送方在规定的时间内没有收到“确认”信息就重发数据; 全双工通信(Full Duplex Communication) 支持流传输(Stream Interface) 可靠的连接建立与释放(Reliable Connection Startup and Shutdown) 提供流量控制与拥塞控制,TCP报文段格式,TCP报文段格式(续),端口号的长度为32位,包括一个16位的源端口号和一个16位的目的端口号 序号的长度为32位

53、,序号域即是指本报文段的第一个字节的序号。 确认号的长度为32位。表示接收端希望接收到的下一个报文段数据第1个字节的序号。 头部长度为4位。因为选项域是可变长度的,所以头部是变长度的。这个字段的值是在5至15之间,报头的长度在2060B之间。 保留字段长度为6位。目前这个域的值全部为0,即这个域从设计到现在仍然未被使用。 窗口域的长度为16位。TCP的流控制是通过一个可变大小的滑动窗口来完成的。窗口大小域指明了从被确认的字节算起可以发送多少个字节。窗口所对应的最大数据长度为65535B。,TCP报文段格式(续),控制域 定义了6种不同的控制位或标志位,使用时可在同一时间设置一位或多位。控制域用

54、于TCP流量控制、连接建立和终止,以及数据传送方式等。 (1) 紧急(URG) 当URG=1时,表明此报文段应尽快传送,而不是按原来的排队序列来传送。 (2) 确认(ACK) 只有当ACK=1时确认号域才有意义。当ACK=0时,则该数据段不包含确认信息,所以确认号域应该被忽略。 (3) 急迫(PSH) 当PSH=1时,接收方在收到数据后应立即请求将数据递交给应用程序,而不是等到整个缓冲区都填满了再向上交付。 (4) 复位(RST) 当RST=1时,表明出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立。复位比特还可以用来拒绝一个非法的报文段或拒绝打开一个连接。 (5) 同步

55、(SYN) 在建立连接时使用。当SYN=1而ACK=0时,表明这是一个连接请求报文段。对方若同意建立连接,则应在发回的报文段中使SYN=1和ACK=1。因此,同步比特SYN置1,就表示这是一个连接请求或连接接受报文,而ACK比特的值用来区分是哪一种报文。 (6) 终止(FIN) 用来释放一个连接。当FIN=1时,表明欲发送的字节串已经发完,并要求释放连接。,TCP报文段格式(续),紧急指针域的长度为16位。只有当控制域中的紧急位URG=1时,紧急指针才有效。紧急指针指出在本报文段中紧急数据的最后一个字节的序号。紧急指针使接收方可以知道紧急数据有多长。 选项域长度可变,最大可以到40B。选项包括

56、单字节选项和多字节选项。单字节选项有两个:选项结束和无操作。多字节选项有3个:最大报文段长度、窗口扩大因子以及时间戳。 TCP校验和与UDP校验和计算过程是一样的,也需要在TCP头部加上12B的伪报头,所不同的是UDP协议中是否采用校验和是可选的,而对于TCP来说是必须采用的。伪报头中表示TCP协议的值是6。,(1)TCP协议,TCP协议的工作过程 连接的建立与释放 建立连接 TCP在发送方和接收方之间经过三次数据交换来建立连接 数据传输 TCP的数据传输过程是一系列的发送确认过程,(1)TCP协议,拆除连接 在数据传输完成后要拆除连接。TCP采用“文雅”释放的方法来拆除连接,TCP拆除连接过

57、程,TCP的差错控制机制,TCP是一个可靠的传输层协议 发送端的应用进程将数据流交付给TCP,它将依靠TCP将整个数据流按顺序、无差错、不丢和重复地交付给接收端应用进程。 TCP协议的差错检测通过3种简单工具完成:校验和检错、确认和超时机制。 校验和用来确认是否出现错误。发送端发送报文后开始计时,接收端收到报文后检查错误,若发现错误就将报文丢弃 确认用来判断报文段是否顺利到达目的地。若正确就向发送端发回确认信息 传输过程出现错误或报文段未能顺利到达时,TCP通过重传来解决,几种情况下TCP的差错控制机制,乱序的报文段 对于乱序的报文段的处理方法很简单,就是只有在收到某个序号前所有报文段时才会对

58、这个序号的报文段进行确认。 出错或丢失的报文段 丢失报文段和报文段出错,发送端TCP不会收到接收端TCP的确认信息。发送端TCP会等待一段时间,直到接收确认超时,重传未得到确认的报文段。 重复的报文段 接收端TCP收到报文段后,首先查看其序号,如果已有相同序号被确认,则丢弃重复的报文段。 确认丢失 如果在传输过程中某个序号的报文段确认丢失,若发送端TCP收到了大于该序号的报文段确认,则也可以证明接收端进程已经成功收到该序号的报文段。发送端可以忽略之前的确认丢失。,TCP的流量与拥塞控制,TCP的流量控制 为了提高数据传输的效率,TCP协议允许发送方连续发送多个报文,而不需要接收方逐个报文的加以

59、确认,接收方只要确认X号报文正确收到,就意味着X号以前的报文都正确收到。TCP采用滑动窗口(一个窗口代表一个数据段)的方法对发送端允许发送数据的最大数量和接收端允许接收数据的最大数量进行调整。 发送窗口在连接建立时由双方商定。,TCP利用窗口进行流量控制的过程示例,TCP的拥塞控制,发送端的主机在发送数据时,既要考虑到接收端的接收能力,又要使网络不要发生拥塞。所以发送端的发送窗口应该按以下方式确定: 发送窗口=Min(通知窗口,拥塞窗口) 通知窗口是接收端根据其接收能力确定的窗口值,是来自接收端的流量控制。 拥塞窗口是发送端根据网络拥塞情况确定的窗口值,它由发送端流量控制算法来决定。,(2)UDP协议,UDP的特点及应用 UDP协议向应用层提供面向无连接无确认的不可靠的传输层协议服务。它仅仅在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论