Method and system for load balancing traffic in a wireless network

According to one embodiment of the invention, a method for load balancing traffic in a wireless network includes identifying a respective operational parameter from wireless network devices in the wireless network. The respective operational parameter indicates a number of endpoint associations for the wireless network devices. The method also includes detecting a wireless network device with a particular number of endpoint associations by examining each of the respective operational parameters. The method further includes, in response to the detected wireless network device, configuring the wireless network device to limit the number of endpoint associations to a number less than the particular number.

TECHNICAL FIELD OF THE INVENTION

This invention relates generally to wireless networks, and more particularly, to a method and system for load balancing traffic in a wireless network.

BACKGROUND OF THE INVENTION

Endpoint devices, such as laptops, may communicate with a wireless network through wireless network devices, such as access points. As the wireless network grows in size and complexity, the augmentation of endpoint devices and wireless network devices may cause an increase in traffic. When a wireless network device receives a high volume of traffic, the wireless network device may choose to service traffic requests one at a time. Requests that are not being processed typically wait until the wireless network device is ready to receive more requests. As a result, the wireless network device can become a bottleneck in the wireless network.

OVERVIEW OF EXAMPLE EMBODIMENTS

According to one embodiment of the invention, a method for load balancing traffic in a wireless network includes identifying a respective operational parameter from wireless network devices in the wireless network. The respective operational parameter indicates a number of endpoint associations for the wireless network devices. The method also includes detecting a wireless network device with a particular number of endpoint associations by examining each of the respective operational parameters. The method further includes, in response to the detected wireless network device, configuring the wireless network device to limit the number of endpoint associations to a number less than the particular number.

Technical advantages of particular embodiments of the present invention include a method and system for load balancing traffic in a wireless network that detects wireless network devices that are overloaded with traffic. Thus, traffic may be evenly distributed among wireless network devices.

Another technical advantage of particular embodiments of the present invention includes a method and system for load balancing traffic in a wireless network that limits the number of endpoint associations for a wireless network device. Therefore, in periods of high traffic, wireless network devices share the traffic load by accepting a limited number of endpoint associations at each wireless network device.

DESCRIPTION OF EXAMPLE EMBODIMENTS

FIG. 1Ais a block diagram illustrating a system10for load balancing traffic in a wireless network according to the teachings of the invention. As shown inFIG. 1A, system10generally includes a network12, one or more wireless network devices14, one or more endpoint devices16, a wireless network range17, and a managing device18. System10is particularly adapted for balancing wireless network traffic among wireless network devices in a wireless network.

Network12may refer to any interconnecting system capable of transmitting audio, video, signals, data, messages, or any combination of the preceding. Network12may comprise all or a portion of a public switched telephone network (PSTN), a public or private data network, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a local, regional, or global communication or computer network such as the Internet, a wireline or wireless network, an enterprise intranet, other suitable communication link, or any combination of the preceding.

In particular embodiments of the invention, network12may transmit information in packet flows. A packet flow includes one or more packets sent from a source to a destination. A packet may comprise a bundle of data organized in a specific way for transmission, and a frame may comprise the payload of one or more packets organized in a specific way for transmission. A packet-based communication protocol such as Internet Protocol (IP) may be used to communicate the packet flows.

Network12may utilize communication protocols and technologies to transmit packet flows. Example communication protocols and technologies include those set by the Institute of Electrical and Electronics Engineers, Inc. (IEEE) standards, International Telecommunications Union (ITU-T) standards, European Telecommunications Standards Institute (ETSI) standards, Internet Engineering Task Force (IETF) standards, or other standards. As an example, network12may utilize the IEEE 802.xx standards such as the 802.11 standards.

Wireless network device14may be any network point suitable to couple an endpoint device, such as endpoint device16, to a network, such as network12. Wireless network device14may be, for example, a session border controller, gatekeeper, call manager, conference bridge, router, hub, switch, gateway, access point, edge point, or any other hardware or software operable to couple an endpoint device, such as endpoint device16, to a network.

