Question 91

Which of the following accurately describes the difference between TCP and UDP protocols in the TCP/IP model?

CCNA Question 91 - Answer and Explanation

Correct Answer: C

Detailed Explanation: This question tests your fundamental understanding of the key differences between the two primary Transport Layer protocols in the TCP/IP suite: TCP (Transmission Control Protocol) and UDP (User Datagram Protocol). Option C accurately captures the core distinction in terms of connection orientation and reliability. TCP (Transmission Control Protocol): Connection-Oriented and Reliable Connection-Oriented: TCP is designed as a connection-oriented protocol. Before data transmission begins, a three-way handshake process establishes a dedicated, virtual connection between the sender and receiver. This handshake ensures both sides are ready to communicate and agree on parameters for the session. The three steps are: SYN (Synchronize): Sender sends a SYN segment to the receiver, requesting a connection. SYN-ACK (Synchronize-Acknowledge): Receiver responds with a SYN-ACK segment, acknowledging the request and also sending its own synchronization segment. ACK (Acknowledgement): Sender sends an ACK segment back to the receiver, confirming the connection establishment. Once the connection is established, data transfer can begin, and at the end, a four-way handshake is used to gracefully terminate the connection. Reliable Data Delivery: TCP provides robust mechanisms to ensure reliable data delivery. These mechanisms include: Ordered Delivery: TCP segments are numbered, and the receiver reassembles them in the correct sequence, even if they arrive out of order. Error Detection and Correction: TCP uses checksums to detect data corruption during transmission. If errors are detected, TCP uses acknowledgements (ACKs) and retransmissions to re-send lost or corrupted segments until they are successfully received and acknowledged. Flow Control: TCP employs flow control mechanisms (like windowing) to prevent the sender from overwhelming the receiver with data. The receiver can signal to the sender to slow down transmission if it's becoming overloaded. Congestion Control: TCP includes congestion control algorithms to detect and react to network congestion, adjusting the transmission rate to avoid overwhelming the network and causing further congestion. Use Cases: TCP is well-suited for applications where reliable data delivery is paramount, even at the cost of some overhead and potential delays. Examples include: Web browsing (HTTP/HTTPS) Email (SMTP, POP3, IMAP) File transfer (FTP, SFTP) Secure Shell (SSH) Database applications UDP (User Datagram Protocol): Connectionless and Unreliable Connectionless: UDP is a connectionless protocol. It does not establish a dedicated connection before sending data. The sender simply sends UDP datagrams (packets) to the destination without prior handshaking. Unreliable Data Delivery: UDP is considered an unreliable protocol because it provides minimal error recovery and flow control. It offers a "best-effort" delivery service. No Guaranteed Delivery: UDP does not guarantee that datagrams will reach the destination, or that they will arrive in order. No Error Correction: UDP performs checksum error detection, but if errors are detected, it simply discards the datagram. There is no retransmission mechanism at the UDP level. No Flow Control or Congestion Control: UDP does not inherently provide flow control or congestion control. Applications using UDP are responsible for implementing these features if needed. Low Overhead and Faster: UDP's simplicity (connectionless and minimal reliability mechanisms) results in lower overhead compared to TCP. This makes it faster and more efficient for applications where speed and low latency are more critical than guaranteed delivery. Use Cases: UDP is suitable for applications where some data loss is acceptable or where reliability is handled at the application layer. Examples include: Streaming media (video and audio streaming) Online gaming Voice over IP (VoIP) DNS (Domain Name System) (primarily uses UDP for queries, TCP for zone transfers) SNMP (Simple Network Management Protocol) Broadcasting and multicasting applications Why Option C is Correct: Accurately Describes Core Differences: Option C perfectly summarizes the essential distinctions between TCP and UDP: TCP being connection-oriented and reliable, and UDP being connectionless and unreliable. Why Other Options are Incorrect: A. TCP is a connectionless protocol that provides reliable data delivery, while UDP is a connection-oriented protocol that provides unreliable data delivery. This is the opposite of the correct descriptions. TCP is connection-oriented, and UDP is connectionless. TCP is reliable, and UDP is unreliable. B. TCP is a connection-oriented protocol that provides unreliable data delivery, while UDP is a connectionless protocol that provides reliable data delivery. This is also incorrect because it flips the reliability aspect. TCP is reliable, and UDP is unreliable. D. TCP and UDP are both connection-oriented protocols, but TCP provides reliable delivery while UDP does not. This is incorrect because UDP is connectionless, not connection-oriented. It correctly distinguishes reliability, but mischaracterizes UDP's connection type. In Conclusion: Option C is the only option that correctly identifies TCP as connection-oriented and reliable, and UDP as connectionless and unreliable. Understanding these fundamental differences is crucial for network engineers and for anyone studying for the CCNA exam. Choosing between TCP and UDP for an application depends heavily on the application's requirements for reliability, speed, and overhead.

This CCNA practice question helps students prepare for Cisco networking certification exams by testing knowledge of network fundamentals, routing, switching, and network security concepts.

Back to Home Page
← Back to CCNA Exam Practice