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部分为概览式给出,没有涉及到具体介绍。每个部分的详细功能分析将单独成文。