当前位置: 首页 > news >正文

计算机网络——数据链路层-介质访问控制

一、介质访问控制方法

 在局域网中, 介质访问控制(medium access control)简称MAC,也就是信道访问控制方法,可以
简单的把它理解为如何控制网络节点何时发送数据、如何传输数据以及怎样在介质上接收数据,
是解决当局域网中共用信道的使用产生竞争时,如何分配信道的使用权问题
介质访问控制分为以下3类:
1) 信道划分介质访问控制
2) 随机访问介质访问控制(争用型介质访问控制)
3) 轮询访问介质访问控制

1、信道划分介质访问控制
当传输介质的带宽超过了传输单个信号所需的带宽时,人们就通过在一条介质上同时携带多个传输信号的方法来提高传输系统的利用率,这就是所谓的多路复用,也是实现信道划分介质访问控制的途径。
(1)频分多路复用
(2)时分多路复用
(3)波分多路复用
(4)码分多路复用
 

 

2、频分复用 FDM(Frequency Division Multiplexing)

• FDM是一种将多路基带信号调制到不同频率载波上再进行叠加形成一个复合信号的多路复用技术。
• 用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。
• 频分复用的所有用户在同样的时间占用不同的带宽资源(请注意,这里的“带宽”是频率带宽而
不是数据的发送速率)。
• 优点:充分利用了传输介质的带宽,系统效率较高;由于技术比较成熟,实现也较容易
 

3、时分复用(TDM)

• 时分复用则是将时间划分为一段段等长的时分复用帧(TDM 帧)。每一个时分复用的用户在
每一个 TDM 帧中占用固定序号的时隙。
• 每一个用户所占用的时隙是周期性地出现(其周期就是 TDM 帧的长度)。
• TDM 信号也称为等时(isochronous)信号。
• 时分复用的所有用户是在不同的时间占用同样的频带宽度。


 

4、波分复用 WDM(Wavelength Division Multiplexing)
波分复用就是光的频分复用。 

 5、码分复用CDM

• 常用的名词是码分多址 CDMA (Code Division Multiple Access)。
• 各用户使用经过特殊挑选的不同码型,因此彼此不会造成干扰。
• 这种系统发送的信号有很强的抗干扰能力,其频谱类似于白噪声,不易被敌人发现。
• 每一个比特时间划分为 m 个短的间隔,称为码片(chip)。

正交关系的重要特性:

• 任何一个码片向量和该码片向量自己的规格化内积都是1 。
• 一个码片向量和该码片反码的向量的规格化内积值是 –1。
 

二、随机访问介质访问控制

当几台计算机都使用一条信道发送数据时,就需要去共享信道,随机接入的意思是所有用户都可以根据自己的意愿随机地发送信息,占用信道全部速率,这样就会产生冲突(或者称为碰撞),从而导致所有冲突用户发送数据失败。
(1)ALOHA协议
(2)CSMA 协议
(3)CSMA/CD
(4)CSMA/CA

1、ALOHA协议:

ALOHA协议,其基本思想比较简单:当网络中的任何一个结点需要发送数据时,可以不进行任何检测就发送数据。如果在一段时间内没有收到确认,该结点就认为传输过程中发生了冲突。发生冲突的结点需要等待一段随 机时间后再发送数据,直至发送成功为止。但是其发送成功率不高,最大值只有18.4%

时隙 ALOHA 协议
时隙 ALOHA 协议把所有各站在时间上都同步起来,并将时间划分为一段段等长的时隙(slot),规定只能在每个时隙开始时才能发送一个帧。从而避免了用户发送数据的随意性,减少了数据产生冲突的可能性提高了信道的利用率。(约36%)


 

2、CSMA协议

载波侦听多路访问(CSMA)协议是在ALOHA协议的基础上改进而来的访问控制协议。在CSMA中,每个结点发送数据之前都使用载波侦听技术来判定通信信道是否空闲。常用的CSMA有以下3种策略。
1) 1-坚持CSMA: 当发送结点监听到信道空闲时, 立即发送数据,如果信道忙,将继续监听。这种方法减小了信道空闲时间,但是增大了冲突的概率,因此一般适合于网络负载小的网络。
2) 非坚持CSMA:当发送结点一旦监听到信道空闲时,立即发送数据,否则延迟一段随机的时间再重新监听。 这种方法减小了冲突概率,但是增大了信道空闲时间。
3) p-坚持CSMA: 属于分时信道,当发送结点监听到信道空闲时,以概率p发送数据,以概率(1-p)不发送数据,延迟一段时间并重新监听。 

