Subject: RE: [manet] Carrier sense threshold/range control

From: "John Mullen" <[email-masked]>
Date: Wed, 9 Jul 2003 17:00:44 -0600

Hi Zygmunt,

(For when you get back :-)

In my little example, I was referring to protocol design choices.  The
protocol would, of course, remove any ambiguity from C's little mind.
My point was that if you use a hold-off, as in MACA, you have the
exposed terminal problem and if you do not, you now have a hidden
terminal problem, of sorts.  (C may know B is there, but doesn't know
that A is sending).  Since you must do one or the other, you cannot
eliminate both problems entirely.

As for the realities of noise and random fluctuations.  Well, that is
what makes this whole thing interesting.  A couple of years ago, I was
on the committee of a Ph.D. student studying protocols for outer space
transmission.  He worked quite a while in an error free environment.  I
and other members of the committee urged him to include the noise before
drawing too many conclusions, but he was a depth-first-search kind of
guy.  Finally, he put in the noise.  I remember him showing me the
effect.  It was quite remarkable, as I expected.  His carefully analyzed
order of performance among the protocols was completely trashed by the
effects of noise.

:-)

John Mullen
p.s. thanks for the link.
(Is this an ACK?)

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] 
Sent: Wednesday, July 09, 2003 3:42 PM
To: John Mullen
Cc: Zygmunt Haas
Subject: RE: [manet] Carrier sense threshold/range control 

Hi John,

> Say, as in the illustration, B wishes to send to A.  Terminal B sends 
> a RTS, which C hears.  However, C never hears the CTS from A because A

> is too far away.  What are C's choices if it wishes to send to D?  One

> is to hold off for a random period of time, just in case A intends to 
> send a CTS.  If A doesn't send a CTS, then C has missed an opportunity

> to send.  On the other hand, if C sends its RTS, it may cause a data 
> collision at B.  Assuming C cannot hear A, it is not possible for C to

> know.

The MACA algorithm that I was referring to allows RTS to "reserve" the
channel for the duration of the RTS/CTS exchange only. Thus C will be
disabled for the duration of that time only. There is no need for C to
guess - if it did not hear CTS by the end of this period, it is free to
access the channel.

Again, the correctness of the MACA protocol depends on its theoretical
assumptions that there are no transmission errors, etc ... i.e., if a
RTS or CTS packet is sent, it is reliably received by all the nodes in
the 
vicinity of the respective transmitter.

> Of course, once B starts to transmit, the risk of a collision at B is 
> not a problem, but now C would not be able to hear a CTS from D due to

> interference from B.  In theory, C can send to D without causing a 
> problem, but in practice, unless the timing is just right, C will not 
> know that.

Correct. This issue (and few others) were addressed in the MACAW paper.

My statement was that under some theoretical assumptions, MACA provides
for both hidden- and exposed-terminal problems. In practice, as I have
stated, this is incorrect. This is why other schemes came in to fill in
the gap, the FAMA, as you have mentioned, and the DBTMA, as I have.

Cheers ... (I am off the line - have to do some work today ...(;-)).

Zygmunt.
===--=====
~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-
~-
Prof. Zygmunt J. Haas
http://people.ece.cornell.edu/haas 
Wireless Networks Laboratory		 http://wnl.ece.cornell.edu
School of Electrical Engineering         
Cornell University			 tel: +1-607-255-3454
323 Frank Rhodes Hall			 fax: +1-607-255-9072
Ithaca, NY 14853			 e-mail: [email-masked]
U.S.A                             
	WNL web page: http://wnl.ece.cornell.edu
~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-
~-

_______________________________________________
manet mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/manet

---

From: [email-masked]
Date: Wed, 09 Jul 2003 22:49:23 -0700

John and Zygmunt,

> eliminate both problems entirely.

In fact, you cannot eliminate the exposed terminal problem completely,
since (as you pointed out), if C sends an RTS to D while B is sending 
data to A, then C will not hear the resulting CTS from D.
Therefore, it seems to me that even "pure" RTS/CTS does not
solve the exposed terminal problem even in ideal conditions.
I looked at the MACAW paper (Bhargavan et al.) today to see if 
it solves the exposed terminal problem, and it actually has
a mechanism (Data-Sending packet) that *prevents* C from
sending anything while B is sending data to A.

Richard