|(protocol)||bit stuffing - A protocol which guarantees the receiver of
synchronous data can recover the sender's clock. When the
data stream sent contains a large number of adjacent bits
which cause no transition of the signal, the receiver cannot
adjust its clock to maintain proper synchronised reception.
To eliminate the possibility of such a pathological case, when
a preset number of transitionless bits have been transmitted,
a bit which does cause a transition is "stuffed" (transmitted)
by the sender. The receiver follows the same protocol and
removes the stuffed bit after the specified number of
transitionless bits, but can use the stuffed bit to recover
the sender's clock.|
The advantage of bit stuffing is that only a bit (not a byte) is inserted in the data stream, and that only when the content of the data stream fails to provide a timing signal to the receiver. Thus very nearly 100% of the bits transported are useful data. In contrast, asynchronous transmission of data "throws away" a start bit and one or more stop bits for each data byte sent.