2、CSMA/CD

适用于总线型网络或半双工网络环境。
• 当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大。
• 当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。
• 所谓“碰撞”就是发生了冲突。因此“碰撞检测”也称为“冲突检测”。
• 在发生碰撞时,总线上传输的信号产生了严重的失真,无法从中恢复出有用的信息来。
• 每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。
 

CSMA/CD的工作过程分为:

• 先听后发
• 边听边发
• 冲突停发
• 随机重发
• 发送站在发送数据的同时能检测到可能存在的冲突,需要在发送完帧之前就能收到已发送出去
的数据
 

•当某个站监听到总线是空闲时,也可能总线并非真正是空闲的。
• A 向 B 发出的信息,要经过一定的时间后才能传送到 B。
• B 若在 A 发送的信息到达 B 之前发送自己的帧(因为这时 B 的载波监听检测不到 A 所发送的信息),则必然要在某个时间和 A 发送的帧发生碰撞。
• 碰撞的结果是两个帧都变得无用。
 

3、争用期

• 最先发送数据帧的站,在发送数据帧后至多经过时间 2(两倍的端到端往返时延)就可知道发送的数据帧是否遭受了碰撞。
• 以太网的端到端往返时延 2 称为争用期,或碰撞窗口。
• 经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。
• 帧的传输时延≥2×总线传播时延
• 最小帧长=总线传播时延×数据传输速率×2

争用期长度 

• 以太网取 51.2 s 为争用期的长度。
• 对于 10 Mb/s 以太网,在争用期内可发送512 bit,即 64 字节。
• 以太网在发送数据时,若前 64 字节没有发生冲突,则后续的数据就不会发生冲突。
• 如果发生冲突,就一定是在发送的前 64 字节之内。
• 由于一检测到冲突就立即中止发送,这时已经发送出去的数据一定小于 64 字节。
• 以太网规定了最短有效帧长为 64 字节,凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧

4、CSMA/CA
• CSMA/CA的全称是Carrier Sense Multiple Access with Collision Avoidance。即载
波侦听多路访问/冲突避免。
• 发送数据前,先检测到信道状态,等到信道空闲后,再等待一段时间后,再次检测信道是否空闲,如果还是空闲,那么立刻发送数据,否则,随机等待一定时间,等时间到期后,再次发送检测。
• CSMA/CA 使用于无线网络。
• 它采用了带确认的发送机制(ACK)。
• CSMA/CD与CSMA/CA主要区别:
(1)传输介质不同
(2)检测方式不同
(3)CSMA/CA本节点处有/无冲突,并不一定以为在接受节点处就有/无冲突

相关文章:

计算机网络——数据链路层-介质访问控制

一、介质访问控制方法 在局域网中, 介质访问控制(medium access control)简称MAC,也就是信道访问控制方法,可以 简单的把它理解为如何控制网络节点何时发送数据、如何传输数据以及怎样在介质上接收数据, 是解决当局域网中共用信道的使用产生竞…...

pytest日志显示

在 pytest 中,可以通过 钩子函数 和 配置文件 pytest.ini 配置日志的显示方式,实现对日志的灵活控制。以下是常用实现方式及配置说明。 方式一:使用 conftest.py 钩子函数自定义日志显示 通过 conftest.py 文件中的钩子函数,实现…...

【信息系统项目管理师】第15章:项目风险管理过程详解

更多内容请见: 备考信息系统项目管理师-专栏介绍和目录 文章目录 一、规划风险管理1、输入2、工具与技术3、输出二、识别风险1、输入2、工具与技术3、输出三、实施定性风险分析1、输入2、工具与技术3、输出四、实施定量风险分析1、输入2、工具与技术3、输出五、规划风险应对1、…...

Diffusers 使用 LoRA

