Today in our training video, we’re going to talk about one of my favorite things, the MCS table, and how you can use it.
The MCS table is one of the things that I not only love to teach, but to use because it helps me evaluate the quality of the RF environment.
Also, here is the link to François’ MCS table mentioned in the video. https://mcsindex.net/
MCS Table And How To Use It.mp4 transcript powered by Sonix—easily convert your audio to text with Sonix.
MCS Table And How To Use It.mp4 was automatically transcribed by Sonix with the latest audio-to-text algorithms. This transcript may contain errors. Sonix is the best audio automated transcription service in 2020. Our automated transcription algorithms works with many of the popular audio file formats.
Today in our training video, we're going to talk about
one of my favorite things, the MCS table
and how you can use it.
MCS table, it's one of the things that I love just to teach
but to use because it helps me evaluate
the quality of the RF environment
the RF media that our devices are working in
is reflected in every single transmission.
So every client device, whether it be in an... sorry
every transmitter device, whether it be an AP or a client
anything that's going to transmit on the RF medium
is going to make an internal decision
of which MCS am I going to use?
Now, MCS is a grouping of a wide variety of different things
from modulation, coding scheme, guard interval,
channel width, they're all tied together in this
now as we went from 802.11a and g with OFDM
and then moved to the 802.11n
we said, "Oh, we have some new features we can do"
instead of just, you know
6, 12, 18, 24, 36, 48, 54 meg data rates.
We now have more data rates to choose from.
Great. But how do we categorize those?
So MCS is a way to organize those
Today as we're moving into 802.11ax
The MCS is getting phenomenally huge.
Let's take a look.
Here's the 802.11ax MCS chart from SemFio
that's Francois's company,
Francois's one of our ECSE instructors
and he put together this great MCS table for 802.11ax
including the OFDM, but also all the various options
in OFDMA for resource units, size
And this is just a subset.
So instead of teaching off this big monster one
I'm going to go back to the one we've
been using for a while to teach 802.11n and ac
this is the... for this part, it's just the same.
I just took out the the more complex ax part
just to be able to teach the same concept.
As you move to ax, you'll have more complexity.
So let's look at this here
and let's zoom in and see across the top
we have HT 802.11n the first that used MCS
and then to the right of that it says VHT
and that's 802.11ac
And these are the MCS numbers
you note they'll also work a little different.
In n HT they counted up 0 - 7, 8 - 15,
and they kept counting up
and if you looked at the full table, it goes out to 77
there was over 77 rows
of different combinations put together.
When ac came out, they went,
Yeah, we can't do that anymore.
This is going to be 100s and 100s of rows too complex.
How about if we switch it up and just go
MCS 0-9 one spatial string.
Then repeat. Two spatial streams 0-9
three spatial streams 0-9
And so they change the mechanism to do that.
So in 802.11n 9 MCS is different than 802.11ac 9 MCS.
On the other hand, if you see an MCS that's bigger than 8
then you know you're going to be back over in the sorry
bigger than 9, we can still go to 9, sorry, little mistake there.
Now, you also have a column for Modulation Scheme
from BPSK to QPSK to 16-QAM, 64-QAM
and now up to 256-QAM
As we go to ax, we're going to add a new 1024-QAM as well
We'll do another whole video on how the
modulation schemes are more or less efficient in
For the Coding, Coding is saying, for old fashioned people
who have been around modems a long time
This is kind of the the parody bit
that we're going to be sending to say
if I send two bits and only one has to be delivered
So I have 100% spare. That's Coding 1/2.
I send two I get to keep one.
This is Forward Error Correction (FEC)
and there's ways, mathematical algorithms
that make this work
and we can go from 1/2, which is very robust
but not very efficient.
You have to send twice as much as you wanted to receive.
Up to 5/6 Coding in 5/6 Coding we send six, but keep five.
So we have a very small amount of robustness
or or this is more brittle.
And so it's one of the ways we can send data faster
is by minimizing the coding scheme.
On the other hand, we lose robustness in the process.
Then the next column over for 20MHz wide channels
we have the Data Rate is going at either
a guard interval of 800 or guard interval of 400.
This is based on, Are you indoor or outdoor?
How far are you're going to go?
400 was the guard interval that we picked up
when we went to 802.11n
It's a little faster, a little better, faster throughput
because our chips were quicker.
And then we have a column for Minimum SNR.
Now, this is a generic, this is not specific for any one client.
There's a generic SNR.
To get the data rate
you need at least this much SNR
and RSSI column is,
"To get this you need at least this amount of RSSI"
Now these two are our generic columns.
The data came from Revolution Wi-Fi's
great Wi-Fi Capacity Planner.
And he did the research to come up with these values here.
So that's what's on the MCS Chart
Let's go through and see how we can play with this.
If we come over and look and zoom in
and let's say my client is a 80MHz wide capable client
It supports ac
And so when it's going to call and make its request to the AP
and say, "Hello, Mr AP, I'd like to join you. I can do..."
And it reports back what it can do.
I can do 80MHz channels. I can do short guard or long guard
I can do MCS 9s, because I'm in AC I can count to nine
I support 256-QAM, 5/6 Coding, anything in here.
And so inside the box from the 6.5
in the upper left-hand corner
all the way down to 866 I can support 'em.
Now, the AP may support more, it can go to 1.3 gig
but you can't so you negotiate in that association process.
And now the AP keeps in its table, next to your information
your client device can do these things
and it needs to remember what it can do
because if it sends the wrong one, it's definitely going to fail.
As a client device, you have it pretty easy.
You only have to remember one.
You remember the AP
and then you stay within this little box.
So I have a box from 6.5 All the way over to 866.
And someplace in that box
the AP can support it and the client can support it.
So the client finishes associating
and it now wants to send a DHCP request.
So that's the first thing it needs to do to get on the network.
It packages up the DHCP request
sends it down to the radio chipset and the radio says
OK, how should I modulate, and code
and choose channel, and choose guard interval?
How am I going to make the radio
actual bits going out over the radio?
How do I want to do that?
Well, it already knows what's possible.
It could do 866
Now if we look at 866 we can come over and say
866 is short guard interval, 80MHz wide channel.
We come over and look on this side
and that means I'm MCS 9 using a modulation
of 256-QAM. That's a very brittle, it's not very robust
way of modulating bits
What we're going to be doing
is we're putting 8 bits on every RF symbol
that we're going to send
and we're using a 5/6 Coding
which means we're going to send 6 bits
but only expect to get 5 back
So we have a very slim margin
of extra bits in there for our forward error correction
But if it works, we get really fast 866 throughput
So the client packages it up, sends it off.
With that set of radio modulation features
the bits are put into this kind of a packet, package, sorry
and then the client sends it that way
and then the AP receives it and the AP's radio
is going to do one or two things
actually, there's only one thing
if it can decode it, demodulate it
and make sure there's no error, no CRC error
it will send back an ACK, I received yours and we're good.
And so if that's the case
it's just going to continue to send them that way.
Now, this process works in both directions.
The AP's is going to choose which MCS send
down to the client. The client's going to choose its own.
And so in this mode, and you can think
every transmitter is choosing which MCS to choose
and that's great - if it works.
Now, here's the problem.
What happens if that 866 didn't work?
Now, what am I going to do? the client,
sorry, in this case,
the transmitter, doesn't matter up or down
but the transmitter said
"I thought this worked.
In our association, we had this table
and we're supposed to work.
It didn't. Why?"
Now, it could have been because the 80 MHz wide channel
meant that I had 60b more noise I was listening to
so that means my SNR was too low,
which means that's why it didn't work.
So the answer that might be changed
from a 80 to a 40MHz channel.
What if the problem was
my forward error correction wasn't robust enough?
So the, over here, the 5/6 Coding
should have been 3/4 Coding
Now, there's a cost to that
I would have went from 866 to 780
that would have been the cost on there
but maybe that was the problem
or maybe my 256-QAM modulation was too tight
too brittle, and too complex
and the receiver couldn't demodulate it properly.
So maybe I should slow down there.
So from the transmitter's point of view
I can decide which of these things I want to do.
Do I want to change channel width
guard interval, modulation scheme, or coding scheme?
Any one of those could have been the reason why it failed.
But right off the bat, it doesn't know.
It could have been congestion.
I tried to talk and someone talked on top of me
so probably I'm just going to try it again.
So usually what happens is the transmitter device
will attempt to send it with an MCS 9
fail, transmit, fail, transmit, fail, transmit, fail
no ACK, data, no ACK, data, no ACK
And after 4, or 5, 7, again, this is proprietary
every transmitter manufacturer has a different algorithm
At some point, it will say,
"that did not work. What should I do?"
Now, I know of one device that when it fails at 866
it goes zoom right up here to 6.5
Now, that seems kind of stupid
like, why would I go from the fastest to the slowest
but, it happens to be a voice over IP handset
and what they're thinking is, "hmm, maybe when the
handset first associated and joined in AP
it was on a really good AP
but it's mobile and it wasn't in a call.
So now the human pulling this little phone along
has now moved to a different place.
I'm still associated to the old AP
I had no reason to go to a new one.
I tried to talk.
let me see if I should change APs"
So it goes, fail, fail, fail, here.
Drops to 6.5
And what it's saying is
if I package that same DHCP request
and I want it to go at BPSK
the most robust, slow, very strong modulation scheme
one bit per symbol, very strong
punches right through a lot of noise, coding scheme
I'm going to send two of those bits
and only expect one to be back.
So I've got 100% spare.
I'm going to go with a long guard intervals
take that picture, that out of the picture
and this narrowest 20 MHz channel
This is as slow as Wi-Fi can go
If I can't do this, then trigger a roam
Now, some vendors will go up, up, up.
they'll stay in the same column
and they'll keep climbing up as they change
Some vendors will change columns first and then up.
Some vendors go on diagonals.
Some have a little Z pattern.
For your own pattern, take your device
set up a Wireshark capture
be capturing your device and move around
and you can watch these changes happen dynamically
It will be in the capture to find out what's going on.
Now, I don't think
at least I'm not smart enough to have figured out
retroactively, what the entire algorithm was
but I've seen lots of different algorithm choices
going up, down, diagonal, up to the top
stay there for one
Some just go, I'm gonna instead of changing coding
they just slip, 256-QAM, 64-QAM 16-QAM
They only change modulation
Your mileage may vary
but the MCS Table is where you can learn all of this
Now, I'm not smart enough to have this memorized
I carry one around with me for that very reason.
If you'd like to learn more, come to wlanpros.com
We have lots of data available for you
Lots of resources, videos, podcasts, blogs
blog roles, Twitter rolls, anything you want to look at
Thanks for being part of the community.
Automatically convert your audio files to text with Sonix. Sonix is the best online, automated transcription service.
Rapid advancements in speech-to-text technology has made transcription a whole lot easier. Are you a radio station? Better transcribe your radio shows with Sonix. Sonix has the world's best audio transcription platform with features focused on collaboration. Automated transcription can quickly transcribe your skype calls. All of your remote meetings will be better indexed with a Sonix transcript. Get the most out of your audio content with Sonix. Do you have a podcast? Here's how to automatically transcribe your podcasts with Sonix. Create better transcripts with online automated transcription. Are you a podcaster looking for automated transcription? Sonix can help you better transcribe your podcast episodes.