Outline
Issues in designing a MAC protocol
Contention-based protocols
Contention-based protocols with
reservation mechanisms
Contention-based protocols with
scheduling mechanisms
Other protocols
Summary
2009/11/4
Bandwidth Efficiency
QoS support
Synchronization
Hidden and Exposed Terminal
Problems
Error-Prone Share Broadcast
Channel
Distributed Nature/ Lack of
Central Coordination
Mobility of Nodes
2009/11/4
R1
S2
S1
R2
S3
Transmission range of Node S2
2009/11/4
Packet transmission
Transmission that is not permitted
2009/11/4
Receiver-initiated protocols
2009/11/4
Asynchronous protocols
Not require global synchronization
2009/11/4
Contention-Based
Protocols
MACA Protocol
Multiple access collision avoidance
protocol proposed by Karn in 1990
MACA does not make use of carriersensing
Request-to-send (RTS), clear-to-send
(CTS), DATA messages
Use binary exponential back-off (BEB)
algorithm for retry
Both the RTS and CTS packets carry the
expected duration of the data packet
transmission
2009/11/4
10
11
Neighbor
RTS
Sender
Receiver
RTS
CTS
DAT
A
Neighbor
CTS
DAT
A
12
MACAW Protocol
Back-off mechanism used in
MACA starves flows
Back-off algorithm has been
modified by Bharghavan in 1994
Packet header has an additional
filed carrying the current back-off
counter value of the transmitting
node
A node receiving the packet copies
this value into its own back-off
2009/11/4
counter
13
R1
S2
S1
14
2009/11/4
16
R1
S1
S2
R2
R1
S1
S2
RRT
S
R2
RRT
S
17
RTS-CTS-DS-DATA-ACK
18
N1
S
RTS
R
RTS
CTS
DS
DAT
A
CTS
DS
DAT
A
ACK
2009/11/4
N2
ACK
19
2009/11/4
FAMA-NTR
Before sending a packet, the sender senses the
channel
If channel is busy, the sender back-off a random
time and retries later
If the channel is free, the sender sends RTS and
waits for a CTS packet
If the sender cannot receive a CTS, it takes a
random back-off and retries later
If the sender receives a CTS, it can start
transmission data packet
In order to allow the sender to send a burst of
packets, the receiver is made to wait a time 21
2009/11/4
duration seconds after a packet is received
22
N1
2009/11/4
23
24
25
RTS
CTS
BTt
Control Channel
Sender
DATA
Data Channel
RTS
CTS
BTr
Control Channel
Receiver
DATA
Data Channel
26
27
6.10)
Two types
the basic protocol
No backlog buffers
packets that suffer collisions
cannot be retransmitted
28
Busy Tone
Control Channel
Sender
DAT
A
Data Channel
Busy Tone
Control Channel
Receiver
P
Data Channel
2009/11/4
DAT
A
Preamble Packet
29
30
Sender
Receiver
RTR
Neighbor (hidden
terminal with respect to
sender)
RTR
Blocked from
transmitting
DAT
A
RTR1
R1
RTR1
RTR2
R2
RTR2
S2
(See Figure
6.13)
The CTS packet: MAC address of the sender, receiver, and the route
identification number (RTid) (See Figure 6.14)
2009/11/4
32
RTS
CTS
DAT
A
RTS
CTS1
CTS
RTS
CTS
tCSMA
DAT
A
CTS1
CTS2
CTS2
CTS
tMARCH
DATA
C
TS3
D
ATA
DAT
A
CTS
TS
(a)
2009/11/4
DAT
A
(b)
33
Y
Route 1: A-B-C-D
Route 2: X-C-Y
2009/11/4
Figure
6.14 Example Topology
34
Contention-Based Protocols
with Reservation
Mechanisms
36
Frame Length
Slot 1
Slot 2
Mini-slot 1
Mini-slot 2
..
Slot s
Mini-slot m
RTS/BI CTS/BI
37
D-PRMA (cont.)
To prioritize voice terminals over data terminals
Voice terminals starts contenting from mini-slot 1 with
probability
p = 1 while data terminals can start such content with p < 1
Both voice and data terminals can content through the
extra (m
1) mini-slots with probability p < 1
Only the winner of a voice terminal can reserve the same
slot in each subsequent frame until the end of packet
transmission while the winner of a data terminal can only
use one slot
Problems:
When a terminal wins the contention in mini-slot 1, how
to prevent other terminals in the same slot for contention
? (Use RTS/ CTS)
2009/11/4
How to prevent a terminal from contending for a reserved
slot in each subsequent slot ? (Transmit a busy indication
38
2009/11/4
39
CATA (cont.)
Each node receives data during the DMS of
current slot transmits an SR in CMS1
Every node that transmits data during the DMS of
current slot transmits an RTS in CMS2
CMS3 and CMS4 are used as follows:
The sender of an intend reservation, if it senses the channel
is idle in CMS1, transmits an RTS in CMS2
Then the receiver transmits a CTS in CMS3
If the reservation was successful the data can transmit in
current slot and the same slot in subsequent frames
Once the reservation was successfully, in the next slot
both the sender and receiver do not transmit anything
during CMS3 and during CMS4 the sender transmits a
NTS
2009/11/4
40
CATA (cont.)
If a node receives an RTS for broadcast or
multicast during CMS2 or it finds the channel to
be free during CMS2, it remains idle during
CMS3 and CMS4
Otherwise it sends a NTS packet during CMS4
A potential multicast or broadcast source node that
receives the NTS packet or detecting noise during
CMS4, understands that its reservation is failed
If it find the channel is free in CMS4, which
implies its reservation was successful
CATA works well with simple single-channel halfduplex radios
2009/11/4
41
Frame Length
Slot 1
Slot 2
. . . . . . . . .
Slot S
DMS
42
43
Synchronizing
Slot
Frame Length
Slot 1
Slot 2
SYN
2009/11/4
HR
RTS
. . . . . . .
Slot M
CTS
44
HRMA (cont.)
Hop reservation (HR), RTS, CTS, DATA : fi
ACK: fi*
45
f0
f0 f5
f1
f0
f0
f2
f0
f0
f1
f3
f0
f0
f2
f4
f0
f0
f5
f3 f 0 f4
f0
f0
f0
f5
f1
f0
f0
Node from
Subnet 1
Node from
Subnet 2
f0 synchronizing frequency
M=5
Figure 6.18. Merging of subnets.
2009/11/4
46
HRMA (cont.)
A node ready to transmit data, it senses the HR
period of the current slot
If the channel is idle during HR period, it transmits an RTS
during RTS period and waits for CTS during CTS period
If the channel is busy during HR period, it backs off for a
randomly multiple slots
2009/11/4
47
FPRP: Five-Phase
Reservation
FPRP is a single-channel
TDMA-based broadcast
Protocol
scheduling protocol:
48
RF
IF
RS1
RS2
IF
IF
..
IS1
. . . . RSN
RC1
RC2
....
RCM
RR
CR
RC
RA
IF
IS2
IF
....
RF
IF
IF
IF
ISN
P/E
49
50