使用diffusers 加载 LoRA,实现文生图功能。摘自 diffusers文档。 模型可以根据名称去modelscope找对应资源下载。使用的时候需要替换成具体路径。虽然modelscope和diffusers都使用了模型id,但是并不能通用。 不同的LoRA对应了不同的“trigger” words&am…...

云安全博客阅读(二)

2024-05-30 Cloudflare acquires BastionZero to extend Zero Trust access to IT infrastructure IT 基础设施的零信任 不同于应用安全,基础设置的安全的防护紧急程度更高,基础设施的安全防护没有统一的方案IT基础设施安全的场景多样,如se…...

SpringCloud系列教程:微服务的未来(六)docker教程快速入门、常用命令

对于开发人员和运维工程师而言,掌握 Docker 的基本概念和常用命令是必不可少的。本篇文章将带你快速入门 Docker,并介绍一些最常用的命令,帮助你更高效地进行开发、测试和部署。 目录 前言 快速入门 docker安装 配置镜像加速 部署Mysql …...

Vue 快速入门:开启前端新征程

在当今的 Web 开发领域,Vue.js 作为一款极具人气的 JavaScript 前端框架,正被广泛应用于各类项目之中。它以简洁的语法、高效的数据绑定机制以及强大的组件化开发模式,为开发者们带来了前所未有的开发体验。如果你渴望踏入前端开发的精彩世界…...

UVM:uvm_component methods configure

topic UVM component base class uvm_config_db 建议使用uvm_config_db代替uvm_resource_db uvm factory sv interface 建议:uvm_config_db 以下了解 建议打印error...

LLM 训练中存储哪些矩阵:权重矩阵,梯度矩阵,优化器状态

LLM 训练中存储哪些矩阵 目录 LLM 训练中存储哪些矩阵深度学习中梯度和优化器是什么在 LLM 训练中通常会存储以下矩阵: 权重矩阵:这是模型的核心组成部分。例如在基于 Transformer 架构的 LLM 中,每一层的多头注意力机制和前馈神经网络都会有相应的权重矩阵。以 BERT 模型为…...

大模型思维链推理的进展、前沿和未来分析

大模型思维链推理的综述:进展、前沿和未来 "Chain of Thought Reasoning: A State-of-the-Art Analysis, Exploring New Horizons and Predicting Future Directions." 思维链推理的综述:进展、前沿和未来 摘要:思维链推理&#…...

NLP 技术的突破与未来:从词嵌入到 Transformer

在过去的十年中,自然语言处理(NLP)经历了深刻的技术变革。从早期的统计方法到深度学习的应用,再到如今Transformer架构的普及,NLP 的发展不仅提高了模型的性能,还扩展了其在不同领域中的应用边界。 1. 词嵌…...

嵌入式中QT实现文本与线程控制方法

第一:利用QT进行文件读写实现 利用QT进行读写文本的时候进行读写,读取MP3歌词的文本,对这个文件进行读写操作。 实例代码,利用Qfile,对文件进行读写。 //读取对应文件文件,头文件的实现。 #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #incl…...

云备份项目--服务端编写

文章目录 7. 数据管理模块7.1 如何设计7.2 完整的类 8. 热点管理8.1 如何设计8.2 完整的类 9. 业务处理模块9.1 如何设计9.2 完整的类9.3 测试9.3.1 测试展示功能 完整的代码–gitee链接 7. 数据管理模块 TODO: 读写锁&#xff1f;普通锁&#xff1f; 7.1 如何设计 需要管理…...

Node.js——fs(文件系统)模块

个人简介 &#x1f440;个人主页&#xff1a; 前端杂货铺 &#x1f64b;‍♂️学习方向&#xff1a; 主攻前端方向&#xff0c;正逐渐往全干发展 &#x1f4c3;个人状态&#xff1a; 研发工程师&#xff0c;现效力于中国工业软件事业 &#x1f680;人生格言&#xff1a; 积跬步…...

SAP BC 同服务器不同client之间的传输SCC1

源配置client不需要释放 登录目标client SCC1...

CentOS: RPM安装、YUM安装、编译安装(详细解释+实例分析!!!)

目录 1.什么是RPM 1.1 RPM软件包命名格式 1.2RPM功能 1.3查询已安装的软件&#xff1a;rpm -q 查询已安装软件的信息 1.4 挂载&#xff1a;使用硬件&#xff08;光驱 硬盘 u盘等&#xff09;的方法&#xff08;重点&#xff01;&#xff01;&#xff01;&#xff09; 1…...

linux音视频采集技术: v4l2

简介 在 Linux 系统中&#xff0c;视频设备的支持和管理离不开 V4L2&#xff08;Video for Linux 2&#xff09;。作为 Linux 内核的一部分&#xff0c;V4L2 提供了一套统一的接口&#xff0c;允许开发者与视频设备&#xff08;如摄像头、视频采集卡等&#xff09;进行交互。无…...

MySQL使用navicat新增触发器

找到要新增触发器的表&#xff0c;然后点击设计&#xff0c;找到触发器标签。 根据实际需要&#xff0c;填写相关内容&#xff0c;操作完毕&#xff0c;点击保存按钮。 在右侧的预览界面&#xff0c;可以看到新生成的触发器脚本...

voice agent实现方案调研

前言 目前语音交互主要的实现大体有两种: 级联方案,指的是,大规模语言模型 (LLM)、文本转语音 (TTS) 和语音转文本 (STT),客户的话通过vad断句到STT的语音转文本,经过大模型进行生成文本,生成文本后通过TTS进行回复给用户。(主流方案)端到端的方案,开发者无需再…...

TCP通信原理学习

TCP三次握手和四次挥手以及为什么_哔哩哔哩_bilibili...

零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?

一、核心优势&#xff1a;专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发&#xff0c;是一款收费低廉但功能全面的Windows NAS工具&#xff0c;主打“无学习成本部署” 。与其他NAS软件相比&#xff0c;其优势在于&#xff1a; 无需硬件改造&#xff1a;将任意W…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端

&#x1f31f; 什么是 MCP&#xff1f; 模型控制协议 (MCP) 是一种创新的协议&#xff0c;旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议&#xff0c;它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

k8s业务程序联调工具-KtConnect

概述 原理 工具作用是建立了一个从本地到集群的单向VPN&#xff0c;根据VPN原理&#xff0c;打通两个内网必然需要借助一个公共中继节点&#xff0c;ktconnect工具巧妙的利用k8s原生的portforward能力&#xff0c;简化了建立连接的过程&#xff0c;apiserver间接起到了中继节…...

什么是Ansible Jinja2

理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具&#xff0c;可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板&#xff0c;允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板&#xff0c;并通…...

稳定币的深度剖析与展望

一、引言 在当今数字化浪潮席卷全球的时代&#xff0c;加密货币作为一种新兴的金融现象&#xff0c;正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而&#xff0c;加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下&#xff0c;稳定…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)

在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马&#xff08;服务器方面的&#xff09;的原理&#xff0c;连接&#xff0c;以及各种木马及连接工具的分享 文件木马&#xff1a;https://w…...

智能职业发展系统:AI驱动的职业规划平台技术解析

智能职业发展系统&#xff1a;AI驱动的职业规划平台技术解析 引言&#xff1a;数字时代的职业革命 在当今瞬息万变的就业市场中&#xff0c;传统的职业规划方法已无法满足个人和企业的需求。据统计&#xff0c;全球每年有超过2亿人面临职业转型困境&#xff0c;而企业也因此遭…...

Pydantic + Function Calling的结合

1、Pydantic Pydantic 是一个 Python 库&#xff0c;用于数据验证和设置管理&#xff0c;通过 Python 类型注解强制执行数据类型。它广泛用于 API 开发&#xff08;如 FastAPI&#xff09;、配置管理和数据解析&#xff0c;核心功能包括&#xff1a; 数据验证&#xff1a;通过…...

DAY 26 函数专题1

函数定义与参数知识点回顾&#xff1a;1. 函数的定义2. 变量作用域&#xff1a;局部变量和全局变量3. 函数的参数类型&#xff1a;位置参数、默认参数、不定参数4. 传递参数的手段&#xff1a;关键词参数5 题目1&#xff1a;计算圆的面积 任务&#xff1a; 编写一…...