Bisynchronous & Monosynchronous
Bisynchronous and Monosynchronous communications predate HDLC/SDLC. Older phone switches, such as the Siemens Stromberg-Carlson, use IBM's BSC 3780 protocol to collect CDR records. DERA (UK) uses it to exchange information between surfaced submarines and overflying AWACS planes. The Chilean and Polish Air Forces use it for older radar systems, and so does the Changi Airport in Singapore.
Bisynchronous (BSC) blocks start with 2 generally identical, SYNC characters, followed by data, 2 CRC bytes, and an IDLE character (often 0xFF). In some cases, SYNC/DLE characters appeared inside the user data. CRC calculation can be disabled/enabled to exclude certain embedded characters. Often there is a higher layer protocol inside the raw mode blocks: SOH (Start of Header), STX (Start of Text), ETX (End of Text), EOT (End of Text), ACK (Acknowledge), NAK (Negative Acknowledge).
Monosynchronous (MSC) is similar to BSC, except that only one SYNC character is detected. Monosynchronous is often used for byte transparent and bit transparent modes. Rather than use hardware SYNC signals (DTR/DSR, RTS/CTS) to indicate the opening and closing of a data block, the detection of a unique character or bit combination is used.
TCP Tunnel or Gateway BSC & MSC
For point-to-point connections through a TCP/IP network, it is possible to encapsulate either entire BSC or MSC blocks or just the application data into TCP/IP. As in HDLC tunneling, a 2 byte header defines the length of the block.
Encapsulation for tunneling includes 2 SYNC bytes for BSC, 1 for MSC, application data and CRC; the gateway encapsulates the application data only.