GB2493504A - Inducing data flow control based on receiver buffer occupancy - Google Patents

Inducing data flow control based on receiver buffer occupancy Download PDF

Info

Publication number
GB2493504A
GB2493504A GB1112734.7A GB201112734A GB2493504A GB 2493504 A GB2493504 A GB 2493504A GB 201112734 A GB201112734 A GB 201112734A GB 2493504 A GB2493504 A GB 2493504A
Authority
GB
United Kingdom
Prior art keywords
text
communication device
information
buffer
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB1112734.7A
Other versions
GB201112734D0 (en
GB2493504B (en
Inventor
Fei Tong
Andrei Popescu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Technologies International Ltd
Original Assignee
Cambridge Silicon Radio Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cambridge Silicon Radio Ltd filed Critical Cambridge Silicon Radio Ltd
Priority to GB1112734.7A priority Critical patent/GB2493504B/en
Publication of GB201112734D0 publication Critical patent/GB201112734D0/en
Priority to US13/547,348 priority patent/US8964557B2/en
Priority to DE102012014650A priority patent/DE102012014650A1/en
Publication of GB2493504A publication Critical patent/GB2493504A/en
Application granted granted Critical
Publication of GB2493504B publication Critical patent/GB2493504B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/04Registration at HLR or HSS [Home Subscriber Server]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • H04W28/22Negotiating communication rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/08Access point devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Communication Control (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A method of operating a receiver comprises receiving data from a transmitter device via a communications link 601 and generating information in dependence on the capacity of a receiver buffer to accommodate the data 602. The information imitates a change in a capability or performance of the receiver and/or link 603, 604 and is sent to the transmitting device 605 to induce a change in its transmission rate. For example, if the rate of data arrival exceeds the rate of output from the buffer, then the receiver sends information comprising a signal to noise ratio (SNR) that imitates degraded conditions. This causes the transmitter to reduce its transmission rate. Alternatively the information could relate to a modulation and/or coding capability of the receiver. In this way, the receiver uses existing features of a communications protocol to deceive the transmitter into implementing flow control. The communications link may be wireless.

Description

INTELLECTUAL
*. . PROPERTY OFFICE Applicalion No. GB1112734.7 RTM Dale:1 November 2012 The following terms are registered trademarks and should be read as such wherever they occur in this document: Wi-H Intellectual Properly Office is an operaling name of Ihe Patent Office www.ipo.gov.uk Data flow control The present invention relates to devices, methods and computer programs for controlling the rate of transmitted data, The evolution of IEEE 802.11 (also known as "Wi-Fi") standards provides the physical layer (PHY) with ever-increasing throughput. For instance, IEEE 802.11n provides a maximum throughput of 600 Mbps. Although the PHY is designed to cope with a high throughput, due to limited buffer size and processing power in the application layer in some devices (for example, in lowpower mobile devices), periods of high rate incoming data can cause buffer overflows (data loss) in the radio link layer in the receiving device.
A number of factors can contribute to surges in the data rate. For example, a sudden improvement of signal strength (e.g. when a station moves to a spot with line of sight channel) and a sudden reduction in traffic (creating a quiet' wireless medium) to other stations in the same coverage area.
The buffer overflows and associated data loss in the link layer can cause higher layer re-transmissions, which unnecessarily reduce the spectrum/power efficiency.
There are a number of methods in the art which try to implement data flow control to address the abovementioned problem. For example, mechanisms which involve power saving techniques are provided by the IEEE 802.11 standard which can be used to implement flow control. The station undergoing buffer overflow in the incoming queue will go into sleeping mode; this will then enforce the peer to stop sending packets (transmission gating). This mechanism introduces a signalling overhead when announcing that the station is going into sleep mode or waking up.
Moreover, the packet transmission gating will increase latency and reduce the data rate to an unnecessarily low level. Observing in a short period, this mechanism will artificially increase the traffic burstiness'.
Another prior art solution to the abovementioned problem involves dropping received frames. However, this does not necessarily solve the problem as the re-transmission can still cause buffer overflow if the data rate surge period is prolonged.
Thus there is a need for a mechanism that can help improve data flow control and provide a more efficient use of spectrum and power. Embodiments of the present invention can help provide devices, methods and computer programs for improved data flow control which, at least partially, can help overcome the abovementioned problems.
According to a first embodiment of the invention, there is provided a communication device capable of receiving data from a transmitting device via a communications link, the communication device comprising a buffer and being capable of generating, in dependence on a capacity of the buffer to accommodate data received over the communications link, information for inducing the transmitting device to change its data transmission rate, wherein the information imitates a change in a capability of the communication device to receive data via the communications link.
The information may be such as to control communication between the communication device and the transmitting device in accordance with a link layer protocol.
The communication device may be configured to operate in accordance with a radio protocol or the link layer protocol, wherein the information controls communication between the communication device and the transmitting device in accordance with the radio or link layer protocol.
In accordance with the protocol, the information may be configured for controlling quality of service or beamforming.
The information may be dependent on a modulation and/or coding capability of the communication device.
The information may be dependent on a modulation and/or coding scheme.
The change in the capability can comprise increasing or decreasing the modulation and/or coding scheme.
The information may be dependent on a performance of the communication device and/or the communications link.
The information may be dependent on a signal to noise ratio of the communications link.
The change in the capability can comprise increasing or decreasing an indication of the signal to noise ratio.
The capacity of the buffer to accommodate data received over the communications link may be dependent on one or more of: data transmission rate of the transmitting device; input data rate at the buffer; output data rate at the buffer; and available space in the buffer.
The capacity of the buffer to accommodate data received over the communications link may be determined in dependence of predicting buffer overflow or uriderfiow.
The capacity of the buffer to accommodate data received over the communications link can be determined in dependence of comparing the data transmission rate and an or the output data rate to determine available buffer space.
The communication device can be configured such that: when the data transmission rate is greater than the output data rate, the information imitates a change in a capability of the communication device to induce a reduction in the data transmission rate; and when the data transmission rate is less than the output data rate, the information imitates a change in a capability of the communication device to induce an increase in the data transmission rate.
The communication device can be configured to send the information to the transmitting device.
The communications link can be wireless.
According to a second embodiment of the invention, there is provided a method of operating a receiver, the receiver comprising a buffer, the method comprising: receiving data from a transmitting device via a communications link; generating information in dependence on the capacity of the buffer to accommodate data received over the communications link, wherein the information imitates a change in a capability of the receiver to receive data via the communications link; and sending the information to the transmitting device, wherein the information induces the transmitting device to change its data transmission rate. A computer program for operating a receiver may be provided, the computer program comprising code means that, when executed by a computer, will cause the computer to carry out the steps described in the method.
For a better understanding of the present invention, reference is made by way of example to the following drawings, in which: Figure 1 shows a graph of PHY data rate verses SNR; Figure 2 shows the interaction between a transmitting communications device and a receiving communications device; Figure 3 shows a queue size trace; Figure 4 shows traces of TX data rate, host throughput and the difference in the rates; Figure 5 shows a trace of MCS feedback; Figure 6 shows an example of a process for implementing data flow control; and Figure 7 shows an example of a wireless network.
In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of some embodiments, However, it will be understood by persons skilled in the art that some embodiments may be practiced without these specific details. In the following, devices using the IEEE 802.lln and the IEEE 802.llac (currently in draft) standards will be used as an example to describe some embodiments of the present invention. The invention may be implemented by other types of devices that use other methods, standards or protocols for communication.
A communication device, for example a station (STA) or access point (AR), can receive data from a transmitting device, for example an AR or STA. The devices can communicate via a communications channel or link (for example a wireless medium) provided by the PHY. In the IEEE 802.lln standard and the IEEE 802.1 lac (draft), there are feedback mechanisms that can be utilised to provide a means for performing channel/link adaptation, i.e. adaptive modulation and coding (AMC). For a STA or AR responding to the feedback, there can be a correlation between link data rate and the feedback. This feedback based link adaptation can be used in a new way as a flow control mechanism. For example, when the capacity (i.e. the capability or condition) of the buffer to accommodate data received over a communications link changes, feedback sent to the transmitting device can be used to adjust the rate at which data is transmitted by the transmitting device. Thus, the rate at which data is transmitted by the transmitting device can be dependent on the capacity of the buffer. When the buffer has a lower capacity to accommodate received data, for example when a buffer overflow (which can be caused by excessive PHY data rate) condition is predicted or measured by a receiving device, feedback can be transmitted to the peer STA/AP to limit the incoming data rate.
The feedback mechanisms can be represented as information or data in parts of frames that are sent during communication between devices. By adjusting the information, which may be data values or parameters, it is possible to provide a flow control mechanism. Such information may not necessarily be associated with flow control but may instead be associated with other aspects of controlling communication between devices. However, such adjustments can be utilised to provide an efficient method of flow control. For example, information such as a SNR value that, according to a communications protocol, is used for controlling beamforming, can be utilised in a different way to implement flow control. The feedback mechanisms that could be used may be based on the performance or capability of the communications link and/or the performance or capability of the device receiving data. The information can be based on a characteristic or capacity or parameter or condition of the communication device and/or a property of the communications link.
The flow control mechanisms described herein can be implemented in devices that operate in accordance with a communications protocol, such as IEEE 802.11 n. The flow control mechanisms can use features of the communications protocol (which may not be associated with flow control according to the communications protocol) to implement flow control. A receiving device which carries out one of the flow control mechanisms described herein can implement flow control on any transmitting device which operates according to the same communications protocol. The receiving device can use features of the communications protocol (e.g. features that may not be associated with flow control according to the communications protocol) to deceive or manipulate the transmitting device into implementing flow control.
One of the feedback mechanisms that can be utilised is the signal-to-noise ratio (SNR) report sub-field inside the Channel State Information (CSI) report field (defined in IEEE 802.lln-2009 7.3.1.27, and expected to remain the same in the IEEE 802.llac standard). In the IEEE 802.lln standard, the CSI report field is used to calculate a beamforming feedback matrix for transmit beamforming. Each SNR report field (for a particular space-time stream) can be an 8 bit value, ranging from - 10dB to 53.75dB with 0.25 dB step. A relationship between SNR and PHY data rate can be established. This relationship can allow for appropriate SNR values to be calculated and sent back to the peer STA/AP for given PHY data rates.
According to the Shannon capacity equation, a direct relationship between SNR and PHY data rate can be established, i.e. a particular SNR can provide a maximum theoretical data rate. Using the Shannon capacity equation with back-off (adjustment to reflect realistic FEC coding) and a given transmission format defined in the PHY specification, the data rate vs. SNR relationship can be estimated using the following equation: T= I 1.7 log2(1+ 1O088fl-14.74, where y is the SNR in dB and T is the transmission rate in Mbps.
Alternatively, the data rate versus SNR relationship can be linearised to provide a simpler way to estimate the SNR value to correspond to a target incoming throughput. The linearised equation is as follows: T = 3.16 y-9,59, where y is the SNR in dA and T is the transmission rate fri Mbps.
Figure 1 shows a graph of the PHY data rate verses the SNR relationship based on both Shannon-capacity (denoted as Back-offed Shannon-Capacity) and linearised (Linear fitted) equations. The measured PHY data rate against SNR is also shown in Figure 1. The measurement result is included in the following table.
As shown in the table, values for the signal to noise ratio can be mapped on to values for the data transmission rate. The traces on the graph show that both schemes (Shannon-capacity and linearised) accurately estimate the measured data rate based on SNR. Thus it is possible to utilise the SNR feedback to provide a rate adaptation mechanism.
SNR 4.25 6.75 8.75 11.75 14,25 18.25 19.75 21 5.35 11.7 17.55 23.40 35.1 46.8 52.65 58.5 One way to implement this mechanism is that, when a buffer overflow condition is measured or predicted by a STA receiving data from an AR, the STA can determine an appropriate SNR value that imitates degraded radio conditions (e.g. as if there was interference on the communications link) and send the determined SNR value to the AR as part of the CSI report. This causes the AR to behave as if the radio conditions were degraded, which causes the AR to reduce its data transmission rate (in accordance with its communications protocol, for example, IEEE 802.lln). In other words, the AR behaves or functions as if the capability of the STA to receive data on the communications link is reduced and thus reduces its data transmission rate. This helps to prevent the loss of data as the incoming data rate at the buffer is reduced, thus reducing the possibility of buffer overflow.
Similarly, the STA may also imitate enhanced radio conditions when there is buffer underflow to increase the rate of flow of data from the AR. Thus, even if the actual radio conditions have not changed, by imitating a change in the radio conditions (e.g. degraded or enhanced radio conditions) the STA can control or induce a change in the rate of flow of data from the AR. Thus, a receiving device can be capable of generating information such that imitating a reduction in the SNR induces a reduction in the data transmission rate of a transmitting device and imitating an increase in the SNR induces an increase in the data transmission rate of a transmitting device.
Another feedback mechanism that can be utilised is the Modulation and Coding Scheme (MCS) Feedback and antenna selection command/data (MFB/ASELC) sub4ield contained in the high throughput (HT) control field (defined in IEEE 802.lln-2009 7.l.3.5a and IEEE 802.ll-l0/1361r3 for ilac). The HTcontrol field can be present in a control wrapper frame and in Quality of service (Q0S) Data and management frames. The MFB is a 7 bit field, which contains the maximum MCS a STAJAP can support. The MCS feedback part of the HT control field may not have been intended for flow control, but by imitating a change in the MCS it is possible to provide flow control. Thus a device can mimic the properties or capabilities of another device to provide flow control.
For single stream modulations with 20MHz channel bandwidth and normal guard interval, the following table shows the PHY data rate versus MCS index. The indices 8 and 9 in the table are extensions according to the 802.1 lac PHY draft specification (table 22-25 in IEEE 802.11-10/1361 r3) for the same bandwidth option.
The table can be further extended to support multiple spatial stream cases and other channel bandwidths, Using this table, it is possible to calculate the MCS index to achieve a target PHY data rate. As shown in the table, values for the modulation and coding index can be mapped on to values for the data transmission rate. The MFB feedback mechanism can provide a more explicit flow control than the SNR feedback.
MCSlndex 0 1 2 3 4 5 6 7 8 9 Rate 6.5 13.0 19.5 26.0 39.0 52.0 58.5 65.0 78.0 86.7 (Mbps) For example, when a buffer overflow condition is measured or predicted in a STA receiving data from an AR, the STA can determine an appropriate MCS value that imitates a reduction in the MCS that the receiving device can support and send the determined MCS value to the AR as part of the HT control field. This leads the AR to behave as if the modulation and/or coding and/or number of spatial channels supported by the STA had changed, which causes theAP to change its data transmission rate (in accordance with its communications protocol, for example, IEEE 802.lln). In other words, the AR can function as if the capability or capacity of the STA to receive data is reduced and thus reduces its data transmission rate. This helps to prevent the loss of data as the incoming data rate at the buffer is reduced, thus reducing the possibility of buffer overflow. Similarly, the STA may also imitate enhanced MCS capability when there is buffer underfiow, to increase the rate of flow of data from the AR. Thus, even if the actual MCS capability of the STA has not changed, by imitating a change in the MCS supported the STA can control or induce a change in the rate of flow of data from the AR. Thus, information based on a modulation and/or coding capability of the communication device can be used to imitate a change in the capability of the device to receive data. The communication device can be capable of generating information such that imitating a reduction in the MCS induces a reduction in the data transmission rate of a transmitting device and imitating an increase in the MCS induces an increase in the data transmission rate of a transmitting device.
The rate at which data is transmitted by a transmitting device can be based on the modulation and coding index or signal to noise ratio. Utilising either the SNR or MCS feedback, an appropriate feedback value can be calculated to set the PHY data rate as the target value. Such open-loop flow control may rely on an assumption that the feedback value to data rate relationship is known and that the peer STA/AP will respond to the feedback on the same basis. An alternative method that can be utilised is a close-loop control scheme, i.e. increasing the feedback SNR or MCS when the receiver desires a higher data rate from the transmitter and reducing the feedback SNR or MCS when the receiver desires a lower data rate from the transmitter. This alternative can be more practical in providing compatibility between devices from different vendors, where the transmitter's selection of a TX data rate based on feedback MCS or SNR may not be exactly known by the receiver.
Figure 2 illustrates an example of an interaction between a transmitting STA/AP (TX-STA) 21 and a receiving STA/AP (RX-STA) 22 in a close-loop control scheme. The TX-STA 21 sends a protocol data unit (PDU) 23 with a certain rate (defined as TX data rate) and responds to the feedback from RX-STA 22 by adjusting the MCS used in the transmission (which leads to an adjustment of the TX data rate). For simplicity, it is assumed that the RX-STA 22 correctly receives every PDU and delivers it to a queue (i.e. a buffer) 24 with limited size, in terms of number of PDUs and memory size. The RX-STA 22 processes the PDU 23 from the head of the queue 24 with a certain rate (defined as host throughput). When the queue 24 is full, no PDU can be added into the queue 24. The RX-STA 22 can monitor the flow of data, for example, by measuring the received PDU size and the transmission interval and can predict potential queue overflow by comparing the TX data rate and host throughput. Once a certain level of mismatch between TX data rate and host throughput is detected, the RX-STA 22 can send MCS feedback (for example, increasing or decreasing the MCS by one) to control the TX data rate. When the TX-STA 21 receives a new MCS feedback, it can use that MCS starting with the next transmission.
In this example, MCS feedback is utilised. However, MCS feedback can be equivalent to SNR feedback. For example, for a TX-STA that uses a link adaptation rule for selecting MCSs, an SNR to MCS mapping that is known to the RX-STA can be used.
The flow of data via the buffer can be determined by the RX-STA. This can help determine the capacity of the buffer to accommodate data received over the communications link, from which flow control can be implemented by generating and sending the appropriate information (e.g. a value of SNR or MCS). Thus the condition or state of the buffer can be determined for implementing flow control. The queue (or buffer) flow conditions can be predicted, as described in the above example. The data transmission rate of the TX-STA and the host throughput (i.e. the output data rate from the buffer, which may, for example, be determined by the rate at which the TX-STA can process data) may be known by the RX-STA. The RX-STA is capable of comparing the data transmission rate and the host throughput to determine the flow condition of the buffer. For example, if the data transmission rate is greater than the host throughput, then the RX-STA may be able to determine that the buffer queue is increasing, which can lead to buffer overflow, and thus it may send appropriate feedback to the TX-STA to reduce the data transmission rate. The rate at which the TX-STA transmits data may be different to the input data rate received at the buffer due to, for example, interference on the communications link.
Thus the RX-STA may determine (by measurement, for example) the input data rate at the buffer and compare it with the output data rate to determine the flow condition of the buffer, as described above. Additionally or alternatively, the RX-STA may determine the available space in the buffer. This can be done, for example, by measuring the amount of space in the buffer or, if the buffer size is known, by measuring the amount of data in the buffer. If the buffer size is known, the available space can be determined by measuring the input data rate and the output data rate from when the buffer starts receiving data. Determining or measuring the space in the buffer or comparing the data flow rates are methods that can be used to determine the capacity of the buffer to accommodate data received over a communications link. Determining the capacity of the buffer to accommodate data received over a communications link includes comparing the transmitted data rate or the input data rate and the host throughput (i.e. the output data rate) to help predict potential buffer overflow or underflow. The appropriate information (e.g. a value of SNR or MCS) can be calculated or generated in response to the capacity of the buffer to accommodate data to implement flow control, For example, the buffer may have an increased capacity to accommodate data when the rate at which data is output from the buffer is greater than at which it is input at the buffer.
The information (e.g. a value of SNR or MCS) can imitate a change in the capability of the RXSTA to receive data via the communications link. The information can be a value that indicates a capability or capacity of the RX-STA and/or the communications link. The information can be generated by the RX-STA.
The generated information can be sent to the TX-STA. The information may be generated once and sent once to imitate a change in the capability of the RX-STA to receive data via the communications link. Imitating a change in the capability of the RX-STA to receive data via the communications link can be achieved by sending the information once. The information may be sent in single data packet. For example, the information may be a SNR value that imitates a change in condition of the communications link (for example, degradation in the radio conditions). A single data packet comprising the SNR value can imitate a change in the capability of the RX-STA to receive data via the communications link. This allows the TX-STA to change its data transmission rate quickly and efficiently as the RX-STA is not required to send the information a multiple number of times to imitate a change in the capability of the RX-STA to receive data via the communications link. Also, the RX STA may not have to send the information a multiple number of times at a certain rate to imitate a change in the capability of the RXSTA to receive data via the communications link. Thus, the change in the capability of the RX-STA to receive data via the communications link can be known by the TX-STA as soon as it receives the information, rather than the TX-STA having to wait for multiple messages from the RX-STA to determine a change in the capability. The RX-STA and the TX-STA may operate according to a standardised protocol. The information may imitate a change in the capability of the RX-STA to receive data via the communications link by virtue of it being formatted in such a way as to represent an information field that is designated in the protocol to represent an indication of the capability or capacity of the RX-STA and/or the communications link. Preferably, the information imitates a net capability or capacity of the RX-STA and/or the communications link over time as opposed to an instantaneous capability or capacity in respect of a single message unit. The information may indicate capability or capacity through the transmission of a single message. Preferably, the link additionally supports an acknowledgement protocol whereby the RX-STA can transmit acknowledgement messages to acknowledge receipt of data, such acknowledgments being distinct from the said information.
In an example, traces to show the effects of feedback for a simulated interaction between a TX-STA and a RX-STA using the close-loop MCS feedback scheme are shown in Figures 3, 4 and 5. Figure 3 shows a trace of the queue status (queue size), Figure 4 shows the instantaneous TX data rate and host throughput and Figure 5 shows the MCS feedback.
From the traces in Figures 3, 4 and 5, it can be seen that flow control is taking effect. The initial MCS is set to maximum supported value to give a maximum TX data rate and the host throughput is 40Mbps. The initial IX/RX data rate difference causes the queue to build up. When the mismatch is detected, the RX-STA reduces the MCS index by one step at a time until the TX data rate-host throughput is matched. To maximize the PHY data rate, the RX-STA increases the MCS by one step at a time when it detects that the TX data rate is below the host throughput.
When the flow control becomes stable, an oscillation of MCS feedback is noticed as the quantisation of MCS may be too coarse to avoid the mismatch between instantaneous TX data rate and host throughput.
Using link adaptation feedback, flow control can be performed in a more elegant manner and achieve increment and decrement adjustment of the PHY data rate. Compared to frame dropping or other methods, the feedback scheme is more proactive and has better quantitative control. Combined with an over-flow prediction method, with high probability, unnecessary re-transmissions and buffer overflow can be avoided. Moreover, the feedback based flow control can help avoid an under-flow condition.
Figure 6 diagrammatically shows an exemplary process in which a receiving device (such as a SIN or AP) can provide a flow control mechanism.
At step 601, the receiving device receives data from a transmitting device.
The data can be received at a buffer and is queued to be processed by a processor.
The rate at which the data is received at the buffer (i.e. the input data rate) can be determined. The capacity of the buffer to receive or accommodate data can be determined by comparing the input data rate with the rate at which the processor processes the queued data (i.e. the output data rate or host throughput). The capacity of the buffer to receive or accommodate data can be determined by other methods, for example by determining the available buffer space.
At step 602, the capacity of the buffer to accommodate data is determined by comparing the input data rate and the output data rate. The capacity of the buffer to accommodate data can be determined by other methods as descr bed above. If the input data rate is greater than the output data rate, the process moves on to step 603. If the input data rate is less than the output data rate, the process moves on to step 604.
At step 603, information that imitates a reduction in the capability of the receiving device to receive data via a communications link is generated. This can help avoid loss of data due to a full buffer. At step 604, information that imitates an increase in the capability of the receiving device to receive data via a communications link is generated. This can help optimise the rate at which data is sent and received. The information generated can be an imitated change in the MCS or SNR value as described above. The process then moves on to step 605, from step 603 or 604.
At step 605, the imitated information can be sent to the transmitting device in the next scheduled transmission, which may depend on the type of information generated and the communications protocol. The transmitting device may then change or adjust its data transmission rate in accordance with the information received from the receiving device. The transmitting device may then maintain the changed or adjusted its data transmission rate until further such information is received.
The process may be repeated periodically, on a continuous basis, in response to changes in the buffer condition or in response to changes in the wireless network.
The process can help negate buffer overflow or underfiow caused by factors which cause a change in the PHY data rate or a change in the host throughput. For example, a mobile receiving device may move into a line-of-sight position or a closer position with respect to the transmitting device. This can Lead to an increase in the PHY data rate, which may be greater than the host throughput. The receiving device can help prevent buffer overflow (which can cause a loss in data) by implementing the above process. In another example, the host throughput may increase (for example, due to a fewer applications using the processor, leading to a greater availability of the processor), which may cause buffer underflow. The receiving device can help prevent buffer undertlow (which would be an inefficient use of resources) by implementing the above process.
Figure 7 is a block diagram that depicts a wireless network 700. The wireless network 700 comprises a computer system, such as a receiving device 701 upon which an embodiment of the invention may be implemented. Receiving device 701 includes a bus 702 or any other communication mechanism for communicating information, and a processor 703 coupled with bus 702 for processing information.
Receiving device 701 also includes a memory 704, such as a random access memory (RAM) or other dynamic storage device, coupled to bus 702 for storing information and instructions to be executed by processor 703. Memory 704 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 703. Memory 704 may further include a read only memory (ROM) or other static storage device for storing static information and instructions for processor 703. A storage device 705, such as a non-volatile storage chip, magnetic disk or optical disk, can be provided and coupled to bus 702 for storing information and instructions. A transmitting device 706 with similar features to the receiving device 701 can also be provided in the network 700.
The invention can be related to the use of the receiving device 701 and/or the transmitting device 706 for implementing the techniques described herein.
According to one embodiment of the invention, those techniques are performed by receiving device 701 in response to processor 703 executing one or more sequences of one or more instructions contained in memory 704. Such instructions may be read into memory 704 from another computer-readable medium, such as storage device 705. Execution of the sequences of instructions contained in memory 704 causes processor 703 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
Receiving device 701 and transmitting device 706 also includes a wireless communication interface 707 coupled to bus 702. Wireless communication interface 707 provides a two-way data communication coupling between the receiving device 701 and transmitting device 706 (and any other devices that may be pad of the wireless network 700). Receiving device 701 and transmitting device 706 can send/receive code or data to each other via a wireless communication interface 207 (which provides access to a wireless communications link or medium). The receiving device 701 and transmitting device 706 may communicate wirelessly using a wireless protocol such as IEEE 802.11.
The wireless communication interface 707 of the receiving device 701 and transmitting device 706 can comprise a buffer 708. The received data or code can be received at the input of the buffer. The output of the buffer may be coupled to the processor 703 via a bus 702. The processor 703 may process data that is output from the buffer 708.
In one example, the processor 703 of the receiving device 701 may determine the rate at which it processes data from the output of buffer 708 and compare the output rate to the rate at which data is received at the input of the buffer 708 to analyse the condition or capacity of the buffer. From the comparison, the processor may generate and send instructions to the wireless communication interface 707 of the receiving device 701 to send information that imitates a change in the capability of the receiving device 701 to receive data. This information is then sent to the transmitting device 706 via the wireless communications link. The transmitting device 706 then processes this information at its processor 703 and then, based on the information, sends instructions to its wireless communications interface 707 to adjust its data transmission rate accordingly.
The applicant hereby discloses in isolation each individual feature described herein and any combination of two or more such features, to the extent that such features or combinations are capable of being carried out based on the present specification as a whole in light of the common general knowledge of a person skilled in the art, irrespective of whether such features or combinations of features solve any problems discloses herein, and without limitation to the scope of the claims. The applicants indicate that aspects of the present invention may consist of any such feature or combination of features. In view of the foregoing description it will be evident to a person skilled in the art that various modifications may be made within the scope of the invention.

Claims (1)

  1. <claim-text>CLAIMS1. A communication device capable of receiving data from a transmitting device via a communications link, the communication device comprising a buffer and being capable of generating, in dependence on a capacity of the buffer to accommodate data received over the communications link, information for inducing the transmitting device to change its data transmission rate, wherein the information imitates a change in a capability of the communication device to receive data via the communications link.</claim-text> <claim-text>2. The communication device according to claim 1, wherein the information is such as to control communication between the communication device and the transmitting device in accordance with a link layer protocol.</claim-text> <claim-text>3. The communication device according to claim 1 or 2, wherein the communication device is configured to operate in accordance with a radio protocol or the link layer protocol, wherein the information controls communication between the communication device and the transmitting device in accordance with the radio or link layer protocol.</claim-text> <claim-text>4. The communication device according to claim 2 or 3, wherein, in accordance with the protocol, the information is configured for controlling quality of service or beamforming.</claim-text> <claim-text>5. The communication device according to any one of the above claims, wherein the information is dependent on a modulation and/or coding capability of the communication device.</claim-text> <claim-text>6. The communication device according to any one of the above claims, wherein the information is dependent on a modulation and/or coding scheme.</claim-text> <claim-text>7. The communication device according to claim 6, wherein the change in the capability comprises increasing or decreasing the modulation and/or coding scheme.</claim-text> <claim-text>8. The communication device according to any one of claims 1 to 4, wherein the information is dependent on a performance of the communication device and/or the communications link.</claim-text> <claim-text>9. The communication device according to any one of claims 1 to 4 or 8, wherein the information is dependent on a signal to noise ratio of the communications link.</claim-text> <claim-text>1O.The communication device according to claim 9, wherein the change in the capability comprises increasing or decreasing an indication of the signal to noise ratio.</claim-text> <claim-text>11. The communication device according to any one of the above claims, wherein the capacity of the buffer to accommodate data received over the communications link is dependent on one or more of: data transmission rate of the transmitting device; input data rate at the buffer; output data rate at the buffer; and available space in the buffer.</claim-text> <claim-text>12.The communication device according to any one of the above claims, wherein the capacity of the buffer to accommodate data received over the communications link is determined in dependence of predicting buffer overflow or underilow.</claim-text> <claim-text>13.The communication device according to any one of the above claims, wherein the capacity of the buffer to accommodate data received over the communications link is determined in dependence of comparing the data transmission rate and an or the output data rate to determine available buffer space.</claim-text> <claim-text>14.The communication device according to claim 13, wherein the communication device is configured such that: when the data transmission rate is greater than the output data rate, the information imitates a change in a capability of the communication device to induce a reduction in the data transmission rate; and when the data transmission rate is less than the output data rate, the information imitates a change in a capability of the communication device to induce an increase in the data transmission rate.</claim-text> <claim-text>15.The communication device according to any one of the above claims, wherein the communication device is configured to send the information to the transmitting device.</claim-text> <claim-text>16.The communication device according to any one of the above claims, wherein the communications link is wireless.</claim-text> <claim-text>17.A method of operating a receiver, the receiver comprising a buffer, the method comprising: receiving data from a transmitting device via a communications link; generating information in dependence on the capacity of the buffer to accommodate data received over the communications link, wherein the information imitates a change in a capability of the receiver to receive data via the communications link; and sending the information to the transmitting device, wherein the information induces the transmitting device to change its data transmission rate.</claim-text> <claim-text>18.A computer program for operating a receiver, the computer program comprising code means that, when executed by a computer, will cause the computer to carry out the steps in claim 17.</claim-text> <claim-text>1 9.A system substantially as herein described with reference to the accompanying drawings.</claim-text> <claim-text>20.A method substantially as herein described with reference to the accompanying drawings.</claim-text>
GB1112734.7A 2011-07-25 2011-07-25 Data flow control Expired - Fee Related GB2493504B (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
GB1112734.7A GB2493504B (en) 2011-07-25 2011-07-25 Data flow control
US13/547,348 US8964557B2 (en) 2011-07-25 2012-07-12 Data flow control
DE102012014650A DE102012014650A1 (en) 2011-07-25 2012-07-24 Flow Control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB1112734.7A GB2493504B (en) 2011-07-25 2011-07-25 Data flow control

Publications (3)

Publication Number Publication Date
GB201112734D0 GB201112734D0 (en) 2011-09-07
GB2493504A true GB2493504A (en) 2013-02-13
GB2493504B GB2493504B (en) 2017-11-29

Family

ID=44652247

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1112734.7A Expired - Fee Related GB2493504B (en) 2011-07-25 2011-07-25 Data flow control

Country Status (3)

Country Link
US (1) US8964557B2 (en)
DE (1) DE102012014650A1 (en)
GB (1) GB2493504B (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8792407B2 (en) * 2012-02-21 2014-07-29 Qualcomm Incorporated Wireless communication device power reduction method and apparatus
US8797911B2 (en) 2012-02-21 2014-08-05 Qualcomm Incorporated Method and apparatus for reducing power consumption in a wireless communication device
US9078266B2 (en) 2012-10-11 2015-07-07 Qualcomm Incorporated Devices and methods for facilitating discontinuous transmission on access terminals
CN104885543B (en) * 2012-12-03 2018-09-18 Lg电子株式会社 Method and apparatus for determining transport block size in a wireless communication system
US9161308B2 (en) 2013-08-26 2015-10-13 Qualcomm Incorporated Devices and methods for facilitating autonomous discontinuous transmission in access terminals
US9907070B2 (en) 2013-11-22 2018-02-27 Qualcomm Incorporated Channel access deferral mechanism
US20150146699A1 (en) * 2013-11-22 2015-05-28 Qualcomm Incorporated Extended block acknowledgement protocol
US9654999B2 (en) * 2014-06-20 2017-05-16 Blackberry Limited Apparatus and method to reduce a rate of receiving data
KR102321994B1 (en) * 2015-04-01 2021-11-04 삼성전자주식회사 Apparatus and method for managing radio link in wireless communication system
US10004019B2 (en) * 2015-09-08 2018-06-19 Parallel Wireless, Inc. RAN for multimedia delivery
US10778589B2 (en) 2016-06-30 2020-09-15 Parallel Wireless, Inc. Intelligent RAN flow management and distributed policy enforcement
US10616100B2 (en) * 2016-11-03 2020-04-07 Parallel Wireless, Inc. Traffic shaping and end-to-end prioritization
US10606604B2 (en) * 2017-08-22 2020-03-31 Bank Of America Corporation Predictive queue control and allocation
WO2020097883A1 (en) * 2018-11-15 2020-05-22 北京小米移动软件有限公司 Method and device for message transmission
CN112261634B (en) * 2020-10-19 2023-08-08 深圳市嘀嘟科技有限公司 Bluetooth transmission control method and device, terminal equipment and storage medium
US20240098031A1 (en) * 2022-09-14 2024-03-21 Help/Systems, Llc Data communication with transmission rate adjustment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050201361A1 (en) * 2004-01-08 2005-09-15 Sony Corporation Wireless communication system, wireless communication apparatus, wireless communication method, and computer program
US20080253284A1 (en) * 2007-04-16 2008-10-16 Cisco Technology, Inc. Controlling a Transmission Rate of Packet Traffic
WO2010012066A1 (en) * 2008-07-28 2010-02-04 Vantrix Corporation Flow-rate adaptation for a connection of time-varying capacity

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8086229B2 (en) * 2008-02-25 2011-12-27 Telefonaktiebolaget L M Ericsson (Publ) Alleviating mobile device overload conditions in a mobile communication system
GB2477515B (en) * 2010-02-03 2012-09-26 Orbital Multi Media Holdings Corp Data flow control method and apparatus
US8428633B2 (en) * 2010-08-31 2013-04-23 Intel Corporation Combined channel state information and combined channel quality indicator in wireless communication systems

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050201361A1 (en) * 2004-01-08 2005-09-15 Sony Corporation Wireless communication system, wireless communication apparatus, wireless communication method, and computer program
US20080253284A1 (en) * 2007-04-16 2008-10-16 Cisco Technology, Inc. Controlling a Transmission Rate of Packet Traffic
WO2010012066A1 (en) * 2008-07-28 2010-02-04 Vantrix Corporation Flow-rate adaptation for a connection of time-varying capacity

Also Published As

Publication number Publication date
DE102012014650A1 (en) 2013-01-31
GB201112734D0 (en) 2011-09-07
US8964557B2 (en) 2015-02-24
US20130028092A1 (en) 2013-01-31
GB2493504B (en) 2017-11-29

Similar Documents

Publication Publication Date Title
US8964557B2 (en) Data flow control
EP3955487B1 (en) Adapting communication parameters to link conditions, traffic types, and/or priorities
AU2005323609B2 (en) Method and apparatus for scheduling enhanced uplink dedicated channels in a mobile communication system
KR101576704B1 (en) Optimizing media content delivery based on user equipment determined resource metrics
JP5661922B2 (en) Uplink power control in aggregate carrier communication systems
JP5928758B2 (en) Method and device for video transmission
JP6201031B2 (en) Adaptive use of receiver diversity
WO2011150592A1 (en) Link adaptation method, base station and terminal in long term evolution (lte) system
EP3217728B1 (en) Method and apparatus for determining transmission power
US9264935B2 (en) Congestion control method and aparatus for wireless networks
JP6627966B2 (en) Radio access network node, external node, and methods thereof
US8923156B1 (en) Quality of service aware channel quality indicator
EP3449588B1 (en) Wireless device specific maximum code rate limit adjustment
KR20150030517A (en) Method for Data Transmission for Wireless Network Environment and Data Transmitter
US20200314888A1 (en) Multi-qos-level uplink grant and lcg control process
EP1513363A1 (en) Method for providing state information of a mobile station in a mobile communication system
JP6419942B2 (en) Dynamic sensitivity control in 802.11 stations
CN103916222A (en) Method and device for adjusting uplink service transmitting mode
WO2013078589A1 (en) Power offset parameter determination method and device
WO2014053959A2 (en) Uplink power control for machine type communication devices
CN110798285A (en) Retransmission method of URLLC in large-scale network based on frequency diversity
CN108650258A (en) Narrowband Internet of Things radio link protocol sub layer AM solid data adaptation transmitter methods
EP2779565B1 (en) Streaming media service-based method and device for increasing cell throughput
US9319175B2 (en) Techniques for performing efficient link adaptation in wireless personal networks
CN113853026B (en) Low latency communication in WLAN

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20190725