Jak przeglądarka przetwarza wpisywany adres URL w pasku adresu?
Kiedy otwieramy określony URL w przeglądarce, w jaki sposób przeglądarka ładuje i wyświetla zawartość? Pokazujemy, co przeglądarka robiła kolejno, zgodnie z kolejnością występowania zdarzeń.
Oprócz kilku specyficznych przeglądarek webowych z natywnymi aplikacjami podczas przeglądania różnych stron internetowych, większość stron jest przeglądana za pomocą przeglądarki. Zatem kiedy otwieramy określony URL w przeglądarce, w jaki sposób przeglądarka ładuje i wyświetla zawartość? Pokazemy to, co przeglądarka robiła kolejno, zgodnie z kolejnością występowania zdarzeń.
Użytkownik wpisuje URL w przeglądarce
W naszym poprzednim poście na blogu omówiliśmy składniki URL, w tym to, co jest znane jako host/domena, np. www.google.com
blog.logto.io
itd.
Wyszukiwanie adresu IP za pomocą hosta/domeny
Przeglądarka nie może bezpośrednio zrozumieć hosta/domeny i znaleźć odpowiadające zasoby, ale musi znać dokładny adres IP, aby zlokalizować miejsce, w którym znajdują się wymagane zasoby dla stron internetowych.
Przeglądarka znajdzie adres IP odpowiadający hostowi/domenie za pomocą systemu nazw domen (DNS).
Aby uczynić proces wyszukiwania adresów IP jak najszybszym, często używa się różnych pamięci podręcznych do kojarzenia hosta/domeny z adresem IP, takich jak pamięć podręczna przeglądarki, pamięć podręczna systemu operacyjnego i tak dalej.
Gdy brak trafienia w pamięci podręcznej, przechodzimy przez standardowy proces wyszukiwania DNS w celu znalezienia adresu IP dla hosta/domeny. Te kroki to:
- Gdy użytkownik wprowadza
blog.logto.io
w przeglądarce, przeglądarka wysyła żądanie do usługi DNS o uzyskanie adresu IP, odpowiednie zapytanie odbierane jest przez resolver DNS - Resolver DNS wysyła zapytanie do korzeniowego serwera DNS (.)
- Serwer korzeniowy zwraca adres odpowiadający serwerowi DNS najwyższego poziomu (TLD) (w tym przypadku
.io
) oraz pewne powiązane informacje - Resolver DNS wysyła zapytanie do serwera TLD
.io
- Serwer TLD
.io
odpowiada adresem serwera nazwlogto.io
- Resolver DNS wysyła żądanie do serwera nazw domeny
logto.io
- Serwer nazw domeny
logto.io
odpowiada adresemblog.logto.io
- Resolver DNS przekazuje adres IP
blog.logto.io
z powrotem do przeglądarki
Przeglądarka może następnie żądać odpowiednich zasobów od serwera i renderować stronę internetową do przeglądania przez użytkownika.
Nawiązywanie połączenia TCP
Po uzyskaniu adresu IP odpowiadającego domenie do przeglądania za pośrednictwem usługi DNS, przeglądarka inicjuje i nawiązuje połączenie TCP z serwerem.
Pobieranie zasobów i renderowanie stron internetowych
Po nawiązaniu połączenia TCP przeglądarka inicjuje żądanie sieciowe do serwera, uzyskuje odpowiednie zasoby i na ich podstawie renderuje zawartość strony internetowej do przeglądania przez użytkownika.