计算机网络:数据链路层(介质访问控制)

欢迎关注大家关注我的公众号:浩泽学编程;联系我,一起交流学习,也可以解答你的迷茫。

目录

前言

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

1、频分多路复用FDM

2、时分多路复用TDM

3、波分多路复用WDM

4、码分多路复用CDM

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

1、ALOHA协议

2、CSMA协议

1、1-坚持CSMA

2、非坚持CSMA

3、p-坚持CSMA

4、三种CSMA对比总结

3、CSMA/CD协议

4、CSMA/CA协议

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

1、令牌传递协议

总结


前言

介质访问控制的内容就是,采取一定的措施,使得两对节点之间的通信不会发生互相干扰的情况。

信道划分介质访问控制:将使用介质的每个设备与来自同一信道上的其他设备的通信隔离开,把时域和频域资源合理地分配给网络上的设备。

多路复用技术:把多个信号组合在一条物理信道上进行传输,使得多个计算机或终端设备共享信道资源,提高信道利用率。

把一条广播信道,逻辑上分成几条用于两个节点之间通信的互不干扰的子信道,实际就是把广播信道转变为点对点信道。


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

1、频分多路复用FDM


用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽(频率带宽)资源。

充分利用传输介质带宽,系统效率较高;由于技术比较成熟,实现也比较容易。

2、时分多路复用TDM

将时间划分为一段段等长的时分复用帧(TDM帧)。每一个时分复用的用户在每一个TDM帧中占用固定序号的时隙,所有用户轮流占用信道。

  • 频分复用――“并行”
  • 时分复用――“并发”

改进的时分复用――统计时分复用STDM

每一个STDM帧中的时隙数小于连接在集中器上的用户数。各用户有了数据就随时发往集中器的输入缓存,然后集中器按顺序依次扫描输入缓存,把缓存中的输入数据放入STDM帧中,一个STDM帧满了就发出。STDM帧不是固定分配时隙,而是按需动态分配时隙。

3、波分多路复用WDM

波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长(频率)的光信号,由于波长(频率)不同,所以各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来。

4、码分多路复用CDM

码分多址(CDMA)是码分复用的一种方式。

1个比特分为多个码片/芯片(chip),每一个站点被指定一个唯一的m位的芯片序列。发送1时站点发送芯片序列,发送o时发送芯片序列反码(通常把o写成-1)。

如何不打架:多个站点同时发送数据的时候,要求各个站点芯片序列相互正交。
如何合并:各路数据在信道中被线性相加。
如何分离:合并的数据和源站规格化内积。

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

1、ALOHA协议

不听就说

纯ALOHA协议思想:不监听信道,不按时间槽发送,随机重发。想发就发

冲突如何检测?
如果发生冲突,接收方在就会检测出差错,然后不予确认,发送方在一定时间内收不到就判断发生冲突。

冲突如何解决?
超时后等一随机时间再重传。

时隙ALOHA协议
时隙ALOHA协议的思想:把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送。

控制想发就发的随意性

关于ALOHA要知道的事
1.纯ALOHA比时隙ALOHA吞吐量更低,效率更低。
2.纯ALOHA想发就发,时隙ALOHA只有在时间片段开始时才能发。

2、CSMA协议

先听再说

载波监听多路访问协议CSMA (carrier sense multiple access)

CS:载波侦听/监听,每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据。

当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。当一个站检测到的信号电压摆动值超过一定门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞,即发生了冲突。

MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。

协议思想
多点接入,表示许多计算机以多点接入的方式连接在一根总线上。

1、1-坚持CSMA

坚持指的是对于监听信道忙之后的坚持。

1-坚持CSMA思想:

  • 如果一个主机要发送消息,那么它先监听信道。
  • 空闲则直接传输,不必等待。
  • 忙则一直监听,直到空闲马上传输。
  • 如果有冲突(一段时间内未收到肯定回复),则等待一个随机长的时间再监听,重复上述过程。

优点:
只要媒体空闲,站点就马上发送,避免了媒体利用率的损失。

缺点:
假如有两个或两个以上的站点有数据要发送,冲突就不可避免。

2、非坚持CSMA

非坚持指的是对于监听信道忙之后就不继续监听。

非坚持CSMA思想:

  • 如果一个主机要发送消息,那么它先监听信道。
  • 空闲则直接传输,不必等待。
  • 忙则等待一个随机的时间之后再进行监听。

优点:
采用随机的重发延迟时间可以减少冲突发生的可能性。

缺点:
可能存在大家都在延迟等待过程中,使得媒体仍可能处于空闲状态,媒体使用率降低。

3、p-坚持CSMA

