Middle
Mis juhtub, kui sisestate brauserisse aadressi google.com?
sobes.tech AI
Vastus AI-lt
- URL-i analüüs: Brauser analüüsib sisestatud URL-i, määrates protokolli (HTTPS), domeeninime (google.com) ja pordi (vaikimisi 443 HTTPS-i jaoks).
- Kohesearching cache'is: Brauser kontrollib oma DNS-vahemälu, et leida google.com vastav IP-aadress.
- Päring resolverile: Kui kirjet pole cache'is, küsib brauser DNS-resolverilt, mis on süsteemi seadistatud, IP-aadressi.
- Rekursiivne DNS-päring:
- Resolver küsib põhiserveritelt DNS-serveritelt.
- Põhiserverid osutavad
.comTLD-serveritele. .comTLD-serverid osutavad autoritatiivsetele DNS-serveritele google.com.- Autoritatiivsed DNS-serverid google.com tagastavad Google veebiserveri IP-aadressi(-id).
- TCP-ühenduse loomine (SYN/ACK): Brauser alustab TCP-ühendust saadud IP-aadressiga, kasutades kolmeastmelist kättesaamist (SYN, SYN-ACK, ACK).
// Klient --> Server: SYN // Server --> Klient: SYN-ACK // Klient --> Server: ACK - TLS/SSL-ühenduse loomine: Kuna see on HTTPS, toimub TLS/SSL-kättesaamine turvalise, krüpteeritud ühenduse loomiseks. Mõlemad pooled vahetavad sertifikaate ja genereerivad seansi võtmeid.
- HTTP/S-päringu saatmine: Brauser saadab GET-päringu Google serverile, et saada peamenüü lehte.
GET / HTTP/1.1 Host: google.com User-Agent: <brauseri teave> Accept: text/html,... - Päringu töötlemine serveris: Google veebiserver (tõenäoliselt koormuse tasakaalustaja kaudu) võtab vastu päringu, töötleb seda, võib-olla suhtleb sisemiste teenustega.
- HTTP/S-vastuse saatmine: Server genereerib HTTP/S-vastuse, mis sisaldab olekukoodi (näiteks 200 OK) ja vastuse keha (HTML-kood lehe kohta).
HTTP/1.1 200 OK Content-Type: text/html; charset=UTF-8 Content-Length: <sisu suurus> // ... teised päised // Vastuse keha (HTML) - Lehe renderdamine: Brauser saab HTML-i, analüüsib seda ja loob DOM-puu.
- Resursside laadimine: Brauser avastab lingid CSS-ile, JavaScript-ile, piltidele ja teistele ressurssidele HTML-is. Iga ressursi puhul korratakse samme 2-9 või kasutatakse olemasolevat ühendust, saadetakse päringud ja laaditakse ressursid.
- CSSOM-i loomine: Brauser analüüsib CSS-i ja loob CSS Object Model-i.
- Render Tree loomine: DOM ja CSSOM ühendatakse, et luua renderdamispuu.
- Paigutus (Layout/Reflow): Brauser arvutab iga elemendi geomeetrilised mõõtmed ja asukohad lehel.
- Värvimine (Painting): Elemendid värvitakse ekraanile.
- JavaScripti täitmine: Brauser täidab JavaScript-koodi, mis võib muuta DOM-i, CSSOM-i ja käivitada täiendavaid tegevusi.
- Ühenduse sulgemine: Pärast andmete edastamist võib TCP-ühendus sulguda või jääda aktiivseks järgmiseks päringuks (keep-alive).