
Codziennie otwieramy dziesiątki stron internetowych. Wpisujemy adres, naciskamy Enter i po chwili pojawia się witryna. Cały proces wydaje się banalny, ale w rzeczywistości w ciągu ułamków sekund odbywa się seria operacji obejmujących kilka różnych systemów.
Zrozumienie tego mechanizmu pozwala lepiej pojąć, czym właściwie jest internet. Strona internetowa nie znajduje się bowiem „w internecie” w jakiejś bliżej nieokreślonej przestrzeni. Jej pliki są przechowywane na konkretnym komputerze lub grupie komputerów, a nasze urządzenie musi wiedzieć, gdzie ich szukać.
Adres strony jest przede wszystkim wygodą dla człowieka
Ludziom łatwo zapamiętać nazwę taką jak przykladowastrona.pl. Komputery komunikują się jednak za pomocą adresów IP.
Można porównać to do książki telefonicznej. My znamy nazwę osoby, natomiast system musi znaleźć odpowiadający jej numer.
W internecie taką rolę pełni DNS, czyli Domain Name System.
Gdy wpisujemy domenę w przeglądarce, komputer próbuje ustalić, jaki adres IP jest z nią powiązany.
DNS tłumaczy domenę na adres IP
Przeglądarka najpierw sprawdza, czy potrzebna informacja nie została już zapisana w pamięci urządzenia. Jeżeli nie, wysyłane jest zapytanie do odpowiedniego serwera DNS.
Po otrzymaniu adresu IP komputer wie, z jakim serwerem powinien się połączyć.
Cały proces trwa zwykle bardzo krótko, dlatego użytkownik praktycznie go nie zauważa. Gdy jednak serwery DNS mają problemy, może pojawić się ciekawa sytuacja: internet teoretycznie działa, ale strony przestają otwierać się po nazwach domen.
Następuje połączenie z serwerem
Kiedy przeglądarka zna już właściwy adres, może rozpocząć komunikację z serwerem.
W uproszczeniu urządzenie użytkownika mówi: „chcę otrzymać tę stronę”. Serwer analizuje zapytanie i odsyła odpowiedź.
Czasami jest nią gotowy plik HTML. W przypadku bardziej złożonych stron serwer musi wcześniej wykonać dodatkową pracę, na przykład pobrać informacje z bazy danych i wygenerować zawartość strony.
HTTPS szyfruje połączenie
Przy większości współczesnych witryn w pasku adresu pojawia się HTTPS. Litera „S” oznacza zabezpieczone połączenie.
Chodzi przede wszystkim o szyfrowanie transmisji pomiędzy urządzeniem użytkownika a serwerem. Dzięki temu osoba znajdująca się gdzieś po drodze nie powinna móc po prostu podejrzeć przesyłanych danych.
Ma to ogromne znaczenie przy logowaniu, zakupach czy korzystaniu z bankowości internetowej.
Warto jednak pamiętać, że HTTPS nie oznacza automatycznie, że strona jest uczciwa. Oszust również może uruchomić szyfrowaną witrynę. Certyfikat zabezpiecza połączenie, a nie intencje właściciela serwisu.
Serwer wysyła kod strony
Po prawidłowym nawiązaniu komunikacji serwer przesyła dane potrzebne do wyświetlenia witryny.
Podstawą jest zwykle HTML. To w nim opisuje się strukturę dokumentu – nagłówki, akapity, linki, obrazy i inne elementy.
Sama strona HTML wyglądałaby jednak dość surowo. Za wygląd odpowiada w dużej mierze CSS, czyli reguły określające kolory, wielkość tekstu, układ elementów czy odstępy.
Trzecim ważnym elementem jest JavaScript. Dzięki niemu strona może reagować na działania użytkownika, wykonywać obliczenia, aktualizować treść bez pełnego przeładowania czy obsługiwać rozbudowane aplikacje internetowe.
Przeglądarka składa wszystko w całość
Przeglądarka internetowa pełni rolę swoistego interpretera. Pobiera pliki, odczytuje ich zawartość, a następnie tworzy widok strony.
Nie wszystkie dane przychodzą jednocześnie. Najpierw może dotrzeć struktura dokumentu, później arkusze stylów, zdjęcia, fonty, skrypty i inne zasoby.
Dlatego przy wolnym połączeniu czasami najpierw widzimy tekst, a dopiero po chwili pojawiają się grafiki i właściwe formatowanie.
Jedna strona może korzystać z wielu serwerów
To kolejny element, którego zwykle nie dostrzegamy.
Otwierając jedną witrynę, możemy w rzeczywistości pobierać informacje z kilku lub kilkunastu różnych miejsc. Główny serwer dostarcza HTML, inny serwer przechowuje zdjęcia, jeszcze inny obsługuje reklamy, statystyki lub fonty.
Popularne strony często wykorzystują również CDN, czyli sieci serwerów rozmieszczonych w różnych częściach świata. Użytkownik może wtedy otrzymać pliki z serwera znajdującego się stosunkowo blisko jego lokalizacji.
Skraca to czas ładowania strony i zmniejsza obciążenie głównego serwera.
Skąd wiadomo, że jesteśmy zalogowani?
Po zalogowaniu strona musi w jakiś sposób rozpoznać użytkownika przy kolejnych zapytaniach.
W tym celu mogą być wykorzystywane między innymi pliki cookie oraz identyfikatory sesji. Przeglądarka przechowuje odpowiednią informację i przesyła ją podczas kolejnych odwiedzin.
Dzięki temu nie trzeba wpisywać hasła za każdym razem, gdy przechodzimy do kolejnej podstrony.
Ten sam mechanizm może być jednak używany również do innych celów, dlatego temat cookies jest tak istotny w dyskusjach o prywatności.
Milisekundy ukrywają ogromną liczbę operacji
Najbardziej imponujące jest chyba to, że cały proces potrafi odbyć się niemal natychmiast.
W ciągu krótkiej chwili urządzenie może znaleźć adres serwera, ustanowić szyfrowane połączenie, wysłać zapytanie, pobrać kilka plików, uruchomić skrypty i zbudować gotowy widok strony.
Dla użytkownika to jedno kliknięcie. Dla komputerów – bardzo szybka wymiana wielu informacji.
I właśnie na takich niewidocznych mechanizmach opiera się internet, z którego korzystamy każdego dnia.

