Per user uplink medium access control on a Wi-Fi communication network

Information

  • Patent Grant
  • 10225764
  • Patent Number
    10,225,764
  • Date Filed
    Thursday, September 24, 2015
    8 years ago
  • Date Issued
    Tuesday, March 5, 2019
    5 years ago
Abstract
Uplink medium access control on per-wireless device level for a specific user. An access point sends a beacon frame to a wireless device. The beacon frame includes a BSSID that is unique to the wireless device. The beacon frame also includes embedded uplink configurations specifying uplink medium access for the wireless device. In one embodiment, a controller recognizes a device or user associated with the device, and sends corresponding uplink configurations for embedding in a subsequent beacon frame.
Description
FIELD OF THE INVENTION

The invention relates generally to network administration, and more specifically, to controlling an amount of uplink access of a wireless device.


BACKGROUND

Wireless computing technologies provide untethered access to the Internet and other networks. One of the most critical technologies for wireless networking (or Wi-Fi) is the IEEE 802.11 family of protocols promulgated by the Institute of Electrical and Electronics Engineers. Currently, the protocols are widely adopted in wireless devices such as laptop computers, tablet computers, smart phones, and network appliances.


Wireless devices complying with standards such as IEEE 802.11 have control over how a connection to wireless network is made. Namely, a wireless device selects an access point among a number of access points that have sent out beacons advertising a presence. The beacon includes a BSSID (Basic Service Set Identifier) as an identifier of the access point. In turn, the wireless device sends data packets which include the BSSID of the intended access point. Unintended access points receiving a transmission merely ignore the data packets.


Problematically, wireless devices also inherently have control over uplink accesses to wireless networks. An uplink access is necessary for sending data to the wireless network from a wireless device, such as URL requests, queries, control information, and the like. Although an access point can control an amount of data over downlink accesses, there is no control built into the protocol for uplink accesses of, for example, aggressive wireless devices. Consequentially, a wireless device can consume more than a fair amount of bandwidth on a network, or overburden a processing load of network components. This problem is exasperated for public hot spots or large companies that have a large amount of wireless devices connected at the same time. For example, the number of collisions can degrade channel quality when too many wireless devices uplink at the same time.


Besides having lack of control over aggressive wireless devices, the current protocols do not allow varying quality of service. In other words, a guest user or guest device is granted the same uplink access privileges as a critical user or critical device. As a result, a guest engaged in unproductive Internet surfing has the same media access rights as a company president presenting networked data in a board meeting.


A client running on a wireless device is not always desirable. For instance, guests connecting to a public hot spot for only one time would be burdened with the process of downloading and installing a client. Furthermore, many computer users are weary about malicious applications downloaded from the Internet.


What is needed is a technique to provide uplink access control for connected wireless devices. Further, the uplink access control should be extendable to a per-wireless device level. Finally, the technique requires no reconfiguration of a wireless device.


SUMMARY

To meet the above-described needs, methods, computer program products, and systems to provide uplink medium access control for a specific user.


In an embodiment, a beacon frame is periodically sent to a wireless device. The beacon frame includes a BSSID that is unique to the wireless device. The beacon frame also includes embedded uplink configurations specifying uplink medium access for the wireless device. In one embodiment, a controller recognizes a device or user associated with the device, and sends uplink configurations for embedding in a subsequent beacon frame.


In another embodiment, uplink configurations are embedded to the Quiet Element field and/or the AIFS and eCWmin fields of a beacon sent from an access point to a wireless device. An uplink transmission sent from the wireless device complies with the uplink configurations of the modified beacon frame.


Based on changes in conditions, the uplink configurations can also be updated. The conditions can be derived from a wireless device, an access point, or any other component of the network. Furthermore, the conditions can be derived from metrics of a wireless network such as bandwidth utilization, packet flight time, and packet loss.


Advantageously, per device control of uplink medium access restores management capability to the network components rather than the devices connected thereto. Further, control is enforced on a wireless device without installing any application thereon.





BRIEF DESCRIPTION OF THE DRAWINGS

In the following drawings, like reference numbers are used to refer to like elements. Although the following figures depict various examples of the invention, the invention is not limited to the examples depicted in the figures.



FIG. 1 is a high-level block diagram illustrating a system to control uplink access, according to one embodiment.



FIG. 2 is a sequence diagram illustrating interactions between components of the system of FIG. 1, according to one embodiment.



FIG. 3 is a block diagram illustrating a method for controlling uplink access from an access point of the system, according to one embodiment.



FIG. 4 is a block diagram illustrating a method for controlling uplink access from a controller of the system, according to one embodiment.



FIG. 5 is a schematic diagram illustrating an exemplary IEEE 802.11 network packet with uplink control configurations, according to one embodiment.



FIGS. 6A-6C are schematic diagrams illustrating configurations of access points responsive to changing conditions, according to one embodiment.



FIG. 7 is a more detailed block diagram illustrating a wireless device of the system, according to one embodiment.



FIG. 8 is a more detailed block diagram illustrating an access point of the system, according to one embodiment.



FIG. 9 is a more detailed block diagram illustrating a controller of the system, according to one embodiment.



FIG. 10 is a block diagram illustrating an exemplary computing device, according to one embodiment.





DETAILED DESCRIPTION

The present invention provides methods, computer program products, and systems to control uplink access. Generally, uplink access relates to a wireless device (or mobile station) connected to a network that access to the communication channel in order to transmit data. For example, a wireless device connected to a wireless network can be remotely configured on-the-fly to limit uplink medium accesses during heavy traffic periods. Self-regulation is particularly valuable for wireless networks such as IEEE 802.11 type networks (e.g., a, b, g, or n) which do not support native regulation on uplink access. Furthermore, a virtual port for a wireless device provides seamless mobility by using a BSSID that is unique to a device.



