Ответ
Протокол HTTP (HyperText Transfer Protocol) относится к прикладному уровню (Application Layer, 7-й уровень) модели OSI.
Объяснение: Прикладной уровень обеспечивает интерфейс для сетевых услуг приложениям пользователя. HTTP — это протокол высокого уровня, который определяет формат запросов и ответов для взаимодействия клиента (например, браузера) и сервера. Он не занимается маршрутизацией или непосредственной передачей битов по сети — эти задачи делегируются нижележащим уровням.
Контекст в Node.js: Когда мы создаем HTTP-сервер с помощью встроенного модуля http или фреймворка вроде Express, мы работаем именно на прикладном уровне.
const http = require('http');
// Создаем сервер, который работает на прикладном уровне (HTTP).
const server = http.createServer((req, res) => {
// req и res — объекты, представляющие HTTP-запрос и ответ.
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end('Hello from the Application Layer!');
});
server.listen(3000, () => {
console.log('HTTP server listening on port 3000');
});
Важно: HTTP для передачи данных полагается на транспортный уровень (чаще всего TCP, 4-й уровень модели OSI), который обеспечивает надежную, упорядоченную доставку пакетов. В стеке TCP/IP, который более распространен на практике, HTTP является протоколом уровня приложений.