Файл: Технология «клиент-сервер» ( Теоретические основы технологии «клиент-сервер» ).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 28.03.2023

Просмотров: 350

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Поле Accept определяет формат данных в ответе, который нужен клиенту, а «Connection: close» означает, что клиент хочет закрыть TCP соединение сразу после получения ответа от сервера. [1, c. 127]

Если запрос сформирован правильно, и сервер функционирует нормально, и сеть в порядке, то в ответ на HTTP пакет от клиента придёт ответ, который выглядит примерно вот так:

------------------------------------------------------

HTTP/1.1 200 OK
Date: Wed, 27 Aug 2017 09:50:20 GMT
Server: Apache
X-Powered-By: PHP/5.2.4-2ubuntu5wm1
Content-Language: ru
Content-Type: text/html; charset=utf-8
Content-Length: 18
Connection: close

------------------------------------------------------

Здесь мы наблюдаем отсутствие названия метода в первой строке, и ряд новых заголовков, рекомендуется обратить внимание на поле «Content-Length: 18». Это число обозначает длину данных в байтах, которые передаются после пустой строки в конце пакета (так как в заголовке Content-Type указана кодировка utf-8, то каждая буква кириллицы в сообщении занимает два байта). Таким образом, мы рассмотрели простой пример работы протокола HTTP.

HTTP позволяет миллиардам людей получать доступ новостям, письмам друзей, спорам о самолёте на конвейерной ленте, смешным фотографиям котиков и данным о недавно открытом в БАКе гамма-резонансе (HTTP по-прежнему приносит пользу на своей малой родине, ЦЕРНе).

Мало какие изобретения обладают столь мощным влиянием на человечество в том объёме, как этот простенький протокол передачи структурированного текста. И, разумеется, такой протокол не мог остаться без расширений, и самым популярным из них стал HTTPS.

Все мы привыкли при вводе названия сайта видеть впереди HTTP – стандартный протокол передачи данных от сервера, на котором находится сайт, к пользователю. Однако, не смотря на всю его популярность, все больше сайтов предпочитают использовать более продвинутый протокол – HTTPS, так как он защищает передаваемые данные от перехвата злоумышленниками путем их шифрования.

Рассмотрим этот протокол более подробно: как он работает, кому рекомендуется использовать и что нужно, чтобы подключить HTTPS к сайту.

2.3 Протокол HTTPS

HTTPS (Hypertext Transport Protocol Secure) – это протокол, который обеспечивает конфиденциальность обмена данными между сайтом и пользовательским устройством. Безопасность информации обеспечивается за счет использования криптографических протоколов SSL/TLS, имеющих 3 уровня защиты:

  1.  Шифрование данных. Позволяет избежать их перехвата.
  2.  Сохранность данных. Любое изменение данных фиксируется.
  3.  Аутентификация. Защищает от перенаправления пользователя.

Рисунок 6 Схема работы HTTP и HTTPS

Обязательное использование защищенного протокола передачи данных требует вся информация, касающаяся проведения платежей в интернете: оплата товаров в интернет-магазинах любым способом (индивидуальная платежная карта, онлайн системы платежей и пр.), оплата услуг через интернет-банкинг, совершение платежей в онлайн сервисах (казино, online-курсы и т.п.) и многое другое.

Использовать протокол HTTPS рекомендуется также на сайтах, которые для доступа к определенному контенту запрашивают личные данные пользователей, например, номер паспорта – такие данные необходимо защищать от перехвата злоумышленниками.

Если на сайте используется что-либо похожее, то стоит серьезно задуматься над переходом на HTTPS. Поэтому далее мы рассмотрим, что для этого необходимо.

Что нужно для перехода сайта на HTTPS?

Работа протокола HTTPS основана на том, что компьютер пользователя и сервер выбирают общий секретный ключ, с помощью которого и происходит шифрование передаваемой информации.

Это ключ уникальный и генерируется для каждого сеанса. Считается, что его подделать невозможно, так как в нем содержится более 100 символов. Во избежание перехвата данных третьим лицом используется цифровой сертификат – это электронный документ, который идентифицирует сервер.

Каждый владелец сайта (сервера) для установки защищенного соединения с пользователем должен иметь такой сертификат.

В этом электронном документе указываются данные владельца и подпись. С помощью сертификата вы подтверждаете, что:

  •  Лицо, которому он выдан, действительно существует,
  •  Оно является владельцем сервера (сайта), который указан в сертификате.

Первое, что делает браузер при установке соединения по протоколу HTTPS, это проверку подлинности сертификата, и только в случае успешного ответа начинается обмен данными.

Рисунок 7 Схема работы HTTPS

