Carrier-sense multiple access (CSMA) is a medium access control (MAC) protocol in which a node verifies the absence of other traffic before transmitting on a shared transmission medium, such as an electrical bus or a band of the electromagnetic spectrum. Under CSMA, a transmitter uses a carrier-sense mechanism to determine whether another transmission is in progress before initiating a transmission. That is, it tries to detect the presence of a carrier signal from another node before attempting to transmit. If a carrier is sensed, the node waits for the transmission in progress to end before initiating its own transmission. Using CSMA, multiple nodes may, in turn, send and receive on the same medium. Transmissions by one node are generally received by all other nodes connected to the medium. Variations on basic CSMA include addition of collision-avoidance (CSMA/CA), collision-detection (CSMA/CD) and collision-resolution techniques. Access modes Variations of CSMA use different algorithms to determine when to initiate transmission onto the shared medium. A key distinguishing feature of these algorithms is how aggressive or persistent they are in initiating transmission. A more aggressive algorithm may begin transmission more quickly and utilize a greater percentage of the available bandwidth of the medium. This is typically at the expense of an increased likelihood of collision with other transmitters. 1-persistent 1-persistent CSMA is an aggressive transmission algorithm. When the transmitting node is ready to transmit, it senses the transmission medium for idle or busy. If idle, then it transmits immediately. If busy, then it senses the transmission medium continuously until it becomes idle, then transmits the message (a frame) unconditionally (i.e. with probability=1). In case of a collision, the sender waits for a random period of time and attempts the same procedure again. 1-persistent CSMA is used in CSMA/CD systems including Ethernet. Non-persistent Non persistent CSMA is a non-aggressive transmission algorithm. When the transmitting node is ready to transmit data, it senses the transmission medium for idle or busy. If idle, then it transmits immediately. If busy, it jumps to the final random waiting step of 1-persistent CSMA directly before repeating the whole logic cycle again: it does not persist in checking the busy channel trying to get its transmission through, hence the name. This approach reduces the chance of collision and results in overall higher medium throughput but with a penalty of longer initial delay compared to 1–persistent. P-persistent This approach lies between the 1-persistent