SEARCH 

Polled Protocol Overview

Polled protocols are used to control the flow of data between the host and the terminal. This protocol defines how each device on a communications line operates. With polled protocols, the host computer controls all data flow through a polling mechanism which uses special characters and sequences to control each device.


Poll Characteristics

Polled protocols have many similar characteristics, including:

  • Sync (normally, but can be async)
  • Half-duplex (Only one device sends at a time)
  • Block mode, with a Block Check used for error detection
  • Unique address for each terminal

Addressing

Each terminal connected to the host is assigned an address. Every terminal on a communications line must have a unique address.


Block Check

Most polled protocols use a Block Check Character (BCC) to verify that the data was not corrupted during the transmission. The transmitting station uses an algorithm to calculate a BCC which is added to the end of the message. The receiving station uses the algorithm to recalculate the BCC as the message is received. If the BCCs match, the message was not corrupted. If the BCCs do not match, the message will be rejected.

The receiving station will send an Positive Acknowledgement (ACK) to messages received with matching BCCs and will send a Negative Acknowledgement (NAK) to messages received with BCCs that do not match. A NAK will usually generate a retransmission of the bad message.


Control Characters

Each protocol designates certain characters for control of the network connection. These characters are called Data Link Characters. Protocols use a combination of these characters to determine polls, selects, and data blocks.

Bit-oriented protocols (BOP) such as SDLC use a special character called a FLAG to indicate the beginning and end of a frame (block). The offset (in bits) of the control characters from the Flags determines the character's value.


Protocol Rules

Every polled protocol implements polls and selects through different sets of rules. The control characters used by the host to indicate polls and the appropriate responses are defined by the specific vendor's protocol.

Polled protocols are single thread with only one conversation (one pair of TD and RD) path for poll and select operations. Bit-oriented Protocols are multi-thread. Several distinct communications may exist in different states simultaneously. This is the inherent advantage of BOP over polled protocols.


Poll

The Poll is used to determine if the terminal has anything to send to the host. The host maintains a list of the terminals on a communications line, and sequentially polls each terminals on the (poll) list. Some protocols use a controller to connect several terminals to the communications line. With controllers, the host can poll the controller with a General poll. The controller determines which terminal will answer the poll. A Poll is illustrated as follows:

Host Terminal
Poll (to a Specific Address)========================================>
<========================================ACK (no message to send)
NAK (poll was garbled)
Data
Error Condition
No Response (not the correct address)
Text (to a responding terminal)========================================>
<========================================ACK (BCC match)
Text (BCC did not match)
Error Condition (used for flow control, BCC match but cannot accept further messages)
No Response (not the correct address)

The terminal will only send one of the above responses. The actual response sent is dependent on the protocol. The host will send an acknowledgement that the data was received (BCCs match).


Select

The Select is used to determine if the terminal is able to accept a message from the host. The terminal will indicate whether it can accept a message. The terminal's response is dependent on the selected protocol. The host will send the text message only after the acknowledgement is received from the terminal. A Select is illustrated as follows:

Host Terminal
Select (to a Specific Address)========================================>
<========================================ACK (can accept a message)
Text (some protocols use text as an ACK)
NAK or WACK (cannot accept a message)
Error Condition (busy and cannot accept a message)
No Response (not the correct address)
Text (to a responding terminal)========================================>
<========================================ACK (BCC match)
Text (BCC did not match)
Error Condition (used for flow control, BCC match but cannot accept further messages)
No Response (not the correct address)

Once the host finishes sending data to the terminal, it may poll the next terminal on the poll list or continue to send to the same selected terminal.