 All right, I'm going to introduce a man who needs no introduction. He has forgotten more about wireless than I have ever learned because he has been doing wireless for exactly one year longer than I've been alive, I believe. So please sit down and learn everything that you wish you understood about wireless but never had the time to learn. He has been a long time learning it and he's going to distill it into two short hours for you. Grab yourself some water, sit down, I hope you went to the bathroom before this. You're not going to want to miss a second. Eric. Thanks for your time. Thank you. Okay, guys. My name is Eric Johnson. I'm currently in the employ of Hewlett Packard Aruba. I've been the wireless guy for 31 years. Designed in tennis for eight years. Worked for Nortel as a base station architect on cellular. And I've been doing Wi-Fi now for the last 16 years. So if at any point during this presentation you feel nauseous, please lay down on the floor. Breathe calmly and plug your ears. All right, so let's talk a little bit about where we're at today with Wi-Fi. Coming up through, you know, the standard developed as a best effort sort of data solution. It's been evolving through 11N. 11N was a pretty radical change when we introduced the concept of MIMO, the idea of transmitting more than one stream of data at the same time. Then in 11AC we extended a lot of those concepts. But really, you know, it was really about, it was very consumer driven. It was about getting the biggest number possible on the side of the box when they put it into Best Buy or your local electronics store. So it really kind of ignored some of the actual issues that you run into when you're actually doing high density communications. One of them is, it's kind of an interesting point, is the first picture you see here on the right-hand side, this was actually accumulated in our headquarters building in Santa Clara. It turns out that most of the traffic that's being sent over the air actually is not very large, right? It typically tends to be small packets. And if you've got an 80MHz wide channel and you're sending a 256-byte packet over the air, that's like sticking a tricycle onto the middle of an 11L superhighway, right? It's not a terribly efficient utilization of the spectrum. So this is one of the things that 11AX is definitely looking at addressing. It's one of the key features of 11AX is the idea that, okay, well, maybe we can't do anything about the size of the tricycle, but maybe we can put a whole bunch more tricycles on the road at the same time, right? So this is the idea of OFDMA and we'll definitely be touching on that as we go through the presentation. The second thing is, is that CSMA, so Carrier Sense Multiple Access, it's been with us for a long time. It's been working pretty well. But the reality is, is that it means that the radios are actually operating in a pretty conservative fashion. Imagine you're in a large major sports stadium. It turns out that the amount of power coming off of your handset on one side of the stadium is enough to stop a radio on the other side of the stadium operating on the same channel. But that's kind of ridiculous because the access points in stadiums many times are actually under the seats and you're probably maybe 10 feet away from it. So why is your handset not transmitting, you're talking to something that's right there but you're being interfered with by something that's across the stadium. So this is one of the other things that's being looked at. It allows the system to operate more on an interference basis and this is something called overlapping BSSs or BSS coloring and again we'll touch on that as we go through this. There's a number of other things that the standard addresses as well and we'll go through that as we go through the presentation. The first chunk of the presentation is going to be focusing on 802.11ax how we get the new data rates, how OFDMA works and the second part of the presentation is going to be talking about the antenna techniques that have been with us since 11n with the introduction of MIMO then transmit beamforming and multi-user MIMO to help you understand how those things work because they're very important parts of the standard. They've been with us for a little while but the way that they operate is not well understood generally. So just a little bit on the standards process. Just so everyone understands that the process of writing a standard is actually a really long process. The definition for 11ax was actually written down initially in 2014. So here we are in 2019 and we're just about to have the standard finally ratified. It's a five to six year cycle. So it goes through multiple draftings now. IEEE meetings for Wi-Fi of course now incorporate hundreds of participants. The original 802.11b standard was written by a couple of dozen people in a dark room. 11ax now and 802.11 of course is big business so that attracts a lot more people. So some of the things that they wanted to focus on was improving the efficiency as we just talked about. Also getting back to 2.4 gig and actually getting around to improving 2.4 so it's not stuck in 11n forever. Always with handsets in particular the killer feature for everybody's phone is how long the phone operates. So anything you can do to increase the battery life and reduce the power consumption of your radio is always a beneficial thing and it's in every single standard they work to and continue to improve the power. Wi-Fi unlike our cellular friends Wi-Fi is always focused on being backwards compatible as well. The new 5G stuff that you guys are hearing about is a downside that is not backwards compatible with 4G. It's one of the benefits that the cellular industry has and that they don't have to worry about supporting really old phones but of course the downside is you need to upgrade your gear in order to use the radio. Wi-Fi continues to be backwards compatible in fact the only thing that was deprecated with 11ax was the infrared mode that was originally defined for 802.11. So the first draft came out in 2016 we're on the third draft now the products that you're seeing in the marketplace are based on the third draft anything that's left at that point the standards body has done a pretty good job of defining all the hardware bits first and then ending else after that is firmware and can be updated through a software upgrade. Alright so we're expecting the standard to be ratified early next year Wi-Fi Alliance certification will probably start in October of this year. Oh yes, a little note by the way the next one EHT which is 802.11.BE sorry 802.11.BE is in now the standardization process so I don't know it's extreme high throughput this is the definition right now I don't know what comes next maybe insanely high throughput. Alright so Wi-Fi Alliance how do they fit in? Well they're the marketing and certification body they don't participate they're a participant in the IEEE process they're not in control of that process they're the reason that we have Wi-Fi 6 right that term Wi-Fi 6 Wi-Fi 5 being 11AC Wi-Fi 4 being 11N and so on back through the times and this is to help consumers understand the technology 6 is better than 5 BE is not necessarily better than AX which is one of the reason that they're moving away from sort of the nerd speak in order to allow the market to understand what's going on in the standards activity alright Wi-Fi certification is voluntary but it's a general thing that we certainly ascribe to and most handset vendors do as well because it gives you at least a basic level of interoperability so the standards process again will be kicked off and just as a note it's not part of my presentation today but the Wi-Fi 6 certification also requires WPA3 operation as well so that will move Wi-Fi into a fully encrypted mode I know there's other discussions on WPA3 this week but just suffices to say that a device that is Wi-Fi 6 certified is also WPA3 capable alright so we're seeing products you guys have seen the Samsung S10 we're hoping that Apple their next generation phone will support 11AX we're fully expecting it to and then once the certification program is kicked off we figure 11AX is going to be the prevalent standard next year and that's a little screenshot the Wi-Fi 6 logo is shown there so that's part of what makes the consumer feel good about the standard alright so let's go back to 11N a little bit we're going to back up before we go forward so first of all just introducing the idea of orthogonal frequency division multiplex of course this was actually introduced with 11A and 11G OFDM is the idea in fact our friends have taken advantage of it here to create some artwork for us but the idea with OFDM is instead of sending one monolithic channel you now divide your data up across a whole bunch of individual tones as you can see in the picture here you've got 26 on the left and 26 on the right and then there's some other ones that are shut off so I'm going to this is probably the wordiest chart in the deck but I just want to review this the idea of the basic concepts of digital communication the propagation channel is the most important concept when you're talking about wireless communications the propagation channel is not the radio channel you're operating on it's everything that happens in this space it's all of these columns, the walls, the ceilings all of you, the chairs everything that's in this room determines how the bits are transmitted from me to you and so the propagation channel is an element and understanding the propagation channel is how you actually accomplish digital communications the radio channel is the channel width that's a 20, 40, 80, 160 megahertz wide channel and that's the frequency allocation that we put the data over and then we talk about tones and subcarriers so in this little picture on the upper right-hand corner here this is showing 8 to 11 sorry 8 to 11 G which had 52 subcarriers you can see the red dots on either side those are the guard band those are tones that are turned off there's one turned off in the middle because that's where DC is when you down-convert this to baseband so those don't actually have information on them so we're left with some tones and then some of those are allocated to be what are called pilot tones the pilot tones don't have any user information on it, it's known information to receive or understand what's happening in the channel then a couple of other things cyclic extension this is an important concept so in this room there are multiple paths where I can bounce signal off the walls if I'm in a larger space it could bounce off the firewall so we have to do something about those long-distance bounces that's called multi-path in order to deal with that multi-path the way you do that with OFDM is by sending a symbol so when you're sending the data you tack on a chunk of the symbol and you repeat it now it's not useful airtime but it makes the system robust against multi-path and then finally forward error correction like a CRC in an Ethernet packet forward error correction can detect errors and by also coding data at the transmitter you can also decode the errors and fix them because it's put at the forward end of the link so that the receiver has an opportunity to correct an error right by the way if you guys have questions stick your hands up because I know this stuff so I'm happy to go through the questions on the fly alright so this is kind of looking at 11 and 11 AC on the upper left it was 11 AG and then we had it with 11N they turned on a couple of the tones they figured out they didn't need quite as much guard band so they actually recovered 4 tones which is about a 10% improvement in throughput so we have a 20MHz channel a 40MHz channel and a 80MHz channel shown here when you're talking about OFDMA it starts off with something called an inverse fast 4A transform so when you're doing digital 4A transforms it's always handy to make things a factor of 2 so it turns out the 20MHz channel is based on 64 tones a 40MHz channel is based on 128 tones and an 80MHz channel is based on 256 tones it makes the silicon processing of the 4A transform very quick you don't need to know that it's just a detail that I thought I'd share with you okay so basically you'll note that when you go from the 20MHz channel up to the 80MHz channel you actually go from 56 to 242 subcarriers which is more than a factor of 4 and the reason is as we aggregate the channels and make them bigger we recover some of the guard tones on each end of the channel okay so most of you have probably got the number of 3.2 microseconds in your head if you're dealing with wifi that comes from the symbol duration one of those individual tones is modulated at 312.5 it kills symbols per second for those of you that are old enough to remember dial-up modems we talk about this as being the BOD rate that's the rate at which you send symbols over the air and then we tack on the guard interval and then we can modulate the signal so 11N supported up to 64 quam 11AC supported up to 256 quam and I will show you pictures what I mean by that and then with 11AX now 64 quam it sounds really impressive 64 to 256 sounds like 4 times as fast it's not actually it's only about 33% faster and I'll show you why alright so that was 11N 11AC to help we understand where we came from for those of you that have equipment that you've been using to listen or to observe 11N and 11AC gear 11AX has actually modified the symbol rate to 78 ks and there's a real good reason for that which I will cover but one of the things it means is that if you've got 11AC equipment and it's trying to receive 11AX 11AX bursts are complete gibberish to a previous generation radio the backwards compatibility the radio actually has to adapt down to the previous standard in order for the client to understand it so by going to that smaller symbol rate it takes 4 times as long to transmit the symbol now instead of being 3.2 microseconds it's now 12.8 microseconds so it takes 4 times as long to transmit the data the big concept with 11AX was introduced was OFDMA and so this introduces the concept of what's called a resource unit up to this point we've been thinking about Wi-Fi as being a 20MHz channel a 40MHz channel and 80MHz channel with 11AX the resource unit now is a portion of that the smallest chunk that they carve up in 11AX is 2MHz wide that's called a RU26 and I'll show you a picture of that and then you can have a 4MHz an 8MHz a 20MHz and a 40MHz block as well we can now do multiple parallel transmissions in an 80MHz channel you can have 37MHz blocks each one of those can be servicing as a user that means you now have massive parallelism and it has major impacts on the latency and jitter characteristics of Wi-Fi because you no longer have to if you've got 37 people with small packets they all had to line up and transmit sequentially with the old standards with 11AX I can now transmit to all 37 users at the same time so that has pretty profound impacts on the operation of the Wi-Fi system the guard intervals I mentioned the 1024 QAM okay the channel widths are the same for 11AC and 11AX in this picture they're both showing you 80MHz wide but on the top you notice that we were using an FFT size of 256 on the bottom it's 1024 so that's four times as many tones stuffed into the same space they still have the guard tones to create space between the channels you actually see that there's a few more in the middle that are turned off and then there's a chunk at each end again to create the physical space between the channels and we had to widen the definition in the middle now why did we do that let me jump ahead here this is why we did that if you had a 2MHz chunk of 80 to 11AC there'd only be six of the sub-tones in there with 11AX we actually get 26 sub-carriers in there so why is that important well with 11AX in the RU26 the 2MHz block two of the tones have to be allocated as pilot tones if I was running this with 11AC and I only had six and two of them were pilot tones that's pretty inefficient use of the channel so this is one of the biggest reasons why they changed the symbol duration frequency from 312.5 to 78kHz was to squeeze more tones into this space so this is what the RU26 looks like there's physically 26 tones two of them are pilots and in the case of an RU52 it just means there's 52 tones in that case four of them are pilots and that roughly corresponds to 2MHz and 4MHz wide channels this is the impact of going to the longer duration packets it does give a bit it means that it takes a lot longer to transmit the symbol but the guard intervals which are shown here roughly to scale the percentage of the time that you're transmitting the cyclic redundancy is less so the overhead associated with that has been reduced so this is a marginal improvement in system efficiency again by going to the tighter tones and then going to this picture so this is really the key feature of 11AX is OFDMA you now have the ability to send any combination of non-overlapping blocks in that picture to any number of users up to the maximum for the channel so I could have a bunch of users with a 2MHz allocation then I could have another bunch of users with a 4MHz allocation maybe I give somebody else and that can happen on one burst and on the next burst it can be completely different I now have the opportunity to make quality of service physically manifest at the physical layer with wireless multimedia with Wi-Fi that was a statistical result with wireless multimedia for a high priority client it would have a higher probability of seizing the channel with this now I can actually say this user, this is a high priority user I can assign this frequency block to that user and that user will get it for as long as I need that user to have it and it's deterministic I can now say this user is going to get 4MHz maybe it's the CEO of the company you're working for and that allocation could potentially follow them through the network so you could actually have a deterministic quality of service over the air you can also manipulate how long a user gets that channel for to determine how often the burst is sent to a user so if you have a user or an IoT device needs to transmission every 10ms you now have the opportunity to do that so there's lots of degrees of freedom introduced with this and I'm also going to show you a little bit later on what the impact is on basic latency in Jitter for a Wi-Fi system based on 11ax does this make sense really the key aspect of 11ax yes so the access point that's actually a really good question the access point in 11ax the question was is this managed by the access point so the answer to that question is yes 11ax is interesting because it actually puts the access point much more firmly in control than it used to be the access point is now allocating the channel width or the amount of spectrum the user is getting when the user will get on the air there's a magic piece of code that runs in every AP called the scheduler there's a vanilla scheduler ship with the chipset but each individual vendor this is going to be an area for potentially wild differentiation you can completely alter the behavior of your radio between one vendor and the next because the scheduler is not standardized and so it's open to all kinds of algorithmic fooling around if you have a few devices in industrial settings you could make it so that every single device gets a 2MG slot and they get it on a fixed schedule or if you're talking about a business environment you could then have it left wide open and it will just allocate the bandwidth on an on-demand basis or in fact you can subdivide the channel part of it would be scheduled, part of it would be on-demand so there's a huge amount of work that I think you're going to see the industry go through over the next probably three or four years and they take some of these really interesting algorithmic concepts and apply them to the radios so a great question and there's more to come on that sorry so it's the 11AX is much more scheduled the clients will still probe and still indicate that they have packets to send and that they will be then put into the queue but the way that the queue is managed now is going to be a lot more structured before it was just simply whoever won the battle would get the channel now the AP is going to be determining on a burst by burst basis up to 37 users which users are going to be getting the channel so it can now make much more intelligent decisions about how bandwidth is allocated so the question was what happened with previous generations when you're running against an 11AC client or an 11N client the radio just falls back to compatibility mode right so if you've got a group of users maybe you've got 50 devices on your system or 11AX the rest of them are legacy so when it gets an opportunity it will do a group burst to the 11AX devices and then it will fall back and do an 11AC burst and 11N burst and then do another 11AX burst right so yeah it still negotiates that the same way it did before right so this is the hard part of actually writing a backwards compatibility standard that still runs 11B radios right the industry has to do this because scan guns and that type of thing they use in industrial settings most of those things are 12 to 15 years old so right so let me continue this is an example of two sequential bursts and the first one the red block that you see there that's one user getting half of the channel then there's a few users getting two megahertz blocks and two others getting big chunks and then on the next burst that half channel allocation can be now divided up across a dozen users right the system has complete flexibility on a burst by burst basis to figure out how much bandwidth to allocate and to which user so this is the other impact so assuming that somebody doesn't need the entire channel with most of the time as I showed you that's not going to be the case and this is roughly to scale this is showing three users with data descent so if this was a legacy system on the top you have 11AC there would be a transmitter reception three different users would go through this process with OFDMA we can now send all three of those users at exactly the same time so it means the amount of time I'm using the air has actually been reduced by 50% in this example that has massive implications because that means that not only did I clear the channel for the radio I'm operating on I've now cleared the channel for every other radio on the same channel in the area so it creates a lot of transmit opportunities for other devices all right so data rates so where do the magic data rates come from this calculation can be done for basically any digital radio system you need to understand your symbol rate which is 78.125 kilo symbols per second that gives you your basic duration which is one over that number the cyclic extension which I mentioned it makes the system multi-path trawler has to be accounted for when you're doing the calculation and then you need to understand the modulation depth so this is where we go from BPSK to up to 1024 qualm 1024 qualm is 10 bits per symbol or 10 bits per tone and BPSK is one bit per tone so depending on whether you're close to the AP or farther away you'll get a different modulation rate so this is just a refresher BPSK is literally it's a one or zero you're given the top dot or the bottom dot we only ever send one dot on any given tone at any given time we don't send both of those at the same time because the radio won't know what to do with that so if it's a one the top dot goes if it's a zero the bottom dot goes now we can also do this in two dimensions this is an IQ radio so we can do it you can have a one zero left and right or a one zero up and down and so the upper right hand quadrant here now is a one one the bottom left hand corner is a zero zero we're encoding the data because we don't send ones and zeros over the air we send analog signals so we encode the data with amplitude and phase information and then the receiver can figure out what the transmitter was sending this continues for what are called qualm rates so it's quadrature amplitude so it's amplitude end phase so we have 16 qualms 64 qualms, 256 qualms and 1024 qualms but one of the things that's interesting about looking at the plots this way there's actually physical information encoded in these pictures you'll note that the dots on the 1024 picture are about half the distance apart that they are in the 256 qualm picture and that actually has physical meaning that's a voltage, that's a difference in voltage if you cut the voltage in half you need 60B more signal to noise ratio in order to be able to properly decode that point this is why when you want to run really high data rates you need to be progressively closer to the device because you have to have enough signal to noise ratio to properly interpret the right point for example if I'm on this plot if I want to send this but I have too much noise the receiver may actually think that I'm sending this point or sending this point in which case there's a bit error the forward error correction may correct it but I may have a packet failure as a result so this is why we need more signal to noise ratio I'm not going to say that 11ax requires you to hold your phone up against the axis point but you're going to have to be a little bit closer okay on the bottom right-hand corner is just this an actual measurement a video captured off a vector network analyzer this is thousands of transmissions all shown on the screen we're only sending one point at a time but you end up with this is what you see on a VSA or a vector spectrum analyzer it shows up as the individual dots if you send random data you eventually fill up all the squares on the picture make sense? okay, don't see anybody laying on the floor railing it we're good so we have all that information so in RU-26 we've covered this there's 26 tones two of them are pilots so that's not sending useful data so I have 24 left over the raw data rate is 78 ks per second and I know that with all of them I'm sending 10 bits per tone that gives me a raw rate for 2 MHz block of 18 and 3.25 Mbps right? so even though it's only 2 MHz wide there's actually still lots of bandwidth associated with that and this goes all the way up to the full channel 996 is actually the 80 MHz channel all being allocated to one user and in that situation there's 980 useful tones and that gives me a data rate the raw rate of 760 Mbps now this is per stream most major phone devices that are going to be deployed with 11AX are going to be two stream devices that means if you're running 80 MHz channels there's a very good chance that your system will be routinely exceeding a gigabit per second if you had asked me that question with 11AC I would have told you that in special lab conditions if you contrived the test exactly right you could get over a gigabit per second when you have two radios with 11AX it's actually pretty easy to do so this is one of the things that's going to be different we're actually going to see true gigabit per second rates and remember the reason that that's going to be happening more often as well is I'm no longer sending 256 bytes over an 80 MHz channel I can now fill up the entire channel statistically far more often than I was able to do with 11N or 11AC because now I'm putting many more users and sharing that channel more effectively so if you run the calculation right on the left hand side then we have the coding so MCS for those of you that are familiar with that term MCS means Modulation and Coding Scheme so you have your modulation which gives you your raw rate then Coding so if it's a half rate code that means for every one bit of information we're putting on the air we want to send we're actually putting two on the air for a 5.6 code if we want to send five bits we actually put six on the air that helps the receiver use that redundancy to help it do the forward error correction that I mentioned so it makes sense right MCS0 is the rate that reaches the furthest you want that to be most robust so we have 50% redundancy in that situation and MCS11 you're going to be very close to the access point you don't need as much redundancy and that's why we use a 5.6 code so you take the raw rate you multiply by the coding and then you have to include the guard interval so this is the amount of time where we've taken a chunk of the packet and repeated it and that guard interval then gives us the net data rates, remembering that these are per stream on a 2MHz block I'm able to do up to 15Mbps on a 2MHz block and I can do that on an 80MHz channel to 37 users right now, contemplate a couple of things first of all if you're sending most data you're probably not going to exhaust that amount of bandwidth because that's actually about 30Mbps even if you're sending 4K video to your phone on a phone form factor the typical data rate over the air to a phone is around 4Mbps right so that means that potentially you could be supporting 37 video streams to 37 individual phones with zero contention every single time you want to transmit the radio is always going to be available you could not do that with 11AC because all those packets would have had them stacked up so this is a really important change to the standard you can do that same calculation you can extend this and by the way in most practical enterprise deployments MCS5 is your typical your typical edge of cell so you're still getting useful rates there sort of in the 7 to 8Mbps range for a single stream so that's about 15Mbps for a dual stream device all the way up to around 300Mbps per stream for a dual stream sorry for a single stream so almost 600Mbps for a dual stream device at the edge of coverage right yep yep yep no this is that they fully generalize that right so if you've got a user that's far away he's going to get his burst at MCS0 another user that's close in is going to get his burst at MCS8 and now we actually across that channel you're going to have different modulation rates running across the width of the channel there's some implications which I'm going to cover a little bit later on it also means that the AP now is also going to be determining the transmit power that's allowed for the client devices as well but yeah it allows for full mix each individual link is effectively separate from a radio perspective great question but just the question there by the way was slot by slot across the OFDMA can I have different modulation rates on each one of those blocks the answer is absolutely yes okay so OFDMA so how many of you are familiar with something called Erlangs probably you can date yourself okay Erlangs are, there's a guy named Erlang literally he worked out the math a long time ago a queuing theory one of the applications of Erlangs is actually looking at call centers and figuring out how many people they need to have in a call center answering phones so basic queuing theory it tells you the efficiency of the way that your resources are allocated so you can use that calculation it's not entirely precise but it'll give you some insight in what's happening with 11X so one of the things that we saw with 11AC was this idea of having two 40MHz channels on a single axis point so that was kind of an interesting idea you had two bearers and it was kind of sticky because you couldn't easily move clients between them but we're going to take that as one of the cases so you can have one user on 11AC and 80MHz or potentially two users on 11AC and 40MHz or with 11X and that 80MHz block you can have 37 users running in RD26 the data rates are quite different the 11AC channel was capable of 338Mbps per stream the sorry this would have been a dual stream device a dual would have been running 156Mbps per user and the 11X can give you 10.3Mbps per user at the edge of coverage if we assume a standard transaction of about 125 kilobytes or 1Mbps we can use our langs to calculate the impact of that so let me put that to you visually so imagine you're buying groceries and the grocery store has got to make a decision about how to invest their money in cashiers they can go out and buy the coolest fastest thing that they can find but it can only handle one user at a time so it's all queued up so with that really cool system you can do 100 transactions per minute and you can handle people's grocery carts and move them through and you can have two really superb cashiers that are capable of operating at 50 transactions per minute or you can hire some really dumb people that can barely operate a calculator that can handle 3 transactions a minute which is the best system it turns out it's the one on the right hand side and the reason is especially if you're delay sensitive if you're not talking about the absolute maximum data rate what you just want to do is deal with traffic from a whole bunch of different sources this is what happens when you do the analysis so it takes roughly 30 times longer to send that burst through on the MCS-5 with 11AX than it does for 11AC the difference is I now have multiple ways of pushing that data through now when you look at the way data shows up in your system there's a pretty good chance that two or more people are going to want to transmit it at the same time and if you've got one super duper system that can only handle one transaction at a time automatically they're getting queued up if you've got two it's better so this is showing you over the course of an hour how many 1Mbps burst can I handle over the course of an hour so it turns out I can do 25,000 with 10 microseconds of delay if I have 240M channels I can do 115,000 with 10 microseconds delay or if I've got 37 blocks I can handle 935,000 1Mbps with 10 microseconds delay so this is telling you statistically that your delay in jitter is dramatically reduced with this system even though the peak data rate per user is less it's the fact that I've got multiple channels to push them through and this isn't being pessimistic because this is assuming that I've got a fixed width if I've got channel space left over if I've got unused RUs I can actually allocate some users more bandwidth opportunistically and actually do better than this so this is a huge impact it means that you can rely on Wi-Fi in many circumstances like industry where you're doing production line type stuff with things whipping by at a very high rate you can now have very low latency deterministic latency with 11ax where you couldn't do that with 11ac or 11m so this is really a huge huge change in the way that we need to think about Wi-Fi alright BSS coloring so BSS coloring again I mentioned this earlier this is the idea that CSMA has not served us well but it's a little too restrictive particularly if you're in a complex environment so obviously in an enterprise environment or a stadium you've got lots and lots of access points but one of the places people don't think about is this also applies in an apartment building for those of you that are in an apartment I have a small apartment in Santa Clara I can see about 40 different SSIDs on my channel and that means that we're all sharing the channel so fortunately it kind of works but it doesn't work as efficiently as it might with BSS coloring I know how the radios can make more intelligent decisions about when to respect CSMA and when to ignore it so this was the problem before so 11N 11AC 11A 11G as soon as you heard something about the CSMA threshold you just stopped trying to remember and it didn't matter whether it was coming from your particular area or from the adjacent areas with 11AX there's a small number of bits allocated if the color does not match I now use a different threshold so in other words if I'm on channel number 1 and I'm on the green cell here up in the right-hand corner that's got a different color code than when I'm on the gray one in the middle that means that since I know that this isn't coming from my immediate area I can now use a modified threshold and selectively ignore that guy which means I get many more transmit opportunities in a dense environment which reduces latency which reduces jitter and gives you better system performance because if I get two or three users that are able to transmit at the same time they're on the air then they're off the air that clears the channel much more quickly almost everything that we do in digital communications whether it be Wi-Fi or any other standard it's all about scavenging airtime and this is a great way to scavenger time if you can get that airtime back by doing multiple transmissions at the same time that's a really good thing and this does not require any synchronization through the network it's just not as unusual it's just simply by more intelligently applying the algorithm you get a better result so this is the basic state machine with CSMA you would go down and you would say okay well ignoring the color I would just say okay well I see above threshold I say the channel is busy and I have to sit and wait if it comes down if the colors match they still do the same thing but if the color is different I have a modified threshold so I can go ahead and transmit which means I now have an opportunity to go ahead so this is the busy work let me show you the actual measurement numbers these are the numbers that are taken from the standard minus 82 dBm is the level that a radio today by standard will stop transmitting but when you think about it in most enterprise settings most of the access points are transmitting around 18 or 19 dBm so this is the access point on the right hand side I'm now allowed to ignore a packet that comes in below minus 76 that's 60 dB difference is a factor of tune range so that means that I'm now ignoring 50% of the distance that I can hear that's a big change so that gives me many more opportunities and on the client side most clients are around 25 mW or 14 dBm so the clients are about 6 or 7 dB better as well and that means the clients now are going to have an opportunity to transmit much more aggressively so both ends are improved by virtue of this standard and it's a simple it's a very simple algorithm you simply look at the transmit power that you're intending to send and that tells you the level of power that you can ignore because the reason it's dependent on your transmit power is because if you're a high transmit power device you'll interfere further away but if you're sending lower power you're going to interfere further away less far away and you're going to receive interference less far away so that's why it's based on power but this is a really important innovation in the standard it's a fairly subtle idea but it's a useful one so we touched on this a little bit earlier it's been interesting in the cellular side of the business power control of the client device has been with us from like day one, GSM used to do this in the Wi-Fi industry companies like Apple and Samsung have been resisting any attempts in the past to try to put transmit power control into client devices 11AX does not work if you don't have some level of power control for the client devices the red one here is showing you what would happen if you've got a client that's very close to the access point and broadcasting at maximum power it's going to have spectral gunk outside of the channel and it will actually block the transmissions from another user that's trying to come in at the same time so the AP now in addition to assigning how much spectrum and when to transmit and how much bandwidth it also says what power level that the client's allowed to transmit at that has an incremental benefit by the way for the client devices because if you transmit lower power you consume less current and your battery lasts a little bit longer so that's kind of a good thing but again the client device manufacturers have been resisting this for a long time so that's one thing another thing is something called transmitter wait time so sleep mode has been built into the Wi-Fi center for a long time this is a pretty substantial improvement in the sleep mode capabilities devices can literally go to sleep for like a week at a time the association will be maintained and so you can have extremely low duty cycles that allows Wi-Fi to be looked at as an IoT technology because now you can have duty cycles which are 1% or 0.1% and the device can go to sleep for a long time and you can literally have a battery powered IoT device that now is going to have an operational lifetime of maybe two years plus so that gets into a practical range great question I have no idea so the question was about session timeouts so the idea is that the association is maintained in terms of what's happening at the higher level protocols I have no idea because I'm a physical air guy so this is a much more effective mechanism introduced in the standard it gives you significant power consumption improvements and will be definitely part of the standard one of the other things that they had to think about with 11X was when you had wearables like an Apple watch or some other device like that those devices were 20MHz only and 11AC and 11N it didn't matter the radio would just adapt down because it knew the client was only 20MHz wide it would just go down to 20MHz transmit to that client and go back to 80MHz again with 11AX that 20MHz device has to coexist with a 40 or 80MHz capable device so this was part of the standard this is important because they didn't want to force wearables to be using the full channel width because when you double or quadruple your clock frequency the power consumption tracks pretty closely with the clock frequency in a device so this allowed wearables and other devices like that to maintain their low power consumption profile but still allow for the benefits of providing all 80MHz to all of the devices that can operate at the same time so this is part of the standard it's mandatory for access points also for clients obviously if you have an 80MHz capable device you don't need to do this but if you're building a 20MHz only device it has to be compliant with this alright how you guys doing sticking with me okay cool alright multi-user MIMO so for those of you that know about this this was introduced in 11AC there are a couple of limitations with it the way that it was implemented on clients and there was a lot of overhead attached to it in order for multi-user MIMO to work which will actually go into depth in a few minutes in order for multi-user MIMO to work there was actually packets sent over there they're called sounding packets and so they're literally just a ping it would go out to a client and the client would respond back and there would be another one so if you had a whole bunch of clients you'd be spending a lot of your time just sending the sounding packets over the air that was a problem so it meant that really you couldn't get a benefit for multi-user MIMO once you got to pass or maybe 15 devices with 11ACs now we can do multi-user MIMO sounding to 37 users at the same time and they can all respond back at the same time so that just made multi-user MIMO almost two orders of magnitude more effective right so multi-user MIMO with 11ACs is going to be a real useful feature we're seeing broad support in the client devices with the partners that we're working with and every chipset supports it from an access point perspective so the other thing about multi-user MIMO is the concept of also using it on the uplink so with uplink multi-user MIMO it was looked at for 11AC but there was an issue of how to synchronize the transmissions and I'll show you a picture in a minute but the key when you're doing uplink multi-user MIMO was having all your users transmitting on the full channel with all at the same time that needed synchronization and that was addressed in 11ACs so uplink multi-user MIMO kind of looks very similar to having one device with two antennas or two devices with one antenna each so the math for these two pictures is exactly the same as long as the two clients start transmitting at the same time in the laptop that was guaranteed because it's coming from one device on the client side we had to build a new mechanism into the standard to allow for that synchronization of the client transmissions and the way that was done was something called a trigger frame the trigger frame is a new kind of utility packet that's built into the 11AC standard it does sounding it tells the devices what their channel allocation is going to be whether it's going to be an OFDMA burst or a multi-user MIMO burst it does a lot of coordination but it also gives you the synchronization pulse for all of the clients to start transmitting at the same time so important packet I don't know too much more about it beyond what I just described but it's really the key to make uplink multi-user MIMO work now why do we still look at multi-user MIMO because we've got this really cool efficiency thing with OFDMA well there will still be some transmissions that are going to need 1500 byte packets if you're sending a large email if you're sending a PowerPoint deck so it would have been easy just to say well we got OFDMA so screw the multi-user MIMO stuff because it's complicated well until you do the math so the small packets are shown so you can ignore the blue curve that's single user with on the left hand side is maximum size packets okay and if we're sending 1500 byte packets multi-user MIMO which is the red dots is always better so that means when we're talking about multi-user MIMO you have multiple users that are sending on the full channel width right but now you're using antenna techniques to isolate those users on the right hand side it's showing you the similar calculation with using OFDMA with small packets and in this case OFDMA is always more efficient independent of the signal to noise ratio so this is part of what the scheduler will have to do is figure out do I use multi-user MIMO or do I use OFDMA on this burst right and it's showing you that both modes are very effective if the packet characteristics are right and so this is why the AP is going to have to do a lot more heavy lifting with 11AX because it's going to have to look at the traffic characteristics the size of the packets that need to be sent and determining how to allocate the channel so that's the simulation result and on the uplink it's the same thing on the uplink maximum size packets are benefit from using MIMO and on the downlink with small packets you're always better off with OFDMA so this is why both modes are supported in 11AX now that's the end of my 11AX discussion per se we're going to completely change gears on here and talk about antennas and the way that signal processing and antennas come together in digital signal processing with digital communications to give you benefits alright the most basic antenna that you can build is a piece of wire and you run an electron up and down it and that causes radiation away from the middle that is the simplest antenna that you can conceive of so you get an omnidirectional pattern everything goes around it ripples in a pond when you drop a pebble into it if you put two of those antennas side by side and you separate them by a half wavelength and now both of them are moving up and down at the same time that creates this is the most basic phased array antenna that you can build and in this situation the because it's a half wavelength when it propagates left to right they're 180 degrees out of phase they cancel going left and right so that results in the antenna pattern that you see on the right hand side okay there's a point to this so you just have to stick with me alright you can extend that you can go to four elements the antenna becomes more directive you can see now that the width of this section here at the top is much narrower you get some side lobes side lobes are not mistakes by the way they come out of the math side lobes and antennas are a natural result of the antenna gain okay again all it is is just a wave from each one of the antennas adding up in a particular direction they're all half wavelength apart so again you get cancellation to left and right but maybe I don't like the side lobes so is there a way to get rid of the side lobes well it turns out there is you can build something called a binomial antenna instead of being one one one one so even amplitude the two middle ones can be excited at three times the signal strength of doing that now the trade-off is that I have lower antenna gain because the main beam is a lot fatter right so but that's a benefit if you don't want the side lobes and for example if you're building an antenna for a stadium where you're coming from the top you don't want the side lobes lighting up the end zones right so this would be an example of how you would shape an antenna for a particular application or maybe you don't want the peak of the beam to be tilted away from the antennas you want it to be tilted off the one side in that situation we can do phase-only synthesis for the antenna array in this case the one on the right-hand side the one on the right-hand side starts first then the second one then the third one then the fourth one so this creates a phase slope and the antenna tilts away from the phase slope so this is showing you how you can manipulate amplitude and phase and you can change the antenna pattern everybody got that? so the most important concept in digital communications is orthogonality OFDMA is orthogonal frequency division multiple axis you can also have orthogonal antenna patterns and what do I mean by that two mathematical functions are orthogonal if one of them is a peak at one location where the other one is a zero in OFDMA the individual tones they're a peak and all the other tones are zero underneath in the middle of that tone in antennas this is the same idea the blue curve is what we got earlier where I had two elements and they were excited in phase they were both going up and down at the same time this brown curve is what happens if now instead of putting the two antennas in phase I put them 180 degrees out of phase so this is kind of the sum difference stuff that was shown in the earlier session in that case I have my peaks go out to the side but you'll note here that I have a peak on this function and a zero on the brown one that literally means that I can put one user at the top of this picture and one user on the right hand side and I can send them two completely independent data streams because the antennas isolate the two users that antenna subsystem is orthogonal if you excited that way okay that's a really really powerful concept this is another example now with three antenna elements instead of just having now I have three different colors I can have one user here, one user here and one user on the right hand side and again now I can send three streams of independent information so this is the simplest form of my own okay in fact there were systems that were built like this in the analog base it's really hard to do but it is possible to do this from an analog perspective you can extend this four elements you can go up to eight elements you can go to any number of elements you want but there's a problem with this in spaces where you have no reflections you're literally between the earth and the moon in this room when I go off in that direction I have some energy bouncing off the wall and it comes back that causes contamination so this black curve instead of being nicely nulled out here I've actually got energy that's gone off the wall and come back here now causing interference so I have to do something extra I have to get the digital signal processing I'm going to recognize my antenna system for the propagation channel for the room that I'm operating in and that by the way is the basis for transmit beamforming for MIMO, for multi-user MIMO all of that stuff is based on this idea of orthogonality the system does basic algebra and it orthogonalizes the channel so let me show you what that means okay so some of you have probably seen pictures like this before this is actually from a simulator that I built of a room with no wall windows and no doors but the idea here is that I've got three antennas on my axis point and three antennas on the client alright so the three different colors that you see there are related to the three antennas that are on the axis point and you can see even though in this case the antennas are probably about this far apart but you get vastly different signal characteristics where the antennas are on the client I can take advantage of that and orthogonalize the channel I actually want nice strong reflections and that's how all of this stuff works so MIMO processing if you're talking about an 8x8 axis point or a 4x4 axis point it is leveraging all of the reflections in the space and it has to do it frequently because when you move or the door opens and closes it's going to change the characteristic of the channel so it has to constantly be computing this matrix but this matrix by the way all this is really if I have three antennas on my axis point all this is the measurements that I took at the client so during the sounding process I'm sending known information over the air so the client knows what to expect and it can actually calculate what the channel did between the AP and the client antennas and then work out what that matrix is so the matrix is nothing more than a measurement because being a lazy engineer I actually went digging a number of years ago hoping that somebody else had done a simplified example of this and of course the answer was no most of the time you see this matrix on the top of the paper and then it gets really scary they do really scary statistics this is a physical model where I'm actually showing you how this stuff works so this matrix this H matrix as it's called or the channel matrix is simply measurements of the space now if the client can measure that send it back to the AP to tell the AP this is how I hear the three antennas on the axis point I can do preprocessing at the axis point to actually separate the signals out of the client that's a really powerful idea but that's why we do sounding on downlink multi-user MIMO we actually send a sounding packet out the client say okay this is how I hear the three antennas it sends it back to the AP the AP inverts the matrix multiplies by what it would have sent and this is now the beam forming system that sends over the air so the antennas are actually sending three different symbols over all of the antennas on the axis point that's kind of bends people's brains a little bit by using the algebra you can actually see by multiplying this out that the stream one stream two and stream three are now getting mushed up across the three antennas on the axis point okay so that's an important idea to understand that all three antennas are involved in the process if it's a four by four it's all four antennas if it's a eight by eight all eight antennas now what does this look like in practice alright so here's a very very simple example between the earth and the moon I have three antenna AP and a single antenna client okay so what do you expect the antenna patterns would look like I don't know probably a simple beam pointing at the client well if you do the math that's exactly what you get it's slightly tilted to the right because the client is slightly tilted to the right right that makes sense to everybody okay now as we know we don't live between the earth and the moon we live in physical spaces so let's put one wall on each side and only look at the first reflection in the environment so if I put one wall on each side there's the AP and the client they're still exactly the same relative position except now I have bounces that go off the left wall off the right wall and up the middle what do you think the antenna pattern looks like now well it looks like this it's not very pretty and if you actually plot it on you can actually see the peak of the antenna pattern is actually not lined up with the client and why is that well the system is actually taking some of the energy and putting it on this bounce some of the energy and putting it on this bounce and then it's doing its best to get the main line up this pattern maximizes in a transmit beam forming sense maximizes the signal not in the general area of the user not in the general area of the phone literally on the antenna inside of the phone so it's actually peaking up the signal strength directly up on top of the antenna by using the bounces and the direct path to actually give you an optimum result but there's no way this is not a pretty antenna pattern right this is not the this is this is what some people would have you believe is going on with beam forming that's not what's going on beam forming is a terrible name for this it's actually channel optimization okay now what happens if I do the same thing but now I've got three antennas on the clients I end up with three antenna patterns that are transmitted at the same time one for each stream and this actually peaks up the individual signals on each of the antennas at the client in this space those three antenna patterns that you see are orthogonal similar to what I showed you before but now I'm actually accounting for the reflections in the space so this is the way if I go back to my original plot and look at what the signals look like directly underneath the antennas on the client this doesn't look like much but fortunately this is algebra and these are copies of the same signal so they add up algebraically this is actually what happens if you combine them stream 3 shows up only under antenna 3 on the client stream 1 and stream 2 are actually nulled out it's a pretty cool result right? like you wouldn't expect that to happen looking at this picture but that's actually what happens it also means that if you're trying to listen to a multi-user MIMO burst good luck because the signals over here are completely mashed and you can't differentiate them from one another unless you have a multi antenna access point if you want to listen to an 8x8 access point sending to 8 clients you have to have an 8 antenna probe stream 1 and stream 2 stream 1 shows up underneath antenna 1 stream 2 shows up underneath antenna 2 and it's nulled out under the other 2 so let's take a small jump here imagine that instead of those 3 antennas being attached to one device those 3 antennas are now attached to 3 devices that's multi-user MIMO that's exactly how it works the system does the heavy lifting at the access point to physically separate the signals at the clients if there's only one antenna it can't do anything it can't do any processing to try to get rid of the superfluous information so let's look at that in practice matrix is the same the only difference here is now is that on the right hand side those are 3 different users with one antenna each and they can only send back one row of the matrix they can't send back the entire matrix because they only have one antenna so what happens is the AP when it's ready to make a transmission it actually grabs a group of 3 or a group of 8 or whatever the number is puts them together inverts the matrix and then transmits to all of the clients that it's targeting it's pretty much the same process the sounding process is different but the underlying math is identical so now if I do my sounding my client antennas here are further apart by the way I've shown these on a line just because it makes better graphs this is fully generalized it doesn't matter where the clients are I've just put them in a line because it makes it easier for me to represent so when I'm sending out my sounding it's all done omni by the way one of the rules for multi-user MIMO for trying to beamforming the antenna patterns need to generally match they need to light up if you use a directional antenna it actually reduces the effectiveness of the system you want to use simple omnis particularly for indoor applications if you can so this is the sounding process in this case there's 4 antennas so there's 4 colors underneath it's all mashed up but remember each one of the clients is going to make a measurement now for the 4 antennas and send it back to the AP and I get the same result now we get this really funky looking pattern not very pretty but it's orthogonal in this space it gives me a peak under client 1 and a null under client 2 and client 3 so we've orthogonalized the channel I now enable multi-user MIMO I have one client operating that way and the same thing happens for the other 2 clients as well and you get different antenna patterns for the space everybody's brain hurt now? go so last topic looks like I'm not going to come anywhere near the time I expected but it is what it is so one of the things that I've been wanting to do for a long time is sort of visually represent a space and understand how MIMO is different from one point to the next every one of you has probably experienced you take a speed test and you're standing right here and you move over 6 inches and you get a completely different result why is that? I showed you earlier with all the signal variations can kind of give you an idea but it turns out there's actually a lot of information in that matrix so first of all we'll talk about what the tool is doing it's taking a rectangular box with no windows and no doors it puts the AP about 4 inches below the ceiling which is fairly common for most indoor access points I'm using, for most of the simulations I'm using simple omnis I'm assuming that the antenna is a ball and then the client is moved every 10 centimeters every 4 inches back and forth across the space and it builds up the matrix that you're going to look at alright so first thing I thought would be interesting would be how does the actual antenna placement on the access point affect it if you're building an AP with 4 antennas you can put them in a square which is the most common thing because it makes the AP kind of square and as small as possible or you can put all 4 of them in a line which would make the AP really wide so this is what I did the red dot here indicates the AP position and so this is showing you what the 4 antennas on the access point lined up in a line and I've got a 2 antenna client device so in these pictures purple is perfect and as you go up this graph when it gets up to red if you've got a point that's red the MIMO doesn't work it breaks there isn't enough information there is a freedom in the channel in order for the system to separate the 2 streams so you can see on this plot probably can't see from the back of the room but on this plot on the right hand side there's one little dot there that's red so at that point in space you probably can't run MIMO or it will operate at a really low data rate but in general it works pretty good over the space and it's fairly independent the 2 curves on the bottom here that's actually showing you the distribution so most of them are over to the left hand side the system is going to work pretty well alright now let's look at it if I put the antennas on the access point in a square it hasn't changed much and the distribution is roughly the same so that tells me that I'm pretty safe putting 4 antennas in a square or putting 4 antennas in a line as long as they need to be at least a halfway length apart it's pretty comfortable we can move the antennas around inside the chassis that's kind of an interesting result I've asked that question for years and I never had a good way of representing it now I do alright now I did look at a case I can actually build real antenna patterns into the system so assuming instead of assuming it's just radiating like a ball I put the antenna pattern on the right hand side so that's it's rotationally symmetric I put that antenna pattern in and then looked at the difference between an isotropic and a real antenna there's some differences in the overall shape the high points are little they're slightly different places but the overall distribution is roughly the same so I can still use an isotropic antenna when I'm doing the simulations and get useful insights over the results alright now this is really the interesting one because this was a question that my customers have been asking me for years why would I buy a 4x4 axis point if I've only got 2 antennas on my client alright this is the most common question in Wi-Fi and here's actually the answer this is the picture I showed you before with 4 antennas in a square exactly the same plot you saw before everything is nice and dark and I kind of get maybe up to about a third of the way up this plot probably means the room's working pretty well that's with 4 antennas what happens if I go to 2 antennas well this is what happens doesn't mean that the system's not working but it's going to be there's going to be far more places in the room where it's going to struggle to support the higher modulation rate right so we've actually done this test we didn't do it with a 4x4 axis point we did a 2x2 axis point we ran dual stream and single stream data rates and we actually replicated this experimentally as well as in the simulation so all of these points that you see here that are red or even going above the scale here those are locations where MIMO is going to struggle to operate or if it does operate you're going to be running at very low mcs rates on both radios so the two streams will be like at mcs2 instead of mcs9 in the blue areas so this is the impact now if you only got one or two users in the room it probably doesn't matter but if it's a meeting space this is a good reason to look at putting more antennas into that space even though the total peak data rate is identical the user experience is going to be quite different whether you have 4 antennas on the axis point or 2 so actually that is a truism more is always better for the number of antennas I will qualify for the number of antennas more is always better but the benefit it drops off is diminishing returns when you go from the same number of antennas to double the number of antennas you'll get this much change if you double it again you'll get this much change so there's a law of diminishing returns so with 11ax if you've got a high density environment you're going to put more antennas on you're going to look at it at an 8x8 axis point for like a lecture hall at a university because you've got hundreds of students that are beating on it with 3-4 voices each because they're watching their video whether they're listening to the prof and they're recording it and uploading it to their storage so it's going to depend on your environment but from a raw MIMO perspective which is what this is looking at if you're a 2x2 client you want to have at least 4 antennas and then you'll get incremental benefits beyond that having more antennas for higher capacity environments is beneficial because it engages other features so the question was if 4 is better is 6 better than that and 8 better than that the answer is if I go from 2 to 4 with 2x2 client I get a big change if I go from 4x4 to 8x8 which I can eventually get around to simulating because this plot is actually pretty good right so you can see the distribution on the bottom here so that I go from having a 4x4 to having 2x2 you can see they get smeared out and there's much more of the distribution that's at the higher numbers one of the other questions that I get very commonly is I can't put something on the ceiling either the architects are complaining or I've got asbestos in the ceiling so can I put the axis point really high on the wall this is that make so this is the simulation as well literally looks at the corner and what's the difference between putting the AP on the vertical part of the corner or the horizontal part of the corner and this is the answer a ceiling mount and a wall mount except along the wall like literally you're leaning against the wall and the axis point is over there except along the wall they're pretty much equivalent which is again kind of an interesting result because I never had a way to actually discuss this with customers now the one thing that would happen is in that situation they have more energy going upstairs and downstairs that could cause more interference above and below but from a single room perspective the coverage characteristic in the MIMO support is going to be roughly the same which is kind of a neat result now this is the other case that I'm sure all of you have experienced this is a fairly small room it's pretty good everywhere and you make a measurement like this and then you turn your phone and you get a different answer well why is that? is that supported in the simulation? in this case the phone is rotating and you can see how the distribution is changing so if you're moving it in the XY plane in this relatively small room it doesn't change much so it's just spinning on the table but all of you have had the experience of going from landscape to portrait mode so what happens when you do it vertically? that's what this one is in this case again it's fairly stable but you can actually see when it's vertical you get these bright spots in the room where it's different and this lines up again if you've ever done large-scale experiments with wifi and you've got lots of client devices scattered around you can get literally point variations in the room where all of a sudden like six inches over and you're still in the middle of the room it's different correct that's identical to laptop opening close it's identical to that and that is the end of my deck so I went through it a little more quickly I hope that was useful entertaining and learning experience I'll be around for a while so if you guys got some questions we can follow up thanks very much