>> Jin Li: Hello. It's my great pleasure... from Chinese University of Hong Kong to give a talk...

advertisement
>> Jin Li: Hello. It's my great pleasure today to invite Professor Minghua Chen
from Chinese University of Hong Kong to give a talk on capacity of large-scale
CSMA wireless networks. Minghua got his bachelor and master's degree from
Tsinghua University in 1999 and 2001. Then he go to UC Berkeley and got his
PhD degree.
After UC Berkeley, Minghua spent one we're at Microsoft Research as post-doc
researcher and then joined Chinese University of Hong Kong in 2007 as
assistant professor.
Minghua has won a series of procedures award, including the Eli Jury award
from UC Berkeley, ICME, 2009, Best Paper Award, and IEEE Transactions on
Multimedia Best Paper Award.
Without further ado, let's hear Minghua's insight on how to do scheduling for
large-scale CSMA wireless networks.
>> Minghua Chen: Thank you. Thanks, Jin, for the introduction. It's always
good to come back and, you know, learn new things from the colleagues here
and share a little bit what we have been doing in the past year.
Okay. So today I'm going to talk about how CSMA network can be made as
good as a TDMA network and in a very simple manner, okay?
So this is joint work with Chi Chau and Soung Liew. Chi Chau is currently with
UC -- University of London -- College London, and Soung is my colleague in the
Chinese University of Hong Kong. Okay? Okay. So what are the problem we
are looking at?
So we're looking at large-scale wireless network when you have N node
randomly scatter around in an area of N. Okay? So as the number of nodes
increase the area also increase. The density kept the same, okay?
It is a wireless network, so you have this spatial inference when one of the nodes
is in transmission its radio range will cover a subarea of this entire area and
consequently there are some nodes it's not allowed to transmit simultaneously
because otherwise they will interfere, okay?
So this is the key challenge. And the problem with study is that assume you
have N flows with randomly selected source and destination pair, okay, and the
question is that what is the throughput achievable for all the sessions? Okay.
Different session may have different throughput. Depends on whether your
source and destination are closely charter and so on and so forth. But we're
asking what is the throughput that is achievable for all the sessions. So
essentially the minimum of all the -- of all the session, okay?
So to do that, the key challenge is to handle the spatial inference. And as a
result, the scheduling is a key. The scheduling is try to determine at any given
time which node is allowed to transmit and which node are not allowed to
transmit and so on and so forth. Okay?
So let's see two very popular scheduling. First one is TDMA, okay? The other
one, in particular with study is CSMA. The scheduling need to answer the
question before they allow to one transmission; that is, if I'm going to transmit,
would I interfere any other transmission or would I be interfered, okay?
So in this particular case, there is two transmission that's ongoing, and this node
in particular want to decide whether or not I should transmit or not. You need to
consider if I start to transmit would I interfere other people's receiver? Okay. So
in this case, this guy say if you start to transmit that, I can't receive. So you can
transmit. And meanwhile, he also need to consider if I start to transmit would my
receiver be upset by some ongoing transmission already in.
In this case, this transmitter will have the -- if you have a global information, then
this transmitter will say okay, I will interfere with you if you start to transmit, okay.
So your receiver cannot receive anything. Okay?
So these are the two things a transmit scheduler need to handle when they try to
do the transmission scheduling, okay? And the TDMA, okay, is a concept. Let's
say it says if you have other global information, okay, then I can do scheduling
perfectly. Before I enable a tradition I can always check globally whether or not
this transmission will interfere with other ongoing transmission, and then I say
yes or no, okay?
Conceptually that's very powerful but it's not very practical. Because as the
[inaudible] gets large, no matter you are ad hoc network or you are WiFi network
with access point, that didn't talk to each other, then TDMA is not practically
implementable, okay?
And on the other hand, CSMA has got very popular, okay? It's because it's very
practical, and it give other people reasonable performance. The CSMA protocol
is based -- is a distributed randomized scheduling, okay? So when these node
start before it want to transmit, he will do a carrier sensing, okay? He sense
whether or not there is other near by ongoing transmission is going. And he will
do -- try to do a random collision of avoidance and then he decide okay, if
everything is fine and I'm polite enough, then I stop to talk, okay?
And it is ACK-based bi-directional transmission because he don't have global
information whether or not his transmission is successful at the receiver or not.
So he require the receiver to send an ACK package to the sender so that a
sender can know, okay, my transmission is successful, now I can move on to the
next stage. Okay? So these are the key -- two key component associated with
CSMA protocol.
In more detail, CSMA just do local decision, okay? And based on local
information only. This is in contrast to the TDMA where you require the global
information. In this three node -- three link example, the node transmitter A, B,
C, in the CSMA protocol, they will first start to come down according to a random
counter. When A expire in this case, he start to transmit, okay? As A start to
transmit, B and C will sense A's signal, so they will freeze. They will continue
countdown after A finish his countdown, after his transmission. And in this case,
B grabbed the channel and start to transmit. So the green means in
transmission, okay? And C and A are freezed, represent by red color, and so on
and so forth.
So in this way, it is expected the CSMA on average would give equal trans -- for
link A to transmit, for link B to transmit, and for link C to transmit, okay? So this
is based on very simple idea. And this is the reason that made CSMA very
popular, because it's so simple that you can implement it very well, okay?
So the question we're going to answer today is that what is the throughput
capacity of CSMA? Our observation is that for wireless network with a TDMA
scheduling they are well studied. Starting from 0 -- 2000, the Gupta and Kumar's
results shows that the optimal throughput per session is scaled as order of one
square root of N. Okay? This is a fundamental result, whether or not we like it or
not. Okay? Somebody -- some people doesn't like it because it says as the
wireless network gets really large your throughput goes to zero, okay?
But, on the other hand, some people like it, say well, it's still one over square root
of N, it's not one over N, okay? So nevertheless no matter you like it or not, this
is fundamental result, okay?
But this result is obtainable previously using a centralized scheduler, which
means in order to achieve this fundamental result, you need to have a
centralized scheduler who has the global information can encode all the
transmission of all the nodes.
But in practice, distributed scheduling is very popular, like CSMA. So the
practical relevant question is that what throughput can you get if you use
distributed scheduler, okay? And that is the question we're going to answer
today. Okay?
So before we dive into the detail, some take-home message. First, CSMA can
scale as well as TDMA. You didn't lose anything by using distributed scheduling,
okay? And today's CSMA, however, cannot achieve the optimal throughput. It
can only achieve one over square root of N log N. There is a factor here, okay?
And we show a slightly modified CSMA can achieve one over square root of N
result. And that is not very difficult at all. And it's very implementable in our
understanding.
As a side product, we also have results on how you can resolve the hidden
nodes for any CSMA network, okay?
>>: [inaudible].
>> Minghua Chen: Yes. Yeah. It doesn't show -- somehow the fonts doesn't
show that it should be ->>: [inaudible].
>> Minghua Chen: Yeah. All right. Okay. So what is our approach? We first
need to model CSMA, right? Since we are talking about CSMA. And then we
look at a very special type of CSMA which is hidden node free CSMA. Which
means in a CSMA network you don't have any hidden node at all, okay?
And for this subclass of CSMA network, it turns out it can be understand easily,
okay? So we do a stationary analysis and find out the throughput of the CSMA
network, okay? And this throughput is a function of CSMA parameter. And then
we tune the parameter to maximize the throughput. At the end we found you can
achieve one over square root of N.
>>: What about exposed terminals? There can be exposed terminals?
>> Minghua Chen: There could be exposed terminal. But otherwise they are
okay. So because exposed terminal just reduced the entire throughput, yeah.
>>: [inaudible].
>> Minghua Chen: Yes. But then to achieve one over square root of N, we
propose use a dual channel, dual carrier sentencing. That means we try to
advocate for an architectural point of view. Later on, whenever we try to
implement CSMA, perhaps we can -- we should always associate them with two
channel, rather than one channel today. Okay? Because at least that is what
allow us to achieve one over square root of N in this case. Okay?
>>: When you say dual channel, do you mean dual transceiver or [inaudible] one
transceiver?
>> Minghua Chen: One trans-- one receiver.
>>: One receiver [inaudible].
>> Minghua Chen: Yes. It's a half-duplexing. So that means you don't need to
receive or transmit simultaneously all to a channel.
>>: [inaudible] two channels simultaneously?
>> Minghua Chen: Yes, you do. Yes.
>>: Okay.
>> Minghua Chen: Yes. But there is [inaudible]. Okay. So any question before
I move on? Okay. Good.
So let's look at modeling CSMA. So previously on literature what people model
is the -- are interference, okay? They have interference modeling. That means
due to the spatial interference, two transmission are not possible if they are too
close to each other, okay? And to put these particular case, you just verify -- it
just checked the transmitter, okay, which is the blue node, to the receiver
distance, okay?
So in this particular example, these state for transmission is not -- is not allowed
because the receiver, the distance between the receiver to the other transmitter
is too close, okay? And this is captured by mathematical form which we may not
need to understand very -- in order to understand the later part of the work.
But this model is first proposed by Gupta and Kumar, okay? And following this
model -- following this relationship, you can characterize the feasible state of the
network. For instance, if in a wireless network you have a set of links, okay, they
are not simultaneously possible under the interference constraint.
In fact, if you apply this Gupta and Kumar's result, you will find this is one of the
possible -- one set of the possible links that can be simultaneously active. There
are other links that are not possible because it doesn't satisfy the interference
relationship, okay? So this is how people study the interference constraint,
okay? That means whenever you try to do scheduling, you need to satisfy this
constraint and as a result, some of the link cannot be simultaneously scheduled
with other links, okay?
And this is for the uni-directional communication, which means your receiver
doesn't need to send you any acknowledgement, okay?
In the case your receiver need to send you acknowledgement, the condition need
to modify a little bit. But still, the high-level message is still both the receiver and
transmitter need to be far away for another transmitter and receiver, okay? So
because -- beside the data transmission, now you also have the acknowledge
the tradition which you send from the receiver to the sender. So you have
another additional case to consider when you try to set up the interference
constraint for bi-directional communication.
So easily you can imagine the constraint would be even stranger than the
uni-direction communication, okay? Here is the example. This is the
uni-directional feasible state, okay, the same as the one we get from here. And if
we apply this bi-directional communication constraint, you will observe these
even less number of links can be simultaneous selective, okay?
For instance, this link is allowed in uni-directional communication and it's no
longer allowed in the bi-directional, okay?
But our observation is that in the literature people already consider interference
constraint, okay? But how about the carrier-sensing constraint? Interference
constraint is in some sense is the constraint allowed by physical law, okay? That
means as long as you want to transmit, these are the physical law that will guide
whether or not your transmission is feasible.
But carrier-sensing is more like a policy proposed by local government, right? So
your -- the action allowed by your policy may not be the action allowed by
physical laws, okay? So study the constraint allowed by physical law doesn't
mean you study the policy allowed by local government, okay?
So this feasible state by carrier-sensing decision is not captured before, and
essentially it only looks at the local carrier-sensing information around the
transmitter, okay? The transmitter has a carrier-sensing range. That means any
transmission, ongoing transmission inside this range this guy can sense it. So
whenever he sense it, he will not try to -- he will try to avoid the collision by not
transmitting, okay?
So it has a carrier-sensing range. And this range is independent of the
interference range. You can set the carrier-sensing range to very large, okay, so
that you are very, very polite. Whenever you hear any small power that indicate
other people are talking, then you start to shut up, okay? Otherwise, whenever -if you set a carrier-sensing range very, very small, then you are very, very
aggressive in try to transmit, okay? This is independent of whether or not your
tradition will upset other transmission or about upset by other ongoing
transmissions, okay?
And this can be captured using some mathematical form which we will not dive
into detail. But the important thing I want to point out here is that first the
carrier-sensing range is independent of the transmission range and interference
range. And, second, this decision is made by the transmitter locally only, okay?
In all the previous situation, you are involving the receiver to do the decision as
well, okay? Whenever receiver say hey, I cannot receive at this signal -- if you
transmit, then the transmitter will not start to transmit, okay?
So previous model all involve transmit -- receiver, while the carrier-sensing model
only involved the transmitter, okay?
Okay. Big picture. Interference model capture the global spatial interference.
Carrier-sensing model, they try to infer what's going on globally by using only
local knowledge. Of coarse sometime you make a mistake, okay, and cause
mismatch. And then that mismatch is the reason why the hidden node problem
will appear. Okay?
Next we'll go to the hidden node problem. So any question before we move on to
that? Okay.
What is hidden node problem? So the hidden node problem happens when the
carrier-sensing decision says you can transmit but the global interference
relationship says you will cause interference. Okay?
Here is one particular example. We have two link, this link and this particular
link, okay? Suppose this carrier-sensing range, which is the blue circle, the
carrier-sensing range is RCS. CS is carrier-sensing. And because this
transmitter is outside the carrier-sensing range of this transmitter, so they cannot
sentence each other, okay? So they start to transmit simultaneously, which is, in
this case, okay because it turns out the receiver, both receiver can receive -receive the data safely. However, when the second link try to send an ACK
package to the transmitter, he is -- he will interfere the data transmission from the
sender to the receiver in this particular case, okay?
To see that, just observe this circle with the dot, okay? And this is the
interference range for this particular receiver. And you are see this -- the second
receiver is within the interference range. Okay? That means when these guys
start to transmit, this guy will interfere, okay? And this shows one example
where your transmission, the bi-directional transmission is not allowed by the
interference constraint but is allowed by the carrier-sensing constraint. Okay?
Any questions? Okay.
Okay. So the implication is that the hidden node problem -- oh, okay. So there's
type o here. That means for this hidden node problem, they prevent the CSMA
to work along with the physical law, okay? So the first thing we want to do is that
we want to make the CSMA to go along with the physical law first and then we
start this particular good behavior CSMA, okay?
And remark for some people more familiar with the practical implementation will
remark that hidden node problem cannot be completely eliminate even if you use
RTS and CTS, okay? This is one result from Professor Gerlich from UCLA,
okay?
>>: [inaudible] I thought it did. So could you give an example where that doesn't
solve the problem?
>> Minghua Chen: Yes, good. So for the RTS/CTS to be very effective it is your
transmitter and receiver need to -- the system need to be time synchronized.
Because consider this case. So before a transmitter try to transmit a data, he
was sent an RTS, right? So when he sent an RTS, he has no idea whether or
not his receiver is currently interfere with other receiver or not. So when he said
the RTS and the receiver start to send a CTS, then the CTS will interfere with
other people's transmit, right, transmission. Yes?
>>: So you're saying that once the CTS is transmitted ->> Minghua Chen: Yes.
>>: That those other receivers may not be able to receive it because they might
be transmitting?
>> Minghua Chen: Yes. That is first case. Yes. And the second case, when
you apply to CTS back, you may interfere with other ongoing, ongoing
transmission, which the transmitter doesn't know. Because it's from the receiver
point of view, you will interfere with other people, right.
>>: Right.
>> Minghua Chen: Right.
>>: So they don't get the CTS?
>> Minghua Chen: Yeah. Right.
>>: And the issue is time synchronization.
>> Minghua Chen: Yes. So there is a paper showing that if the you are time
synchronized globally then you can use some very small slot to transmit a CTS,
do the RTS and CTS transmission, and in this slot there is no data transmission
is allowed. So the situation I mentioned just now would not appear, which is your
CTS never interfere with the data transmission. Yes?
>>: Is that [inaudible] to do with changing the length of the CIF or the DIF? Is
that how that's obtained?
>> Minghua Chen: You mean when there is time synchronized or without ->>: I understand what you mean. Time synchronization sort of is when
everybody is working off the beacon. I'm wondering ->> Minghua Chen: Yeah.
>>: I thought that the reason why they had the DIF longer than the CIF was to
present the risk of collision with the -- you know, with the -- because you have to
weigh the DIF plus the backoff period before you transmit.
>> Minghua Chen: Yeah.
>>: So I thought that was why there wasn't a collision when the [inaudible] the
same. Because that's sent within a CIF. And a CIF is shorter than a DIF.
>> Minghua Chen: Yeah, that ->>: So I was just trying -- I don't know the analysis behind that.
>> Minghua Chen: Right.
>>: I just thought -- I thought that was my understanding.
>> Minghua Chen: Right. So the -- so the high-level observation that people
have is that if you don't have the time synchronization and then the current
RTS/CTS could not resolve the hidden node problem, yes. Right. Okay.
Okay. But, however, it is -- we found that you can be very, very polite setting the
carrier-sensing range conservative enough to resolve the hidden node problem,
okay? So here I'll give you one example, okay? Suppose you have data
transmission to data transmission that is allowed. Suppose your carrier-sensing
range, okay, which is this dash circle is really, really large, okay? It's really, really
try to be very, very polite. Then if it is allowed by the carrier-sensing decision
when these two link can be simultaneous active, then what does it imply?
It imply if you have a -- there is only four possible combination of this
transmission. You have two data, a one data, one ACK, right? And one data,
one ACK and two ACK, okay? And that is covered by the -- all these four
situation. And if you have a two data because you are very, very polite, so your
carrier-sensing range is so large so that when two transmitter are allowed, they
are -- their receiver must already separate by a very sufficient gap already. So
these two situation is allowed. And when you have a data and ACK, you look at
the receiver that receive the data and the receiver is [inaudible] ACK and their
distance is still larger than what is allowed by the global interference relationship.
This is because I already do it -- when I do carrier-sensing I already be very, very
polite, okay. Maybe this link is in Seattle, and this link is in San Francisco. I'm so
polite so that I -- I won't transmit even if the San Francisco link is start to transmit,
okay? It can be -- it's reasonable that even no matter what you're doing in San
Francisco, it's going to be okay with the link in Seattle, right? So the distance is
so long, you are so polite, okay.
So it's not difficult to check for all the four cases, you will all have the decision
allowed by the carrier-sensing operation. It's also allowed by the global
interference operation, okay? Okay. Any questions before we move on?
>>: So this would be [inaudible] correctly you're saying that by do your
carrier-sensing they didn't [inaudible] radius like you doubled it?
>> Minghua Chen: Yes.
>>: Then you're basically covering anybody who might be in an adjoining cell?
>> Minghua Chen: Right.
>>: Great.
>> Minghua Chen: In this case, it will be three times as the transmission rate.
>>: [inaudible].
>> Minghua Chen: Okay. So by doing so, if we set this carrier-sensing good
enough, then we can construct wireless network CSMA wireless network without
hidden node. So what is so great about it? Of course first your hidden node free
CSMA network is more fair in terms of you don't -- some of the link will not suffer
in collision due to hidden node. So they get higher throughput. And
mathematically, that makes the throughput more analytical -- analytically
accessible. Because now every decision allowed by CSMA is going to allow the
physical law, okay?
There is one very good thing. And under this situation, we found that in many
other researcher also feel that it's the CSMA can be viewed as simulating
Glauber dynamics in continuous time. So Glauber dynamics is one from the
physics try to maximize the global energy by doing each individual item is doing
something locally, okay? So he has -- you can see has some flavor as the
CSMA. And you can use the Markov-chain based analysis to do the analysis.
Okay?
And we show that for hidden node free CSMA it actually can obtain the optimal
per-session throughput, okay? It's order of one over square root of N. And we
also shows that this is not achievable by today's CSMA. And after slight
modification you can achieve this throughput, okay? And that is going to be the
focus in the next 10 slides.
>>: So you say hidden-node free CSMA, are you basically meaning large
sensing cycles, circles ->> Minghua: Yes.
>>: That you basically locate?
>> Minghua: Yes.
>>: And [inaudible] it can achieve the optimal throughput?
>> Minghua: Yes. Otherwise.
>>: Okay.
>>: So I have a question. If you do that, which is a really innovative idea, what
does it do to your frequency reuse plan?
>> Minghua: Okay.
>>: Because, you know, [inaudible] trying to reuse your frequency some
distance away.
>> Minghua: Yes.
>>: And then most 8211 networks they use the frequency we use for free.
>> Minghua: Yes.
>>: So you don't have things that are really close on the same frequency.
>> Minghua: Yes.
>>: Now, does that impact your ->> Minghua: Yes.
>>: Efficiency?
>> Minghua: Yes. So otherwise is the same as TDMA but the constant is going
to suffer. You're going to suffer some constant difference, right?
>>: Right.
>> Minghua: Yeah. So, that is -- that of course is one of the future direction we
are currently looking at.
The main thing that essentially we -- if we want to answer that question, perhaps
we want to look at what if you have a CSMA network with hidden node, okay?
Because by reducing the range you allow more frequency reuse. But meanwhile,
perhaps you will have more hidden node. Because your carrier-sensing range is
not large enough, okay?
So then the question is that how can we understand that kind of network? Yes.
In this work we only show that if you have a hidden node free then you are still
okay. You are only constantly different from the TDMA network, right? So
beyond that, we don't have if any answer at this moment, yeah. But it's a very
good question. Yeah. Okay.
Okay. So CSMA, if you have network without hidden node, you can study the
throughput of the CSMA link by through a Markov chain. So what is this Markov
chain. Remember the CSMA. Every link -- every link before they transmit they
need to count down, okay? And if they sense other people is in transmission,
you will freeze. And after he finish the freezing, he was [inaudible] count down.
As the countdown expire, he will start to transmit, okay?
Okay. So the Markov chain is -- can be viewed as this [inaudible] graph where
you have a three link, link A, link B, and link C. Okay? And one, any given time
only one of the link is active, okay? In this case, B is active. And after B is
finished its tradition, you go back to a state when no links is in tradition because
maybe everybody is now still in the countdown stage.
And when one of the countdown expire and one of the links start to transmit in
this case, C. So what happen in the future only depends what happen in the
present, okay? It's independent of whether or not your previous state is B is in
transmission, C is transmission, and A is in transmission. Okay?
So this network seems to evolve in the Markov chain guided behavior, okay? So
after you set up this connection, you can use the Markov chain study to find out
the throughput of these -- of this CSMA network. The particular stage I brief a
little bit here, but it's not required to understand our main result.
You have a set of link. Link A, link B, and link C. The first step is to abstract the
order independent set allowed in this network. And then to this independent set
you find the Markov chain where the states are order independent set, so if you
put this particular case there is five independent set, okay. And then you draw
the transmission probability array among them and now you found the Markov
chain. After you found the Markov chain then we can study the stead state
distribution because the Markov chain will converge to a steady state distribution.
And we find the link throughput when they reach these steady states, okay?
That is the main idea behind that. And in particular, you can have this particular
form of the -- this is the probability for each independent set to be active in the -in that steady state. And following this result, you can compute the link
throughput for CSMA. Okay? Question?
>>: I just want to make sure I understand. So this -- I'm not familiar with the
Markov chain. So this is assuming a stationary environment, right? All the
transmitters are not moving?
>> Minghua Chen: Right.
>>: And so over time it settles itself?
>> Minghua Chen: Right.
>>: Okay.
>> Minghua Chen: Right.
>>: [inaudible].
>> Minghua Chen: Yes. Right. And the details are not important. Perhaps the
most important result is that we show that, and many other people as well, okay,
well, several group of people, any rate that you can support by TDMA you can
achieve by CSMA. Okay? So this result we think is quite interesting because
this is the connection between the centralizer scheduler to a distributor
scheduler, okay?
And this result is first shown by Jiang and Walrand in 2008. And then later on,
also there is other people who try to understand the result from different angle.
And now we pretty much have a very good understanding on what's going on
there. Okay?
So -- but practically this is I think pretty interesting message, okay? Sorry. Yeah.
Sure.
>>: What are the variables here that are forcing the thing to stabilize? I was
trying to work out how quickly it stabilizes.
>> Minghua Chen: Okay. Good question. What are the variable to -- so what
are the variable that control this convergence, right?
>>: Yes.
>> Minghua Chen: So actually that is controlled by the structure of the Markov
Chain. In other words, it's controlled by the topology of the original wireless
network. Okay?
>>: You mean where the receivers are?
>> Minghua Chen: Yes, where they transmit where they know the position.
>>: Oh, okay.
>> Minghua Chen: Yes. So and know the position, there is a topology, that's
number one. And second is that the countdown rate. The countdown rate of the
CSMA network. So each node, before they start to transmit, they have a
countdown window, right? So a count to CSMA is like you choose from zero to
32 randomly choose one and start your countdown, right? When the countdown
expires, [inaudible] to transmit.
So this window size can also affect how fast you converge.
>>: Oh, okay. So the shorter the window, the quicker the convergence?
>> Minghua Chen: Doesn't necessarily ->>: [inaudible] nodes?
>> Minghua Chen: Right. So, yeah, it depends on the structure of the wireless
network. In some sense what you try to count down very aggressively, you are
very likely to check into some local optimal, which means you will converge faster
but may not necessarily to a point where it's good for everybody. Yes. So there
is a slight tradeoff there. Yes. Right. But this is a very interesting question,
yeah. Any other questions? Okay. So now what we know is that if you have a
rate, let's say a throughput, a capacity that you can allow the support by TDMA,
then somehow CSMA can also achieve it, okay? Now let's turn our slide to
TDMA a little bit to see what are the insight people gave to how TDMA can
achieve the one over square root of N result and then see how we can tune the
result to CSMA. Okay?
So the average case analysis is you have a random network and you want to
understand the throughput. And the Gupta and Kumar shows that the throughput
capacity per source-destination pair is one over square of N. And Franceschetti
in his '06 paper shows that this upper bound is indeed achievable and they
provide a TDMA scheme to do so, okay?
And so the question is that can you still achieve this result. And we show that to
achieve that, you need use dual carrier-sensing threshold implement in two
frequency channels, okay?
So a little bit intuition on how this overall scheme could work. So let's look at a
Gupta-Kumar's bound of capacity. Gupta and Kumar imply that multi-hop
short-range transmission is always good then a single-hop long-range
transmission, okay? It's just like when we go to have dinner, right? So we try to
lower down our voice so that we don't interfere with other people in the
restaurant. It's good enough for us to do a short-range communication. So in
this analogy, you allow to more people to talk to each other in a short range but
you prevent -- but you don't prefer one people just shout to the entire audience.
Then nobody else can talk. Okay?
So, for instance n this particular network, okay, you can -- there's many
short-range transmission is allowed. But also you can do one long-range
transmission. Suppose you want to transmit from here to here, okay? If you just
use one long-range transmission, then ever other people in this range needs to
shut up because if they start to speak, they will interfere with you, okay? And
because the distant for any randomly chosen pair in the -- in the area of N is on
the order of square root of N, then you essentially cover a huge number of nodes
in this area, okay?
Rather, in the -- for you to talk to your destination, it's good for you to talk to your
nearest neighbor. Your neighbor talks to his neighbor and neighbor talks to
neighbor and finally it's a short-range transmission [inaudible] together to form a
pass. So you do a multi-hop transmission, and this is turn out to be the optimal.
So what is the -- how many hops do we feed to transmit? It turns out your
random network is order of square root of N, okay. It's diagonal, right? So you
have area of N, you have a rectangle. So the area is N and the diagonal is
square of N, okay? On the ordinary of square of N. And your density is fixed.
So along this square root of N distance you have a square of N hops.
So you transmit to transmit one bit from the source to destination. You need to
transmit the -- use the network resource, square of N times, okay.
So the throughput is one over square of N. You transmit one bit by using square
of N bit of network resource, okay? And so that is the intuition behind the Gupta
and Kumar's result.
>>: And N is the number of nodes?
>> Minghua Chen: Yes, N is number of nodes. Yes. Okay. And then
Franceschetti come out with a scheme saying that this upper bound is indeed
achievable, okay? They do so by looking at a geometry of the wireless network.
So suppose you have a random wireless network, okay? The nodes is randomly
uniformly scattered around in the area. Okay? In their paper, they assume this
is Poisson point process which is the limit of the random scattering process. And
you can -- they understand this question, okay. So will you be able to find at
least one node as N goes to infinity as you look at different size of cell, okay?
So they chopped the network into this multiple cell. As you can see, some of the
cell contain some nodes. Some didn't. Right? So you can increase the size of
the cell from the very small one to a larger scope and to a further larger scope.
As you increase the size of the cell, you can imagine the probability for you to
see at least one node will increase, right?
So they try to understand, okay, what is the size of the cell? So they look at in
order to one node inside, okay? If every box is a square -- order of a square of
N, you will find the one. If the -- you look at the very small cell, the probability
that we will find a node in every cell is zero, okay? Just show by here. If you
look the at a very small cell, you will find a zero. Okay? And it turns out if you
increase the cell size to log N, then you have high probability every cell will have
at least one node, okay? Then essentially you have formed a great network.
And for any transmitter to any send source to transmit any data to the receiver,
you can do the Manhattan routing. That means you first go horizontally to the
cell which is -- has the same column as your destination, and then you hop in
vertically to the destination.
So each length of -- each hop is log N, okay? And this can be shown that in this
way your throughput is one -- order of one over scare of N log N. The log N
come from for each step you need to jump log N, log N step -- log N distance.
Okay? Okay.
But more interestingly Franceschetti shows that by using the percolation you can
show if a network, you randomly put often nodes on to it, they will automatically
form a sort of backbone, okay? This is given by nature. You don't need to
construct it. You are given.
The backbone is construct of a multiple nodes, okay, in adjacent cell. And their
distance is order one, okay? You don't -- you don't need to jump from here to
here, okay. This is not backbone. But they show that they must exist at least
one backbone where the number of nodes are connected within only order one
distance, okay? So this is called a backbone.
And because the distance is short, that means you can do -- you can pat more
transmission on the backbone, right? Sore range is good. So you pack more
transmission along the backbone. And so that the backbone can really carry -really is -- can provide a good transmitter throughput from one node in the
backbone to the other side of the backbone. Mainly because they are distance
short, okay?
So this is compared to the previous result where you chop the cell into larger cell,
log N scale, and each step you jump log N distance, okay. And in this way sort
of has less spatial reuse because you cover more area. So the throughput is
slow.
In the backbone case, it's similar to the previous case except now every steps,
okay, every step, every hop you need -- the range is order one. So you increase
the spatial reuse a lot, okay, by a factor of a log N. Okay? So this means if I
want to transmit from one node on the backbone to the other node in the
backbone, I can do it on the order -- I can do it in the pretty high throughput
manner.
So how about a node that is not on the backbone? Well, on that case, you just
use this -- you just hook up the nodes if not on the backbone to a node on the
backbone. And this node first transmits something on to the backbone. And
then the package runs through the backbone to the destination and offload to the
destination. Okay?
So the main insight in the paper it says that this backbone is given. So even if
you don't want it, it is there anyway. Okay? Okay. So exactly this is how they
achieve the throughput of order one square over N. You found the backbone.
You found that this -- you hook up the nodes, the contrary side node, okay, to the
backbone. Okay? And when the contrary side node on the transmit, you
transmit on to the backbone goes through the backbone and offload to the
contrary side, okay?
In this case, you can show the bottleneck is on the flow completing the
backbone, and on the average there are square of N flows competing one
backbone link. So the throughput is bounded by order of one square of N. N is
achievable. Okay? Okay. So how do we going to adopt these scheme in CS -TDMA to CSMA? We are going to adopt the same backbone probably for routing
scheme, okay? We throw the nodes in automatically from backbone, okay? So
we're going to use it. And we'll tune the carrier-sensing range so there is no
hidden node. And then we will tune the countdown window of the CSMA TDMA
to achieve the order one square root of throughput, okay?
And this is to -- and to accommodate this short-range backbone transmission and
long-range backbone to a contrary side transmission, then we essentially need to
detect two type of transmission, okay? Because when we do backbone to
backbone transmission, we need to be polite to the backbone. Okay? Backbone
to contrary side transmission, we need to be polite to the contrary side, okay?
So there's two said of different requirements. And you at any given time as a
sender, as a transmitter, you don't know what is the type of ongoing
transmission, okay? Because you don't have the global information, and so you
need to do a dual carrier-sensing based on local information. It's kind of difficult.
Okay? And that's why we propose you use a dual channel, dual carrier-sensing.
You use the backbone -- the blue channel for the backbone transmission. So
now by knowing which -- whether or not there is a power you'll receive on the
blue channel, you can know whether or not there is ongoing backbone to
backbone transmission.
And by listening on the green channel, you can then also determine whether or
not there is some transmission ongoing from the backbone through the contrary
side, okay? And this -- the channel just identify what type of transmission is
ongoing so that you can adopt. Okay, you can do carrier-sensing. Okay? And
so I'll not dive into the detail but the main message is that if you do so, you can
achieve the optimal throughput, one over square root of N. Okay?
>>: How [inaudible] backbone [inaudible].
>> Minghua Chen: Okay. Good question. There is a distributed algorithm which
found the backbone automatically. Yeah, not perfect but you can find it, yes.
So there is a dual channel and dual carrier-sensing. As Jin also questioned very
beginning, at the very beginning, do you require two receiver to receive a -- to
receive from two channels simultaneously? The answer is no, okay? You can
use -- you can use a low-cost solution which allow only in the half-duplexing,
okay, across frequency channel. And you can still achieve the optimal
scheduling log result and the dual half-duplexing when you are transmitting on
one -- when you are transmitting on one -- one of the receiver, so one of the
channel, you cannot do anything on the other channel, okay?
Or even if you just carrier-sense there is a transmission ongoing on the -- one of
the channel in this green channel, you don't -- you cannot do any transmission on
the blue channel as well, okay? So it's very stringent requirement that's made the
implementation actually easier than what we want in the optimal case. But the
information is that nevertheless otherwise the throughput, optimal throughput
scheduling is still achieved. Okay?
>>: Do you have a reason why you shouldn't get the channels next to each other
why you shouldn't be able to receive on both channels simultaneously? It should
be fairly easy to build a radio that does that. Right?
>> Minghua: Right. Oh, that's a good question. But actually depends on the
power leakage. So theoretically you can always build a bent filter, right, to a filter
in the second node that you want from particular channel. However, in practice
it's very difficult to build a very ideal filter to filter the bend, yes.
>>: [inaudible].
>> Minghua: Right.
>>: [inaudible].
>> Minghua: Yes. So you're going to have leakage on to other channel which
might cause the receiver to not decode the signal on the other receiver, right?
>>: But if you have the situation where you cannot transmit on to the other
channel, the other one is busy, then that takes your throughput down, right?
>> Minghua: Yes. Yes. Right. That's excellent question. Yes. Definitely. We
don't know how to handle it. Maybe this is -- this is many -- I think -- personally
my understanding is this is -- you know, this implementation issue. So unless we
have a good way to allow you to receive and transmit on two channels
simultaneously I don't know how to revolve this one. Yeah.
So there is some related work from Gupta and Kumar and Franceschetti and for
some of the results from Walrand and his student Libin. Libin is actually from -also from the Chinese University of Hong Kong and is currently in UC Berkeley.
And also people also proceeds Aloha type of protocol which can also achieve
order one square of N result. But their capacity definition is not the traditional
one that we discuss here.
And there is other simple results on how you can use a queueing model to
describe -- to obtain the bound, the capacity bound. But it doesn't give any result
on how you can achieve the bound. Okay? Okay.
So some recap. I hope I described to some extent how a CSMA -- like network
can scale as well as the optimal TDMA network. Okay? The scheme we
describe is on building a hidden node free wireless network. This necessarily
reduced capacity of the entire network. We showed this reduction is not
otherwise, okay?
And we proceeds -- we advocate that we should associate two frequency
channels simultaneously with CSMA node. That is because from the throughput
analysis we found this way give us an easy way that can achieve the order
optimal result, okay? And we said we want to tune the CSMA countdown
window adaptively, and this is long the recent work done by several group of
researchers. And we need a proper routing scheme, can which is the
backbone-peripheral routing.
And looking to the future, we believe that the dual carrier-sensing dual channel
scheme apply to arbitrary finite network, and we want to do more experiments
and simulation to find out how this scheme actually is performed in practice.
Okay?
And that's all my talk. That's end of my talk. Thank you very much.
[applause].
>> Minghua Chen: Thank you. So any questions?
>> Jin Li: Maybe we can bring you the question offline. And Minghua is
conducting research with us. And he will be here until the end of May, May 28th.
So if you have questions, feel free to talk to him.
>>: So that's your -- you use this e-mail address? You don't have a Microsoft
e-mail while you're here?
>> Jin Li: There is basically Gmail account which he can use to communicate. I
think you also have a B dash account?
>> Minghua Chen: Yes.
>> Jin Li: I'm not sure how much you check for those e-mails?
>> Minghua Chen: I haven't been able to log into account yet.
>> Jin Li: Okay.
>> Minghua Chen: The password sometime -- so last time we tried a password it
doesn't work.
>> Jin Li: Maybe if you want to talk to Minghua you should e-mail to me. My
address is JIN mail. I'm the host for the talk.
>>: Oh, you are. So I just check media ->> Jin Li: Yes.
>>: That would be great, because I'd love one of those references. I was
wondering if you could just send it to me. On the backbone.
>> Minghua Chen: Okay.
>>: I thought that was fascinating.
>> Minghua Chen: No problem. Yes.
>>: Are you here in research?
>>: No.
>>: I mean which group are you working with?
>>: I actually work in Windows, it's just I come out of the wireless industry.
>>: Okay.
>>: Do work on wireless.
>>: Okay.
>>: I thought this was the best talk I've ever been to.
>> Minghua Chen: Thank you very much.
>> Jin Li: Thank you.
>>: Great. Great stuff.
>> Minghua Chen: Thank you.
>>: I think this has great application in the mesh networking stuff that's going on,
the digital home and the digital office environment. I think this is a great practical
application to do that.
>> Minghua Chen: Okay. Thank you very much.
>>: It's very exciting.
>> Minghua Chen: Thank you.
>>: Sure.
>> Minghua Chen: Thanks for coming.
Download