Browser URL Example
Last updated
Was this helpful?
Last updated
Was this helpful?
What happens when you start typing google in your browser's search bar?
Key Pressed: "g" key pressed; browser processes it and suggests URLs based on history.
Enter Key: Physical keypress leads to electrical signals transmitted to the computer.
USB keyboard: Current flows to logic circuitry, keycode is generated and sent.
Virtual keyboard: Capacitive touch registers keypress, sends a software interrupt.
Interrupts:
OS detects the keypress and triggers an interrupt request.
Windows: Sends a WM_KEYDOWN
message.
macOS: Sends an NSEvent
.
Linux: Xorg server listens for keycodes.
URL or Search Term: Determines if the input is a URL or search term.
Non-ASCII Characters: Converts characters using Punycode if needed.
DNS Lookup:
If the browser doesn't find the domain in its local cache, it sends a request to the DNS server (usually provided by the ISP or a local router).
If the DNS server doesn't have the answer, it will act as a recursive resolver, querying other DNS servers higher up in the hierarchy on behalf of the client.
ARP Process: Determines the MAC address for the DNS server or default gateway.
Socket Opening: Establishes a connection to the server using TCP.
TLS Handshake: Encrypts communication using SSL/TLS for HTTPS.
Request: Sends an HTTP request to the server (e.g., GET request).
Response: Server returns HTML, possibly with a status code (e.g., 200 OK
).
Resources: Browser fetches additional resources (images, CSS) as needed.
HTML Parsing: Parses the HTML document into a DOM tree.
CSS Parsing: Interprets CSS to apply styles.
Rendering: Constructs a render tree, lays out elements, and paints them on the screen.
GPU Rendering: Uses GPU for faster rendering in modern browsers.
JavaScript Execution: Runs any JavaScript on the page.
User Interaction: Scripts and network requests can be triggered by user input.