文章目录

一、数据链路层总体概述

【复习笔记】计算机网络之数据链路层_多路复用

数据链路层的功能

【复习笔记】计算机网络之数据链路层_访问控制_02

二、 封装成帧

【复习笔记】计算机网络之数据链路层_多路复用_03


透明传输: 指不管数据是什么样的比特组合(就算与控制信息相同),都能够顺利地在链路上传输。

1. 字符计数法

【复习笔记】计算机网络之数据链路层_多路复用_04


此方法缺点太明显,一般不使用

2. 字符填充法

若数据中出现与控制信息相同的比特组合,我们在这些信息前面加上 转义字符 ,然后发送。接收时,遇见转义字符一律剔除,直到遇见结束符为止。

【复习笔记】计算机网络之数据链路层_访问控制_05

3. 零比特填充法

为了防止数据部分有与帧边界 【复习笔记】计算机网络之数据链路层_访问控制_06 相同的比特组合,一旦数据部分出现【复习笔记】计算机网络之数据链路层_访问控制_07 我们就无脑插入一个 【复习笔记】计算机网络之数据链路层_访问控制_08。同理,接收时遇见 【复习笔记】计算机网络之数据链路层_访问控制_07 就剔除后面的 【复习笔记】计算机网络之数据链路层_访问控制_08。若后面不是 【复习笔记】计算机网络之数据链路层_访问控制_08

【复习笔记】计算机网络之数据链路层_多路复用_12

三、差错控制

1. 奇偶校验

发送的帧包含【复习笔记】计算机网络之数据链路层_访问控制_13个信息位,【复习笔记】计算机网络之数据链路层_多路复用_14个校验位。若采用偶校验,则加上校验位后,发送的帧中共包含偶数个【复习笔记】计算机网络之数据链路层_多路复用_14,接收方再进行校验,检错能力为【复习笔记】计算机网络之数据链路层_访问控制_16

2. CRC循环冗余码

【复习笔记】计算机网络之数据链路层_访问控制_17


【复习笔记】计算机网络之数据链路层_数据_18


接收方用收到的数据对生成多项式进行异或运算,整除则正确,否则不正确

四、流量控制

数据链路层流量控制手段: 接收方收不下就不回复确认
传输层流量控制手段: 接受端给发送端一个窗口公告

1. 停止等待协议

无差错的情况

【复习笔记】计算机网络之数据链路层_多路复用_19


有差错的情况

【复习笔记】计算机网络之数据链路层_多路复用_20

【复习笔记】计算机网络之数据链路层_多路复用_21

【复习笔记】计算机网络之数据链路层_访问控制_22


信道利用率

【复习笔记】计算机网络之数据链路层_访问控制_23


停等协议的信道利用率

【复习笔记】计算机网络之数据链路层_多路复用_24


可以看到,停等协议的信道利用率是很低的,多数时间在路上传播以及在等待数据帧,而不是在发送数据。

2. 后退N帧协议(Go Back N)

下图需要仔细理解

【复习笔记】计算机网络之数据链路层_访问控制_25


发送方需要相应的三件事

【复习笔记】计算机网络之数据链路层_多路复用_26


【复习笔记】计算机网络之数据链路层_访问控制_27


超时事件解释:

接收方 接收到0号帧后,就移动窗口准备接收1号帧,然而1号帧在路上丢失了,接受方收到了2、3号帧,此时接收方直接丢弃2、3号帧。

发送方 发送0、1、2、3号帧后,为每个帧设置定时器。接收到0号帧的确认,却没有收到1、2、3号帧的确认,于是再次重发1、2、3号帧。

讨论滑动窗口的大小:

若采用 【复习笔记】计算机网络之数据链路层_访问控制_28 个比特对帧编号,那么发送窗口的大小 【复习笔记】计算机网络之数据链路层_多路复用_29 应满足:【复习笔记】计算机网络之数据链路层_访问控制_30。因为发送窗口的尺寸过大,会导致接收方返回的ACK对应不同的帧,这就出现了错误。

对于GBN协议的简单总结:

【复习笔记】计算机网络之数据链路层_多路复用_31


由于出错时需要回退 【复习笔记】计算机网络之数据链路层_访问控制_28 帧,而此时也许只需要重发一个帧即可,因此GBN协议也有可以改进的地方,选择重传协议 就可解决此问题。

2. 选择重传协议

解决 回退n帧 的方法:设置单个确认,同时加大接收窗口,设置接收缓存,缓存乱序到达的帧。

接收方窗口的6种状态:

【复习笔记】计算机网络之数据链路层_多路复用_33


发送方需要响应的事:

【复习笔记】计算机网络之数据链路层_数据_34


【复习笔记】计算机网络之数据链路层_访问控制_35

发送方窗口的3种状态:

【复习笔记】计算机网络之数据链路层_数据_36


接收方需要响应的事:

【复习笔记】计算机网络之数据链路层_访问控制_37


讨论窗口长度:

【复习笔记】计算机网络之数据链路层_访问控制_38


上图中,接收方就无法区分0号帧时重传的还是下一个0号帧。窗口太长,导致接收方无法区分当前收到的帧是重发的还是下一个

因此,我们规定【复习笔记】计算机网络之数据链路层_访问控制_39,其中 【复习笔记】计算机网络之数据链路层_访问控制_28

关于介质访问控制

【复习笔记】计算机网络之数据链路层_访问控制_41


【复习笔记】计算机网络之数据链路层_多路复用_42

五、信道划分介质访问控制(静态分配信道)

【复习笔记】计算机网络之数据链路层_数据_43

1. 频分多路复用(FDM)

【复习笔记】计算机网络之数据链路层_多路复用_44

2. 时分多路复用(TDM)

