TCP Characterization: Layer, Connection Semantics, and Reliability
TCP (Transmission Control Protocol) is designed to provide reliable, ordered delivery of a byte stream between applications. In the OSI model it operates at the transport layer (not the data link layer). It is connection-oriented because it establishes a connection before data transfer, and it is reliable because it uses mechanisms such as acknowledgments, retransmissions, and sequence numbers to recover from errors and losses.
A quick mapping to your options:
- TCP is (iii) connection-oriented and reliable.
It is not (i) data-link-layer operation, not (ii) unreliable, and not (iv) connectionless.
To anchor this, TCP is commonly contrasted with UDP, which is transport-layer too, but is typically connectionless and does not provide TCP-style reliability.
Footnotes
-
Wikipedia - Transmission Control Protocol (TCP): https://en.wikipedia.org/wiki/Transmission_Control_Protocol - Overview including role as transport-layer protocol. ↩
TCP Overview (Connection-Oriented, Reliable) — CrashCourse / networking intro
Exam-Focused Reasoning for the MCQ Options
Option Check
- (i) “operates at the data link layer” → False
TCP is a transport-layer protocol in the OSI model. - (ii) “connection-oriented and unreliable” → False
TCP is engineered for reliable delivery, not best-effort/unreliable delivery. - (iii) “connection-oriented and reliable” → True
TCP establishes a connection and provides reliability via acknowledgments, retransmission, and ordering. - (iv) “connectionless and unreliable” → False
TCP is not connectionless (it is connection-oriented) and it aims to be reliable.
Footnotes
-
Wikipedia - Transmission Control Protocol (TCP): https://en.wikipedia.org/wiki/Transmission_Control_Protocol - Overview including role as transport-layer protocol. ↩
-
Wikipedia - Transmission Control Protocol (TCP): https://en.wikipedia.org/wiki/Transmission_Control_Protocol - Reliability and connection-oriented behavior descriptions (ACKs, retransmission, ordered byte stream). ↩ ↩2 ↩3
Pro Tip
For OSI-layer questions, remember: TCP/UDP are transport-layer protocols; Ethernet/PPP are data-link-layer protocols.
Common Pitfall
Do not confuse ‘connection-oriented’ with ‘requires a dedicated physical circuit’. TCP creates a logical session (via the handshake) over shared networks.
How TCP achieves “connection-oriented and reliable”
- 1Step 1
TCP uses a handshake to establish synchronization between endpoints before application data is exchanged.
- 2Step 2
Data is segmented into TCP segments, labeled with sequence numbers so the receiver can reconstruct order.
- 3Step 3
The receiver sends ACKs to confirm receipt of segments (often cumulatively).
- 4Step 4
If ACKs are missing or time out, TCP retransmits unacknowledged segments.
- 5Step 5
Using sequence numbers and buffering, TCP delivers a reassembled byte stream to the application in order.
TCP lifecycle (conceptual)
Connection setup
1. HandshakePeers negotiate readiness to send/receive."
Reliable data exchange
2. TransferSequence numbers + ACKs + retransmissions provide reliability and ordering."
Connection termination
3. TeardownEndpoints close the session in a coordinated way."
Option mapping for TCP
Binary fit of TCP against each statement (1 = matches, 0 = does not).
Key concepts you should know
Knowledge Check
Which option best describes TCP?