EP2974098B1 - Dynamic rate control in wifi systems - Google Patents

Dynamic rate control in wifi systems Download PDF

Info

Publication number
EP2974098B1
EP2974098B1 EP14711403.7A EP14711403A EP2974098B1 EP 2974098 B1 EP2974098 B1 EP 2974098B1 EP 14711403 A EP14711403 A EP 14711403A EP 2974098 B1 EP2974098 B1 EP 2974098B1
Authority
EP
European Patent Office
Prior art keywords
data rate
rate
data rates
probe
candidate 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.)
Active
Application number
EP14711403.7A
Other languages
German (de)
French (fr)
Other versions
EP2974098A1 (en
Inventor
Shu Du
Zhanfeng Jia
Chin-Hung Chen
Ning Zhang
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 Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of EP2974098A1 publication Critical patent/EP2974098A1/en
Application granted granted Critical
Publication of EP2974098B1 publication Critical patent/EP2974098B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0002Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
    • 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/0231Traffic management, e.g. flow control or congestion control based on communication conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0002Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
    • H04L1/0003Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate by switching between different modulation schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • H04L1/0016Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy involving special memory structures, e.g. look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/0001Arrangements for dividing the transmission path
    • H04L5/0014Three-dimensional division
    • H04L5/0023Time-frequency-space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/003Arrangements for allocating sub-channels of the transmission path
    • H04L5/0044Arrangements for allocating sub-channels of the transmission path allocation of payload
    • H04L5/0046Determination of how many bits are transmitted on different sub-channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/003Arrangements for allocating sub-channels of the transmission path
    • H04L5/0058Allocation criteria
    • H04L5/006Quality of the received signal, e.g. BER, SNR, water filling

Definitions

  • the IEEE 802.11 standards are used to formulate wireless local area networks (WLAN) within a radio frequency (RF) band by specifying a communication protocol that attempts to achieve the maximum data rate.
  • the IEEE 802.11 standard provides for multiple data rates at the physical (PHY) layer.
  • a data rate is identified by a modulation and coding scheme (MCS) index.
  • MCS modulation and coding scheme
  • Each MCS index value is associated with various parameters, such as the number of the spatial streams, Nss, (e.g., 1 - 4), the choice of guard intervals (e.g., short or long), channel bandwidth (e.g., 20MHz, 40MHz, 80MHz, 160MHz), modulation type (e.g., BPSK, QPSK, 16-QAM, 64-QAM, 256-QAM), and coding rate (e.g., 1 ⁇ 2, 3 ⁇ 4, 5/6, 2/3).
  • the data rate associated with a MCS index is based on specific settings of the parameters. There are numerous MCS index values where each MCS index value represents a different combination of the various settings of the parameters. However, the data rates indicated by the MCS index value do not account for the real word dynamics of a wireless network which suffer from conditions, such as link failures, random channel errors, link budget, etc.
  • an accurate total error rate performance can be measured using a computed error vector magnitude (EVM) per stream.
  • EVM error vector magnitude
  • the receiver or the transmitter can advantageously generate an optimized modulation and coding scheme (MCS) that corresponds to a specific number of streams, modulation and coding rate for the transmitter.
  • MCS modulation and coding scheme
  • the receiver can compute an SNR from the EVM and then use an SNR vs. MCS table to determine the optimized MCS.
  • the transmitter can receive an EVM-to-RSSI mapping and an EVM-to-MCS mapping from the receiver. These mappings and an EVM can facilitate selecting the optimized MCS.
  • Document US 2006/0188035 A1 discloses a DMT system and method with the capability to adapt the system bit rate on-line in a seamless manner.
  • the DMT system provides a robust and fast protocol for completing this seamless rate adaptation.
  • the DMT system also provides a framing and encoding method with reduced overhead compared to conventional DMT systems.
  • the DMT system and method provide seamless rate adaptation with the provision of different power levels. This framing and encoding method enables a system with seamless rate adaptation capability.
  • the system and method can be implemented in hardware, or alternatively in a combination of hardware and software.
  • a wireless device is configured to switch data rates to account for temporary channel conditions or device configuration errors.
  • a wireless network may suffer from poor link budget, random channel errors, link failures, and the like.
  • a wireless device may have been configured with an incorrect number of spatial streams or experience real time failures of one of its many antennas, thereby reducing the number of spatial streams the device can support.
  • a dynamic rate probing technique is used to determine a data rate that can compensate for these conditions.
  • a data rate is identified based on a MCS index value.
  • MCS index value is associated with a fixed number of spatial streams, Nss, and a modulation and coding (MCS) type.
  • MCS modulation and coding
  • a linear data rate table is configured with pre-selected data rates that are associated with a particular MCS type and number of spatial streams, Nss. These rates in the linear rate table are usually just a subset of all the supported rates. This subset of data rates are selected into the linear data rate table because they are more likely to achieve maximum goodput than other supported rates which are not in the linear rate table at any given channel conditions, wherein goodput is defined as the ratio of the expected delivered data payload to the expected transmission time.
  • the dynamic rate probing technique transmits probe transmissions using data rates associated with Nss and MCS values outside of the linear data rate table.
  • the success or failure of the probe transmissions using these alternative candidate data rates, which are not in the original linear rate table, is tracked.
  • An analysis of the tracked probe transmissions is used to determine whether or not the data rates in the data rate table need to be reconfigured.
  • the problem may be semi-permanent thereby necessitating a need to reconfigure the original linear data rate table with the successful alternate data rates.
  • the once-unsuccessful data rates in the original linear rate table may be re-probed and if successful, the data rate table may be reconfigured with the data rates from the original configuration.
  • the dynamic rate probing technique may be utilized again to re-analyze the channel conditions.
  • the various embodiments pertain to a dynamic rate adaption technique that dynamically probes for a data rate based on the number of spatial streams and a modulation and coding scheme in order to adjust to current channel conditions and device configuration errors.
  • a wireless device may have been configured with an incorrect number of spatial streams or experience real time failures of an antenna, thereby reducing the number of spatial streams the device can support.
  • the wireless network may suffer from varying channel conditions, such as poor link budget, random channel errors, link failures, and the like.
  • the media access control (MAC) layer is configured to dynamically select a rate to achieve maximum throughput based on the current channel conditions.
  • Rate adaption is a technique that determines a data rate by estimating the channel quality and altering the transmission parameters to adjust to the current channel conditions.
  • the variations in the wireless medium may be short-term or long-term depending on the nature of the channel condition.
  • the effectiveness of the rate adaption technique relies on the best values used to set the data rate.
  • Probe packets are transmitted from a transmitter using pre-selected data rates designed to cover typical and predicted channel conditions.
  • a probe packet uses a MCS index value that is associated with a particular number of spatial streams, a particular modulation and coding scheme, and a data rate.
  • the pre-selected data rates stored in a data rate table are identified by a number of spatial streams, Nss, and a number indicating the type of modulation and coding scheme used.
  • Transmission success is indicated by an acknowledgement (ACK) or block acknowledgement (BA) sent back to the transmitter or by the packet error rate (PER) being less than a threshold, for example, 50%. Failure is detected by the lack of the ACK or by the PER exceeding a 50% threshold. The failure of achieving the maximum data rate set in the linear data rate table results in the probing being stuck. As described in more detail below, the probing may become stuck at any of the data rates in the linear data rate table.
  • ACK acknowledgement
  • BA block acknowledgement
  • PER packet error rate
  • the pre-selected data rates in the linear data rate table are chosen based on offline simulations as well as over-the-air verification testing.
  • the data rates in the data rate table may not be suitable for all environments.
  • a wireless device may be mis-configured or temporarily misplaced, making the data rate values specified in the data rate table useless.
  • a wireless device may have two of its three antennas broken or non-operational causing the device to be effectively downgraded to a 1 x 1 device (i.e., 1 receive antenna/ receive chain and 1 transmit antenna/ transmit chain). If the data rate table is configured with incorrect data rates, even temporarily, the consequences to the performance of the wireless network can be detrimental since data rates not in the data rate table are not considered.
  • misconfigured 3 x 3 device i.e., 3 receive antennas/ receive chains and 3 transmit antennas/ transmit chains
  • some of its supported one spatial-stream data rates may not be in the misconfigured data rate table, since these 1x1 rates won't give the optimal goodput for an operational 3x3 device.
  • Fig. 1 illustrates an exemplary data rate graph showing data rate values, where each data rate value is configured as a combination of a number of spatial streams, Nss and a MCS type.
  • Each pair in the linear rate table corresponds to a data rate having been pre-selected as being most likely to achieve the best goodput at a given channel condition.
  • the pairs may be selected from offline simulation studies of the traffic pattern and behavior of a wireless network under varying conditions. As shown in Fig.
  • each pair is of the format (number of spatial streams /Nss, MCS type): (1,0); (1,1); (1,2); (1,3); (1,4); (1,5); (2,4); (2,5); (2,6); (2,7); (3,6); and (3,7).
  • the pre-selected pairs may be included in a data rate table for use in analyzing current channel conditions. The following pairs have not been selected and are not included in the data rate table shown in Fig.
  • the probe packets may be transmitted in a sequential order that starts with the lowest spatial stream and proceeds to the highest spatial stream. For example, as shown in Fig. 1 , the probe transmissions would follow the following order: (1,0) - (1,5), (2,4) - (2,7), (3, 6) - (3,7).
  • a failure in a probe transmission may occur when an ACK is not returned or the performance threshold is not met (e.g., packet error rate (PER) being less than a 50% threshold) (collectively, "threshold criteria").
  • PER packet error rate
  • Fig. 2 illustrates two cases of such failures with the data rate, Nss, and MCS values shown in Fig. 2 .
  • a failure may occur when probing a higher data rate within the MCS dimension which is shown in Fig. 2 as Case 1.
  • probing at (2, 6) resulted in the probe process stuck at (2, 5) when attempts to probe at the higher MCS dimension failed.
  • a failure in this case may be caused by a temporary condition such as link budget or channel correlation.
  • a failure may also occur when probing a higher data rate with the spatial stream dimension which is shown in Fig. 2 as Case 2.
  • probing at (3,6) resulted in the probe process stuck at (2, 7) failing to achieve a higher data rate within the next spatial stream.
  • a failure in this case may be caused by a temporary condition such as link budget or channel correlation or caused by a semi-permanent device configuration error.
  • candidate data rates those outside of the data rate table, are dynamically probed to determine a possible cause of the failure and extent of the problem. This information is then used to determine an appropriate course of action.
  • the candidate data rates are shown in the circular regions 302, 304, 306.
  • the candidate data rates are higher rates than the pre-selected data rates in the linear rate table.
  • region 302 shows pairs (1,6), (1,7), (1,8), and (1,9)
  • region 304 shows pairs (2,8), (2,9)
  • region 306 shows pairs (3,8), (3,9).
  • the dynamic probing technique considers these candidate data rates when probing gets stuck in either dimension.
  • Fig. 4 illustrates an exemplary data rate table 402.
  • the data rate table 402 may have multiple entries, where each entry contains a candidate data rate as a pair in the format (number of spatial streams/Nss, MCS value).
  • Each entry in the data rate table is associated with a probe probability vector (PPV) 404.
  • a probe probability vector 404 contains one or more candidate data rates 406, each of which is associated with a probability of success 408 (e.g., 90%/10%), a success counter 410 indicating the number of probed transmissions made during dynamic probing that were successful, and an original entry indicator 412 indicating whether the candidate data rate was in the original data rate table.
  • the candidate data rates are selected as the most likely data rates to succeed in the event of data rate probing.
  • Fig. 5 illustrates an exemplary method 500 for performing dynamic rate control. It should be noted that the method shown in Fig. 5 may be representative of some or all of the operations executed by one or more embodiments described herein and that the method can include more or less operations than that which is described.
  • time intervals T1, T2, and T3 are set to initial values (block 502).
  • T1 is the time allotted for performing dynamic rate probing.
  • T2 is the time interval for waiting for a channel condition to clear when all candidate data rates fail.
  • T3 is the time interval to wait until dynamic rate probing is retried with the original data rates due to a temporary condition.
  • the values of T1, T2, and T3 are user-defined variables which can be selected such that T3 > T2 > T1, where T1 ⁇ 10 seconds, T2 ⁇ 10 ⁇ T2, and T3 ⁇ 100 ⁇ T2.
  • the technique proceeds to transmit probe packets or probe transmissions using the data rates from the data rate table to determine the maximum data rate possible in light of the current channel conditions (block 502).
  • the probe packet contains a MCS index value which corresponds to the data rate associated with the number of spatial streams, Nss, and MCS type used in the data rate table. There is a mapping from the Nss and MCS values found in the data rate table to the corresponding MCS index value used in the probe packet.
  • the maximum data rate is used for the transmission (block 506). For example, probing may be deemed stuck when no ACK message is received at a particular data rate and/or the packet error rate (PER) exceeds a 50% threshold. If probing is stuck (block 504-yes), then dynamic rate probing is performed (block 508) .
  • the candidate data rates are used in probe packets during time interval, T1 (block 508). If probing using all the candidate data rate values fail (block 510-yes), then the dynamic probing process is terminated and the original data rate table remains intact. When probing of all the candidate data rates results in failure, the cause may be attributable to a link budget issue. In this case, dynamic rate probing is re-tried after T2 time units (block 512) when the stuck condition still sustains then.
  • the successful candidate data rates are loaded into the data rate table (block 518).
  • the data rate table is reloaded with successful data rates for 2 x 2 devices (e.g., data rates associated with MCS index values (2,8) and (2,9) in the example of Fig. 3 ). Since this error is semi-permanent, then the process waits T3 time units (block 520) to retry the failed data rates from the original data rate table (block 522). If the original data rates succeed (block 524-yes), then the semi-permanent condition may have resolved itself and the original data rates are restored back to the data rate table (block 526). Otherwise, if the original data rates do not succeed (block 524-no), then the current data rate table remains intact.
  • T3 time units block 520
  • the process waits T3 time units (block 520) to retry the failed data rates from the original data rate table (block 522). If the original data rates succeed (block 524-yes), then the semi-permanent condition may have resolved itself and the original data rates are restored back to the data rate table (block 526). Otherwise, if the original data
  • Fig. 6 illustrates an exemplary method 508 for performing dynamic rate control. It should be noted that the method shown in Fig. 6 may be representative of some or all of the operations executed by one or more embodiments described herein and that the method can include more or less operations than that which is described.
  • the data rate at which the probing is stuck is identified by the pair (Nss 1 , MCS 1 ) (block 602).
  • the associated probe probability vector for this pair is obtained for possible candidate data rates. There may be more than one candidate data rate.
  • the candidate data rate with the highest probability is chosen and a probe packet is transmitted using the candidate data rate (block 606).
  • the probe packet uses a MCS index value. There is a mapping from the combination of the Nss and MCS values in the PPV to a corresponding MCS index value that is used in the probe packet.
  • the probe probability vector (PPV) is updated (block 610).
  • the probability in the PPV of the successful candidate rate is updated with P old + ⁇ 1 and the success counter in the PPV is incremented.
  • the candidate data rate fails (block 608-no)
  • the probe probability vector is updated to [P old - ⁇ 2] and the success counter in the PPV is not incremented (block 612).
  • the selection process repeats (block 614-no) until the time limit T1 expires (block 614-yes). By doing this, if a candidate rate is successful once, it will have a better chance to be selected in the future. Similarly, if a candidate fails once, it will have less chance to be selected in the future.
  • Fig. 7 illustrates a block diagram of an exemplary wireless local area network (WLAN) 700 configured to implement an IEEE 802.11 communication protocol.
  • the network 700 may be configured with one or more basic service sets (BSSs) 702A, 702N (collectively, "702") coupled to a distribution system 704.
  • BSSs 702A, 702N may include several stations (STAs) 706A - 706Z (collectively, "706") and an access point (AP) 708A, 708N communicatively coupled wirelessly through a wireless medium 710.
  • An access point is a station operating as a coordinator of the BSS.
  • a station within the BSS may communicate with other stations within the BSS.
  • a BSS may be configured as an independent BSS where stations communicate with other stations within direct communication range of each other.
  • a BSS may be configured as an infrastructure BSS where all communications are relayed through an access point.
  • the distribution system 704 provides the communication means for an access point to communicate with other access points in order to deliver frames for a station within its respective BSS.
  • the distribution system 704 may be a wired network or a dedicated device that serves as a bridge to a backbone network.
  • the IEEE 802.11 protocol includes a Media Access Control (MAC) layer and a physical layer (PHY).
  • the MAC layer manages and maintains communications between the stations in a wireless network by coordinating access to the shared channel.
  • the PHY layer defines the transmission techniques used to transmit data through the wireless medium.
  • the MAC layer performs the functions of carrier sensing and transmission and receipt of frames.
  • the MAC layer passes frames to the PHY layer for transmission on the physical wireless media.
  • the frames passed to the PHY layer specify a data rate for transmission, such as the data rate discussed in the embodiments presented herein.
  • wireless devices configured to operate within an IEEE 802.11 wireless network using the technology described herein.
  • Various embodiments of the wireless device may be implemented using hardware elements, software elements, or a combination of both.
  • hardware elements may include devices, components, processors, microprocessors, circuits, circuit elements, integrated circuits, application specific integrated circuits, programmable logic devices, digital signal processors, field programmable gate arrays, memory units, logic gates and so forth.
  • software elements may include software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, procedures, software interfaces, application program interfaces, instruction sets, computing code, code segments, and any combination thereof.
  • Determining whether an embodiment is implemented using hardware elements and/or software elements may vary in accordance with any number of factors, such as desired computational rate, power levels, bandwidth, computing time, load balance, memory resources, data bus speeds and other design or performance constraints, as desired for a given implementation.
  • the wireless device 800 may be any type of electronic device capable of receiving wireless signals such as, without limitation, a mobile device, a personal digital assistant, a mobile computing device, a tablet, a smart phone, a cellular telephone, a handheld computer, a server, a server array or server farm, a web server, a network server, an Internet server, a work station, a minicomputer, a mainframe computer, a supercomputer, a network appliance, a web appliance, a distributed computing system, multiprocessor systems, or combination thereof.
  • the wireless device 800 is a WLAN device capable of operating in accordance with an IEEE 802.11 specification, such as an access point or station shown in Fig. 7 .
  • the wireless device 800 may include at least one or more processors 802, a network interface 804, a memory 806, and a communications module 810 communicatively coupled through a communications link 808 (e.g., bus).
  • a processor 802 may be any commercially available processor and may include dual microprocessors and multi-processor architectures.
  • the network interface 804 facilitates wired and/or wireless communications between the wireless device 800 and a communications framework.
  • the network interface 804 includes at least one wireless network interface (e.g., WLAN interface, a Bluetooth® interface, a WiMAX interface, and ZigBee® interface, a Wireless USB interface, etc.).
  • the communications module 810 may include a radio transceiver 812 and a memory 816.
  • the memory 816 may include a rate controller module 818 and a data rate table including probe probability vectors (PPV) 820.
  • the radio transceiver 812 comprises a packet and a data processing unit for executing instructions that receives and transmits packets in accordance with the IEEE 802.11 radio protocol.
  • the rate controller module 818 performs the embodiments described herein.
  • the data rate table/PPV 820 is described herein with respect to Figs. 4 - 6 .
  • the memories 806, 816 may be any machine-readable storage media that may store executable procedures, applications, and data.
  • the machine-readable storage media pertains to non-transitory signals and not to propagated signals, such as modulated data signals transmitted through a carrier wave.
  • Examples of a storage medium may include one or more types of machine-readable storage media capable of storing electronic data, including volatile memory or non-volatile memory, removable or non-removable memory, erasable or non-erasable memory, writeable or re-writeable memory, random access memory, read-only memory, magnetic storage, optical storage, DVD, CD, floppy disk drive, and the like.
  • the memories 806, 816 may also include one or more external storage devices or remotely located storage devices.
  • the machine-readable storage media may store various software elements, such as programs, procedures, module, applications, code segments, program stacks, middleware, firmware, methods, routines, and so on.
  • a machine-readable storage medium may store executable program instructions that, when executed by a processor, cause the processor to perform methods and/or operations in accordance with the described embodiments.
  • the executable program instructions may be implemented according to a predefined computer language, manner or syntax, for instructing a computer to perform a certain function.
  • the instructions may be implemented using any suitable high-level, low-level, object-oriented, visual, compiled and/or interpreted programming language.
  • the rate controller module 818 and data rate table/PPV 820 may be implemented as software elements.
  • the wireless device 850 may be any type of electronic device capable of receiving wireless signals such as, without limitation, a mobile device, a personal digital assistant, a mobile computing device, a tablet, a smart phone, a cellular telephone, a handheld computer, a server, a server array or server farm, a web server, a network server, an Internet server, a work station, a minicomputer, a mainframe computer, a supercomputer, a network appliance, a web appliance, a distributed computing system, multiprocessor systems, or combination thereof.
  • the wireless device 850 is a WLAN device capable of operating in accordance with an IEEE 802.11 specification, such as an access point or station shown in Fig. 7 .
  • the wireless device 850 may include at least one or more processors 852, a network interface 854, a memory 856, and a radio device 860 communicatively coupled through a communications link 858 (e.g., bus).
  • a processor 852 may be any commercially available processor and may include dual microprocessors and multi-processor architectures.
  • the network interface 854 facilitates wired and/or wireless communications between the wireless device 850 and a communications framework.
  • the network interface 854 includes at least one wireless network interface (e.g., WLAN interface, a Bluetooth® interface, a WiMAX interface, and ZigBee® interface, a Wireless USB interface, etc.).
  • the radio device 860 may include a radio transceiver 862, a rate controller 864, and a data rate table including probe probability vectors 866.
  • the radio transceiver 862 comprises a packet and a data processing unit for executing instructions that receives and transmits packets in accordance with the IEEE 802.11 radio protocol.
  • the rate controller 864 performs the embodiments described herein with respect to the dynamic rate probing.
  • the data rate table/PPV 866 is herein described with respect to Figs. 4-6 .
  • the rate controller 864 and the data rate table/PPV 866 may include embodied in hardware elements, such as devices, components, processors, microprocessors, circuits, circuit elements, integrated circuits, application specific integrated circuits, programmable logic devices, digital signal processors, field programmable gate arrays, memory units, logic gates and so forth.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

    BACKGROUND Field of the Invention
  • The IEEE 802.11 standards are used to formulate wireless local area networks (WLAN) within a radio frequency (RF) band by specifying a communication protocol that attempts to achieve the maximum data rate. The IEEE 802.11 standard provides for multiple data rates at the physical (PHY) layer. A data rate is identified by a modulation and coding scheme (MCS) index. Each MCS index value is associated with various parameters, such as the number of the spatial streams, Nss, (e.g., 1 - 4), the choice of guard intervals (e.g., short or long), channel bandwidth (e.g., 20MHz, 40MHz, 80MHz, 160MHz), modulation type (e.g., BPSK, QPSK, 16-QAM, 64-QAM, 256-QAM), and coding rate (e.g., ½, ¾, 5/6, 2/3). The data rate associated with a MCS index is based on specific settings of the parameters. There are numerous MCS index values where each MCS index value represents a different combination of the various settings of the parameters. However, the data rates indicated by the MCS index value do not account for the real word dynamics of a wireless network which suffer from conditions, such as link failures, random channel errors, link budget, etc.
  • Document US 2007/0206695 A1 discloses that an accurate total error rate performance can be measured using a computed error vector magnitude (EVM) per stream. Using this EVM, the receiver or the transmitter can advantageously generate an optimized modulation and coding scheme (MCS) that corresponds to a specific number of streams, modulation and coding rate for the transmitter. For example, the receiver can compute an SNR from the EVM and then use an SNR vs. MCS table to determine the optimized MCS. In contrast, the transmitter can receive an EVM-to-RSSI mapping and an EVM-to-MCS mapping from the receiver. These mappings and an EVM can facilitate selecting the optimized MCS.
  • Document US 2006/0188035 A1 discloses a DMT system and method with the capability to adapt the system bit rate on-line in a seamless manner. The DMT system provides a robust and fast protocol for completing this seamless rate adaptation. The DMT system also provides a framing and encoding method with reduced overhead compared to conventional DMT systems. The DMT system and method provide seamless rate adaptation with the provision of different power levels. This framing and encoding method enables a system with seamless rate adaptation capability. The system and method can be implemented in hardware, or alternatively in a combination of hardware and software.
  • SUMMARY The invention is defined in the independent claims 1, 10 and 15.
  • This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
  • A wireless device is configured to switch data rates to account for temporary channel conditions or device configuration errors. A wireless network may suffer from poor link budget, random channel errors, link failures, and the like. A wireless device may have been configured with an incorrect number of spatial streams or experience real time failures of one of its many antennas, thereby reducing the number of spatial streams the device can support. When these conditions are detected, a dynamic rate probing technique is used to determine a data rate that can compensate for these conditions.
  • A data rate is identified based on a MCS index value. Each MCS index value is associated with a fixed number of spatial streams, Nss, and a modulation and coding (MCS) type. When using a non-dynamic rate probing technique, a linear data rate table is configured with pre-selected data rates that are associated with a particular MCS type and number of spatial streams, Nss. These rates in the linear rate table are usually just a subset of all the supported rates. This subset of data rates are selected into the linear data rate table because they are more likely to achieve maximum goodput than other supported rates which are not in the linear rate table at any given channel conditions, wherein goodput is defined as the ratio of the expected delivered data payload to the expected transmission time. Therefore, during a rate selection procedure, one only needs to select a rate from the linear rate table, ignoring all the other supported rates. Since the number of rates in the linear rate table is usually much smaller than the number of all supported rates, picking a rate from the linear rate table becomes much simpler and more straightforward than picking a rate from all supported rates. However, at times, probe transmissions using the preselected data rates in the linear rate table may not achieve the better goodput than a rate that is not in the linear rate table, thereby indicating a problem within the wireless network which may be attributable to various conditions that may be temporary or long lasting. In this case, a dynamic rate probing technique is used to determine a possible cause and the extent of the problem.
  • The dynamic rate probing technique transmits probe transmissions using data rates associated with Nss and MCS values outside of the linear data rate table. The success or failure of the probe transmissions using these alternative candidate data rates, which are not in the original linear rate table, is tracked. An analysis of the tracked probe transmissions is used to determine whether or not the data rates in the data rate table need to be reconfigured. In the event some of the probe transmissions using the alternative candidate data rates succeed, the problem may be semi-permanent thereby necessitating a need to reconfigure the original linear data rate table with the successful alternate data rates.
  • At a later point in time, the once-unsuccessful data rates in the original linear rate table may be re-probed and if successful, the data rate table may be reconfigured with the data rates from the original configuration. When all probe transmissions using the alternative candidate data rates fail, a temporary problem may exist and the data rate table is left intact. At a later time, the dynamic rate probing technique may be utilized again to re-analyze the channel conditions.
  • These and other features and advantages will be apparent from a reading of the following detailed description and a review of the associated drawings. It is to be understood that both the foregoing general description and the following detailed description are explanatory only and are not restrictive of aspects as claimed.
  • BRIEF DESCRIPTION OF DRAWINGS
    • Fig. 1 is a graph illustrating an exemplary linear rate table with pre-selected data rates represented by an Nss and a MCS value.
    • Fig. 2 is a graph illustrating two cases where probing is stuck from achieving a higher data rate.
    • Fig. 3 is a graph illustrating exemplary alternative candidate data rates.
    • Fig. 4 is a block diagram illustrating an exemplary data rate table having a probe probability vector.
    • Fig. 5 is a flow diagram illustrating a first embodiment of an exemplary dynamic rate probing technique.
    • Fig. 6 is a flow diagram illustrating a second embodiment of an exemplary dynamic rate probing technique.
    • Fig. 7 is a block diagram illustrating an exemplary wireless network embodying the dynamic rate probing technique.
    • Figs. 8A- 8B are block diagrams illustrating exemplary wireless devices operating in accordance with the embodiments.
    DETAILED DESCRIPTION
  • The various embodiments pertain to a dynamic rate adaption technique that dynamically probes for a data rate based on the number of spatial streams and a modulation and coding scheme in order to adjust to current channel conditions and device configuration errors. A wireless device may have been configured with an incorrect number of spatial streams or experience real time failures of an antenna, thereby reducing the number of spatial streams the device can support. The wireless network may suffer from varying channel conditions, such as poor link budget, random channel errors, link failures, and the like.
  • The media access control (MAC) layer is configured to dynamically select a rate to achieve maximum throughput based on the current channel conditions. Rate adaption is a technique that determines a data rate by estimating the channel quality and altering the transmission parameters to adjust to the current channel conditions. The variations in the wireless medium may be short-term or long-term depending on the nature of the channel condition. The effectiveness of the rate adaption technique relies on the best values used to set the data rate.
  • In order to determine the data rate that will achieve the best goodput at a specific time, the current channel conditions need to be accessed. Goodput is the ratio of the expected delivered data payload to the expected transmission time. Probe packets are transmitted from a transmitter using pre-selected data rates designed to cover typical and predicted channel conditions. A probe packet uses a MCS index value that is associated with a particular number of spatial streams, a particular modulation and coding scheme, and a data rate. The pre-selected data rates stored in a data rate table are identified by a number of spatial streams, Nss, and a number indicating the type of modulation and coding scheme used.
  • Transmission success is indicated by an acknowledgement (ACK) or block acknowledgement (BA) sent back to the transmitter or by the packet error rate (PER) being less than a threshold, for example, 50%. Failure is detected by the lack of the ACK or by the PER exceeding a 50% threshold. The failure of achieving the maximum data rate set in the linear data rate table results in the probing being stuck. As described in more detail below, the probing may become stuck at any of the data rates in the linear data rate table.
  • The pre-selected data rates in the linear data rate table are chosen based on offline simulations as well as over-the-air verification testing. However, the data rates in the data rate table may not be suitable for all environments. In some environments, a wireless device may be mis-configured or temporarily misplaced, making the data rate values specified in the data rate table useless. For example, a wireless device may have two of its three antennas broken or non-operational causing the device to be effectively downgraded to a 1 x 1 device (i.e., 1 receive antenna/ receive chain and 1 transmit antenna/ transmit chain). If the data rate table is configured with incorrect data rates, even temporarily, the consequences to the performance of the wireless network can be detrimental since data rates not in the data rate table are not considered. For example, in the case of a misconfigured 3 x 3 device (i.e., 3 receive antennas/ receive chains and 3 transmit antennas/ transmit chains) that is physically only capable of operating as a 1 x 1 device, some of its supported one spatial-stream data rates may not be in the misconfigured data rate table, since these 1x1 rates won't give the optimal goodput for an operational 3x3 device. For example, the rates of 256-QAM with Nss =1 cannot be used by this misconfigured device as the originally configured rate table was optimized for 3x3 devices not for 1x1 devices.
  • Fig. 1 illustrates an exemplary data rate graph showing data rate values, where each data rate value is configured as a combination of a number of spatial streams, Nss and a MCS type. Each pair in the linear rate table corresponds to a data rate having been pre-selected as being most likely to achieve the best goodput at a given channel condition. The pairs may be selected from offline simulation studies of the traffic pattern and behavior of a wireless network under varying conditions. As shown in Fig. 1, the following pairs have been pre-selected into the linear rate table where each pair is of the format (number of spatial streams /Nss, MCS type): (1,0); (1,1); (1,2); (1,3); (1,4); (1,5); (2,4); (2,5); (2,6); (2,7); (3,6); and (3,7). The pre-selected pairs may be included in a data rate table for use in analyzing current channel conditions. The following pairs have not been selected and are not included in the data rate table shown in Fig. 1: (1,6); (1,7); (1,8); (1,9); (2,0); (2,1); (2,2); (2,3); (2,8); (2,9); (3,0); (3,1); (3,2); (3,3); (3,4); (3,5); (3,8); (3,9).
  • The probe packets may be transmitted in a sequential order that starts with the lowest spatial stream and proceeds to the highest spatial stream. For example, as shown in Fig. 1, the probe transmissions would follow the following order: (1,0) - (1,5), (2,4) - (2,7), (3, 6) - (3,7). At times, a failure in a probe transmission may occur when an ACK is not returned or the performance threshold is not met (e.g., packet error rate (PER) being less than a 50% threshold) (collectively, "threshold criteria").
  • Fig. 2 illustrates two cases of such failures with the data rate, Nss, and MCS values shown in Fig. 2. A failure may occur when probing a higher data rate within the MCS dimension which is shown in Fig. 2 as Case 1. In Case 1, probing at (2, 6) resulted in the probe process stuck at (2, 5) when attempts to probe at the higher MCS dimension failed. A failure in this case may be caused by a temporary condition such as link budget or channel correlation. A failure may also occur when probing a higher data rate with the spatial stream dimension which is shown in Fig. 2 as Case 2. In Case 2, probing at (3,6) resulted in the probe process stuck at (2, 7) failing to achieve a higher data rate within the next spatial stream. A failure in this case may be caused by a temporary condition such as link budget or channel correlation or caused by a semi-permanent device configuration error.
  • In the event of a failure at either probing dimension (e.g., spatial stream or MCS index), candidate data rates, those outside of the data rate table, are dynamically probed to determine a possible cause of the failure and extent of the problem. This information is then used to determine an appropriate course of action. Turning to Fig. 3, the candidate data rates are shown in the circular regions 302, 304, 306. The candidate data rates are higher rates than the pre-selected data rates in the linear rate table. As shown in Fig. 3, region 302 shows pairs (1,6), (1,7), (1,8), and (1,9), region 304 shows pairs (2,8), (2,9), and region 306 shows pairs (3,8), (3,9). The dynamic probing technique considers these candidate data rates when probing gets stuck in either dimension.
  • Attention now turns to a discussion on the operations for the embodiments with reference to exemplary methods. It may be appreciated that the representative methods do not necessarily have to be executed in the order presented, or in any particular order, unless otherwise indicated. Moreover, various activities described with respect to the methods can be executed in serial or parallel fashion, or any combination of serial and parallel operations. The methods can be implemented using one or more hardware elements and/or software elements of the described embodiments or alternative embodiments as desired for a given set of design and performance constraints. For example, the methods may be implemented as logic (e.g., program instructions, firmware) for execution by a logic device (e.g., a radio unit or specific-purpose processor).
  • The methods discussed herein utilize a data rate table. Fig. 4 illustrates an exemplary data rate table 402. The data rate table 402 may have multiple entries, where each entry contains a candidate data rate as a pair in the format (number of spatial streams/Nss, MCS value). Each entry in the data rate table is associated with a probe probability vector (PPV) 404. A probe probability vector 404 contains one or more candidate data rates 406, each of which is associated with a probability of success 408 (e.g., 90%/10%), a success counter 410 indicating the number of probed transmissions made during dynamic probing that were successful, and an original entry indicator 412 indicating whether the candidate data rate was in the original data rate table. The candidate data rates are selected as the most likely data rates to succeed in the event of data rate probing.
  • Fig. 5 illustrates an exemplary method 500 for performing dynamic rate control. It should be noted that the method shown in Fig. 5 may be representative of some or all of the operations executed by one or more embodiments described herein and that the method can include more or less operations than that which is described.
  • Initially, time intervals T1, T2, and T3 are set to initial values (block 502). T1 is the time allotted for performing dynamic rate probing. T2 is the time interval for waiting for a channel condition to clear when all candidate data rates fail. T3 is the time interval to wait until dynamic rate probing is retried with the original data rates due to a temporary condition. In one or more embodiments, the values of T1, T2, and T3 are user-defined variables which can be selected such that T3 > T2 > T1, where T1 < 10 seconds, T2 < 10 T2, and T3 < 100 T2.
  • The technique proceeds to transmit probe packets or probe transmissions using the data rates from the data rate table to determine the maximum data rate possible in light of the current channel conditions (block 502). The probe packet contains a MCS index value which corresponds to the data rate associated with the number of spatial streams, Nss, and MCS type used in the data rate table. There is a mapping from the Nss and MCS values found in the data rate table to the corresponding MCS index value used in the probe packet.
  • If the maximum data rate is achieved and probing is not stuck (block 504-no), then the maximum data rate is used for the transmission (block 506). For example, probing may be deemed stuck when no ACK message is received at a particular data rate and/or the packet error rate (PER) exceeds a 50% threshold. If probing is stuck (block 504-yes), then dynamic rate probing is performed (block 508) .
  • In dynamic rate probing, the candidate data rates, outside of the data rate table, are used in probe packets during time interval, T1 (block 508). If probing using all the candidate data rate values fail (block 510-yes), then the dynamic probing process is terminated and the original data rate table remains intact. When probing of all the candidate data rates results in failure, the cause may be attributable to a link budget issue. In this case, dynamic rate probing is re-tried after T2 time units (block 512) when the stuck condition still sustains then.
  • If there are successful candidate data rates from the original data rate table (blocks 510-no, 514-yes), then this is related to the Case Two scenario shown in Fig. 2. In this case, probing was stuck in the spatial stream dimension but the stuck is now relieved. Therefore, the cause of the problem must be temporary so the data rate table should be reset with its original data rates (block 516, block 526). Afterwards, the data rate probing with the original pre-selected data rates is retried (block 502) .
  • If there are successful candidate data rates and the successful candidate data rates were not contained in the original data rate table (blocks 510-no, 514-no), then the successful candidate data rates are loaded into the data rate table (block 518). This situation suggests that this stuck case is caused by a semi-permanent device configuration or misplaced errors. For example, if a successful candidate data rate has Nss = 2 and Nss from the original data rate table had Nss=3 which failed, then the device may have been inadvertently configured as a 3 x 3 device when the device is actually only capable of operating as a 2 x 2 device. In this situation, the data rate table is reloaded with successful data rates for 2 x 2 devices (e.g., data rates associated with MCS index values (2,8) and (2,9) in the example of Fig. 3). Since this error is semi-permanent, then the process waits T3 time units (block 520) to retry the failed data rates from the original data rate table (block 522). If the original data rates succeed (block 524-yes), then the semi-permanent condition may have resolved itself and the original data rates are restored back to the data rate table (block 526). Otherwise, if the original data rates do not succeed (block 524-no), then the current data rate table remains intact.
  • Fig. 6 illustrates an exemplary method 508 for performing dynamic rate control. It should be noted that the method shown in Fig. 6 may be representative of some or all of the operations executed by one or more embodiments described herein and that the method can include more or less operations than that which is described.
  • The data rate at which the probing is stuck is identified by the pair (Nss1, MCS1) (block 602). The associated probe probability vector for this pair is obtained for possible candidate data rates. There may be more than one candidate data rate. The candidate data rate with the highest probability is chosen and a probe packet is transmitted using the candidate data rate (block 606). The probe packet uses a MCS index value. There is a mapping from the combination of the Nss and MCS values in the PPV to a corresponding MCS index value that is used in the probe packet.
  • If the probe is successful (block 608-yes), then the probe probability vector (PPV) is updated (block 610). The probability in the PPV of the successful candidate rate is updated with Pold + λ 1 and the success counter in the PPV is incremented. If the candidate data rate fails (block 608-no), then the probe probability vector is updated to [Pold - λ 2] and the success counter in the PPV is not incremented (block 612). The selection process repeats (block 614-no) until the time limit T1 expires (block 614-yes). By doing this, if a candidate rate is successful once, it will have a better chance to be selected in the future. Similarly, if a candidate fails once, it will have less chance to be selected in the future.
  • Attention now turns to a general discussion of an operating environment utilizing dynamic probing for rate control. Fig. 7 illustrates a block diagram of an exemplary wireless local area network (WLAN) 700 configured to implement an IEEE 802.11 communication protocol. The network 700 may be configured with one or more basic service sets (BSSs) 702A, 702N (collectively, "702") coupled to a distribution system 704. Each BSS 702A, 702N may include several stations (STAs) 706A - 706Z (collectively, "706") and an access point (AP) 708A, 708N communicatively coupled wirelessly through a wireless medium 710. An access point is a station operating as a coordinator of the BSS. A station within the BSS may communicate with other stations within the BSS. A BSS may be configured as an independent BSS where stations communicate with other stations within direct communication range of each other. Alternatively, a BSS may be configured as an infrastructure BSS where all communications are relayed through an access point. The distribution system 704 provides the communication means for an access point to communicate with other access points in order to deliver frames for a station within its respective BSS. The distribution system 704 may be a wired network or a dedicated device that serves as a bridge to a backbone network.
  • Each station, including an access point, operates in accordance with the IEEE 802.11 protocol. The IEEE 802.11 protocol includes a Media Access Control (MAC) layer and a physical layer (PHY). The MAC layer manages and maintains communications between the stations in a wireless network by coordinating access to the shared channel. The PHY layer defines the transmission techniques used to transmit data through the wireless medium. The MAC layer performs the functions of carrier sensing and transmission and receipt of frames. The MAC layer passes frames to the PHY layer for transmission on the physical wireless media. The frames passed to the PHY layer specify a data rate for transmission, such as the data rate discussed in the embodiments presented herein.
  • Attention now turns to a discussion of exemplary wireless devices configured to operate within an IEEE 802.11 wireless network using the technology described herein. Various embodiments of the wireless device may be implemented using hardware elements, software elements, or a combination of both. Examples of hardware elements may include devices, components, processors, microprocessors, circuits, circuit elements, integrated circuits, application specific integrated circuits, programmable logic devices, digital signal processors, field programmable gate arrays, memory units, logic gates and so forth. Examples of software elements may include software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, procedures, software interfaces, application program interfaces, instruction sets, computing code, code segments, and any combination thereof. Determining whether an embodiment is implemented using hardware elements and/or software elements may vary in accordance with any number of factors, such as desired computational rate, power levels, bandwidth, computing time, load balance, memory resources, data bus speeds and other design or performance constraints, as desired for a given implementation.
  • Turning to Fig. 8A, there is shown a block diagram of a first embodiment of an exemplary wireless device 800. The wireless device 800 may be any type of electronic device capable of receiving wireless signals such as, without limitation, a mobile device, a personal digital assistant, a mobile computing device, a tablet, a smart phone, a cellular telephone, a handheld computer, a server, a server array or server farm, a web server, a network server, an Internet server, a work station, a minicomputer, a mainframe computer, a supercomputer, a network appliance, a web appliance, a distributed computing system, multiprocessor systems, or combination thereof. In one or more embodiments, the wireless device 800 is a WLAN device capable of operating in accordance with an IEEE 802.11 specification, such as an access point or station shown in Fig. 7.
  • The wireless device 800 may include at least one or more processors 802, a network interface 804, a memory 806, and a communications module 810 communicatively coupled through a communications link 808 (e.g., bus). A processor 802 may be any commercially available processor and may include dual microprocessors and multi-processor architectures. The network interface 804 facilitates wired and/or wireless communications between the wireless device 800 and a communications framework. The network interface 804 includes at least one wireless network interface (e.g., WLAN interface, a Bluetooth® interface, a WiMAX interface, and ZigBee® interface, a Wireless USB interface, etc.).
  • The communications module 810 may include a radio transceiver 812 and a memory 816. The memory 816 may include a rate controller module 818 and a data rate table including probe probability vectors (PPV) 820. The radio transceiver 812 comprises a packet and a data processing unit for executing instructions that receives and transmits packets in accordance with the IEEE 802.11 radio protocol. The rate controller module 818 performs the embodiments described herein. The data rate table/PPV 820 is described herein with respect to Figs. 4 - 6.
  • The memories 806, 816 may be any machine-readable storage media that may store executable procedures, applications, and data. The machine-readable storage media pertains to non-transitory signals and not to propagated signals, such as modulated data signals transmitted through a carrier wave. Examples of a storage medium may include one or more types of machine-readable storage media capable of storing electronic data, including volatile memory or non-volatile memory, removable or non-removable memory, erasable or non-erasable memory, writeable or re-writeable memory, random access memory, read-only memory, magnetic storage, optical storage, DVD, CD, floppy disk drive, and the like. The memories 806, 816 may also include one or more external storage devices or remotely located storage devices.
  • The machine-readable storage media may store various software elements, such as programs, procedures, module, applications, code segments, program stacks, middleware, firmware, methods, routines, and so on. In an embodiment, for example, a machine-readable storage medium may store executable program instructions that, when executed by a processor, cause the processor to perform methods and/or operations in accordance with the described embodiments. The executable program instructions may be implemented according to a predefined computer language, manner or syntax, for instructing a computer to perform a certain function. The instructions may be implemented using any suitable high-level, low-level, object-oriented, visual, compiled and/or interpreted programming language. The rate controller module 818 and data rate table/PPV 820 may be implemented as software elements.
  • Turning to Fig. 8B, there is shown a block diagram of a second embodiment of an exemplary wireless device 850. The wireless device 850 may be any type of electronic device capable of receiving wireless signals such as, without limitation, a mobile device, a personal digital assistant, a mobile computing device, a tablet, a smart phone, a cellular telephone, a handheld computer, a server, a server array or server farm, a web server, a network server, an Internet server, a work station, a minicomputer, a mainframe computer, a supercomputer, a network appliance, a web appliance, a distributed computing system, multiprocessor systems, or combination thereof. In one or more embodiments, the wireless device 850 is a WLAN device capable of operating in accordance with an IEEE 802.11 specification, such as an access point or station shown in Fig. 7.
  • The wireless device 850 may include at least one or more processors 852, a network interface 854, a memory 856, and a radio device 860 communicatively coupled through a communications link 858 (e.g., bus). A processor 852 may be any commercially available processor and may include dual microprocessors and multi-processor architectures. The network interface 854 facilitates wired and/or wireless communications between the wireless device 850 and a communications framework. The network interface 854 includes at least one wireless network interface (e.g., WLAN interface, a Bluetooth® interface, a WiMAX interface, and ZigBee® interface, a Wireless USB interface, etc.).
  • The radio device 860 may include a radio transceiver 862, a rate controller 864, and a data rate table including probe probability vectors 866. The radio transceiver 862 comprises a packet and a data processing unit for executing instructions that receives and transmits packets in accordance with the IEEE 802.11 radio protocol. The rate controller 864 performs the embodiments described herein with respect to the dynamic rate probing. The data rate table/PPV 866 is herein described with respect to Figs. 4-6. The rate controller 864 and the data rate table/PPV 866 may include embodied in hardware elements, such as devices, components, processors, microprocessors, circuits, circuit elements, integrated circuits, application specific integrated circuits, programmable logic devices, digital signal processors, field programmable gate arrays, memory units, logic gates and so forth.
  • Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (15)

  1. A method for dynamic rate adaption in a wireless network (700), the method comprising:
    selecting a plurality of pre-selected data rates for use in transmitting data in the wireless network (700), each pre-selected data rate associated with a number of spatial streams, Nss, and a modulating and coding, MCS, type, the pre-selected data rates being a subset of all data rates supported by the wireless network (700);
    transmitting (502) one or more probe transmissions to detect a maximum achievable data rate from the plurality of pre-selected data rates;
    determining that the maximum achievable data rate does not meet a threshold criteria;
    transmitting (508) one or more probe transmissions from a plurality of candidate data rates, each candidate data rate associated with a Nss and MCS type, each candidate data rate not being associated with a pre-selected data rate; and
    if at least one candidate data rate meets the threshold criteria, reconfiguring the pre-selected data rates to include (518) the at least one successful candidate data rate.
  2. The method of claim 1, further comprising:
    if all candidate data rates fail to meet the threshold criteria, leaving the pre-selected data rates intact.
  3. The method of claim 2, further comprising:
    after waiting a time interval, transmitting one or more probe transmissions from the plurality of candidate data rates.
  4. The method of claim 1, further comprising:
    after waiting a time interval, retrying the pre-selected data rates in probe transmissions; and
    if at least one of the pre-selected data rates meets the threshold criteria, restoring the at least one pre-selected data rate to its original value.
  5. The method of claim 1, wherein the threshold criteria is based, at least in part, on a Packet Error Rate meeting a threshold.
  6. The method of claim 1, wherein the threshold criteria is based, at least in part, on receiving an acknowledgment or block acknowledgement in response to a probe transmission.
  7. The method of claim 1, wherein transmitting one or more probe transmissions from a plurality of candidate data rates, further comprising:
    associating a probe probability vector with each pre-selected data rate, the probe probability vector including one or more candidate data rates, each candidate data rate including a probability of success; and
    selecting a candidate data rate based, at least in part, on a highest probability of success.
  8. The method of claim 7, further comprising:
    updating the probe probability vector based, at least in part, on success or failure of the candidate data rate meeting the threshold criteria in a probe transmission.
  9. The method of claim 1, wherein the pre-selected data rates are based, at least in part, on offline simulations.
  10. A wireless device (800, 850), comprising:
    a radio transceiver (812, 862) to receive and transmit data via a wireless network (700); and
    a rate controller (818, 864) to determine a maximum achievable data rate for transmission of the data, the rate controller configured to:
    use a data rate table (820, 866) to transmit probe transmissions in search of the maximum achievable data rate from pre-selected data rates stored in the data rate table, each pre-selected data rate associated with a number of spatial streams, Nss, and a modulating and coding, MCS, type, the pre-selected data rates being a subset of all data rates supported by the wireless network (700);
    determine a stuck point at which the probe transmissions cannot proceed to the maximum achievable data rate because said maximum achievable data rate does not meet a threshold criteria;
    perform one or more probe transmissions using a plurality of candidate data rates each candidate data rate associated with a Nss and MCS type, each candidate data rate being outside of the data rate table (820, 866);
    track success or failure of the probe transmissions using the candidate data rates over a first time period; and
    if at least one probe transmission using the candidate data rates meets the threshold criteria, load the at least one successful candidate data rate into the data rate table.
  11. The wireless device of claim 10, wherein the rate controller is further configured to:
    configure each pre-selected data rate with a probe probability vector, PPV, the PPV including one or more candidate data rates, each candidate data rate including a probability of success, the probability of success based on probe transmissions meeting a threshold criteria.
  12. The wireless device of claim 10, wherein the rate controller is further configured to:
    select a candidate data rate based on a highest probability of success associated with the candidate data rate.
  13. The wireless device of claim 10, wherein the threshold criteria is based, at least in part, on a packet error rate.
  14. The wireless device of claim 10, wherein the threshold criteria is based, at least in part, on not receiving an acknowledgement or block acknowledgement to the probe transmission.
  15. A computer program comprising executable instructions for causing at least one computer to perform a method according to one of the claims 1 to 9 when executed.
EP14711403.7A 2013-03-14 2014-03-04 Dynamic rate control in wifi systems Active EP2974098B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361785833P 2013-03-14 2013-03-14
US13/921,860 US9148816B2 (en) 2013-03-14 2013-06-19 Dynamic rate control in WiFi systems
PCT/US2014/020124 WO2014158784A1 (en) 2013-03-14 2014-03-04 Dynamic rate control in wifi systems

Publications (2)

Publication Number Publication Date
EP2974098A1 EP2974098A1 (en) 2016-01-20
EP2974098B1 true EP2974098B1 (en) 2019-11-27

Family

ID=51526812

Family Applications (1)

Application Number Title Priority Date Filing Date
EP14711403.7A Active EP2974098B1 (en) 2013-03-14 2014-03-04 Dynamic rate control in wifi systems

Country Status (6)

Country Link
US (1) US9148816B2 (en)
EP (1) EP2974098B1 (en)
JP (1) JP5925982B1 (en)
CN (1) CN105027486B (en)
TW (1) TWI526092B (en)
WO (1) WO2014158784A1 (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9179465B2 (en) * 2012-10-02 2015-11-03 Telefonaktiebolaget L M Ericsson (Publ) Methods and devices for adjusting resource management procedures based on machine device capability information
WO2016156768A1 (en) * 2015-03-31 2016-10-06 Toshiba Research Europe Limited Dynamic sensitivity control in 802.11 stations
US9538535B2 (en) * 2015-05-11 2017-01-03 Qualcomm Incorporated Cross-band rate adaption
US10742998B2 (en) * 2018-02-20 2020-08-11 Netgear, Inc. Transmission rate control of data communications in a wireless camera system
US11272189B2 (en) 2018-02-20 2022-03-08 Netgear, Inc. Adaptive encoding in security camera applications
US11558626B2 (en) 2018-02-20 2023-01-17 Netgear, Inc. Battery efficient wireless network connection and registration for a low-power device
US11064208B2 (en) 2018-02-20 2021-07-13 Arlo Technologies, Inc. Transcoding in security camera applications
US11102492B2 (en) 2018-02-20 2021-08-24 Arlo Technologies, Inc. Multi-sensor motion detection
US11076161B2 (en) 2018-02-20 2021-07-27 Arlo Technologies, Inc. Notification priority sequencing for video security
US11756390B2 (en) 2018-02-20 2023-09-12 Arlo Technologies, Inc. Notification priority sequencing for video security
US10805613B2 (en) 2018-02-20 2020-10-13 Netgear, Inc. Systems and methods for optimization and testing of wireless devices
US10686552B2 (en) 2018-06-06 2020-06-16 Hewlett Packard Enterprise Development Lp Wireless transmission rate adaptation
CN108471630B (en) * 2018-06-12 2022-06-21 Oppo广东移动通信有限公司 Transmission rate adjusting method, device, mobile terminal and computer readable medium
KR20240073163A (en) 2018-07-24 2024-05-24 퀄컴 인코포레이티드 Techniques for rate adaptation under congestion and latency constraints
WO2020159481A1 (en) 2019-01-29 2020-08-06 Google Llc Adaptive connection management for marginal network conditions
US11109299B2 (en) 2019-12-12 2021-08-31 Google Llc Adaptive public land mobile network management for varying network conditions

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060274840A1 (en) 2005-06-06 2006-12-07 Marcos Tzannes Method for seamlessly changing power modes in an ADSL system
US7369510B1 (en) * 2002-05-06 2008-05-06 Atheros Communications, Inc. Wireless LAN using RSSI and BER parameters for transmission rate adaptation
US7764727B2 (en) * 2005-01-12 2010-07-27 Atheros Communications, Inc. Selecting MCS in a MIMO system
CN101375523B (en) * 2005-01-12 2012-12-12 高通创锐讯有限公司 Selecting MCS in a MIMO system
US8098640B2 (en) 2006-07-12 2012-01-17 Intel Corporation Systems and methods for determining a predictable modulation and coding scheme
US8102944B2 (en) 2007-05-18 2012-01-24 Qualcomm Incorporated Mode and rate control for MIMO transmission
US8472543B2 (en) 2008-04-25 2013-06-25 Broadcom Corporation Method and system for predicting channel quality index (CQI) values for maximum likelihood (ML) detection in a 2×2 multiple input multiple output (MIMO) wireless system
KR101584993B1 (en) 2009-09-09 2016-01-14 삼성전자주식회사 / / method and device of selecting transmission/reception mode of plural transmission/reception pairs
CN103125092B (en) 2010-09-29 2016-09-21 马维尔国际贸易有限公司 Stream in communication system resolves
EP2437441B1 (en) 2010-09-30 2013-09-25 Alcatel Lucent A method for generating a look-up table for retrieving data rates for a data transmission connection

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None *

Also Published As

Publication number Publication date
US20140269655A1 (en) 2014-09-18
US9148816B2 (en) 2015-09-29
TWI526092B (en) 2016-03-11
CN105027486B (en) 2018-11-09
CN105027486A (en) 2015-11-04
WO2014158784A1 (en) 2014-10-02
EP2974098A1 (en) 2016-01-20
TW201438488A (en) 2014-10-01
JP2016517658A (en) 2016-06-16
JP5925982B1 (en) 2016-05-25

Similar Documents

Publication Publication Date Title
EP2974098B1 (en) Dynamic rate control in wifi systems
TWI689217B (en) Method of beam recovery request in physical uplink control channel and user equipmemt and base station thereof
US11924901B2 (en) Wireless communication method and apparatus
US9622252B2 (en) Systems and methods for dynamic wideband channel selection
EP3354090B1 (en) Method and network node for reducing interference in a wireless network
US9807742B2 (en) Method and device for transmitting uplink control information
CN101366222A (en) Four way handshake for robust channel estimation and rate prediction
US20160036467A1 (en) Systems and methods for providing resilience to lte signaling interference in wifi
US20080008229A1 (en) Cellular system, method of allocating frequency carriers in the system, base station controller and base station used in the system
KR20100032423A (en) Methods, apparatuses and system for cell selection in a wireless communication systems
US11843957B2 (en) Detection of insufficient RF coverage areas in a wireless network
CN110719137B (en) Channel quality notification method, receiving method and device
US10098058B2 (en) Method and apparatus of transmitting discovery signal, method and apparatus of discovering cell
US20160345165A1 (en) Collecting data from a statistically significant group of mobile devices
KR20150038047A (en) Wireless communication system with interference provisioning and method of operation thereof
US20230388819A1 (en) Automatic upgrade planning
US9467878B2 (en) Wireless access point apparatus and method for testing throughput
US9392477B2 (en) Neighbor cell interference estimation
US20230027215A1 (en) Resumed beamformed communication with a terminal device
US20230069236A1 (en) Wifi location enhancement
CN106877985B (en) Method for processing pilot symbols and node equipment
WO2023200485A1 (en) Interference avoidance for cellular networks
KR20190110872A (en) Method and apparatus for controlling retransmission of signal

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20151009

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAX Request for extension of the european patent (deleted)
GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

INTG Intention to grant announced

Effective date: 20190605

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE PATENT HAS BEEN GRANTED

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: CH

Ref legal event code: NV

Representative=s name: MAUCHER JENKINS PATENTANWAELTE AND RECHTSANWAE, DE

REG Reference to a national code

Ref country code: AT

Ref legal event code: REF

Ref document number: 1207919

Country of ref document: AT

Kind code of ref document: T

Effective date: 20191215

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602014057434

Country of ref document: DE

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20200228

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20200227

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20200227

REG Reference to a national code

Ref country code: NL

Ref legal event code: FP

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20200327

Ref country code: RS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20200419

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602014057434

Country of ref document: DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 1207919

Country of ref document: AT

Kind code of ref document: T

Effective date: 20191127

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MC

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

26N No opposition filed

Effective date: 20200828

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

REG Reference to a national code

Ref country code: BE

Ref legal event code: MM

Effective date: 20200331

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20200304

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20200304

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20200331

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: MT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191127

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: NL

Payment date: 20240212

Year of fee payment: 11

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20240209

Year of fee payment: 11

Ref country code: GB

Payment date: 20240208

Year of fee payment: 11

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20240209

Year of fee payment: 11

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: CH

Payment date: 20240401

Year of fee payment: 11