【复习笔记】计算机网络之数据链路层_多路复用_45

3. 波分多路复用(WDM)

【复习笔记】计算机网络之数据链路层_多路复用_46

4. 码分多路复用(CDM)

应该不考,不记了。。

六、随机访问介质访问控制(动态分配信道)

1. 纯ALOHA协议

【复习笔记】计算机网络之数据链路层_多路复用_47

2. 时隙ALOHA协议

【复习笔记】计算机网络之数据链路层_访问控制_48


关于两个ALOHA协议的总结:

  • 纯ALOHA协议比时隙ALOHA协议吞吐量更低,效率更低
  • 纯ALOHA想发就发,时隙ALOHA协议只有在时间片开始时才可发
3. CSMA协议

【复习笔记】计算机网络之数据链路层_多路复用_49

1 坚持CSMA

【复习笔记】计算机网络之数据链路层_数据_50


非坚持CSMA

【复习笔记】计算机网络之数据链路层_数据_51


P 坚持CSMA

【复习笔记】计算机网络之数据链路层_访问控制_52


三种CSMA总结:

【复习笔记】计算机网络之数据链路层_多路复用_53

4. CSMA/CD协议

CSMA/CD协议多用于总线型以太网。

【复习笔记】计算机网络之数据链路层_访问控制_54


传播时延对载波监听的影响

【复习笔记】计算机网络之数据链路层_数据_55


【复习笔记】计算机网络之数据链路层_多路复用_56 趋近于 【复习笔记】计算机网络之数据链路层_访问控制_08 时,经过最长时间 【复习笔记】计算机网络之数据链路层_多路复用_58

检测到冲突后,不可马上重传数据包,否则两个主机的数据包经过 【复习笔记】计算机网络之数据链路层_访问控制_59

截断二进制指数规避算法

【复习笔记】计算机网络之数据链路层_访问控制_60


【复习笔记】计算机网络之数据链路层_数据_61 的取值范围为 【复习笔记】计算机网络之数据链路层_多路复用_62

最小帧长问题

为避免数据包发送完成后才检测到冲突,我们规定一个最小帧长。由于最大经过 【复习笔记】计算机网络之数据链路层_多路复用_58 可得知数据包冲突。因此,帧的传输时延 【复习笔记】计算机网络之数据链路层_多路复用_64

【复习笔记】计算机网络之数据链路层_数据_65


16字总结:先听再发,边发边听,冲突停发,随机(延迟)重发

5. CSMA/CA协议

CSMA/CA协议多用于无线局域网

【复习笔记】计算机网络之数据链路层_数据_66


CSMA/CD和CSMA/CA的对比

【复习笔记】计算机网络之数据链路层_多路复用_67

七、轮询访问介质访问控制(动态分配信道)

1. 轮询协议(非常简单)

【复习笔记】计算机网络之数据链路层_多路复用_68


存在的问题:

  • 轮询花费时间
  • 当某主机有数据要发时不能及时发送,得等主结点轮询
  • 主结点损坏,整个系统瘫痪
2. 令牌传递协议

【复习笔记】计算机网络之数据链路层_访问控制_69

令牌使用流程:

  1. D主机修改令牌状态(闲—>忙),同时附上要发送的数据以及目的主机A
  2. 主机C拿到令牌后,发现令牌忙且数据不是给自己的,就不管
  3. 令牌到达主句A后,A发现是给自己的,于是复制一份数据保存本地
  4. 最终令牌到达主机D,D检查数据是否有误,有则重发,没有则修改令牌状态(忙—>闲)

存在的问题:

  • 令牌开销
  • 等待延迟:某主机有数据不能立即发送,得拿到令牌才能发送
  • 单点故障:若其中一个主机损坏,则令牌很难传递

负载轻时 ,令牌大部分时间是在网络中游走,而没有被利用

八、局域网基本概念和体系结构

1. 局域网拓扑结构

【复习笔记】计算机网络之数据链路层_访问控制_70

2. 局域网传输介质

有线局域网: 双绞线、同轴电缆、光纤
无线局域网: 电磁波

3. 局域网的分类

【复习笔记】计算机网络之数据链路层_多路复用_71

4. MAC子层和LLC子层

【复习笔记】计算机网络之数据链路层_多路复用_72

5. 以太网特点
  • 成本低
  • 比令牌环网、ATM网便宜,简单
  • 逻辑上总线型,物理上星型
  • 满足网络速率的要求
  • 提供无连接、不可靠的服务。以太网只实现无差错接收(错了就丢弃),不实现可靠传输(帧重复、帧失序等)。
6. 以太网帧结构

【复习笔记】计算机网络之数据链路层_数据_73

7. 高速以太网

【复习笔记】计算机网络之数据链路层_多路复用_74

8. 有固定基础设施无线局域网

【复习笔记】计算机网络之数据链路层_访问控制_75

9. 无固定基础设施无线局域网的自组织网络
  • 没有任何转发器、路由器、集线器、基站
  • 由一些主机组成的网络,主机可以充当路由器,既可以发送数据,也可以转发数据,各结点的低位平等

【复习笔记】计算机网络之数据链路层_多路复用_76

九、广域网

【复习笔记】计算机网络之数据链路层_访问控制_77

1. PPP协议

需要满足的要求:

【复习笔记】计算机网络之数据链路层_数据_78


无需纠错、流量控制、序号、不支持多点线路

PPP协议的帧格式:

【复习笔记】计算机网络之数据链路层_多路复用_79

2. HDLC协议

HDLC是面向比特的数据传输协议

HDLC的零比特填充

【复习笔记】计算机网络之数据链路层_多路复用_80

HDLC协议和PPP协议的对比:

【复习笔记】计算机网络之数据链路层_访问控制_81