This disclosure relates to an allocation of wireless channels for preferred stations.
Currently, wireless radios assign transmission opportunities at a single time to a single device. An access point might have traffic destined for several stations, but the access point is generally only able to deliver traffic to a single station at a given time. Similarly, if a plurality of stations have pending transmissions, the stations must compete to seize the air, and only one station is able to transmit a communication to an access point at a given time.
Moreover, with an increase in the number and types of stations served by an access point, the ability to offer differentiated services to the stations has become a difficult task. Further, legacy stations may not be able to use the entirety of a frequency spectrum that is available for use by an access point, and the access point might be forced to leave some portion of the frequency spectrum idle while the legacy stations are communicating. Therefore, it is desirable to improve upon methods and systems for allocating transmission opportunities amongst a plurality of stations.
Like reference numbers and designations in the various drawings indicate like elements.
Methods, systems, and computer readable media may be operable to facilitate an allocation of one or more channels or sub-bands to one or more preferred stations. An access point may be configured to allocate the use of one or more sub-bands of a frequency spectrum to one or more stations. One or more sub-bands may be assigned to one or more preferred stations, thereby creating a plurality of virtual networks provided by the access point. The virtual networks provided by the access point may support different authentication and encryption options. The access point may simultaneously communicate with a plurality of stations by simultaneously transmitting and/or receiving communications over the different sub-bands.
An embodiment of the invention described herein may include a method comprising: (a) receiving a wireless communication at an access point, wherein the wireless communication is received from a station; (b) retrieving a station identifier from the wireless communication; and (c) if the retrieved station identifier matches an identifier associated with a sub-band of a frequency spectrum over which the access point is configured to communicate, outputting a communication to the station, wherein the communication instructs the station to communicate with the access point over the sub-band associated with the station identifier.
According to an embodiment of the invention, the retrieved station identifier comprises a service type identifier.
According to an embodiment of the invention, the retrieved station identifier comprises a device type identifier.
According to an embodiment of the invention, the method described herein further comprises, if the retrieved station identifier does not match an identifier associated with a sub-band of the frequency spectrum over which the access point is configured to communicate, selecting an available sub-band of the frequency spectrum and outputting a communication to the station, wherein the communication instructs the station to communicate with the access point over the selected sub-band.
According to an embodiment of the invention, the method described herein further comprises: (a) if the retrieved station identifier indicates that the station cannot accommodate sub-band communication; (b) identifying time intervals wherein said station can communicate using the complete frequency spectrum; and (c) instructing any stations capable of sub-band communication to refrain from communication that might interfere with said station.
According to an embodiment of the invention, the communication comprises configuration information associated with the sub-band associated with the station identifier.
According to an embodiment of the invention, the frequency spectrum over which the access point is configured to communicate is partitioned into at least two sub-bands.
According to an embodiment of the invention, the access point is configured to simultaneously communicate with one or more stations over each of the at least two sub-bands.
According to an embodiment of the invention, the method described herein further comprises: (a) determining that the retrieved station identifier is associated with a device category, wherein the device category is designated for communicating over a specific sub-band of the frequency spectrum; and (b) wherein the communication instructs the station to communicate with the access point over the specific sub-band.
An embodiment of the invention described herein may include an access point comprising: (a) an interface configured to be used to receive a wireless communication from a station; and (b) one or more modules configured to: (i) retrieve a station identifier from the wireless communication; and (ii) if the retrieved station identifier matches an identifier associated with a sub-band of a frequency spectrum over which the access point is configured to communicate, output a communication to the station, wherein the communication instructs the station to communicate with the access point over the sub-band associated with the station identifier.
According to an embodiment of the invention, the retrieved station identifier comprises a service type identifier.
According to an embodiment of the invention, the retrieved station identifier comprises a device type identifier.
According to an embodiment of the invention, the frequency spectrum over which the access point is configured to communicate is partitioned into at least two sub-bands, and the access point is configured to simultaneously communicate with one or more stations over each of the at least two sub-bands.
An embodiment of the invention described herein may include one or more non-transitory computer readable media having instructions operable to cause one or more processors to perform the operations comprising: (a) receiving a wireless communication at an access point, wherein the wireless communication is received from a station; (b) retrieving a station identifier from the wireless communication; and (c) if the retrieved station identifier matches an identifier associated with a sub-band of a frequency spectrum over which the access point is configured to communicate, outputting a communication to the station, wherein the communication instructs the station to communicate with the access point over the sub-band associated with the station identifier.
According to an embodiment of the invention, the retrieved station identifier comprises a service type identifier.
According to an embodiment of the invention, the retrieved station identifier comprises a device type identifier.
According to an embodiment of the invention, wherein the instructions are further operable to cause one or more processors to perform the operations comprising, if the retrieved station identifier does not match an identifier associated with a sub-band of the frequency spectrum over which the access point is configured to communicate, selecting an available sub-band of the frequency spectrum and outputting a communication to the station, wherein the communication instructs the station to communicate with the access point over the selected sub-band.
According to an embodiment of the invention, the communication comprises configuration information associated with the sub-band associated with the station identifier.
According to an embodiment of the invention, the frequency spectrum over which the access point is configured to communicate is partitioned into at least two sub-bands.
According to an embodiment of the invention, the access point is configured to simultaneously communicate with one or more stations over each of the at least two sub-bands.
In embodiments, stations 110 may include a wide variety of devices such as televisions, mobile devices, tablets, set-top boxes, computers, thermostats or other sensors, and any other device that is capable of utilizing a video, data, telephony, or other service.
In embodiments, an access point 105 may route communications between stations 110 and a wide area network (WAN) 115 via a subscriber network. The subscriber network may include various networks such as coaxial cable, optical fiber, twisted pair network, wireless networks including 4G and LTE, and others.
In embodiments, an access point 105 may transmit and receive communications over one or more blocks of predefined frequency spectrum (e.g., 2.4 GHz, 5 GHz, etc.), and the access point 105 may communicate with a plurality of stations 110 simultaneously by communicating with the stations 110 over a plurality of sub-bands (e.g., channels or resource units within defined channels) of the frequency spectrum. For example, the access point 105 may pass a first communication to a first station over a first portion of the frequency spectrum (e.g., a first channel), and the access point 105 may simultaneously pass a second communication to a second station over a second portion of the frequency spectrum (e.g., a collection of resource units within a second channel). It should be understood that each of the sub-bands of a frequency spectrum may have the same, or may have different frequency bandwidths.
In embodiments, one or more sub-bands (e.g., channels or resource units within a defined channel) of a frequency spectrum of an access point 105 may be assigned to one or more preferred stations 110. One or more sub-bands may be allocated to preferred stations 110, for example, by a technician, subscriber, or other entity, and/or the allocation may be made according to a predefined set of rules. A sub-band may be assigned to one or more specific stations 110, one or more specific uses, or one or more specific device types. For example, an access point 105 may be configured to allow specific devices, certain uses (e.g., service type), device types, or other identifiers of stations 110 to communicate with the access point 105 over a specific sub-band.
In embodiments, when a station 110 attempts to connect to an access point 105, the access point 105 may retrieve an identifier from a communication (e.g., a wireless communication such as an 802.11 packet) received from the station 110. The identifier may include an identifier specific to the station 110 (e.g., media access control (MAC) address), one or more configuration parameters associated with the station 110, a use or service type associated with the received communication, a device type identifier associated with the station 110, and others. The access point 105 may compare the retrieved identifier to identifiers that are designated for using a specific sub-band. If the retrieved identifier matches an identifier designated for using a specific sub-band, the access point 105 may output a communication to the station 110, wherein the communication instructs the station 110 to output upstream communications, and/or receive downstream communications, over the specific sub-band.
In embodiments, the access point 105 may designate one or more device categories for communicating over one or more sub-bands. The access point 105 may create a device category based upon device type, service type, or other parameter associated with a category of devices. For example, the access point 105 may create a device category that includes IoT devices, a device category that includes video streaming devices, and/or other categories of devices, and the access point 105 may designate each device category for communicating over a specific sub-band. The access point 105 may associate each device category with one or more certain device identifiers (e.g., device type identifiers, service type identifiers, etc.) that are to be added to the device category. When a station 110 attempts to connect to the access point 105, the access point 105 may retrieve an identifier from the communication, and using the identifier, the access point 105 may associate the station 110 with a device category. For example, the retrieved identifier may be a device type, service type, or other identifier, and the access point 105 may associate the station 110 with a device category that is associated with the retrieved identifier. When the station 110 is associated with a device category, the station 110 may be configured to communicate over the sub-band designated for use by the device category. A station 110 may be generically capable of communicating across a normal wireless band, or the station 110 may be advantageously designed to operate within an expected sub-band assignment. The frequency bandwidth expectations of a station 110 may influence the station identifiers transmitted with its communications.
In embodiments, when a determination is made to instruct a station 110 to communicate over a certain sub-band, the access point 105 may output a communication to the station 110, wherein the communication includes one or more configuration parameters associated with the certain sub-band. For example, configuration parameters unique to a certain sub-band may include various authentication options, encryption options, and others.
In embodiments, the access point 105 may transmit communications to, and receive communications from one or more stations (e.g., stations 110 of
In embodiments, one or more sub-bands (e.g., channels) of a frequency spectrum of an access point 105 may be assigned to one or more preferred stations 110. The channel allocation module 410 may manage and store allocations of one or more sub-bands to one or more preferred stations 110. For example, the channel allocation module 410 may be configured with device, use (e.g., service type), device type, or other identifiers of stations 110 that are to communicate with the access point 105 over a specific sub-band.
In embodiments, when a station 110 attempts to connect to the access point 105, the station recognition module 415 may retrieve an identifier from a communication (e.g., a wireless communication such as an 802.11 packet) received from the station 110. The identifier may include an identifier specific to the station 110 (e.g., media access control (MAC) address), one or more configuration parameters associated with the station 110, a use or service type associated with the received communication, a device type identifier associated with the station 110, and others. The station recognition module 415 may compare the retrieved identifier to identifiers that are designated for using a specific sub-band. If the retrieved identifier matches an identifier designated for using a specific sub-band, the station recognition module 415 may output a communication to the station 110, wherein the communication instructs the station 110 to output upstream communications, and/or receive downstream communications, over the specific sub-band.
In embodiments, when a determination is made to instruct a station 110 to communicate over a certain sub-band, the station recognition module 415 may output a communication to the station 110, wherein the communication includes one or more configuration parameters associated with the certain sub-band. For example, configuration parameters unique to a certain sub-band may include various authentication options, encryption options, and others.
At 510, one or more device identifiers may be determined for association with a sub-band, wherein the determination of the one or more device identifiers is based upon the sub-band allocation parameters. The determination of the one or more device identifiers to be associated with the sub-band may be made, for example, by the access point 105 (e.g., at a channel allocation module 410). In embodiments, the channel allocation module 410 may select an identifier associated with a specific station or one or more identifiers associated with a group of stations to be associated with a specific sub-band. For example, the one or more identifiers may be selected such that a specific station or specific group of stations is designated for communicating over the specific sub-band. In embodiments, the determination may be made that a device category is to be associated with a specific sub-band. For example, the channel allocation module 410 may select an identifier associated with a device category (e.g., device type identifier, service type identifier, etc.), wherein devices falling within the device category (e.g., devices having an identifier that matches the selected identifier) are designated for communicating with the access point 105 over the specific sub-band. A station 110 may be generically capable of communicating across a normal wireless band, or the station 110 may be advantageously designed to operate within an expected sub-band assignment. The frequency bandwidth expectations of a station 110 may influence the station identifiers transmitted with its communications.
At 515, a bandwidth for the sub-band may be determined based on the sub-band allocation parameters. The bandwidth for the sub-band may be determined, for example, by the access point 105 (e.g., at a channel allocation module 410). In embodiments, the bandwidth for the sub-band may be determined based upon the station(s) designated for communicating over the sub-band and may be determined according to the sub-band allocation parameters. Sub-band allocation parameters may dictate that one or more certain stations are to be designated for communicating over a narrower sub-band than a sub-band over which one or more other stations are designated for communicating. For example, a sub-band allocated for delivery of communications between the access point 105 and one or more IoT devices may be given a narrower bandwidth than a sub-band allocated for delivery of communications between the access point 105 and one or more video devices.
At 520, a determination may be made whether one or more other sub-bands are to be associated with one or more device identifiers. The determination whether one or more other sub-bands are to be associated with one or more device identifiers may be made, for example, by the access point 105 (e.g., at a channel allocation module 410). In embodiments, the determination whether one or more other sub-bands are to be associated with one or more device identifiers may be based upon the one or more sub-band allocation parameters, a user input of a decision to associate another sub-band with one or more identifiers, or other factors.
If, at 520, the determination is made to associate another sub-band with one or more other identifiers, the process 500 may return to 510 where one or more device identifiers may be selected for association with another sub-band.
If, at 520, the determination is made not to associate another sub-band with one or more other identifiers, the process 500 may proceed to 525. At 525, the allocation of sub-bands to the device identifiers may be saved. The allocation of sub-bands to the device identifiers may be saved, for example, at the access point 105 (e.g., at the channel allocation module 410).
At 610, the station from which the association request was received may be identified. The station may be identified, for example, by the access point 105 (e.g., by a station recognition module 415). In embodiments, the station recognition module 415 may identify the station by retrieving an identifier carried by a communication received from the station (e.g., the association request). For example, the identifier may include an identifier specific to the station (e.g., media access control (MAC) address), one or more configuration parameters associated with the station, a use or service type associated with the received communication, a device type identifier associated with the station, and others.
At 615, a determination may be made whether the station from which the association request was received is designated for using a certain sub-band (e.g., channel). The determination whether the station is designated for using a certain sub-band may be made, for example, by the access point 105 (e.g., by a station recognition module 415). In embodiments, the station recognition module 415 may compare the retrieved identifier associated with the station to one or more identifiers that are designated for using a certain sub-band. For example, associations between device identifiers and sub-bands may be stored at the access device 105 (e.g., at a channel allocation module 410 of
If, at 615, the determination is made that the station is designated for using a certain sub-band, the process 600 may proceed to 620. At 620, the station may be instructed to switch to the certain sub-band (e.g., channel). An instruction to switch to the certain sub-band may be output to the station, for example, from the access point 105 (e.g., from the station recognition module 415). In embodiments, the instruction may identify the specific sub-band over which the station is designated for communicating with the access point 105.
If, at 615, the determination is made that the station is not designated for using a certain sub-band, the process 600 may proceed to 625. At 625, an available sub-band (e.g., channel) may be selected for use by the station. The available sub-band may be selected, for example, by the access point 105 (e.g., by a station recognition module 415). In embodiments, the selected sub-band may be a sub-band that is designated for unknown stations or stations that otherwise have not been designated for using a specific sub-band. In other embodiments, the station may be identified as one not supporting sub-band assignments. Stations not capable of supporting sub-band assignments may be directed to use channel assignments designated for such stations (e.g., legacy stations).
At 630, the station may be instructed to switch to the selected sub-band (e.g., channel). An instruction to switch to the selected sub-band may be output to the station, for example, from the access point 105 (e.g., from the station recognition module 415). In embodiments, the instruction may identify the selected sub-band over which the station is designated for communicating with the access point 105.
At 635, configuration information associated with the specific/selected sub-band may be output to the station. Configuration information associated with the sub-band may be output to the station (e.g., station 110 of
At 640, contention window settings may be updated according to the designation of the station for communication over the specific/selected sub-band. The contention window settings may be updated, for example, at the access point 105 (e.g., at a channel allocation module 410). In embodiments, the contention window settings may be updated to schedule one or more transmission opportunities for the station to communicate over the specific/selected sub-band.
The memory 720 can store information within the hardware configuration 700. In one implementation, the memory 720 can be a computer-readable medium. In one implementation, the memory 720 can be a volatile memory unit. In another implementation, the memory 720 can be a non-volatile memory unit.
In some implementations, the storage device 730 can be capable of providing mass storage for the hardware configuration 700. In one implementation, the storage device 730 can be a computer-readable medium. In various different implementations, the storage device 730 can, for example, include a hard disk device, an optical disk device, flash memory or some other large capacity storage device. In other implementations, the storage device 730 can be a device external to the hardware configuration 700.
The input/output device 740 provides input/output operations for the hardware configuration 700. In embodiments, the input/output device 740 can include one or more of a network interface device (e.g., an Ethernet card), a serial communication device (e.g., an RS-232 port), one or more universal serial bus (USB) interfaces (e.g., a USB 2.0 port) and/or a wireless interface device (e.g., an 802.11 card). In embodiments, the input/output device can include driver devices configured to send communications to, and receive communications from one or more stations 110 of
Those skilled in the art will appreciate that the invention improves upon methods and apparatuses for allocating communication mediums to stations. Methods, systems, and computer readable media may be operable to facilitate an allocation of one or more channels to one or more preferred stations. An access point may be configured to allocate the use of one or more sub-bands of a frequency spectrum to one or more stations. One or more sub-bands may be assigned to one or more preferred stations, thereby creating a plurality of virtual networks provided by the access point. The virtual networks provided by the access point may support different authentication and encryption options. The access point may simultaneously communicate with a plurality of stations by simultaneously transmitting and/or receiving communications over the different sub-bands.
The subject matter of this disclosure, and components thereof, can be realized by instructions that upon execution cause one or more processing devices to carry out the processes and functions described above. Such instructions can, for example, comprise interpreted instructions, such as script instructions, e.g., JavaScript or ECMAScript instructions, or executable code, or other instructions stored in a computer readable medium.
Implementations of the subject matter and the functional operations described in this specification can be provided in digital electronic circuitry, or in computer software, firmware, or hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Embodiments of the subject matter described in this specification can be implemented as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a tangible program carrier for execution by, or to control the operation of, data processing apparatus.
A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
The processes and logic flows described in this specification are performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output thereby tying the process to a particular machine (e.g., a machine programmed to perform the processes described herein). The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).
Computer readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices (e.g., EPROM, EEPROM, and flash memory devices); magnetic disks (e.g., internal hard disks or removable disks); magneto optical disks; and CD ROM and DVD ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.
While this specification contains many specific implementation details, these should not be construed as limitations on the scope of any invention or of what may be claimed, but rather as descriptions of features that may be specific to particular embodiments of particular inventions. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a subcombination or variation of a sub combination.
Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.
Particular embodiments of the subject matter described in this specification have been described. Other embodiments are within the scope of the following claims. For example, the actions recited in the claims can be performed in a different order and still achieve desirable results, unless expressly noted otherwise. As one example, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some implementations, multitasking and parallel processing may be advantageous.
Number | Name | Date | Kind |
---|---|---|---|
5933420 | Jaszewski | Aug 1999 | A |
7634581 | Etoh | Dec 2009 | B2 |
9788348 | Smith | Oct 2017 | B2 |
10172160 | Wu | Jan 2019 | B2 |
10425893 | Ghosh | Sep 2019 | B2 |
20030145092 | Funato | Jul 2003 | A1 |
20050154774 | Giaffreda | Jul 2005 | A1 |
20060002355 | Baek | Jan 2006 | A1 |
20070140190 | Rensburg et al. | Jun 2007 | A1 |
20080013482 | Kurokawa | Jan 2008 | A1 |
20090323646 | Ketchum | Dec 2009 | A1 |
20120147777 | Arashin | Jun 2012 | A1 |
20120294246 | Cariou | Nov 2012 | A1 |
20130301605 | Kim | Nov 2013 | A1 |
20130316730 | Ding | Nov 2013 | A1 |
20140050178 | Asai | Feb 2014 | A1 |
20140314054 | Seok | Oct 2014 | A1 |
20140341158 | Farricker | Nov 2014 | A1 |
20150365941 | Liu | Dec 2015 | A1 |
20160050567 | Asano | Feb 2016 | A1 |
20160165617 | Sakamoto | Jun 2016 | A1 |
20160212702 | Ghosh | Jul 2016 | A1 |
20160309469 | Shu | Oct 2016 | A1 |
20160309513 | Ma | Oct 2016 | A1 |
20160330757 | Cherian et al. | Nov 2016 | A1 |
20160374114 | Lu | Dec 2016 | A1 |
20170048852 | Li | Feb 2017 | A1 |
20170079011 | Kenney | Mar 2017 | A1 |
20170201982 | Rico Alvarino | Jul 2017 | A1 |
20170272696 | Li | Sep 2017 | A1 |
20170289994 | Kim | Oct 2017 | A1 |
20180288694 | Gordon | Oct 2018 | A1 |
20180368127 | Kim | Dec 2018 | A1 |
20190110285 | Huang | Apr 2019 | A1 |
20190116014 | Gan | Apr 2019 | A1 |
20190297553 | Wang | Sep 2019 | A1 |
Entry |
---|
PCT International Search Report & Written Opinion, Re: Application No. PCT/US2018/020688, dated Jun. 5, 2018. |
G. Li, “Some CIDs related to 20MHz operation”, IEEE Draft, vol. 802.11ax. No. 3, Mar. 13, 2017. |
Number | Date | Country | |
---|---|---|---|
20180288775 A1 | Oct 2018 | US |