When devices communicate across networks, they rely on ports and protocols to ensure data reaches the right application and is handled correctly. This guide explains the fundamental protocols TCP and UDP, and explores common application protocols that use them.
The Foundation: TCP
and UDP
TCP
(Transmission Control Protocol)
TCP is
a connection-oriented protocol that ensures reliable, ordered
delivery of data.
·
Reliable: Uses
acknowledgements to confirm data receipt
·
Ordered: Maintains
sequence numbers to ensure data arrives in order
·
Connection-based: Requires
handshake before data transfer
·
Slower: More
overhead due to reliability features
·
Heavier: More
resource-intensive
TCP
Three-Way Handshake:
1.
SYN: Client
sends synchronization packet
2.
SYN-ACK: Server
acknowledges and responds
3.
ACK: Client
acknowledges, connection established
UDP
(User Datagram Protocol)
UDP is
a connectionless protocol that prioritizes speed over
reliability.
·
Fast: Minimal
overhead, no connection setup
·
Lightweight: Less
resource-intensive
·
Unreliable: No
delivery guarantees or acknowledgements
·
Unordered: No
sequence tracking
·
No congestion control: Can
overwhelm networks
TCP vs UDP Comparison
Feature |
TCP |
UDP |
Connection |
Connection-oriented |
Connectionless |
Reliability |
High (acknowledgements) |
Low (best-effort) |
Speed |
Slower |
Faster |
Ordering |
Maintains sequence |
No ordering |
Error Checking |
Extensive |
Basic checksum only |
Use Cases |
Web browsing, email, file transfer |
Streaming, gaming, DNS |
Overhead |
High |
Low |
Common
Application Protocols and Their Ports
Web
Protocols
HTTP (Hypertext
Transfer Protocol)
·
Port: 80
·
Transport: TCP
·
Purpose: Web
page transfer
·
Characteristics: Clear
text, stateless
·
Example: http://www.example.com
HTTPS
(HTTP Secure)
·
Port: 443
·
Transport: TCP
·
Purpose: Secure
web page transfer
·
Characteristics: Encrypted
(TLS/SSL), authenticated
·
Example: https://www.example.com
File
Transfer Protocols
FTP
(File Transfer Protocol)
·
Port: 21
(control), 20 (data)
·
Transport: TCP
·
Purpose: File
transfers between client and server
·
Characteristics: Two
connections, often unencrypted
·
Variants: SFTP
(SSH File Transfer Protocol) uses port 22
TFTP
(Trivial File Transfer Protocol)
·
Port: 69
·
Transport: UDP
·
Purpose: Simple
file transfers
·
Characteristics: No
authentication, minimal overhead
·
Use Case: Network
device configuration, boot files
Email
Protocols
SMTP
(Simple Mail Transfer Protocol)
·
Port: 25
(standard), 587 (secure submission)
·
Transport: TCP
·
Purpose: Sending
email between servers
·
Characteristics: Mail
routing and delivery
POP3
(Post Office Protocol v3)
·
Port: 110
·
Transport: TCP
·
Purpose: Email
retrieval from server to client
·
Characteristics: Downloads
and typically deletes from server
IMAP
(Internet Message Access Protocol)
·
Port: 143
·
Transport: TCP
·
Purpose: Email
management on server
·
Characteristics: Syncs
across multiple devices, emails stay on server
Network
Infrastructure Protocols
DNS
(Domain Name System)
·
Port: 53
·
Transport: UDP
(typically), TCP (for large responses)
·
Purpose: Domain
name to IP address resolution
·
Characteristics: Fast
lookups, distributed database
DHCP
(Dynamic Host Configuration Protocol)
·
Port: 67
(server), 68 (client)
·
Transport: UDP
·
Purpose: Automatic
IP address assignment
·
Characteristics: Dynamic
network configuration
SSH
(Secure Shell)
·
Port: 22
·
Transport: TCP
·
Purpose: Secure
remote access
·
Characteristics: Encrypted
terminal sessions
Real-World
Protocol Usage Examples
Web
Browsing Session
1.
DNS Lookup (UDP 53): Convert
domain name to IP address
2.
TCP Handshake (Port 443): Establish
secure connection
3.
HTTPS (TCP 443): Transfer
encrypted web page data
4.
TCP Teardown: Close
connection gracefully
Email
Sending Process
1.
Compose email in
client application
2.
SMTP (TCP 587): Send
email to outgoing mail server
3.
SMTP (TCP 25): Server
relays email to recipient's server
4.
Recipient uses POP3/IMAP (TCP
110/143): Retrieve email
Online
Gaming
1.
Game Client: Uses
UDP for fast, real-time updates
2.
Player Movement: UDP
packets for immediate position updates
3.
Chat System: May
use TCP for reliable message delivery
4.
Lobby/Login: TCP
for authentication and matchmaking
Security
Considerations
Secure vs. Insecure Protocols
Protocol |
Secure Alternative |
Reason |
HTTP |
HTTPS |
Encryption |
FTP |
SFTP/FTPS |
Encryption |
Telnet |
SSH |
Encryption |
SMTP |
SMTPS |
Encryption |
Common
Security Practices
·
Use encrypted protocols whenever
possible (HTTPS, SFTP, SSH)
·
Avoid clear-text protocols on
untrusted networks
·
Implement firewall rules to
block unnecessary ports
·
Regularly update services using
these protocols
Port
Number Ranges Quick Reference
·
Well-known Ports: 0-1023
(System/services)
·
Registered Ports: 1024-49151
(Applications)
·
Dynamic/Private Ports: 49152-65535
(Client connections)
Understanding
ports and protocols is essential for network administration, security, and
troubleshooting. TCP provides reliability for critical data,
while UDP offers speed for real-time applications. Each
protocol serves specific purposes, and knowing which port they use helps in
configuring firewalls, troubleshooting connectivity, and designing network
architectures.
Choose TCP when you need
reliability and data integrity, and UDP when speed and low latency are
priorities. Always prefer secure, encrypted versions of protocols to protect
data in transit.