Перейти к содержанию
    

Посоветуйте легкий стек TCP/IP

48 minutes ago, rkit said:

В ftp нет защиты от потерь или повреждения данных. Совершенно недопустимо. Протокол следовало похоронить еще 20 лет назад.

А в http он есть? Напомню, что ftp, что http работают по TCP, и именно он гарантирует целостность данных.

Более того, tftp, работая через UDP тоже вполне гарантирует правильность данных в пределах пакета, а повторы потерянных пакетов там заложены в протокол.

Ну и речь вообще идет о заливке прошивки. Очень было бы нифигово вообще хэши/эцп прошивки проверять перед тем, как ее применять. Независимо от того, каким способом она прилетела.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 minutes ago, Rst7 said:

А в http он есть? Напомню, что ftp, что http работают по TCP, и именно он гарантирует целостность данных.

Речь, возможно, об изменении пакетов на пути передачи. Так например делает китайская стена.
Т.е. TCP не защищает от  изменения содержимого пакетов. 
Гарантировать аутентичность пакетов может например TLS с шифрованием AES-GCM.
В спецификации FTPS однако сказано, что некоторые стены не терпят такого шифрования и после завершения сессии передачи пароля требуют возврата на незашифрованный обмен. 
Т.е. FTP и FTPS не совсем то на что можно положиться.  
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

31 minutes ago, AlexandrY said:

Т.е. FTP и FTPS не совсем то на что можно положиться.  

Еще раз и сначала. Мы тут беседуем о буткоре. Вы передаете прошивку в свои приборы нешифрованную и неподписанную? Оставляете все на совесть протоколов передачи данных?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

38 minutes ago, Rst7 said:

Еще раз и сначала. Мы тут беседуем о буткоре. Вы передаете прошивку в свои приборы нешифрованную и неподписанную? Оставляете все на совесть протоколов передачи данных?

Если сначала, то нужно выяснять как узнает дивайс о наличии прошивки, как узнает ее имя, как ищет сервер, где берет DNS, как проходит сквозь стены и т.д.
А то как-то легенда незаконченная получается. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, AlexandrY said:

Если сначала, то нужно выяснять как узнает дивайс о наличии прошивки, как узнает ее имя, как ищет сервер, где берет DNS, как проходит сквозь стены и т.д.

Тут, кстати, ТС нас бы просветил, у него вообще клиент или сервер. А то из стартового поста не очень понятно, мне привиделось, что сервер. И мне пофиг на всякие стены и прочее. А Вам, походу, что клиент. И Вас теперь это беспокоит :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В http можно ОДНИМ запросом скачать новую прошивку, или получить ответ, что ее нет (If-Modified-Since).

Есть content-length и digest для валидации, не нужно колдовать с двумя портами, нет 5 бесполезных режимов передачи.

ftp давно пора похоронить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 hours ago, rkit said:

В http можно ОДНИМ запросом скачать новую прошивку, или получить ответ, что ее нет (If-Modified-Since).

Это если Ваше устройство - клиент. А если сервер?

6 hours ago, rkit said:

ftp давно пора похоронить.

Да конкретно Вас никто не заставляет пользоваться ftp. Более того, я, например, вообще обновляю через tftp у себя, полностью отдельным буткором, там что-то килобайта полтора кода вообще на все, если отладочный printf выбросить. Потому что у меня устройство может в интернет и не попасть, а вот с софтом верхнего уровня коммуницировать всегда будет (у него работа такая), вот софт верхнего уровня через tftp при необходимости в девайс прошивку и зальет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

22 hours ago, Rst7 said:

Тут, кстати, ТС нас бы просветил, у него вообще клиент или сервер. А то из стартового поста не очень понятно, мне привиделось, что сервер. И мне пофиг на всякие стены и прочее. А Вам, походу, что клиент. И Вас теперь это беспокоит :biggrin:

