# Patent

## Title
Traffic management for base stations backhauled over data-capped network connections

## Abstract

A method includes receiving a connection request from a mobile device at a network device to allow connection of the mobile device to a core network of the first service provider through a first base station and determining whether a backhaul connection between the core network of the first service provider and the first base station is congested by the network device. The backhaul connection is determined to be congested when L is greater than (D−B)/T. When the first backhaul connection is determined to be congested, the method also includes preventing the first base station from connecting the mobile device to the core network.

## Background
CROSS REFERENCE TO RELATED APPLICATIONS
This U.S. patent application is a continuation of, and claims priority under 35 U.S.C. §120 from, U.S. patent application Ser. No. 13/604,741, filed on Sep. 6, 2012, which is hereby incorporated by reference in its entirety.


TECHNICAL FIELD
This disclosure relates to managing traffic handled by base stations backhauled over data-capped network connections.
BACKGROUND
Deploying small-cell (e.g., femtocell) base stations in homes and businesses may present challenges not faced in the deployment of macro-cell base stations. Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such approaches with some is aspects of the present method and apparatus set forth in the remainder of this disclosure with reference to the drawings.
SUMMARY
One aspect of the disclosure provides a method for traffic management for base stations backhauled over data-capped network connections. The method includes receiving, at a network device, a connection request from a mobile device to allow connection of the mobile device to a core network of a first service provider through a first base station and determining, by the network device, whether a first backhaul connection between the core network of the first service provider and the first base station is congested. The first backhaul connection is determined to be congested when L1 is greater than (D1−B1)/T1. L1 is a traffic load on the first backhaul connection communicated by a second service provider providing at least two services. D1 is a periodic data cap imposed by the second service provider on the first backhaul connection. B1 is a total amount of data consumed by a selected one of the at least two services provided by the second service provider over the first backhaul connection during a current time period. T1 is an amount of time remaining in the current time period, measured in units of time. When the network device determines the first backhaul connection is congested, the method includes preventing, by the network device, the first base station from connecting the mobile device to the core network.
Implementations of the disclosure may include one or more of the following optional features. In some implementations, the traffic load on the first backhaul connection includes an instantaneous traffic load on the first backhaul connection. The traffic load on the first backhaul connection may further include an average traffic load on the first backhaul connection during the current time period. The traffic load on the first backhaul connection may even further include an average traffic load on the first backhaul connection during one or more previous time periods.
When determining whether the first backhaul connection is congested, the method may further include accounting, by the network device, for backhaul data of the first base station and data communication between non-base station devices. The first base station may be installed in a building and the first backhaul connection may provide Internet access to the building. The method may further include, when preventing the first base station from connecting the mobile device to the core network permitting, by the network device, a second base station to connect the mobile device to the core network. Additionally, or alternatively, the method may include, prior to permitting the second base station to connect the mobile device to the core network, determining, by the network device, that a second backhaul connection between the core network of the first service provider and the second base station is not congested.
In some examples, the second backhaul connection is determined to not be congested when L2 is less than or equal to (D2−B2)/T2. L2 is a traffic load on the second backhaul connection, D2 is a periodic data cap on the second backhaul connection, B1 is a total amount of data consumed over the second backhaul connection during the current time period and T1 is an amount of time remaining in the current time period, measured in units of time. The second backhaul connection may be determined to not be congested when L2 is less than or equal to M×S, where S is a scaling factor and M is a maximum permitted load on the second backhaul connection.
Another aspect of the disclosure provides a system for traffic management for base stations backhauled over data-capped network connections. This aspect may include one or more of the following optional features. The system includes one or more network processing devices executing a base station manager. The base station manager includes receiving a connection request from a mobile device to allow connection of the mobile device to a core network of a first service provider through a first base station. The system further includes determining whether the first backhaul connection between the core network of the first service provider and the first base station is congested. The first backhaul connection is determined to be congested when L1 is greater than (D1−B1)/T1. L1 is a traffic load on the first backhaul connection communicated by a second service provider providing at least two services. D1 is a periodic data cap imposed by the second service provider on the first backhaul connection. B1 is a total amount of data consumed by a selected one of the at least two services provided by the second provider over the first backhaul connection during a current time period. T1 is an amount of time remaining in the current time period, measured in units of time. When the base station manager determines the first backhaul connection is congested, the base station manager prevents the first base station from connecting the mobile device to the core network.
In some implementations, the traffic load on the first backhaul connection includes an instantaneous traffic load on the first backhaul connection. The traffic load on the first backhaul connection may include an average traffic load on the first backhaul connection during the current time period. The traffic load on the first backhaul connection may further include an average traffic toad on the first backhaul connection during one or more previous time periods.
The base station manager, at the one or more network processing devices, may account for backhaul data of the first base station and data communicated between non-base station devices when determining whether the first backhaul connection is congested. The first base station may be installed in a building and the first backhaul connection may provide Internet access to the building. At the one or more network processing devices, the base station manager may permit a second base station to connect the mobile device to the core network when the base station manager prevents the first base station from connecting the mobile device to the core network. Additionally or alternatively, at the one or more network processing devices, the base station manager may determine that a second backhaul connection between the core network of the first service provider and the second base station is not congested.
In some examples, the second backhaul connection is determined to not be congested when L2 is less than or equal to (D2−B2)/T2. L2 is a traffic load on the second backhaul connection, D2 is a periodic data cap on the second backhaul connection, B1 is a total amount of data consumed over the second backhaul connection during the current time period and T1 is an amount of time remaining in the current time period, measured in units of time. The second backhaul connection may be determined to not be congested when L2 is less than or equal to M×S, where S is a scaling factor and M is a maximum permitted load on the second backhaul connection.
Yet another aspect of the disclosure provides a second method for traffic management for base stations backhauled over data-capped network connections. The method includes receiving, at a network device, a connection request from a mobile device to allow connection of the mobile device to a core network of a first service provider through a first base station. The method may further include determining, by the network device, whether a first backhaul connection between the core network of the first service provider and the first base station is congested. The first backhaul connection is determined to be congested when L1 is greater than M×S, where S is a scaling factor and M is a maximum permitted load on the first backhaul connection. When the network device determines the first backhaul connection is congested, the method includes preventing, by the network device, the first base station from connecting the mobile device to the core network.
The details of one or more implementations of the disclosure are set forth in the accompanying drawings and the description below. Other aspects, features, and advantages will be apparent from the description and drawings, and from the claims.



