So, first thing we should put out is that we really barely touched CSMA, which is

illustrated that conceptually. And there's a lot of mathematics that you

can go through to actually derive the throughput of CSMA.

but that's beyond our scope here. And even what we cover in the more

advanced version of this class, networks [UNKNOWN] bytes, is not the full version

of the analysis that you can present to derive the throughput of the CSMA

network. So, ALOHA is much simpler to understand

and much simpler to explain. And it still gets the main concepts and

the main ideals across. So that's why we focus on that here, but

even the concepts we looked at, there's many other concepts and intricacies of

CSMA that we don't have time for. one of them, really quick, is the idea of

what's called the hidden node problem. And so, suppose that B is an access point

and A and C are trying to transmit to them, we've noted their transmission

ranges here. we noted before in the lecture that we

assume that the transmission sensing interfering ranges are all really the

same. And that's why we just draw one circle.

But that's not necessarily the case. So, it is possible here that A and C

cannot sense each other's presence, right, because they're out of range of

each other and they can't hear each other.

But that when they're transmitting to B that they will interfere.

So, they can't hear each other, so they may decide to transmit at the same time.

and then they'll just interfere, and then they won't get acknowledged it back, so

that's a problem. This is called the hidden node problem.

And a,a good Wikipedia entry, a good Wiki article, or a good blog would be to look

up the hidden node problem, and talk about that.

And so, let's though, briefly mention some of the benefits that CSMA has over

ALOHA. So, what we get from adding this career

sensing into the mix. And remember ALOHA doesn't have any

carrier sensing at all. First is that if you looked at the graph

of CSMA, the per-station throughput as we have more stations will always decrease.

And that should make sense because as you have more stations in any network you are

going to get less per-station throughput. So, if this is the number of stations and

this is the per-station throughput on this axis over here.

Then for CSMA if it looks something like this, then for ALOHA it would, you know,

decrease more rapidly. so it, it's better in a sense that you,

you don't have a much degradation as quickly.

also the aggregate throughput. So now, this is per station.

Well, one thing we noted with ALOHA was that even the aggregate throughput which

is really sad, the aggregate throughput, even when you add all the station's

throughput together is less than what you could get, even if you just had one

station in your network. But the aggregate throughput with CSMA

actually increases a little bit for the first few stations at least.

for maybe the first three, four, five stations depending upon the parameters

and a lot of other things going on. But so with, with ALOHA and so let's just

draw this diagram. This would be the CSMA and this is the

ALOHA. So, with ALOHA if this is the aggregate

throughput, we saw that it still went down even as we have more stations,

right. So, it still went down somehow.

But for CSMA, it actually will go up a little bit at first before it drops,

typically. So, there will be some point here where

you can have more than, more than one station that still has aggregate

throughput that's going up at least, which is good.

So, this is the CSMA, and this is the ALOHA.

The last one is that even though CSMA seems a little more complicated

mathematically to, to analyze. This, we can do CSMA in a completely

distributed implementation. So, we don't need any coordinator.

But with ALOHA you can imagine that you would need to know how many stations

there were around you. Because you would have to change that

probability that you would transmit in each time slot depending upon how many

stations there were. But if you're not doing any sensing,

there's no way you can tell how many stations there are that could be

interfering with you. So, you would need some central

mechanism, some sensual coordinator to be able to tell you that.

in order for you to keep the optimal probability of transmitting each time.

But with CSMA, we can run all the back off, and keep tallies on what the current

back off counter is. just in our own device.

And we don't need to really know anything about how the other devices are operating

other than the fact that we have to sense them.

But that can all be done within our node in an intuitive fashion.

But we should point out that still, and neither of these are really very

scalable. So we, we have the aggregate throughput

increasing for the first few stations. But still, even as we go up to a higher

number of stations, the throughput drops a lot.

And that's even worse than ALOHA. So, CSMA makes it better.

but it doesn't make it scalable by any means to a large number of devices.

And that's why when you're in a hot spot it's, it's tough, because it, as you have

more and more people, it's just going to cause more and more interference.