Layer 7 — Application
Where apps talk using protocols like:
- HTTP
- DNS
- FTP
- SMTP
This is the layer you directly code against.
Layer 6 — Presentation
Makes sure data is in a usable format:
- Encryption (SSL/TLS)
- Compression (gzip, br)
Rarely discussed separately today.
Layer 5 — Session
Manages sessions between two devices.
- Start connection
- Maintain connection
- End connection
In practice, TCP handles most of this now.
Layer 4 — Transport
End-to-end communication:
- TCP → reliable, ordered
- UDP → fast, no guarantees
- QUIC → modern protocol built on UDP
This layer ensures data is delivered between apps properly.
Layer 3 — Network
Routing and IP addressing:
- IP addresses
- Routers
- Packets
- Determines the best path to the destination
This is the “postal system” of the internet.
Layer 2 — Data Link
Devices on the same network communicate:
- MAC addresses
- Switches
- Ethernet, Wi-Fi frame handling
This ensures packet delivery within a local network.
Layer 1 — Physical
Actual physical signals:
- Electrical pulses
- Light in fiber
- Radio waves (Wi-Fi)
This layer is about transmission of raw bits.
🧩 Why does OSI exist? (The real reason)
Because networking is too complex to understand as one big blob.
By splitting it into layers:
- Developers can work at Layer 7 without knowing Layer 1.
- Hardware companies can innovate at Layer 1 without breaking apps.
- Networking engineers can reason about problems more easily.
It’s architecture for thinking, not actual implementation.