Форум программистов, компьютерный форум, киберфорум
C++: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
365 / 124 / 22
Регистрация: 08.01.2015
Сообщений: 1,418
Записей в блоге: 2

Сообщение отправляется в формате протокола ТСР и уже на адресате преобразуется в HTTP?

26.08.2017, 21:13. Показов 656. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Известно, что сообщение сервера, направляемое браузеру, передается на транспортном уровне на основе протоколов TCP/UDP. Т.е. сообщение имеет бинарный вид, передаются тело сообщения, флаги типа АСК, SIN и т.д. Однако, в консоли браузера можно видеть сообщения в формате другого протокола, например, HTTP. Да, оно тоже, по сути, представляются в оперативной памяти компьютера в бинарном виде, но имеет при этом совсем иное содержание.
Вопрос такой: так все же, как происходит сетевой обмен? Сервер формирует сообщение по правилам протокола ТСР, затем оно передается в сеть, достигает клиента. А там браузер воспринимает его и перекодирует в правилах протокола HTTP. Но, тогда - зачем вообще нужен протокол HTTP? Только для того, чтобы сообщения представлялись в читаемом, т.е. текстовом виде?

Добавлено через 12 минут
Или, плюс в том, что, вдобавок, HTTP добавляет дополнительные функции, которые отсутствуют на транспортном уровне? Однако, опять же: если сообщение поступило браузеру... он не может получить никакой иной информации, кроме той, которые содержатся в сообщениях. Следовательно, весь тот алгоритм, по которому сообщение будет преобразовываться в формат протокола HTTP, полностью обусловлен содержанием сообщения... которое было передано в формате ТСР.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.08.2017, 21:13
Ответы с готовыми решениями:

Переход с протокола http на websocket
При подключении браузер сразу выполняет alert('onclose') tcpserver.cpp #include "tcpserver.h" ...

Http post не отправляется
Здравствуйте, подскажите пожалуйста в чем проблема. Пишет, что коннектится а сам запрос не отправляется. WSADATA wsaData; struct...

Удаление из текста обозначение протокола http
Так и не нашел в интернете как вычленить http:// из текста. Хочу чтобы по событию из textarea удалялись все http://. К примеру...

8
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
26.08.2017, 21:39
начнём с того, что ТСР никак не связан с НТТР.
это протоколы разного уровня.
на каком основании вы полагаете, что браузер как-то сам формирует ip-пакет, мне решительно неясно.
0
365 / 124 / 22
Регистрация: 08.01.2015
Сообщений: 1,418
Записей в блоге: 2
27.08.2017, 18:47  [ТС]
Цитата Сообщение от GbaLog- Посмотреть сообщение
начнём с того, что ТСР никак не связан с НТТР
Связаны, вроде как. При отправке (сервером) сообщение преобразовывается, начиная самых высокоуровневых протоколов (например, HTTP) и кончая физическим. При этом в сообщение, при преобразовании в более низкий уровень протоколов, поочередно записываются заголовки предыдущих уровней. При получении сообщения (в браузере и в ОС) происходит обратный процесс. Если я неправ, поправьте.
Цитата Сообщение от GbaLog- Посмотреть сообщение
это протоколы разного уровня
Да, я в курсе.
Цитата Сообщение от GbaLog- Посмотреть сообщение
на каком основании вы полагаете, что браузер как-то сам формирует ip-пакет, мне решительно неясно.
Здесь я точно сказать не могу. Конструкцию браузеров не знаю, к сожалению. Возможно, браузер сам формирует пакет. А, возможно, он лишь принимает (при приеме сообщения) данные от ОС, которая перед этим, получив сообщение из сети, преобразовала его из физического уровня в формат ТСР и далее в формат HTTP. Вот и хочу разобраться.
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
27.08.2017, 19:26
Цитата Сообщение от Htext Посмотреть сообщение
При отправке (сервером) сообщение преобразовывается, начиная самых высокоуровневых протоколов (например, HTTP) и кончая физическим.
это так, но это не значит, что браузер знает что-то там о других протоколах(более низкого уровня, чем прикладной).
он не знает, как формируется пакет дальше, чем уровень HTTP, да ему и это не интересно.

