媒体访问控制(MAC)子层

2023-12-02 16:48
文章标签 mac 媒体 访问控制 子层

本文主要是介绍媒体访问控制(MAC)子层,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第四章

局域网的数据链路层拆成两个子层:

  • 逻辑链路控制 LLC (Logical Link Control)子层
  • 媒体接入控制 MAC (Medium Access Control)子层。

1. 信道分配问题

可将信道分配划分为两类:静态信道分配和动态信道分配

  • 静态: 频分复用、时分复用、波分复用、码分复用
  • 动态:随机接入(竞争)、受控接入(无冲突、有限的竞争)

传统的静态分配方法不适用用户较多的数据网络,不适用突发性的流量
动态分配方法:竞争法协议、无冲突发协议、有限竞争协议
动态信道分配假设:
(1)流量独立 (independent traffic)
(2)单信道 (single channel)
(3)冲突可观察 (observable collision)
(4)时间连续或分槽 (continuous or slotted time)
(5)载波侦听或无侦听 (carrier sense of no carrier sense)

2. 多路访问协议

2.1 Pure ALOHA 协议
  • 信息帧随时传输。
  • 传输过程中,站点侦听检测冲突的发生。
  • 如果发生冲突,传输站点等待一个随机时间,然后重新发送。如果发了好几次得不到确认,就放弃。
    根据算法,给定一个“帧时”内希望有G帧,生成k帧的概率服从泊松分布,流量与吞吐量关系图中,当G=0.5,S=1/2e ≈ 0.184,即最好信道利用率为18%,结果并不令人满意。 但对于这种任何人都可以随意发送的传输方式,想达到100%成功率是不可能的。
2.2 Slotted ALOHA( 分槽时隙协议)

信道上的时间被分成离散的时间间隔即时槽,其大小相当于帧的传输时间。所有站点的时钟保持同步。站点只有在时槽开始时才能传输数据。
其最大信道利用率为 1 / e 1/e 1/e, 及0.368

例题1:考虑在低负载情况下纯ALOHA和分槽ALOHA的延迟。试问哪个延迟更小?
解:纯ALOHA可以立即开始发送,在负载低的情况下,碰撞小,传输成功可能性大,基本上没有延迟。在分槽ALOHA,需要等待下一个时间槽到达才能发送。会产生半个时间槽的延迟。

例题2:
一群ALOHA用户每秒产生50个请求,包括原始的请求和重传的请求, 时间槽单位40ms。

  1. 首次发送成功的几率?
    G = 50 * 0.04 = 2
    P0 = e − G e^{-G} eG = e − 2 e^{-2} e2
  2. 恰好k次冲突之后成功的概率是?
    Qk = ( 1 − P 0 ) k ∗ p 0 (1-P0)^k * p0 (1P0)kp0
  3. 所需传送次数的期望值是?
    1Q1+2Q2+3Q3+… = e G e^G eG = 7.4
2.3 CSMA载波侦听多路访问协议 Carrier Sense Multiple Access

传播时间很短,帧传输速率很慢。当一个站点发送帧后,别的站点马上就能知道。pure ALOHA 和 slotted ALOHA 都没有利用这个特性。

四种CSMA协议:

  • 1坚持CSMA协议
    侦听信道,空闲则传输;否则继续侦听;如果发生冲突,等待随机时间后继续侦听。
    特点:性能更好、更“礼貌”。
    缺点:A、B等都需要等C发送结束。信号传播的延迟受带宽延迟影响。

  • 非坚持CSMA协议
    信道若空闲则传输;否则等待随机一段时间,再检查信道;如果发生冲突,等待随机时间后,再检查信道。
    特点:信道利用率更好,但延迟比1坚持更大。

  • P坚持(IEEE 802.11 使用 P-坚持协议的改进版)
    信道若空闲则以概率P发送,以概率(1-P)延迟到下一个时间槽,并重复侦听;若信道忙或发生冲突,等待随机时间后,再重复第一步。
    特点:信道利用率更好,但延迟比1坚持更大。

在这里插入图片描述

  • CSMA/CD 带冲突检测的载波侦听多路访问
    载波侦听:站点能检测到链路是忙or闲
    冲突检测:侦听到冲突,立即停止传输
无冲突协议
  • 基本位图协议
    规则:在实际传送数据前先广播发送意愿。N个竞争槽,数据帧d位,则低负载率情况的信道效率:发送时平均需要等待N个槽,低序号1.5N,高序号0.5N,信道利用率 d / ( d + N ) d/(d+N) d/(d+N)
  • 二进制倒计协议
    规则:一个站只要看到自己的地址位中0值位置被改写成了1,则它必须放弃竞争。信道利用率为 d / ( d + l o g 2 N ) d / ( d + log2N ) d/(d+log2N),适合大规模网络。
