Error map

Which of the seven OSI layers does your error come from? Work from the bottom up: if a lower layer is broken, everything above it fails too.

  1. 7 Application Data 2,149
  2. 6 Presentation Data 109
  3. 5 Session Data 15
  4. 4 Transport Segments 74
  5. 3 Network Packets 19
  6. 2 Data Link Frames 7
  7. 1 Physical Bits 7

Bar length is a square-root scale so the small layers stay visible. 231 of 2,380 errors sit below the Application layer; most software errors are raised by programs, which live at layer 7.

How we assign a layer

We use the strict OSI definition: the layer is the one that detects and reports the problem. So DNS lookups, HTTP status codes and SMTP replies are layer 7 even though they feel like network problems, TLS and certificates are layer 6, and "Connection refused" or "Address already in use" are layer 4. Many errors involve more than one layer; each page shows the layer where the error is raised. Layers 1–2 rarely produce software error messages, so they have few pages.

7

Layer 7 · Application

2,149 errors · unit: Data

The protocol or program you actually talk to: HTTP, DNS, SMTP, SSH, databases and your own code.

Looks like: 404 / 500 / 502 · SMTP 550 · DNS_PROBE_FINISHED_NXDOMAIN · "Access denied" · every language exception

How to test it: Read the status code or exception text, check the server and app logs, call it with curl -v.

6

Layer 6 · Presentation

109 errors · unit: Data

How data is represented on the wire: TLS encryption and certificates, character encodings, JSON / serialization, compression.

Looks like: ERR_CERT_AUTHORITY_INVALID · SSL handshake failed · UnicodeDecodeError · JSON parse error · gzip: not in gzip format

How to test it: openssl s_client -connect host:443 -servername host · check the certificate chain and dates · check Content-Type / charset.

Show the 109 errors on this layer
5

Layer 5 · Session

15 errors · unit: Data

Keeping a conversation open and remembering who is on the other end: sessions, cookies, idle timeouts, WebSockets.

Looks like: Session expired · 419 Page Expired · cookie blocked · WebSocket connection failed · idle client closed

How to test it: Look at the session store / cookie attributes (Secure, SameSite, Domain) and idle-timeout settings.

Show the 15 errors on this layer
4

Layer 4 · Transport

74 errors · unit: Segments

Getting bytes between two programs through ports: TCP connections, UDP, timeouts and resets.

Looks like: Connection refused · Connection reset by peer · ETIMEDOUT · Address already in use · Broken pipe

How to test it: nc -vz host port · ss -ltnp (who owns the port) · check firewall / security-group rules for the port.

Show the 74 errors on this layer
3

Layer 3 · Network

19 errors · unit: Packets

Addressing and routing between networks: IP addresses, subnets, gateways, allow-lists.

Looks like: Network is unreachable · No route to host · ERR_ADDRESS_UNREACHABLE · IP not allowed

How to test it: ping and traceroute the address · ip route · check the IP allow-list or VPC / subnet rules.

Show the 19 errors on this layer
2

Layer 2 · Data Link

7 errors · unit: Frames

Talking to the next device on the same local network: MAC addresses, switches, VLANs, Wi-Fi association.

Looks like: Wi-Fi connected but no internet · duplicate IP / ARP conflict · wrong VLAN · duplex mismatch

How to test it: arp -a · check Wi-Fi / switch port status and VLAN · try a different port or network.

Show the 7 errors on this layer
1

Layer 1 · Physical

7 errors · unit: Bits

Cables, radio and hardware: the link itself being up and carrying a signal.

Looks like: ERR_INTERNET_DISCONNECTED · no internet · cable unplugged · adapter disabled · airplane mode

How to test it: Check the cable, Wi-Fi and airplane mode; look for link lights; try another device on the same network.

Show the 7 errors on this layer

Not sure which layer your error is on?

Paste the full message and we will detect the platform and the most likely cause.

Analyze my error Back to the error map