Меня не беспокоит.
У меня дивайсы прошиваются через SD, UART, CAN, USB MSD и RNDIS, через FTP и FTPS (и клиент и сервер, и пасивный и активный режимы) и конечно через MQTT 
Вот последний вариант я бы рекомендовал. 
В отличии от передачи подписанной прошивки которую надо всю скачать и сохранить где-то чтобы проверить подпись, MQTT с TLS позволяет прошивать пакеты сразу. 
С pre-shared key (PSK)  займет дополнительно килобайт 10. Что гораздо меньше всего хозяйства требуемого для RSA или ECC 
Ну и плюс дикие преимущества при работе с парками устройств и через глобальные сети. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

21 hours ago, AlexandrY said:

В отличии от передачи подписанной прошивки которую надо всю скачать и сохранить где-то чтобы проверить подпись, MQTT с TLS позволяет прошивать пакеты сразу. 

Особенно, когда связь разорвется на середине передачи прошивки, прям замечательно будет. Хоть с подписями, хоть без.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

29.12.2020 в 17:10, mantech сказал:

Тоже не понимаю, что все  хттпшные загрузчики в моде стали - это ж не для этого протокол вообще, всегда по FTP делаю

http всегда разрешен в корпоративных сетях. Устройство делаешь клиентом, поднимаешь http сервер с прошивкой где-нибудь в интернете (ну или локально в сети), устройство само проверяет доступность прошивки по http и предлагает пользователю скачать и обновить. А возиться с этими tftp и ftp...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

22 minutes ago, Quasar said:

поднимаешь http сервер с прошивкой где-нибудь в интернете (ну или локально в сети)

Да, это еще одна скверная особенность решений с сервером в интернете.
Оно вынуждает хранить драгоценные файлы на стороннем сервере, админить их там. Т.е. стирать ( а ведь на самом деле ничего там не стирается), добавлять, каталогизировать,  переименовывать, думать о файрволе и т.д.
Решения с брокерами выглядят гораздо более защищенными.   

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 часов назад, AlexandrY сказал:

Да, это еще одна скверная особенность решений с сервером в интернете.
Оно вынуждает хранить драгоценные файлы на стороннем сервере, админить их там. Т.е. стирать ( а ведь на самом деле ничего там не стирается), добавлять, каталогизировать,  переименовывать, думать о файрволе и т.д.
Решения с брокерами выглядят гораздо более защищенными.   

Какой брокер, чего брокер? Если я вобью в гугле http я найду все, что нужно мне знать об этом. Если я вобью в гугле брокер, найду чего угодно, рядом нестоящее к ембедеду. Вы в каждом первом посте пытаетесь показать, насколько далеко от вас серые массы? К чему все эти рекламно-маркетинговые вбросы?

 

28.12.2020 в 13:52, AlexandrY сказал:

Скажем все спасибо участнику dxp. 

Спасибо!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

11 часов назад, Quasar сказал:

устройство само проверяет доступность прошивки по http и предлагает пользователю скачать и обновить. А возиться с этими tftp и ftp...

А зачем с ними возиться, они стандартные, раз сделал и все. А хттп - это парсить кучу текста, нестандартый протокол передачи файлов и пр... Ну вообщем на вкус и цвет...

26 минут назад, Quasar сказал:

Какой брокер, чего брокер?

Да у него всегда одни брокеры... как на бирже))))))))))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, mantech сказал:

 А хттп - это парсить кучу текста, нестандартый протокол передачи файлов и пр...

 

Конечно, может быть я чего не понимаю, но в устройстве с GSM-модемом мне оказалось проще написать все самому, чем использовать готовый, встроенный в модем движок. Какую "кучу текста" там надо парсить ? Мне потребовалось знать только код ответа (200) и тэг "Content-Length:". А зачем что-то еще ?

И что значит "нестандартный протокол передачи файлов" ? Файл льется как есть. Длину знаем, столько и принимаем и сохраняем. Приняли - проверяем целостность и шьем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

28 минут назад, rx3apf сказал:

Файл льется как есть.

Это как интересно? Т.е. на пакеты не бьем, КС не формируем и не проверяем? Оригинально, интересно, у вас там инет идеальный или с какого раза успешно принимается файл, скажем килобайт 200-300?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...