- The DNS
- Browser DNS Cache
- System DNS Cache
- Router DNS Cache
- Carrier DNS Cache
- If you can’t find it again, recursively search the url
- If found, get IP
- Establish TCP connection three-way handshake
- The first handshake is initiated by the browser, which tells the server THAT I’m going to send the request
- The second handshake is initiated by the server, which tells the browser I’m ready to accept and you send
- The third handshake is initiated by the browser, which tells the server to send the request
- Send request message
- Receive response message
- To render the page
- When an HTML tag is encountered, the HTML parser is called and the DOM tree is built
- When a style/link tag is encountered, the CSS parser is invoked
- When a Script tag is encountered, the javascript parser is called
- Calculates the layout from the render tree
- Render (draw)
- The above steps may not be performed sequentially. The DOM tree or CSSDOM is modified 6. Disconnecting TCP Connections
- The first wave is initiated by the browser, sent to the server, I’m done, you’re ready to close (request message)
- The second wave is from the server. I’m done. I’m going to close it.
- The third wave is sent by the server, telling the browser, I’m done, you’re ready to shut it down.
- The fourth wave is initiated by the browser and sent to the server. I have accepted it and will close it. You are ready to close it.