What Happens When You Type a URL into a Browser?
Questions like these assess technical knowledge, communication, and curiosity about tech. Think about what complementary technologies will impact your work at target companies, and prepare to talk about them. Showing enthusiasm will always win points.
Are you able to build a quick diagram to accompany your answer? Give it a try—creating visuals cements your own knowledge, and makes your answer more memorable for the interviewer.
Are you prepared for follow-ups? For example—could you explain the difference between HTTP and HTTPS?
Interviewers ask questions like these to assess a few key things:
- Basic technical knowledge.
- Communication skills.
- Curiosity and enthusiasm about how tech works, even outside your specific domain.
Chances are you use the internet every day; regardless of your role, it’s important to understand how the internet works if you’re working in a technical field.
Quick Concept Review
First, let's review some core components you’ll need to know.
Client Server Architecture
Client-server architecture is a fundamental framework for network computing. The model comprises clients, that make data requests, such as a browser, and servers, that store and serve data.
URLs (Uniform Resource Locators)
URLs (Uniform Resource Locators) contain the address of the resources you want to access on the internet. These might signify images, hypertext pages, audio/video files, etc.
For example, let’s look at https://www.tryexponent.com. If we break it down into its component parts, we find the following:
- 'https' indicates to the browser which protocol (set of rules) should be used to establish the communication on the network. Options include FTP, mail to, file, HTTP, HTTPS, etc.
The second part makes up the hostname:
- Root Domain, or period '.' -
- Top Level Domain, or '.com'
- Second Level Domain, or 'tryexponent'
- Subdomain, or 'www'
DNS (Domain Name System)
The Domain Name System (DNS) is the Internet's phone book. Domain names, such as google.com or tryexponent.com, are used by humans to access information online. Web browsers communicate using Internet Protocol (IP) addresses. DNS converts domain names to IP addresses so that browsers can access Internet resources.
Each Internet-connected device has a unique IP address that other machines can use to locate the device. IP addresses are used as distinctive identifiers to identify users. IP addresses can be formatted differently depending on whether they use IPv4 or IPv6 protocol.
DNS servers eliminate the need for humans to remember IP addresses like 192.0.1.1 (in IPv4) or more complex newer alphanumeric IP addresses like 1800:tbb00:2048:1::c629:l2a2 (in IPv6).
Let’s take a step-by-step look at what DNS does behind the scenes:
- When you launch a web browser and type https://www.tryexponent.com into the address bar, the request for https://www.tryexponent.com is routed to a DNS resolver.
- The DNS resolver for the ISP forwards the request for https://www.tryexponent.com to a DNS root name server, and the root name server redirects to TLD server.
- The DNS resolver for the ISP forwards the request this time to one of the TLD name servers for .com domains (.com domains redirects to the authoritative name server.)
- The DNS resolver makes a request to the authoritative name server for the relevant IP address, and the authoritative name server sends the IP address to the DNS resolver.
- Once the browser receives the IP address, the browser makes an HTTP request.
- The server at that IP address (tryexponent in this example) will return the webpage to be rendered in the browser.
Graphically, it looks like this:

TCP 3-way Handshake
TCP/IP uses a process known as the TCP 3-way handshake to establish the connection between two hosts (the client and the server). This is a concise description of the process:
A client computer transmits a SYN message to determine whether the second computer is available for a new connection. If the other computer is ready for a new connection, it sends a SYN message along with an acknowledgment. The TCP socket connection is made when the first computer receives the message, and acknowledges it by sending an ACK message, which is then received by the second computer.
OSI (Open Systems Interconnection) Layers
The Open Systems Interconnection (OSI) model describes seven layers that computer systems use to communicate over a network.

Tip: For a deeper review of these topics, check out this lesson on Internet Protocols in our Fundamentals of System Design course.
Our Full Solution
When you type a URL into a browser, a five-step process is triggered.
Step 1: The browser uses DNS to search for the content
Once you press Enter, the browser breaks down the URL and searches its cache for the hostname. In the event that the hostname cannot be found there, the browser searches externally via DNS. DNS converts the human-readable hostname to the computer-friendly IP address to serve the requested content.
Step 2: A TCP connection is established
The client and the server are connected via the TCP 3-way handshake.
Step 3: The browser sends an HTTP GET or POST request to the web server
HTTPS requests and responses are protected by a standard security protocol known as Secure Sockets Layer (SSL), which encrypts data sent between your browser and the requested website’s server using a public key.

Step 4: The server responds
The host computer’s server handles the request and returns an HTTP response along with the status of the response.
For example, a web server handles HTTP/HTTPS requests and serves static content such as simple HTML pages, plain text files, or images. Alternatively, an application server generates dynamic content by running applications, communicating with databases, and managing your user information, among other things. The response may look like this:

Step 5: The browser displays HTML content
When the browser receives a response from the server, it inspects the response headers for information on how to render the resource. The Content-Type header above tells the browser that it received an HTML resource in the response body. Fortunately, the browser understands HTML!