FIG. 1 is a high-level block diagram illustrating a system 100 to control uplink access, according to one embodiment. The system comprises wireless devices 110A-N, access points 120A-N, and a controller 13. The components can be coupled to a network 199, such as the Internet, a local network or a cellular network, through any suitable wired (e.g., Ethernet) or wireless (e.g., Wi-Fi or 3G) medium, or combination. In a preferred embodiment, the wireless devices 110A-N are coupled to the access points 120A-N through a wireless communication channel 115A-N while the access points 120A-N are coupled to the controller 130 through a wired network 125A-N. Other embodiments of communication channels are possible, including hybrid networks. Additional network components can also be part of the system 100, such as firewalls, virus scanners, routers, switches, application servers, databases, and the like. In general, the wireless devices 110A-N use communication channels 115A-C for uplink access to a network.


The wireless devices 110A-N can be, for example, a personal computer, a laptop computer, a tablet computer, a smart phone, a mobile computing device, an Internet appliance, or the like. No client is needed. The wireless devices 110A-N operate according to standards in which an access point is selected by the wireless devices 110A-N themselves. However, it is the access point that directs the wireless devices 110A-N into selecting a BSSID preferred by the controller. In one embodiment, an employee authenticates to a wireless network to access a corporate LAN to run streaming applications to modify remotely stored secure files. In another embodiment, a guest at a coffee shop accesses a public hot spot to watch stream videos stored on a public web site. The communications channels 115A-N each provide a preconfigured amount and/or frequency of uplink access. Embodiments of then wireless devices 110A-N are discussed in more detail below in association with FIG. 7.


The access points 120A-N include one or more individual access points that interact with wireless devices 110A-N to control medium access. The access points 120A-N can be set-up in various configurations to provide wireless coverage areas, examples of which are discussed below with respect to FIGS. 6A-C. The access points 120A-N can, in turn, be connected to a wired hub, switch or router connected to the network 199. In another embodiment, the functionality is incorporated into a switch or router. To implement uplink access control, the access points 120A-N modify one or more fields in beacons, including a Quiet Element and/or EDCA Parameters. In one embodiment, the access points 120A-N can identify the wireless device using a BSSID that is unique to one or more of the access points 120A-N. In this “personal cell” model or a “virtual port” model, a BSSID is maintained at the access points 120A-N for each wireless device. The access points 120A-N appear to each wireless device as if they were a single access point that communicates with the device using that identifier. A wireless device selects that single access point as the one with which it will communicate. But the controller 130 selects on of the access points 120A-N for actually communicating with a wireless device, and might change that selected access point from time to time, without a wireless device having any knowledge. The remaining access points listing passively to communications when not selected by the controller 130 to facilitate communication. Further, the access points 120A-N can control uplink access behavior of the wireless devices 110A-N on a per-device level. Embodiments of the access point are set forth below in FIG. 8.


The controller 130 can communicate with each of the access points 120A-N to direct the uplink configurations for each of the wireless devices 110A-N. Moreover, the controller determines, in one embodiment, which access point should communicate with a particular one of the wireless devices 110A-N, among other things. Algorithms to initially set uplink configurations, to change uplink configurations, and to determine which access point provides the uplink configurations are all implementation-specific. In one example, the controller 130 varies uplink configurations based on a current load of the network (i.e., provide less access during heavy traffic and more during light traffic). In another example, the controller can discriminate access for particular users or groups of users (e.g., authenticated user, guest, suspicious wireless device, etc.), for particular types of computers (e.g., critical data server, rarely-accessed archival data storage, etc.), for particular types of traffic (streaming HD video, low bandwidth video, secure data, etc.), and the like. Additional embodiments of the controller 130 are discussed with respect to FIG. 9.


The component interactions are design parameters that vary in accordance with specific needs of a wireless networks. More specifically, the controller 130 direct all uplink configurations and BSSID associations across a wireless network. Alternatively, the access points 120A-N can be in communication for self-arbitration of BSSID associations and determination of uplink configurations. Other variations rely on a hybrid approach.



FIG. 2 is a sequence diagram illustrating interactions 200 between components of the system 100 of FIG. 1 to control uplink access, according to one embodiment. The interactions occur in accordance with IEEE 802.11 standards, as discussed below. An example of an 802.11 network packet configured for implementation herein is illustrated in FIG. 5. Methods occurring within the components of FIG. 2 are illustrated in FIGS. 3 and 4.


At interaction 210, the controller sends assignments for the access points 120, including an assignment of BSSIDs to particular ones of the access points 120. At interaction 220 the access points 120 send beacons over a respective coverage area to make the BSSIDs available for connection. At interaction 230, a wireless device 110 that has received a beacon and wants to connect to a network sends a connection request, including a BSSID of the beacon.


In some embodiments, at step 240, the one or more of access points 120 receiving the connection request will respond by reporting an event to the controller 130. At step 250, the controller 130 will then respond with an indication of which of the access points 120 should respond to the connection request. At step 260, the selected access point sends uplink access configurations to the wireless device 110.


Finally, at step 270, the wireless device 110 connects to a communication channel in accordance with the uplink access configurations. In one embodiment, the uplink configurations are determined by the access points 120. In an alternative embodiment, the uplink configurations are determined by the controller 130. The access points 120 can send information to the controller for use in determining the uplink configurations. For example, statistics about network conditions (e.g., throughput, error rate, signal to noise ratio, number of connecting devices) and statistics about individual components (e.g., process load, memory or cache capacity) can affect the uplink configurations. The uplink configurations differ based on, for example, a user, a particular wireless device, a type of network traffic, and the like.


The illustrated interactions 200 of FIG. 2 are not intended to be limiting. As such, the interactions 210 to 270 can be a portion of steps from a longer process. Further, the interaction 220 in which an access point sends a beacon can be continuously repeated.



FIG. 3 is a block diagram illustrating a method 300 for controlling uplink access from an access point (e.g., the access points 120A-N) of the system 100, according to one embodiment. At step 310, a beacon frame with a BSSID and uplink configurations is sent to a wireless device, in one embodiment. Subsequent frames can also include further data associated with BSSID configuration and uplink configurations. The device-specific BSSIDs allow individual uplink access control at the per-device level. The uplink configurations enforce media access constraints on the wireless device. Because beacons are configured within standard protocols (e.g., IEEE 802.11), a client is not needed on a wireless device for control.


