Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
yura91
1 / 25 / 2
Регистрация: 23.10.2013
Сообщений: 2,317
#1

Контрольная сумма TCP пакета - Программирование Android

20.04.2016, 21:02. Просмотров 359. Ответов 4
Метки нет (Все метки)

Как вычислить контрольную сумму отправляемого TCP пакета на сервер? Ну например при помощи md5 как вычислить контрольную сумму? Какие стандартные средства андроид для этого есть? Я просто отпраляю на сервер изображения по TCP и хочу понять на сервере по контрольной сумме что все данные доставлены в целостном состоянии.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2016, 21:02
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Контрольная сумма TCP пакета (Программирование Android):

Отправка пакета (UDP)
День добрый Как организовать передачу пакета (UDP) из любого участка кода?...

Ошибка подписи пакета
Здравствуйте! Не получается подписать пакет, делаю так контекстное...

Проверить установку пакета
Добрый день всем! Меня интересует такой вопрос, у меня есть приложение и в...

Распаковка ресурсов из пакета на устройство
Добрый день. Можно ли создать апк файл при запуске которого будет извлекать из...

Разное имя пакета и приложения
Импортировал проект. В манифесте указано название...

Данные из принятого UDP пакета
Как вытащить данные из принятого UDP пакета? Есть буфер, например на 100 байт....

4
Alexvp
111 / 75 / 8
Регистрация: 03.08.2014
Сообщений: 380
20.04.2016, 23:08 #2
Зачем вам залезать на транспортный уровень модели OSI? Для вас есть прикладной уровень. Обсчитывайте свое изображение в приложении и на сервере. TCP не трогайте.
0
yura91
1 / 25 / 2
Регистрация: 23.10.2013
Сообщений: 2,317
20.04.2016, 23:38  [ТС] #3
Обсчитывать просто по переданному размеру(длине изображения в байтах) вы имеете ввиду? Но дело в том, что я на сервере принимаю порции байт изображения и сразу пишу их в JPEG файл. У меня первым параметром идет символ STX дальше длина изображения а потом само изображение(его байты). Но байт очень много поэтому за один раз они не читаются, а писать все байты изображения в буфер, выяснять окончательный размер получившегося буфера и потом только если размер буфера совпадает с переданной длиной писать в файл - не совсем удобно, так как буфер может получится большой(зависит от изображения) и затребовать много памяти. Есть ли способ как оптимальнее это все общитать?Кстати TCP гарантирует порядок доставки пакетов в том порядке в каком они были отправлены верно же?
0
Hastin
31 / 23 / 7
Регистрация: 24.03.2016
Сообщений: 256
21.04.2016, 00:32 #4
Если не ошибаюсь, принцип работы самого TCP основан на "гарантии доставки". Тобишь, сам протокол должен смотреть, все ли данные пришли, если нет, то запрашивать недостающие кусочки. А как вы говорите, "Не пришло", то это проблема не транспорта, а повреждений файла при отправке. Файлы должны доходить в любом случае. Разве что потеряно соединение и т.п.
0
Alexvp
111 / 75 / 8
Регистрация: 03.08.2014
Сообщений: 380
21.04.2016, 08:42 #5
По-моему, вы ищите проблему там, где ее нет. Посылайте свой файл на сервер стандартным способом через POST, как это делается в формах веб-сайтов. Так же стандартными способами сохраняйте файл на сервере. Примеров реализации навалом.
Если для вас супер критична гарантированная целостность файлов, то считайте на гаджете контрольную сумму. Примеров тоже масса, наберите в поиске "java контрольная сумма файла". Отдельно пересылайте контрольную сумму и отдельно файл, а на сервере снова обсчитывайте файл и сравнивайте.
0
21.04.2016, 08:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2016, 08:42
Привет! Вот еще темы с решениями:

Контрольная сумма пакета
Здравствуйте форумчане! 4 дня бьюсь над определением алгоритма контрольной...

Неправильная контрольная сумма для UDP пакета?
С помощью QUdpSocket создал два приложения. Одно посылает дейтаграммы, другое...

Отправка TCP пакета
Всем привет! Появился ЕЩЁ один вопрос. Пишу программу без использования VCL,...

Разбор TCP пакета
Подскажите я нашел примеры на C# но там надо подключать PcapDotNet. Можно ли...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru