I was trying to understand exact algorithm for Carrier Sense Multiple Access / Collision Avoidance mechanism from Forouzan's book. The book gives very detail explanation of topics. However explanation of CSMA/CA was somewhat confusing. So I checked Tanenbaum's book. I found somewhat different explanation.
For example, Forouzan says following:
- The sender uses persistent strategy with backoff until the channel is idle.
- Then it waits for DCF InterFrame Space (DIFS)
- Then it waits for another duration called contention window which is calculated by binary backoff strategy.
Tanenbaum says:
The station waits until the channel is idle, by sensing that there is no signal for a short period of time (called DIFS) and counts down idle slots pausing when frames are sent. It sends the frame when the counter reached 0.
I feel Tanenbaum talk about DIFS and contention window, but not the initial persistence strategy as stated in point 1 by Forouzan.
Tanenbaum says Request To Send (RTS) and Clear To Send (CTS) are optional, but nothing such is said by Forouzan.
Tanenbaum also specifies EIFS (Extended InterFrame Spacing) and AIFS (Arbitration InterFrame Spacing) which Forouzan does not talks at all.
I also checked some other reference books, but I didnt find neat explanation of algorithm used in CSMA with all steps.
PS: I am not able to add related tags like CSMA/CA
, data-link-layer
, media-access
due to low reputation points. Please add them as desired.