At step 320, a connection with a wireless device is allowed. In response to the beacon, a probe request is received from a wireless device as an attempt to connect. A particular access point designated to communicate with a wireless device then facilitates communications with a wireless network for a wireless device.


At step 330, a transmission from a communication channel access by a wireless device is received by an access point. The transmission, in one embodiment, occurs in compliance with the uplink access configurations. Some alternative embodiments reject transmissions that are out of compliance with the uplink configurations.



FIG. 4 is a block diagram illustrating a method 400 for controlling uplink access from a controller (e.g., the controller 130) of the system, according to one embodiment.


At step 410, an access point is selected to associate with a wireless device that has responded to a beacon. In one implementation, a controller selects an access point that received the response at the earliest point in time. In yet another implementation, a controller takes into account conditions on the network as a whole and/or conditions of individual network components to select an access point. An access point embeds the BSSID of a selected access point into beacon frames.


At step 420, a wireless device is configured for uplink access. Without the uplink configurations, communications would occur under standard IEEE 802.11-type standards. With the uplink configurations, behavior of the wireless device is under control of an access point and/or a controller. For example, a wireless device browsing the Internet for entertainment web sites can be restricted, while a wireless device streaming HD video with a guaranteed QoS (quality of service) can be granted additional bandwidth. Network conditions or conditions of a component can also affect the bandwidth allocation. An access point embeds the uplink configurations into beacon frames. For example, a Quiet Frame or an EDCA Parameter Set fields are modified for this purpose rather than an intended purpose of IEEE 802.11 standards (i.e., for spectrum or radio measurements).


At step 430, in response to a change in conditions, a new access point is selected for association with a wireless device at step 410. Exemplary changes in condition include a change in location of the wireless device (see FIGS. 6A-B), an imbalance in traffic load among access points, excessive downtime for an access point, a change in uplink access for a wireless device. In some embodiments, at step 440, in response to the change in conditions, new uplink access configurations are imposed on a wireless device. Additionally, a new access point can be selected at this point. However, no action is taken if a change in conditions is not significant enough.


In one implementation, a wireless device is unaware of which access point communication is conducted with. A controller sends a message to a first access point with instructions to discontinue communications with a wireless device, and also sends a message to a second access point with instructions to continue communications with the terminated wireless device. To a wireless device, communications appear as if they were continuing to originate from the first access point. The second access point maintains the same BSSID for the reconfiguration.


At step 440, a process continues until an event such as a power down, reset, or termination of an application.



FIG. 5 is a schematic diagram illustrating an exemplary IEEE 802.11 network data packet 500 with embedded uplink control configurations, according to one embodiment. The data packet 500 includes several fields, including a BSSID 512 and a Frame Body 520 fields. Other fields within the data packet 500 can include Frame Control, Duration, Address 1, SA, Sequence Control, HT Control, and FCE.


The BSSID 512 field enables the virtual port feature. More particularly, a BSSID used by a wireless device for connection to an access point is persistent. A controller can switch access points connected with the wireless device, without any changes to the wireless device. Under a system of the prior art, switches require a change in BSSID used by the wireless device.


The Frame Body 520 for a beacon frame includes a Quiet Element 530 and an EDCA Parameter Set 540 which are employed herein for uplink medium access control. Other fields with in the Frame Body 520 can include Timestamp, Beacon interval, Capability, Service Set Identifier (SSID), Supported rates, Frequency-Hopping (FH) Parameter Set, and DS Parameter Set.


The Quiet Element 530 has a Quiet Count 532 that sets a duration prior to which a quiet period will begin. A Quiet Period 534 indicates a number of beacon intervals between quiet periods. A Quiet Duration 536 sets a number of time units the quiet period lasts. Finally, a Quiet Offset 538 controls a number of time units after a beacon interval that the next quiet period will begin. In combination with the unique BSSID, the Quiet Element 530 is applied to restrict uplink medium accesses by forcing periods of no access. Also, the Quiet Element 530 may have Element ID and Length fields configured for other purposes.


The EDCA Parameter Set 540 includes a Parameter Record 550. Within the Parameter Record 550, a CW (contention window) 554 and an AIFS (arbitration inter-frame space) 552 are shortened for high priority packets. In another instance, the AIFS 552 and the eCWmin 554 in a beacon are set to a value higher than the default values (suggested values are AIFS=15 and eCWmin=9). The unique BSSID also allows these fields to control uplink access of a wireless device.



FIGS. 6A-C are schematic diagrams illustrating configurations of wireless devices responsive to a change in conditions, according to one embodiment. More specifically, in FIG. 6A, wireless device 110A is connected to access point 120A for uplink access via line 601A, while wireless device 110B is connected to access point 120B for uplink access via line 601B, at a first point in time. Here, the wireless device 110A is within range of both access points 120A and 120N, but the access point 120A is selected for the wireless device 110A. One reason for the selection can be lowest flight time for data packets. Further, an amount of uplink access is represented by the weight of line 601A.


At a later point in time, in FIG. 6B, wireless device 110B has changed locations such that it is within range of the access point 120A, and uses 602B for uplink accesses. In response to the change in other conditions, such as a change in the number of connected devices, a change in the bandwidth utilization, a change in the type of traffic, and the like, the access point 120A sends updated uplink configurations to wireless device 110A. In the case of FIG. 6B, the amount of uplink access has been reduced as illustrated by line 601B. In another embodiment, new uplink configurations for the wireless device 110A can change other behavior such as backoff and retry parameters.


At an even later point in time, in FIG. 6C, the wireless device 110A has been reassigned to access point 120N via line 601C. The flight time for data packets may still be less when sent to the access point 120A, but other conditions have triggered the change. For example, a controller can redistribute the processing load from the access point 120A to be partially absorbed by the access point 120N. Moreover, the access point 120N can handle the larger demand for uplink access by the wireless device 110A, resulting in an update in uplink configurations that increases the amount of uplink access allowed.



FIG. 7 is a more detailed block diagram illustrating a wireless device 110 of the system 100, according to one embodiment. The wireless device 110 comprises a network application 710, a network module 720, and a radio array 730. The components can be implemented in hardware, software, or a combination of both.


