继续精读IEEE 802.11-2007
6,MAC service definition MAC服务定义
6.1 MAC服务概述
6.1.1 数据服务
此服务为对等逻辑链路控制(LLC)实体提供交换MAC服务数据单元(MSDU)的能力。为支持此服务,本地媒体访问控制(MAC)利用底层的物理层(PHY)服务,将MSDU传输至对等MAC实体,在那里MSDU将被交付给对等LLC。这种异步MSDU传输是在无连接基础上进行的。默认情况下,MSDU传输是基于尽力而为原则的。然而,服务质量(QoS)机制使用一个流量标识符(TID)来按每个MSDU指定差异化服务。QoS机制还允许在使用流量规范(TSPEC)的基础上,支持更具同步性的行为,这是基于面向连接的方式实现的。对于提交的MSDU是否能成功交付,并不提供任何保证。广播和多播传输是MAC提供的数据服务的一部分。由于无线介质(WM)的特性,与单播MSDU相比,广播和多播MSDU可能会经历较低的QoS。所有站点(STA)都将支持数据服务,但在支持QoS的基本服务集(BSS)中,只有QoS STA会根据单个MSDU指定的流量类别或流量流(TS)来区分其MSDU交付。
由于MAC的某些功能操作可能会导致某些MSDU(MAC服务数据单元)的重新排序,如下文将更详细地讨论,在非QoS(服务质量)STA(站点)中,数据服务内存在两个服务类别。通过选择所需的服务类别,每个发起MSDU传输的LLC(逻辑链路控制)实体都能够控制MAC实体是否被允许对这些MSDU进行重新排序。
6.1.2 安全服务
IEEE Std 802.11中的安全服务由认证服务以及TKIP(临时密钥完整性协议)和CCMP(计数器模式密码块链消息认证码协议)机制提供。所提供的安全服务范围仅限于站点之间的数据交换。IEEE 802.11 TKIP和CCMP实现所提供的数据保密服务是对MSDU(MAC服务数据单元)的保护。在本标准中,TKIP和CCMP被视为位于MAC子层内的逻辑服务,如参考模型图5-10(在5.7中)所示。TKIP和CCMP服务的实际实现对逻辑链路控制(LLC)和MAC子层以上的其他层是透明的。
IEEE Std 802.11中TKIP和CCMP提供的安全服务如下:
a) 数据保密性;
b) 认证;以及
c) 与层管理相结合的访问控制。
在认证交换过程中,双方按照第8条的规定交换认证信息。
TKIP和CCMP提供的MAC子层安全服务依赖于非第2层管理或系统实体的信息。管理实体通过一组MAC子层管理实体(MLME)接口和管理信息库(MIB)属性向TKIP和CCMP传递信息;特别是,8.7中定义的TKIP和CCMP决策树是由MIB属性驱动的。
使用WEP(有线等效保密)进行保密、认证或访问控制已被弃用。WEP算法不适用于本标准的目的。
6.1.3 MSDU排序
MAC子层提供的服务允许,并在某些情况下可能要求,对MSDU进行重新排序。
在非QoS STA中,MAC不会故意对MSDU进行重新排序,除非基于指定接收STA的当前操作(“电源管理”)模式,这种重新排序对于提高成功交付的可能性是必要的。对于在任一单个STA的MAC服务接口处接收到的MSDU集合而言,这种重新排序(如果有的话)的唯一影响是,相对于来自单个源STA地址的定向MSDU,广播和多播MSDU的交付顺序可能会发生变化。如果使用数据服务的高层协议不能容忍这种可能的重新排序,则应使用可选的StrictlyOrdered服务类别。在使用StrictlyOrdered服务类别的任意两个STA之间传输的MSDU不会受到使用ReorderableMulticast服务类别时可能出现的相对重新排序的影响。然而,若希望在STA处接收使用StrictlyOrdered服务类别发送的MSDU,则该STA则不能同时使用MAC电源管理功能。
在BSS中操作的QoS STA有两种服务类别,分别指定为QoSAck和QoSNoAck(有关更多信息,请参阅6.1.1.3)。对MSDU进行重新排序,不仅是为了基于指定接收STA的当前操作模式提高成功交付的可能性,还是为了尊重在MA-UNITDATA.request原语中指定的单个MSDU的优先级参数。对于在任一单个STA的MAC服务接口处接收到的MSDU集合而言,这种重新排序(如果有的话)的影响包括:
a) 相对于单播MSDU,广播和多播MSDU的交付顺序发生变化;
b) 对来自单个源STA地址且具有不同TID值的MSDU进行重新排序;以及
c) 对具有相同TID但不同服务类别的广播和多播MSDU进行重新排序。
对于具有相同TID值且发往相同目的地的单播MSDU,不得进行重新排序。
在非QoS BSS中操作的STA应遵循为非QoS STA定义的重新排序规则。
为了使MAC正常操作,分布系统(DS)必须满足ISO/IEC 15802-1:1995的要求。确保MSDU适当排序的操作限制在9.8中指定。
6.1.4 MSDU format
6.1.5 MAC数据服务架构
MAC数据平面架构(即涉及MSDU全部或部分传输的过程)如图6-1所示。
在传输过程中,MSDU会经历以下部分或全部过程:省电模式下的帧传输延迟、序列号分配、分片、加密、完整性保护和帧格式化。IEEE Std 802.1X-2004可能会在受控端口阻止MSDU。在某个时刻,包含MSDU全部或部分的数据帧会按AC/TS(访问类别/流量规范)进行排队。这种排队可能发生在图6-1所示的三个点中的任何一个。
在接收过程中,接收到的数据帧会经历MPDU(MAC协议数据单元)头部和循环冗余码(CRC)验证、去重、(如果使用Block Ack机制)可能的重新排序、解密、去分片、完整性检查和重放检测。重放检测(或使用安全机制时的去分片)之后,MSDU会被传递到MAC_SAP(MAC服务访问点)或DS(分布系统)。如果受控端口未启用,且MSDU不代表IEEE 802.1X帧,则IEEE 802.1X受控/非受控端口会丢弃该MSDU。TKIP(临时密钥完整性协议)和CCMP(计数器模式密码块链消息完整码协议)MPDU帧顺序强制在解密之后、MSDU去分片之前进行;因此,如果MPDU未按顺序到达,去分片将失败。