Command Palette

Search for a command to run...

PHASE 6Beginner ~7 min· topic 1 of 10

Topic 6.1

Internet Basics

In one line

Client, server, DNS, IP, port — the five components behind every request you've ever made.

0/10 · 0%

Think of it like this

Sending a letter. The IP address is like the street address of a building; the port number is like the flat number inside that building; DNS is the phone book that looks up 'Ramesh's house' and gives you the street address.

Key ideas

  1. 01

    Client: the one requesting (browser, app, another service). Server: the one responding (could be another service).

  2. 02

    IP: addresses the machine (IPv4 12.7.0.1 / IPv6). Port: addresses the process ON the machine (443 = HTTPS).

  3. 03

    DNS: the global phonebook translating human names → IP (and load-balanced VIPs).

  4. 04

    A socket = IP + port + protocol — the concrete endpoint of a connection.

  5. 05

    The full journey a user request takes in one line: Browser → DNS → Load Balancer → Server → Database.

  6. 06

    Interview: always trace the first request of the day end-to-end; it surfaces DNS/flush, TLS, and connection pooling.

Java / Spring map

  • →

    RestTemplate/WebClient use the OS socket; connection pools (Apache HttpClient) reuse sockets to dodge three-way-handshake cost.

Code & diagrams

RequestJourneydiagram

The one diagram every HLD answer secretly starts from.

Rendering diagram…

Explain without notes

01

What does the browser do the very first time you type sysdesign.google and hit Enter? Step by step.

Practice

01

Trace the flow for 'user opens the food-delivery app in a new datacenter' — where does DNS lag show up?

Trade-offs

  • ↔

    DNS caching speeds things up but stale entries cause outages — TTL is the dial between freshness and load.

Run it in production

Completion checklist

  • I can narrate Browser → DNS → LB → Server → DB in under a minute.

Back to phase