На каком уровне находится HTTP в модели OSI?
Он находится на прикладном уровне. См. следующие цитаты из RFC 7230, одного из документов, который в настоящее время определяет протокол HTTP/1.1. :
Протокол передачи гипертекста (HTTP) — это протокол запроса/ответа на уровне приложений без сохранения состояния, который использует расширяемую семантику и полезные данные с самоописанием для гибкого взаимодействия с сетевыми информационными гипертекстовыми системами.
HTTP — это протокол запроса/ответа без сохранения состояния, который работает путем обмена сообщениями через надежное «соединение» транспортного или сеансового уровня.
Кроме того, некоторые говорят, что в HTTP нет концепции сеанса. Означает ли это, что HTTP не может быть на сеансовом уровне?
Как упоминалось ранее в цитатах из RFC 7230, протокол HTTP не имеет состояния. strong>, где каждый запрос от клиента к серверу (должен) содержать всю информацию, необходимую для понимания запроса, без использования какого-либо сохраненного контекста на сервере.
RFC 6265 определяет некоторые механизмы управления состоянием в HTTP, такие как файлы cookie, позволяющие управлять сеансом на сервере. сторона (но это никоим образом не делает HTTP с сохранением состояния).
Концепция сеанса в HTTP отличается от концепции сеанса в модели OSI. В любом случае, HTTP — это протокол прикладного уровня.
Модель OSI
Модель OSI (Взаимодействие открытых систем) — это концептуальная модель, созданная Международной организацией по стандартизации, которая позволяет различным системам связи обмениваться данными с использованием стандартных протоколов.
Он обеспечивает стандарт для различных компьютерных систем, чтобы они могли общаться друг с другом, и может рассматриваться как универсальный язык для компьютерных сетей. Он основан на концепции разделения системы связи на семь абстрактных уровней, каждый из которых накладывается на предыдущий.
Следующая картинка, заимствованная из Cloudflare, хорошо иллюстрирует ну на что похожа модель OSI:
Прикладной уровень — это единственный уровень, который напрямую взаимодействует с данными от пользователя. Таким образом, программные приложения, такие как веб-браузеры и почтовые клиенты, полагаются на прикладной уровень для инициирования связи.
Но следует четко указать, что клиентские программные приложения не являются частью прикладного уровня: скорее, прикладной уровень отвечает за протоколы (такие как HTTP и SMTP) и манипулирование данными, на которые опирается программное обеспечение. предоставлять значимые данные пользователю.
Модель OSI против модели TCP/IP
Хотя модель OSI является исчерпывающей эталонной структурой для общих сетевых систем, важно отметить, что современный Интернет не строго следует модели OSI.
Современный Интернет более тесно связан с более простым набором интернет-протоколов, который широко известен как TCP/IP, поскольку основными протоколами в наборе являются TCP (Протокол управления передачей) и IP (Интернет-протокол).
На следующем рисунке показано, как модели OSI и TCP/IP соотносятся друг с другом:
Обновление: этот раздел был добавлен в связи с вознаграждением, начатым noɥʇʎԀʎzɐɹƆ, который запросил обновите этот ответ, указав подробности HTTP/2.
Несмотря на кавычки документа, определяющего протокол HTTP/1.1, все вышесказанное относится и к HTTP/2. См. следующую цитату из RFC 7540, документа, определяющего протокол HTTP/2:
Соединение HTTP/2 — это протокол прикладного уровня, работающий поверх соединения TCP. Клиент является инициатором TCP-соединения.
person
cassiomolin
schedule
20.02.2019