Why UDP instead of TCP?
While TCP guarantees delivery of a stream of data, something that IP alone does not, TCP does not guarantee timely delivery of the data. To insure delivery of data, TCP resends a packet if the TCP protocol software does not receive an acknowledgement from the receiver before the TCP retransmission timeout expires. TCP uses an “adaptive retransmission algorithm” that may choose a long timeout when the network is slow. As a result TCP may wait a long time before retransmitting the packet. With video, packets of video data must be delivered quickly to prevent an underflow in the buffer of the receiving video player resulting dropped frames. The video player runs out of video data to display. Video networking protocols implemented with UDP often add a fixed timeout to retransmit packets before the buffer of the receiving video process, the video player, underflows. Such a protocol may also adjust the buffer size to compensate for delays and congestion in the network. RFC 768 User Datagram