一、数据链路层概述
数据链路层的三个重要问题:封装成帧、差错检测、可靠传输。
二、封装成帧
1.概念
封装成帧是指数据链路层给上层交付的协议数据单元(PDU)添加帧头和帧尾使之成为帧。
帧头和帧尾中含有重要的控制信息。其作用之一就是帧定界。PPP帧含有帧定界标志,MAC帧由物理层添加的前导码以及帧间间隔来区分每一个帧。
2.透明传输
透明传输是指数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样。
面向字节的物理链路:数据链路层在发送帧之前对数据部分进行扫描,每发现一个帧定界符或转义字符,则在其前面插入一个转义字符(长度1字节,十进制值为27),以便接收方正确判断帧。
面向比特的物理链路:例如,当帧定界符为01111110时,在数据部分每有5个连续的1,就在其后面添加一个0,这样就保证了帧定界符的唯一性,接收方只需将数据部分中的每5个连续的1后面的那个0去掉即可。
练习题
为了提高帧的传输效率,应当使帧的数据部分的长度尽可能大些。但是考虑到差错控制等多种因素,每一种数据链路层协议都规定了帧的数据部分的长度上限,即最大传送单元MTU(Maximum Transfer Unit)。
三、差错检测
1.奇偶校验
在待发送的数据后面添加1位奇偶校验位,使整个数据中1的个数为奇数(奇校验)或偶数(偶校验)。误码但是奇偶性不发生变化则不能检测出误码。
2.循环冗余校验CRC(Cyclic Redundancy Check)
练习题
1.
2.
说明:
四、可靠传输
1.基本概念
2.实现机制 —— 停止—等待协议SW(Stop-and-Wait)
2.1停止—等待协议的实现
发送方每发送完一个数据分组后,就停止发送下一个数据分组,等待来自接收方的确认分组或否认分组。若收到确认分组,则可继续发送下一个数据分组;若收到否认分组,则重发之前的那个数据分组。实际情况更为复杂。
解决发送的数据分组丢失——超时重传:
解决确认分组丢失——为数据分组编号:
解决确认分组丢失,发送方超时重传,接收方如何判断是不是真的是两个一样的分组的问题。
确认迟到——为确认分组编号:
解决确认错了的问题。
说明:
2.2停止—等待协议的信道利用率
练习题
3.实现机制 —— 回退N帧协议GBN(Go-Back-N)
练习题
说明:
4.实现机制 —— 选择重传协议SR(Selective Repeat)
说明
1.关于Maximum Sequence Number(N)的说明
最大的序号 N = SWS + RWS - 1
SWS为发送方窗口大小,RWS为接收方窗口大小。
可以举例说明,从N-1时开始,发送方发送SWS个帧,如果ACK全部丢失,当发送方超时重发后,接收方将收到无法分辨出的重复的帧。
2.关于发送方窗口大小的说明
发送方最佳窗口大小W = RTT * 带宽
带宽的单位可以是pps(Packet per Second)。
练习题
五、点对点协议PPP(Point-toPoint Protocol)
1.PPP协议的组成
2.PPP帧格式
3.实现透明传输
3.1面向字节的异步链路采用插入转义字符的字节填充法
3.2面向比特的同步链路采用插入比特0的比特填充法
4.实现差错检测
5.工作状态
六、媒体接入控制MAC(Medium Access Control)
1.媒体接入控制(MAC)的基本概念
说明:
2.媒体接入控制 —— 静态划分信道
2.1信道复用
2.1.1频分复用FDM
2.1.2时分复用TDM
2.1.3波分复用WDM
即光的频分复用。
2.1.4码分复用CDM
或称为码分多址CDMA(Code Division Multiple Access)。
练习题:
1.
应用举例:
2.
3.
3.媒体接入控制 —— 动态接入控制 —— 随机接入
3.1总线型局域网使用的协议:载波监听多址接入/碰撞检测CSMA/CD(Carrier Sense Multiple Access/Collision Detection)
3.1.1CSMA/CD协议 —— 争用期(碰撞窗口)
3.1.2CSMA/CD协议 —— 最小帧长
3.1.3CSMA/CD协议 —— 最大帧长
3.1.4CSMA/CD协议 —— 截断二进制指数退避算法
3.1.5CSMA/CD协议 —— 信道利用率
3.1.6CSMA/CD协议 —— 帧发送流程
3.1.6CSMA/CD协议 —— 帧接收流程
练习题:
1.
2.
3.
说明:
3.2无线局域网使用的协议:载波监听多址接入/碰撞避免CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance)
3.2.1帧间间隔
3.2.2CSMA/CA的工作原理
〇 源站在检测到信道空闲后还要等待DIFS的原因是,考虑到可能有其他的站有高优先级的帧要发送。若有,就要让高优先级帧先发送。
〇 目的站在正确接收数据帧后还要等待SIFS的原因是,SIFS是最短的帧间间隔,用来分隔开属于一次对话的各帧。在这段时间内,一个站点应当能够从发送方式切换到接收方式。
〇 信道由忙转为空闲且经过DIFS时间后,还要退避一段随机时间的原因是,防止多个站点同时发送数据而产生碰撞。
说明:
3.2.3CSMA/CA协议的退避算法
3.2.4CSMA/CA协议的信道预约和虚拟载波监听
3.2.4.1信道预约
3.2.4.2虚拟载波监听
练习题:
1.
2.
3.
七、MAC地址、IP地址以及ARP协议
1.MAC地址
1.1 基本概念
1.2 IEEE 802局域网的MAC地址格式
1.3 IEEE 802局域网的MAC地址发送顺序
1.4 单播MAC地址举例
1.5 广播MAC地址举例
1.6 多播MAC地址举例
1.7 随机MAC地址
避免通过追踪设备地址泄露隐私。
2.IP地址(网络层)
2.1 基本概念
2.2 从网络体系结构看IP地址和MAC地址的位置
2.3 数据包转发过程中IP地址与MAC地址的变化情况
练习题:
3.ARP协议(网络层)
解决给出IP地址对应的MAC地址的问题。在ARP高速缓存表中查找IP地址对应的MAC地址。
说明:
小结:
八、集线器与交换机的区别
1.早起的总线型以太网和使用双绞线、集线器HUB的星型以太网
2.使用集线器HUB在物理层扩展以太网
3.以太网交换机
4.对比集线器和交换机
九、以太网交换机自学习和转发帧的流程
练习题
1.
2.
3.
小结
十、以太网交换机生成树协议STP
十一、虚拟局域网VLAN
1.虚拟局域网VLAN概述
2.虚拟局域网VLAN的实现机制
虚拟局域网VLAN是在交换机上实现的,需要交换机能够实现两大功能:能够处理带有VLAN标记的IEEE 802.1Q帧,交换机的各端口可以支持不同的端口类型。
2.1 IEEE 802.1Q帧(Dot One Q帧)
2.2 交换机的端口类型
2.2.1 Access端口
2.2.2 Trunk端口
情况一
情况二
练习题