p-坚持指的是对于监听信道空闲的处理。

p-坚持CSMA思想:

  • 如果一个主机要发送消息,那么它先监听信道。
  • 空闲则以p概率直接传输,不必等待;概率1-p等待到下一个时间槽再传输。
  • 忙则等待一个随机的时间之后再进行监听。

优点:
既能像非坚持算法那样减少冲突,又能像1-坚持算法那样减少媒体空闲时间的这种方案。

缺点:
发生冲突后还是要坚持把数据帧发送完,造成了浪费。

4、三种CSMA对比总结

3、CSMA/CD协议

先听再说,边听边说

载波监听多点接入/碰撞检测CSMA/CD (carrier sense multiple access with collision detection)

CS:载波侦听/监听,每一个站在发送数据之前以及发送数据时都要检测一下总线上是否有其他计算机在发送数据。
MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。(总线型网络)
CD:碰撞检测(冲突检测),“边发送边监听”,适配器边发送数据边检测信潦上信亏电压的变化情优,以便判断自己在发送数据时其他站是否也在发送数据。(半双工网络)

此时会有人会问:先听后发为什么还会冲突?
因为电磁波在总线上总是以有限的速率传播的。

所以:
只要经过2t时间还没有检测到碰撞,就能肯定这次发送不会发生碰撞。

如何确定碰撞后的重传时机?
截断二进制指数规避算法

1.确定基本退避(推迟)时间为争用期2t。
2.定义参数k,它等于重传次数,但k不超过10,即k=min[重传次数,10]。当重传次数不超过10时,k等于重传次数;当重传次数大于10时,k就不再增大而一直等于10。
3.从离散的整数集合[0,1,…,2^k-1]中随机取出一个数r,重传所需要退避的时间就是r倍的基本退避时间,即2r t 。
4.当重传达16次仍不能成功时,说明网络太拥挤,认为此帧永远无法正确发出,抛弃此帧并向高层报告出错。
第一次重传,k=1,r从{0,1}选;
重传推迟时间为0或2t,在这两个时间中随机选一个﹔
若再次碰撞,则在第二次重传时, k=2,r从{0,1,2,3}选;
重传推迟时间为o或2r或4rt或6t,在这四个时间中随机选一个;
若再次碰撞,则第三次重传时,k=3,r从{0,1,2,3,4,5,6,7}选…

若连续多次发生冲突,就表明可能有较多的站参与争用信道。使用此算法可使重传需要推迟的平均时间随重传次数的增大而增大,因而减小发生碰撞的概率,有利于整个系统的稳定。

最小帧长问题
问题描述:
A站发了一个很短的帧但发生了碰撞不过帧在发送完毕后才检测到发生碰撞没法停止发送因为发完了。。

所以指定了最小帧长
帧的传输时延至少要两倍于信号在总线中的传播时延。

在这里插入图片描述
最小帧长=总线传播时延x数据传输速率x2
在这里插入图片描述
以太网规定最短帧长为64B,凡是长度小于64B的都是由于冲突而异常终止的无效帧.

4、CSMA/CA协议

载波监听多点接入/碰撞避免CSMA/CA (carrier sense multiple access with collision avoidance)

CSMA/CA协议工作原理

发送数据前,先检测信道是否空闲。
空闲则发出RTS (request to send),RTS包括发射端的地址、接收端的地址、下一份数据将持续发送的时间等信息;信道忙则等待。
接收端收到RTS后,将响应CTS (clear to send)。
发送端收到CTS后,开始发送数据帧〈同时预约信道:发送方告知其他站点自己要传多久数据)。
接收端收到数据帧后,将用CRC来检验数据是否正确,正确则响应ACK帧。
发送方收到ACK就可以进行下一个数据帧的发送,若没有则一直重传至规定重发次数为止(采用二进制指数退避算法来确定随机的推迟时间)。

CSMA/CD与CSMA/CA的比较
相同点:
CSMA/CD与CSMA/CA机制都从属于CSMA的思路,其核心是先听再说。换言之,两个在接入信道之前都须要进行监听。当发现信道空闲后,才能进行接入。

不同点:

  • 1.传输介质不同:CSMA/CD用于总线式以太网【有线】,而CSMA/CA用于无线局域网【无线】。
  • ⒉.载波检测方式不同:因传输介质不同,CSMA/CD与CSMA/CA的检测方式也不同。CSMA/CD通过电缆中电压的变化来检测,当数据发生碰撞时,电缆中的电压就会随着发生变化;而CSMA/CA采用能量检测〈ED)、载波检测(CS)和能量载波混合检测三种检测信道空闲的方式。
  • 3.CSMA/CD检测冲突,CSMA/CA避免冲突,二者出现冲突后都会进行有上限的重传。

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

