Behind the Scenes of the Internet


Have you ever clicked a link and wondered how a webpage shows up in seconds? It feels like magic — but it’s actually a powerful dance between devices, cables, servers, and protocols. Let’s break it down.
🌐 The Internet: What Is It, Really?
The Internet is global network of interconnected computers & devices that allows users to access and share information between devices. Think of it like a giant road system where-
Devices = Cars
Data = Passengers
Routers & Cables = Roads & Highways
Rules/Protocols = Traffic Laws
Your data travels these “roads” to reach its destination, whether that’s a YouTube video or a Google search result.
🧭 The Journey of Your Data: Step-by-Step
Ever wonder what really happens between the moment you type “google.com” and the moment results appear? Here’s the journey of your data, step by step.
DNS Resolution — Translating Domain Names to IP Addresses
When you enter a URL in your browser’s address bar, the browser first needs to find out the IP address of the server that hosts the website. This process is called DNS resolution (Domain Name System resolution).
The browser sends a request to the nearest DNS server.
If the DNS server doesn’t already know the IP address, it starts a search:
It contacts a root DNS server to find the correct top-level domain server (like
.com
,.org
, etc.).Then it moves to the TLD server, which points to the authoritative DNS server responsible for the specific domain.
Eventually, the authoritative DNS server provides the correct IP address for the domain.
The DNS server sends this IP address back to your browser.
The browser doesn’t do the DNS resolution every time, it caches DNS results.
Once the browser receives the IP address of the website, it uses that information to initiate a connection with the web server hosting the website. This is done using a protocol called TCP (Transmission Control Protocol).
1. TCP Handshake
When you open a website, your browser needs to establish a connection with the server. This is done through a process called the TCP handshake, or more specifically, the Three-Way Handshake — named because it involves three key steps:
SYN (Synchronize) → The client (browser) starts the conversation by sending a data packet with the SYN flag to the server.
Think of it like saying, “Hey, I’d like to talk!”SYN-ACK (Synchronize-Acknowledgment) → The server responds with a packet that has both SYN and ACK flags, indicating it received the message and is ready to communicate.
In simple terms: “Hey, I hear you. I’m ready too!”ACK (Acknowledgment) → Finally, the client replies with an ACK to confirm the connection is established.
Like saying: “Great, let’s start talking!”
2. Sending an HTTP/HTTPS Request
After the TCP connection is successfully established, the browser sends an HTTP (HyperText Transfer Protocol) or HTTPS (HTTP Secure) request to the web server. This request typically uses the GET method to ask for the content of the web page you want to visit.
3. Server Responds
The server receives the browser’s request and processes it. It finds the necessary resources (like the HTML file of the requested page) and sends them back as a response.
A typical HTTP response includes:
A status code (e.g.,
200 OK
,404 Not Found
)The actual content (HTML, CSS, JS, images, etc.)
Because large files can’t be sent all at once, the response data is broken down into smaller pieces called packets. These packets are sent over the internet, often taking different paths to reach your browser.
4. Rendering the Page
The browser receives these packets, reassembles them, and then renders the web page you see — displaying text, loading styles, executing JavaScript, and more.
Subscribe to my newsletter
Read articles from Hardik Kumar directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Hardik Kumar
Hardik Kumar
👨💻 Full Stack Developer | MERN & Beyond | Generative AI Enthusiast As a Full Stack Developer, I specialize in building modern, scalable web applications using the MERN stack and beyond. During my previous internship roles, I contributed to both frontend and backend development on real-world projects, working with technologies like React, Node.js, and microservices-based architectures. With a BTech in Computer Science, I’ve built a strong foundation in programming and software development. I'm passionate about continuous learning and personal growth — and I document my journey as I explore new technologies, sharpen my skills, and strive to become a better engineer every day.