第9讲_数据链路层1_第1页
第9讲_数据链路层1_第2页
第9讲_数据链路层1_第3页
第9讲_数据链路层1_第4页
第9讲_数据链路层1_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

2020 4 7 计算机网络 数据链路层 1 第3章数据链路层 3 1使用点对点信道的数据链路层3 1 1数据链路和帧3 1 2三个基本问题3 2点对点协议PPP3 2 1PPP协议的特点3 2 2PPP协议的帧格式3 2 3PPP协议的工作状态 2020 4 7 计算机网络 数据链路层 2 第3章数据链路层 续 3 3使用广播信道的数据链路层3 3 1局域网的数据链路层3 3 2CSMA CD协议3 4使用广播信道的以太网3 4 1使用集线器的星形拓扑3 4 2以太网的信道利用率3 4 3以太网的MAC层 2020 4 7 计算机网络 数据链路层 3 第3章数据链路层 续 3 5扩展的以太网3 5 1在物理层扩展以太网3 5 2在数据链路层扩展以太网3 6高速以太网3 6 1100BASE T以太网3 6 2吉比特以太网3 6 310吉比特以太网3 6 4使用高速以太网进行宽带接入3 7其他类型的高速局域网接口 2020 4 7 计算机网络 数据链路层 4 数据链路层 数据链路层可能使用的两类信道 点对点信道 这种信道使用一对一的点对点通信方式 广播信道 这种信道使用一对多的广播通信方式 因此过程比较复杂 广播信道上连接的主机很多 因此必须使用专用的共享信道协议来协调这些主机的数据发 2020 4 7 计算机网络 数据链路层 5 关于本章内容的解释 3 1 3 2 使用点对点信道的数据链路层重点是三个基本问题的解决思路CRC3 3 3 4 使用广播信道的数据链路层重点是CSMA CD的工作原理3 5扩展的以太网重点讲解多种网桥的工作原理3 6高速以太网简单介绍数据率 1Gbps的以太网 2020 4 7 计算机网络 数据链路层 6 数据链路层的简单模型 局域网 广域网 主机H1 主机H2 路由器R1 路由器R2 路由器R3 电话网 局域网 主机H1向H2发送数据 从层次上来看数据的流动 2020 4 7 计算机网络 数据链路层 7 数据链路层的简单模型 续 局域网 广域网 主机H1 主机H2 路由器R1 路由器R2 路由器R3 电话网 局域网 主机H1向H2发送数据 链路层 应用层 运输层 网络层 物理层 链路层 应用层 运输层 网络层 物理层 链路层 网络层 物理层 链路层 网络层 物理层 链路层 网络层 物理层 R1 R2 R3 H1 H2 仅从数据链路层观察帧的流动 2020 4 7 计算机网络 数据链路层 8 3 1使用点对点信道的数据链路层3 1 1数据链路和帧 链路 link 是从一个结点到相邻结点的物理线路段 中间没有其他的交换结点 一条链路只是路径的一个组成部分 数据链路 datalink 除了物理线路外 还必须有通信协议来控制这些数据的传输 若把实现这些协议的硬件和软件加到链路上 就构成了数据链路 现在最常用的方法是使用适配器 即网卡 来实现这些协议的硬件和软件 一般的适配器都包括了数据链路层和物理层这两层的功能 2020 4 7 计算机网络 数据链路层 9 IP数据报 1010 0110 帧 取出 数据链路层 网络层 链路 结点A 结点B 物理层 数据链路层 结点A 结点B a b 发送 接收 链路 IP数据报 1010 0110 帧 装入 数据链路层传送的是帧 2020 4 7 计算机网络 数据链路层 10 3 1 2三个基本问题 1 封装成帧 2 透明传输 3 差错控制 2020 4 7 计算机网络 数据链路层 11 1 封装成帧 封装成帧 framing 就是在一段数据的前后分别添加首部和尾部 然后就构成了一个帧 确定帧的界限 首部和尾部的一个重要作用就是进行帧定界 帧结束 帧首部 IP数据报 帧的数据部分 帧尾部 MTU 数据链路层的帧长 开始发送 帧开始 MTU 最大传送单元 2020 4 7 计算机网络 数据链路层 12 用控制字符进行帧定界的方法举例 SOH 装在帧中的数据部分 帧 帧开始符 帧结束符 发送在前 EOT ASCII码有33个不可见的控制字符 SOH 01 16EOT 04 16 SOH和EOT是其中两个的名称 2020 4 7 计算机网络 数据链路层 13 2 透明传输 SOH EOT 出现了 EOT 被接收端当作无效帧而丢弃 被接收端误认为是一个帧 数据部分 EOT 完整的帧 发送在前 2020 4 7 计算机网络 数据链路层 14 解决透明传输问题 数据中出现控制字符 SOH 或 EOT 时 在这个字符前插入一个转义字符 ESC 1B 16 称作字节填充或字符填充 characterstuffing 接收端的数据链路层在将数据送往网络层之前删除插入的转义字符 如果转义字符也出现数据当中 那么应在转义字符前面插入一个转义字符 当接收端收到连续的两个转义字符时 就删除其中前面的一个 C语言要打印双引号怎么办 printf I am I am 2020 4 7 计算机网络 数据链路层 15 SOH SOH EOT SOH ESC ESC EOT ESC SOH ESC ESC ESC SOH 原始数据 EOT EOT 经过字节填充后发送的数据 字节填充 字节填充 字节填充 字节填充 发送在前 帧开始符 帧结束符 用字节填充法解决透明传输的问题 SOH 2020 4 7 计算机网络 数据链路层 16 3 差错检测 在传输过程中可能会产生比特差错 1可能会变成0而0也可能变成1 在一段时间内 传输错误的比特占所传输比特总数的比率称为误码率BER BitErrorRate 为了保证数据传输的可靠性 在计算机网络传输数据时 必须采用各种差错检测措施 2020 4 7 计算机网络 数据链路层 17 循环冗余检验的原理 在数据链路层传送的帧中 广泛使用了循环冗余检验CRC的检错技术 把数据划分为组 假定每组k个比特 假设待传送的一组数据M 101001 现在k 6 我们在M的后面再添加供差错检测用的n位冗余码一起发送 101001 xxxx 数据部分 冗余部分 2020 4 7 计算机网络 数据链路层 18 冗余码的计算 1 在数据M后面添加n个0 2 得到的 k n 位的数除以事先选定好的长度为 n 1 位的除数P 得出商是Q而余数是R 余数R比除数P少1位 即R是n位 2020 4 7 计算机网络 数据链路层 19 冗余码的计算举例 现在k 6 M 101001 设n 3 除数P 1101 被除数是101001000 模2除法运算的结果是 商Q 110101 余数R 001 3 把余数R作为冗余码添加在数据M的后面发送出去 发送的数据是 MR即 101001001 共 k n 位 2020 4 7 计算机网络 数据链路层 20 110101 Q 商 P 除数 1101101001000 被除数 11011110110101110000111011010110000011001101001 R 余数 作为FCS 循环冗余检验的原理说明 模2除法 减法不借位即 异或 101001001能否被整除 2020 4 7 计算机网络 数据链路层 21 帧检验序列FCS 在数据后面添加上的冗余码称为帧检验序列FCS FrameCheckSequence 在CRC方法中 FCS就是余数R 2020 4 7 计算机网络 数据链路层 22 接收端对收到的每一帧进行CRC检验 1 若得出的余数R 0 则判定这个帧没有差错 就接受 accept 2 若余数R 0 则判定这个帧有差错 就丢弃 但这种检测方法并不能确定究竟是哪一个或哪几个比特出现了差错 可能检测不到差错吗 2020 4 7 计算机网络 数据链路层 23 检测不到错误的情况 101001001错传为101000100接收端CRC检验得到的余数也是0因此 除数P需要经过严格的挑选并使用足够多的位数 这样出现检测不到的差错的概率就很小很小 2020 4 7 计算机网络 数据链路层 24 除数P的多项式表示 P X X3 X2 1表示上面前面的除数P 1101 2020 4 7 计算机网络 数据链路层 25 数据链路层的CRC 以帧为单位划分组发送端FCS的生成和接收端的CRC检验均使用硬件完成 速度很快 2020 4 7 计算机网络 数据链路层 26 应当注意 仅用循环冗余检验CRC差错检测技术只能做到无差错接受 accept 无差错接受 是指 凡是接受的帧 即不包括丢弃的帧 我们都能以非常接近于1的概率认为这些帧在传输过程中没有产生差错 也就是说 凡是接收端数据链路层接受的帧都没有传输差错 有差错的帧就丢弃而不接受 可靠传输 即发送什么就收到什么解决帧丢失 帧重复和帧失序等问题必须再加上确认和重传机制 2020 4 7 计算机网络 数据链路层 27 课堂练习 P1053 071110 2020 4 7 计算机网络 数据链路层 28 3 2点对点协议PPP3 2 1PPP协议的特点 通信线路质量较差的年代 使用高级数据链路控制 HDLC 协议来实现可靠传输现在线路质量比较好 使用得最多的数据链路层协议是点对点协议PPP Point to PointProtocol 用户使用拨号电话线接入因特网时 一般都是使用PPP协议 现在的ADSL也是借助电话线拨号上网 2020 4 7 计算机网络 数据链路层 29 用户到ISP的链路使用PPP协议 用户 至因特网 已向因特网管理机构申请到一批IP地址 ISP 接入网 PPP协议 2020 4 7 计算机网络 数据链路层 30 1 PPP协议应满足的需求 简单 这是首要的要求封装成帧透明性多种网络层协议多种类型链路差错检测检测连接状态最大传送单元网络层地址协商数据压缩协商 2020 4 7 计算机网络 数据链路层 31 2 PPP协议不需要的功能 纠错 只需要检测到错误流量控制序号多点线路半双工或单工链路 2020 4 7 计算机网络 数据链路层 32 3 PPP协议的组成 1992年制订了PPP协议 经过1993年和1994年的修订 现在的PPP协议已成为因特网的正式标准 RFC1661 PPP协议有三个组成部分一个将IP数据报封装到串行链路的方法 链路控制协议LCP LinkControlProtocol 网络控制协议NCP NetworkControlProtocol 2020 4 7 计算机网络 数据链路层 33 3 2 2PPP协议的帧格式 PPP有一个2个字节的协议字段 当协议字段为0 x0021时 PPP帧的信息字段就是IP数据报 若为0 xC021 则信息字段是PPP链路控制数据 若为0 x8021 则表示这是网络控制数据 IP数据报 1 2 1 1 字节 1 2 不超过1500字节 PPP帧 先发送 7E FF 03 F A C FCS F 7E 协议 信息部分 首部 尾部 后两个均是PPP协议产生的 2020 4 7 计算机网络 数据链路层 34 PPP协议的帧格式 标志字段F 0 x7E 符号 0 x 表示后面的字符是用十六进制表示 十六进制的7E的二进制表示是01111110 地址字段A只置为0 xFF 地址字段实际上并不起作用 控制字段C通常置为0 x03 PPP是面向字节的 所有PPP帧的长度都是整数字节 2020 4 7 计算机网络 数据链路层 35 透明传输问题 PPP中帧开始和结束的字符都是0 x7E必须解决信息部分出现0 x7E的问题当PPP用在同步传输链路时 协议规定采用硬件来完成比特填充当PPP用在异步传输时 就使用一种特殊的字符填充法 2020 4 7 计算机网络 数据链路层 36 异步传输 字符填充 将信息字段中出现的每一个0 x7E字节转变成为2字节序列 0 x7D 0 x5E 若信息字段中出现一个0 x7D的字节 则将其转变成为2字节序列 0 x7D 0 x5D 若信息字段中出现ASCII码的控制字符 即数值小于0 x20的字符 则在该字符前面要加入一个0 x7D字节 同时将该字符的编码加上0 x20 2020 4 7 计算机网络 数据链路层 37 同步传输 零比特填充 PPP协议进行同步传输时 一连串的比特连续传送 采用零比特填充方法来实现透明传输 在发送端 只要发现有5个连续1 则立即填入一个0 接收端对帧中的比特流进行扫描 每当发现5个连续1时 就把这5个连续1后的一个0删除 2020 4 7 计算机网络 数据链路层 38 010011111010001010 01001111110001010 010011111010001010 信息字段中出现了和标志字段F完全一样的8比特组合 发送端在5个连1之后填入0比特再发送出去 在接收端把5个连1之后的0比特删除 会被误认为是标志字段F 发送端填入0比特 接收端删除填入的0比特 零比特填充 2020 4 7 计算机网络 数据链路层 39 3 2 3PPP协议的工作状态 当用户拨号接入ISP时 路由器的调制解调器对拨号做出确认 并建立一条物理连接 PC机向路由器发送一系列的LCP分组 封装成多个PPP帧 这些分组及其响应选择一些PPP参数 和进行网络层配置 NCP给新接入的PC机分配一个临时的IP地址 使PC机成为因特网上一个主机 通信完毕时 NCP释放网络层连接 收回原来分配出去的IP地址 接着 LCP释放数据链路层连接 最后释放物理层连接 2

温馨提示

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

评论

0/150

提交评论