Сертификатов существует несколько видов в зависимости от:

  •  того, какой уровень безопасности вам необходим,
  •  количества доменных имен и поддоменов,
  •  количества владельцев.

Выдают их специализированные центры сертификации на возмездной основе и на определенный период, поэтому важно не забывать продлевать действие сертификата, иначе вместо вашего сайта пользователь получит сообщение в браузере следующего содержания:


Рисунок 8 Неверный сертификат HTTPS

Не так давно поисковая система Google заявила о том, что для нее наличие протокола HTTPS является одним из важных факторов ранжирования сайта.

ЗАКЛЮЧЕНИЕ

Технология клиент-сервер – это способ соединения между клиентом (компьютером пользователя) и сервером (мощным компьютером или оборудованием, предоставляющем данные), при котором они взаимодействуют между собой напрямую.

Общие принципы передачи данных между компонентами вычислительной сети устанавливаются сетевой архитектурой.

Технология “клиент-сервер” представляет собой такую систему, в которой хранение информации и ее обработка осуществляются на серверной части, а формирование запроса и получение данных предоставляется клиентской стороне.

При этом, клиент-серверные технологии предусматривают наличие специального программного обеспечения – клиентского и серверного. Эти программы взаимодействуют с помощью специальных сетевых протоколов передачи данных.

Как правило, клиент и сервер установлены на разных компьютерах, но иногда могут быть установлены и на одну машину.

Серверное программное обеспечение настроено на получение и обработку запросов от пользователя, предоставляя ему результат в виде данных или функций (электронная почта, общение или просмотр страниц в интернете).

Подобная технология работает по такому же принципу, как и база данных: запрос – обработка – передача результата.

Сервер выполняет следующие функции:

  • хранение данных;
  • обработка запроса от клиента с помощью процедур и триггеров;
  • отправка результата клиенту.

Функции, которые реализуются клиентской частью:

  • формирование и отправка запроса к серверу;
  • получение результатов и отправка дополнительных команд (запросов на добавление, удаление или обновление информации).

Достоинства и недостатки.

Клиент-серверная архитектура обладает следующими преимуществами:

  • высокая скорость обработки данных;
  • низкая нагрузка на сетевую инфраструктуру;
  • возможность быстрой работы с большим количеством клиентов;
  • разделение программного кода серверных и клиентских приложений.

Несколько пользователей могут одновременно работать с данными за счет транзакций (последовательность операций, представляемых в виде единого блока) и блокировок (изоляция данных от редактирования другими пользователями).


Недостатки клиент-серверной технологии:

  • высокие требования к аппаратно-программным характеристикам серверного оборудования за счет того, что обработка данных происходит на стороне сервера;
  • потребность в системном администраторе, контролирующем бесперебойность работы серверного оборудования.

Многоуровневая технология “клиент-сервер” предусматривает выделение отдельного серверного оборудования для обработки данных. Операции хранения, обработки и вывода данных производятся на разных серверах. Благодаря этому распределению обязанностей повышается эффективность работы сети.

Примером многоуровневой архитектуры является трехуровневая технология. В такой сети, помимо клиента и сервера приложений, есть дополнительный сервер базы данных.

Предусматриваются следующие три уровня:

  1. Нижний. Это звено включает клиентское программное обеспечение с пользовательским интерфейсом и системой взаимодействия со следующим уровнем обработки данных.
  2. Средний. Запросы от клиентских программ обрабатываются сервером приложений, на котором осуществляются операции по обработке и подготовке информации для передачи между сервером верхнего уровня и клиентом. Он позволяет разгрузить хранилище данных от лишней нагрузки и распределить запросы от разных пользователей.
  3. Верхний. Это независимый сервер базы данных, на котором хранится вся информация. Он получает подготовленный запрос от сервера приложений и предоставляет ему необходимую информацию без непосредственного взаимодействия с клиентскими приложениями.

Архитектура с выделенным сервером представляет собой такую локальную сеть, в которой все взаимодействующие устройства находятся под управлением одного или нескольких серверов.

При этом клиенты (рабочие станции) отправляют запрос к ресурсам через серверное программное обеспечение. Выделенный сервер не имеет клиентской части и функционирует только как сервер для обработки запросов от клиентов и защиты данных.

При наличии нескольких серверов, функции между ними могут распределяться с определением для каждого отдельных обязанностей.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Боуман Д., Эмерсон C., Дарновски М. Практическое руководство по SQL. - Киев: Диалектика, 2015.

2. Горев А., Макашарипов С., Владимиров Ю. SQL Server 6.5 для профессионалов. - СПб.: Питер, 2011.