Proces klient-serwer

Klient-serwer jest tradycyjnym modelem komunikacji sieciowej.

Proces

Klient otwiera komunikację. Serwer nigdy nie kontaktuje się z innymi komputerami. Jeśli żaden klient nie kontaktuje się z serwerem, tylko słucha i czeka na przychodzące żądania. Pierwszy kontakt typu klient-serwer nazywany jest żądaniem, a odpowiedź serwera nazywana jest odpowiedzią.

Bezpieczeństwo

Charakter różnych zachowań klientów i serwerów pozwala środkom bezpieczeństwa lepiej chronić klienta. Ponieważ od klienta nigdy nie oczekuje się niechcianego połączenia przychodzącego, zapora na tym komputerze może blokować komunikację przychodzącą, chyba że jest odpowiedzią na żądanie wysłane już od klienta. Serwery oczekują tylko na połączenia przychodzące i nie będą działać, jeśli są zablokowane. Inne zabezpieczenia, głównie serwery proxy, chronią serwery.

Ruch drogowy

Komunikacja typu klient-serwer zwykle generuje większy ruch z serwera do klienta niż z klienta na serwer. Wynika to z faktu, że kontakt między klientami jest zwykle prostym żądaniem. Odpowiedź serwera na klienta może zawierać dużą ilość danych. Przykładem tego jest proces dostępu do strony internetowej. Klient w tym przypadku to przeglądarka internetowa na komputerze użytkownika. Gdy użytkownik wpisze adres internetowy, przeglądarka wyszukuje adres IP domeny internetowej pod adresem, którym jest strona internetowa, i wysyła żądanie uzyskania określonej strony w adresie na serwer WWW o tym adresie IP. Serwer WWW zwraca stronę, która zawiera znacznie więcej informacji niż pierwotne żądanie klienta. To jest powód, dla którego dostawcy usług internetowych mają znacznie większą przepustowość dostępną dla swoich klientów w celu pobrania niż w przypadku ładunku. Żądanie znajduje się w adresie ładowania, a odpowiedź znajduje się w adresie pobierania.

Wielopoziomowy klient-serwer

Żądanie klienta może wymagać wpisu z wielu serwerów. Jest to znane jako wielowarstwowa architektura klient-serwer. Przykładem tego jest sytuacja, gdy klient kontaktuje się z serwerem aplikacji. Serwer aplikacji udostępnia aplikację klientowi, a klient żąda pliku z innego serwera za pośrednictwem tej aplikacji. Serwer zawierający plik może być chroniony przez serwer proxy, który odpowiada na żądanie, odwołując się do serwera plików. Sam plik może zawierać elementy dynamiczne, które wymagają odwołania do bazy danych w celu przygotowania pliku przed jego dostarczeniem. Dostęp do bazy danych wymaga kontaktu z innym serwerem. Dlatego wiele serwerów pracuje, aby spełnić żądanie klienta.