stringtranslate.com

Протокол без сохранения состояния

Протокол без сохранения состояния — это протокол связи , в котором получатель не должен сохранять состояние сеанса из предыдущих запросов. Отправитель передает соответствующее состояние сеанса получателю таким образом, что каждый запрос можно понять изолированно, то есть без ссылки на состояние сеанса из предыдущих запросов, сохраненных получателем. [1]

Напротив, протокол с отслеживанием состояния — это протокол связи, в котором получатель может сохранять состояние сеанса из предыдущих запросов.

В компьютерных сетях примеры протоколов без сохранения состояния включают Интернет-протокол (IP), который является основой Интернета , и протокол передачи гипертекста (HTTP), который является основой Всемирной паутины . Примеры протоколов с отслеживанием состояния включают протокол управления передачей (TCP) и протокол передачи файлов (FTP).

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

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

Примеры

HTTP - сервер может понимать каждый запрос изолированно. [2]

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

Наложение уровней протокола без сохранения и с сохранением состояния

Между протоколами с сохранением и без сохранения состояния могут существовать сложные взаимодействия на разных уровнях протокола. Например, HTTP, протокол без отслеживания состояния, расположен поверх TCP , протокола с отслеживанием состояния, который расположен поверх IP , другого протокола без отслеживания состояния, который маршрутизируется в сети, использующей BGP , еще один протокол с отслеживанием состояния, для направления IP-адресов. пакеты перемещаются по сети.

Такое наложение слоев продолжается даже выше HTTP. В качестве обходного пути отсутствия сохранения состояния сеанса HTTP-серверы реализуют различные методы управления сеансом , [3] обычно используя идентификатор сеанса в файле cookie HTTP , ссылающийся на состояние сеанса, хранящееся на сервере, эффективно создавая протокол с отслеживанием состояния поверх HTTP. . [4] Файлы cookie HTTP нарушают архитектурный стиль REST , поскольку даже без ссылки на состояние сеанса, хранящееся на сервере, они независимы [ необходимы пояснения ] от состояния сеанса (они влияют на предыдущие страницы того же веб-сайта в истории браузера) и не имеют никакой определенная семантика. [5]

Смотрите также

Рекомендации

  1. ^ Филдинг, Рой (2000). «3.4.3 Клиент-сервер без состояния (CSS)». Архитектурные стили и проектирование сетевых программных архитектур (Докторская диссертация). Калифорнийский университет в Ирвайне. OCLC  45706361 . Проверено 18 мая 2021 г.
  2. ^ Филдинг, Р.; Решке, Дж. (2014). Филдинг, Р.; Решке, Дж. (ред.). «RFC 7230 — Протокол передачи гипертекста (HTTP/1.1): синтаксис сообщений и маршрутизация». ietf.org . дои : 10.17487/RFC7230 . Проверено 20 августа 2015 г.
  3. ^ «Обзор методов управления сеансами» . Биты печенья C. Торонто. Архивировано из оригинала 13 февраля 2019 г. Проверено 12 апреля 2011 г. Следующий материал предназначен для того, чтобы познакомить читателя с различными методами, которые разработчики использовали для реализации отслеживания сеансов в Интернете. Упоминаются основные эксплуатационные характеристики каждого метода, а также недостатки, наблюдавшиеся при его использовании. Дополнительную информацию об управлении сеансами можно найти, выполнив поиск в Интернете. […]
  4. Дуайер, Гарет (18 ноября 2020 г.). «Архитектура с состоянием против архитектуры без гражданства». Виртасант .
  5. ^ Филдинг, Рой (2000). «6.3.4.2 Файлы cookie». Архитектурные стили и проектирование сетевых программных архитектур (Докторская диссертация). Калифорнийский университет в Ирвайне. OCLC  45706361 . Проверено 24 мая 2021 г.