A developer complains that their application using UDP for video streaming experiences packet loss but the application still works acceptably. However, when they switched a file transfer application from FTP (TCP) to a UDP-based transfer, file integrity failures occurred.
What fundamental TCP/IP design principle explains why UDP is acceptable for video but unacceptable for file transfers?
- A.UDP is faster than TCP for all applications; the file transfer application should use faster hardware
- B.UDP is connectionless and unreliable (no retransmission, no ordered delivery, no flow control); for video streaming, occasional lost packets cause brief visual artifacts but the stream continues -- the application is loss-tolerant and latency-sensitive (a retransmitted packet arriving 200ms late is worse than no packet); for file transfers, every byte must be delivered exactly as sent -- a single corrupted or missing byte can render the file unusable; TCP guarantees ordered, complete, error-checked delivery via retransmission, making it mandatory for data integrity applications