有限竞争协议 Limited-contention Protocol

结合竞争协议和无冲突协议的优势
低负载下的延迟(竞争方法),高负载下的信道利用率(无冲突方法)
对称竞争信道的获得概率
设共有 k 个站竞争信道,每个站在单个时间槽中的传输概率为 p,在一个给定时间槽中,某站能获得信道的概率是 k p ( 1 − p ) k − 1 kp(1-p)^{k-1} kp(1p)k1,最佳值为 [ ( k − 1 ) / k ] k − 1 [ (k -1)/k] ^{k-1} [(k1)/k]k1,由曲线图可见,站数多时成功率下降至 1/e。
有限竞争:将所有站划分组,减少每个时间槽中的竞争数量,使每组行为接近图左侧

无线局域网协议

冲突避免多路访问(MACA, Multiple Access with Collision Aviodance)

—The End——

这篇关于媒体访问控制(MAC)子层的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/446087

相关文章

[word] word设置上标快捷键 #学习方法#其他#媒体

word设置上标快捷键 办公中,少不了使用word,这个是大家必备的软件,今天给大家分享word设置上标快捷键,希望在办公中能帮到您! 1、添加上标 在录入一些公式,或者是化学产品时,需要添加上标内容,按下快捷键Ctrl+shift++就能将需要的内容设置为上标符号。 word设置上标快捷键的方法就是以上内容了,需要的小伙伴都可以试一试呢!

Mac excel 同时冻结首行和首列

1. 选择B2窗格 2. 选择视图 3. 选择冻结窗格 最后首行和首列的分割线加粗了就表示成功了

Linux和Mac分卷压缩

使用 zip 命令压缩文件 使用 zip 命令压缩文件,并结合 split 命令来分卷: zip - largefile | split -b 500k 举例: zip - ./tomcat.dmg |split -b 500k 上述命令将文件 largefile 压缩成 zip 包并分卷成不超过 500k 的文件,分解后文件名默认是 x* ,后缀为 2 位a-z 字母,如 aa、ab。

理解什么是DSR,嗅探器视角下的IP和MAC地址识别(C/C++代码实现)

网络嗅探器是监控和分析网络流量的一种工具,它能够捕获数据包并提取出关键的信息,比如IP地址和MAC地址。 网络嗅探器工作原理基于网卡的工作模式。正常情况下,网卡只处理发送给它的数据包,忽略其他数据。但是,如果将网卡设置为“混杂模式”,那么它可以接收到网络上所有的数据包,而不仅仅是发给它的数据包。网络嗅探器就是利用了这一特性来捕获网络上的数据交换。 数据包是网络通信的基本单位,包含了传输数据和控

Mac 本地启动 Dify

本地启动 dify 拉取 dify 文件 git clone https://github.com/langgenius/dify.git 启动底层服务 cd dify/dockerdocker-compose -f docker-compose.middleware.yaml -p dify up -d 启动后端 API 安装 poetry brew install poet

自媒体素材管理系统设计

设计自媒体素材管理系统时,我们需要考虑多个方面以确保系统的高效性、易用性和安全性。以下是一个自媒体素材管理系统设计的详细概述:   一、系统概述 自媒体素材管理系统是一个用于存储、管理和检索自媒体内容(如图片、音频、视频等)的计算机系统。该系统旨在提高自媒体工作者的工作效率,简化素材管理流程,并确保素材的安全性和可用性。   二、系统设计要点 1. 系统架构 分层架构:系统采用典型的

ISO OSI IOS MAC IP

IOS(Internetworking Operating System-Cisco,缩写IOS),CISCO网络配置系统。IOS是一个为网际互连优化的复杂的操作系统——类似一个局域操作系统(NOS)、如Novell的NetWare,为LANs而进行优化。

在Mac OS上使用Visual Studio Code创建C++ Qt的Hello World应用

引言 Qt是一个跨平台的应用程序和用户界面框架,而Visual Studio Code是一个功能强大的编辑器,两者结合可以极大地提升开发效率。本文将指导你在Mac OS上使用Visual Studio Code创建一个简单的Qt 'Hello World'窗口应用。 环境准备 确保你的MacBook OS运行最新的操作系统。安装Homebrew,Mac OS的包管理器。通过Homebrew安装

Android C++系列:C++最佳实践3继承与访问控制

1. 背景 Java中有四种访问控制:public、protected、default、private,它们的使用范围可以用下面一张表概括: 类内部本包子类外部包public是是是是protected是是是否default是是否否private是否否否 整个结构还是比较简单的,从类内部到本包到子类到外部包权限越来越小,比较好理解也比较好记忆。但是在C++中访问控制要复杂很多,因为不仅有属性