DESCRIPTION OF DRAWINGS
FIG. 1A is a schematic view of an example network including a plurality of small-cell base stations backhauled over data-capped network connections.
FIG. 1B is a schematic view of an example network including a plurality of small-cell base stations.
FIG. 1C is a schematic view of an example base station manager.
FIG. 1D is a schematic view of an example data structure utilized for managing a small-cell network to mitigate congestion of backhaul connections.
FIGS. 2A and 2B are schematic views of example cell boundary reconfigured in response to a backhaul connection becoming congested.
FIGS. 3A and 3B are schematic views of example configurations of parameter values to mitigate congestion in a small cell network.
FIG. 4 is a flowchart of an example method for managing a network of small-cell base stations to mitigate the impact of congestion on backhaul connections.



Like reference symbols in the various drawings indicate like elements.
DETAILED DESCRIPTION
As utilized herein the terms “circuits” and “circuitry” refer to physical electronic components (i.e. hardware) and any software and/or firmware (“code”) which may configure the hardware, be executed by the hardware, and or otherwise be associated with the hardware. Hardware may include, for example, one or more processors, ASICs, and/or FPGAs. As utilized herein, “and/or” means any one or more of the items in the list joined by “and/or”. As an example, “x and/or y” means any element of the three-element set {(x), (y), (x, y)}. As another example, “x, y, and/or z” means any element of the seven-element set {(x), (y), (z), (x, y), (x, z), (y, z), (x, y, z)}. As utilized herein, the terms “block” and “module” refer to functions than can be performed by one or more circuits. As utilized herein, the term “e.g.,” introduce a list of one or more non-limiting examples, instances, or illustrations.
In some implementations, a network device of a first service provider determines that a total amount of data communicated over a backhaul connection of a base station during a current billing period will exceed a maximum amount of data permitted to be communicated over the backhaul connection during the current billing period. The maximum amount of data permitted to be communicated over the network connection may be imposed by a second service provider. The determining may be based on a traffic load on the network connection over the current billing period. In response to a determination that the backhaul connection is congested, a value of one or more cellular communication parameters utilized by the base station may be reconfigured.
FIG. 1A shows an example network including a plurality of small-cell base stations backhauled over data-capped network connections. The network 100 includes base stations 102a, 102b, and 124; and subnetworks 106a, 106b, and 110.
The subnetwork 110 may be a core network of a service provider that provides network access to mobile devices. The subnetwork 110 may be, for example, a core network 110 of a cellular service provider. The core network 110 may include various components 112 (e.g., routers, switches, hubs, etc.) for connecting the core network to the access networks 106a and 106b and to the base station 124. The core network 110 may include a base station manager 114 which may operate as described herein.
Each of the base stations 102a and 102b may be operable to communicate data between mobile devices (e.g., devices 202a and 202b) and a respective one of the subnetworks 106a and 106b. In this regard, base station 202a may communicate data between mobile device 102a and the subnetwork 106a, and base station 102b may communicate data between mobile device 202b and subnetwork 106b. In this regard, each of the base stations 102a and 102b may support any one or more wireless (e.g., Wi-Fi, LTE), wired (e.g., Ethernet, DSL), and/or optical (e.g., Fiber Channel) protocols. Each of the base stations 102a and 102b may include circuitry operable to implement functions of a base station described herein.
In some implementations, the base stations 102a and 102b associate with the cellular provider that is associated with the core network 110. In this regard, one or more agreements may be in place between the owner(s) of the base stations 102a and 102b such that the base stations 102a and 102b are permitted to communicate on frequencies owned/leased by the cellular provider.
The connection 104a through the subnetwork 106a may carry backhaul traffic for the base station 102a. The connection 104b through the subnetwork 106b may cam/backhaul traffic for the base station 102b. Each of the connections 104a and 104b may include one or more wired, wireless, and/or optical network links.
Each of the subnetworks 106a and 106b may be an access network of a respective Internet service provider (ISP). Accordingly, each of the base stations 102a and 102b may be associated with a contract between a subscriber and an ISP that provides one of the access networks 106a and 106b). The subnetwork 106a may be, for example, an access network of a cable television provider, where the owner and/or lessee of the base station 102a has an account with the cable television provider, and the base station 102a is associated with the contract, thus permitting the base station 102a to communicate over the network 106a. The subnetwork 106b may be, for example, an access network of an xDSL provider, where the owner and/or lessee of the base station 102b has an account with the xDSL provider, and the base station 102b is associated with the contract, thus permitting the base station 102a to communicate over the network 106a. 
In some examples, the cellular provider does not have control, or at least not sole control, over the access networks 106a and 106b. For example, the ISPs associated with the access networks 106a and 106b may be separate entities than the cellular provider associated with the core network 110. Consequently, restrictions, such as periodic data caps and/or maximum traffic toads, imposed on the connections 104a and 104b may be, at least partially, out of the control of the cellular provider. Periodic data caps may be measured in, for example, bits or bytes. A traffic load may be measured in, for example, bits or bytes per unit time (e.g., megabits per second (Mbps) or megabytes per second (MBps)). A traffic load may be, for example, an instantaneous traffic load at one or more time instants, an average traffic toad averaged over a time period (e.g., an hour, day, week, month, year, or billing period), and/or an average traffic load broken down by category (e.g., by time of day, time of week, and/or time of year).
The base station manager 114 may be operable to collect information about the backhaul connections 104a and 104b and utilize the information for managing the respective traffic loads on the base stations 102a and 102b. The collected information may be stored in a data structure, such as the one described below with respect to FIG. 1D, which may be part of, and/or accessible by, the base station manager 114. Collected information may be, for example, updated continuously, periodically, and/or on an event-driven basis. The base station manager 114 may include circuitry which resides in a single device or is distributed among a plurality of devices. In this regard, although an example implementation is shown in which the base station manager 114 resides entirely in the core network 110, the base station manager 114 could reside entirely or partly in any one or more of the base station 102a, the base station 102b, and the core network 110.
Managing the respective traffic toads on the base stations 102a and 102b may include reconfiguring a value of one or more parameters utilized by one or both of the base stations 102a and 102b. The parameters may include, for example: transmit power, receive sensitivity, channels to utilize, one or more quality of service (QoS) thresholds above and/or below which traffic is to be accepted and/or dropped, identifiers of permitted and/or denied traffic flows, whether particular base stations may accept inbound handovers, whether particular base stations should initiate outbound handovers, and/or any other parameters useful for managing the respective traffic loads on the base stations 102a and 102b. 
Additionally or alternatively, managing the respective traffic loads on the base stations 102a and 102b may include communication of network management messages. Such messages may be communicated, for example, between the base stations 102a and 102b, between the base station 102a and the core network 110 (e.g., components 112 and/or the base station manager 114), and/or between the base station 102b and the core network 110 (e.g., components 112 and/or the base station manager 114). The network management messages may be communicated in-band and/or out-of-band with one or both of the connections 104a and 104b. 
The collected information may include, for example, one or more maximum permitted traffic loads for the connection 104a (which may be imposed by the ISP that provides connection 104a), and/or a one or more maximum permitted traffic loads for the connection 104b (which may be imposed by the ISP that provides connection 104b). For example, the ISP that provides connection 104a may impose a maximum downstream load of 50 Mbps, and a maximum upstream load of 10 Mbps.
The collected information may, for example, include a periodic data cap imposed on the connection 104a, and/or a periodic data cap imposed on the connection 104b. For example, the ISP that provides connection 104a may impose a monthly data cap of 250 GB and the ISP that provides connection 104b may impose a monthly data cap of 300 GB. In some instances, the periodic data cap and the maximum load of a connection may be interrelated, For example, the ISP that provides connection 104a may impose a maximum of 50 Mbps up to the first 250 GB in a billing cycle and a maximum load of 10 Mbps for amounts in excess of 250 GB in a single billing cycle.
The collected information may include, for example, a total amount of traffic communicated over the connection 104a during one or more time periods, and/or a total amount of traffic communicated over the connection 104b during one or more time periods. A time period may be, for example, an hour, day, week, month, year, and/or billing period (e.g., the billing period for subscriber's contract with an ISP). In some instances, the total amount of traffic may include only traffic that counts towards a subscriber's periodic allotment. For example, the ISP that provides connection 104a may impose a monthly data cap of 250 GB, but only DOCSIS data may count toward that allotment white cable television programming may not count toward the 250 GB allotment.
The collected information may include, for example, the one or more traffic toad values for one or both of the connections 104a and 104b. For example, a current instantaneous traffic load and/or an average traffic load over a current, in-progress time period may be collected for each of the connections 104a and 104b. 
The base station manager 114 may collect information about the connections 104a and/or 104b through the communication of management messages with other network devices (e.g., the base stations 102a and 102b, devices in the access networks 106a and 106b, and/or devices in the core network 110). For instance, other devices may collect information as traffic arrives at and/or traverses them. Such devices may communicate such collected information to the base station manager 114 on a periodic or event-driven basis (e.g., in response to a request from the base station manager 114). Additionally or alternatively, the management messages may include probe messages utilized to measure various network information.
In operation, the base stations 102a and 102b may communicate data to and/or from mobile devices (e.g., devices 202a and 202b) utilizing cellular protocols (e.g., LTE). Such data may be backhauled to and/or from the core network 110 via a respective one of network connections 104a and 104b. Values of one or more parameters utilized by the base stations 102a and 102b may be configured by the base station manager 114 in order to manage respective traffic loads on the base stations 102a and 102b. The configuration of the parameters may be based on collected information about the respective traffic loads on the backhaul connections 104a and 104b. 
The collected information may be utilized to determine whether the traffic load on the connection 104a and/or the traffic load on the connection 104b has exceeded a threshold such as to be considered “congested.” The determination of whether a connection is congested may, for example, be made periodically and/or made occasionally in response to a triggering event or condition.
A threshold for considering a connection congested may, for example, be calculated as shown below in EQ 1.

CT=(D−B)/T  EQ. 1

where ‘CT’ is the congestion threshold measured in bits per unit time, ‘D’ is the periodic data cap measured in bits, ‘B’ is the total amount of data consumed over the connection during the current time period (measured in bits), and ‘T’ is the amount of time (e.g., measured in days, weeks, biweekly intervals, semi-monthly intervals, and/or months) remaining in the current time period. In such an instance, the connection may be determined to be congested if the following expression

L>CT?  EQ. 2

evaluates to true, where L is a traffic load on the connection.

A connection may, for example, be determined to be congested if the following expression:

L>(S)(M)?  EQ. 3

evaluates to true, where ‘L’ is a traffic load on the connection, ‘S’ is a scaling factor, and ‘M’ is a maximum permitted load of the connection.

FIG. 1B shows an example network including a plurality of small-cell base stations. The network 150 shown in FIG. 1B includes the base stations 102a and 102b, the connections 104a and 104b, the subnetwork 110, and the base station manager 114. Additionally, network devices 152 and 158 and network links 154 and 156 are shown.
The network device 152 may include a non-base station device such as, for example, a laptop or desktop computer that is not configured to function as a base station. The device 152 may reside within a premises 160 (e.g., a residence, business or public venue) along with the base station 102a. The device 152 may include circuitry operable to implement functions of the network device 152 described herein.
The network device 158 may include a non-base station device such as, for example, a router or network switch that is not configured to function as abuse station which may communicate with the base stations 102a and non-base station device 152 via network links 154 and 156 respectively. The network device 158 may reside within the premises 160 along with the base station 102a. The network device 158 may include circuitry operable to implement functions of the network device 158 described herein.
The connection 104a may provide an Internet connection to the premises 160. Thus, the connection 104a may carry data to and/or from both the base station 102a and the non-base station device 152. Data to and/or from the network device 152 may include, for example, website data, file uploads, file downloads, and/or any other traffic which a residence and/or business may communicate to and/or from the Internet. Because data to and/or from the base station 102a shares the connection 104a with data to and/or from the non-base station device 152, the latter may be accounted for by the base station manager 114 when collecting information about the connection 104a and/or when determining whether the connection 104a is congested. For example, where the respective cellular traffic loads on the base stations 102a and 102b are roughly equal, but device 152 is generating a tot of traffic, connection 104a may be congested whereas connection 104b is not. Accordingly, the base station manager 114 may take action to redistribute the existing loads (e.g., through handovers and/or traffic filtering) and/or to balance the respective loads going forward (e.g., encourage or force new connections to be established with the base station 102b rather than the base station 102, where possible).
In addition to routing/switching/bridging traffic between the connection 104a and the links 154 and 156, the network device 158 may perform and/or aid in the collection of information about the connection 104a. In this regard, the network device 158 may be a component of the base station manager 114 and/or may exchange network management messages with the base station manager 114.
FIG. 1C shows example components of an example base station manager 114. In the example shown, the circuitry of the base station manager 114 includes a transceiver 116, a CPU 118, and a memory 120. The transceiver 116 may be operable to communicate in accordance with one or more communications protocols for communicating over wired, wireless, and/or optical links. The transceiver 116 may, for example, communicate utilizing the Internet protocol suite (including TCP and/or IP). The CPU 118 may be operable to effectuate operation of the base station manager 114 by executing lines of code stored in the memory 120. Such lines of code may include, for example, one or more programs for collecting and analyzing network information to generate decisions regarding the management of network traffic. The memory 120 may include program memory, run-time memory, and/or mass storage. The memory 120 may, for example, include non-volatile memory, volatile memory, read only memory (ROM), random access memory (RAM), flash memory, magnetic storage, and/or any other suitable memory. Program memory may store lines of code executable by the CPU 118 to effectuate operation of network management actions. Runtime memory may store data generated and/or used during execution of the network management programs. For example, runtime memory may store values utilized in evaluating, and/or the results of evaluating, equations 1-3 above. Mass storage may, for example, store data that becomes too large for efficient storage in runtime memory. For example, collected information regarding connections 104a and 104b may be stored in mass storage in a data structure 122 and portions of that data may be loaded into runtime memory as needed. An example of the data structure 122 is described below with reference to FIG. 1D.
FIG. 1D is an example data structure utilized for managing a small-cell network to mitigate congestion of backhaul connections. Each of the entries 1901-190N (where ‘N’ is an integer and ‘n’ is a value between 1 and ‘N’) in the data structure 122 are associated with a particular back-haul connection and include current conditions of (e.g., traffic load) and/or constraints on (e.g., data rate limit and/or periodic data cap) the particular backhaul connection. In the example shown, each entry 190n includes: a field 172 which stores an identifier associated with a particular backhaul connection, a field 174 which stores the total amount of data consumed over the connection during a time period (e.g., the current month or a previous month), a field 176 which stores the periodic data cap imposed on the connection, a field 178 which stores an amount of time left in the time period, a field 180 which stores a traffic load on the connection, and a field 182 which stores a maximum load imposed on the connection. Each of the fields in FIG. 1D is populated with arbitrary values to show how the stored values may be utilized to determine whether a connection is congested.
Table 1 below shows example congestion determinations made utilizing equations 1 and 2 described above.







TABLE 1







Congestion Determination using EQ. 1












Connection
CT
L
Congested?







170a
15 MBps
7 MBps
NO



170b
 5 MBps
7 MBps
YES



170c
20 MBps
9 MBps
NO



170d
20 MBps
10 MBps 
NO










Thus, table 1 shows an example scenario in which connection 170b is determined to be congested as a result of the fact that, based on its traffic load, L, the connection 170b will exceed its periodic data cap for the time period. The consequences of exceeding the data cap may depend on policies of the service provider that provides the connection 170c, but such consequences could include, for example, the connection 170c being disabled or a data rate of the connection 170c being throttled down. The loss of connection 170c would result in a base station that is backhauled by the connection 170c being unable to provide service to mobile devices. This, in turn, could result in a “hole” or “dead zone” in the cellular provider's coverage. Accordingly, the base station manager 114 may take action to attempt to reduce the load on the connection 170c. 
Table 2 below shows example congestion determinations utilizing equation 3 described above and a hypothetical scaling factor, S, of 0.8. The scaling factor may be configured by the cellular provider based, for example, on performance data (e.g., load variance, traffic latency, dropped packets, etc.). By using a scaling factor 0.8, 20% headroom is reserved for handling transient traffic spikes, for example:







TABLE 2







Congestion Determination using EQ. 3












Connection
S × M
L
Congested?







170a
9.6 MBps
7 MBps
NO



170b
9.6 MBps
7 MBps
NO



170c
9.6 MBps
9 MBps
NO



170d
9.6 MBps
10 MBps 
YES










Thus, table 2 shows an example scenario in which connection 170d is determined to be congested as a result of the fact that its traffic load exceeds 80% of its maximum permitted load. Operating with a load above S×M could, for example, increase latency and/or the likelihood of dropped packets, which may negatively impact the experience of mobile device users.
FIGS. 2A and 2B show configurations of a cell boundary in response to a backhaul connection becoming congested. In FIG. 2A, there is shown the base station 102a, the base station 102b, a coverage area 204a of the base station 102a, a coverage area 204b of the base station 102b, and mobile devices 202a and 202b. Each of the mobile devices 202a and 202b may include circuitry operable to communicate utilizing one or more wireless protocols (e.g., LTE protocols). Each of the mobile devices 202a and 102b may be, for example, a cellphone, a tablet computer, or a laptop computer.
In FIG. 2A, the base station 102a is serving mobile device 202a via a wireless connection 210 and serving mobile device 202b via a wireless connection 212. For illustration, assume that connection 104a (see FIG. 1A) to the base station 102a is congested as a result of the traffic to and/or from the mobile devices 202a and 202b and/or other traffic from non-base station devices on the connection 104a. Further assume that connection 104b (see FIG. 1A) to base station 102b is not congested. The base station manager 114 may detect that the connection 104a is congested but that connection 104b is not. FIG. 2B shows an example response of the network manager to the detected conditions on the connections 104a and 104b. Specifically, FIG. 2B shows a response in which the base station manager 114 reconfigures one or more parameter values to cause the coverage areas 202a and 202b to be altered.
Moving from FIG. 2A to FIG. 2B, the reconfiguring results in the mobile device 202b being handed-over to the base station 102b such that the mobile device 202b is now serviced via the connection 214 to base station 102b. After the handover, traffic to and from the mobile device 202b is backhauled over connection 104b rather than connection 104a, thus alleviating the congestion on connection 104a. 
FIG. 3A shows an example configuration of parameter values to mitigate congestion in a small cell network. In FIG. 3A, there is shown the base station 102a and its coverage area 204a, the base station 102b and its coverage area 204b, and mobile devices 202a-202e. Each of the mobile devices 202a-202e may include circuitry operable to communicate utilizing one or more wireless protocols (e.g., LTE protocols). Each of the mobile devices 202a-202e may be, for example, a cellphone, a tablet computer, or a laptop computer.
In FIG. 3A, the base station 102a is serving mobile device 202a via a wireless connection 310 and base station 102b is service mobile devices 202b-202e via connections 314, 316, 318, and 320, respectively. For example, assume that connection 104a (see e.g., FIG. 1A) to the base station 102a is congested as a result of the traffic to and/or from mobile device 202a and other traffic from non-base station devices on the connection 104a. Further assume that connection 104b (see e.g., FIG. 1A) to base station 102b is not congested (e.g., because connection 102b is not carrying a high traffic load from non-base station devices). The base station manager 114 may detect that connection 104a is congested but that connection 104b is not. FIG. 3A shows an example response of the network manager to these detected conditions. Specifically, FIG. 3A shows a response in which the base station manager 114 configures one or more parameter values of the base station 102a such that association of the mobile device 202b with the base station 102b are prevented (e.g., a request 312 from mobile device 202b may be dropped and/or responded-to with a denial).
Referring to FIG. 3B, assume now that the connection 104b has become congested and the backhaul connection 104a is no longer congested. The base station manager 114 may detect that connection 104b is congested hut that connection 104a is not. FIG. 3B shows an example response of the network manager to these detected conditions. Specifically, FIG. 3B shows a response in which the base station manager 114 configures one or more parameter values of the base station 102a such that the base station 102a is configured to accept handovers from base station 102b, and may configure one or more parameters of the base station 102a and/or 102b such that handover occurs. For example, a transmit power utilized for the connection 314 may be reduced such that the mobile device 202b determines that associating with the base station 102a will provide better performance. In some examples, the parameters associated with connection 314 are configured without affecting the connections 316, 318, and 320. For instance, transmit power may only be decreased for a channel (e.g., frequency, timeslot, and/or CDMA code) associated with the connection 314 while transmit power for channel(s) associated with the connections 316, 318, and 320 may remain the same.
FIG. 4 is a flow chart of an example method for managing a network of small-cell base stations to mitigate the impact of congestion on backhaul connections. In step 404, after start step 402, the base station manager 114 may collect information about one or more connections which serve as backhaul connections for one or more small-cell base stations. The collected information may include the information depicted in FIG. 1D and/or may include other information. In step 406, the collected information may be utilized to determine whether one or more of the backhaul connections are congested. The determination in step 406 may, for example, be made utilizing equations 1, 2, and/or 3 described above. If one or more backhaul connections are determined to be congested, then in step 408, one or more parameter values may be configured to, for example, reduce a load on the congested connection, shift traffic from a congested connection to an uncongested connection, and/or prevent the congestion from worsening. Returning to step 406, if none of the backhaul connections are congested, the steps may advance to step 410 and a current configuration of the network may be maintained.
Other implementations may provide anon-transitory computer readable medium and/or storage medium, and/or a non-transitory machine readable medium and/or storage medium, having stored thereon, a machine code and/or a computer program having at least one code section executable by a machine and/or a computer, thereby causing the machine and/or computer to perform the steps as described herein for traffic management for base stations backhauled over data-capped network connections.
Accordingly, the present method and/or apparatus may be realized in hardware, software, or a combination of hardware and software. The present method and/or apparatus may be realized in a centralized fashion in at least one computing system, or in a distributed fashion where different elements are spread across several interconnected computing systems. Any kind of computing system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software may be a general-purpose computing system with a program or other code that, when being loaded and executed, controls the computing system such that it carries out the methods described herein. Another typical implementation may include an application specific integrated circuit or chip.
The present method and/or apparatus may also be embedded in a computer program product, which includes all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.
A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the disclosure. Accordingly, other implementations 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.

## Claims

1. A method comprising:
receiving, at a network device, a connection request from a mobile device to allow connection of the mobile device to a core network of a first service provider through a first base station;
determining, by the network device, whether a first backhaul connection between the core network of the first service provider and the first base station is congested, the first backhaul connection determined to be congested when L1is greater than (D1−B1)/T1, where:
L1is a traffic load on the first backhaul connection communicated by a second service provider providing at least two services;
D1is a periodic data cap imposed by the second service provider on the first backhaul connection;
B1is a total amount of data consumed by a selected one of the at least two services provided by the second service provider over the first backhaul connection during a current time period; and
T1is an amount of time remaining in the current time period, measured in units of time; and

when the network device determines the first backhaul connection is congested, preventing, by the network device, the first base station from connecting the mobile device to the core network.

2. The method of claim 1, wherein the traffic load on the first backhaul connection comprises an instantaneous traffic load on the first backhaul connection.

3. The method of claim 1, wherein the traffic load on the first backhaul connection comprises an average traffic load on the first backhaul connection during the current time period.

4. The method of claim 1, wherein the traffic load on the first backhaul connection comprises an average traffic load on the first backhaul connection during one or more previous time periods.

5. The method of claim 1, further comprising, when determining whether the first backhaul connection is congested, accounting, by the network device, for backhaul data of the first base station and data communicated between non-base station devices.

6. The method of claim 1, wherein the first base station is installed in a building and the first backhaul connection provides Internet access to the building.

7. The method of claim 1, further comprising, when preventing the first base station from connecting the mobile device to the core network permitting, by the network device, a second base station to connect the mobile device to the core network.

8. The method of claim 7, further comprising, prior to permitting the second base station to connect the mobile device to the core network, determining, by the network device, that a second backhaul connection between the core network of the first service provider and the second base station is not congested.

9. The method of claim 8, wherein the second backhaul connection is determined to not be congested when L2 is less than or equal to (D2−B2)/T2, where:
L2is a traffic load on the second backhaul connection;
D2is a periodic data cap on the second backhaul connection;
B2is a total amount of data consumed over the second backhaul connection during the current time period; and
T2is an amount of time remaining in the current time period, measured in units of time.

10. The method of claim 8, wherein the second backhaul connection is determined to not be congested when L2 is less than or equal to M×S, where:
S is a scaling factor; and
M is a maximum permitted load on the second backhaul connection.

11. A system comprising:
one or more network processing devices executing a base station manager, the base station manager:
receiving a connection request from a mobile device to allow connection of the mobile device to a core network of a first service provider through a first base station;
determining whether the first backhaul connection between the core network of the first service provider and the first base station is congested, the first backhaul connection determined to be congested when L1 is greater than (D1−B1)/T1, where:
L1is a traffic load on the first backhaul connection communicated by a second service provider providing at least two services;
D1is a periodic data cap imposed by the second service provider on the first backhaul connection;
B1is a total amount of data consumed by a selected one of the at least two services provided by the second service provider over the first backhaul connection during a current time period; and
T1is an amount of time remaining in the current time period, measured in units of time; and

when the base station manager determines the first backhaul connection is congested, the base station manager prevents the first base station from connecting the mobile device to the core network.

12. The system of claim 11, wherein the traffic load on the first backhaul connection comprises an instantaneous traffic load on the first backhaul connection.

13. The system of claim 11, wherein the traffic load on the first backhaul connection comprises an average traffic load on the first backhaul connection during the current time period.

14. The system of claim 11, wherein the traffic load on the first backhaul connection comprises an average traffic load on the first backhaul connection during one or more previous time periods.

15. The system of claim 11, wherein the base station manager, at the one or more network processing devices, accounts for backhaul data of the first base station and data communicated between non-base station devices when determining whether the first backhaul connection is congested.

16. The system of claim 11, wherein the first base station is installed in a building and the first backhaul connection provides Internet access to the building.

17. The system of claim 11, wherein the base station manager, at the one or more network processing devices, permits a second base station to connect the mobile device to the core network when the base station manager prevents the first base station from connecting the mobile device to the core network.

18. The system of claim 17, wherein the base station manager, at the one or more network processing devices, determines that a second backhaul connection between the core network of the first service provider and the second base station is not congested.

19. The system of claim 18, wherein the second backhaul connection is determined to not be congested when L2 is less than or equal to (D2−B2)/T2, where:
L2is a traffic load on the second backhaul connection;
D2is a periodic data cap on the second backhaul connection;
B2is a total amount of data consumed over the second backhaul connection during the current time period; and
T2is an amount of time remaining in the current time period, measured in units of time.

20. The system of claim 18, wherein the second backhaul connection is determined to not be congested when L2 is less than or equal to M×S, where:
S is a scaling factor; and
M is a maximum permitted load on the second backhaul connection.

21. A method comprising:
receiving, at a network device, a connection request from a mobile device to allow connection of the mobile device to a core network of a first service provider through a first base station;
determining, by the network device, whether a first backhaul connection between the core network of the first service provider and the first base station is congested, the first backhaul connection determined to be congested when L1is greater than M×S, where:
L1is a traffic load on the first backhaul connection;
S is a scaling factor; and
M is a maximum permitted load on the first backhaul connection; and

when the network device determines the first backhaul connection is congested, preventing, by the network device, the first base station from connecting the mobile device to the core network.