发明内容
有鉴于此,本发明提供了一种在扫描无线网络时发送探测响应报文的方法及无线接入点,应用本发明所提供的方法以及无线接入点能够有效减少扫描无线网络过程中对无线链路的资源占用。
一种在扫描无线网络时发送探测响应报文的方法,该方法包括:
无线接入点向无线客户端发送探测响应报文后,记录该无线客户端的标识信息并在设置的时间内保留所述记录;
无线接入点要向无线客户端发送探测响应报文时,判断当前是否保留有该无线客户端的记录,如果是,不执行发送探测响应报文的操作;否则,向该无线客户端发送探测响应报文。
一种无线接入点,该无线接入点包括记录单元和处理单元;
所述记录单元,用于在所述处理单元向无线客户端发送探测响应报文后,记录该无线客户端的标识信息并在设置的时间内保留所述记录;
所述处理单元,用于要向无线客户端发送探测响应报文时,在所述记录单元当前保留有该无线客户端的记录的情况下,不执行发送探测响应报文的操作;在所述记录单元未保留有该无线客户端的记录的情况下,向该无线客户端发送探测响应报文。
本发明所提供的一种在扫描无线网络时发送探测响应报文的方法及无线接入点,通过在一段时间内保留已发送Probe Response报文的STA的记录,从而依据所保留的记录避免在这段时间内重复向同一STA发送ProbeResponse报文,有效的减少了对无线链路的占用,提高了无线数据传输的性能,优化了无线网络。
具体实施方式
为了解决上述技术问题,本发明的技术方案是这样实现的,具体可参见图2所示的流程。在步骤201中,AP向STA发送Probe Response报文后,记录该STA并在设置的时间内保留所述记录。在步骤202中,AP要向STA发送Probe Response报文时,判断当前是否保留有该STA的记录,如果是,执行步骤203;否则,执行步骤204。在步骤203中,AP不执行发送ProbeResponse报文的操作。在步骤204中,AP向该STA发送Probe Response报文。可见,在本发明的技术方案中,AP通过记录已发送Probe Response报文的STA,来阻止对同一STA持续发送Probe Response报文,有效减少了重复发送Probe Response而造成的无线资源浪费。
同时,AP仅在设置的一段时间内保留对STA的记录,这样AP在这段时间过后又能向STA发送Probe Response报文,能够有效保障STA扫描无线网络的操作得以正常执行。其中,具体设置的时间长短可以根据STA进行主动扫描时发送Probe Request报文的频率以及持续时间来确定,同时又要考虑STA退出网络再次接入无线网络的情况。在本发明中,为了更加清楚的描述设置的时间,将设置的时间称为老化时间。
其中,记录STA的方式可以是记录任何能够唯一标识该STA的标识信息。在本发明的技术方案中,可以记录该STA的介质访问控制(MAC)地址。相应,判断当前是否保留有该STA的记录实际上就是判断当前是否保留有该STA的MAC地址,如果保留有,则不执行发送Probe Response报文的操作;否则,向该STA发送Probe Response报文。具体的在设置的时间内保留记录操作可以是:在记录STA时,对应所述记录启动计时;在计时到达设置的时间时,删除所述STA的记录。
另外,为了更进一步减少AP返回的Probe Response报文对无线链路的占用,可以在适当的条件下采用广播形式向STA返回Probe Response报文。即要向STA发送Probe Response报文时,AP可以判断自身的发送队列中是否存在其他等待发送的探测响应报文,如果是,则说明STA当前还需要向另外的STA发送Probe Response报文,此时将等待发送的Probe Response报文的目的地址改为广播地址,发送一个广播的Probe Response报文替代多个单播的ProbeResponse报文;否则,对应该STA生成Probe Response报文,加入发送队列发送。众所周知,AP采用单播形式向STA返回Probe Response报文,而单播报文和广播报文对无线链路的资源占用相同。因此,当AP需要向两个STA发送Probe Response报文,采用广播形式更加减少无线资源的占用。另一方面,通过广播方式发送Probe Response报文,还可以向更多的STA发送Probe Response报文,从而降低所在区域内STA发送ProbeRequest报文的几率,进而进一步有效减少无线链路的资源占用。
其中,AP要向STA发送Probe Response报文的情况包括以下两种。其中一种是,AP收到STA在主动扫描过程中发送的Probe Request报文后,需要向STA返回Probe Response报文。另外一种是,已经向STA返回了ProbeResponse报文,但没有收到该STA返回的ACK报文,向STA重传ProbeResponse报文。
当然,本应用实例中所指的AP向STA发送Probe Response报文的情况可以仅包括AP收到STA发送的Probe Request报文返回Probe Response报文的情况,不包括向STA重传Robe Response报文的情况。也就是,在收到Probe Request报文时需要返回Probe Response报文时,才判断是否存在有关STA的记录,在向STA重传是不判断是否存在有关STA的记录。此时,可以设置一个较低的重传次数,来限制AP向STA返回Probe Response报文的次数。即在未收到STA返回的ACK报文时,尽量少的向STA重复发送ProbeResponse报文。这样,重传Probe Response报文后,也可以不对STA的记录进行修改,即不修改记录STA MAC地址的时间。相应的,也就不会延长保留该记录项的时间。当然,根据实际的情况,也可以对STA的记录项进行修改。
另外,参见图3,图3为本发明提供了的一种无线接入点的结构示意图。本发明所提供的一种无线接入点包括记录单元和处理单元。其中,所述记录单元,用于在处理单元向STA发送Probe Response报文后,记录该STA并在设置的时间内保留所述记录;所述处理单元,用于要向STA发送ProbeResponse报文时,在所述记录单元当前保留有该STA的记录的情况下,不执行发送Probe Response报文的操作;在所述记录单元未保留有该STA的记录的情况下,向该STA发送Probe Response报文。
处理单元在向STA发送Probe Response报文之后,可以向所述记录单元发送指示消息,用于通知向当前STA发送了Probe Response报文。记录单元则可以根据该指示消息记录该STA。
具体的,记录单元用于在记录STA时,记录该STA的介质访问控制MAC地址。相应的,所述处理单元,用于要向STA发送Probe Response报文时,在所述记录单元当前保留有该STA的MAC地址的情况下,不执行发送Probe Response报文的操作;在所述记录单元未保留有该STA的MAC地址的情况下,向该STA发送Probe Response报文。
所述记录单元在记录所述STA时,对应所述记录启动计时;在计时到达设置的时间时,删除所述STA的记录,用于在设置的时间内保留该STA的记录。
另外,所述处理单元,用于向STA发送Probe Response报文时,在无线接入点的发送队列中存在等待发送的Probe Response报文的情况下,将该等待发送的Probe Response报文的目的地址改为广播地址;在所述发送队列中不存在等待发送的Probe Response报文的情况下,对应该STA生成ProbeResponse报文,加入发送队列发送。
具体的,处理单元用于在无线接入点收到无线客户端发送的探测请求报文而要返回探测响应报文时,在所述记录单元当前保留有该无线客户端的记录的情况下,不执行发送探测响应报文的操作;在所述记录单元未保留有该无线客户端的记录的情况下,向该无线客户端发送探测响应报文。
为了更好的理解本发明的技术方案,以下以一具体应用示例对本发明的技术方案进行更加详细的说明。
具体参见图4,图4为本发明应用示例的流程图,具体描述的是无线网络中的AP1向STA1发送Probe Response报文的过程,具体步骤如下:
在步骤401中,无线网络中的AP1要向STA1发送Probe Response报文时,判断自身是否保存了STA1的MAC地址,如果是,则执行步骤402;否则,执行步骤403。
当AP1收到STA1发送的Probe Request报文时,AP1会检查报文中的SSID字段、BSSID字段以及DA字段。在Probe Request报文中的SSID是空,或者是该AP配置的SSID;以及在Probe Request报文中BSSID是广播地址,或者是该AP的BSSID;以及在Probe Request报文中DA是广播地址,或者是该AP的地址,AP1需要向STA1返回Probe Response报文。其中,AP1判断自身是否保存了STA1的MAC地址的操作,既可以在检查确定需要发送Probe Response报文之后执行,也可以在该检查操作之前执行。
在步骤402中,AP1不执行当前向STA1发送Probe Response报文的操作,不向STA1发送Probe Response报文。结束当前处理流程。
在步骤403中,向STA1发送Probe Response报文,执行步骤404。
如前所述,这里为了进一步减少无线链路的资源占用、以及所在区域内STA再次发送Probe Request报文的几率。AP可以在将Probe Response报文送入发送队列之前,判断自身的发送队列中是否存在等待发送的ProbeResponse报文,如果存在,则表明AP1当前除了要向STA1发送ProbeResponse报文,还要向其他的STA发送Probe Response报文,此时AP1可以将等待发送的Probe Response报文的目的地址改为广播地址,向所在区域中的STA发送Probe Response报文;否则,生成Probe Response报文加入发送队列发送。这里,当队列中的Probe Response报文中的目的地址已经被修改为广播地址时,则可以不执行修改的操作。
在步骤404中,AP1记录该STA1的MAC地址并在设置的老化时间内保留该记录。
具体的实现方式可以是:在记录STA1的MAC地址时,对应该记录启动计时;在计时到达设置的老化时间时,删除该STA1的MAC地址的记录。
通过上述对本发明技术方案的介绍可知,在本发明的技术方案中通过在一段时间内保留已发送Probe Response报文的STA的记录,避免在这段时间内重复向同一STA发送Probe Response报文,有效的减少了ProbeResponse报文对无线链路的占用,提高了无线数据传输的性能,优化了无线网络。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。