реклама на сайте
подробности

 
 
> Простой вопрос по защите данных с помощью CRC
_Pasha
сообщение Feb 2 2011, 08:08
Сообщение #1


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Доброго времени суток.
Дано: протокольчик связи между устройствами в одномастерной сети. Некое сообщение из, допустим, 4-х байт, защищено CRC7. Поле адреса устройства считается при подсчете CRC7, но реально не передается. Принимающая сторона при приеме сообщения учитывает свой адрес при подсчете CRC, проверяя таким образом валидность.
Я понимаю, что передать сообщение в виде (адрес)-(данные)-(CRC) или (данные)-(CRC) - это две большие разницы. Кто в теме, подскажите, чем можно оценить вероятность приема ложного сообщения во втором случае.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
DW0
сообщение Feb 3 2011, 18:28
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 9-08-10
Из: Украина
Пользователь №: 58 828



Ну давайте рассудим так, имеем посылку длиной m бит, имеем длину полинома n бит.

количество комбинаций на одну контрольную сумму k = m/(2^n)
вероятность, что одна переданная посылка исказилась так, что контрольная сумма передаваемой совпала с контрольной суммой приемника равно:
количество совпадающих сообщений разделить на общее количество возможных сообщений.

p = k/m, p = (m/(2^n))/m, p = 1/(2^n),
вот сам пишу и удивляет то, что длина сообщения не влияет на вероятность сбоя, а вот количество посылок за единицу времени будет ее существенно повышать, если кто найдет ошибку, поправите буду благодарен.
Go to the top of the page
 
+Quote Post
DW0
сообщение Feb 4 2011, 19:11
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 9-08-10
Из: Украина
Пользователь №: 58 828



Цитата(DW0 @ Feb 3 2011, 20:28) *
Ну давайте рассудим так, имеем посылку длиной m бит, имеем длину полинома n бит.

количество комбинаций на одну контрольную сумму k = m/(2^n)
вероятность, что одна переданная посылка исказилась так, что контрольная сумма передаваемой совпала с контрольной суммой приемника равно:
количество совпадающих сообщений разделить на общее количество возможных сообщений.

p = k/m, p = (m/(2^n))/m, p = 1/(2^n),
вот сам пишу и удивляет то, что длина сообщения не влияет на вероятность сбоя, а вот количество посылок за единицу времени будет ее существенно повышать, если кто найдет ошибку, поправите буду благодарен.


хочу немного поправить, p = k/m, p = ((2^m)/(2^n - 1))/(2^m), p = 1/(2^n - 1), k = (2^m)/(2^n - 1), но на общий результат существенно не влияет.
p = 1/(2^n - 1) - это у нас вероятность получения неверных данных без обнаружения ошибки, речь идет о одном пакете защищенном контрольной суммой n-разрядов.

для получения вероятности отказа за какой либо промежуток времени, считаете количество переданных пакетов например j и получаем

P = 1 - e^(j*ln(1-p))
после небольших преобразований:

P = 1 - (1 - p)^j

P = 1 - (1 - 1/(2^n-1))^j

для n = 8 получим и скоростью передачи 100 посылок в секунду за сутки получим:

1 - (1 - 1/(2^8 - 1))^100*60с*60мин*24часа = 1 - 1,4211728172713606486967518108355e-14744

вероятность отказа достаточно высока

тоже самое для n = 64 получим 4,6837533851989031228382687390855e-13
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Feb 5 2011, 07:28
Сообщение #4


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(DW0 @ Feb 4 2011, 22:11) *
P = 1 - e^(j*ln(1-p))

Такое распределение было бы для случая непрерывной передачи битового потока.
Теперь, ближе к телу ©
у нас посылки по 8 бит , старт-бит==0 2стоп-бита==1. Плюс случайные задержки между пакетами.
Тут другое интересно. Вероятность неправильной интерпретации не зависит от длины сообщения. Но это - для переданых и принятых данных. А у нас - при подсчете ЦРЦ разные начальные значения сдвигового регистра. Это куда относить? cranky.gif
Go to the top of the page
 
