Этот вопрос задают практически каждому IT специалисту, независимо от направления: и тестировщику, и фронту, и бекэнду. Давайте разберемся.
Клиент
и сервер
— это прежде всего компьютеры, подключенные к общей сети.
Клиент
в этом определении — наше устройство, которое запрашивает информацию и получает ответы через специальные программы. Как правило, такой программой является браузер, например, Firefox или Chrome.
Серверы
— это компьютеры, которые хранят веб-страницы или целые приложения, которые могут выполнять разные задачи.
Отношения у клиента и сервера очень простые: клиент всегда делает первый шаг (направляет запрос), а сервер на него отвечает. Это называется клиент-серверное взаимодействие
.
Когда клиент пытается получить доступ к веб-странице, копия страницы загружается с сервера на клиентский компьютер, а браузер отображает страницу и показывает её пользователю.
Красивые словарные url-адреса, вроде google.com удобны для нас с вами, но не для машин. Они используют специальный уникальный набор цифр, который называется IP-адресом. Например, для google.com — это сервер 172.217.12.174.
Сайты можно найти непосредственно через их IP-адреса. Вы можете найти IP-адрес веб-сайта, введя его домен в инструмент, как IP Checker.
И первым делом, нужно этот адрес узнать. Для этого существует "адресная книга" — распределенная система серверов DNS (Domain Name System)
В первую очередь, браузер проверит запись об IP-адресе сайта в ближайших местах, чтобы сэкономить время. Он проверит историю подключений, информацию в операционной системе и кеше роутера.
Если он ничего не найдет, то сформирует запрос к DNS-серверам, расположенным в интернете. В ответе он получит IP-адрес нужного сайта.
Теперь браузер знает куда обращаться. Осталось понять как клиент и сервер будут взаимодействовать. В большинстве случаев для этого используется специальный протокол — TCP.
TCP — это набор правил, который описывает способы соединения между устройствами, форматы отправки запросов, действия в случае потери данных и так далее.
Для этого клиент и сервер используют своеобразный ритуал, который называют система «трёх рукопожатий». Работает она так: