目录
考纲内容
组帧
数据链路层将比特组成 帧(就是个单位名词)
四种组帧方式
字符计数法
在每一帧的头部使用一个计数字段,表明这一帧有多少字符(一个乱了,后面就都乱了)
字符填充
在头部和尾部分别添加特殊表示开始(DLE STX)和结束(DLE ETX)的字符,接受时只删去头尾一对 (因为中间是数据)
零比特填充
使用 01111110 来标记一帧的开始和结束,因此数据中每有 5 个 1 出现时自动在 5个1后添加一个0 ,接收时,使用逆操作恢复数据
违规编码
将未使用的编码作为帧的开头和结尾
Eg:曼彻斯顿编码将 数据比特 1 编码成 “高—低” 数据比特 0 编码成 “低—高”,因此 “高—高” “低—低” 即为违规编码
差错控制
奇偶校验
奇校验:在数据后添加一位校验位,使数据和校验位的 1 总数为 奇数
偶校验:在数据后添加一位校验位,使数据和校验位的 1 总数为 偶数
循环冗余校验
根据给出的多项式 (形如 形式),得出 系数序列 ,在待校验的数据 D 后添加等于最高阶个数的 0 序列,变为 D1 ,再使用 D1 和 系数序列 进行 异或运算 得出 余数, 余数即 帧检验序列(FCS)也就是 冗余码
海明码
第一步
n 为数据的位数,k 为校验位位数,k 需要满足
(若需要检测两位错误 ,需要 k+1 位校验位,即k满足 )
第二步
将校验位插入 的位置上,紫色是新的编号,(这里是对原本数据位倒着编号)
第三步
由第二步得出,将用到校验位的各位的值进行 异或运算
P1= 1 ⊕ 1 ⊕ 0 = 0
P2= 1 ⊕ 0 ⊕ 0 = 1
P3= 1 ⊕ 0 ⊕ 1 = 0
纠错
将用到校验位的各位的值与校验位进行异或运算
根据校验位个数得到 如果 = 000,则无误,反之则代表第几位 数据位 出错,将该位取反则是完成纠错
流量控制和可靠传输
滑动窗口
发送窗口:发送时计数,只允许同时有 X (窗口大小)个已发送但未确认的帧
接收窗口:接收时计数,只允许接受 X (窗口大小)个帧,并发回确认(只允许接收当前窗口内的帧,窗口外的帧一律丢弃)
PS:每一帧都有序号,采用 n 比特对帧进行编号
单帧滑动窗口与停止-等待协议
每次只发送一帧,发送时计时,等待应答后再发送,没收到应答信号时,等待至计时器超时,重新发送该帧,收到 “错误” 的应答信号时重传该帧,因此发送和接收双方均有帧缓存区
(即发送窗口和接收窗口均为 1)
多帧滑动窗口与后退N帧协议(GBN)
在单帧滑动窗口与停止-等待协议基础上,多帧滑动窗口进行改进,因为接收方只能按顺序接收,所以当一次发送多帧时,其中一帧出错,需重传该帧以及随后的帧
(即发送窗口为 X 和接收窗口为 1,X ≤ )
Eg:已发送0-7帧,计时器超时时,只收到 0 1 3 5的确认,需要重传 6 和 7,因为最后的确认帧为5 ,表示5号以前都收到了,所以只需要重传 6 7
多帧滑动窗口与选择重传协议(SR)
在多帧滑动窗口与后退N帧协议基础上,只重传丢失或超时的帧
(即发送窗口和接收窗口均为 X,即2X ≤ 2^n)
Eg:已发送0-7帧,计时器超时时,只收到 0 1 3 5 7的确认,需要重传 2 4 6,谁超时重传谁
信道利用率
从发送方开始发送到接收到第一个确认帧为止,称为一个 发送周期(T)。发送方在做个饭周期内共发送L比特的数据,发送方数据传输率 C ,则用于发送数据的有效时间为 L/C ,则信道利用率为 (L/C)/T
介质访问控制
用来决定广播信道中 信道分配 的协议属于数据链路层的一个 子层 ,称为 介质访问控制层(MAC) 子层。
信道划分介质访问控制
将信道划分成一条条子信道,分配给各个用户,有以下四种方法
(1)频分复用 (FDM)
将不同用户的基带信号 调制成 不同频率,再叠加形成一个复合信号
(2)时分复用 (TDM)
将一条信道按照时间分成若干 时间片,固定轮流分配给多个用户
统计时分复用(STDM)即 动态 的分配时间片,不再是固定分配
(3)波分复用 (WDM)
同频分复用一样,只是这里的载体是光,调制成不同 波长 的光
(4)码分复用 (CDM)
暂略
随机访问介质访问控制
ALOHA协议
(1)纯ALOHA协议
网络中任意节点需要发送数据,可以 不进行 任何检测就发送,如果在一段时间内没收到确认,就认为传输过程中发生冲突,等待一定时间后再重新发送,直至成功为止
(2)时隙ALOHA协议
在纯ALOHA协议基础上将所有节点时间同步,将时间划分为一段段等长的 时隙 ,规定只能在每个时隙开始时才能发送一帧。
CSMA协议
(1)1 - 坚持CSMA
当有节点需要发送数据时,先监听信道,如果信道空闲则立即发送,如果信道忙则 一直等待 ,并持续监听至信道空闲
(2)非坚持CSMA
当有节点需要发送数据时,先监听信道,如果信道空闲则立即发送,如果信道忙则 放弃监听 ,等待一个随机时间再重复该过程
(3)p - 坚持CSMA
当有节点需要发送数据时,先监听信道,如果信道忙则 一直等待 ,并持续监听至信道空闲,如果信道空闲则以概率 P 发送数据,以概率 1-P 推到下一个时隙重复该过程
CSMA/CD协议
适用于总线型网络或半双工网络
当需要发送数据时先监听信道,如果空闲,开始传输,如果信道忙等待至空闲,再开始传输
传输中如果检测到其他节点也发送了数据,则停止传输,改为传输一个 48 比特的拥塞信号,任何站点收到小于 最短帧长 的帧时就视为无效帧丢弃。
如果发送产生了冲突 ,采用 二进制指数退避算法
最短帧长
因为要保证能在传输过程中检测到冲突,所以任意节点发送数据到达之前需要一直检测,即 每一帧的最小传播时延 ≥ 2 总线时延
二进制指数退避算法
- 确定基本退避时间,一般用 2倍总线传播时延 2J(来回)
- 重传次数K ,每重传一次 ,K+1,但是K ≤ 10 (即即使重传次数大于10,K=10)
- 从 [ 0 , 1 , 2 , ... , ] 中选取 随机数 r ,重传所需的退避时间就是 r * 2J
- 如果重传16次仍不成功,说明网络太拥挤,此帧永远不能到达,舍弃此帧并向上报告
CSMA/CA协议
适用于无线网环境
轮询访问介质访问控制
局域网
以太网与IEEE 802.3
以太网的传输介质与网卡
10BASE5 10BASE2 10BASE-T 10BASE-FL 传输媒体 粗同轴电缆 细同轴电缆 非屏蔽双绞线 光纤 拓扑结构 总线 总线 星型 点对点 最大段长 500m 185m 100m 2000m 最多节点数目 100 30 2 2
以太网MAC帧(DIX V2标准)
(PS:802.3标准 与 DIX V2标准区别在 V2的表示类型(2B)区域,802.3在该处是表示数据域的长度)
因为收最短帧长限制,所以数据域若不满46B,则使用 0 比特填充至46B,使其能满足64B最短帧长
802.11
无线局域网标准,采用CSMA/CA协议
(PS:与有线局域网不同,在无线局域网中,即使发生了碰撞,也要把整个帧发送完毕而不是立即停止)
广域网
SLP协议
SLP协议主要完成数据的传送,但斌没有 数据校验 、寻址、分组和数据压缩等功能,且上层只能是 IP协议
PPP协议
PPP协议(点对点协议)是在SLP协议上的升级,它是使用 串行 线路通信的 面向字节 的协议,该协议使用在直接连接两个节点的链路上
PPP协议由三个部分组成:
- 链路控制协议(LCP) 用于建立、配置、控制数据链路层
- 网络控制协议(NCP) 用于配置 不同 的 网络层协议
- 数据部分
如下图所示,
- 第一个字节和最后一个字节是PPP帧的开始和结束标记 F,长度都是 1 字节,内容都是 7E(01111110),数据部分出现 7E 时, 将 7E 转义为 7D( 01111101 ),也就是前面的 0比特填充
- A 和 C 字段都是规定死的,分别为 FF(11111111)和 03(00000011)
- 协议部分长度为 2 字节 ,0开头是表示网络层协议(Eg:0x0021 表示IP数据报),1开头是其他
- 数据部分,因为是点对点协议所以 没有 最短帧长限制
- FCS即前面提到的循环冗余校验码,校验除了头尾 F 字段以外的所有字段
- PPP协议是 面向字符 的,故PPP帧都是 整数个 字节
- PPP协议不使用序号和确认机制,只保证无差错接收
HDLC协议
HDLC协议(高级数据链路控制协议)是与PPP协议相似的协议,HDLC是 面向比特 的,HDLC帧与PPP帧 不同 的是 没有 协议字段
HDLC有两种基本配置:平衡配置 和 非平衡配置
- 平衡配置是指两端都为复合站,每个复合站都可以平等的发送数据,不需要经过对方允许
- 非平衡配置是指一个主站控制整个链路的工作
如下图所示:
- A 字段表示 地址字段,当以非平衡方式方式传送数据, A 字段写入 从站地址, 当以平衡方式方式, A 字段写入 应答站地址
- C 字段表示 控制字段,根据C字段取值的不同划分为三类HDLC帧
①信息帧 ,当第一位为 0时,用来传输信息
②监督帧,第一、第二分别为 1、0时,用于流量控制和差错控制
③无编号帧,第一二位均为1,用于链路建立和拆除等多种控制功能
数据链路层设备
网桥
按MAC地址转发,隔离冲突域