A method for allocating bandwidth among a plurality of groups of users (104-105, 106-107, 108-109) at a base station, comprising: determining, at the base station, a bandwidth capacity of the communication base station; assigning to each of the plurality of groups a guaranteed bandwidth and a maximum bandwidth (116, 118), wherein the sum of all groups' guaranteed bandwidth does not exceed the total bandwidth capacity of the base station and wherein each group's maximum bandwidth (116, 118) is greater than its guaranteed bandwidth; receiving a communication request at the base station from a user equipment of a first group of the plurality of groups; determining a present bandwidth usage of the base station's bandwidth capacity by the first group; when granting the communication request would cause the first group's bandwidth usage to exceed the first group's guaranteed bandwidth, subsequently determining whether granting the communication request would cause the first group's bandwidth usage to exceed the first group's maximum bandwidth, and: a) when granting the communication request would not cause the first group's bandwidth usage to exceed the first group's maximum bandwidth, subsequently determining whether there is under-utilized bandwidth of another group or community bandwidth available, and granting the request when there is under-utilized bandwidth of another group or community bandwidth available; b) when granting the communication request would cause the first group's bandwidth usage to exceed the first group's maximum bandwidth, queuing the request; and when granting the communication request would not cause the first group's bandwidth usage to exceed the first group's guaranteed bandwidth, subsequently determining whether granting the request would require pre-empting another group's bandwidth usage, and when granting the request would require pre-empting another group's bandwidth usage, pre-empting a second group at the base station, wherein the second group's bandwidth usage exceeds the second group's guaranteed bandwidth, and subsequently granting the communication request, wherein pre-empting comprises at least one of reducing the second group's bandwidth usage or reducing a quality of service of the second group provided by the base station. determining, at the base station, a bandwidth capacity of the communication base station; assigning to each of the plurality of groups a guaranteed bandwidth and a maximum bandwidth (116, 118), wherein the sum of all groups' guaranteed bandwidth does not exceed the total bandwidth capacity of the base station and wherein each group's maximum bandwidth (116, 118) is greater than its guaranteed bandwidth; receiving a communication request at the base station from a user equipment of a first group of the plurality of groups; determining a present bandwidth usage of the base station's bandwidth capacity by the first group; when granting the communication request would cause the first group's bandwidth usage to exceed the first group's guaranteed bandwidth, subsequently determining whether granting the communication request would cause the first group's bandwidth usage to exceed the first group's maximum bandwidth, and: a) when granting the communication request would not cause the first group's bandwidth usage to exceed the first group's maximum bandwidth, subsequently determining whether there is under-utilized bandwidth of another group or community bandwidth available, and granting the request when there is under-utilized bandwidth of another group or community bandwidth available; b) when granting the communication request would cause the first group's bandwidth usage to exceed the first group's maximum bandwidth, queuing the request; and a) when granting the communication request would not cause the first group's bandwidth usage to exceed the first group's maximum bandwidth, subsequently determining whether there is under-utilized bandwidth of another group or community bandwidth available, and granting the request when there is under-utilized bandwidth of another group or community bandwidth available; b) when granting the communication request would cause the first group's bandwidth usage to exceed the first group's maximum bandwidth, queuing the request; and when granting the communication request would not cause the first group's bandwidth usage to exceed the first group's guaranteed bandwidth, subsequently determining whether granting the request would require pre-empting another group's bandwidth usage, and when granting the request would require pre-empting another group's bandwidth usage, pre-empting a second group at the base station, wherein the second group's bandwidth usage exceeds the second group's guaranteed bandwidth, and subsequently granting the communication request, wherein pre-empting comprises at least one of reducing the second group's bandwidth usage or reducing a quality of service of the second group provided by the base station.