Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Можно ли при расчете crc эзернет пакета поменять слова местами?
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Fast Ethernet/Gigabit Ethernet/FibreChannel
novartis
При формировании UDP пакета мне не известна CRC на IP заголовок и CRC на UDP пакет, но их нужно прописать почти в самом начале эзернет пакета.

Я сначала формирую весь пакет, эти неизвестные CRC пропускаю.
Параллельно веду расчет CRC на эзернет пакет, неизвестные CRC пропускаю.

После формирования пакета рассчитываю CRC на IP заголовок и CRC на UDP пакет и вставляю их в нужные места.
И досчитываю CRC эзернет пакета.
То есть поменял порядок следования слов.
В результате CRC эзернет пакета не совпадает с нужной.

Можно ли это как то обойти?
Сергей Борщ
QUOTE (novartis @ Nov 23 2016, 08:44) *
неизвестные CRC пропускаю.
Вот для борьбы с такими ошибками и придумана CRC. Обойти это нельзя.
Кнкн
Цитата(novartis @ Nov 23 2016, 08:44) *
Можно ли это как то обойти?


Существуют методы коррекции CRC без полного перерасчета.
Забросил на ftp upload/DOC/misc/CRC.zip подборку статей по расчету CRC.
k155la3
Цитата(novartis @ Nov 23 2016, 08:44) *
. . . .
(1)Параллельно веду расчет CRC на эзернет пакет, неизвестные CRC пропускаю.
. . . . .
(2)Можно ли это как то обойти?

(1) Еслиб это была бухгалтерия, то главбух бы сдавала отчет без 99% информации.
(2) CRC базируется на двоичной математике, а именно "деление на полином". Я об этом имею очень общее представление.
Возможно есть ф-лы в контексте бинарного деления, вроде базовых арифметических, F = (A+B+C)/D = A/D + B/D +C/D
Но думаю просто это не будет, а скорее наоборот.
novartis
Спасибо за ответы, и спасибо за архив с кучей доков.

Понял, что порядок слов менять нельзя.
Поборол свою проблему другим способом.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.