The network application 710 can be any application executing on the wireless device 110 that makes use of network access in operation. Examples of the network application 710 include a network browser, a VOIP telephone service, a streaming video player, a database viewer, a VPN client, and the like.


The network module 720 exchanges data packs and unpacks data packets in accordance with, e.g., a TCP/IP stack. More particularly, IEEE 802.11-type packets can be generated and received as shown in FIG. 5 above.


The radio array 730 includes one or more transmit (Tx) and receive (Rx) antennas for communication with the physical layer. Some wireless devices 110 include separate antennae for IEEE 802.11a, IEEE 802.11b and IEEE 802.11n. Other wireless devices 110 includes several antenna dedicated for separate transmit and receive paths using the MIMO functionality of IEEE 802.11n.



FIG. 8 is a more detailed block diagram illustrating an access point 120 of the system 100, according to one embodiment. The access point 120 comprises an uplink access control 810, a BSSID manager 820, a network module 830, and a radio array 840. The components can be implemented in hardware, software, or a combination of both.


The uplink access control 810 manages uplink configurations of wireless devices connected to the access point 120. In one embodiment, the uplink access control 810 receives uplink configurations from a controller, and passes on them on to wireless devices. In another embodiment, the uplink access control 810 also determines or adjusts uplink configurations based on an input of conditions. The conditions can be network conditions, wireless device conditions, local conditions, time of day, or any other automatically determined or manually input factors.


The BSSID manager 820 tracks BSSID assignments to connected wireless devices. Some embodiments assign a unique BSSID to each wireless device which allows device level control of uplink access. The BSSID can be received from a controller that is in communication with other access points.


The network module 830 can be similar to the network module 720 of the wireless device 110 of FIG. 7. Furthermore, the network module 720 can provide hub, switching, or routing functionality depending on a network configurations. For example, data packets sent over an uplink from a wireless device can be forwarded to the Internet. Also, control packets can be received from a controller.


The radio array 840 can be similar to the radio array 730 of the wireless device 110 of FIG. 7.



FIG. 9 is a more detailed block diagram illustrating a controller 130 of the system 100, according to one embodiment. The controller 130 comprises an uplink access control 910, a BSSID manager 920, a network administration application 930, and a network module 940. The components can be implemented in hardware, software, or a combination of both.


The uplink access control 910 manages uplink access of wireless devices across several access points. As a result, even if the conditions at a particular access point would not trigger uplink controls, system-wide conditions can also be taken into account because the controller 130 has a broader view of the network than a single access point. Uplink configurations are determined using inputs from sensors, metrics, data statistics, clocks, manual configurations, and the like. Next, the uplink access control 910 passes uplink configurations to an access point that is communication with a wireless device which can be identified by BSSID, MAC address, or otherwise.


The BSSID manager 920 assigns particular BSSIDs to access points. As a wireless device travels around an aggregate coverage area of the access points, the BSSID can remove a BSSID from one access point, and assign it to a different access point to continue serving the wireless device. Besides locations, the BSSID manager 920 can make changes due to load balancing, type of network traffic, type of device, user privileges, and the like.


The network administration application 930, and the network module 940 can all be similar to the components of the access point 120 of FIG. 8.



FIG. 10 is a block diagram illustrating an exemplary computing device 1000 for use in the system 100 of FIG. 1, according to one embodiment. The computing device 1000 is an exemplary device that is implementable for each of the components of the system 100, including the wireless device 110, the access point 120, and the controller 130. Additionally, the system 100 is merely an example implementation itself, since the system 100 can also be fully or partially implemented with laptop computers, tablet computers, smart cell phones, Internet appliances, and the like.


The computing device 1000, of the present embodiment, includes a memory 1010, a processor 1020, a hard drive 1030, and an I/O port 1040. Each of the components is coupled for electronic communication via a bus 1099. Communication can be digital and/or analog, and use any suitable protocol.


The memory 1010 further comprises network applications 1020 and an operating system 1014. The network applications 1020 can include the modules of network applications, access points, or controllers as illustrated in FIGS. 7-9. Other network applications can include 1012 a web browser, a mobile application, an application that uses networking, a remote application executing locally, a network protocol application, a network management application, a network routing application, or the like.


The operating system 1022 can be one of the Microsoft Windows® family of operating systems (e.g., Windows 95, 98, Me, Windows NT, Windows 2000, Windows XP, Windows XP x64 Edition, Windows Vista, Windows CE, Windows Mobile), Linux, HP-UX, UNIX, Sun OS, Solaris, Mac OS X, Alpha OS, AIX, IRIX32, or IRIX64. Other operating systems may be used. Microsoft Windows is a trademark of Microsoft Corporation.


The processor 1020 can be a network processor (e.g., optimized for IEEE 802.11), a general purpose processor, an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a reduced instruction set controller (RISC) processor, an integrated circuit, or the like. Atheros, Broadcom, and Marvell Semiconductors manufacture processors that are optimized for IEEE 802.11 devices. The processor 1021 can be single core, multiple core, or include more than one processing elements. The processor 820 can be disposed on silicon or any other suitable material. The processor 820 can receive and execute instructions and data stored in the memory 810 or the hard drive 1030


The storage drive 1030 can be any non-volatile type of storage such as a magnetic disc, EEPROM, Flash, or the like. The storage drive 1030 stores code and data for applications.


The I/O port 1040 further comprises a user interface 1042 and a network interface 844. The user interface 1042 can output to a display device and receive input from, for example, a keyboard. The network interface 1044 connects to a medium such as Ethernet or Wi-Fi for data input and output.


Many of the functionalities described herein can be implemented with computer software, computer hardware, or a combination.


Computer software products (e.g., non-transitory computer products storing source code) may be written in any of various suitable programming languages, such as C, C++, C#, Java, JavaScript, PHP, Python, Perl, Ruby, and AJAX. The computer software product may be an independent application with data input and data display modules. Alternatively, the computer software products may be classes that are instantiated as distributed objects. The computer software products may also be component software such as Java Beans (from Sun Microsystems) or Enterprise Java Beans (EJB from Sun Microsystems).


