RESTORING MOMENT DISTRIBUTION CHARACTERISTICS INTERVAL BETWEEN PACKETS OF INCOMING TRAFFIC

Abstract


The paper describes an approach to restore torque characteristics of the distribution of intervals between bursts of incoming traffic. These characteristics allow the methods to analyze the traffic queuing theory.

Full Text

Введение Как известно, теория массового обслуживания (ТМО) опирается на распределения интервалов между заявками входного потока и времени обслуживания. На практике распознавание закона распределения интервалов вызывает большие проблемы и к тому же трафик как случайный процесс имеет свойство постоянно меняться. Поэтому целесообразнее использование числовых характеристик распределения интервалов между пакетами. В данной работе для их определения предлагается использовать программу Wireshark. Описание программы Wireshark Wireshark (ранее Ethereal) - программа-анализатор трафика для компьютерных сетей технологии Ethernet и некоторых других, имеющий графический пользовательский интерфейс. В июне 2006 года проект был переименован в Wireshark из-за проблем с торговой маркой [1]. Функциональность, которую предоставляет Wireshark, очень схожа с возможностями программы tcpdump, однако Wireshark имеет графический пользовательский интерфейс и гораздо больше возможностей по сортировке и фильтрации информации. Программа позволяет пользователю просматривать весь проходящий по сети трафик в режиме реального времени, переводя сетевую карту в неразборчивый режим (от англ. promiscuous mode - см. рис. 1). Capturing from Ethernet [Wireshark 1.10.5 (SVN Rev 54262 from /trunk-1.10)] Eile £dit Yiew £o Capture Analyze Statistics Telephony Iools Internals Jdelp ©'•114Ш1хгИ^ФФвТ* ED □ Q. Q. Q. □ rtf 0 W 36 33 Filter Expression i... Clear Apply Save Time Source Destination Protocol Length Info 6618 88. .121305000 54. 221. 249.159 192.168.1.236 TCP 60 https 6619 88. . 218070000 79. 111. 108.119 192.168.1.236 UDP 130 sourc< 6620 88. . 218160000 192.168.1.236 79.111.108.119 UDP 62 sourc< 6621 88. , 218231000 192.168.1.236 79.111.108.119 UDP 616 sourc< 6622 88. .243631000 192.168.1.236 5.164.166.217 UDP 72 sourc< 6623 88. ,293833000 79. 111. 108.119 192.168.1.236 UDP 205 sourc< 6624 88. .293884000 192.168.1. 236 79.111.108.119 UDP 62 sourct 6625 88. . 312648000 54. 221. 249.159 192.168.1. 236 TLSVl 507 App I1C 6626 88. . 334 514000 192.168.1. 236 108.160.165.138 TLSVl 912 App!i £ 6627 88. .362880000 192.168.1. 236 54.221.249.159 TCP 54 24018 6628 88. . 366853000 fe80::e4 37:b6ce: e723:85el ff02::1:3 LLMNR 84 Stand; 6629 88. . 366866000 fe80::e4 37:b6ce: e723:85el ff02::1:3 LLMNR 84 Stand; 6630 88. .366909000 192.168.1. 236 224.0.0.252 LLMNR 64 Stand; 6631 88. .366928000 192.168.1. 236 224.0.0.252 LLMNR 64 Stand; 6632 88. . 369789000 2001:0:5ef5:79fd :1830:1720:dlff:dd97 2001:0:9d38:6ab8: 38cf:12c5: : eO^ IPv6 98 IPv6 r 6633 88. . 369799000 2001:0:5ef5:79fd :1830:1720:dlff:dd97 2001:0:9d38:6abd : 3027:30b0: : bOEIPv6 98 IPv6 r 6634 88. . 369800000 2001:0:5ef5:79fd :1830:1720:dlff:dd97 2001:0:5ef5:79fd: 38ea:3356: : aOcIPv6 98 IPv6 r 6635 88. . 377808000 AsustekC_7a:dd:2 Spanning-tree-(for-bri dges^ t_0( STP Co rtf. 6636 88. . 398093000 192.168.1.236 192.168.1.255 NBNS 92 Name с 6637 88. .406468000 79. 111. 108.119 192.168.1.236 UDP 62 sourct 6638 88. .406520000 192.168.1.236 79.111.108.119 UDP 62 sourct 6639 88. .426222000 79. 111. 108.119 192.168.1.236 UDP 62 sourct 6640 88. ,566740000 108.160.165.138 192.168.1.236 TCP 60 https i Frame 1: 84 bytes on wire (672 bits), 84 bytes captured (672 bits) on Interface О i Ethernet II, src: Glga-Byt_c7:3b:83 (lc:6f:65:c7:3b:83), Dst: iPv6mcast_00:01:00:03 (33:33:00:01:00:03) i internet protocol version 6, src: fe80::e437:b6ce:e723:85el (fe80::e437:Ьбсе:e723:85el), Dst: ff02::l:3 (ff02::l:3) i user Datagram protocol, src port: 63067 (63067), Dst port: llmnr (5355) i Link-local Multicast Name Resolution (query) 0000 33 33 00 01 00 03 lc 6f 0010 00 00 00 le 11 01 fe 80 0020 b6 ce e7 23 85 el ff 02 0030 00 00 00 01 00 03 f6 5b 0040 00 00 00 01 00 00 00 00 0050 00 lc 00 01 65 С7 3b 83 86 dd 60 00 00 00 00 00 00 e4 00 00 00 00 00 00 00 14 eb 00 le 53 bb c2 00 00 04 77 70 61 64 33. .......[ .wpad. О Ethernet: <live capture in progress> File: C:\Usi Packets: 6640 • Displayed: 6640 (100,0%) Profile: Default Рис. 1. Захват сетевого трафика программой Wireshark «Инфокоммуникационные технологии» Том 12, № 2, 2014 Горелов Г. А., Тарасов В.Н., Ушаков Ю.А. 41 Wireshark - это приложение, которое «видит» структуру самых различных сетевых протоколов и поэтому позволяет разобрать сетевой пакет, отображая значение каждого поля протокола любого уровня. Поскольку для захвата пакетов используется библиотека Pcap, существует возможность захвата данных только из тех сетей, которые поддерживаются этой библиотекой. Тем не менее программа Wireshark умеет работать с множеством форматов входных данных, соответственно, можно открывать файлы данных, захваченных другими программами, что расширяет возможности захвата. Возможности программы включают: - глубокий анализ сотни протоколов с регулярным добавлением новых; - захват сетевого трафика в реальном времени с последующим анализом в любое удобное время; - standard three-pane packet browser (стандартный пакетный браузер с тремя областями); - кроссплатформенность: существуют версии для большинства типов UNIX, в том числе Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Mac OS X, а также для Windows; - захваченная информация по сети может быть просмотрена с помощью графического интерфейса пользователя или с помощью TTY-режима утилиты TShark; - самые мощные возможности по сортировке и фильтрации информации в отрасли; - обширные возможности по VoIP анализу; - чтение/запись большого количества форматов файлов захвата: tcpdump (libpcap), Pcap NG, Catapult DCT2000, Cisco Secure IDS iplog, Microsoft Network Monitor, Network General Sniffer® (compressed and uncompressed), Sniffer® Pro, and NetXray®, Network Instruments Observer, NetScreen snoop, Novell LANalyzer, RAD-COM WAN/LAN Analyzer, Shomiti/Finisar Surveyor, Tektronix K12xx, Visual Net-works Visual UpTime, WildPackets Ether-Peek/TokenPeek/AiroPeek и многие другие; - файлы захвата, сжатые с помощью gzip, могут быть распакованы сразу; - захват данных в реальном времени может быть произведен с Ethernet, IEEE 802.11, PPP/ HDLC, ATM, Bluetooth, USB, Token Ring, Frame Relay, FDDI и других (в зависимости от платформы); - поддержка расшифровки для многих протоколов, включая IPsec, ISAKMP, Kerberos, SNMPv3, SSL/TLS, WEP, and WPA/WPA2; - правила выделения цветом могут быть применены для списка пакетов для быстрого, интуитивного анализа; - выходные данные могут быть экспортированы в XML, PostScript®, CSV или обычный текст. Одним из форматов экспорта данных, удобных для просмотра, является CSV (см. рис. 2). Такой файл можно открыть в любом текстовом редакторе или редакторе табличных данных для последующего анализа и расчета характеристик. Тем не менее трафик может быть настолько интенсивным, что обрабатывать его данные даже в табличных редакторах становится проблематично, не говоря уже о том, что и сами данные по трафику могут храниться не в одном файле. В данной статье нами рассмотрено программное решение для расчета моментных характеристик интервалов поступления пакетов. Главным преимуществом данного анализатора является его работа в малых масштабах времени (микросекунды), в отличие от той же программы NetFlow Analyzer, которая фиксирует пакеты с поминутной дискретизацией. Рис. 2. Пример данных, экспортированных в формат CSV. «Инфокоммуникационные технологии» Том 12, № 2, 2014 42 Горелов Г.А., Тарасов В.Н., Ушаков Ю.А. Определение моментных характеристик интервалов поступления пакетов Разработанная программа в дополнение к анализатору позволяет осуществлять выборку моментов времен поступления пакетов, вычленив входящий трафик из всего набора данных, полученных программой Wireshark. Далее с использованием известных формул математической статистики определяются моментные характеристики распределения временных интервалов. В работе использованы статистики до третьего порядка, которые позволяют судить о характере распределения интервалов. Например, коэффициент вариации показывает отличие трафика от пуас-соновского потока и совместно с асимметрией позволяет судить о степени весомости хвостов распределений. Среднее значение интервала между соседни-1 N ми пакетами т = -У,- tk\ где tk - мо-N £=о менты времени поступления пакетов, N - число анализируемых интервалов. Выборочная дисперсия De=t2 - т2, где t2 =-[- Xfot+i ~tkf N к=о - второй начальный момент. Коэффициент вариации с - <зв/т, где ав = ^De . Асимметрия Л=?/а’ где ? = Если большой массив данных разбит на несколько блоков, то по указанным формулам определяются групповые средние, а затем их средние арифметические значения. Программа анализа временных данных Для расчета моментных характеристик была разработана программа, которая из всего входного файла с данными о захвате сетевого трафика выбирает только данные, относящиеся к поступившим пакетам, и для них производит расчет интервалов и их моментных характеристик. Возможности программы включают: - выборку данных о времени поступления пакетов на указанный хост; - расчет интервалов времени между поступившими пакетами; - расчет моментных характеристик для интервалов поступивших пакетов; - сохранение данных о времени поступления пакетов в двоичном и текстовом формате; - сохранение данных об интервалах между поступлениями пакетов в двоичном и текстовом формате; - вывод и сохранение моментных характеристик в текстовом формате; Программа обрабатывает текстовые файлы, содержащие данные в виде, представленном на рис. 2, или аналогичном. В программе разработаны два класса (в терминах объектно ориентированного программирования): - TrafficLogParams - хранит данные о временах приходов пакетов, их интервалов и рассчитывает моментные характеристики. Также предоставляет методы сохранения данных в файлы и их загрузки из файлов; - LogParser - статический класс, производящий анализ входного файла и добавление данных в класс TrafficLogParams. Главный метод класса LogParser получает в качестве входных данных имя файла и IP-адрес хоста. Каждая строка исходного файла обрабатывается и из нее выбираются данные о времени и два IP-адреса - адрес отправителя и адрес получателя. Если поле получателя совпадает с IP-адресом хоста, тогда время поступления пакета добавляется в массив времен поступления пакетов класса TrafficLogParams. public static TextFileParser(string fileName, string ip, bool islncom-ing) { TrafficLogParams log = new TrafficLogPa-rams(); StreamReader file = new streamReader (fileName); string[] currentLine; int lineNumber = 0; int iplndex; if (islncoming) iplndex = 2; else iplndex = 1; while (!file.EndOfStream) { currentLine = GetDataArray (file.ReadLine().Trim()); lineNumber++; try { if (Minimizelp (currentLine[ipIndex]) == Minimizelp (ip)) { log.AddTime(ParseDouble(currentLine [0])); } } catch ( itExcep' ex) { MessageBox.Show(string.Format("{0}\nC трока = {I}1', ex.Message, lineNumber)); «Инфокоммуникационные технологии» Том 12, № 2, 2014 Горелов Г. А., Тарасов В.Н., Ушаков Ю.А. 43 } } file.Close(); return log; } Второй по важности метод класса LogParser разбивает входную строку на составные элементы, проверяя каждый элемент на принадлежность формату времени или IP-адресу, и возвращает их в виде массива. private static string[] GetDataArray(string input) { string[] data = new string[3]; string currentValue = int symbollndex = 0; int valuelndex = 0; while (symbollndex < input.Length && valuelndex < 3) { while (symbollndex < input.Length && (char.IsDigit(input[symbolIndex]) || IsSepa-rator(input[symbollndex]))) { currentValue += input[symbolIndex]; symbolIndex++; } if (currentValue != "") { if ((IsDouble(currentValue) | IsIp(currentValue))) { data[valuelndex] = currentValue; valuelndex++; } currentValue = if (valuelndex >= 3) { symbollndex = input.Length; } } while (symbollndex < input.Length && !char.IsDigit(input[symbollndex]) && !IsSeparator(input[symbollndex])) { symbolIndex++; } } return data; Метод проверяет входной символ на принадлежность символу-разделителю: «.» или «,». Такая проверка важна только для данных о времени, так как в некоторых странах дробная часть отделяется запятой (например в России), а не точкой. Именно по этой причине при преобразовании строкового представления числа в эквивалентное ему вещественное число, обозначающее время, используется не стандартный метод языка программирования, а его модификация, определяющая региональные параметры. private static double ParseDouble(string value) { if (Culturelnfo.CurrentCulture .NumberFormat.NumberDecimalSeparator == " { value = value.Replace(, '.'); } else { value = value.Replace(, ','); } return double.Parse(value); } При сопоставлении IP-адреса хоста с IP-адресом в текущей строке лога-файла производится минимизация IP-адресов до общего вида. Другими словами, IP-адрес 010.014.000.011 будет равен 10.14.0.11. Результаты Авторской программой был проанализирован файл с данными о трафике, поступающем на прокси-сервер вуза почти за час съема. Входной файл содержал более 2150000 строк, обработка вручную которых не представляется возможным. Были получены следующие результаты (рис. 3): Файл Справка Начальный момент 1-го порядка: 5,097781е-003 Начальный момент 2-го порядка: 3,325037е-004 Начальный момент 3-го порядка: 5,505049е-005 Дисперсия: 3,065963е-004 Коэффициент вариации: 3,434307е+000 Асимметрия: 1^025441е+001 Количество пакетов: S2S183 Рис. 3. Результат работы программы анализа лог-файлов Заключение Полученные данные свидетельствуют о том, что анализируемый трафик сильно отличается от пуассоновского (коэффициент вариации с = 3,43 вместо 1), значение асимметрии равной As = 10,25 говорит о том, что распределение интервалов между пакетами трафика относится к распределениям с тяжелыми хвостами. Например, у экспоненциального закона As = 2. Для расчета характеристик такого трафика требуется соответствующий математический аппарат.

References

  1. . Wireshark official web-site URL: http://www. wireshark.org/ [02.02.2014]

Statistics

Views

Abstract - 21

PDF (Russian) - 2

Cited-By


Article Metrics

Metrics Loading ...

Copyright (c) 2014 Gorelov G.A., Tarasov V.N., Ushakov Y.A.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies