If acknowledgments fail to arrive, TCP assumes packet loss and retransmits the missing data.
This mechanism forms the backbone of TCP reliability.
Flow Control
Fast senders can overwhelm slow receivers.
TCP prevents this through Flow Control.
The receiver advertises a window size indicating how much data it can currently accept.
The sender respects this limit.
This prevents buffer overflows and excessive retransmissions.
Congestion Control
Networks themselves can become overloaded.
TCP actively monitors congestion and adjusts transmission rates accordingly.
Popular congestion-control algorithms include:
These algorithms help maintain stability across the internet.
Without them, large networks could suffer severe congestion collapse.
UDP: The Fast Lane
UDP takes a completely different approach.
Rather than guaranteeing delivery, UDP prioritizes speed and simplicity.
UDP:
- Does not establish connections
- Does not use acknowledgments
- Does not retransmit lost data
- Does not guarantee ordering
A sender simply transmits data and moves on.
Why Would Anyone Use UDP?
At first glance, UDP sounds inferior.
But many real-world applications care more about timeliness than perfection.
Consider a live video call.
If a packet arrives three seconds late, it's useless.
Receiving current information matters more than receiving every piece of information.
In these situations, UDP excels.
Common UDP Applications
Video Streaming
A dropped frame is usually less noticeable than buffering.
Examples:
- Live broadcasts
- Video conferencing
- Real-time streaming
- Online Gaming
Players need current game-state information.
Receiving outdated position updates provides little value.
Voice over IP (VoIP)
Late audio cannot be replayed meaningfully in a conversation.
DNS
Domain Name System lookups are small and simple.
Using TCP would introduce unnecessary overhead.
TCP vs UDP
A side-by-side comparison helps highlight the differences.
| Feature |
TCP |
UDP |
| Connection Required |
Yes |
No |
| Reliable Delivery |
Yes |
No |
| Ordered Data |
Yes |
No |
| Retransmission |
Yes |
No |
| Acknowledgments |
Yes |
No |
| Speed |
Slower |
Faster |
| Overhead |
Higher |
Lower |
| Common Uses |
Web, Email, File Transfer |
Streaming, Gaming, VoIP |
Neither protocol is universally better.
The best choice depends entirely on the application's requirements.
Port Numbers: Layer 4 Addressing
IP addresses identify devices.
Port numbers identify applications.
Without ports, your computer would not know whether incoming traffic belongs to:
- A web browser
- An email client
- A game
- A DNS resolver
The Transport Layer solves this using port numbers.
Port values range from:
0 – 65535
Common Well-Known Ports
| Port |
Service |
| 80 |
HTTP |
| 443 |
HTTPS |
| 25 |
SMTP |
| 53 |
DNS |
| 21 |
FTP |
| 22 |
SSH |
When you visit a website, your browser typically connects to port 443 for HTTPS communication.
What Is a Socket?
A complete communication endpoint consists of:
IP Address + Port Number
This combination is called a:
Socket
Example:
192.168.1.10:52341
The socket uniquely identifies a communication endpoint.
Millions of simultaneous internet connections rely on sockets every second.
Transport Layer in the OSI Model Simulator
The Transport Layer is one of the most visually interesting stages of encapsulation.
In the Roboticela OSI Model Simulator, you can observe:
- Source ports
- Destination ports
- TCP segmentation
- UDP encapsulation
- Layer-specific headers
Watching ports and transport information appear helps bridge the gap between networking theory and real protocol behavior.
Landing Page:
https://osi-model-simulator.roboticela.com
Launch Simulator:
https://app.osi-model-simulator.roboticela.com
Try comparing a TCP-based protocol like HTTPS with a UDP-based service and observe how the encapsulation process differs.
Key Takeaways
- The Transport Layer provides end-to-end communication between applications.
- TCP offers reliable, ordered delivery through acknowledgments and retransmissions.
- TCP uses a three-way handshake before data transfer begins.
- UDP prioritizes speed and simplicity over reliability.
- Port numbers identify applications on a device.
- A socket consists of an IP address and port number.
- TCP and UDP serve different use cases and are both essential to modern networking.
Conclusion
The Transport Layer is where networking decisions become practical trade-offs.
Should communication be perfectly reliable or extremely fast?
Should missing data be retransmitted or ignored?
TCP and UDP answer these questions differently, giving applications the flexibility to choose the behavior that best fits their needs.
Whether you're loading a secure banking website or playing an online game, Layer 4 is working behind the scenes to deliver your data exactly the way the application expects.
In the next article, we'll move into the upper layers of the OSI Model and explore Layer 5: the Session Layer, where communication sessions are established, maintained, and gracefully terminated.