Clearly the most significant difference is that UDP is “best effort” and TCP is “guaranteed
delivery”. TCP is used in most networks for tasks such as exchanging file information
between nodes, because absolute accuracy is required and because the delivery
requirement is usually “point to point”.
The table implies several different methods of transmission, for example:
• Broadcast where a message goes to all nodes on the network. Must be UDP.
• Unicast where a message goes from one node to another. Must be TCP.
• Multicast where a message goes from one node to many nodes, each assigned to a
multicast address group. Must be UDP.
The table has great significance with respect to transmitting images over networks. A few
of the points that arise from it are as follows:
• Many if not most applications will involve the transmission of an image from one node
to many nodes, indicating that multicast operation is required and that UDP is needed.
• Many if not most applications will require minimum latency, again indicating the use
of UDP.
• UDP does not provide “reliable” communication, so any application has to take into
account the effect of lost data packets, out of order packets, and errors.
• Time critical data (like video) is often sent using an additional protocol called RTP (Real
Time Protocol). This “time stamps” the packets and can be used to endow UDP with
some measure of flow control.
These are not trivial issues. If a data bit goes missing in a dedicated digital video link (like
SDI) the result is not catastrophic – its effect is at a single pixel level within a single video
frame. If a data bit goes missing in an MPEG stream, it can prevent the reconstruction of
an entire group of images.
VN-Matrix 200 Series • Understanding Network Performance 100