rx3apf 0 6 января, 2021 Опубликовано 6 января, 2021 · Жалоба На пакеты не бьем, контрольная сумма у файла есть. Инет не идеальный, но что может произойти ? Это же TCP, так там может что-то исказиться ? И по факту - не искажается. А вот не докачаться - сколько угодно, и да, бывает что не с первого раза, и если уж такое началось, то типично какое-то время повторяется. Ну, издержки мобильной связи... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 6 января, 2021 Опубликовано 6 января, 2021 · Жалоба 3 часа назад, mantech сказал: А зачем с ними возиться, они стандартные, раз сделал и все. А хттп - это парсить кучу текста, нестандартый протокол передачи файлов и пр... Ну вообщем на вкус и цвет... "Кучу" - это один заголовок из нескольких строк??? Всего один(!), в самом начале. А дальше - просто поток байт файла через TCP-сокет. Без открываний/закрываний, ответов/ожиданий ответов и т.п. Так что - уж явно попроще FTP оно будет. И где там что-то "нестандартное"? Если уж на то пошло, то принять файл с http-сервера можно простой терминалкой, подключившись на нужный TCP-порт и вручную передав HTTP-запрос из нескольких строк. В ответ будет выплюнут небольшой HTTP-заголовок, а затем - содержимое файла (просто двоичный поток байт). Попробуйте-ка такое проделать с FTP! 1 час назад, mantech сказал: Это как интересно? Т.е. на пакеты не бьем, КС не формируем и не проверяем? Оригинально, интересно, у вас там инет идеальный или с какого раза успешно принимается файл, скажем килобайт 200-300? А как Вы думаете передаются странички сайтов и файлы на них, картинки всякие и другие файлы? Думаете там что-то "бьётся на пакеты"? HTTP работает поверх TCP, который уже обеспечивает целостность данных. И ни на какие пакеты бить ничего не надо. PS: Почитайте описание HTTP всё-таки. А то Вы похоже не знаете что это такое. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 7 января, 2021 Опубликовано 7 января, 2021 (изменено) · Жалоба 10 часов назад, jcxz сказал: PS: Почитайте описание HTTP всё-таки. А то Вы похоже не знаете что это такое. Знаю, представте себе А еще знаю, как это все (загрузка страничек и пр) работает при хреновом инете, который тоже в курсе, как работает (не в масквабаде живу). А теперь ответьте на вопрос, раз уж у вас там так все здорово, зачем придумали все эти ftp и пр ? 10 часов назад, rx3apf сказал: но что может произойти ? Это же TCP, так там может что-то исказиться ? Пропасть пакет, например, не? 10 часов назад, jcxz сказал: Попробуйте-ка такое проделать с FTP! Без проблем, штука называется тотал коммандер, даже заголовки писать не нужно))) Очень удобно обновлять на устройстве файлы на сд-карте, чтоб не дергать ее постоянно в картридер... Изменено 7 января, 2021 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба 22 минуты назад, mantech сказал: Пропасть пакет, например, не? Нет. Пропавший пакет будет перезапрошен, мы об этом не узнаем (этим занимается TCP). Нет связи - файл будет просто недокачан. Но никаких потерь или искажений там быть не может, файл или пришел в целости или не докачан. Поэтому применительно к передаче файла посредством http get - всякие там "Т.е. на пакеты не бьем, КС не формируем и не проверяем?" не имеют ни малейшего смысла. Сервер этим не занимается, это не предусмотрено. Если проблемы с передачей большого файла - ну можно, конечно, частичный get. 29 минут назад, mantech сказал: Знаю, представте себе Крайне сомнительно - иначе откуда это "парсить кучу текста, нестандартный протокол передачи файлов" ? С уверенностью могу сказать - Вы никогда не видели http-сессию "живьем". А там делов-то на несколько минут - поставить какой-нибудь teraterm и простенький махонький shttps. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба 6 minutes ago, rx3apf said: Но никаких потерь или искажений там быть не может, файл или пришел в целости или не докачан. Ну это не доказуемо. Я видел как свитчеры меняли содержимое TCP пакетов и подставляли в них правильную контрольную сумму, видел как PC спокойно принимают пакеты с неправильной контрольной суммой. Про сторонние файрволы вообще молчу . Они ваш HTTP могут перепахать и изменить до неузнаваемости. Так что только AES-GCM! Если, конечно, ваш чип это потянет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Quasar 20 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба 53 минуты назад, mantech сказал: зачем придумали все эти ftp и пр ? когда придумывали ftp, http еще не было. 56 минут назад, mantech сказал: Пропасть пакет, например, не? Нет. TCP вас известит об этом. Если только у вас там не совсем кривой стек. Пока отправитель не получит подтверждение отправленного объема данных (объем определен в TCP windows size), он вообще не будет ничего отправлять дальше. Если пакет пропал, то вся передача встанет в попытке отправить повторно его. Прошивку по любому надо шифровать. И конечно же должна быть проверка CRC всего файла (или еще лучше ЭЦП) перед прошивкой. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба 3 часа назад, mantech сказал: как это все (загрузка страничек и пр) работает при хреновом инете, При "хреновом" думаете FTP будет лучше работать? Ну-ну... Скорее - хуже. Так как ресурсов требует больше. Цитата зачем придумали все эти ftp и пр ? Уж явно не для загрузки прошивок! Цитата Пропасть пакет, например, не? А что будет в этом случае с FTP? Он ведь тоже поверх TCP работает как ни странно. Цитата Без проблем, штука называется тотал коммандер, даже заголовки писать не нужно))) Очень удобно обновлять на устройстве файлы на сд-карте, чтоб не дергать ее постоянно в картридер... Причём тут готовый FTP-клиент (коим является тотал командер)? Я вас прошу - вручную (отправкой байт вручную через TCP-сокет-ы) воспроизвести работу FTP. Т.е. - вручную сэмулировать FTP-клиент. Сможете? 3 часа назад, rx3apf сказал: С уверенностью могу сказать - Вы никогда не видели http-сессию "живьем". +++ Цитата А там делов-то на несколько минут - поставить какой-нибудь teraterm и простенький махонький shttps. Можно проще. Есть очень удобная терминалка для этого: "TCP/UDP Net Assistant". Её одной достаточно чтобы вручную скачать какой-нить файл с любого HTTP. 3 часа назад, AlexandrY сказал: Если, конечно, ваш чип это потянет. Любой МК потянет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба 25 минут назад, jcxz сказал: Можно проще. Есть очень удобная терминалка для этого: "TCP/UDP Net Assistant". Её одной достаточно чтобы вручную скачать какой-нить файл с любого HTTP. Ну, teraterm я предложил чисто для того, чтобы для начала глянуть, как вообще выглядит ответ на http GET. А shttps - для того, чтобы тянуть не с любого, а со своего, с заведомо предсказуемым содержимым (ну и вообще штука хорошая, хотя есть и другие простенькие сервера, но эту я как-то сразу полюбил). А по сути - без разницы, конечно, все настолько тривиально, что один раз попробовать и увидеть много проще, чем объяснять такие вещи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 7 января, 2021 Опубликовано 7 января, 2021 (изменено) · Жалоба 1 час назад, jcxz сказал: Я вас прошу - вручную (отправкой байт вручную через TCP-сокет-ы) воспроизвести работу FTP. Т.е. - вручную сэмулировать FTP-клиент. Сможете? Издеваетесь? Я еще не совсем кукушкой-то дернулся 1 час назад, jcxz сказал: Причём тут готовый FTP-клиент (коим является тотал командер)? Ага, я смотрю, вы тут постоянно хттп вручную парсите... Когда нечего сказать, такую хрень и лепят... 1 час назад, jcxz сказал: "TCP/UDP Net Assistant". Её одной достаточно чтобы вручную скачать какой-нить файл с любого HTTP. Из той же оперы, наверно каждый раз вручную тянете.. Кстати, обратно, т.е. "загружать" на сервак тоже наверно вручную грузите?? Изменено 7 января, 2021 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба 16 минут назад, mantech сказал: Ага, я смотрю, вы тут постоянно хттп вручную парсите... Когда нечего сказать, такую хрень и лепят... Вообще-то это именно Вы "лепите хрень" совершенно не по делу ("парсить кучу текста, нестандартный протокол передачи файлов"). Вам объясняют, как оно в реальности, а Вы - снова за свое... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба 40 минут назад, mantech сказал: Издеваетесь? Я еще не совсем кукушкой-то дернулся Ну вот то-то... 40 минут назад, mantech сказал: Ага, я смотрю, вы тут постоянно хттп вручную парсите... Когда нечего сказать, такую хрень и лепят... В чём именно хрень?? Если вы не понимаете как работает HTTP или TCP и несёте откровенную чушь - вот именно вы и "лепите хрень". Вот не понимаю - зачем рассуждать о том, о чём понятия не имеете? Ведь по всем вашим постам из этой темы видно, что вы не понимаете как работает HTTP. Да и TCP - тоже не понимаете как работает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба 5 minutes ago, jcxz said: Да и TCP - тоже не понимаете как работает. Да тут верят, что в TCP данные исказиться не могут. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба Если специально поставить задачу исказить данные - да, могут, конечно. Но по факту обычно файл или приходит "как есть" или не приходит (ну, приходит частично, и эта часть приходит без искажений). По любому, проверить целостность файла не повредит (равно как и сигнатуры, версии и прочее). Но тут-то нам пытаются рассказать про какие-то немыслимые сложности с парсингом ответа на http get, о сложностях с приемом файла. Тому, кто хоть раз это делал на практике - такую дичь просто читать смешно... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба 6 minutes ago, rx3apf said: Если специально поставить задачу исказить данные - да, могут, конечно. Даже не специально. Клиенты одного мобильного оператора, например, наблюдали в своём TCP трафике его рекламу. 9 minutes ago, rx3apf said: По любому, проверить целостность файла не повредит (равно как и сигнатуры, версии и прочее). Не повредит - это очень мягко. Должно быть сделано обязательно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 7 января, 2021 Опубликовано 7 января, 2021 · Жалоба 49 минут назад, jcxz сказал: Ведь по всем вашим постам из этой темы видно, что вы не понимаете как работает HTTP. Да и TCP - тоже не понимаете как работает. Расслабьтесь уже, конечно не понимаю, коли стек свой написал и хттп и фтп сервера сделал, ясно дело, нужно еще раза 3 это снова повторить по-новой, тогда что-то да пойму 35 минут назад, rx3apf сказал: Если специально поставить задачу исказить данные - да, могут, конечно. А я вот не специально делал, да все-равно редко да метко, но проскочит... 36 минут назад, rx3apf сказал: Но тут-то нам пытаются рассказать про какие-то немыслимые сложности Не передергивайте, про "немыслимые" никто не говорил. 45 минут назад, aaarrr сказал: Да тут верят, что в TCP данные исказиться не могут. Да пусть верят, жалко что-ли))) 1 час назад, mantech сказал: Кстати, обратно, т.е. "загружать" на сервак тоже наверно вручную грузите?? Так и не получил ответа... А интересно))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться