形象来说,数据链路层就相当于网卡
数据链路层结构
在OSI/RM和TCP/IP体系结构中,“数据链路层”就一层,而在局域网体系结构中是可细分为两个子层的,那就是“逻辑链路控制”(Logical Link Control,LLC)子层和“介质访问控制”(Medium Access Control,MAC)子层,如下图所示
各层的SAP
SAP是上层访问相邻下层所提供服务的点,是邻层实体(“实体”也就是对应层的逻辑功能)间实现相互通信的逻辑接口,位于两层边界处。从物理层开始,每一层都向上层提供服务访问点(“应用层”除外),每一层都有SAP(如下图所示),但不同层的SAP内容和表示形式都是不一样的。
MAC子层
“MAC子层”的最基本功能就是如何控制不同用户数据传输中对物理层传输介质的访问,其中包括:介质访问时的寻址和介质访问冲突的解决。
如在IEEE 802.3以太网标准MAC子层规范了如何在总线型网络结构下使用传输介质;在IEEE 802.4令牌总线(Token-Bus)标准MAC子层规范了如何在总线的网络结构下利用令牌(token)控制传输介质的使用;在IEEE 802.5令牌环(Token-Ring)标准MAC子层规范了如何在环状网络结构下利用令牌来控制传输介质的使用;在IEEE 802.11标准的无线局域网标准MAC子层规范了如何在无线局域网络的结构下控制传输介质的使用。
LLC子层
“LLC子层”的最基本功能就是负责数据链路层中“逻辑链路”的控制,其中包括:逻辑链路的建立和释放,控制信号交换、数据流量控制,解释上层通信协议传来的命令并且产生响应,以及克服数据在传送的过程当中所可能发生的种种问题。
在LLC子层中提供了“数据链路层”的SAP,作为与“网络层”通信交互的接口,如下图所示。
差错编码的检错能力
码字
海明距离
将两个码字进行异或运算可以得到海明距离
纠正1位错的海明码
典例1、
典例2、
小结
奇偶校验码
循环冗余检错码CRC
典例3、
介质访问控制(MAC子层)
信道的静态分配
信道的动态分配
多路访问协议
ALOHA协议
纯ALOHA协议
分隙ALOHA协议
CSMA协议(载波监听多路访问,Carrier Sense Multiple Access)
说到CSMA,我想给大家拓展一下视野,美国高通研发出的一种通信技术标准叫CDMA
非持续式CSMA
p-持续CSMA
以p的概率发送,1-p的概率延迟发送
1-持续CSMA
以p = 1的概率发送,即若信道空闲,立即发送帧;若信道正忙,则继续监听信道,直至监听到信道空闲,立即发送帧
冲突窗口
有中继器的情况
CSMA/CD(带冲突检测的载波监听多路访问)
使用CSMA/CD协议的以太网不可能进行全双工通信,而只能进行双向交替通信(半双工通信)
CSMA/CD要求所有的工作站在发送的同时也接收自己的信号,监测当前情况,如果接收的和发出去的不一致,则说明发生了问题