Polling

Polling is a technique where by a master station identifies the status of the slave stations by asking each in turn for a status report. In many cases, communications links consist of just two nodes - so there is just one master station and one slave station.

Polling may be used to provide a communications protocol which supports reliability. The operation of polling for error recovery is explained below:

During normal operation, a steady flow of PDUs are transmitted by the sending node to the corresponding receiver. This receiver returns information (acknowledgments) to the transmitter to synchronise the operation of the protocols (or to indicate that a receiver is 'not ready' to receive data).

If a receiver fails to receive an acknowledgment for the PDUs it has transmitted, or when it has sent a PDU which requires the remote node to perform a specific action and this action has not been performed, it may commence a process known as "Polling".

Polling is triggered when the sender/transmitter detects that it has not received an acknowledgment for a PDU which it has sent previously. It commences with the transmission of a control PDU indicating the current state, and requesting the remote node state (see figure).

Polling to Determine the Remote Node State

When the remote node receives this PDU, it replies by transmitting a response PDU indicating its current state. This process, if completed successfully, allows the local node to synchronise its send state information with the remote node's receive state information. (The synchronisation is performed in the direction of transmission of the poll PDU). This allows the transmitter to detect any frames which have not been successfully received and retransmit them.

Example of Polling. The sender in this example transmits three PDUs (1-3) and none of these are successfully received. After a period of time, it notes that no acknowledgment PDU has been received (through expiry of a timer) and commences to poll the remote node. The remote node responds indicating the last PDU correctly received. The sender is therefore able to retransmit the missing PDUs (1-3), which the receiver then acknowledges.

Polling is used in HDLC which supports the Checkpoint procedure.


See also

Reliability

Stop and Wait ARQ

Polling (this page)

Go-Back-N ARQ

Selective Repeat ARQ

For further information see:

HDLC Checkpoint Procedure