Примечание: мои извинения, если это не тот сайт по этой теме. Этот вопрос был адресован Супер Пользователю из Сетевой Инженерии

Я слежу за UMass Wireshark Labs, в частности, за TCP.

В этой лабораторной работе вас попросят загрузить файл на веб-сайт и наблюдать за трафиком TCP. К моему удивлению, передача загружаемого файла происходит в первую очередь (через TCP), ПЕРЕД запросом POST . Я сопоставил свой захват с тем, который они предоставляют (tcp-ethereal-trace-1), но он показывает то же самое.

Это поднимает несколько вопросов:

  • Передача файлов действительно происходит до запроса HTTP POST?
  • Если так, то почему?
  • Как сервер знает, что ожидать файл?
  • Как долго он будет прослушивать и записывать файл в ожидании запроса POST?
  • Вопрос 7 в лаборатории просит вас считать HTTP POST первым сегментом в соединении TCP. Это, кажется, противоречит другим выводам. Что с этим?

1 ответ1

1

Передача файлов действительно происходит до запроса HTTP POST?

Нет, это не так. Ссылаясь на tcp-ethereal-trace-1 и как это отображается в wireshark:

  • В кадре 1 .. 3 дампа TCP-квитирование выполнено.
  • Запрос POST начинается с фрейма 4: вы видите «POST /ethereal-lab ..» в содержимом фрейма.
  • Запрос POST продолжается до кадра 199, который является последним кадром запроса.
  • Этот последний кадр показан в wireshark как фактический POST, потому что только тогда собрана вся информация, необходимая для восстановления полного запроса. Если вы посмотрите подробности, это также покажет вам, что этот запрос был собран из 122 сегментов TCP, то есть всех показанных кадров, которые были получены ранее и где первый кадр был началом запроса.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .