For avoiding collision and to increase efficiency in sensing the channel, Carrier Sense Multiple Access (CSMA) is used. Many versions of CSMA are persistent and non-persistent.
CARRIER SENSE MULTIPLE ACCESS (CSMA)
As we have seen in post, the Slotted ALOHA maximum throughput that can be achieved is 1/e only, though, the stations do not keep track of what the other station is doing or what’s going on in the medium. Then also, many frames meet and collide. So in LANs we will observe the behavior of other station as well and try to reduce the number of collision to achieve better throughput of the network. To achieve maximum throughput here, we will try to restrict transmission that will cause collision by sensing whether the medium has some data or not. Protocols in which station senses the channel before starting transmission are in the category of CSMA protocols (also known as listen before talk protocols).
CSMA have many variants available that are to be adapted according to the behaviour of the station that has frames to be transmitted when the channel is busy or that some transmission is going on. The following are some versions of CSMA protocols: 1-Persistent CSMA , Non-Persistent CSMA , p-Persistent CSMA
In this protocol a station i.e., who wants to transmit some frame will sense the channel first, if it is found busy than that some transmission is going on the medium, then, this station will continuously keep sensing that the channel. And as soon as this station finds that the channel has become idle it will transmit its frame. But if more than one station is in waiting state and keeps track of the channel then a collision will occur in the system because both waiting station will transmit their frames at the same time. The other possibility of collision can be if the frame has not reached any other station then, it indicates to the second station that the channel is free. So the second station also starts its transmission and that will lead to collision. Thus 1-persistent CSMA a greedy protocol as to capture the channel as soon as it finds it idle. And, hence, it has a high frequency of collision in the system. In case of collision, the station senses the channel again after random delay.
To reduce the frequency of the occurrence of collision in the system then, another version of CSMA that is non-persistent CSMA can be used. Here, the station who has frames to transmit first sense whether the channel is busy or free. If the station finds that channel to be free it simply transmits its frame. Otherwise, it will wait for a random amount of time and repeat the process after that time span is over. As it does not continuously senses the channel to be, it is less greedy in comparison of 1-Persistent CSMA. It reduces the probability of the occurrence of collision as the waiting stations will not transmit their frames at the same time because the stations are waiting for a random amount of time, before restarting the process. Random time may be different for different stations so, the likelihood waiting station will start their transmission at the same time is reduced. But, it can lead to longer delays than the 1-Persistent CSMA.
This category of CSMA combines features of the above versions of CSMA that is 1-persistent CSMA and non-persistent CSMA. This version is applicable for the slotted channel. The station that has frames to transmit, senses the channel and if found free then simply transmits the frame with p probability and with probability 1-p it, defers the process. If the channel is found busy then, the station persists sensing the channel until it became idle. Here value of p is the controlling parameter.
After studying the behaviour of throughput vs load for persistent CSMA it is found that Non-Persistent CSMA has maximum throughput. But we can using collision detection mechanism improve upon this to achieve more throughput in the system using collision defection mechanism and for the same we will discuss CSMA/CD in the next section.
CARRIER SENSE MULTIPLE ACCESS WITH COLLISION DETECTION (CSMA/CD)
As before here also any transmission in the system needs to sense the channel to see whether it is busy or free. The stations ensure that the transmission will start only when it finds that the channel is idle. In CSMA/CD the station aborts the process of transmission as soon as they detect some collision in the system. If two stations sense that the channel is free at the same time, then, both start transmission process immediately. And after that, both stations get information that collision has occurred in the system. Here, after the station detecting the collision, the system aborts the process of transmission. In this way, time is saved and utilisation of bandwidth is optimised. This protocol is known as CSMA/CD and, this scheme is commonly used in LANs. Now, we will discuss the basic operation of CSMA/CD. Let, t be the maximum transmission time between two extreme ends of a network system (LAN). At t0 station A, at one extreme end of the LAN begins the process of transmitting a frame FA. This frame reaches the station E which at another extreme end of the same network system in t propagation delay away. If no other station in between has started its frame transmission, it implies that A has captured the channel successfully. But, in case EF station E starts its frame transmission just before the arrival of frame from station A frame then, collision will take place. Station A will get the signal of collision after 2t time. Hence, 2t time is required to ensure that station A has captured the channel successfully as shown with the help of Figure.
Collision of frames will be detected by looking at the strength of electric pulse or signal received after collision. After a station detects a collision, it aborts the transmission process and waits for some random amount of time and tries the transmission again with the assumption that no other station has started its transmission in the interval of propagation time. And hence, in CSMA/CD the channel can be any of the following three states as it can be shown with the Figure. Transmission of frame is going on, Idle slot, Contention period/slot.
In CSMA/CD a station with a frame ready to begin transmission senses the channel and starts transmission if it finds that the channel is idle. Otherwise, if it finds it busy, the station can persist and use backoff algorithm.
How has non-persistent reduced the probability of collision?
In non persistent strategy, station waits for random amount of time after sensing the collision on multiple access channels. Hence are stations attempts for retransmission after random time that reduces the probability of collision.