Форум программистов CodeGuru
16 Январь 2018, 23:17:46 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
Новости:
 
   Начало   Помощь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Полином для расчёта crc16 udp пакета.  (Прочитано 14487 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ATAMAN200
Интересующийся
**
Офлайн Офлайн

Сообщений: 29


Просмотр профиля
« : 03 Октябрь 2010, 14:04:12 »

Не могу понят я имею udp пакет в hex виде беру от туда две crс16 убераю, так же убераю MAC адреса и код протокола.
Всё что осталось помещяю в программу которая находит crc16 строки в hex фомате задаю полином 8005, crc16 полученная не совпадает.
Пробывал все стандартные полиномы результат не совпадает.
Как же мне узнать какой полином используется?
Записан
3V
Администратор
Ветеран
*****
Офлайн Офлайн

Сообщений: 1347



Просмотр профиля WWW
« Ответ #1 : 03 Октябрь 2010, 19:55:10 »

Контрольная сумма в UDP пакете рассчитывается не по алгоритму crc16. Там сообщение дополняется нулями для выравнивания по границе слова. И рассчет производится путем последовательного суммирования слов сообщения с поразрядным дополнением, вычисленным на прошлой итерации и вычисления поразрядного дополнения к этой сумме.
Как считать контрольную сумму для подобных протоколов описано в RFC 1071. RFC этот в гугле точно можно найти.
Записан

c-coder
Пользователь
***
Офлайн Офлайн

Сообщений: 110


Просмотр профиля
« Ответ #2 : 03 Октябрь 2010, 20:42:05 »

Тут все расписано UDP
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!