Subject: [manet] collision detection in TDMA-based ad hoc networks

From: Leon Martin <[email-masked]>
Date: Tue, 16 Aug 2005 10:21:11 -0700 (PDT)

Hi everyone,

I'd like to know the existence of some mechanisms for
detecting collisions in TDMA-based ad hoc networks.

The time is slotted (therefore TDMA). 

There is no centralized controller (e.g. base station,
cluster head, etc.).

I assume each node has only one radio, and when it
transmits it can't receive. As a result, if the signal
sent by a node collides with another signal, the node
can NOT detect the collision by itself. Its neighbors
can, however. 

There are some complications if we rely on the
neighboring nodes to detect the collision. First, if
we consider the capture effect (i.e., if the ratio of
the signal powers is big (or small) enough one of them
can be decoded), collision at one node does not
necessarily mean collision at another node because the
ratios of the signal powers will be different due to
the difference in node locations. Second, if a
collision occurs at one of the neighboring nodes, the
node can not decode the signal (packet). But, the
failure in decoding could be caused by other reasons
such as failure in synchronization. 

It seems to me, the only information the neighbors
have is the aggregate signal power of the collided
signals and the fact that no signals are decoded (if
we do not consider the capture effect). What can we
get out of this information?

Thanks.

- Leon

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

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

---

From: "Mullen, John" <[email-masked]>
Date: Tue, 16 Aug 2005 12:35:12 -0600

Hi Leon,

Well, yes and no.

Data collisions occur in the receiver.  For example, condiser:
  A   B   C   D
Assume C is transmitting a packet to both B and C.  A transmission by A
could cause a data collision at B, be undetected by C and have no effect
at D.  The only way C will know anything is wrong is if it fails to get
an ACK from B.  Even then, the ACK could be wiped out by a data
collision.

Near-far nodes in channel and nearby nodes on near channels can generate
enough interference to lower the S/N ratio.  Technically, this is not a
data collision, but can cause packets to be dropped.

But, there is more.  Control packets tend to be small and data packets
large.  So, it is possible for a control packet to corrupt part of a
data packet, without destroying the entire packet.  What happens next
depends on the details.  If there is sufficient redundancy in the data
packet, the receiver may still be able to recover its content from that
portion of the packet that is still intact.  Even if the data is
corrupted too much, the receiver may still be able to decode the
sender's identifier.  

Generally, though, it is the receiver that controls what happens.  If
the packet is a UDP, e.g. a Hello packet, the transmitter will never
know it was lost, unless the protocol takes some action, such as marking
the link as unusable.  If nodes share link tables, then the transmitter
may find out.  If the scheme is store-and-forward, or the like, the
transmitter will fail to receive an ACK and retransmit after a suitable
time-out.  Of course, the transmitter wont know why it didn't receive an
ACK.

If we look at each individual packet, the fact that an ACK was not
received is not very useful.  There are just too many reasons, as you
have pointed out, which could be the cause.  However, if we look at
repeated observations, it is possible to guess more intelligently what
is the cause and to take appropriate action.  For example, if one out of
the last ten packets sent on a link was dropped, it was probably some
random event, such as a data collision or an unusual momentary drop in
signal strength due to random fading.  On the other hand, if five of the
ten were lost and the S/N of those received were also low, it is
probabily time to mark the link as unusable and seek another route.

John P. Mullen, Ph.D.
(505) 646-2958
[email-masked]
 
-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On Behalf
Of Leon Martin
Sent: Tuesday, August 16, 2005 11:21 AM
To: [email-masked]
Subject: [manet] collision detection in TDMA-based ad hoc networks

Hi everyone,

I'd like to know the existence of some mechanisms for detecting
collisions in TDMA-based ad hoc networks.

There is no centralized controller (e.g. base station, cluster head,
etc.).

I assume each node has only one radio, and when it transmits it can't
receive. As a result, if the signal sent by a node collides with another
signal, the node can NOT detect the collision by itself. Its neighbors
can, however. 

There are some complications if we rely on the neighboring nodes to
detect the collision. First, if we consider the capture effect (i.e., if
the ratio of the signal powers is big (or small) enough one of them can
be decoded), collision at one node does not necessarily mean collision
at another node because the ratios of the signal powers will be
different due to the difference in node locations. Second, if a
collision occurs at one of the neighboring nodes, the node can not
decode the signal (packet). But, the failure in decoding could be caused
by other reasons such as failure in synchronization. 

It seems to me, the only information the neighbors have is the aggregate
signal power of the collided signals and the fact that no signals are
decoded (if we do not consider the capture effect). What can we get out
of this information?

Thanks.

- Leon