Sobes.tech
Middle

Mi történik, amikor beírja a google.com címet a böngészőbe?

sobes.tech MI

Válasz az MI-től

  1. URL-parsing: A böngésző elemzi a megadott URL-t, meghatározva a protokollt (HTTPS), a domain nevet (google.com) és a portot (alapértelmezett 443 HTTPS esetén).
  2. Cache keresése: A böngésző ellenőrzi saját DNS-cache-ét, hogy megtalálja a google.com-hoz tartozó IP-címet.
  3. Kérés a Resolverhez: Ha nincs rekord a cache-ben, a böngésző kér egy IP-címet a rendszerbeállított DNS-resolvertől.
  4. Rekurzív DNS-kérés:
    • A resolver kérdezi a gyökér DNS-szervereket.
    • A gyökér szerverek a .com TLD-szerverekre irányítanak.
    • A .com TLD-szerverek a google.com hiteles DNS-szervereire mutatnak.
    • A google.com hiteles DNS-szerverei visszaadják a Google webszerver IP-cím(ek)et.
  5. TCP-kapcsolat létesítése (SYN/ACK): A böngésző elindítja a TCP-kapcsolatot a kapott IP-címmel, háromoldalas kézfogással (SYN, SYN-ACK, ACK).
    // Kliens --> Szerver: SYN
    // Szerver --> Kliens: SYN-ACK
    // Kliens --> Szerver: ACK
    
  6. TLS/SSL kapcsolat létesítése: Mivel HTTPS protokollról van szó, TLS/SSL kézfogás történik a biztonságos, titkosított kapcsolat kialakításához. Mindkét fél cserél tanúsítványokat és generál session kulcsokat.
  7. HTTP/S kérés küldése: A böngésző GET kérést küld a Google szerverének a főoldal lekéréséhez.
    GET / HTTP/1.1
    Host: google.com
    User-Agent: <böngésző információk>
    Accept: text/html,...
    
  8. A kérés feldolgozása a szerveren: A Google web szervere (valószínűleg load balancer-en keresztül) fogadja a kérést, feldolgozza, esetleg belső szolgáltatásokkal kommunikálva.
  9. HTTP/S válasz küldése: A szerver HTTP/S választ generál, amely tartalmazza a státuszkódot (pl. 200 OK) és a válasz testét (oldal HTML-kódja).
    HTTP/1.1 200 OK
    Content-Type: text/html; charset=UTF-8
    Content-Length: <tartalom mérete>
    // ... egyéb fejléc
    // Válasz test (HTML)
    
  10. Az oldal renderelése: A böngésző megkapja a HTML-t, elemzi, és DOM-fát épít.
  11. Erőforrások betöltése: A böngésző észleli a CSS, JavaScript, képek és más erőforrásokra mutató hivatkozásokat a HTML-ben. Minden erőforrás esetében ismétlődnek a lépések 2-9, vagy meglévő kapcsolat használatával kérdések és erőforrások betöltése történik.
  12. CSSOM építése: A böngésző elemzi a CSS-t és CSS Object Modelt épít.
  13. Render Tree építése: A DOM és a CSSOM összekapcsolásával épül a renderelési fa.
  14. Elhelyezés (Layout/Reflow): A böngésző kiszámítja az egyes elemek geometriai méreteit és helyzetét az oldalon.
  15. Rajzolás (Painting): Az elemek megjelennek a képernyőn.
  16. JavaScript végrehajtása: A böngésző futtatja a JavaScript-kódot, amely módosíthatja a DOM-ot, CSSOM-ot, és további műveleteket indíthat.
  17. Kapcsolat lezárása: Az adatok átadása után a TCP-kapcsolat lezárható vagy fenntartható a későbbi kérésekhez (keep-alive).