Клиент – сървър

от Уикипедия, свободната енциклопедия
(пренасочване от Клиент-сървър)
Схематично взаимодействие от типа клиент – сървър.

Клиент – сървър е тип мрежова архитектура, която отделя клиента от сървъра и най-често се използва в компютърни мрежи.[1] Всеки клиент или сървър, свързан с мрежата, може също така да бъде използван като възел.

Най-елементарната типова клиент – сървър архитектура се състои от две части – от едната страна е сървърът, от другата страна е клиентът. Постигането на определен резултат при използване винаги е свързано с комуникация между двете страни.[2]

Характеристики[редактиране | редактиране на кода]

Характеристики на клиента

  • Подава заявки.
  • Изчаква отговор.
  • Свързва се до малък брой сървъри едновременно.
  • Взаимодейства си с крайните потребители чрез графичен интерфейс.


Характеристика на сървъра

  • Пасивност (slave).
  • Чака за заявки от клиенти.
  • При получаване на заявки ги обработва и след това отговаря.
  • Получава заявки от голямо количество клиенти.
  • Не контактува директно с крайния потребител.

Портове[редактиране | редактиране на кода]

При сърфиране в интернет браузърът е в ролята на клиент, който подава заявка по определен комуникационен протокол към сървъра, където са разположени търсените интернет страници.[3]

Всяка услуга от страна на сървъра трябва да се предлага с предварително известни параметри (в компютърната терминология това са комуникационните протоколи и специфичните портове).

Според IANA портовете се разпределят на три основни категории:

  • Добре известни портове от 0 до 1023 – предназначени за стандартни услуги – например пренос и некриптиран достъп до електронна поща (SMTP:25 и POP3:110), достъп до интернет страници чрез браузъри (HTTP:80) и др.
  • Регистрирани портове от 1024 до 49151 – използват се от определени програми.
  • Динамични портове от 49152 до 65535 – използват се за осъществяване на текущи комуникационни връзки.

Обмен на информация[редактиране | редактиране на кода]

Ред на обмена на информация при комуникация „клиент – сървър“:

  • програмите клиенти подават заявка за определена услуга към съответния порт на сървъра,
  • след приемането на заявката сървърът трябва да информира браузъра, че връзката е изградена и комуникацията ще продължи по друга двойка портове,
  • комуникацията продължава по друга двойка потрове.

Пример[редактиране | редактиране на кода]

  • Запитване на клиент от свободен порт на вашия компютър (например 50 001) към порт 80 на уеб сървър www.name.com – заявка за зареждане на главната страница на www.name.com.
  • Отговор на сървъра: потвърждение на заявката, получена през порт 50 001 и прехвърлянето ѝ от порт 80 към порт 60001.
  • Отговор на клиента: потвърждаване, че комуникацията между сървъра и клиента ще продължи от клиентски порт 50001 към сървърен порт 60001.
  • Сървърът „отбелязва“, че порт 60001 вече е зает за комуникация с този клиент. Сървърът започва да очаква сигнал за прекратяване на сесията от браузъра на клиента.

Източници[редактиране | редактиране на кода]

  1. АРХИТЕКТУРА КЛИЕНТ-СЪРВЪР // Архивиран от оригинала на 2021-04-23. Посетен на 2020-04-25.
  2. pgds.org
  3. Моделът Клиент/Сървър // Архивиран от оригинала на 2 май 2020. Посетен на 2 май 2020.