Abstract:
A method for achieving load balance between access point devices in a wireless local area network and it&#39;s applicable for a wireless local area network in which multiple access points provide wireless connection service for a plurality of wireless mobile stations. In the method, a master access point, which allows a mobile wireless station to access, is elected by the manner of exchanging messages among the multiple access points. And the rest of the multiple access points are set as slave access points which refuse the wireless mobile station to access. The present invention overcomes the shortages of the prior art, in which load balance is achieved by depending on an external service controller of the access point AP or which can only be applied to special STA user groups. Also, the present invention solves the problem of achieving dynamic load balance between the access points by utilizing the valid resources effectively.

Description:
FIELD  
       [0001]     The present invention relates to a method for achieving load balance between access point devices in a wireless local area network, and more particularly, to a method for achieving load balance between access point devices in a wireless local area network during networking in the field of communication.  
       BACKGROUND OF THE INVENTION  
       [0002]     In a wireless local area network (WLAN) conforming to IEEE802.11 standards, wireless connection service is provided to a plurality of mobile wireless stations (STA) through multiple access points (APs). For instance, in a building, multiple access points are arranged at each crucial location while a STA which may move randomly in the building can be connected to any one of the access points (APs). However, the STA is actually connected to the most favorable AP that has the strongest Beacon Frame signal strength among all the access points. However, as more STAs join into the wireless local area network, each AP will have different traffic load. The APs that have relatively more STAs connected to will become overloaded so as to degrade the running efficiency. Therefore, the traffic load of each AP needs to be regulated to make efficient use of the AP resources and to release network jamming.  
         [0003]     In prior art, following methods are usually applied to regulate network load of each AP:  
         [0004]     (1) Beacon Frames are transmitted from APs to STAs within the valid area covered by the APs, and simultaneously loading level messages are broadcasted from APs to the STAs. To which AP the STA will get access shall be decided based on the received Beacon Frame signal strength as well as the loading level messages;  
         [0005]     (2) The access of a STA is either allowed or refused by an AP according to the AP&#39;s loading level as well as whether the STA can be associated with other AP. An instruction message showing that the STA can be associated with other AP is transmitted from the STA to the AP, while whether the STA is allowed or refused to connect to the AP shall be decided based on the AP&#39;s loading level;  
         [0006]     (3) The loading level of each AP is monitored by a service controller so as to control the STA connect to a certain AP.  
         [0007]     However, it should be noted that there are following disadvantages existing in the above-mentioned methods.  
         [0008]     In the method (1) and (2), both the loading level messages transmitted from the AP to the STA and the instruction messages showing that the STA can be associated with other AP transmitted from the STA to the AP are nonstandard information. Therefore, these two methods can only be applied to such specific STAs and APs that can support or identify the above-mentioned information; thereby the application of the STA will be limited to certain extent. In the method (3), an additional service controller needs to be used for controlling the loading level of AP, which increases the cost of network and also reduces the networking flexibility.  
       SUMMARY OF THE INVENTION  
       [0009]     The technical problem to be solved by the present invention is to provide a method for achieving load balance between access point devices in a wireless local area network. The method of the present invention overcomes the defects of the prior art. In the prior art, the achieving of the load balancing depends on the control of an external service controller of AP or the method can only be applied to specific STA user groups. The method of the present invention also solves the problem of achieving the dynamic load balancing between the access points by utilizing the valid resource efficiently.  
         [0010]     To achieve the above-mentioned object, a method for achieving load balance between access point devices in a wireless local area network is provided according to the present invention. The method is applicable for a wireless local area network in which wireless connection service is provided through multiple access points to a plurality of mobile wireless stations. The method comprises the following steps:  
         [0011]     electing a master access point from said multiple access points by the manner of exchanging messages among said multiple access points, wherein said master access point allows a mobile wireless station to access;  
         [0012]     setting the rest of said multiple access points as slave access points which refuse a mobile wireless station to access.  
         [0013]     Aforementioned method, wherein the method further comprising electing the access point with a lowest loading level as the master access point.  
         [0014]     Aforementioned method, wherein the method further comprising:  
         [0015]     said multiple access points electing the master access point and initiating an election for electing a new master access point in the manner of real time exchanging loading level messages and comparing respective loading level as well as priority.  
         [0016]     Aforementioned method, wherein further comprising the following steps performed by any of said multiple access points for electing a master access point:  
         [0017]     Step 1, said any of said multiple access points refusing to connect a mobile wireless station and setting a time period for electing;  
         [0018]     Step 2, judging whether the present time is within the time period for electing; if so, turn to step 3; otherwise, turn to step 6;  
         [0019]     Step 3, said any of said multiple access points transmitting its own loading level message and receiving loading level messages transmitted from other access point in said local area network;  
         [0020]     Step 4, comparing loading level of said other access point with loading level of said any of said multiple access points; if the loading level of said other access point being compared is lower than that of said any of said multiple access points, or the loading level of said other access point being compared is equal to that of said any of said multiple access points and its priority is higher, then turn to step 5; otherwise, turn to step 2;  
         [0021]     Step 5, said any of said multiple access points being set as a slave access point from which the loading level message stopping being transmitted, then turn to step 7;  
         [0022]     Step 6, said any of said multiple access points being set as the master access point which allows a mobile wireless station to access;  
         [0023]     Step 7, ending said steps performed by said any of said multiple access points for electing a master access point.  
         [0024]     Aforementioned method, wherein the method further comprising the following steps performed by said master access point after said master access point has been elected:  
         [0025]     said master access point transmitting its loading level message actively and periodically so as to notify its loading level;  
         [0026]     said master access point monitoring its own loading level and initiating an election for electing a new master access point if the loading level of said master access point increases;  
         [0027]     said master access point receiving loading level messages from other access points in said local area network, and said master access point being set as a slave access point if there exists an access point the loading level of which is lower than that of said master access point, or there exists an access point the loading level of which is equal to that of said master access point and its priority is higher than that of said master access point.  
         [0028]     Aforementioned method, wherein the method further comprising following steps performed by said slave access point after said master access point has been elected:  
         [0029]     said slave access point receiving the loading level message transmitted from said master access point and self checking its own loading level;  
         [0030]     said slave access point initiating an election for electing a new master access point if the loading level of said slave access point is lower than that of said master access point, or the loading level of said slave access point is equal to that of said master access point and its priority is higher than that of said master access point.  
         [0031]     Aforementioned method, wherein said steps performed by said slave access point further comprising:  
         [0032]     said slave access point receiving loading level messages transmitted from other slave access points in said local area network;  
         [0033]     said slave access point electing one slave access point the loading level of which is lower than that of the current master access point, or the loading level of which is equal to that of the current master access point and its priority is higher than that of the current master access point from said other slave access points as a new master access point.  
         [0034]     Aforementioned method, wherein said steps performed by said slave access point further comprising:  
         [0035]     said slave access point detecting the on-line operation of said master access point according to the loading level messages transmitted from said master access point; and  
         [0036]     said slave access point initiating an election for electing a new master access point if said master access point is detected in a state of abnormality.  
         [0037]     Aforementioned method, wherein the method is especially applicable for a wireless local area network in which the signal strength of any pair of STA and connected AP is close to each other, and each STA can be connected to any one of the APs freely.  
         [0038]     The method according to the present invention is applicable for all STAs conforming to the IEEE802.11 standard due to the fact that there is no need to exchange loading level messages between AP and STA. Furthermore, an additional service controller is no longer necessary to be used for controlling the access of STA because the loading level messages are only exchanged among Aps, and the access of STA is controlled spontaneously by the APs. A significant progress has been made in respect of achieving dynamic load balance among APs according to the present invention. Besides, according to the present invention load balance can be achieved during wireless connection service is provided to various STAs conforming to IEEE802.11 standard through multiple APs. Therefore, an additional service controller is unnecessary during networking according to the method of the present invention, which reduces the networking cost and increases the networking flexibility, accordingly. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0039]      FIG. 1  is a schematic view illustrating the application of the load balance between APs according to the present invention;  
         [0040]      FIG. 2  is a flowchart of electing a master AP according to the present invention;  
         [0041]      FIG. 3  is a processing flowchart of the master AP according to the present invention;  
         [0042]      FIG. 4  is a processing flowchart of the slave AP according to the present invention. 
     
    
     DESCRIPTION OF PREFERRED EMBODIMENTS  
       [0043]     The present invention will be described in detail hereinafter with reference to the accompanying drawings and embodiments.  
         [0044]     The present invention is especially applicable for a wireless local area network, in which wireless connection service is provided to a plurality of STAs through multiple APs, the signal strength of any pair of STA and connected AP is close to each other, and each STA can be connected to any one of the APs freely.  
         [0045]     As shown in  FIG. 1 , the load is balanced according to the number of the users that are connected to each AP. In  FIG. 1 , AP 1 , AP 2  and AP 3  are connected to a same Ethernet switch, and a plurality of STAs is connected to AP 1 , AP 2 , and AP 3  respectively. Election among APs is made so as to find out the AP with the least number of STAs connected to, which is then set as the master AP. In  FIG. 1 , AP 1  has the least number of STAs connected to and is set as the master AP, while AP 2  and AP 3  are set as slave APs. Therefore, the master AP 1  continue to allow other STAs to access, while AP 2  and AP 3  refuse other STAs to access. An additional mobile wireless station (STA 1 ) that newly joins into the specific wireless local area network shown in  FIG. 1  can only be connected to AP 1 . After the connecting of STA 1  with AP 1  is completed, a new election will be initiated again for electing a new master AP among AP 1 , AP 2  and AP 3 . If the number of the access points with the lowest loading level are no less than two, then one AP will be elected as the unique master AP by comparing the pre-con figured priority of each AP.  
         [0046]     Hereinafter, detailed description for implementing the method will be given.  
         [0047]     1, The data message format of the loading level message exchanged between APs is shown in the following table, and the meaning of each field of the message is as follows.  
         [0048]     The “version” field, with the length of 1 byte, indicates the version of the load balancing solution.  
         [0049]     The “command” field, with the length of 1 byte, indicates the specific function of the message.  
         [0050]     The “message identifier” field, with the length of 2 bytes, is useful for matching the request and response. The value of the identifier field of the received message needs to be copied to the identifier field of the response message by the response message. The identifier field will be neglected when a non-response message is received.  
         [0051]     The “message length” field, with the length of 2 bytes, indicates the length of the entire message that comprises the version field, the command field, the message identifier field, the message length field, as well as the following fields.  
         [0052]     The “sub-command” field, with the length of 1 byte, indicates the sub-function of the loading level message.  
         [0053]     The “load balancing policy” field, with the length of 1 byte, indicates the policy adopted in load balancing, such as policy according to the number of the wireless stations, policy according to the data traffic and so on.  
                                                   Message Field   Length                           version   1           command   1           message identifier   2           message length   2           sub-command   1           load balancing policy   1           load balancing group   2           AP identifier   8           AP working mode   1           AP state   1           loading level   4           serial number   2           extended service set identifier length   1           extended service set identifier   extended service set               identifier length                         The “load balancing group” field, with the length of 2 bytes, indicates the identifier of the specific AP group participating in the load balancing.                The “AP identifier” field, with the length of 8 bytes, indicates the identifier of AP. The identifier of AP includes two parts, namely, the priority of AP and the basic service set identifier (BSSID), wherein the priority of AP occupies two bytes length.                The “AP working mode” field, with the length of 1 byte, indicates the current working mode of AP. For example, it can indicate that the AP is now working in the mode of IEEE802.11a, or IEEE802.11b or IEEE802.11g etc..                The “AP state” field, with the length of 1 byte, indicates the state of the AP from which the message is transmitted. For example, it may indicate that the AP is an AP in the state of electing, or is a slave AP or is a master AP etc..                The “loading level” field, with the length of 4 bytes, indicates the magnitude of the current loading level of the AP from which the message is transmitted.                The “serial number” field, with the length of 2 bytes, indicates the serial number of the message. The information of this field can be used by the receiver to detect the messages received repeatedly in a short period of time and also can be used to avoid receiving messages that are older than the current message.                The “extended service set identifier length” field, with the length of 1 byte, indicates the length of the extended service set identifier.                The “extended service set identifier” field, the length of which is designated by the “extended service set length” field, indicates the extended service set identifier of the AP from which the message (ESSID) is transmitted.             
 
         [0054]     Since there is no standard to support the loading level messages exchanged among APs, the exchanged messages used here are nonstandard.  
         [0055]     2, In the beginning, four timers are set for each AP, namely, a timer for monitoring loading level, a timer for sending loading level message, a timer for holding the state of electing a master AP and a timer for detecting abnormality of the master AP.  
         [0056]     The timing length for holding the state of electing a master AP is set to be longer than or equal to the timing length for detecting the abnormality of the master AP.  
         [0057]     The timing length for sending the loading level message is set to be shorter than the timing length for holding the state of electing the master AP so as to make sure that the loading level messages transmitted from all the other APs can be detected within the timing length set for holding the state of electing the master AP.  
         [0058]     The timing length for sending loading level message is set to be shorter than the timing length for detecting the abnormality of the master AP so as to make sure that the loading level messages transmitted from the master AP can be received during the master AP is normally on-line and before the timer for detecting the abnormality of the master AP times out.  
         [0059]     The timing length set for monitoring the loading level is used to make sure that the real time loading level can be reflected correctly under different load balancing policy.  
         [0060]     Each AP is configured with different priority. It should be noted that the priority of two APs is determined by comparing the BSSID region of the identifier field of each AP from high byte to low byte in turn if the priority regions of the identifier fields of two APs are detected to be identical.  
         [0061]     3, The “timer for monitoring loading level” of the AP will be turned on firstly, when an AP joins in the wireless local area network shown in  FIG. 1 , in order to monitor loading level of the present AP periodically. Then the election for electing a new master AP will be initiated. Referring to  FIG. 2 , the processing flowchart of electing a master AP according to the present invention is shown. Step  301 , at the beginning of the election, the present AP refuses a STA to access and turns on both the “timer for holding the state of electing a master AP” and the “timer for sending loading level message”; Step  302 , the AP judges whether the “timer for holding the state of electing a master AP” times out; if so, the AP further judges whether it has received a loading level message indicating that there exists other access point with a loading level lower than its own loading level; if no, the AP turns to step  305 , in which the loading level messages are transmitted periodically to the distribution system by operating the “timer for sending loading level message”, thereby the other APs in the DS can be notified.  
         [0062]     If the present AP has not received a loading level message indicating that there exists other access point with a loading level lower than its own loading level at the time when the “timer for holding the state of electing a master AP” times out, step  303  in which the AP is set as the master AP will be performed. In step  304 , a STA is allowed to get access to the master AP from which the loading level messages continue to be sent out and notified to other APs.  
         [0063]     In step  306 , the loading level messages from other APs in the wireless local network are received by the present AP. Step  307  is performed to compare the loading level of the present AP with that of the other APs. As a result, if the loading level of the other AP being compared is lower than that of the present AP, or if the loading level of the other AP being compared is equal to that of the present AP and its priority is higher than that of the present AP, then step  308  is performed to set the present AP as a slave AP; otherwise, step  302  is performed again.  
         [0064]     In step  309 , “timer for holding the state of electing a master AP” and the “timer for sending loading level message” of the slave AP are turned off; also, the “timer for detecting the abnormality of the master AP” of the slave AP is turned on. That is, loading level messages are no longer sent out from the slave AP.  
         [0065]     4. The processing of the master AP is shown in  FIG. 3 .  
         [0066]     In step  401 , the loading level message is transmitted from the master AP so that the loading level of the master AP can be notified to other APs.  
         [0067]     In step  402 , the loading level of the master AP is detected in a manner of self checking by operating the “timer for monitoring the loading level”.  
         [0068]     Step  403  is performed to judge whether the loading level of the master AP increases. If so, step  404  is performed to initiate an election for electing a new master AP; otherwise, step  405  is performed to detect the loading level messages transmitted from other AP. When the master AP detects the loading level messages transmitted from other AP, step  406  is performed to compare the loading level of the master AP with that of said other AP. As a result, if the loading level of said other AP is lower than that of the master AP, or if the loading level of said other AP is equal to that of the master AP and its priority is higher than that of the master AP, then step  407  is performed to change the master AP into a slave AP which refuses STAs to access. Then the “timer for sending loading level message” of the resulted slave AP is turned off, while its “timer for detecting the abnormality of the master AP” is turned on.  
         [0069]     5, The processing of a slave AP is shown in  FIG. 4 .  
         [0070]     In step  501 , the slave AP detects the loading level messages transmitted from the master AP. In step  502 , a judgment is made to determine whether the loading level messages transmitted from the master AP is received. In step  503 , if the loading level messages transmitted from the master AP is received before the “timer for detecting the abnormality of the master AP” times out then it&#39;s determined that the master AP is online normally. In step  504 , if the loading level messages transmitted from the master AP is not received after the “timer for detecting the abnormality of the master AP” times out, then it&#39;s determined that the master AP is in the state of abnormality. Step  505  is performed to compare the loading level detected from the master AP with that of the present slave AP. The said loading level of the present AP is obtained by self-checking. Step  506  is performed to determine whether the loading level of the present slave AP is lower than that of the master AP, or whether the loading level of the present AP is equal to that of the master AP and its priority is higher than that of the master AP. If so, step  510  is performed to initiate an election for electing a new master AP; if no, step  507  is performed to compare the loading level messages detected from other AP with that of the master AP. Step  508  is performed to determine whether the loading level of said other AP is lower than that of the master AP, or whether the loading level of said other AP is equal to that of the master AP and its priority is higher than that of the master AP. If so, step  509  is performed to set the said other AP as the new master AP. In step  510 , an election for electing a new master AP is initiated again by the slave AP.  
         [0071]     The method according to the present invention is applicable for all STAs conforming to the IEEE802.11 standard due to that fact that there is no need to exchange loading level messages between AP and STA and the loading level messages are only exchanged among APs. Furthermore, an additional service controller is no longer necessary to be used for controlling the access of STA that is now controlled spontaneously by the APs. A significant progress has been made in respect of achieving dynamic load balance among APs according to the present invention accordingly. Besides, according to the present invention load balance can be achieved during wireless connection service is provided to various STAs conforming to IEEE802.11 standard through multiple APs.  
         [0072]     Apparently, the present invention has other various embodiments. And it will be apparent to those skilled in the art that various modifications and variations can be made, thus it is intended that the present invention cover the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents.  
       INDUSTRIAL APPLICATION  
       [0073]     The method according to the present invention is applicable for all STAs conforming to the IEEE802.11 standard due to that fact that a master AP is elected by exchanging messages among multiple APs and there is no need to exchange loading level messages between AP and STA. Furthermore, an additional service controller is no longer necessary to be used for controlling the access of STA which is now controlled spontaneously by the APs for the reason that loading level messages are only exchanged among APs. Therefore, a significant progress has been made in respect of achieving dynamic load balance among APs according to the present invention. Besides, according to the present invention load balance can be achieved during wireless connection service is provided to various STAs conforming to IEEE802.11 standard through multiple APs. The method according to the present invention reduces the networking cost and increases the networking flexibility, accordingly. The method of the present invention is applicable not only for a wireless local area network in the communication field to achieve load balancing among access points during networking, but also applicable for other fields in which similar problems exit.