计算机网络数据链路层要点.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学习目标 掌握数据链路层的三个基本功能 掌握CSMA/CD的访问控制方法 掌握网桥/交换机的工作原理 掌握VLAN的基本技术 1、概述 数据链路层使用的信道主要有以下两种类型: 点对点信道。这种信道使用一对一的点对点通信方式。 广播信道。这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。 数据链路层的简单模型 数据链路层的简单模型( 续) 链路(link) 是一条点到点的物理线路段,中间没有任何其他的交换结点。 数据链路(data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。 2、数据链路层要解决三个基本问题 (1) 封装成帧 (2) 透明传输 (3) 差错控制 2.1、封装成帧 封装成帧(framing)就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。 帧的发送 发送帧时,从帧的首部开始发送。同时为提高发送效率,帧中数据部分要大于首部和尾部的长度。 同时规定数据部分的长度上限——最大传送单元MTU(Maximum Transfer Unit) 首部和尾部的一个重要作用就是进行帧定界。 接收端链路层在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束,从而收到一个完整的帧。 接收端的网络层收到数据链路层的帧后,去掉首部和尾部,就可以获得分组。 因此首部和尾部合称帧定界符。 帧定界符的字符表示 Ascii码是7位编码,共可以表示128个字符,其中可打印的字符75个,不可打印的控制字符33个。 帧定界符使用控制字符来表示,并不是SOH和EOT几个字母,SOH的控制字符的二进制EOT 帧定界符的作用1:帧定界 帧定界符的作用2:差错控制 数据在传输过程中出现差错时,假设发送端在未发送一个帧时出现差错,中断发送。但随后又恢复正常,于是重新开始发送刚才未发送完的帧,而不是继续发送。 此时,通过使用帧定界符,接收端就知道前面那个帧是不完整的帧,只有SOH,没有EOT,必须丢弃。而后面收到的帧有SOH和EOT,应当收下。 2.2 透明传输 透明:某一个实际存在的事物看起来好像不存在一样 透明传输:用户无需关心数据的传输,什么样的比特组合的数据都可以通过数据链路层进行传输。 传输过程中的两种情况 帧是文本文件的数据,由于文本中的字符都是从键盘输入的,因此帧的数据部分不会出现SOH和EOT的控制符,因此文本文件出现的任意字符都可以进行透明传输。 帧是图像、音乐等二进制数据时,数据中某个字节的二进制代码有可能就是SOH或EOT,此时若不控制,数据链路层就会错误的找到帧的边界,将部分帧收下,而将剩下的部分丢弃。 解决透明传输问题 发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”,接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。这种方法称为字节填充或字符填充。 如果转义字符也出现数据当中,那么应在转义字符前面再插入一个转义字符。当接收端收到连续的两个转义字符时,就删除前面的一个。 2.3 差错检测 在传输过程中可能会产生比特差错:1 可能会变成 0 而 0 也可能变成 1。 在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率 BER (Bit Error Rate)。 误码率与信噪比有很大的关系。 为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。 循环冗余检验的原理 在数据链路层传送的帧中,广泛使用了循环冗余检验 CRC 的检错技术。 【发送端】:在发送端,先把数据划分为组。假定每组 k 个比特,如传送的一组数据 M = 101001(现在 k = 6)。我们在 M 的后面再添加供差错检测用的 n 位冗余码一起发送。这个冗余码就是FCS(帧检验序列)。 一共发送(k+n)位。当帧的传输出现差错是时,接收端可以进行CRC校验发现错误。 循环冗余检验的原理 【发送端】冗余码的计算步骤 (1)将发送数据序列M看成k-1阶多项式T(x),如M=101001,则M(x)=x5+x3+1,此时k=5。 (2)设定一个生成多项式P(x),P(x)为r阶,kr。此时设P(x)= x3+x2+1,即P=1101。 (3) 用xr 乘以M(x),将此多项式表示成二进制得到被除数,窍门:二进制的结果就是在M的后面加r个0。 (4)用(3)式的被除数再除以P得到余数R (5)R就是冗余码FCS,最后附在数据M的后面一起发送出去。 循环冗余检验的原理 【发送端】冗余码的计算举例 例题:要发送的数据M = 101

文档评论(0)

钱缘 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档