Furthermore, the computer that is running the previously mentioned computer software may be connected to a network and may interface to other computers using this network. The network may be on an intranet or the Internet, among others. The network may be a wired network (e.g., using copper), telephone network, packet network, an optical network (e.g., using optical fiber), or a wireless network, or any combination of these. For example, data and other information may be passed between the computer and components (or steps) of a system of the invention using a wireless network using a protocol such as Wi-Fi (IEEE standards 802.11, 802.11a, 802.11b, 802.11e, 802.11g, 802.11i, and 802.11n, just to name a few examples). For example, signals from a computer may be transferred, at least in part, wirelessly to components or other computers.


In an embodiment, with a Web browser executing on a computer workstation system, a user accesses a system on the World Wide Web (WWW) through a network such as the Internet. The Web browser is used to download web pages or other content in various formats including HTML, XML, text, PDF, and postscript, and may be used to upload information to other parts of the system. The Web browser may use uniform resource identifiers (URLs) to identify resources on the Web and hypertext transfer protocol (HTTP) in transferring files on the Web.


This description of the invention has been presented for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form described, and many modifications and variations are possible in light of the teaching above. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications. This description will enable others skilled in the art to best utilize and practice the invention in various embodiments and with various modifications as are suited to a particular use. The scope of the invention is defined by the following claims.

Claims
  • 1. A computer-implemented method for controlling uplink medium access of stations connected to a wireless network, comprising: detecting a station with a specific user attempting to associate with an access point;determining a level of uplink access for the station from a network perspective, based on the specific user;selecting a BSSID (Basic Service Set Identifier) for the station with uplink configurations corresponding to the level of uplink access for the specific user;generating a modified beacon frame with selected uplink configurations and the selected BSSID to the station, wherein the selected uplink configurations specify medium access parameters specifically for the station, the generating comprising embedding the uplink configurations in a Quiet Element field of the modified beacon frame, and wherein embedding the uplink configurations in the Quiet Element field comprises determining a field value for at least one of Quiet Count, Quiet Period, Quiet Duration and Quiet Offset in accordance with the level of uplink medium access; andsending the modified beacon frame to the station.
  • 2. The method of claim 1, further comprising: embedding the uplink configurations in at least one of an EDCA (enhanced distributed channel access) Parameter Set field and a ECWmin (exponential form of contention window minimum) field of the modified beacon frame.
  • 3. The method of claim 2, wherein embedding the uplink configurations in the EDCA Parameter Set fields of the beacon comprises: determining a value for at least one of an AIFS (arbitration inter-frame space) field and a ECWmin field in accordance with the desired level of uplink medium access for the specific user.
  • 4. The method of claim 1, wherein the BSSID is unique to the specific user among a plurality of BSSIDs.
  • 5. The method of claim 1, further comprising: receiving the uplink configurations from a controller that communicates with a plurality of access points, and at least one other access point uses the BSSID to communicate with the station, the controller determining which access point to send the uplink configurations.
  • 6. The method of claim 1, further comprising: receiving an upload from a second station; responsive to the upload, sending a beacon frame to the second station, the beacon frame comprising a BSSID that is unique to the second station, and a modified beacon frame that is unique to the second station, the modified beacon frame comprising data associated with unique uplink configurations that are specific to the second station; andreceiving an additional upload from the second station that complies with the uplink configurations of the modified beacon frame.
  • 7. The method of claim 1, wherein the station complies with a wireless protocol without native uplink transmission control.
  • 8. The method of claim 1, wherein the wireless network comprises an IEEE 802.11 type of network.
  • 9. The method of claim 1, further comprising: receiving an unregulated transmission from the station,wherein sending the uplink configurations to the station is responsive to the unregulated transmission exceeding a threshold, the threshold comprising at least one of an amount of bandwidth, an amount of throughput, and a number of media accesses, andwherein receiving the transmission from the station comprises receiving a regulated transmission.
  • 10. The method of claim 1, further comprising: receiving an unregulated transmission from the station,wherein sending the uplink configurations to the station is responsive a dynamic amount of unregulated network traffic exceeding a threshold, andwherein receiving the transmission from the station comprises receiving a regulated transmission.
  • 11. The method of claim 1, wherein the modified beacon frame comprises a field that determines an amount of time the station waits before accessing the wireless network.
  • 12. The method of claim 1, wherein the modified beacon frame comprises a field that specifies an amount of slots the station waits until accessing the wireless network.
  • 13. The method of claim 12, wherein the field also comprises a field that causes the station to wait a random number of slots in addition to the specified number of slots before accessing the wireless network.
  • 14. The method of claim 1, wherein sending the beacon frame comprises sending the modified beacon frame by an access point, the method further comprises: receiving commands from a controller that manages a plurality of access points including the first access point and a second access point; andhanding-off the station from the first access point to the second access point, wherein the second access point sends beacons using the same BSSID, and wherein the station continues to comply with the uplink configurations after the hand-off.
  • 15. The method of claim 1, further comprising: determining that the station is a guest; andsetting the media access based on the station being a guest, the media access for a guest having a different quality of service than a non-guest based on the uplink configurations.
  • 16. A non-transitory computer-readable medium storing instructions that, when executed by a processor, perform a method for controlling uplink device access to a wireless network, the method comprising: detecting a station with a specific user attempting to associate with an access point;determining a level of uplink access for the station from a network perspective, based on the specific user;selecting a BSSID (Basic Service Set Identifier) for the station with uplink configurations corresponding to the level of uplink access for the specific user;generating a modified beacon frame with selected uplink configurations and the selected BSSID to the station, wherein the selected uplink configurations specify medium access parameters specifically for the station, the generating comprising embedding the uplink configurations in a Quiet Element field of the modified beacon frame, and wherein embedding the uplink configurations in the Quiet Element field comprises determining a field value for at least one of Quiet Count, Quiet Period, Quiet Duration and Quiet Offset in accordance with the level of uplink medium access; andsending the modified beacon frame to the station.
  • 17. An access point device to control uplink device access to a wireless network, the access point comprising: a processor; anda memory storing source code executed by the processor, storing: a first module to detect a station with a specific user attempting to associate with an access point;a second module to determine a level of uplink access for the station from a network perspective, based on the specific user;a third module to select a BSSID (Basic Service Set Identifier) for the station with uplink configurations corresponding to the level of uplink access for the specific user;a fourth module to generate a modified beacon frame with selected uplink configurations and the selected BSSID to the station, wherein the selected uplink configurations specify medium access parameters specifically for the station, the generating comprising embedding the uplink configurations in a Quiet Element field of the modified beacon frame, and wherein embedding the uplink configurations in the Quiet Element field comprises determining a field value for at least one of Quiet Count, Quiet Period, Quiet Duration and Quiet Offset in accordance with the level of uplink medium access; anda fifth module to send the modified beacon frame to the station.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of priority under 35 U.S.C. 120 as a continuation to co-pending and commonly-assigned U.S. application Ser. No. 13/426,703, filed Mar. 22, 2012, entitled WI-FI VIRTUAL PORT UPLINK MEDIUM ACCESS CONTROL, by Mohan Ram et al., which claims priority as a continuation-in-part to U.S. application Ser. No. 12/913,584 (now U.S. Pat. No. 8,787,309), filed Oct. 27, 2010, entitled SEAMLESS MOBILITY IN WIRELESS NETWORKS, by Vaduvur Bharghavan et al., which claims priority as a continuation to U.S. application Ser. No. 11/715,287 (now U.S. Pat. No. 7,826,426), filed Mar. 7, 2007, entitled SEAMLESS MOBILITY IN WIRELESS NETWORKS, by Vaduvur Bharghavan et al., which claims priority as a continuation of Ser. No. 11/298,864 (now abandoned), filed Dec. 9, 2005, entitled SEAMLESS MOBILITY IN WIRELESS NETWORKS, by Vaduvur Bharghavan et al., which claims priority as a continuation-in-part to U.S. application Ser. No. 11/294,673 (now U.S. Pat. No. 8,160,664), filed Dec. 5, 2005, entitled OMNI-DIRECTIONAL ANTENNA SUPPORTING SIMULTANEOUS TRANSMISSION AND RECEPTION OF MULTIPLE RADIOS WITH NARROW FREQUENCE SEPARATION, by Rajendran Venugopalachary, the contents of each being hereby incorporated by reference in their entirety.

