「计算机网络」课程笔记 —— 数据链路层

·
瀚星空 计算机网络 June 22, 2018

数据链路层

处理两个相邻节点之间的通信

成帧

成帧:数据链路最基本的功能

将网络(Network)层传下来的分组添加首部和尾部,用于标记帧的开始和结束。

透明传输的实现:

  • 字节填充法:

    数据部分出现首部尾部相同的内容前面插入转义字符,如果出现转义字符,那么就在转义字符前面再加个转义字符,在接收端进行处理之后可以还原出原始数据。这个过程透明传输的内容是转义字符,用户察觉不到转义字符的存在。

  • 位填充法

    比特位填充是每五连1时,插入一个比特0的 过程,以便接收方不会误认为是帧的标记。

    mark

差错控制

差错的类型

  • 单个位差错
  • 突发性差错

块编码

  • 每块有 k 位,称为数据字
  • 增加 r 位冗余位,其长度变为 $n=k+r$ ,形成的 n 位块称为 码字

检错的方法

若出现差错后,有效的码字变成了无效的码字,就检测出了差错

纠错的方法

汉明距离

两个字的汉明距离是对应位不同的数量,接受到的码字和发送的码字之间的汉明距离是传输中破坏的位数

检错的最小汉明距离
$$
d_{min} = s+1
$$
其中,$s$ 为最多差错位数

纠错的最小汉明距离
$$
d_{min} = 2t+1
$$
其中,$t$ 为最多差错位数

mark

线性块编码

在线性块编码中,任意两个有效码字的异或,是另一个有效码字

线性块编码的最小汉明距离是具有最小 1 的个数的非 0 码字中 1 的个数。

  1. 简单奇偶校验码

  2. $d_{min} = 3$ 的 汉明编码

  3. 循环编码

    码字循环移位的结果是另一个码字

    • 循环冗余校验 CRC

      循环编码的性能分析

      1. 生成多项式至少有两项且 $x^0$ 的系数为 1 ,能捕捉到所有的单个位差错
      2. 若在第 $i$ 位和第 $j$ 位出现差错,则生成多项式不能是 $x^{j-i}+1$
      3. $x+1$ 和其他多项式相乘得到的生成多项式可以捕捉到所有奇数个错误
      4. 突发性差错
        • 长度 $L$ 小于等于校验位数 $r$ 的差错都会被检测到
        • 长度 $L$ 等于校验位数 $r+1$ 的差错有 $1-\frac{1}{2}^{r-1}$ 的概率被检测到
        • 长度 $L$ 大于校验位数 $r+1$ 的差错有 $1-\frac{1}{2}^{r}$ 的概率被检测到

校验和

mark

可靠传输

  • 流量控制就是一系列过程,用来限制发送方在 等到确认之前发送的数据数量。

  • 差错控制

    差错检测和重传的办法,数据链路层的差错控制基于自动重复请求(Request)(ARQ), 即重传数据。检测到一个差错,就要重传这个出错的帧

协议

无噪声通道

1. 最简协议

无流量控制的协议

2. 停等协议

增加ACK确认,用 canSend = true/false 调节

有噪声通道

1. 停止等待自动重复请求 (停等 ARQ)
  • 序列号:0、1
  • 确认号:期待接受的下一帧
  • 增加定时器 StartTimer(),超时发送方重发
2. 回退 n 帧自动重发

mark

  • 序列号:模$2^m $
  • 特性:定时器,ACK
  • 发送窗口大小 $maxsize = 2^m-1$
  • 接收窗口大小 = 1

mark

选择重发 ARQ
  • 发送窗口大小 $maxsize = 2^{(m-1)}$
  • 接收窗口大小 = 发送窗口大小
  • 特性:ACK、NAK、定时器

mark

真实协议

HDLC 高级数据链路控制协议

  • 配置和传输方式

    • 正常响应模式
    • 异步平衡模式 (普遍应用的模式)
  • 帧结构

    三种帧结构:信息帧、管理帧、无编号帧

    mark

    字段:

    • 标记字段:01111110

    • 地址字段:如果主站产生帧,它包含着 一个"去往"地址。如果从站产生帧,它则包含一个"来自"地址。 。如果地址字段多于一个字节,所有的宇节除了最后一个字节外都以0结束,只有最后一个宇节以1结束。中间的字节都以 结束是为了提示接收方会有 更多的地址字节到来。

    • 信息字段:包含网络层的信息

    • 帧校验字段:CRC校验

    • 控制字段:

    • 信息帧:是一位是0,通过捎带方式,包含流量控制和差错控制信息

      mark

    • 管理帧:前两位是10,没有信息字段,用来进行流量控制和差错控制

    • 无编号帧:包含一个信息字段,用作系统管理

点到点 PPP 协议

PPP 是一个面向字节的协议

  • 帧格式

    mark

    • 标记:面向字节的 01111110
    • 地址:11111111(广播)通常省略
    • 控制:11000000 (HDLC的无编号帧)省略
    • 协议:指明承载了用户数据还是其他信息 2字节或1字节
    • 有效载荷:,最大数量的默认值是 1500字节
    • 帧校验序列:2到4字节的标准 CRC
  • 传输建立

    mark

  • 多路复用

    • 链路控制协议 LCP:建立维系确认并终止链路

    协议字段:C021;载荷格式:编码、ID、长度、信息

    • 鉴别协议

    • PAP 口令鉴别协议

      mark

    • CHAP 查询握手协议

      mark

    • 网络控制协议

    使用不同的网络协议,承载网络层数据分组,如 IPCP 协议,承载 IP 数据分组

  • 当我们在谈论编程时我们在谈论什么
  • 「计算机网络」课程笔记 —— 网络层

_(:3 」∠)_
(抱歉)
这里不能评论哦

Title
差错的类型
块编码
检错的方法
纠错的方法
线性块编码
校验和
协议
无噪声通道
有噪声通道
真实协议
HDLC 高级数据链路控制协议
点到点 PPP 协议

© 2023 夏末阁. Using Typecho & Moricolor.

陕ICP备16018536号-1