Friday, February 10, 2017

MU-MIMO is Dead! MIMO and MU-MIMO Explained

The 802.11ac story is quite muddy, somewhat deliberately so by those of us in the business of selling people new hardware, so this blog will try to deconstruct it for general understanding.  MIMO (Multi-In Multi-Out) and MU-MIMO (Multi-User MIMO) are actually very different technologies and are independent of each other.   

As will be shown, MU-MIMO requires quite a lot of things to go "just right" in order to work at all, and without a large client base of support, it is a technology very high on hype and very low on practical deployment performance.

MIMO

MIMO capability was introduced with 802.11n.  MIMO allows for multiple parallel spatial streams to increase total bandwidth between a single transmitter and single receiver.  MIMO capabilities are specified as follows:

Number of transmit radios  x  Number of receive radios :  Number of spatial streams


There are variations on MIMO where these numbers can be different.  However, to maximize throughput (which is what we are all obsessed with as an industry), the number of transmit radios = the number of receive radios = the number of independent spatial streams.

MIMO communication works in both directions (i.e. from AP to client device and from client device to AP), but the maximum number of spatial streams between the access point and the client device is always limited by whichever device supports FEWER spatial streams.  Thus, if you have a three-stream AP (3x3:3) and a two stream client device (2x2:2), you are only ever going to get two spatial streams, and the last stream from the AP is unused.   Most client devices are only capable of single stream (1x1:1) or dual stream (2x2:2); more streams require more radios and more antennas, which consume more space and more battery, both of which are quite antithetical to the design of smartphones and tablets.   There are a small number of high-end laptops (e.g. MacBook Pros) that support three streams.   

The maximum theoretical half duplex data rate in 802.11ac for MIMO is as follows.   Note, this is the number that all vendors advertise, but these numbers are NOT data throughput.  Under very ideal conditions (single AP and single client device very close to each other, no interference, etc.), the maximum achievable throughput will be approximately 40% of the half duplex data rate.   This is a property of how the IEEE 802.11 protocol works.   Keep in mind that most real-world conditions are also far from ideal, so your actual throughput numbers are usually going to be much lower still.

  • 1x1:1 – 433 Mbps half-duplex data rate (MCS09)
  • 2x2:2 – 867 Mbps half-duplex data rate (MCS09)
  • 3x3:3 – 1299 Mbps half-duplex data rate (MCS09)

MU-MIMO

MU-MIMO is introduced in 802.11ac wave 2, and is intended to better handle very high density client device environments (e.g. college lecture halls, convention centers, auditoriums, concert venues, etc.).   It is a technique that does not increase raw half-duplex data rates, but rather allows the AP to literally talk to multiple client devices simultaneously.  

It utilizes a technique called transmit beamforming to directionalize an omni-directional signal by inducing deliberate phase offsets of the same signal transmitted across multiple antennas.   This effect creates zones of constructive interference (where the signals are in phase and thus add linearly) and destructive interference (where the signals are out of phase and nullify each other).   



This technique only works uni-directionally downstream from the access point to the client device(s).  In order to determine the correct phase shifts, the access point must also know the position of each client device, relative to itself.  Thus, the client device must support a feedback mechanism – the AP periodically sends out “sounding frames” from each antenna, and each MU-MIMO capable client will respond with a matrix indicating how well it hears the signal from each antenna, and those values are then used by the AP to compute relative position of the client devices.  



There are three key elements for MU-MIMO to work properly:

  • The clients in the same MU-MIMO group must all support the position feedback mechanism. This means the client devices must utilize 802.11ac wave 2 chipsets.  Older chipsets are not upgradable, as the core function is built into the chipset hardware itself
  • The clients in the same MU-MIMO group need to be physically far apart from each other, at least angularly, relative to the AP.  This is so that the signal for each client can be maximized at the correct client’s position and nullified at the other client positions.   It won’t work for client devices that are only a very small distance (i.e. less than 10-20 feet) away from the access point, or are too close to each other in radial direction from the perspective of the AP.
  • The time required to transmit to each client should be (approximately) the same.  This means each client should have a similar amount of data and be able to use a similar data rate.  They don’t need to precisely match, but the efficiency of this technique is vastly reduced if one client in the MU-MIMO group takes significantly longer to talk to than the other client devices.




Thus, there are several things that have to go “just right” in order for MU-MIMO to even do anything.

The 802.11ac wave 2 MU-MIMO access points all currently have four antennas, which enables them to talk to up to three separate clients.  (The direction of the last spatial stream cannot be controlled independently).   What few MU-MIMO capable clients that exist are typically only single-stream or dual-stream.   The Edimax USB adapter you indicate is a MU-MIMO capable client device, in that it supports the required position feedback, but is only a single spatial stream device with a single antenna, hence the half-duplex data rate of 433 Mbps.  

The reality is that very few client devices actually support MU-MIMO.  The only smartphone that supported it to date was the Samsung Galaxy Note 7, which had unrelated incendiary problems and is no longer available.  The iPhone 7 had been rumored to support it, but when that product was finally released by Apple, the capability was quietly omitted.   In fact, the only client devices I know about that support MU-MIMO are the USB dongles like that Edimax EW-7822ULC.  Ironically, this is not terribly useful, since the technique of MU-MIMO is intended for very dense client environments (e.g. auditoriums, college lecture halls, stadiums, convention centers, etc.), which by definition are dominated by smartphone and tablet users.  Thus, while we and every other vendor actively sells and promotes 802.11ac wave 2 access points (and client device dongles), the truth is that MU-MIMO is both unnecessary and unusable for most SMB applications.

Preview: Tri-Band

Many vendors, including EnGenius, are in the process of launching a new AP product known as “tri-band” that incorporates a 2.4 GHz 802.11n radio and two 5 GHz 802.11ac radios, and can therefore simultaneously (and bi-directionally) communicate with two 5 GHz client devices simultaneously, without the need for any additional support by the client devices.  Thus, the product is automatically backwards-compatible with all 5 GHz 802.11n and 802.11ac client devices.  We anticipate this product to be much better suited to high-density client environments, since it can talk to two 5 GHz client devices, bi-directionally, all the time, vs. MU-MIMO which can talk to up to three 5 GHz client devices, downstream only, sometimes.  Watch this space...

2 comments:

  1. What about popular mesh network adapters? Do you think they could take advantage of MU-MIMO for upstream connectivity?

    ReplyDelete
  2. Short answer is “no.” Current 802.11ac wave 2 and 802.11ax chipsets are downstream MU-MIMO only (ie from AP to client, or in mesh from root AP to remote node APs). We MIGHT see upstream MU-MIMO in future 802.11ax chipsets, though it is a really hard problem and difficult to do in real deployments. It also wouldn’t really solve the loss of 1/2 your throughput every mesh hop, though perhaps mesh would appear slightly faster with bi-directional MU-MIMO - in reality, you would only be able to connect maybe 2x more remote nodes to the same root and maintain the same performance.

    ReplyDelete