US Referenced Citations (145)
Number Name Date Kind
3956749 Magorian May 1976 A
5038151 Kaminski Aug 1991 A
5125108 Talwar Jun 1992 A
5177788 Schanning et al. Jan 1993 A
5337397 Lebby et al. Aug 1994 A
5519706 Bantz et al. May 1996 A
5884272 Walker et al. Mar 1999 A
5966094 Ward et al. Oct 1999 A
6023621 Jackson et al. Feb 2000 A
6658047 Komulainen et al. Dec 2003 B1
6721334 Ketcham Apr 2004 B1
6728603 Pruzan et al. Apr 2004 B2
6760318 Bims Jul 2004 B1
6788658 Bims Sep 2004 B1
6839038 Weinstein Jan 2005 B2
6877043 Mallory et al. Apr 2005 B2
6894649 Ostervall May 2005 B2
6933909 Theobold Aug 2005 B2
6950629 Nagy Sep 2005 B2
6954177 Channabassapa et al. Oct 2005 B2
6978158 Ghavami Dec 2005 B2
6999802 Kim Feb 2006 B2
7057566 Theobold Jun 2006 B2
7171215 Khouaja et al. Jan 2007 B2
7194008 Chu et al. Mar 2007 B2
7197308 Singhal et al. Mar 2007 B2
7277728 Kauhanen Oct 2007 B1
7319685 Kim et al. Jan 2008 B2
7333455 Bolt et al. Feb 2008 B1
7336670 Calhoun et al. Feb 2008 B1
7359362 King et al. Apr 2008 B2
7400604 Lee et al. Jul 2008 B2
7403506 Lee et al. Jul 2008 B2
7406319 Kostic et al. Jul 2008 B2
7420942 Wang Sep 2008 B2
7426388 Wright et al. Sep 2008 B1
7430397 Suda et al. Sep 2008 B2
7433722 Sakamoto et al. Oct 2008 B2
7444425 Lehmann, Jr. et al. Oct 2008 B2
7466981 Abdelmahid et al. Dec 2008 B1
7499673 Saliga et al. Mar 2009 B2
7515909 Jain et al. Apr 2009 B2
7555287 Heinonen et al. Jun 2009 B1
7630402 Un et al. Dec 2009 B2
7630403 Ho et al. Dec 2009 B2
7693513 Chou Apr 2010 B2
7826426 Bharghavan et al. Nov 2010 B1
7843910 Loughran et al. Nov 2010 B2
7881271 Oishi Feb 2011 B2
8027637 Bims Sep 2011 B1
8090374 Rezvani et al. Jan 2012 B2
8121057 Botha Feb 2012 B1
8472359 Bharghavan et al. Jun 2013 B2
8787309 Bharghavan et al. Jul 2014 B1
20020022483 Thompson et al. Feb 2002 A1
20020060995 Cervello et al. May 2002 A1
20020086640 Belcher et al. Jul 2002 A1
20020091846 Garcia Jul 2002 A1
20020112008 Christenson et al. Aug 2002 A1
20020147031 Hood Oct 2002 A1
20020181629 Shibata Dec 2002 A1
20030162546 Jordan Aug 2003 A1
20030198305 Taylor et al. Oct 2003 A1
20030199247 Striemer Oct 2003 A1
20030206532 Shpak Nov 2003 A1
20030206535 Shpak Nov 2003 A1
20030207697 Shpak Nov 2003 A1
20030207698 Shpak Nov 2003 A1
20030207699 Shpak Nov 2003 A1
20030221006 Kuan Nov 2003 A1
20030236103 Tamaki et al. Dec 2003 A1
20040051668 Chang Mar 2004 A1
20040063455 Eran et al. Apr 2004 A1
20040121770 Tigerstedt et al. Jun 2004 A1
20040141617 Volpano Jul 2004 A1
20040156399 Eran Aug 2004 A1
20040183726 Theobald Sep 2004 A1
20040185904 Yamakita Sep 2004 A1
20040235453 Chen et al. Nov 2004 A1
20050041688 Bernhard et al. Feb 2005 A1
20050054370 Shpak Mar 2005 A1
20050102529 Buddhikot et al. May 2005 A1
20050111405 Kanterakis May 2005 A1
20050122919 Touag Jun 2005 A1
20050135321 Sharony Jun 2005 A1
20050152314 Sun et al. Jul 2005 A1
20050153713 Sharony Jul 2005 A1
20050156794 Theobald et al. Jul 2005 A1
20050156799 Theobald Jul 2005 A1
20050195110 Lin et al. Sep 2005 A1
20050219143 Schadler et al. Oct 2005 A1
20050220048 Lee et al. Oct 2005 A1
20050238054 Sharma Oct 2005 A1
20050261970 Vucina et al. Nov 2005 A1
20060002331 Bhagwat et al. Jan 2006 A1
20060025127 Cromer et al. Feb 2006 A1
20060049987 Herrick Mar 2006 A1
20060056443 Tao et al. Mar 2006 A1
20060098613 Kish et al. May 2006 A1
20060111112 Maveddat May 2006 A1
20060120339 Akiyama Jun 2006 A1
20060132360 Caimi et al. Jun 2006 A1
20060159092 Boers Jul 2006 A1
20060203819 Farinacci et al. Sep 2006 A1
20060215691 Kobayashi et al. Sep 2006 A1
20060221993 Liao et al. Oct 2006 A1
20060281500 Huang et al. Dec 2006 A1
20070014267 Lam et al. Jan 2007 A1
20070026807 Kish Feb 2007 A1
20070117514 Gainey et al. May 2007 A1
20070121542 Lohr May 2007 A1
20070165610 Tsang et al. Jul 2007 A1
20070195725 Iino et al. Aug 2007 A1
20070201468 Jokela Aug 2007 A1
20070213071 Hwang Sep 2007 A1
20070218875 Calhoun et al. Sep 2007 A1
20080014956 Balasubramanian Jan 2008 A1
20080102835 Zhao et al. May 2008 A1
20080112373 Shpak May 2008 A1
20080153497 Kalhan Jun 2008 A1
20080159535 Kim Jul 2008 A1
20080165866 Teo et al. Jul 2008 A1
20080167093 Nagano et al. Jul 2008 A1
20080212535 Karaoguz et al. Sep 2008 A1
20080242305 Kahlert et al. Oct 2008 A1
20080287130 Laroia et al. Nov 2008 A1
20090022127 Traynor et al. Jan 2009 A1
20090023434 Trainor et al. Jan 2009 A1
20090061873 Bao et al. Mar 2009 A1
20090061879 Gallagher et al. Mar 2009 A9
20090111472 Promenzio Apr 2009 A1
20090235354 Gray et al. Sep 2009 A1
20090252165 Zhang et al. Oct 2009 A1
20100080151 Proctor et al. Apr 2010 A1
20110040969 Yao et al. Feb 2011 A1
20110188484 Reznik et al. Aug 2011 A1
20110305217 Seok Dec 2011 A1
20120307792 Ram et al. Dec 2012 A1
20120314696 Liu Dec 2012 A1
20120317619 Dattagupta et al. Dec 2012 A1
20130148609 Ram et al. Jun 2013 A1
20130188539 Han et al. Jul 2013 A1
20130201918 Hirakawa et al. Aug 2013 A1
20140112322 Ram et al. Apr 2014 A1
20140126466 Hamdi et al. May 2014 A1
Foreign Referenced Citations (2)
Number Date Country
2005311580 Nov 2005 JP
2006229972 Aug 2006 JP
Non-Patent Literature Citations (38)
Entry
Amir. “Fast Handoff for Seamless Wireless Mesh Networks.” MobiSys '06, Jun. 19-22, 2006, pp. 83-95, ACM, Uppsala, Sweden.
Business Wire. “Meru Networks Delivers Industry's Only Zero-Loss Mobility Across WLAN Access Points and IP Subnets.” Jun. 21, 2004, pp. 1-2.
Chen et al. “A Seamless Handoff Mechanism for OHCP-Based IEEE 802.11 WLANS.” IEEE Communications Letters, Aug. 2007, pp. 665-667, vol. 1, No. 8.
Cheung et al. “Network Configurations for Seamless Support of COMA Soft Handoffs Between Cell Clusters.” IEEE Journal on Selected Areas in Communications, Sep. 1997, pp. 1276-1278, vol. 15, No. 7.
Chou et al. “Intelligent Agent Over WLAN With Seamless Handover and Load Balancing.” 2006 International Conference on Communication Technology, Nov. 27-Nov. 30, 2006, pp. 1-7, IEEE. (Abstract).
Chui et al. “An Access Point Coordination System for Improved VoIP/WLAN Handover Performance.” IEEE, 2006, pp. 501-505.
Fan et al. “Managing Heterogeneous Access Networks.” 32nd IEEE Conference on Local Computer Networks, 2007, pp. 651-658, IEEE 2007, pp. 651-658.
Finneran. “Can WLAN switches support voice? Today's controllers offer key security and QoS capabilities, but as always, the devil's in the details.” Business Communications Review, Oct. 2006, pp. 42-47.
Habib et al. “Multi-antenna techniques for OFDM based WLAN.” Proceedings of First International Conference on Next-Generation Wireless Systems, Jan. 2006, pp. 186-190.
Huang et al. “Incorporating AP Selection and Call Admission Control for Seamless Handoff Procedure.” Proceedings of the International Conference on Computer and Communication Engineering 2008, pp. 823-826.
Huang et al. “SAP: Seamless Authentication Protocol for Vertical Handoff in Heterogeneous Wireless Networks.” Third International Conference in Heterogeneous Wired/Wireless Networks, Aug. 7-9, 2006, pp. 1-10, Waterloo, ON, CA.
Hur et al. “A Distributed-Request-Based Diffserv CAC for Seamless Fast-Handoff in Mobile Internet.” J. Sole-Pareta et al. (Eds.): Q of IS 2004: International Workshop on Quality of Future Internet Services, LNCS 3266, pp. 184-193, 2004.
IEEE Std 802. Nov. 1997 Information Technology—telecommunications and Information exchange between systems—Local and Metropolitan Area Networks—specific Requirements—part 11: Wireless Lan Medium Access Control (MAC) and Physical Layer (PHY) Specifications, IEEE Std 802.11-1997, vol., No., pp. i-445, Nov. 18, 1997.
IEEE. “Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications.” IEEE Std. 802.11, 1999 Edition (R2003), 2003, vol. No. pp. i-513.
Jang et al. “Mobility Support Algorithm Based on Wireless 802.11 b LAN for Fast Handover.” 5th International Conference, PDCAT 2004, Dec. 8-10, 2004, pp. 715-718, Springer Verlag. (Abstract).
Zhou et al. “A Seamless Handoff Scheme for Mobile IP.” 2006 IEEE 63rd Vehicular Technology Conference, VTC 2006-Spring, May 7-Jul. 10, 2006, pp. 927-931, IEEE. (Abstract).
Kist. “Instant Handoffs for Wireless Infrastructure Meshed Networks.” Proceedings of the 2008 Australasian Telecommunication Networks and Applications Conference, 2008, pp. 288-293.
Kitahara et al. “A base station adaptive antenna for downlink transmission in a OS-COMA system.” IEEE 51 st Vehicular Technology Conference Proceedings, 2000 (abstract).
Liao et al. “Practical Schemes for Smooth MAC Layer Handoff in 802.11 Wireless Networks.” Proceedings of the 2006 International Symposium on a World of Wireless, Mobile and Multimedia Networks. IEEE, 2006, pp. 1-10.
LV. “Intelligent Seamless Vertical Handoff Algorithm for the Next Generation Wireless Networks.” Mobilware '08, Feb. 12-15, 2008, pp. 1-10, Innsbruck, Austria.
Mahler et al. “Design and optimisation of an antenna array for WiMAX base stations.” IEEE/ACES International Conference on Wireless Communications and Applied Computational Electromagnetics, 2005 (abstract).
Mannion. “Foundry Networks enters WLAN management fray—Bets on integration with wired infrastructure, market timing to take on Cisco.” Electronic Engineering Times, Sep. 8, 2003, p. 32, No. 1286.
Manodham. “A Seamless Handoff Scheme with New AP Module for Wireless LANs Support VoIP.” 2006. International Symposium on Applications and the Internet, Saint 2006, Jan. 23-27, 2006, pp. 253-258, IEEE. (Abstract).
Manodham et al. “A Seamless Handoff Scheme with New AP Module for Wireless LANs support VoIP.” Proceedings of the 2005 Symposium on Applications and the Internet, 2006, pp. 1-6, IEEE.
Marsh. “Power and wireless options extend Ethernet's reach: Ethernet's power-delivery and wireless abilities offer new application potential that hugely extends the reach of the IEEE's 802.X series of standards.” EDN, Nov. 11, 2004, p. 67, Reed Business Information.
Miaris et al. “On the base stations antenna system design for mobile communications.” Electrical Engineering, 2006, vol. 88, pp. 157-163.
Miura et al. “Study of array pattern tuning method using hybrid genetic algorithms for figure-8 satellite's earth station antenna.” Asia-Pacific Microwave Conference Proceedings, 2000 (abstract).
Murray et al. “Intelligent Access and Mobility Management in Heterogeneous Wireless Networks Using Policy.” ACM First International Workshop on Information and Communication Technologies, 2003, pp. 181-186.
Ponnapalli et al. “Design and packaging of antennas for wireless systems.” Proceedings of Electrical Performance of Electrical Packaging, 1995 (abstract).
Rist et al. “Wireless LANS—Look, Ma. . . No Wires—Wireless networking products prove they are finally ready for prime time.” Internetweek, Mar. 20, 2000, p. 41, No. 805, CMP Media, Inc.
Sarolic. “Base station antenna near-field radiation pattern distortion analysis.” Transactions on Engineering Sciences, 2003, pp. 1-10, vol. 41, WIT Press.
Sattari et al. “Seamless Handover Between WLAN and UMTS.” 2004 IEEE 59th Vehicular Technology Conference, VTC2004-Spring: Towards a Global Wireless World, May 17-19, 2004, pp. 3035-3038, IEEE. (Abstract).
Thomsen. “Development Platform for Dynamic Bandwidth Allocation Schemes in Future MPCP Enabled Ethernet Passive Optical Network (EPON).” WSEAS Transactions on Communications, Apr. 5, 2006, pp. 92-98, WSEAS. (Abstract).
Wei et al. “Seamless Handoff Support in Wireless Mesh Networks.” 2006, pp. 1-8, IEEE.
Xhafa et al. “Seamless Handover in Building Using HVAC Ducts: A New System Architecture.” IEEE Global Telecommunications Conference GLOBECOM'03, Dec. 1-5, 2003, pp. 3093-3097, IEEE. (Abstract).
Yaakob et al. “An Integration of Mobile Motion Prediction with Dedicated Solicitation Message for Seamless Handoff Provisioning in High Speed Wireless Environment.” 2008 International Conference on Electronic Design, Dec. 1-3, 2008, Pernang, Malaysia, pp. 1-5.
Yamagata et al. “Seamless Handover for Hotspot Network Using Adaptive Flow Control Method.” 2005 Asia-Pacific Conference on Communications, Oct. 3-5, 2005, pp. 502-506, IEEE. (Abstract).
Zhou et al. A Seamless Handoff Scheme for Mobile IP. IEEE Vehicular Technology Conference, 2006, pp. 927-931, vol. 2.
Related Publications (1)
Number Date Country
20160088523 A1 Mar 2016 US
Continuations (3)
Number Date Country
Parent 13426703 Mar 2012 US
Child 14864802 US
Parent 11715287 Mar 2007 US
Child 12913584 US
Parent 11298864 Dec 2005 US
Child 11715287 US
Continuation in Parts (2)
Number Date Country
Parent 12913584 Oct 2010 US
Child 13426703 US
Parent 11294673 Dec 2005 US
Child 11298864 US