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.