MACA (Multiple Access with Collision Avoidance)

MACA (Multiple access with collision avoidance) is a slotted media access control protocol with collision avoidance for WLAN data transmission. The basic idea of MACA is that a node makes an announcement before initializing its transmission to inform other nodes to keep silent. 

For example, node A attempts to send a data frame to node B. A first sends a Request-to-Send (RTS) package to B. If B receives the RTS package and B is available, then B replies a Clear-to-Send package (CTS) to node A immediately. Both of RTS and CTS contain the length of the proposed data transmission. Once receiving this CTS, node A sends the data frame to node B immediately. 

Any nodes overhearing the RTS defers all transmissions until some time after the associated CTS packet would have finished. 

Any nodes overhearing the CTS defers all transmissions until some time after the expected data transmission has finished.


For exposed terminal:

Exposed terminal problem.svg

[figure from https://en.wikipedia.org/wiki/Exposed_node_problem]

Node S1 attempts to send packages to R1. Before transmitting, S1 broadcast its RTS to its neighbors node R1 and S2. So node S2 overhears the RTS from S1, S2 will keep silent until the CTS from R1 is received by node S1. But node S2 is out of range of the CTS from node R1, so node S2 can still transmit data to other nodes when S1 is sending data frame to R1.


For hidden terminal:

 

[figure from https://en.wikipedia.org/wiki/Hidden_node_problem]

Suppose node A attempts to send packages to B. Before initializing this transmission, A broadcasts RTS to its neighbors. Because node C is out of range of this RTS, there is no effects on node C by now. Once receiving the RTS from A, B broadcasts its CTS to its neighbors. Node C will hear this CTS and defer its transmission, which will eliminate the possible inference to the transmission from node A to B. 

 

發佈了139 篇原創文章 · 獲贊 558 · 訪問量 119萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章