2014-02-19 3 views
171

Я использую библиотеку jnca для сбора записей NetFlow, отправленных маршрутизатором. Версия записи NetFlow, отправленная маршрутизатором, - это версия 9.Запись Netflow не может получить октеты (jnca)

Когда пакет NetFlow наблюдается из Wireshark, потоковые наборы с идентификатором 263 шаблона содержат данные об октетах инициатора и октетах ответчика, которые могут быть использованы для определения количество байтов, связанных с потоком. wireshark record

Но проблема в том, что эти значения не могут быть получены с помощью jcna. Он всегда показывает ноль для октетов.

currOffset = t.getTypeOffset(FieldDefinition.InBYTES_32); 
currLen = t.getTypeLen(FieldDefinition.InBYTES_32); 
if (currOffset >= 0 && currLen > 0) { 
    dOctets = Util.to_number(buf, off + currOffset, currLen) * t.getSamplingRate(); 
} 

Это сегмент кода, который используется для получения dOctets. Это возвращает ноль даже для шаблона ID 263.

Но когда он рассчитан в отношении идентификатора шаблона NetFlow 263, он дает правильные данные. (Дает инициатор октета и получить Ответчик октета 46 должен быть заменен на 50, как длина конкретной записи составляет 4 байта)

dOctets = Util.to_number(buf, off + 46, 4) 

46, где запись Инициатор Octets лежит в этом конкретном пакете NetFlow. (Получил используя запись Wireshark.)

Это проблема с jnca? Надеюсь, кто-то, кто знаком с jcna, может мне помочь.

+6

Эта ссылка может помочь: http://cdwijayarathna.blogspot.in/2014/03/retrieving-network-usage-information.html –

+1

ли вы проверить, какие значения возвращаются из метода 'getTypeOffset' и' getTypeLen'? – Lukino

+0

Смещение, возвращаемое с помощью 'Template.getTypeOffset()' JNCA', похоже на относительный набор. Работает ли это с тем, что вы делаете? (Вы не указали достаточно кода, чтобы рассказать, что такое 'buf'?) – rakslice

ответ

1

Получение сети Использование информации из NetFlow Version 9 записей

Netflow это функция, которая была введена на маршрутизаторах Cisco, которые дают возможность собирать IP сетевой трафик, как он входит или выходит интерфейс. Анализируя данные, предоставляемые Netflow, сетевой администратор может определять такие вещи, как источник и назначение трафика, класс обслуживания и причина перегрузки. Netflow состоит из трех компонентов: кэширования потоков, коллектора потоков и анализатора данных. В Netflow маршрутизатор перенаправляет сведения об использовании сети в качестве UDP-пакетов в указанный порт адресата.

Java NetFlow Collect-Analyzer

More Info

+2

Мне просто интересно, почему вы предлагаете щедрость? – Enzokie

+1

@Enzokie Возможно, нужен значок Альтруиста;) – campovski

Смежные вопросы