IEEE802.11中的联结与重联结(转载)

来源:互联网 发布:电子政务公司知乎 编辑:程序博客网 时间:2024/06/06 14:23

IEEE802.11中的联结与重联结(原创)
 
By Yanjian on 2007-4-14

摘要:接下来的时间,我将开始研究实现wireless mesh network中的二层快速切换的工作。现在刚处于起步阶段。在整个工作的过程中,我将会不时地贴出工作进展文章。这一篇是关于802.11中association的文章。

一.原语介绍

  1.MLME-ASSOCIATE.request 
    MLME-ASSOCIATE.request用来请求到AP的联结,它包含的消息如下所示:
    MLME-ASSOCIATE.request (
                              PeerSTAAddress,           //要关联的目标的MAC地址
                              AssociateFailureTimeout,  //关联过程的限制时间
                              CapabilityInformation,    //指定要用的容量信息
                              ListenInterval            //STA醒来并侦听前经过的信标间隙数
                             )
    当一个STA想要建立一个到AP的连接时,MLME-ASSOCIATE.request由该STA的SME(station management entity)
    创建。MLME-ASSOCIATE.request发起一次建立连接的过程。随后,MLME(MAC sublayer management entity)发
    出一个MLME-ASSOCIATE.confirm反应结果。
  
  2.MLME-ASSOCIATE.confirm
    MLME-ASSOCIATE.confirm报告联结尝试的结果,它包含消息如下:
    MLME-ASSOCIATE.confirm (
                              ResultCode //结果,SUCCESS/INVALID/PARAMETERS/TIMEOUT/REFUSED
                            )
    当一个MLME-ASSOCIATE.request到达后,MLME生成并发出MLME-ASSOCIATE.confirm指示联结的结果。

  3.MLME-ASSOCIATE.indication
    MLME-ASSOCIATE.indication信息:
    MLME-ASSOCIATE.indication (
                                 PeerSTAAddress  //建立联结的STA的MAC地址
                               )
    MLME-ASSOCIATE.indication是由MLME生成的联结成功的信息,由发起联结过程的MAC实体生成并发出,用
    以通知联结建立的成功。

   4.MLME-REASSOCIATE.request
     MLME-REASSOCIATE.request用来请求改变关联的AP,包含信息如下:
     MLME-REASSOCIATE.request (
                                 NewAPAddress,              //重新联结的目的AP的地址
                                 ReassociateFailureTimeout, //时间限制
                                 CapabilityInformation,     //指定容量
                                 ListenInterval             //STA醒来并侦听前经过的信标间隙数

                               )
     MLME-REASSOCIATE.request由要改变AP的STA生成,发起再联结过程,随后由MLME-REASSOCIATE.confirm
     指定再联结的结果。

    5.MLME-REASSOCIATE.confirm
      MLME-REASSOCIATE.confirm结构、用法及意义均同MLME-ASSOCIATE.confirm。

    6.MLME-REASSOCIATE.indication
      MLME-REASSOCIATE.indication结构、用法及意义均同MLME-ASSOCIATE.indication。

    7.MLME-DISASSOCAITE.request
      MLME-DISASSOCAITE.request发起解除联结过程,它包含信息如下:
      MLME-DISASSOCAITE.request (
                                   PeerSTAAddress,   //请求解除联结的STA地址
                                   ReasonCode        //请求解除联结的原因
                                 )
      MLME-DISASSOCAITE.request发起解除联结的过程。

    8.MLME-DISASSOCAITE.confirm
      MLME-DISASSOCAITE.confirm通知解除联结的结果,它包含信息如下:
      MLME-DISASSOCAITE.confirm (
                                   ResultCode
                                 )
      MLME-DISASSOCAITE.confirm用来通知解除联结的结果。

    9.MLME-DISASSOCAITE.indication
      MLME-DISASSOCAITE.indication通知联结解除成功的MAC地址,它包含如下信息:
      MLME-DISASSOCAITE.indication (
                                      PeerSTAAddress,
                                      ReasonCode
                                    )
     
二.Association and reassociation
 
  1.STA联结过程
    在接到一个MLME-ASSOCIATE.request后,STA通过下列的步骤来建立到一个AP的联结:
    1).STA发送一个association request到AP,该AP是接受STA认证的AP。
    2).如果STA收到一个联结回复帧,且其中状态值为"successful",那么STA联结上了AP。MLME应该发
       出MLME-ASSOCIATE.confirm来指示操作的成功完成。
    3).如果STA收到一个联结回复帧且其中状态值不为"successful",或者AssociateFailureTimeout超
       时。MLME应该发出MLME-ASSOCIATE.confirm来指示操作的失败。

  2.AP联结过程
    AP执行下列的步骤来支持STAs的联结。
    1).无论何时收到来自验证过的STA的Association Request帧,AP应该发送一个带有status code的
       association response到STA。如果status是"successful",分配给STA的Association ID应该
       包含在这个response中。如果STA尚未验证,则发送一个Deauthentication帧到STA。
    2).如果从STA收到带有"successful"的association response,STA则被认为联结上了本AP。
    3).AP应该把联结通知DS,并且MLME应该发出一个MLME-ASSOCIATE。indication。

  3.STA重联结过程
    收到一个MLME-REASSOCIATE.request后,STA应该通过下列步骤重新连接到AP:
    1).STA发送一个Reassociation Request帧到AP。
    2).如果收到一个状态值为"successful"的Reassociation Response帧,那么STA现在是和AP联结的,
       MLME应该发送一个MLME-REASSOCIATE.comfirm来指示操作的成功完成。
    3).如果收到一个状态值不为"successful"的Reassociation Response帧,或ReassociateFailureTimeout
       到时,那么STA现在并没有和AP联结上,并且MLME应该发送一个MLME-REASSOCIATE.confirm来指示操作的
       失败。

  4.AP重联结过程
    AP应该执行以下的操作步骤来支持STAs的重联结。
    1).无论何时从验证过的STA收到一个Reassociation Request帧,AP应该发送带有status value的
       reassociation response到STA。如果status value是"successful",分配给STA的联结的ID
       应该包含在response中。如果STA没有验证,AP应该发送一个Deauthentication帧到STA。
    2).如果从STA收到一个reassociation response,且status value为"successful",那么STA认为是联结上
       了AP。
    3).AP应该把reassociation通知到DS,且MLME应该发送一个MLME-REASSOCIATE.indication。