A bit-oriented protocol is a communications protocol that sees the transmitted data as an opaque stream of bits with no semantics, or meaning. Control codes are defined in terms of bit sequences instead of characters. Bit oriented protocol can transfer data frames regardless of frame contents. It can also be stated as "bit stuffing" this technique allows the data frames to contain an arbitrary number of bits and allows character codes with arbitrary number of bits per character.
Synchronous framing High-Level Data Link Control is a popular bit-oriented protocol. Synchronous framing High-Level Data Link Control may work like this:
- Each frame begins and ends with a special bit pattern 01111110, called a flag byte.
- A bit stuffing technique is used to prevent the receiver from detecting the special flag byte in user data e.g. whenever the sender's data link layer encounters 5 consecutive 1 (one) in the data, it automatically stuffs 0 into the outgoing stream.