Aspects of the present disclosure relate generally to wireless communication systems, and more particularly to backhaul estimation for small cells and the like.
Wireless communication networks are widely deployed to provide various communication services such as telephony, video, data, messaging, broadcasts, and so on. Such networks, which are usually multiple access networks, support communications for multiple users by sharing the available network resources. In cellular networks, macro base stations (or macro cells or conventional base stations) provide connectivity and coverage to a large number of users over a certain geographical area. To supplement macro base stations, restricted power or restricted coverage base stations, referred to as small coverage base stations or small cell base stations or small cells, can be deployed to provide more robust wireless coverage and capacity to mobile devices. For example, small cells can be deployed for incremental capacity growth, richer user experience, in-building or other specific geographic coverage, and/or the like.
However, the deployment of small cell base stations may also encroach on the operation of other devices that typically utilize the same space, such as Wireless Local Area Network (WLAN) devices operating in accordance with one of the IEEE 802.11x communication protocols (so-called “Wi-Fi” devices) or other wired or wireless devices sharing the same Internet connection in a user's residence or office building. The unmanaged sharing of common backhaul resources may lead to various throughput and/or data integrity problems for all devices.
The following presents a simplified summary of one or more aspects in order to provide a basic understanding of such aspects. This summary is not an extensive overview of all contemplated aspects, and is intended to neither identify key or critical elements of all aspects not delineate the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as a prelude to the more detailed description that is presented later.
The present disclosure presents an example method and apparatus for light active estimation mechanism for backhaul management at a small cell base station. For example, in an aspect, the present disclosure presents an example method that may include transmitting a first data packet from the small cell base station to a network entity, receiving a second data packet from the network entity in response to the transmission, calculating a time delay between the transmitting of the first data packet and the receiving of the second data packet, and determining whether or not a backhaul of the small cell base station is congested based on the calculated time delay.
Additionally, the present disclosure presents an example apparatus for light active estimation mechanism for backhaul management at a small cell base station that may include means for transmitting a first data packet from the small cell base station to a network entity, means for receiving a second data packet from the network entity in response to the transmission, means for calculating a time delay between the transmitting of the first data packet and the receiving of the second data packet, and means for determining whether or not a backhaul of the small cell base station is congested based on the calculated time delay.
In a further aspect, the present disclosure presents a non-transitory computer readable medium for light active estimation mechanism for backhaul management at a small cell base station comprising code that, when executed by a processor or processing system included within the small cell base station, cause the small cell base station to transmit a first data packet from the small cell base station to a network entity, receive a second data packet from the network entity in response to the transmission, calculate a time delay between the transmitting of the first data packet and the receiving of the second data packet, and determine whether or not a backhaul of the small cell base station is congested based on the calculated time delay.
Furthermore, in an aspect, the present disclosure presents an example apparatus for a light active estimation mechanism for backhaul management at a small cell base station, that may include a data packet transmitter to transmit a first data packet from the small cell base station to a network entity, a data packet receiver to receive a second data packet from the network entity in response to the transmission, a time delay calculator to calculate a time delay between the transmitting of the first data packet and the receiving of the second data packet, and a backhaul congestion determiner to determine whether or not a backhaul of the small cell base station is congested based on the calculated time delay.
To the accomplishment of the foregoing and related ends, the one or more aspects comprise the features hereinafter fully described and particularly pointed out in the claims. The following description and the annexed drawings set forth in detail certain illustrative features of the one or more aspects. These features are indicative, however, of but a few of the various ways in which the principles of various aspects may be employed, and this description is intended to include all such aspects and their equivalents.
The detailed description set forth below in connection with the appended drawings is intended as a description of various configurations and is not intended to represent the only configurations in which the concepts described herein may be practiced. The detailed description includes specific details for the purpose of providing a thorough understanding of various concepts. However, it will be apparent to those skilled in the art that these concepts may be practiced without these specific details. In some instances, well known structures and components are shown in block diagram form in order to avoid obscuring such concepts.
The present disclosure presents a method and apparatus for of light active estimation mechanism for backhaul management at a small cell base station, that includes transmitting a first data packet from the small cell base station to a network entity, receiving a second data packet from the network entity in response to the transmission, calculating a time delay between the transmitting of the first data packet and the receiving of the second data packet, and determining whether or not a backhaul of the small cell base station is congested based on the calculated time delay.
As used herein, the term “small cell” may refer to an access point or to a corresponding coverage area of the access point, where the access point in this case has a relatively low transmit power or relatively small coverage as compared to, for example, the transmit power or coverage area of a macro network based station or macro cell. For instance, a macro cell may cover a relatively large geographic area, such as, but not limited to, several kilometers in radius. In contrast, a small cell may cover a relatively small geographic area, such as, but not limited to, a home, a building, or a floor of a building. As such, a small cell may include, but is not limited to, an apparatus such as a base station (BS), an access point, a femto node, a femtocell, a pico node, a micro node, a wireless relay station, a Node B, evolved Node B (eNB), home Node B (HNB) or home evolved Node B (HeNB). Therefore, the term “small cell,” as used herein, refers to a relatively low transmit power and/or a relatively small coverage area cell as compared to a macro cell.
Each user device 106 may communicate with one or more of the base stations 104 on a downlink (DL) and/or an uplink (UL). In general, a DL is a communication link from a base station to a user device, while an UL is a communication link from a user device to a base station. The base stations 104 may be interconnected by appropriate wired or wireless interfaces allowing them to communicate with each other and/or other network equipment. Accordingly, each user device 106 may also communicate with another user device 106 through one or more of the base stations 104. For example, the user device 106J may communicate with the user device 106H in the following manner: the user device 106J may communicate with the base station 104D, the base station 104D may then communicate with the base station 104B, and the base station 104B may then communicate with the user device 106H, allowing communication to be established between the user device 106J and the user device 106H.
The wireless communication network 100 may provide service over a large geographic region. For example, the cells 102A-102G may cover a few blocks within a neighborhood or several square miles in a rural environment. In some systems, each cell may be further divided into one or more sectors (not shown). In addition, the base stations 104 may provide the user devices 106 access within their respective coverage areas to other communication networks, such as the Internet or another cellular network. Each user device 106 may be a wireless communication device (e.g., a mobile phone, router, personal computer, server, etc.) used by a user to send and/or receive voice and/or data over a communications network, and may be alternatively referred to as an Access Terminal (AT), a Mobile Station (MS), a User Equipment (UE), etc. In the example shown in
For their wireless air interfaces, each base station 104 may operate according to one of several Radio Access Technologies (RATs) depending on the network in which it is deployed, and may be alternatively referred to as a NodeB, evolved NodeB (eNB), etc. These networks may include, for example, Code Division Multiple Access (CDMA) networks, Time Division Multiple Access (TDMA) networks, Frequency Division Multiple Access (FDMA) networks, Orthogonal FDMA (OFDMA) networks, Single-Carrier FDMA (SC-FDMA) networks, and so on. The terms “network” and “system” are often used interchangeably. A CDMA network may implement a RAT such as Universal Terrestrial Radio Access (UTRA), cdma2000, etc. UTRA includes Wideband-CDMA (W-CDMA) and Low Chip Rate (LCR). cdma2000 covers IS-2000, IS-95 and IS-856 standards. A TDMA network may implement a RAT such as Global System for Mobile Communications (GSM). An OFDMA network may implement a RAT such as Evolved UTRA (E-UTRA), IEEE 802.11, IEEE 802.16, IEEE 802.20, Flash-OFDM®, etc. UTRA, E-UTRA, and GSM are part of Universal Mobile Telecommunication System (UMTS). One example of such a network is the UMTS Terrestrial Radio Access Network (UTRAN). The UTRAN is the radio access network (RAN) defined as a part of the Universal Mobile Telecommunications System (UMTS), a third generation (3G) mobile phone technology supported by the 3rd Generation Partnership Project (3GPP). The UMTS, which is the successor to Global System for Mobile Communications (GSM) technologies, currently supports various air interface standards, such as Wideband-Code Division Multiple Access (W-CDMA), Time Division-Code Division Multiple Access (TD-CDMA), and Time Division-Synchronous Code Division Multiple Access (TD-SCDMA). The UMTS also supports enhanced 3G data communications protocols, such as High Speed Packet Access (HSPA), which provides higher data transfer speeds and capacity to associated UMTS networks.
These multiple access technologies have been adopted in various telecommunication standards to provide a common protocol that enables different wireless devices to communicate on a municipal, national, regional, and even global level. An example of an emerging telecommunication standard is Long Term Evolution (LTE). LTE is a set of enhancements to the Universal Mobile Telecommunications System (UMTS) mobile standard promulgated by Third Generation Partnership Project (3GPP). It is designed to better support mobile broadband Internet access by improving spectral efficiency, lowering costs, improving services, making use of new spectrum, and better integrating with other open standards using OFDMA on the downlink (DL), SC-FDMA on the uplink (UL), and multiple-input multiple-output (MIMO) antenna technology. However, as the demand for mobile broadband access continues to increase, there exists a need for further improvements in LTE technology. Preferably, these improvements should be applicable to other multi-access technologies and the telecommunication standards that employ these technologies.
Long Term Evolution (LTE) is a release of UMTS that uses E-UTRA. UTRA, E-UTRA, GSM, UMTS, and LTE are described in documents from an organization named “3rd Generation Partnership Project” (3GPP). cdma2000 is described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2).
In cellular networks, macro base stations (or macro cells or conventional base stations) provide connectivity and coverage to a large number of users over a certain geographical area. A macro cell network deployment is carefully planned, designed, and implemented to offer good coverage over the geographical region. Even such careful planning, however, cannot fully accommodate channel characteristics such as fading, multipath, shadowing, etc., especially in indoor environments. Indoor users therefore often face coverage issues (e.g., call outages and quality degradation) resulting in poor user experience. Further, macro cell capacity is upper-bounded by physical and technological factors.
Thus, as discussed above, small cell base stations may be used to provide significant capacity growth, in-building coverage, and in some cases different services than macro cells operating alone, thereby facilitating a more robust user experience.
In
Turning to the illustrated connections in more detail, user equipment 220 may generate and transmit a message via a wireless link to the macro cell base station 205, the message including information related to various types of communication (e.g., voice, data, multimedia services, etc.). User equipment 222 may similarly communicate with small cell base station 210 via a wireless link, and user equipment 221 may similarly communicate with small cell base station 212 via a wireless link. The macro cell base station 205 may also communicate with a corresponding wide area or external network 240 (e.g., the Internet), via a wired link or via a wireless link, while small cell base stations 210 and/or 212 may also similarly communicate with network 240, via their own wired or wireless links. For example, small cell base stations 210 and/or 212 may communicate with network 240 by way of an Internet Protocol (IP) connection, such as via a Digital Subscriber Line (DSL, e.g., including Asymmetric DSL (ADSL), High Data Rate DSL (HDSL), Very High Speed DSL (VDSL), etc.), a TV cable carrying IP traffic, a Broadband over Power Line (BPL) connection, an Optical Fiber (OF) cable, or some other link. This connection may utilize the existing backhaul infrastructure provided by, for example, an ISP for the residential home or office building in which small cells 210 and 212 are installed, and may accordingly be shared among other devices operating in the same environment, such as Wireless Local Area Network (WLAN) devices operating in accordance with one of the IEEE 802.11x communication protocols (so-called “Wi-Fi” devices) or other wired or wireless devices sharing the same Internet connection in a user's residence or office building.
The network 240 may comprise any type of electronically connected group of computers and/or devices, including, for example, the following networks: Internet, Intranet, Local Area Networks (LANs), or Wide Area Networks (WANs). In addition, the connectivity to the network may be, for example, by remote modem, Ethernet (IEEE 802.3), Token Ring (IEEE 802.5), Fiber Distributed Datalink Interface (FDDI) Asynchronous Transfer Mode (ATM), Wireless Ethernet (IEEE 802.11), Bluetooth (IEEE 802.15.1), or some other connection. As used herein, the network 240 includes network variations such as the public Internet, a private network within the Internet, a secure network within the Internet, a private network, a public network, a value-added network, an intranet, and the like. In certain systems, the network 240 may also comprise a Virtual Private Network (VPN).
Accordingly, it will be appreciated that macro cell base station 205 and/or either or both of small cell base stations 210 and 212 may be connected to network 240 using any of a multitude of devices or methods. These connections may be referred to as the “backbone” or the “backhaul” of the network, and may in some implementations be used to manage and coordinate communications between macro cell base station 205, small cell base station 210, and/or small cell base station 212. In this way, depending on the current location of user equipment 222, for example, user equipment 222 may access the communication network 240 by macro cell base station 205 or by small cell base station 210.
In an aspect, a small cell base station (or a small cell) 320 is installed in user residence 304 and serves one or more nearby user equipments (UE) 322 as described above. The small cell base station 320 via its connection to home router 302 and shared backhaul link 310 may provide access to Internet 306 and core network 316. Since the backhaul link 310 is shared between the traffic managed by small cell 320 (e.g., native traffic) and traffic generated by other devices that home router 302 may be serving (e.g., cross traffic), there is a potential for congestion of uplink (UL) traffic, down link (DL) traffic, and/or both, with varying degrees of impact on the performance of the small cell and/or other devices sharing the backhaul link 310.
Accordingly, improved backhaul aware load management for small cell base stations operating in an increasingly crowded communication environment is needed. In an aspect, small cell base station 320 may be configured to include a backhaul-aware load management (BALM) component 324 operable to mitigate congestion on backhaul link 310. The operation of BALM component 324 may enable small cell base station 320 to determine various backhaul characteristics, for example, sustainable throughput, and corresponding delay and jitter variations, loss, etc., to identify backhaul congestion and/or take appropriate remedial actions. For example, in an aspect, when congestion is present, operation of BALM component 324 may enable small cell base station 320 via its radio resource management (RRM) module to offload one or more UEs 322 to a macro cell base station or otherwise reduce the coverage area of small cell base station 320 in order to reduce the number of UEs 322 being served. In an additional aspect, when congestion is present, operation of BALM component 324 may enable small cell base station 320 via its RRM module to offload one or more low throughput devices to a macro cell base station and/or reduce the coverage area of small cell base station 320 by lowering a pilot channel signal strength in order to reduce the number of UEs 322 being served. In an additional or optional aspect, operation of BALM component 324 may enable small cell base station 320 to limit the data rate of certain flows that are not backhaul-limited (e.g., by changing a video encoding rate). In a further additional or optional aspect, operation of BALM component 324 may enable small cell base station 320 to alert the user of one of the UEs 322 to enable the user of the UE to choose one of the above-noted actions and control the operation of the small cell. In an additional or optional aspect, the user of the UE may be alerted via a graphical user interface (GUI) to allow the user of the UE to choose one of the above-noted actions as described above.
Referring in more detail to
In an aspect, if it is determined that the existing throughput is not sufficient (‘no’ at decision 402), the small cell base station via operation of BALM component 324 checks whether it is over-the-air (OTA) capacity that is limiting the throughput (decision 404). If it is determined that the OTA capacity is limiting the throughput (‘yes’ at decision 404), the small cell base station via operation of BALM component 324 may take remedial actions to relieve the congestion on its air link, e.g., marking the UE as a candidate for handout to, e.g., a macro cell base station (block 406). In an alternate aspect, if it is determined that it is not the OTA capacity that is limiting the throughput (‘no’ at decision 404), the small cell base station via operation of BALM component 324 may perform a per-user rate shaping procedure and determine if other UEs being served by the small cell base station are limiting backhaul throughput (decision 408). In an additional aspect, if it is determined that other UEs being served by the small cell base station are limiting the backhaul throughput (‘yes’ at decision 408), the small cell base station via operation of BALM component 324 may take remedial actions, e.g., marking the user equipment as a candidate for handout to a macro cell base station (block 406).
In an aspect, if it is determined that the other UEs being served by the small cell base station are not limiting the backhaul throughput (‘no’ at decision 408), the small cell base station via operation of BALM component 324 may perform a light active estimation procedure (for example, estimation of backhaul state using actively-induced packets with small overhead or naturally-induced/occurring packets whose statistical characteristics make them a good replacement for actively-induced packets for light active estimation, which are typically used to directly measure backhaul latency and loss) to determine if the Internet service provider (ISP) queue is fully utilized (decision 410). If it is determined that the ISP queue does not appear to be full (‘no’ at decision 410), there may be no backhaul capacity problem and the small cell base station via operation of BALM component 324 may revert to performing light passive estimation monitoring as appropriate, as described above. In an alternative aspect, if it is determined that the ISP queue does appear to be full (‘yes’ at decision 410), there may be a backhaul capacity problem and the small cell base station via operation of BALM component 324 may further perform a heavy active estimation procedure (e.g., estimation of backhaul state using actively-induced packets with potentially high overhead, or naturally-induced/occurring packets whose statistical characteristics make them a good replacement for actively-induced packets for heavy active estimation, which are typically used to directly measure throughput) to determine if the throughput is being limited by congestion at the Internet peer with which the UE is communicating, rather than by the backhaul link itself (decision 412).
In an aspect, if it is determined that throughput is not being limited by congestion at the Internet peer with which the UE is communicating (‘no’ at decision 412), the small cell base station via operation of BALM component 324 may determine that there is a backhaul capacity problem and may take remedial actions, e.g., marking the UE as a candidate for handout to a macro cell base station (block 406). In an alternative aspect, if it is determined that the throughput is being limited by congestion at the Internet peer with which the UE is communicating (‘no’ at decision 412), there may be no backhaul capacity problem and the small cell base station via operation of BALM component 324 may revert to performing light passive estimation monitoring as appropriate, as described above.
In an aspect, in order to optimize BALM component 324 and the different BALM related procedures in
In an aspect, at block 510, methodology 500 may include transmitting a first data packet from the small cell base station to a network entity. For example, in an aspect, small cell base station 320 and/or BALM component 324 may include a specially programmed processor module, or a processor executing specially programmed code stored in a memory, to transmit a data packet (e.g., a first data packet) from small cell base station 320 to network entity 317. In an aspect, network entity 317 may be a remote server located within mobile operator core network 316. In an additional or optional aspect, e.g., in an aspect of self sampling, network entity 317 may be small cell base station 320. In a further additional or optional aspect, e.g., in an aspect of peer sampling, network entity 317 may be incorporated into a remote small cell base station.
In an aspect, small cell base station 320 and/or BALM component 324 may transmit a packet that may be a transmission control protocol (TCP) handshake packet that may include TCP handshake signaling, e.g., a synchronize (SYN) packet. In an additional or optional aspect, the packet transmitted from small cell base station 320 may be a hypertext transfer protocol (HTTP) GET command requesting a file. In an additional aspect, small cell base station 320 and/or BALM component 324 may transmit a packet at regular or irregular intervals and/or periodically according to a sampling schedule.
For example, small cells can be deployed for incremental capacity growth, richer user experience, in-building or other specific geographic coverage, and/or the like. The small cell base stations may be connected to the Internet and/or a mobile operator's network via a digital subscriber line (DSL) router or a cable modem, for example, often utilizing the existing backhaul infrastructure provided by an Internet Service Provider (ISP) for the residential home or office building in which the small cell base station is installed.
In an aspect, at block 520, methodology 500 may include receiving a second data packet from the network entity in response to the transmitting. For example, in an aspect, small cell base station 320 and/or BALM component 324 may include a specially programmed processor module, or a processor executing specially programmed code stored in a memory, to receive a data packet (e.g., a second data packet) from network entity 317 in response to the transmitting of the data packet (e.g., the first data packet) from small cell base station 320 to network entity 317.
In an aspect, small cell base station 320 and/or BALM component 324 may receive a packet (e.g., second data packet) which may be a TCP handshake response packet that may include TCP handshake signaling, e.g., a SYN packet or a reset (RST) packet. In an additional or optional aspect, the packet received may be a HTTP response that includes the requested file.
In an aspect, at block 530, methodology 500 may include calculating a time delay between the transmitting of the first data packet and the receiving of the second data packet. For example, in an aspect, small cell base station 320 and/or BALM component 324 may include a specially programmed processor module, or a processor executing specially programmed code stored in a memory, to calculate a time delay between the transmitting of the first data packet from small cell base station 320 (e.g., to network entity 317) and the receiving of the second data packet at the small cell base station (e.g., from the network entity).
In an aspect, at block 540, methodology 500 may include determining whether or not a backhaul of the small cell base station is congested based on the calculated time delay. For example, in an aspect, small cell base station 320 and/or BALM component 324 may include a specially programmed processor module, or a processor executing specially programmed code stored in a memory, to determine whether or not a backhaul of small cell base station 320 is congested based on the calculated time delay.
For example, small cell base station 320 and/or BALM component 324 may determine whether or not the backhaul is congested based on the calculated time delay. In an aspect, determining whether or not the backhaul is congested may include determining whether or not a first distance metric (e.g., d(x, yempty)) between the calculated time delay and a first sample time delay (e.g., yempty) determined from a calibration procedure is greater than a multiple (e.g., γ) of a second distance metric (e.g., d(x, yfull)) between the calculated time delay and a second sample time delay (e.g., yfull) determined from the calibration procedure.
In an optional aspect, if small cell base station 320 and/or BALM component 324 determines that the backhaul is congested, small cell base station 320 and/or BALM component 324 may trigger a heavy active estimation procedure performed at 412 of
In an optional aspect, if small cell base station 320 and/or BALM component 324 determines that the backhaul is not congested, methodology 500 returns to block 510 and methodology 500 begins again.
In an aspect, light active peer 620 may respond to small cell base station 610 with an acknowledgement message (e.g., TCP ACK) which may also include a TCP SYN/RST message. For example, in an aspect, sample time delay using slim-RTT is the elapsed time from the time the small cell base station 610 sends the SYN message to the time small cell base station 610 receives the ACK message containing SYN/RST message.
In an aspect, fat-RTT may be used when slim-RTT statistics are not indicative of congestion, for example, when ISP 308 in
In an additional aspect of a fat-RTT sampling procedure, small cell base station 710 may send a HTTP GET message to light active peer 720 requesting some file. The light active peer 720 responds with an ACK and transmits a HTTP response (e.g. the requested file). Upon receiving the file, small cell base station 710 sends an ACK to the light active peer 720, followed by a TCP FIN message. The light active peer 720 then sends a TCP FIN message and an ACK, and the communication session ends. As shown in
In an aspect, various functions may be used to determine which packets should be sampled for the light active estimation procedure. For example, a function of light active estimation samples may be a cumulative distribution function (CDF) with a tail of some percentage x %, e.g., 90% or 50%. In an additional or optional aspect, the x % tail may be determined at calibration time. For example, the percentage could be determined based on a function, e.g., argminx of var (Full_Queue-x %−Empty_Queue-x %), where the “Queue” is the ISP queue. Another example function of light active estimation samples is a vector of predetermined CDF points. However, this is simply a generalization of the cumulative distribution function tail.
In an aspect, the light active estimation procedure may sample TCP packets and determine the corresponding sample time delay at various rates. The sampling rate may vary depending on the expected presence of cross traffic, which may be based on the time of day and possibly calibrated, and/or the number of observed clients connected to the small cell base station 320 in
In an aspect, the sample time delay collecting process may be induced or natural. For example, the collecting process may be induced by sending the TCP probes described above. The induced sample time delays may be generated from fat-RTT, slim-RTT, and/or time stamping, as described above. Moreover, none of these may require initiation and termination of TCP flows for each sample, but rather, may be achieved within the confines of a single TCP flow. For example, a file transfer protocol (ftp) client may pretend to upload a file, and while releasing TCP packets one at a time, can observe the RTT from the time of the ACK to the release packets. If such a probing packet or the response packet is lost/dropped, then the packet loss statistics may be used as for RTT. For example, if a TCP SYN message or a response to a TCP SYN message is lost, then the corresponding entry for the RTT would be assigned a known high value.
In an aspect, the collecting process can be “natural” by observing naturally occurring time differences of packets received from specific light active peers/servers. For example, the time differences may be determined from TCP handshakes, from servers implementing TCP time stamping, etc. The specific servers may be specified in the system configuration, or determined from observations of minimal congestion occurrence, which may be correlated with the induced samples.
In an aspect, small cell base station 320 in
In an aspect, to avoid interfering with other communications during self-sampling, the small cell base station 320 may reserve a port. The small cell base station 320 may reserve a port by opening a listening socket and reusing the port to which the socket listens, by opening a connection and reusing the local port for the connection, by configuring the network or changing the network so that no application accidentally listens on some port, or by being aware of which ports are in use and avoiding those ports.
In an additional or optional aspect, small cell base station 320 may perform peer-sampling. For example, small cell base station 320 may incorporate a sampling server. The sampling server can assist the light active estimation procedure of other small cell base stations and may report back the downlink time difference observations (e.g., of client uplink probes from clients of other small cell base stations) or be prompted to initiate uplink (e.g., downlink from the perspective of the other small cell base station 320's clients) probes.
In a further additional aspect, small cell base station 320 may also initiate light active estimation packet sampling with multiple servers (or peers), and take a vote between them. For example, small cell base station 320 may determine that there is congestion if it observes congestion with respect to all the servers/peers.
In an aspect, for example, based on the time delay estimate determined from the sampled packets, the light active estimation procedure can determine the congestion of the backhaul 310 in
In an aspect, a Distance A (e.g., Distanceempty or Distancefull) is a distance metric between x and yA (e.g., yempty or yfull), represented as d(x, yA). As an example, d(x, yA) may be an L-metric between vectors x and yA, represented as |W(x−yA)|L, where W is a weight matrix (e.g., non-zero diagonal of weights). When L is 1, this equation is the (sum of) the absolute value(s) of x and yA. When L is 2, this equation is the Euclidean distance between x and yA. As another example, d(x, yA) may be the Kolmogorov-Smirnoff distance between x and yA, represented as KS(x, yA). As yet another example, d(x, yA) may be the Kullback-Leibler divergence between x and yA, represented as KL(x, yA).
In an aspect, to determine which direction (i.e., uplink or downlink) is experiencing congestion, the uplink, downlink, and uplink plus downlink distances may be compared. This may be, but need not be, the same Distance metric as used above when determining congestion. In practice, the uplink congestion can be isolated from the downlink congestion based on the time delay, as the time delay in the presence of uplink congestion is typically much longer than the time delay in the presence of downlink congestion.
In some situations, small cell base station 320 may limit the data rate for certain clients because, for example, they are using excessive bandwidth. Small cell base station 320 may employ rate-limitation in either the uplink or the downlink direction, on top of any rate limitation that may occur upstream of the small cell base station 320's downlink or downstream of the small cell base station 320's uplink. Before probing the outer scheduler, the small cell base station 320 can check the utilization of the internal rate limiting component. If there is a limitation occurring at the internal rate-limiter, there is no need to probe to outer scheduler. That is, if the small cell base station 320 is limiting the rate for certain clients, there is no need to perform the light active estimation procedure.
In general, the small cell base station 800 and/or BALM component 324 includes various components for providing and processing services for the client devices 840. For example, the small cell base station 800 may include a transceiver 812 for wireless communication with the one or more of the clients 840 and a backhaul controller 814 for backhaul communications with other network devices, such as the router 830. These components may operate under the direction of a processor 816 in conjunction with memory 818, for example, all of which may be interconnected via a bus 820 or the like.
In addition and in accordance with the discussion above, the small cell base station 800 (similar to small cell base station 320) and/or BALM component 324 may also further include a data packet transmitter 822 for transmitting data packets from a small cell base station to a network entity, a data packet receiver 824 for receiving data packets from the network entity in response to the transmission, a time delay calculator 826 for calculating a time delay between the transmitting of the first data packet and the receiving of the second data packet, and a backhaul congestion determiner 828 for determining whether or not a backhaul of the small cell base station is congested based on the calculated time delay
For example, in an aspect, backhaul congestion determiner 828 may be configured to determine whether or not a first distance metric between the calculated time delay and a first sample time delay is greater than a multiple of a second distance metric between the calculated time delay and a second sample time delay. In an additional aspect, the first and the second sample time delays are determined from a calibration procedure.
In an additional aspect, backhaul congestion determiner 828 may be configured to determine whether or not a first distance metric between the calculated time delay and a first sample time delay is greater than a multiple of a second distance metric between the calculated time delay and a second sample time delay, wherein the first sample time delay includes a sample time delay when an internet service provider (ISP) queue is empty and the second sample time delay includes a sample time delay when the ISP queue is full.
In an optional aspect, small cell base station 800 and/or BALM component 324 may further include a handoff component 829 for handing off a user equipment (UE) served by the small cell base station to a macro cell base station when the backhaul is congested. It will be appreciated that in some designs one or more or all of these operations may be performed by or in conjunction with the processor 816 and memory 818.
At the device 910, traffic data for a number of data streams is provided from a data source 912 to a transmit (TX) data processor 914. Each data stream may then be transmitted over a respective transmit antenna.
The TX data processor 914 formats, codes, and interleaves the traffic data for each data stream based on a particular coding scheme selected for that data stream to provide coded data. The coded data for each data stream may be multiplexed with pilot data using OFDM techniques. The pilot data is typically a known data pattern that is processed in a known manner and may be used at the receiver system to estimate the channel response. The multiplexed pilot and coded data for each data stream is then modulated (i.e., symbol mapped) based on a particular modulation scheme (e.g., BPSK, QSPK, M-PSK, or M-QAM) selected for that data stream to provide modulation symbols. The data rate, coding, and modulation for each data stream may be determined by instructions performed by a processor 930. A data memory 932 may store program code, data, and other information used by the processor 930 or other components of the device 910.
The modulation symbols for all data streams are then provided to a TX MIMO processor 920, which may further process the modulation symbols (e.g., for OFDM). The TX MIMO processor 920 then provides NT modulation symbol streams to NT transceivers (XCVR) 922A through 922T. In some aspects, the TX MIMO processor 920 applies beam-forming weights to the symbols of the data streams and to the antenna from which the symbol is being transmitted.
Each transceiver 922 receives and processes a respective symbol stream to provide one or more analog signals, and further conditions (e.g., amplifies, filters, and upconverts) the analog signals to provide a modulated signal suitable for transmission over the MIMO channel. NT modulated signals from transceivers 922A through 922T are then transmitted from NT antennas 924A through 924T, respectively.
At the device 950, the transmitted modulated signals are received by NR antennas 952A through 952R and the received signal from each antenna 952 is provided to a respective transceiver (XCVR) 954A through 954R. Each transceiver 954 conditions (e.g., filters, amplifies, and down converts) a respective received signal, digitizes the conditioned signal to provide samples, and further processes the samples to provide a corresponding “received” symbol stream.
A receive (RX) data processor 960 then receives and processes the NR received symbol streams from NR transceivers 954 based on a particular receiver processing technique to provide NT “detected” symbol streams. The RX data processor 960 then demodulates, deinterleaves, and decodes each detected symbol stream to recover the traffic data for the data stream. The processing by the RX data processor 960 is complementary to that performed by the TX MIMO processor 920 and the TX data processor 914 at the device 910.
A processor 970 periodically determines which pre-coding matrix to use (discussed below). The processor 970 formulates a reverse link message comprising a matrix index portion and a rank value portion. A data memory 972 may store program code, data, and other information used by the processor 970 or other components of the device 950.
The reverse link message may comprise various types of information regarding the communication link and/or the received data stream. The reverse link message is then processed by a TX data processor 938, which also receives traffic data for a number of data streams from a data source 936, modulated by a modulator 980, conditioned by the transceivers 954A through 954R, and transmitted back to the device 910.
At the device 910, the modulated signals from the device 950 are received by the antennas 924, conditioned by the transceivers 922, demodulated by a demodulator (DEMOD) 940, and processed by a RX data processor 942 to extract the reverse link message transmitted by the device 950. The processor 930 then determines which pre-coding matrix to use for determining the beam-forming weights then processes the extracted message.
The functionality of the modules of
In addition, the components and functions represented by
In some aspects, an apparatus or any component of an apparatus may be configured to (or operable to or adapted to) provide functionality as taught herein. This may be achieved, for example: by manufacturing (e.g., fabricating) the apparatus or component so that it will provide the functionality; by programming the apparatus or component so that it will provide the functionality; or through the use of some other suitable implementation technique. As one example, an integrated circuit may be fabricated to provide the requisite functionality. As another example, an integrated circuit may be fabricated to support the requisite functionality and then configured (e.g., via programming) to provide the requisite functionality. As yet another example, a processor circuit may execute code to provide the requisite functionality.
Those of skill in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
Further, those of skill in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the aspects disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The methods, sequences and/or algorithms described in connection with the aspects disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor.
Accordingly, an aspect disclosed can include a computer readable media embodying a method for calibrating a small cell base station for management of a backhaul link to an ISP. Accordingly, the invention is not limited to illustrated examples and any means for performing the functionality described herein are included in aspects disclosed.
While the foregoing disclosure shows illustrative aspects disclosed, it should be noted that various changes and modifications could be made herein without departing from the scope of the invention as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the aspects described herein need not be performed in any particular order. Furthermore, although elements disclosed may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.
In accordance with various aspects of the disclosure, an element, or any portion of an element, or any combination of elements may be implemented with a “processing system” that includes one or more processors. Examples of processors include microprocessors, microcontrollers, digital signal processors (DSPs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), state machines, gated logic, discrete hardware circuits, and other suitable hardware configured to perform the various functionality described throughout this disclosure. One or more processors in the processing system may execute software. Software shall be construed broadly to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, executables, threads of execution, procedures, functions, etc., whether referred to as software, firmware, middleware, microcode, hardware description language, or otherwise. The software may reside on a computer-readable medium. The computer-readable medium may be a non-transitory computer-readable medium. A non-transitory computer-readable medium includes, by way of example, a magnetic storage device (e.g., hard disk, floppy disk, magnetic strip), an optical disk (e.g., compact disk (CD), digital versatile disk (DVD)), a smart card, a flash memory device (e.g., card, stick, key drive), random access memory (RAM), read only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), a register, a removable disk, and any other suitable medium for storing software and/or instructions that may be accessed and read by a computer.
The computer-readable medium may also include, by way of example, a carrier wave, a transmission line, and any other suitable medium for transmitting software and/or instructions that may be accessed and read by a computer. The computer-readable medium may be resident in the processing system, external to the processing system, or distributed across multiple entities including the processing system. The computer-readable medium may be embodied in a computer-program product. By way of example, a computer-program product may include a computer-readable medium in packaging materials. Those skilled in the art will recognize how best to implement the described functionality presented throughout this disclosure depending on the particular application and the overall design constraints imposed on the overall system.
It is to be understood that the specific order or hierarchy of steps in the methods disclosed is an illustration of exemplary processes. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the methods may be rearranged. The accompanying method claims present elements of the various steps in a sample order, and are not meant to be limited to the specific order or hierarchy presented unless specifically recited therein.
The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects. Thus, the claims are not intended to be limited to the aspects shown herein, but is to be accorded the full scope consistent with the language of the claims, wherein reference to an element in the singular is not intended to mean “one and only one” unless specifically so stated, but rather “one or more.” Unless specifically stated otherwise, the term “some” refers to one or more. A phrase referring to “at least one of” a list of items refers to any combination of those items, including single members. As an example, “at least one of: a, b, or c” is intended to cover: a; b; c; a and b; a and c; b and c; and a, b and c. All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are known or later come to be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the claims. Moreover, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the claims. No claim element is to be construed under the provisions of 35 U.S.C. §112, sixth paragraph, unless the element is expressly recited using the phrase “means for” or, in the case of a method claim, the element is recited using the phrase “step for.”
The present application for patent claims priority to U.S. Provisional Application No. 61/897,069, filed Oct. 29, 2013, entitled “Backhaul Estimation for Small Cells—Light Active Estimation,” U.S. Provisional Application No. 61/897,061, filed Oct. 29, 2013, entitled “Backhaul Estimation for Small Cells—Calibration,” U.S. Provisional Application No. 61/897,064, filed Oct. 29, 2013, entitled “Backhaul Aware Load Management for Small Cells—Passive Estimation,” U.S. Provisional Application No. 61/897,114, filed Oct. 29, 2013, entitled “Method and Apparatus for Backhaul Congestion Estimation Using Heavy Active Probing for Small Cells,” U.S. Provisional Application No. 61/897,098, filed Oct. 29, 2013, entitled “Apparatus and Method for Off-Loading User Equipment from a Small Cell,” U.S. Provisional Application No. 61/933,732, filed Jan. 30, 2014, entitled “Backhaul Management of a Small Cell” all assigned to the assignee hereof and hereby expressly incorporated by reference herein.
Number | Name | Date | Kind |
---|---|---|---|
5530700 | Tran et al. | Jun 1996 | A |
8160034 | Sarkar et al. | Apr 2012 | B1 |
8219094 | Huber et al. | Jul 2012 | B2 |
8363564 | Talley et al. | Jan 2013 | B1 |
8400921 | Grayson et al. | Mar 2013 | B2 |
8538450 | Zhang et al. | Sep 2013 | B2 |
8861477 | Goyal | Oct 2014 | B1 |
20020028675 | Schmutz et al. | Mar 2002 | A1 |
20040001467 | Cromer et al. | Jan 2004 | A1 |
20040064577 | Dahlin et al. | Apr 2004 | A1 |
20050059417 | Zhang et al. | Mar 2005 | A1 |
20060215574 | Padmanabhan et al. | Sep 2006 | A1 |
20060291479 | Sasson | Dec 2006 | A1 |
20070177510 | Natarajan et al. | Aug 2007 | A1 |
20090029645 | Leroudier | Jan 2009 | A1 |
20090088157 | Aaron | Apr 2009 | A1 |
20100027431 | Morrison et al. | Feb 2010 | A1 |
20100157825 | Anderlind et al. | Jun 2010 | A1 |
20100190509 | Davis | Jul 2010 | A1 |
20100271962 | Han et al. | Oct 2010 | A1 |
20110039564 | Johnstone et al. | Feb 2011 | A1 |
20110111753 | Vainikka et al. | May 2011 | A1 |
20110250891 | Zou et al. | Oct 2011 | A1 |
20110319071 | Beppler et al. | Dec 2011 | A1 |
20120021788 | Yavuz et al. | Jan 2012 | A1 |
20120106418 | Xhafa | May 2012 | A1 |
20120178483 | Rosenau | Jul 2012 | A1 |
20120218966 | Yamazaki | Aug 2012 | A1 |
20120264470 | Bajj et al. | Oct 2012 | A1 |
20120270553 | Ha | Oct 2012 | A1 |
20120324100 | Tomici et al. | Dec 2012 | A1 |
20120327779 | Gell et al. | Dec 2012 | A1 |
20130021933 | Kovvali et al. | Jan 2013 | A1 |
20130034043 | Yu et al. | Feb 2013 | A1 |
20130053048 | Garcia et al. | Feb 2013 | A1 |
20130084864 | Agrawal et al. | Apr 2013 | A1 |
20130194948 | Mallik et al. | Aug 2013 | A1 |
20130201959 | Guo et al. | Aug 2013 | A1 |
20130225167 | Tokgoz et al. | Aug 2013 | A1 |
20130225181 | Radulescu et al. | Aug 2013 | A1 |
20130231118 | Whinnett et al. | Sep 2013 | A1 |
20130286953 | Ye | Oct 2013 | A1 |
20140003230 | Mathur et al. | Jan 2014 | A1 |
20140022904 | Ahmad et al. | Jan 2014 | A1 |
20140047448 | Bishop | Feb 2014 | A1 |
20140064083 | Ray et al. | Mar 2014 | A1 |
20140066006 | Ray et al. | Mar 2014 | A1 |
20140073317 | Zhou et al. | Mar 2014 | A1 |
20140362688 | Zhang | Dec 2014 | A1 |
20150109940 | Okhravi et al. | Apr 2015 | A1 |
20150117197 | Radulescu et al. | Apr 2015 | A1 |
20150117206 | Radulescu et al. | Apr 2015 | A1 |
20150117208 | Radulescu et al. | Apr 2015 | A1 |
20150119042 | Radulescu et al. | Apr 2015 | A1 |
20150119046 | Radulescu | Apr 2015 | A1 |
20150207598 | Hua | Jul 2015 | A1 |
Number | Date | Country |
---|---|---|
103346986 | Oct 2013 | CN |
1367846 | Dec 2003 | EP |
2081324 | Jul 2009 | EP |
2 282 578 | Feb 2011 | EP |
2081324 | Jan 2013 | EP |
2 785 108 | Oct 2014 | EP |
WO-2009067297 | May 2009 | WO |
WO-2009105687 | Aug 2009 | WO |
WO-2009146726 | Dec 2009 | WO |
WO-2011018639 | Feb 2011 | WO |
WO-2012121656 | Sep 2012 | WO |
WO-2012145706 | Oct 2012 | WO |
WO-2013036906 | Mar 2013 | WO |
WO-2013040594 | Mar 2013 | WO |
WO-2013063609 | May 2013 | WO |
WO-2013079556 | Jun 2013 | WO |
WO-2013126848 | Aug 2013 | WO |
WO-2014000128 | Jan 2014 | WO |
WO-2014043665 | Mar 2014 | WO |
WO-2014053183 | Apr 2014 | WO |
Entry |
---|
International Search Report and Written Opinion—PCT/US2014/062747—ISA/EPO—Feb. 18, 2015. (12 total pages). |
International Search Report and Written Opinion—PCT/US2014/062742—ISA/EPO—Feb. 5, 2015. (15 total pages). |
QUALCOMM: “Neighborhood Small Cells & UltraSON Open for LTE”, Jul. 18, 2013 (Jul. 18, 2013), XP055162319. |
QUALCOMM: “Small Cells & UltraSON™”, Apr. 17, 2014 (Apr. 17, 2014), XP055161743, p. 18. |
Wang Z., et al., “Eliminating Periodic Packet Losses in the 4.3-Tahoe BSD TCP Congestion Control Algorithm”, ACM SIGCOMM Computer Communication Review, ACM, New York, NY, US, vol. 22, No. 2, Apr. 1, 1992 (Apr. 1, 1992), pp. 9-13, XP000271274, ISSN: 0146-4833, DOI: 10.1145/141800.141801. |
Becvar Z., et al., “Adaptive Hysteresis Margin for Handover in Femtocell Networks,” IEEE Department of Telecommunication Engineering, Sep. 2010, pp. 256-261. |
International Search Report and Written Opinion—PCT/US2014/062744—ISA/EPO—Jan. 26, 2015. (15 total pages). |
Number | Date | Country | |
---|---|---|---|
20150117207 A1 | Apr 2015 | US |
Number | Date | Country | |
---|---|---|---|
61897069 | Oct 2013 | US | |
61897061 | Oct 2013 | US | |
61897064 | Oct 2013 | US | |
61897114 | Oct 2013 | US | |
61897098 | Oct 2013 | US | |
61933732 | Jan 2014 | US |