- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 5 讲 数据链路层(1) 知识回顾 物理层的功能 数据通信模型 信道复用技术 数字传输系统 宽带接入技术 本讲内容及教学目标 理解数据链路层的功能。 掌握帧、链路等相关概念。 掌握帧定界的方法。 理解数据链路层的三个基本问题。 掌握差错检测-CRC的计算方法。 理解透明传输问题。 数据链路层的服务 数据链路层最基本的服务是将源计算机网络层来的数据可靠的传输到相邻节点的目标计算机的网络层。它为网络层提供以下服务: 无确认、无连接的服务 源端可以不需要建立连接就向目的端发送独立的数据帧,而目的端也不需要对收到的帧进行确认。以太网采用此服务。 有确认、无连接的服务 源端可以不需要建立连接就向目的端发送独立的数据帧,但目的端需要对收到的帧进行确认。 面向连接的服务 源端与目的端在通信前要先建立连接,然后在此连接上互相传输数据帧,每一个帧都被编号,数据链路层保证传送的帧被对方收到,且只收到一次,双方通信完毕后拆除连接。电话网络采用。 数据链路层的主要功能 为达到上述目的,数据链路层必须具备一系列相应的功能,主要有:如何将数据组合成数据块;如何控制帧在物理信道上的传输,包括如何处理传输差错,如何调节发送速率以使之与接收方相匹配;在两个网路实体之间提供数据链路通路的建立、维持和释放管理。 具体如下: 链路管理 帧定界 流量控制 差错控制 将数据和控制信息区分开 透明传输 寻址 数据链路层的基本概念 在数据链路层中将这种数据块称为帧,帧是数据链路层的传送单位。 链路(link)是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。 一条链路只是一条通路的一个组成部分。 数据链路(data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。 现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。 一般的适配器都包括了数据链路层和物理层这两层的功能。 Functions of the Data Link Layer (2) Services Provided to Network Layer 数据链路层 数据链路层使用的信道主要有以下两种类型: 点对点信道。这种信道使用一对一的点对点通信方式。 广播信道。这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发 数据链路层的简单模型 数据链路层的简单模型——cont. 数据链路层 数据链路层像个数字管道。 常常在两个对等的数据链路层之间画出一个数字管道,而在这条数字管道上传输的数据单位是帧。 早期的数据通信协议曾叫作通信规程(procedure)。因此在数据链路层,规程和协议是同义语。 成帧(帧同步) 为了向网络层提供服务,数据链路层必须使用物理层提供的服务。 物理层, 是以比特流进行传输的,这种比特流并不保证在数据传输过程中没有错误,接收到的位数量可能少于、等于或者多于发送的位数量。而且它们还可能有不同的值,这时数据链路层为了能实现数据有效的差错控制,就采用了一种“帧”的数据块进行传输。分段传输。 采用帧格式传输,就必须有相应的帧同步技术,这就是数据链路层的“成帧”(也称为“帧同步”)功能。 成帧(帧同步)(续) 采用帧传输方式的好处是 在发现有数据传送错误时,只需将有差错的帧再次传送,而不需要将全部数据的比特流进行重传,这就在传送效率上将大大提高。 但同时也带来了两方面的问题:(1)如何识别帧的开始与结束;(2)在夹杂着重传的数据帧中,接收方在接收到重传的数据帧时是识别成新的数据帧,还是识别成已传帧的重传帧呢?这就要靠数据链路层的各种“帧同步”技术来识别了。 “帧同步”技术既可使接收方能从以上并不是完全有序的比特流中准确地区分出每一帧的开始和结束,同时还可识别重传帧。 封装成帧 封装成帧(framing)就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。确定帧的界限。 首部和尾部的一个重要作用就是进行帧定界。 用控制字符进行帧定界的方法举例 透明传输方法 解决透明传输问题 发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码是 1B)。 字节填充(byte stuffing)或字符填充(character stuffing)——接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。 如果转义字符也出现在数据当中,那么应在转义字符前面插入一个转义字符。当接收端收到连续的两个转义字符时,就删除其中前面的一个。 “透明传输”是指可以让无论是哪种比特组合的数据,都可以在数据链路上进行有效传输。这就需要在所传数据中的比特组合恰巧
文档评论(0)