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

от Уикипедия, свободната енциклопедия
Направо към: навигация, търсене
Схематично взаимодействие от типа клиент-сървър.

Клиент-сървър е тип мрежова архитектура, която отделя клиента от сървъра, и най-често се използва в компютърни мрежи. Всеки клиент или сървър свързан с мрежата може също така да бъде използван като възел. Най-елементарният типов клиент-сървър архитектура се състои от две части - от една страна е сървъра, от друга страна е клиента. Постигането на определен резултат при използване винаги е свързано с комуникация между двете страни.

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

Характеристики на Клиента
Подава заявки
Изчаква отговор
Свързва се до малък брой сървъри едновременно
Взаимодейства си с крайните потребители чрез графичен интерфейс
Характеристика на Сървъра
Пасивност (slave)
Чака за заявки от клиенти
При получаване на заявки, ги обработва и след това отговаря
Получава заявки от голямо количество клиенти
Не контактува директно с крайният потребител

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

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

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

Според ИАНА, портовете се разпределят на три основни категории:

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

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

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

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

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

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