УДК 004.056.4
DOI: 10.17586/0021-3454-2020-63-8-702-710
АЛГОРИТМ
ОПРЕДЕЛЕНИЯ ИСТОЧНИКА ФРАГМЕНТИРОВАННЫХ СООБЩЕНИЙ
М. О. Таныгин
Юго-Западный государственный университет, 305040, Курск, Россия E-mail: [email protected]
Рассматривается проблема снижения информационной избыточности при обмене данными в сетях с большим радиусом действия и низким энергопотреблением за счет уменьшения размеров дополнительных служебных полей, по которым происходит определение источника информационного пакета и его порядкового номера в последовательности пакетов, составляющих единое сообщение. Для повышения энтропии этих дополнительных служебных полей предлагается записывать в них хеш-алгоритм, сформированный из данных других информационных пакетов источника и уникального идентификатора источника. Описан формализованный алгоритм анализа приемником поступающих информационных пакетов. Сформулирована проблема возникновения ошибки определения порядкового номера фрагмента в едином сообщении. На основе математического аппарата теории вероятностей получены численные характеристики такой ошибки, произведена оценка ее влияния на информационную избыточность протоколов, использующих рассматриваемый алгоритм. Приведены зависимости между длиной дополнительного поля хеша и количеством фрагментов, на которые разделено передаваемое сообщение, определен диапазон значений, при котором достигается минимальная информационная избыточность.
Ключевые слова: определение источника сообщений, теория вероятностей, хеш, нарушение порядка следования пакетов, параметры алгоритма, информационная избыточность
Развитие технологии так называемого „интернета вещей" (IoT — Internet of Things) подтолкнуло создателей телекоммуникационного оборудования к разработке новых стандартов и протоколов взаимодействия устройств вычислительной техники [1—3]. Характерной особенностью таких устройств является низкое энергопотребление (до 10 лет от стандартного элемента питания) и низкая скорость передачи данных (до 300 бит/с) при большом радиусе действия [4, 5]. Следствие подобных ограничений — небольшой размер информационного пакета, передаваемого между абонентами на физическом уровне (до 18 байт с учетом дополнительных служебных полей) [4]. Учитывая необходимость поддерживать сложные топологии сетей, объединяющих взаимодействующие устройства, а также низкую защищенность протокола криптографическими средствами [5], необходимо осуществлять контроль источника каждого информационного пакета на физическом уровне. Спецификацией действующих и планируемых к внедрению протоколов предусматривается идентификация каждого пакета по 3-4-байтовому идентификатору отправителя. В сочетании c несколькими байтами поля CRC-кодов, служащих для обнаружения и устранения ошибок, объем дополнительной служебной информации, передаваемой в пакете, может варьироваться от 50 до 70 % [1—3]. В этой связи становится актуальной задача контроля источника пакета с помощью методов и алгоритмов, использующих для контроля меньшее количество битов информации в служебных полях. На практике это позволило бы добиться, прежде всего, снижения нагрузки на радиопередающие устройства, работающие на данных протоколах, и, как следствие, повышения срока службы их элементов питания.
В работах [6—8] рассматриваются протоколы, в которых размер блока данных не превышает нескольких десятков и даже нескольких байтов, что обусловливает актуальность вопросов информационной избыточности. В основу протоколов положен принцип принадлежности отдельного информационного пакета (ИП) некоей группе, ассоциируемой с конкретными отправителем. Несмотря на то, что описанные системы имеют ряд недостатков, как то: низкая энтропия в дополнительных служебных полях [9] и большой объем априорной информации, которую приемник должен хранить о каждом передающем устройстве, подход, основанный на групповой проверке пакетов, представляется наиболее целесообразным для контроля источника в условиях ограниченности размера служебных полей.
Для объединения информационных пакетов в структурированные последовательности или цепочки и последующего их ассоциирования с определенным источником в настоящей статье предлагается использовать метод, основанный на сравнении значений хеш-функций, полученных из данных предыдущих пакетов [10—12]. Таким образом, достигается наиболее полное использование каждого бита дополнительного сервисного поля с точки зрения содержащегося в нем количества информации как меры устранения неопределенности. Приемник анализирует значения хеш-функций полученных пакетов и определяет их место на основании
взаимного совпадения. Функция ^ определения позиции элемента 5^ в множестве выделенных ИП основывается на вычислении значений хеш-функций предыдущих ИП и сравнении их с информацией самого пакета. Значение хеша одного или нескольких (в зависимости от реализации) предыдущих пакетов вводится в структуру каждого из ИП ..., 5п, образующих
сообщение £ источника. Взаимное расположение ИП определяется в соответствии с априорной информацией о конкретном источнике данных [13, 14]:
^ С Si , i = ^ = / (£, £кеу ), (1)
где — часть, формируемая источником сообщения и содержащая информацию (хеш
предыдущих пакетов) о месте пакета 51 в сообщении £.
Задача определения принадлежности конкретного ИП источнику и сообщению формулируется следующим образом. Пусть имеется множество и информационных пакетов, поступивших в приемник. На первом этапе к каждому из этих пакетов применяются операции выделения стартового /81аг1 и конечного /81ор пакетов:
^ай С и, / (^ай, £ У ) = 1,
(2)
3! ^ор С и, / Р (ор, £ У ) = 1
Затем к оставшимся ИП применяется операция /5г выделения информационной части и / выделения части хеша:
У5 С и, 5^ = /5к (5, £кеу ), 5М = Г (5, £кеу ), (3)
где 5 — часть пакета 5, содержащая значение хеш-функции, полученное из данных предыдущего пакета; 5^ — информационная часть пакета 5.
На практике это может быть банальным кодированием с последующим разделением полученного слова на два подслова в соответствии с определенными £кеу размерами обеих частей. Далее номер пакета в последовательности определяется следующими рекуррентными соотношениями:
R = FR (sstart ) = 0;
R = FR (si ) = R- +1 О .fash = F
hash
hashl i-
(4)
Rn+1 = n +1 о sitos!1 = Fh
stop
hash
где ^^ — хеш-функция, используемая источником для формирования, а приемником для проверки содержимого дополнительного сервисного поля (поля, содержащего значение); ¿зор — часть поля хеша стоп-пакета.
При этом мощность множества и = {¿з^, ¿1, ¿2, ..., sn_l, ¿п, ¿з0р| строго определена параметрами передачи. Если при расчете позиции пакетов формируется множество й', начинающееся и заканчивающееся пакетами и ¿з1ор, но обладающее другой мощностью, то
функция принадлежности для него будет иметь значение „ложь". Сама функция принадлежности примет следующий вид:
В (й, Sкеу | = 1 о й0 = л й^п+1 = л |й| = п + 2 л
ЛГк (и<о, 5кеу) = ^ (г (7_т, ^кеу)), • = 17.7ПТТ л
лй^ п и _ ф} = 0, • = 1,..., п,
-(Л • й
Л ' - 7-й
(5)
И ^ —
7-й элемент множества
где а ' — стартовый пакет структурированного множества и, а а, |и| — мощность множества и .
Функция принадлежности будет принимать значение „истина" только тогда, когда мощность множества и, сформированного на основе рекуррентного правила (4), равна п+2, а структурированное множество номеров пакетов, определенных по тому же правилу, равно множеству целых чисел от 0 до п+1. Последний элемент конъюнкции в формуле (5) означает, что в структурированном множестве невозможно повторение ИП.
Приведенное описание функции принадлежности для метода на основе сравнения значений хеш-функций подразумевает истинность ее значения для одного структурированного подмножества и из всех возможных подмножеств множества и. В то же время возможны ситуации, когда из множества и можно сформировать два или более изоморфных ему структурированных множеств ит, ..., иг, для которых функция принадлежности будет истинна. При этом сами множества не будут равны, так как в рассматриваемой задаче определения источника сообщений решается еще одна подзадача — восстановление исходного порядка ИП, образующих сообщение. Пример формирования двух изоморфных множеств с истинной функцией принадлежности приведен на рис. 1.
Рис. 1
Видно, что вследствие одновременного выполнения равенств
_ „ hash. _ sm+1 .
^.hasli _ ^hash (5^ ) _ ^sh (^ )
„hash _ F ( mf \ _ F i „М \ _ „hash . Лт+1 ~ 1 hash ^ Лт 1 hash ^ Лк +l Лк+l+1 >
^k+Z+l _ Fhash (l) _ Fhash (k^ ) ^k+f >
hash hash hash sk+1 _ sm+1 _ sk+l+1 (0)
может быть сформировано два изоморфных множества, отличающиеся лишь порядком следования пакетов:
и1 ={51, — ,'к, ¿к +1, — ¿к +/ +1, 8к +/ +1, ••• ,'т, 5т+1, ••■¿п }, и2 = {51,--,5к, 'к +/ +1, — ,'т, 5к+1,"-,5к +/, 'т +1,--,5п }.
Для определения вероятности возникновения подобной ошибки определим диапазоны изменения чисел к, /, т. Очевидно, что / может принимать значения в диапазоне от 1 до п-3, к может варьироваться от 1 до п-2-1, т — от к+/+1 до п-1, где п — мощность множества и или число полученных приемником ИП.
Для нахождения итоговой вероятности рассмотрим ситуацию, когда к= 1. Для того чтобы произошла ошибка, значение хеш-функции во втором пакете должно совпасть со значениями хеш-функций в минимум двух пакетах с номерами от 3 до п. Значения хеш-функций формируются независимо друг от друга, поэтому количество совпадений будет распределено по биномиальному закону. Соответственно вероятность ошибки для этого случая составит [15]
Рет(к=1)= I С_з (-Н) (1 -2-Н)П"3"г, (8)
г=2
где Н — размер поля хеша ИП, С'п-з — число сочетаний из п-3 по I.
В случае если среди п -3 значений хеш-функций ни одно не совпадет со значением хеш-функции во втором пакете, следует перейти к рассмотрению ситуации для к=2 с учетом того,
Н Н
что для п -4 пакетов набор возможных значений хешей будет равен уже не 2 , а 2 -1, так как из общего количества будет исключено значение хеш-функции второго пакета. Тогда по аналогии с (8) ошибка для к=2 определится как
п-4 , ( , у ( , у-4-'
рет(к=2,ш = 1)= I сп-4 [р^Д1 - р^] , ()
где Ш — количество исключенных из рассмотрения вариантов содержимого поля ' ^^ ИП.
В случае если среди п -3 результатов хеш-функций только один совпадет со значением поля второго пакета, следует перейти к рассмотрению ситуации для к=3, так как анализировать будем п -3 пакетов (один пакет исключаем из рассмотрения, так как содержимое его поля совпало с содержимым данного поля второго пакета). При этом, как и в случае несовпадения содержимого полей значений хеш-функций, исключаем один вариант:
Регг(к=3, Ь = Сп-5 (рг^) [1 -рН^гУ 4 ' . (10)
Формулу для результирующей вероятности возникновения ошибки с учетом выражений (8)—(10), а также вероятностей совпадения значений хеш-функций соответствующее количество раз можно записать в следующем виде:
п_3
=1)= Е С1
т
чп_3_г
1
чп_3
Ре^к=2, И = 1) +
7=2 V2 У V 2 ] V 2 У
+ (п_ 3)(^Т X1 _4 Регг(к=3, 11 = 1). (11)
В общем виде для произвольных к и Ш выражение (11) запишется как рекуррентное:
( 1 ) Л 1
Регг (к, Ш)=п"Е"" Сп_2_к V] (1 _
ч п 2 к _7
2_я _ т.
+11 _
1
чп_2_к
2_я _ 1Н
Реп (к + 1,Ь +1)+
-(п _ 2 _ к )1
\п_2_к _1
2_н _а.
1 _
2_н _ II
Ре1Т(к + 2,Ш +1).
(12)
Итоговая вероятность построения р2 изоморфных множеств ИП, для которых функция принадлежности будет истинной, а значения номеров пакетов в множестве вычислены в соответствии с формулами (4), будет равняться значению функции Регг(к, Ш)при к=2 и Ш=0.
График зависимости вероятности возникновения ошибки построения структурированного множества от длины Н поля и количества пакетов, на которые фрагментировано сообщение п, показан на рис. 2.
Р7,
Рис. 2
Анализ графика показывает, что длина Н поля содержащего значение хеш-
функции, оказывает существенное влияние на вероятность ошибки лишь до значения 6. Дальнейшее увеличение Н снижает вероятность в пределах 1 % на каждый дополнительный бит длины. Также следует отметить, что значительный рост вероятности ошибки при небольших размерах поля, содержащего значение хеш-функции, происходит на интервале 10.30 пакетов, а затем наступает зона насыщения. При больших значениях Н рост вероятности ошибки практически незначителен и не превышает 5 % к увеличению длины сообщения на каждые 10 пакетов.
На основании найденных зависимостей между вероятностью ошибки и размерами сообщения и длиной поля можно построить зависимость разрядности результата хеш-функции, которая обеспечивала бы заданную величину априорной ошибки, от размера сообщения в пакетах. Данная зависимость, приведенная на рис. 3, еще раз иллюстрирует сделан-
ный выше вывод, что увеличение длины H поля ^^ свыше 10 нецелесообразно, так как не дает значимого снижения вероятности ошибки построения сообщения.
Я
10
— Ри<0,01
— Ри<0,001
— P,z<0,1
10
20
Рис. 3
30
Для определения оптимальной длины поля ^^ введем специальную меру — коэффициент использования канала передачи данных K как отношение объема информации, переданной в сообщении, к объему всех образующих его ИП, включая объем дополнительных полей и дополнительные стартовые и конечные ИП. При расчете данного параметра учитывалось, что возникшая ошибка построения требует повторной передачи данных. Число дополнительных пакетов, которые потребовались для повторной передачи сообщений, переданных с ошибками, при общем достаточно большом количестве N сообщений, определяется как сумма бесконечной убывающей геометрической прогрессии, показателем которой является вероятность возникновения ошибки определения функции принадлежности и порядкового номера каждого пакета [12]. Итоговая формула для коэффициента использования канала имеет следующий вид:
K =
пЬ (1 - Р1г ) (Ь + H ) (п + 2) ,
(13)
где H — длина поля, содержащего значение хеш-функции, полученное из данных предыдущего пакета; L — длина информационного поля пакета; Piz — вероятность ошибки при заданной длине поля, содержащего значение хеш-функции.
График зависимости коэффициента K от длины сообщения п и длины информационного поля L при различных значениях Н представлен на рис. 4 (здесь 1 — Н=8, 2 — Н=9).
К
220 Ь
Рис. 4
8
6
4
п
п
Анализ графика показывает, что при фиксированном п с увеличением Ь коэффициент К асимптотически приближается к величине (1 - р )п (п + 2) 1, что очевидным образом следует
из формулы (13). Если рассматривать изменение данного коэффициента в зависимости от длины сообщения п при фиксированном параметре Ь, то график имеет характерный максимум, сначала повышаясь до него при росте п, а затем снижаясь. Интерпретацией данного факта может быть то, что при малой длине сообщения значительное влияние на снижение коэффициента использования канала оказывает необходимость передачи дополнительных стартового и конечного пакетов. С ростом числа ИП в сообщении дополнительная информационная избыточность, связанная с ними, уменьшается, а влияние возрастающей вероятности ошибки увеличивается. Данный максимум наблюдается до значений Н < 10. При больших значениях Н сама функция коэффициента использования канала передачи данных вырождается в асимптотически приближающуюся к значению Ь (Ь + Н ) 1 кривую.
Длина сообщения, при котором функция К достигает максимума, составляет некоторую область, слабо изменяющуюся с изменением параметра Ь, но находящуюся в зависимости от длины Н. График данной зависимости, представленный на рис. 5, приведен до значений Н = 10, так как при дальнейшем увеличении параметра Н рост величины птах носит экспоненциальный характер. Практическое применение найденной зависимости заключается в том, что при наличии системных требований, которые ограничивают разрядность результата хеш-функции, например, из-за общего ограничения размера передаваемого ИП, можно подобрать длину единичного фрагментируемого сообщения п таким образом, чтобы достичь минимальной информационной избыточности, что скажется соответствующим образом на пропускной способности канала в целом и продолжительности автономной работы устройств,
Рис. 5
Таким образом, используя представленный в настоящей статье вероятностный подход к определению источника информационного пакета и его порядкового номера во фрагментиро-ванном сообщении, можно добиться приемлемой для рассматриваемых протоколов достоверности.
СПИСОК ЛИТЕРАТУРЫ
1. Предварительный национальный стандарт РФ. ПНСТ 354-2019. Информационные технологии. Интернет вещей. Протокол беспроводной передачи данных на основе узкополосной модуляции радиосигнала (МБ-РГ) [Электронный ресурс]: <http://docs.cntd.ru/document/1200162760>, 15.01.2020.
2. Предварительный национальный стандарт РФ. Информационные технологии. Интернет вещей. Протокол обмена для высокоемких сетей с большим радиусом действия и низким энергопотреблением [Электронный ресурс]: <https://drive.googk.comuc?id=12kPw5_ndO8zav7_БP_EXKdytu7uEyy3x&export=download> 15.01.2020.
3. 802.15.4-2015 - IEEE Standard for Low-Rate Wireless Personal Area Networks // IEEE Computer Society. D01:10.1109/ieeestd.2016.7460875.
4. Лоднева О. Н., Ромасевич Е. П. Анализ трафика устройств интернета вещей // Современные информационные технологии и ИТ-образование. 2018. Т. 14, № 1. С. 149—169.
5. Зайцев В., Соколов Н. Особенности мультисервисного трафика с учетом сообщений, создаваемых устройствами IoT // Первая миля. 2017. № 4. С. 44—47.
6. Papadimitratos P., Haas Z. Secure message transmission in mobile ad hoc networks // Ad Hoc Networks. 2003. № 1. P. 193—209.
7. Ben Othman S., Alzaid H., Trad A., Youssef H. An efficient secure data aggregation scheme for wireless sensor networks // IISA. 2013. DOI: 10.1109/iisa.2013.6623701.
8. Hayouni H., Hamdi M., Kim T. A novel efficient approach for protecting integrity of data aggregation in wireless sensor networks // Wireless Communications and Mobile Computing Conference (IWCMC). 2015. P. 1193—1198.
9. Wang W., Wang D., Jiang Y. Energy efficient distributed compressed data gathering for sensor networks. // Ad Hoc Networks. 2016. DOI: 10.1016/j.adhoc.2016.10.003.
10. Stallings W. NIST block cipher modes of operation for authentication and combined confidentiality and authentication // Cryptologia. 2010. N 34. P. 225—235.
11. Black J., Rogaway P. CBC MACs for arbitrary-length messages: The three-key constructions // Cryptologia. 2015. Vol. 18, N 2. P. 111—131.
12. Таныгин М. О., Алшаиа X Я., Алтухова В. А. Об одном методе контроля целостности передаваемой поблоково информации // Телекоммуникации. 2019. № 3. С. 12—21.
13. Арсеньев В. Н., Силантьев С. Б., Ядренкин А. А. Использование априорной информации для коррекции модели потока событий в сложной системе // Изв. вузов. Приборостроение. 2017. Т. 60, № 5. С. 391—397.
14. Tanygin M. O., Tipikin A. P. Methods of authentication of information protection systems and controlling software // Telecommunications and Radio Engineering. 2007. Vol. 66, N 5. P. 453—463.
15. Корн Г., Корн Т. Справочник по математике для научных работников и инженеров. М.: Наука, 1978. 832 с.
Сведения об авторе
Максим Олегович Таныгин — канд. техн. наук, доцент; Юго-Западный государственный университет,
кафедра информационной безопасности; заведующий кафедрой; E-mail: [email protected]
Поступила в редакцию 28.02.2020 г.
Ссылка для цитирования: Таныгин М. О. Алгоритм определения источника фрагментированных сообщений //
Изв. вузов. Приборостроение. 2020. Т. 63, № 8. С. 702—710.
ALGORITHM FOR DETERMINING THE SOURCE OF FRAGMENTED MESSAGES
M. O. Tanygin
South-West State University, 305040, Kursk, Russia E-mail: [email protected]
The problem of reducing information redundancy when exchanging data in networks with a long range and low power consumption is analyzed. The approach under consideration is based on reduction of the size of additional service fields that determines the information packet source and its number in the single message. To increase the entropy of these additional service fields, it is proposed to write in them a hash formed from data from other information packets of the source and the source unique identifier. A formalized algorithm for analyzing incoming information packets by the receiver which allows determining the source of the information packet is described. The problem of an error in determining the sequence number of a fragment in a single message is formulated. Based on the mathematical apparatus of the probability theory, numerical characteristics of such type of error are derived, and its influence on the information redundancy is estimated. Dependencies between the additional hash field length and number of
the transmitted message fragments are presented, and the range of the values providing the minimum information redundancy is determined.
Keywords: messages source determination, probability theory, hash, packet order violation, algorithm parameters, information redundancy
REFERENCES
1. http://docs.cntd.ru/document/1200162760. (in Russ.)
2. https://drive.google.com/uc?id=12kPw5_ndO8zav7_BP_EXKdytu7uEyy3x&export=download. (in Russ.)
3 . 802.15.4-2015 - IEEE Standard for Low-Rate Wireless Personal Area Networks, IEEE Computer Society. D0I:10.1109/ieeestd.2016.7460875.
4. Lodneva O.N., Romasevich E.P. Modern Information Technologies and IT-education, 2018, no. 1(14), pp. 149-169. (in Russ.)
5. Zaytsev V., Sokolov N. Pervaya milya, 2017, no. 4, pp. 44-47. (in Russ.)
6. Papadimitratos P., Haas Z.J. Ad Hoc Networks, 2003, no. 1, pp. 193-209.
7. Ben Othman S., Alzaid H., Trad A., Youssef H. IISA, 2013. D0I:10.1109/iisa.2013.6623701.
8. Hayouni H., Hamdi M., Kim T. Wireless Communications and Mobile Computing Conference (IWCMC), 2015, pp. 1193-1198.
9. Wang W., Wang D., Jiang Y. Ad Hoc Networks, 2016. DOI: 10.1016/j.adhoc.2016.10.003.
10. Stallings W. Cryptologia, 2010, no. 34, pp. 225-235.
11. Black J., Rogaway P. Cryptologia, 2015, no. 2(18), pp. 111-131.
12. Tanygin M.O., Alshaia Kh.Ya., Altukhova V.A. Telekommunikatsii (Telecommunications), 2019, no. 3, pp. 12-21. (in Russ.)
13. Arsen'yev V.N., Silant'yev S.B., Yadrenkin A.A. Journal of Instrument Engineering, 2017, no. 5(60), pp. 391-397.
14. Tanygin M.O., Tipikin A.P. Telecommunications and Radio Engineering, 2007, no. 5(66), pp. 453-463.
15. Korn G.A., Korn T.M. Mathematical handbook: For scientists and engineers, NY, McGraw-Hill, 1968.
Data on author
Maxim O. Tanygin — PhD, Associate Professor; South-West State University, Department of Information Security; Head of the Department; E-mail: [email protected]
For citation: Tanygin M. O. Algorithm for determining the source of fragmented messages. Journal of Instrument Engineering. 2020. Vol. 63, N 8. P. 702—710 (in Russian).
DOI: 10.17586/0021-3454-2020-63-8-702-710