в связи с этим непонятно становится, что вы хотите конкретно узнать.
0
365 / 124 / 22
Регистрация: 08.01.2015
Сообщений: 1,418
Записей в блоге: 2
27.08.2017, 19:53  [ТС]
Цитата Сообщение от GbaLog- Посмотреть сообщение
это не значит, что браузер знает что-то там о других протоколах(более низкого уровня, чем прикладной).
А, все же, можно подробнее: знает или не знает?
Цитата Сообщение от GbaLog- Посмотреть сообщение
что вы хотите конкретно узнать
Как раз это (см. выше). Т.е. я Вас правильно понял, что ОС, получив из сети сообщение в формате протокола ТСР, "готовит" его в формате протокола HTTP и только потом передает браузеру?
Т.е., по сути, браузер управляет низкоуровневыми сетевыми функциями, сам не опускаясь ниже уровня HTTP?
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
27.08.2017, 20:03
Цитата Сообщение от Htext Посмотреть сообщение
знает или не знает?
не ручаюсь.
зависит от браузера.
но я не вижу веской причины для того, чтобы браузер спускался ниже прикладного уровня, то есть HTTP.
Цитата Сообщение от Htext Посмотреть сообщение
Т.е. я Вас правильно понял, что ОС, получив из сети сообщение в формате протокола ТСР, "готовит" его в формате протокола HTTP и только потом передает браузеру?
да.

но я не эксперт, может какой-то браузер и реализует свою логику над этим всем.
1
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
28.08.2017, 23:29
Цитата Сообщение от Htext Посмотреть сообщение
ОС, получив из сети сообщение в формате протокола ТСР, "готовит" его в формате протокола HTTP и только потом передает браузеру?
Не совсем. ОС ничего не готовит. Пакеты, физически передаваемые по проводам, просто разворачиваются как матрешки, попутно убираются заголовки. От уровня к уровню модели OSI.

Например, по сети передается tcp-пакет. У этого пакета есть разные поля (например порт отправления, порт назначения). Одним из таких полей является поле с названием "данные" (в конце пакета как правило). Которое может содержать, например, http-пакет. Или ftp-пакет. Или любой другой пакет прикладного уровня. Что конкретно находится в этих "данных" заранее неизвестно получателю.

Все сводится к тому, что принято, что по 80 порту осуществляется обмен по протоколу HTTP. И браузер это знает. Если, скажем, какой-нибудь веб-сервер начнет выдавать по 80 порту пакет любого другого протокола - браузер просто-напросто не поймет что там и, в лучшем случае, выдаст ошибку.
0
29.08.2017, 05:59

Не по теме:

Цитата Сообщение от pav1uxa Посмотреть сообщение
Все сводится к тому, что принято, что по 80 порту осуществляется обмен по протоколу HTTP. И браузер это знает.
простите за мою неосведомлённость в этом вопросе.
но что произойдёт, если 80 порт захотят использовать сразу 2 или даже 3 браузера?
как там это всё обрабатывается, проще говоря?

0
Модератор
 Аватар для vxg
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,460
29.08.2017, 06:21
GbaLog-, браузер запрашивает данные у сервера через 80 порт - на стороне браузера этот порт не используется (браузер ведь у нас не веб сервер). Сервер слушает 80 порт и принимает подключения создавая для каждого из них свой канал обмена данными через локальный свободный порт.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.08.2017, 06:21
Помогаю со студенческими работами здесь

Определение http или https протокола
Подскажите какие варианты есть определить по какому протоколу работает сайт, т.е. если вводить url в виде "www.cyberforum.ru",...

Контент-фильтрация протокола http (80 порт)
Задание: если вбивается адрес в контент фильтр, то он не должен загружаться Преподаватель задал задание, как это реализовать? За любую...

Ресурсы для изучения протокола http
Подскажите ресурсы где можно изучить протокол http. А то ничего нормального найти не могу. Вообще понять ничего не могу.

Редирект с протокола http и www на https
Всем привет. Ребята информации очень много в интернете да и на форуме, но затрудняюсь в правильному решению. Довольно часто прописываю...

Разработать упрощенный сервер HTTP протокола
Разработать упрощенный сервер HTTP протокола возвращающий страницу из файла по имени http://localhost//<имя файла> проверка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru