Claims
- 1. A method for allocating bandwidth in a broadband wireless communication system, wherein the wireless communication system includes a plurality of customer premise equipment (CPE) in communication with associated and corresponding base stations, and wherein the base stations maintain uplink and downlink sub-frame maps representative of the bandwidth allocations in the uplink and downlink communication paths, the method comprising the steps of:
(a) determining whether there is sufficient available bandwidth to individually poll a selected CPE; (b) if sufficient bandwidth is determined to be available in step (a), determining whether there are either unpolled inactive CPEs present or unpolled active CPEs requesting to be polled, else proceeding to step (e); (c) polling a selected CPE by allocating bandwidth to the CPE in the uplink sub-frame map; (d) continuing to individually poll other selected CPEs by repeating steps (a)-(c) until it is determined in step (a) that there is insufficient available bandwidth to individually poll the CPEs; (e) initiating a multicast and broadcast polling process; (f) determining whether any individual CPE polls were initiated in step (c); (g) if no individual CPE polls were initiated in step (c), terminating the method, else awaiting individual bandwidth requests from the CPEs polled in step (c); (h) receiving a bandwidth request from a selected CPE; and (i) initiating a bandwidth allocation process and allocating bandwidth in the uplink sub-frame map for the selected CPE that transmitted the bandwidth request received in step (h).
- 2. The method for allocating bandwidth as defined in claim 1, wherein the unpolled active CPEs request polling in step (b) by setting a poll-me bit associated with the CPEs.
- 3. The method for allocating bandwidth as defined in claim 1, wherein the downlink sub-frame map comprises a frame control header and a plurality of downlink data PS grouped by modulation type, wherein the plurality of data PS are separated by a plurality of modulation transition gaps.
- 4. The method for allocating bandwidth as defined in claim 3, wherein the frame control header includes a preamble, a physical control section, and a media access control (MAC) section.
- 5. The method for allocating bandwidth as defined in claim 1, wherein the uplink sub-frame map comprises a plurality of registration contention slots, a plurality of bandwidth request contention slots, and a plurality of CPE scheduled data slots, and wherein the registration contention slots, bandwidth request contention slots, and data slots are associated and corresponding to the plurality of CPEs.
- 6. The method for allocating bandwidth as defined in claim 5, wherein the registration contention slots are used by the CPE during registration with an associated and corresponding base station, and wherein the bandwidth request contention slots are used to transmit by the CPEs to request bandwidth.
- 7. The method for allocating bandwidth as defined in claim 5, wherein the CPE scheduled data slots are used by the CPEs to transmit MAC control messages and data to their associated and corresponding base stations.
- 8. The method for allocating bandwidth as defined in claim 3, wherein the base station informs the selected CPE that it is polled during step (c) by broadcasting a frame control header, wherein the frame control header includes a MAC control section that indicates that the bandwidth has been allocated to the selected CPE for the purpose of responding with a bandwidth request.
- 9. The method for allocating bandwidth as defined in claim 7, wherein the individual bandwidth requests are received during step (h) by monitoring the scheduled CPE data slots for bandwidth request messages.
- 10. The method for allocating bandwidth as defined in claim 1, wherein the multicast and broadcast polling process initiated during step (e) comprises the steps of:
(a) determining whether there is sufficient bandwidth available for performing a multicast poll; (b) if sufficient bandwidth is determined to be available in step (a), polling a next multicast group to be polled and returning to step (a), else proceeding to step (c); (c) determining whether there is sufficient bandwidth available to perform a broadcast poll; (d) if sufficient bandwidth is determined to be available in step (c), placing a broadcast poll in the uplink sub-frame map, else proceeding to step (e); (e) determining if a multicast or broadcast poll was performed in either step (b) or step (d); (f) if either a multicast or broadcast poll was determined to be performed during step (e), monitoring for bandwidth request messages in bandwidth request contention slots defined by the uplink sub-frame map, else terminating the multicast and broadcast polling process; (g) determining whether valid bandwidth requests were received; and (h) modifying the uplink sub-frame map to reflect the bandwidth allocated to the plurality of CPEs.
- 11. The method for allocating bandwidth as defined in claim 1, wherein the bandwidth allocation process initiated in step (i) includes building and maintaining a logical model of a plurality of data queues in the plurality of CPEs, and wherein the data queues are ordered based upon quality of service designations.
- 12. The method for allocating bandwidth as defined in claim 11, wherein data is transmitted by the CPEs in order of a quality of service queue priority.
- 13. The method for allocating bandwidth as defined in claim 12, further including a quality of service specific fairness method that is initiated whenever there is insufficient bandwidth to transmit all of the data in the quality of service queue.
- 14. The method for allocating bandwidth as defined in claim 13, wherein the logical model comprises:
(a) a plurality of continuous grant data queues; (b) a plurality of fair weighted data queues; and (c) a plurality of round robin data queues.
- 15. The method for allocating bandwidth as defined in claim 14, wherein data in a continuous grant data queue is transmitted during an uplink frame.
- 16. The method for allocating bandwidth as defined in claim 14, wherein the data in the fair weighted data queues are assigned a pre-defined weight value wherein the weight value is indicative of the percentage of bandwidth that the data is eligible to receive.
- 17. The method for allocating bandwidth as defined in claim 16, wherein the weight value comprises either a data pending, guaranteed rate, or average rate weight value.
- 18. The method for allocating bandwidth as defined in claim 14, wherein the round robin data queues are used for best effort connections where all connections have equal weight.
- 19. The method for allocating bandwidth as defined in claim 18, wherein the connections are allocated bandwidth in a round-robin fashion with each connection receiving a block of bandwidth up to a pre-defined maximum.
- 20. The method for allocating bandwidth as defined in claim 1, wherein the bandwidth request received during step (h) is transmitted by the selected CPE using a piggybacking technique whereby the selected CPE transmits the bandwidth request using unused bandwidth in TC/PHY packets of existing bandwidth allocations.
- 21. An apparatus for allocating bandwidth in a broadband wireless communication system, wherein the wireless communication system includes a plurality of customer premise equipment (CPE) in communication with associated and corresponding base stations, and wherein the base stations maintain uplink and downlink sub-frame maps representative of the bandwidth allocations, in the uplink and downlink communication paths, comprising:
(a) means for individually polling a selected CPE, wherein the polling means includes a means for allocating bandwidth to the selected CPE in the uplink sub-frame map, and wherein the polling means further includes a means for determining whether any CPEs request polling by setting an associated and corresponding poll-me bit; (b) means for polling a selected group of CPEs, wherein the means for group polling is invoked if and only if there is insufficient bandwidth to individually poll the CPEs; (c) determining means, operatively coupled to the polling means, for determining whether any CPEs were polled; (d) receiving means for receiving bandwidth requests from selected CPEs; and (e) bandwidth allocation means for allocating bandwidth in the uplink sub-frame map to selected CPEs that transmit bandwidth requests to an associated and corresponding base station.
- 22. An apparatus for allocating bandwidth in a broadband wireless communication system, wherein the wireless communication system includes a plurality of customer premise equipment (CPE) in communication with associated and corresponding base stations, and wherein the base stations maintain uplink and downlink sub-frame maps representative of the bandwidth allocations in the uplink and downlink communication paths, comprising:
(a) individual polling means for individually polling a selected CPE; (b) group polling means for polling a selected group of CPEs, wherein the means for group polling is invoked if and only if there is insufficient bandwidth to individually poll the CPEs; (c) means for initiating a poll by setting a poll-me bit associated with a selected CPE; (d) piggybacking means for transmitting a bandwidth request to a selected base station using bandwidth allocated to a selected CPE; and (e) bandwidth allocation means for allocating bandwidth in the uplink sub-frame map to selected CPEs that transmit bandwidth requests to an associated and corresponding base station, wherein the individual polling means, the group polling means, the means for initiating a poll and the piggybacking means are used to efficiently request bandwidth for a selected CPE.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application is a continuation of U.S. patent application Ser. No. 09/316,518, filed May 21, 1999, the disclosure of which is incorporated herein by reference in its entirety.
Continuations (1)
|
Number |
Date |
Country |
Parent |
09316518 |
May 1999 |
US |
Child |
09859561 |
May 2001 |
US |