A method of
synchronizing data transmission between a host computer
system and a
transmitter across an interface with variable
delay or latency. The host computer
system marks transition frames between successive transmission intervals and transfers the outgoing frames across the variable interface to the
transmitter. The
transmitter enqueues outgoing frames into one or more FIFO transmission
queue(s) and processes the enqueued frames as appropriate for the communication protocol in use. Marked frames are detected as they reach the head of the appropriate transmit
queue. In particular, while bypassing is not active, the transmitter transmits unmarked frames until the end of the current interval, or until there is insufficient time in the interval to transmit another frame or until a marked frame is detected. While bypassing is not active, the transmitter terminates transmission from the transmit
queue when a marked frame is detected during each interval. While bypassing is active, the transmitter discards unmarked frames without transmission until a marked frame is detected. During each interval, the transmitter activates bypassing if a marked frame has not been detected and deactivates bypassing if a marked frame is detected while bypassing is active. The transmitter enables queue mark operation if a marked frame is detected while queue mark operation is not enabled. The transmitter increments a bypass counter each time an interval ends without detecting a marked frame, and disables queue mark operation if the bypass counter reaches a predefined limit.