zoukankan      html  css  js  c++  java
  • 802.11(wifi)的MAC层功能

          

         MAC层是802.11的主要功能部分。上层应用通过调用MAC层提供的接口原语调用MAC层的功能。

         MAC一共向上提供了2大类接口原语,共30种。数据(1)和管理(29)。数据部分就是提供普通数据包的收发接口,管理部分是主要功能部分,例如发起认证、连接、信道扫描等其它所有管理功能,如下表所示:(并非所有的原语都是可调用的,一部分是indication形式的向上通知。有request的是可以调用的())

         

    数据部分  
    数据 MA-UNITDATA
    管理部分  
    电源管理 MLME-POWERMGT
    信道扫描 MLME-SCAN
    时间同步 MLME-JOIN
    认证 MLME-AUTHENTICATE
    断开认证 MLME-DEAUTHENTICATE
    建立连接 MLME-ASSOCIATE
    重新连接 MLME-REASSOCIATE
    断开连接 MLME-DISASSOCIATE
    复位 MLME-RESET
    网络开始 MLME-START
    测量 MLME-MREQUEST
    信道测量 MLME-MEASURE
    测量报告 MLME-MREPORT
    信道切换 MLME-CHANNELSWITCH
    发送功率通知 MLME-TPCADAPT
    设置密钥 MLME-SETKEYS
    删除密钥 MLME-DELETEKEYS
    迈克尔失败事件 MLME-MICHAELMICFAILURE
    可扩展局域网认证协议帧 MLME-EAPOL
    点对点连接请求 MLME-PeerKeySTART
    设置发送或接收的安全保护 MLME-SETPROTECTION
    帧密钥错误丢弃通知 MLME-PROTECTEDFRAMEDROPPED
    交通流(TS)管理接口 MLME-ADDTS
    MLME-DELTS
    直接连接管理 MLME-DLS
    MLME-DLSTearDown
    高层同步支持 MLME-HL-SYNC
    合并ACK帧管理 MLME-ADDBA
    MLME-DELBA
    Qos调度变更通知 MLME-SCHEDULE
    发行商特有 MLME-VSPECIFIC
    MIB管理 MLME-SET
    MLME-GET

    以上的所有的原语构成了MAC对外提供的可操作接口。

               在内部,MAC由除了函数还有数据,叫MIB,存储MAC的各种参数。还有个专业术语叫SME的,其实是一个单独的模块,用来跟接口函数功能互动,完成各函数之间的关联操作和配合响应。属于配合接口正常运作的角色,对外不提供接口。

               以上的接口原语,按照功能模块,可以归纳出MAC主要包括如下功能:

    1、信道管理。包括:信道扫描(MLME-SCAN)、信道测量(MLME-MREQUEST、MLME-MEASURE、MLME-MREPORT)、信道切换(MLME-CHANNELSWITCH)

    2、连接管理。包括:认证(MLME-AUTHENTICATE)、断开认证(MLME-DEAUTHENTICATE)、建立连接(MLME-ASSOCIATE)、重新连接(MLME-REASSOCIATE)、断开连接(MLME-DEASSOCIATE)、开始网络(MLME-START)、点对点连接请求(MLME-PeerKeySTART)、直接连接管理(MLME-DLS、MLME-DLSTearDown)、

    3、服务质量(Qos):交通流(TS)管理接口(MLME-ADDTS、MLME-DELTS)、Qos调度变更通知(MLME-SCHEDULE)、

    4、功率控制。包括:电源管理(MLME-POWERMGT)、发送功率通知(MLME-TPCADAPT)

    5、安全。包括:密钥管理(MLME-SETKEYS、MLME-DELETEKEYS)、迈克尔失败事件(MLME-MICHAELMICFAILURE)、EAPOL(MLME-EAPOL)、帧密钥错误丢弃通知(MLME-PROTECTEDFRAMEDROPPED)

    6、时间同步。包括:时间同步(MLME-JOIN)、高层同步支持(MLME-HL-SYNC)、

    7、特性。包括:合并ACK帧管理(MLME-ADDBA、MLME-DELBA)、发行商特有(MLME-VSPECIFIC)、MIB管理(MLME-SET、MLME-GET)


    以上7部分为概览式给出,没有涉及到具体介绍。每个部分的详细功能分析将单独成文。


  • 相关阅读:
    每天一个linux命令(8):scp使用
    C++11 列表初始化
    国外程序员整理的C++资源大全
    fiddler4 使用教程
    C++11 右值引用和转移语义
    数据库炸了——是谁动了我的wait_timeout
    Go组件学习——gorm四步带你搞定DB增删改查
    Go组件学习——cron定时器
    Go语言学习——channel的死锁其实没那么复杂
    Go语言学习——彻底弄懂return和defer的微妙关系
  • 原文地址:https://www.cnblogs.com/dyllove98/p/3170460.html
Copyright © 2011-2022 走看看