According to one embodiment of the invention, wireless network device14may have a wired connection to network12. According to another embodiment of the invention, wireless network device14may have a wireless connection to network12. According to yet another embodiment of the invention, wireless network device14may include a receiver or transmitter or both a receiver and a transmitter. As an example, wireless network device14may include an omni directional antenna operable to communicate with one or more endpoint devices.

Endpoint device16may refer to any suitable device operable to communicate with network12through a wireless network device14. Endpoint device16may execute with any of the well-known MS-DOS, PC-DOS, OS-2, MAC-OS, WINDOWS™, UNIX, or other appropriate operating systems, including future operating systems. Endpoint device16may include, for example, a personal digital assistant, a computer such as a laptop, a cellular telephone, a mobile handset, or any other device operable to communicate with network12through wireless network device14.

Wireless network range17may refer to any suitable signal range for communications between wireless network device14and endpoint device16. In particular embodiments of the invention, communications between wireless network device14and endpoint device16are communicated in wireless network range17according to one or more secure wireless communication protocols or WLAN protocols, such as portions or all of the Wired Equivalent Privacy (WEP) protocol, the Robust Security Network (RSN) associated with the IEEE 802.11i protocol, the IEEE 802.1x protocol, the Advanced Encryption Standard (AES), the Temporal Key Integrity Protocol (TKIP), Extensible Authentication Protocol over LAN (EAPOL) algorithms or protocols (such as EAP-TTLS, PEAP, or CISCO's LEAP or EAP-FAST protocols, for example), WiFi Protected Access (WPA) protocol, WiFi Protected Access Pre-shared key (WPA-PSK) protocol, WiFi Protected Access Version 2 (WPA2) protocol, or WiFi Protected Access Version 2 Pre-shared key (WPA2-PSK) protocol, for example.

Managing device18represents any device suitable to balance the traffic among wireless network devices, such as wireless network device14, in a wireless network. AlthoughFIG. 1Aprovides one example of managing device18as operating within network12, in other embodiments managing device18may operate as a wireless device connecting to network12through a wireless network device14. Additional details of one example of managing device18are described in more detail below.

In various embodiments of the invention, a wireless network may have endpoint devices, such as endpoint device16, communicating with a network through wireless network devices, such as wireless network device14. As the network grows in size, the augmentation of endpoint devices may cause an increase in traffic. As a result, some wireless network devices may become overloaded with traffic, while other wireless network devices may remain partially loaded. As a result, the overloaded wireless network devices may become a bottleneck in the wireless network.

According to one embodiment of the invention, a system and method are provided that balance traffic among wireless network devices, such as wireless network device14, in a wireless network. This is effected by detecting wireless network devices that are overloaded with traffic. Balancing traffic, by a managing device, evenly distributes endpoint associations among wireless network devices. Additional details of example embodiments of the invention are described in greater detail below in conjunction with portions ofFIG. 1A,FIG. 1B,FIG. 2A,FIG. 2B, andFIG. 3.

According to the illustrated embodiment of the invention, managing device18includes a processor20, a storage device22, an input device24, a memory device26, a communication interface28, an output device30, and a channel allocation manager40.

Processor20may refer to any suitable device operable to execute instructions and manipulate data to perform operations for managing device18. Processor20may include, for example, any type of central processing unit (CPU).

Storage device22may refer to any suitable device operable for storing data and instructions. Storage device22may include, for example, a magnetic disk, flash memory, or optical disk, or other suitable data storage device.

Input device24may refer to any suitable device operable to input, select, and/or manipulate various data and information. Input device24may include, for example, a keyboard, mouse, graphics tablet, joystick, light pen, microphone, scanner, or other suitable input device.

Memory device26may refer to any suitable device operable to store and facilitate retrieval of data, and may comprise Random Access Memory (RAM), Read Only Memory (ROM), a magnetic drive, a disk drive, a Compact Disk (CD) drive, a Digital Video Disk (DVD) drive, removable media storage, any other suitable data storage medium, or a combination of any of the preceding.

Communication interface28may refer to any suitable device operable to receive input for managing device18, send output from managing device18, perform suitable processing of the input or output or both, communicate to other devices, or any combination of the preceding. Communication interface28may include appropriate hardware (e.g. modem, network interface card, etc.) and software, including protocol conversion and data processing capabilities, to communicate through a LAN, WAN, or other communication system that allows managing device18to communicate to other devices. Communication interface28may include one or more ports, conversion software, or both.

Output device30may refer to any suitable device operable for displaying information to a user. Output device30may include, for example, a video display, a printer, a plotter, or other suitable output device.

Load balancer40may refer to any suitable logic embodied in computer-readable media, and when executed operable to balance traffic among wireless network devices. In the illustrated embodiment of the invention, load balancer40resides in storage device22. In other embodiments of the invention, load balancer40may reside in memory device26, or any other suitable device operable to store and facilitate retrieval of data and instructions.

FIG. 1Bis a block diagram illustrating an example load balancer40of system10ofFIG. 1Ain accordance with an embodiment of the present invention. Load balancer40may include various modules operable to perform various functions including an association module42, a detection module44, and a configuration module46.

According to one embodiment of the invention, association module42may identify operational parameters from wireless network device14. The operational parameters may include a parameter indicative of endpoint associations for wireless network14. For example, association module42may identify that wireless network device14has four endpoint associations. In various embodiments of the invention, the parameter indicative of endpoint associations may refer to a percentage of endpoint associations for wireless network device14. For example, association module42may identify that wireless network device14is associated with 75% of the endpoint devices in the wireless network. However, the present disclosure contemplates many types of operational parameters indicative of the number of endpoint associations for wireless network device14. Various embodiments may include some, all, or none of the enumerated operational parameters.

According to one embodiment of the invention, detection module44may examine each of the respective operational parameters from the wireless network devices and detect whether wireless network device14has a particular number of endpoint associations. For example, a particular number of endpoint associations in the wireless network may be set to a maximum number. The maximum number may be, for example, eight endpoint associations for wireless network device14. By examining the operational parameter indicative of endpoint associations for wireless network device14, detection module44may detect that wireless network device14is overloaded with endpoint associations. However, the present disclosure contemplates many types of strategies for examining and detecting a particular number of endpoint associations at wireless network device14. Various embodiments may include some, all, or none of the enumerated strategies.

According to one embodiment of the invention, detection module44may generate an overloaded list including one or more wireless network devices in the wireless network with a maximum number of endpoint associations. For example, detection module44may add wireless network device14to the overloaded wireless network device list if wireless network device14has a maximum number of endpoint associations, such as ten endpoint associations out of a possible ten endpoint associations.

According to one embodiment of the invention, detection module44may generate a partially loaded list including one or more wireless network devices in the wireless network with a minimal number of endpoint associations. For example, detection module44may add wireless network device14to the partially loaded wireless network device list if wireless network device14has a minimal number of endpoint associations, such as two endpoint associations out of a possible ten endpoint associations.

According to one embodiment of the invention, detection module44may detect an endpoint device, such as endpoint device16, from a wireless network device, such as wireless network device14, listed on the overloaded wireless network device list. For example, detection module44may detect, at random, endpoint device16from the endpoint associations for wireless network device14. As another example, detection module44may detect that endpoint device16is associated to wireless network device14, and in range of other wireless network devices.

According to one embodiment of the invention, configuration module46may distribute a command to endpoint device16to disassociate from wireless network device14located on the overloaded wireless network device list. For example, wireless network device14may be located on the overloaded wireless network device list if wireless network device14has a maximum number of endpoint associations, such as ten endpoint associations out of a possible ten endpoint associations. Configuration module46may distribute a command to an endpoint device16to disassociate with wireless network device14to reduce the traffic load on wireless network device14.

According to one embodiment of the invention, configuration module46may distribute a command to endpoint device16to associate with wireless network device14located on the partially loaded wireless network device list. For example, wireless network device14may be located on the partially loaded wireless network device list if wireless network device14has a minimal number of endpoint associations, such as two endpoint associations out of a possible ten endpoint associations. Configuration module46may distribute a command to an endpoint device16to associate with wireless network device14to increase the traffic load on wireless network device14.

According to one embodiment of the invention, configuration module46may limit the number of endpoint associations at wireless network device14to a number less than a particular number. For example, configuration module46may specify a number of endpoint associations at wireless network device14. By specifying a number of endpoint associations at wireless network device14, endpoint devices, such as endpoint device16, are forced to average the load among other wireless network devices in the wireless network.

According to one embodiment of the invention, the wireless network devices managed by load balancer40may be managed by agents on the devices. An agent may be any suitable logic operable to report to load balancer40through managing device18upon command, and possibly on a regular basis. Load balancer40may then balance traffic among wireless network devices through a customizable agent on the wireless network devices. In other embodiments, load balancer40may communicate with the wireless network devices using other protocols such as Simple Network Management Protocol (SNMP), thereby allowing third-party software agents and hardware devices to be managed.

FIG. 2Ais a block diagram illustrating example endpoint associations of system10ofFIG. 1A, according to an embodiment of the invention. As shown inFIG. 2A, wireless network devices14a,14b, and14care connected to a network12. Wireless network devices14a,14b, and14cmay be substantially similar to wireless network device14ofFIG. 1A. Wireless network devices14a,14b, and14ceach have wireless network ranges17a,17b, and17c, respectively. Wireless network ranges17a,17b, and17cmay be substantially similar to wireless network range17ofFIG. 1A.

As shown inFIG. 2A, wireless network device14ahas endpoint associations with endpoint devices16a,16b,16c, and16d, as indicated by reference numbers202,204,206, and208. Wireless network device14chas endpoint associations with endpoint devices16eand16f, as indicated by reference numbers210and212. Thus, wireless network device14ahas a higher load of endpoint associations than wireless network device14band14c.

According to one embodiment of the invention, the traffic load at wireless network device14amay be detected using operational parameters from wireless network device14a. The operational parameters may include a parameter indicative of endpoint associations for wireless network14a. For example, an operational parameter indicating four endpoint associations may be detected from wireless network device14a.

According to one embodiment of the invention, the wireless network device14amay be configured to evenly distribute the load among other wireless network devices. For example, the number of endpoint associations at wireless network device14amay be limited to a maximum of two endpoint associations. By specifying a maximum number of endpoint associations at wireless network device14, endpoint devices, such as endpoint device16, are forced to average the load among other wireless network devices in the wireless network.

According to one embodiment of the invention, endpoint devices16cand16dmay receive a command to disassociate from wireless network device14a, and associate with wireless network device14bas shown inFIG. 2B. After balancing the load, wireless network device14amay have endpoint associations with endpoint device16aand16b, as indicated by reference numbers222and224. Wireless network device14bmay have endpoint associations with endpoint device16cand16d, as indicated by reference numbers226and228. Wireless network device14cmay have endpoint associations with endpoint device16eand16f, as indicated by reference numbers230and232.

FIG. 3is a flow chart illustrating example acts associated with a method for load balancing traffic in a wireless network. The example acts may be performed by load balancer40as discussed above with reference toFIGS. 1A and 1B. At step302operational parameters of wireless network devices may be identified. The operational parameters may include a parameter indicative of a number of endpoint associations for the wireless network devices. For example, a parameter indicative of a number of endpoint associations, such as four endpoint associations, may be identified at a wireless network device.

At step304the number of endpoint associations for each wireless network device is examined. The number of endpoint associations for each wireless network device may be examined to detect whether each wireless network device has a particular number of endpoint associations. For example, a particular number of endpoint associations in the wireless network may be set to a maximum number. The maximum number may be, for example, eight endpoint associations. By examining the operational parameter indicative of endpoint associations, a wireless network device overloaded with endpoint associations may be detected at step306.

At step308the detected wireless network device is configured by the load balancing managing system. For example, the number of endpoint associations at the wireless network device may be limited to a maximum of two endpoint associations. By specifying a maximum number of endpoint associations at the wireless network device, endpoint devices are forced to average the load among other wireless network devices in the wireless network. According to another embodiment, endpoint devices may receive a command to disassociate from the wireless network device and associate with another wireless network device to balance the load among wireless network devices. Balancing the load among wireless network devices may reduce bottlenecks in the wireless network.

Although the present invention has been described in several embodiments, a myriad of changes, variations, alterations, transformations, and modifications may be suggested to one skilled in the art, and it is intended that the present invention encompass such changes, variations, alterations, transformations, and modifications as falling within the spirit and scope of the appended claims.