Started strong on the basic TCP vs UDP stuff, reliability and ordering are easy, but then they pushed into congestion control and I got a bit fuzzy.
Start with a high-level comparison of TCP and UDP across the five dimensions, using a structured table-like format in your explanation. Then dive into TCP's loss detection and retransmission mechanisms, explaining how timeouts, duplicate ACKs, fast retransmit, and selective acknowledgments work together to ensure reliability. Emphasize the trade-offs and when each protocol is appropriate.
Pro tip: Relate the concepts to real-world scenarios, such as why UDP is preferred for live streaming or gaming, and how TCP's congestion control prevents network collapse. Mention that modern protocols like QUIC combine UDP with reliability features, showing awareness of evolving technologies.
Systematically compare the two protocols across reliability, ordering, congestion control, connection setup, and overhead, highlighting key differences and their implications.
Describe how TCP detects packet loss using timeouts and duplicate ACKs, and how it triggers retransmission.
Cover timeout-based retransmission, fast retransmit upon receiving duplicate ACKs, and selective acknowledgments (SACK) for efficient recovery.
Summarize when to use TCP vs UDP, considering application requirements like reliability, latency, and throughput.
AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.