You type guetix.com/blog, press Enter, and a page appears in a fraction of a second. In between, your request crossed cities, negotiated encryption keys and was assembled into pixels. Let's ride along.
This is one of the most popular interview questions for web developers because it touches everything: networking, security, servers and browsers. You don't need to memorise it — once you see the journey, it sticks.
The journey, animated
Press play. Then switch to Repeat visit and compare the total time — that difference is why caching matters so much.
Parse URL · ~2 ms
The browser splits https://guetix.com/blog into scheme (https), host (guetix.com) and path (/blog). HTTPS means port 443.
Network waterfall
2 / 392 ms
1. DNS: turning names into numbers
Routers don't understand guetix.com; they understand IP addresses. The browser asks a DNS resolver (usually your ISP's, or one like 1.1.1.1 or 8.8.8.8). If the resolver doesn't know, it walks the hierarchy:
- A root server points it to the servers for
.com. - The .com TLD server points it to the domain's authoritative name servers.
- The authoritative server answers with the actual IP address.
The answer is cached by the browser, the operating system and the resolver for its TTL (time to live). That's why DNS usually costs nothing on a repeat visit.
2. TCP & TLS: two handshakes before hello
With an IP address in hand, the browser opens a TCP connection using a three-way handshake: SYN → SYN-ACK → ACK. It guarantees bytes arrive complete and in order, but costs a full round trip.
Because the URL is https, the browser and server then run a TLS handshake: they agree on a cipher, exchange keys and the browser verifies the server's certificate against trusted authorities. With TLS 1.3 this takes one round trip (zero on some resumed connections).
Quick check
Which protocol lets HTTP/3 merge the transport and encryption handshakes into fewer round trips?
3. The HTTP request and TTFB
Now the browser sends GET /blog with headers like Accept, Accept-Language and cookies. The server might return a cached page instantly, or run code and query a database. The time until the first response byte arrives is the TTFB.
- 2xx — success (
200 OK). - 3xx — go elsewhere (
301permanent,304 Not Modified= use your cache). - 4xx — your mistake (
404,403). - 5xx — the server's mistake (
500,503).
4. From bytes to pixels
The browser doesn't wait for the whole file — it parses HTML as it streams in:
- DOM: HTML is parsed into a tree of nodes.
- CSSOM: CSS is parsed into style rules (CSS is render-blocking).
- Render tree: visible nodes + their computed styles.
- Layout: exact size and position of every box.
- Paint: pixels for text, colours, images, borders.
- Composite: layers are combined, often on the GPU.
Along the way the parser discovers more resources — CSS, fonts, scripts, images — each potentially requiring its own request. A synchronous <script> pauses parsing entirely, which is why modern sites use defer, async or type="module".
The fastest request is the one you never make. The second fastest is the one that travels the shortest distance.
How fast sites cheat the journey
Skip stages
- Caching with
Cache-Controllets the browser reuse files without asking. - Keep-alive / HTTP/2 reuses one connection for many requests.
<link rel="preconnect">warms DNS+TCP+TLS for third-party origins early.
Shorten distance
- CDNs and edge rendering serve pages from a city near the user.
- Static generation moves server work to build time — see CSR vs SSR vs SSG vs ISR.
Every one of these maps to a Core Web Vital Google uses for ranking. Ready for the next level? Read Core Web Vitals explained.

