mac maca macaw

47
1 Wireless Medium Access Control Protocols CS 851 Seminar University of Virginia www.cs.virginia.edu/~cs851-2/ course.html

Upload: kenjo138

Post on 14-Apr-2016

237 views

Category:

Documents


0 download

DESCRIPTION

Explanation on MAC MACA and MACAW

TRANSCRIPT

Page 1: Mac Maca Macaw

1

Wireless Medium Access Control Protocols

CS 851 SeminarUniversity of Virginia

www.cs.virginia.edu/~cs851-2/course.html

Page 2: Mac Maca Macaw

2

Why Need MAC ? Wireless medium is an open, shared, and broadcast medium Multiple nodes may access the medium at the same time

Medium Access Control Protocol: Define rules to force distributed nodes to access wireless medium in

an orderly and efficiently manner

B

CA

D

Page 3: Mac Maca Macaw

3

Ideal MAC Protocol

Limited Delay High Throughput Fairness Stability Scalability Robustness against channel fading Low power consumption Support for multimedia

Page 4: Mac Maca Macaw

4

Some Background CSMA/CD (carrier sense multiple access/ collision detection)

Every node senses the carrier before transmitting If the carrier is not clear, the node defers transmission for a specified

period. Otherwise, transmitsWhile transmitting, the sender is listening to carrier and sender stops

transmitting if collision has been detected

Due to hidden & exposed terminal problemContention/collision will occur at receiver sideCarrier sense (send side) approach is inappropriate for wireless

networks

Page 5: Mac Maca Macaw

5

Wireless MAC Issues

Half-Duplex Operation Time Varying Channel Burst Channel Errors Location Dependent Carrier Sensing

Hidden Terminal Exposed Terminal

Capture

Page 6: Mac Maca Macaw

6

Hidden Terminal Problem

Node B can communicate with A and C both A and C cannot hear each other When A transmits to B, C cannot detect the transmission

using the carrier sense mechanism If C transmits to D, collision will occur at B

B CA D

Page 7: Mac Maca Macaw

7

Exposed Terminal Problem

Node C can communicate with B and D both Node B can communicate with A and C Node A cannot hear C Node D can not hear B When C transmits to D, B detect the transmission using the

carrier sense mechanism and postpone to transmit to A, even though such transmission will not cause collision

B CA DX

Page 8: Mac Maca Macaw

8

Capture Effect

A and D transmit simultaneously to B, the signal strength received by B from D is much higher than that from A, and D’s transmission can be decoded without errors. This will result unfair sharing of bandwidth.

A D B C

PowerDifferenceOf A andD signals

Page 9: Mac Maca Macaw

9

Classification of Wireless MAC Protocols

Guaranteed access

Wireless MAC Protocols

Distributed Mac Protocols

Centralized MAC Protocols

Random access

Page 10: Mac Maca Macaw

10

Distributed MAC Protocols

Collision avoidance mechanisms Collision avoidance with out-of-band signaling Collision avoidance with in-band control messages

Two distributed random access protocols DFWMAC: Distributed Foundation Wireless MAC (used in IEEE

802.11) EY-NPMA: Elimination Yield-Nonpreemptive Priority Multiple

Access (used in HyperLan)

Page 11: Mac Maca Macaw

11

Centralized MAC Protocols

Work for centralized wireless networks

Base station has explicit control for who and when to access the medium

All nodes can hear from and talk to base station

All communications go through the base station

The arbitration and complexity are in base station

Page 12: Mac Maca Macaw

12

MACA: A New Channel Access Method for Packet Radio

Phil Karn 1990

Page 13: Mac Maca Macaw

13

Goals , New Ideas, and Main Contributions

Goals:Try to overcome hidden & exposed terminal problems

New idea:Reserve the channel before sending data packetMinimize the cost of collision (control packet is much smaller than

data packet) Main Contribution:

A three-way handshake MAC protocol : MACA

CSMA/CA MA/CA MACA

Page 14: Mac Maca Macaw

14

Fundamental Assumptions

Symmetry A can hear from B B can hear from A

No capture No channel fading Packet error only due to collision Data packets and control packets are transmitted in the

same channel

Page 15: Mac Maca Macaw

15

Three-Way Handshake A sends Ready-to-Send (RTS) B responds with Clear-to-Send (CTS) A sends DATA PACKET RTS and CTS announce the duration of the data transfer Nodes overhearing RTS keep quiet for some time to allow A to receive CTS Nodes overhearing CTS keep quiet for some time to allow B to receive data

packet

A

B

DATACTS (10)

CTS: Clear To Send RTS (10)RTS: Request To Send

C

D

E

Page 16: Mac Maca Macaw

16

More Details for MACA A sends out RTS and set a timer and waits for CTS

If A receives CTS before timer go to zero, OK! sends data packet Otherwise, A assumes there is a collision at B

• Double the backoff counter interval» Randomly pick up a timer from [1,backoff counter]

• Send next RTS after timer go to zero B sends out CTS, then set a timer and waits for data packet

If data packet arrives before timer go to zero, OK! Otherwise, B can do other things

C overhears A’s RTS, set a timer which is long enough to allow A to receive CTS. After the timer goes to zero, C can do other things

D overhears B’s CTS, set a timer which is long enough to allow B to receive data packet.

E overhears A’s RTS and B’s CTS, set a timer which is long enough to allow B to receive data packet.

RTS and CTS can also contain info to allow sender A to adjust power to reduce interference

Note: no carrier sense

Page 17: Mac Maca Macaw

17

Hidden Terminal Problem Still Exists (1)

A

RTSDATARTS

B

RTS

C

CTS

Data packet still might suffer collision

Page 18: Mac Maca Macaw

18

Hidden Terminal Problem Still Exists (2)

A

RTSDATARTS

B

RTS

C

CTS

Data packet still might suffer collision CTSDATA

E

Page 19: Mac Maca Macaw

19

Exposed Terminal Problem Still Exists

A

RTS

B

C

CTS

Node C can not receive CTS

DATARTSCTS

D

Page 20: Mac Maca Macaw

20

Summary

MACA did not solve hidden & exposed terminal problems MACA did not provide specifications about parameters

What are RTS, CTS packet sizes ? How to decide timers? What is initial backoff window size?

A lot things need to do if using MACA

Page 21: Mac Maca Macaw

21

MACAW: A Media Access Protocol for Wireless Lan’s

V. Bharghavan, A. Demers, S. Shenker, and L. Zhang (Sigcomm 1994)

Page 22: Mac Maca Macaw

22

Goals, New Ideas, and Main Contributions

Goals:This paper refined and extended MACA

New Idea: Information sharing to achieve fairness Main Results:

Modified control messages Four-way handshake (reliable, recover at MAC layer) Five-way handshake (relieve exposed terminal problem) RRTS (unfairness)

Modified back-off algorithms Multiplicative increase and linear decrease (MILD) Synchronize back-off counter using piggyback message

Multiple stream model (V-MAC)

Page 23: Mac Maca Macaw

23

Revisit Hidden Terminal Problem

Data packet still may suffer collision To recover packet loss at transport layer is too slow Recover at MAC layer is more fast Need ACK from destination

Page 24: Mac Maca Macaw

24

Four-Way Handshake Sender sends Ready-to-Send (RTS) Receiver responds with Clear-to-Send (CTS) Sender sends DATA PACKET Receiver acknowledge with ACK RTS and CTS announce the duration of the transfer Nodes overhearing RTS/CTS keep quiet for that duration Sender will retransmit RTS if no ACK is received

If ACK is sent out, but not received by sender, after receiving new RTS, receiver returns ACK instead of CTS for new RTS

source

destination

DATAACKCTS(T)

CTS: Clear To Send RTS(T)RTS: Request To Send

Page 25: Mac Maca Macaw

25

Comparison with ACK and without ACK

Page 26: Mac Maca Macaw

26

Revisit Exposed Terminal Problem

RTS/CTS/DATA/ACK can not solve exposed terminal problem

When overhearing RTS, the node needs to wait longer enough to allow the data packet being completely transmitted even it does not overhear CTS

To relieve exposed terminal problem,Let exposed terminal know the DATA packet does be transmittedExtra message DS (data send)

Five Handshaking to let exposed terminal know how long it should wait

Page 27: Mac Maca Macaw

27

Five-Way Handshake

Sender sends Ready-to-Send (RTS) Receiver responds with Clear-to-Send (CTS) Sender sends DATA SENDING (DS) Sender sends DATA PACKET Receiver acknowledge with ACK RTS and CTS announce the duration of the

transfer Nodes overhearing RTS/CTS keep quiet for that

duration

A

B

DATAACKCTS

CTS: Clear To Send RTSRTS: Request To Send DSDS: Data Sending

C

Page 28: Mac Maca Macaw

28

Comparison with DS and without DS

Page 29: Mac Maca Macaw

29

Comparison with DS and without DS

B1

CTSRTSDATARTS

P1

RTS

B2P2

ACK

CTS

Page 30: Mac Maca Macaw

30

Unfairness Using RTS/CTS/DATA/ACK or RTS/CTS/DS/DATA/ACK might cause unfairness A sends data to B; D sends data to C A and D have enough data to send C can hears from B and D, but not A B can hear from A and C, but not D

A is in luck and gets the channel D sends RTS and times out Backoff window for D repeatedly doubles For the next transmission:

• A picks a random number from a smaller window• Unequal probability of channel access• Throughput for flow A B > 90 %• Throughput for flow D C ~ 0%

A

CTSRTSDATARTS

B

RTS

DC

ACK

Page 31: Mac Maca Macaw

31

Request for RTS (RRTS)

Try to solve unfairness by having C do the contending for D

A

CTSRTSDATARTS

B

RRTS

RRTS: Request for RTS

RTS

DC

ACK

Page 32: Mac Maca Macaw

32

Why Uses RRTS Instead Of CTS ?

CTS or RTS packet size << data packet size

When nodes overhear CTS, they need to defer a time period to allow the expected data packet transmission

When nodes overhear RRTS, they only need to defer a time period to overhear the expected CTS

Uses CTS will cost long waiting

Page 33: Mac Maca Macaw

33

Comparison with RRTS and without RRTS (1)

Page 34: Mac Maca Macaw

34

Comparison with RRTS and without RRTS (2)

Page 35: Mac Maca Macaw

35

Multiple Stream Model (V-MAC)

Single stream model merges traffic from different flows into a mixed stream and uses a single MAC

Multiple stream model uses multiple MAC (one flow one MAC) to achieve fairness

This idea was used by Intersil Company to propose a new MAC for IEEE 802.11e in 2001

MA

CNode

Single Stream MAC

MAC

NodeMAC

MAC

Multiple Stream MAC

Page 36: Mac Maca Macaw

36

Why Multiple Stream MAC more fair Than Single Stream MAC

When collision

all packets in single stream MAC are used a large backoff window

Different flow’s packet in multiple stream MAC uses different backoff window

Page 37: Mac Maca Macaw

37

Comparison V-MAC and MAC

Page 38: Mac Maca Macaw

38

Backoff Algorithms When collision occurs, node A pick up a random number T from

[1,Bo], then retransmits RTS after T time unit

How to determine Bo After each collision Bo_new = Fun_inc(Bo_old) After each successful transmission Bo_new = Fun_dec(Bo_old)

Binary exponential backoff (BEB) algorithm Fun_inc(Bo_old)=min{2*Bo_old, Bo_max} Fun_dec(B_old)=Bo_min

Multiplicative increase linear decease (MILD) Fun_inc(Bo_old)=min{1.5*Bo_old, Bo_max} Fun_dec(B_old)=max{Bo_old -1, Bo_min}

Page 39: Mac Maca Macaw

39

Information Sharing in Backoff Algorithms

When a node sends a packet, it embeds its current backoff counter in the packet header. Other nodes which overhears the packet copy the value as itself backoff counter

Key idea: all nodes have the same backoff counter to achieve fairness

Page 40: Mac Maca Macaw

40

Comparison BEB and BEB-Copy

Page 41: Mac Maca Macaw

41

Comparison BEB-COPY and MILD-Copy

Page 42: Mac Maca Macaw

42

Per-Destination Backoff

Page 43: Mac Maca Macaw

43

Evaluation of MACAW

Page 44: Mac Maca Macaw

44

Evaluation of MACAW

Total TroughputMACA: 51.06MACAW: 7037% higher

Every flow has the same data rate32 packet per second

Page 45: Mac Maca Macaw

45

Evaluation of MACAW

Page 46: Mac Maca Macaw

46

Evaluation of MACAW

Page 47: Mac Maca Macaw

47

Open Problems

How to design a good backoff algorithm?

Adaptive MAC to achieve fairness in ad-hoc networks

Do upper layer operations need to tightly relate to MAC?

Reliable multicast MAC in ad-hoc networks