+Quote Post
DW0
сообщение Feb 5 2011, 08:46
Сообщение #5


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 9-08-10
Из: Украина
Пользователь №: 58 828



Цитата(_Pasha @ Feb 5 2011, 09:28) *
Такое распределение было бы для случая непрерывной передачи битового потока.


P = 1 - e^(j*ln(1-p))

j - обращу внимание на эту переменную, которая задает как раз количество пакетов.
Эта формула естественно приблизительная, оговорю принятые допущения.

1. Считаем, что на каждую контрольную сумму припадает с одинаковой вероятностью количество вариантов данных k = (2^m)/(2^n - 1), 2^m - возможные варианты данных, 2^n - 1 - возможные варианты контрольных сумм. Блин опять промазал вычитать единицу, нужно из числителя, то есть одна то комбинация входных данных является корректной, k = (2^m - 1)/(2^n), ну это большой разницы не сыграет.

2. В этой модели не учитываются вероятности отказов, предполагаются любые отказы (сбои) равновероятные.

p = (2^m - 1)/2^(n+m) - вероятность не обнаруженного сбоя одного пакета. для больших m справедливой будет P = 1 - (1 - 1/2^n)^j

P = 1 - (1 - (2^m - 1)/2^(n+m))^j

так вот если мы хотим посчитать какая будет вероятность отказа за год то j должна равняться количеству пакетов за переданных год.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- _Pasha   Простой вопрос по защите данных с помощью CRC   Feb 2 2011, 08:08
- - kolobok0   Цитата(_Pasha @ Feb 2 2011, 11:08) ... (а...   Feb 3 2011, 09:27
|- - _Pasha   Цитата(kolobok0 @ Feb 3 2011, 12:27) ИМХО...   Feb 3 2011, 10:54
- - xemul   Цитата(_Pasha @ Feb 2 2011, 11:08) Я пони...   Feb 3 2011, 12:24
|- - _Pasha   Цитата(xemul @ Feb 3 2011, 15:24) (лень и...   Feb 3 2011, 12:56
|- - GetSmart   Цитата(_Pasha @ Feb 3 2011, 17:56) Ну, хо...   Feb 3 2011, 13:18
||- - _Pasha   Цитата(GetSmart @ Feb 3 2011, 16:18) ИМХО...   Feb 3 2011, 13:30
|- - xemul   Цитата(_Pasha @ Feb 3 2011, 15:56) Ну, хо...   Feb 3 2011, 14:03
|- - _Pasha   Цитата(xemul @ Feb 3 2011, 17:03) и так 2...   Feb 3 2011, 15:10
|- - scifi   Цитата(DW0 @ Feb 3 2011, 21:28) вот сам п...   Feb 4 2011, 21:20
- - i-mir   Если кратко, то экспериментально были получены сле...   Mar 21 2011, 20:58
- - Oldring   Цитата(_Pasha @ Feb 2 2011, 11:08) Поле а...   Mar 21 2011, 23:45
- - GetSmart   вместо addr,byte1,byte2,byte3,byte4,crc передаётся...   Mar 22 2011, 03:42
|- - Oldring   Цитата(GetSmart @ Mar 22 2011, 06:42) вме...   Mar 22 2011, 08:38
- - GetSmart   Описание вполне ясное. Все всё поняли, кроме Oldri...   Mar 22 2011, 08:41
|- - MrYuran   Цитата(GetSmart @ Mar 22 2011, 11:41) Уст...   Mar 22 2011, 09:01
||- - GetSmart   Цитата(MrYuran @ Mar 22 2011, 14:01) CRC7...   Mar 22 2011, 09:08
|||- - MrYuran   Цитата(GetSmart @ Mar 22 2011, 12:08) Неп...   Mar 22 2011, 09:52
|||- - GetSmart   Цитата(MrYuran @ Mar 22 2011, 14:52) Если...   Mar 22 2011, 09:57
||- - Krys   Цитата(MrYuran @ Mar 22 2011, 16:01) Вот ...   Apr 25 2011, 07:20
||- - i-mir   В свое время писал об этом. http://electronix.ru/f...   Apr 26 2011, 05:45
||- - MrYuran   Цитата(Krys @ Apr 25 2011, 11:20) Если не...   Apr 26 2011, 06:55
|- - Oldring   Цитата(GetSmart @ Mar 22 2011, 11:41) Опи...   Mar 22 2011, 09:26
|- - GetSmart   Цитата(Oldring @ Mar 22 2011, 14:26) ...И...   Mar 22 2011, 09:38
|- - ViKo   Цитата(GetSmart @ Mar 22 2011, 11:38) Чёт...   Mar 22 2011, 09:47
||- - GetSmart   Цитата(ViKo @ Mar 22 2011, 14:47) Что, ес...   Mar 22 2011, 09:53
||- - MrYuran   Цитата(GetSmart @ Mar 22 2011, 12:53) Ров...   Mar 22 2011, 09:57
|- - Oldring   Цитата(GetSmart @ Mar 22 2011, 12:38) Это...   Mar 22 2011, 09:48
|- - GetSmart   Цитата(Oldring @ Mar 22 2011, 14:48) Как ...   Mar 22 2011, 09:51
|- - ViKo   Цитата(GetSmart @ Mar 22 2011, 11:51) Даж...   Mar 22 2011, 09:56
|- - GetSmart   Цитата(ViKo @ Mar 22 2011, 14:56) Я чуть ...   Mar 22 2011, 10:02
- - i-mir   Конкретные параметры топикстартер не указал, поэто...   Mar 22 2011, 09:16
- - Oldring   Цитата(_Pasha @ Feb 2 2011, 11:08) Некое ...   Mar 22 2011, 10:28
|- - GetSmart   Цитата(Oldring @ Mar 22 2011, 15:28) Для ...   Mar 22 2011, 10:36
||- - ViKo   Цитата(GetSmart @ Mar 22 2011, 12:36) Мне...   Mar 22 2011, 10:57
||- - i-mir   Цитата(GetSmart @ Mar 22 2011, 14:36) Мне...   Mar 22 2011, 11:26
|- - MrYuran   Цитата(Oldring @ Mar 22 2011, 13:28) Спор...   Mar 22 2011, 11:23
|- - Oldring   Цитата(MrYuran @ Mar 22 2011, 14:23) Засч...   Mar 22 2011, 11:32
|- - ViKo   Цитата(MrYuran @ Mar 22 2011, 13:23) Лучш...   Mar 22 2011, 12:36
- - _Pasha   До кучи   Apr 26 2011, 08:40
- - i-mir   ЦитатаЕсть там. Надо развернуть "плюсики...   Apr 26 2011, 14:10
- - Krys   Конкретика: мы "от фонаря" порешали, что...   Apr 27 2011, 10:33
- - i-mir   ЦитатаПо закону распределения ошибок в канале тако...   Apr 27 2011, 13:37
|- - Krys   Уважаемый i-mir, спасибо за конкретную помощь. Цит...   Apr 28 2011, 07:33
|- - MrYuran   Цитата(Krys @ Apr 28 2011, 11:33) 5. Как ...   Apr 28 2011, 08:51
- - Krys   Ну я так и предположил, что в битах. Но для сути 5...   Apr 29 2011, 02:40
- - i-mir   Проблема как раз в другом, и заключается в вопросе...   Apr 29 2011, 06:04
|- - Krys   Цитата(i-mir @ Apr 29 2011, 13:04) 6...   Apr 29 2011, 09:55
- - i-mir   Как ни банально звучит, в чистом виде ответов ни в...   May 2 2011, 19:25
- - Krys   Ладно, сдаюсь, применяем CRC32, и успокаиваемся. О...   May 3 2011, 03:51
- - i-mir   8B/10B больше актуален для оптики в качестве выра...   May 3 2011, 17:47
- - artix   Цитата(_Pasha @ Feb 2 2011, 11:08) Доброг...   Aug 10 2011, 05:48


Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 00:47
Рейтинг@Mail.ru


Страница сгенерированна за 0.01488 секунд с 7
ELECTRONIX ©2004-2016