1、令牌传递协议

信道划分介质访问控制(MAC Multiple Access Control)协议:
基于多路复用技术划分资源。
网络负载重:共享信道效率高,且公平
网络负载轻:共享信道效率低

随机访问MAC协议:冲突
用户根据意愿随机发送信息,发送信息时可独占信道带宽。
网络负载重:产生冲突开销
网络负载轻:共享信道效率高,单个结点可利用信道全部带宽

轮询访问MAC协议/轮流协议/轮转访问MAC协议:
既要不产生冲突,又要发送时占全部带宽

令牌:一个特殊格式的MAC控制帧,不含任何信息。
控制信道的使用,确保同一时刻只有一个结点独占信道。

每个结点都可以在一定的时间内(令牌持有时间)获得发送数据的权利,并不是无限制地持有令牌。

问题:
1.令牌开销
2.等待延迟
3.单点故障

应用于令牌环网(物理星型拓扑,逻辑环形拓扑)。

采用令牌传送方式的网络常用于负载较重、通信量较大的网络中。

  • TCU转发器:传递数据帧时的一个接口,可以传递所有的帧,也可为接入站提供接口
  • 令牌:一个特殊格式的MAC控制帧,不含任何信息。控制信道的使用,确保同一时刻只有一个结点独占信道。

当网络空闲的时候(没有主机要发送数据),令牌会在各个主机之间进行传递,直到传递到一个主机要发送数据了,此时主机D会改变令牌的标志位(将令牌从闲的状态变成忙的状态),然后再在令牌的空指针后面加上数据,此时就构成了数据帧,接着就会将数据帧发送出去,当发送到A主机后,A主机会复制一份数据,然后A主机接着发送令牌帧,主机D收到自己发送的令牌帧后会先检查令牌帧有没有出错,如果出错还会再重传一次,没出错的话就会对数据帧进行回收,不再转发了,将令牌标志位从忙再改为闲,发送出去,在他们之间循环。


总结

以上就是数据链路层之介质访问控制【静态划分信道(频分多路复用、时分多路复用、波分多路复用、码分多路复用)和动态分配信道(ALOHA协议、CSMA协议、CSMA/CD协议、CSMA/CA协议、令牌传递协议)】的相关知识点。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/242320.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于单片机智能自动浇花系统设计

**单片机设计介绍,基于单片机智能自动浇花系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的智能自动浇花系统是一种可以自动感知周围环境,并执行相应动作的系统。通过使用传感器检测土…

微服务--07--Sentienl中使用的限流算法

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 Sentienl中使用的限流算法1、计数器固定窗口算法2、计数器滑动窗口算法----(默认)3、漏桶算法----(排队等待)4、令牌…

如何想成为嵌入式工程师?(这些东西您必须知道)

嵌入式的发展怎么样? 嵌入式系统领域一直在迅速发展,伴随着物联网、智能设备、汽车电子、医疗设备等应用的不断增加,对嵌入式技术的需求也在不断扩大。因此,嵌入式领域仍然是一个充满机会的领域,为专业人士提供…

AGI 营销价值持续释放,Whale 帷幄近期荣誉时刻有哪些?

临近年底,各类奖项、活动、盘点层出不穷,是营销界最活跃也是最丰收的时刻。近期,「Whale 帷幄」凭借着对数字化营销销售场景的独到洞察和扎实的落地应用能力,不仅为客户带来了业绩提升,也斩获了多项权威奖项&#xff0…

AI全栈大模型工程师(二十六)如何选择 GPU 和云服务厂商

💡 这节课会带给你 如何选择 GPU 和云服务厂商,追求最高性价比 如何部署自己 fine-tune 的模型,向业务提供高可用推理服务 如何控制内容安全,做好算法备案,确保合规 开始上课! 硬件选型 当我们为模型训练及…

数字化赋能实体经济,凌雄科技发挥DaaS模式提质增效价值

11月中旬,市场监管总局发布了2023年前三季度经营主体数据。其中,前三季度全国新设民营企业总计706.5万户,截至9月底,全国登记在册的民营企业数量超过5200万户,在企业总量中占比高达92.3%。如何帮助民营企业实现高质量发…

SpringBoot 引入nacos 【最新 | 可运行】

SpringBoot 引入nacos 首先要了解在 Springboot 中只支持那些 Springboot 的版本(我真的被这个搞死了),可以如下图参考: 下面我们就开始吧 下载 Nacos nacos 下载地址,这里可以选择你要下载的版本,我选择下载了2.2.…

idea一些报错

java: 非法字符: \ufeff 使用IDEA修改文件编码 在IDEA右下角,将编码改为GBK,再转为UTF-8,重新启动项目。具体步骤如下: 在IDEA右下角找到UTF-8字样的编码格式设计项,点击选择第一项GBK,然后Convert&#xf…

Java实现机考程序界面

机考界面如下(单选题),上方是题目状态,下方是题目,1/5/1是已做题目数量、总共题目数量和答对题目数量。 再看一下多选题的界面。 判断题的界面。 回答正确时的反馈,会给出用时。 回答错误时的反馈&#xff…

PaddleDetection系列2--NCCL安装及测试

NCCL安装及测试 1 系统信息查看1.1 查看本机的操作系统和位数信息:1.2 确认处理器架构1.3 确认cuda版本 2 NCCL安装2.1 根据上面的系统架构以及CUDA版本,进入[官网](https://developer.nvidia.com/nccl/nccl-download)下载匹配的nccl,若想获取…

百岁时代即将来临,原知因成为消费新潮流

什么叫长寿时代?泰康保险首席执行官陈东升指出:长寿时代,就是百岁人生即将来临,人人带病长期生存。而在这个时代,人类最大的变化在于“生命尺度的改变”,比如过去20岁是年轻人,40岁中年人,60岁…

从零开始:VuePress2 + GitHub Pages 搭建你的第一个免费博客网站

可能你也想拥有一个属于自己的博客网站,但是自己搭个博客网站不知道从何下手,而且还需要租个云服务器,虽然一个月只需几十块钱,但是我们的博客网站是要长期维护的,日积月累也要不少钱呢。 现在我就教你用 VuePress2 …

【C语言:动态内存管理】

文章目录 前言1.malloc2.free3.calloc4.realloc5.动态内存常见错误6.动态内存经典笔试题分析7.柔性数组8.C/C中的内存区域划分 前言 文章的标题是动态内存管理,那什么是动态内存管理?为什么有动态内存管理呢? 回顾一下以前学的知识&#xff…

Linux_Ubuntu 系统入门

Ubuntu 系统是和 Windows 系统一样的大型桌面操作系统,因此功能非常强大。 本节的目的是掌握后续嵌入式开发所需的 Ubuntu 基本技能,比如系统的基本设置、常用的 shell 命令、vim 编译器的基本操作等等…… Ubuntu 的图形化界面操作和 Windows 下基本一致…

Proxmox创建Windows虚拟机

文章目录 下载ISO安装文件上传 下载ISO安装文件 下载地址:https://www.xitongzhijia.net/ 也可去官网进行下载 上传 将下载的ISO文件上传到Proxmox 选择ISO文件进行上传 上传后再ISO镜像中可以看到安装文件 点击创建虚拟机 填写名称,不能填写中文 镜…

程序员的养生之道:延寿健康的十大秘诀(下)

程序员的养生之道:延寿健康的十大秘诀(上)-CSDN博客 目录 6. 心理调节,减轻压力 6.1 程序员常见的心理问题 6.2 压力管理的重要性 6.3 放松技巧与应对策略 6.4 积极心态与心理健康 7. 正确坐姿,保护颈椎腰椎 …

SpringBoot之实体参数的详细解析

1.3 实体参数 在使用简单参数做为数据传递方式时,前端传递了多少个请求参数,后端controller方法中的形参就要书写多少个。如果请求参数比较多,通过上述的方式一个参数一个参数的接收,会比较繁琐。 此时,我们可以考虑…

ActiveMQ使用指南

介绍 ActiveMQ是Apache开源组织旗下的一个项目,是一个流行的开源消息中间件。它完全支持JMS1.1和J2EE1.4规范的JMS Provider实现,并且是纯Java开发的产品。ActiveMQ支持多种语言编写客户端,包括C,C,C#,Perl,PHP,Ruby,Ajax等,同时…

K8S(四)—pod详解

目录 pod介绍Pod的概念:Pod的特性:Pod的配置:Pod的控制:示例 YAML 文件: pod启动流程问题 两种方式启动镜像的升级和回滚更新 Deployment:回滚检查 Deployment 历史版本回滚到之前的修订版本缩放 Deploymen…

【C语言宝库】- 操作符|详解进制转换|计算机小白必备技能(上)

🌈个人主页: Aileen_0v0 🔥系列专栏:C语言学习 💫个人格言:"没有罗马,那就自己创造罗马~" 目录 进制 定义 基本原理 转换方式 常见的进制转换 二进制和进制的转换 二进制转十进制 十进制转二进制 (1&#xf…