Image Processing Reference
may not always be the same for all packets. There may be delays or sequencing issues with
the packets arriving at unpredictable times.
These effects are alleviated with buffering at the expense of latency. The simple rule
of thumb is that TCP (transmission control protocol) guarantees the arrival and sequence
ordering of the packets at the expense of their timeliness of arrival. Alternatively, UDP
(universal datagram protocol) transports could be used, which guarantee timeliness but
don't guarantee arrival or sequencing order.
Uplinking a feed to a satellite and downlinking to a dish connected to your set-top
box involves a journey of several thousand miles through what may be turbulent atmos-
pheric conditions. This introduces a delay and possibly some loss of information. The
timeliness and sequencing is preserved, though, since the stream is continuously trans-
mitted from the broadcast head-end.
Likewise, digital transmission systems such as terrestrial and digital cable may
deliver the signal over some tens or hundreds of miles. Terrestrial transmission is suscep-
tible to atmospheric conditions and there is also a possibility of co-channel interference
and problems with receiver aerials that can “see” two transmitters separated by a narrow
angle even though one may be a lot further away. Odd fringe effects come into play and
this degrades the reception. DCable may be susceptible to network-balancing issues where
the distribution is not ideally matched in terms of impedance at some nodes, or there may
be substandard terminations in the cables leading to reflected signals.
All of these issues manifest themselves as dropouts or corrupted data in the deliv-
ered stream. The nature of the degradation varies significantly. While the transmission
systems are designed to be resilient, extreme error conditions for lengthy periods may
result in a loss of service. This is of course all predicated on the service being delivered
perfectly in the first place, which is the norm, but occasionally a multiplex may be
packed with too much data to be transmitted and the multiplex then breaks because it
exceeds the capacity available to deliver the streams. That is quite rare and tends to hap-
pen when services are in pre-launch trials or when a major reorganization of the service
One of the simplest forms of error resilience is parity protection. This is applied on serial
connections on a byte-by-byte basis and is a somewhat costly way of protecting the stream
content. Essentially a single bit is added to each byte and it is set to 1 or 0 in order to ensure
that the total number of bits is either odd or even. This tells you when a single byte is cor-
rupted. There is still an opportunity for undetected errors because two reversed bits cause
the parity to read correctly. Parity protection at the byte level is resilient to a single error
but no more.
Cyclic Redundancy Checks
A small amount of data is added as the packets are assembled to create a checksum value.
By performing a simple calculation, a known value is generated for every packet. The