Alternating bit protocol (ABP) means a simple
data link layer network protocol that retransmits lost or corrupted messages.
Messages are sent from
transmitter A to
receiver B. Assume that the
channel from A to B is initialized and that there are no messages in transit. Each message from A to B contains a data part and a one-bit sequence number, i.e., a value that is 0 or 1. B has two
acknowledge characters that it can send to A: ACK0 and ACK1. We assume that the channel may corrupt a message and that there is a way in which A and B can decide whether or not they have received a correct message. How and to which extent that is possible is the subject of
coding theory.
See more at Wikipedia.org...
<
networking> (ABP) A simple
data link layer protocol that retransmits lost or corrupted messages.
Messages are sent from transmitter A to receiver B. Assume that the channel from A to B is initialised and that there are no messages in transit. Each message contains a data part, a
checksum, and a one-bit
sequence number, i.e. a value that is 0 or 1.
When A sends a message, it sends it continuously, with the same sequence number, until it receives an acknowledgment (
ACK) from B that contains the same sequence number. When that happens, A complements (flips) the sequence number and starts transmitting the next message.
When B receives a message from A, it checks the checksum. If the message is not corrupted B sends back an ACK with the same sequence number. If it is the first message with that sequence number then it is sent for processing. Subsequent messages with the same sequence bit are simply acknowledged. If the message is corrupted B sends back an negative/error acknowledgment (
NAK). This is optional, as A will continue transmitting until it receives the correct ACK.
A treats corrupted ACK messages, and NAK messages in the same way. The simplest behaviour is to ignore them all and continue transmitting.
(2000-10-28)