计网复习——数据链路层

本文详细阐述了数据链路层的功能,包括点对点和广播信道的通信方式、成帧方法、错误检测(如CRC校验)和流量控制机制。介绍了单工、停-等、ARQ协议及滑动窗口协议,讨论了PPP协议和CSMA/CD在局域网中的应用。此外,还涵盖了以太网的标准、帧格式和介质访问控制。内容深入浅出,有助于理解数据链路层的关键概念和技术。

计网复习——数据链路层

1. 数据链路层设计要点

1.1 数据链路层概述

  • 物理层实现了比特流的传输,数据链路层在其基础上实现 帧(frame) 的传输

    • 数据链路层传输的协议数据单元(PDU)是帧

在这里插入图片描述

  • 数据链路层使用的信道类型

    • 点对点信道
      • 使用一对一的点对点通信方式
    • 广播信道
      • 使用一对多的广播通信方式
      • 广播信道上连接多个主机,必须采用专门的共享信道协议来协调数据发送

在这里插入图片描述

  • 数据链路层涉及的问题

    • 成帧(framing):怎样组成帧、怎样使接收方识别帧
    • 差错控制:帧在传输过程中出错的检测
    • 流量控制及可靠传输:仅是数据链路层的选项
    • 广播信道中的介质访问控制

1.2 成帧方法

  • 成帧要考虑的问题:接收方如何识别帧的边界?

  • 常用的成帧方法

    • 字符计数法:在帧头部字段中指明本帧的字节数,接收方通过该字段得知该接收多少字节

    • 字符填充的首尾定界法:定义专门的字符作为帧的起始/结束标志,并使用字符填充方法将标志字符与数据区分开来

    • 比特填充的首尾定界法:定义专门的比特序列作为帧的起始/结束标志,并使用比特填充方法将标志序列与数据区分开来

      字符填充方法和比特填充方法应该就是针对在数据中出现标志字符或标志序列,但是它们不是起始/结束标志的情况

    • 物理编码违例法:使用无效的物理编码作为帧的开始/结束标志,供接收方识别

在这里插入图片描述

2. 错误检测和纠正

2.1 检错编码

  • 任何通信链路在传输数据时都可能出错

  • 一般用 误码率BER(Bit Error Rate) 表示链路可靠性
    误码率=出错的比特数传送的总比特数 误码率=\frac{出错的比特数}{传送的总比特数} =

  • 处理方法

    • 使用可检测并纠正错误的编码:纠错码
    • 使用可检测错误的编码+重传:检错码
  • 常用检错编码方式

    • 奇偶校验

在这里插入图片描述

  • 简单累加和(校验和)

  • 循环冗余校验CRC(Cyclic Redundancy Check)

  • 循环冗余校验CRC原理

    • 发送方把数据划分为组,设每组k个比特,在其后添加供差错检测用的n位冗余码,(k+n)比特一起发送

    • 对数据M计算n位冗余码的过程:

      • 用二进制的模2运算进行2n2^n2n乘M的运算,这相当于在M后面添加n个0

      • 得到的 (k+n)位的数除以事先选定好的长度为(n+1)位的除数P,得出商是Q而余数是R,余数R比除数P少1位,即R是n位

        在CRC运算中,总能保证除数的首位为1,则模2除法运算的商是由余数首位与除数首位的模2除法运算结果确定。因为除数首位总是1,那么余数首位是1就商1,是0就商0

      • R作为冗余码,添加在数据M后面,最终发送数据:2nM+R2^{n}M+R2nM+R

    • 接收方对收到的(k+n)比特计算冗余码,结果为0表示传输正确,否则表示传输错误

    • 例:计算101001的3位CRC冗余码,已知M=101001、k=6、n=3,设除数P=1101

      • 被除数:2nM=1010010002^{n}M=1010010002nM=101001000

      • 模2运算(异或)的结果:商Q=110101,余数R=001

在这里插入图片描述

* 发送的数据:$2^{n}M+R$,即101001001,共(k+n)位
  • 通常用生成多项式P(x)P(x)P(x)表示除数PPP

    • 例:除数P=1101P=1101P=1101的生成多项式P(X)=X3+X2+1P(X)=X^3+X^2+1P(X)=X3+X
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值