Описание работы служб сбора статистики

Skip to end of metadata
Go to start of metadata
Вы просматриваете старую версию данной страницы. Смотрите текущую версию. Сравнить с текущим  |   просмотр истории страницы

Схема взаимодействия служб сбора статистики

В биллинге имеются две схемы обработки статистики. Старая и новая. По умолчанию включена старая схема.

Старая схема: nf_collector + bstatd

Обработка в контейнере collector:

  1. NAS присылает netflow UDP порт 9996 и обрабатывается демоном nf_collector;
  2. nf_collector принимает netflow. Обрабатывает по ip адресу источника (src_ip) и помещает файлы в каталоги:
    1. Службы bstatd. В названии файла содержится тайм-штамп (время в формате unixtime) первого пакета
      /app/collector/var/stat/raw/
      

      Служба bstatd разносит статистику по каталогам пользователей. В последствии эти данные отображаются в детальной статистике абонента. Подробно служба bstatd описана в статье.

      /app/collector/var/stat/binstat/
      
    2. Службы traf_reporter. В названии файла содержится ip клиента, тайм-штамп.
      /app/collector/var/dump/
      

      Служба traf_reporter передаёт статистику службе raddb_traf по radius.

Обработка в контейнере asr_billing:

  1. Служба raddb_traf принимает статистику по radius и помещает в промежуточную БД
    /app/asr_billing/var/db/buff_traf.gdb
    
  2. Служба worker обрабатывает трафик, согласно, услуг абонента. Перемещает данные в основную БД биллинга
    /app/asr_billing/var/db/billing.gdb
    

Обработка в основной БД биллинга:

  1. Трафик попадает в таблицу traf_counters. Таблица содержит количество трафика с разбивкой по подключенным абоненту услугам.
  2. Из таблицы traf_counters трафик попадает в таблицу counters. В ней содержится объём и стоимость трафика.
  3. Опционально после таблицы counters трафик может быть учтён в таблице arch_account_stack. Разбивка потреблённого трафика по времени.

Новая схема: nfsen + nf_collector

  1. Статистика приходит по протоколу netflow на порт 9996 и обрабатывается демоном nfcapd;
  2. nfcapd дублирует netflow поток на nf_collector по порту 9995.
  3. Дальнейшая обработка проходит по старой схеме.

Возможные протоколы

Netflow v5

Поддержка протокол реализована в полном объёме.

Netflow v9

Carbon Billing 5 имеет возможность обрабатывать Netflow v9. Настройка описана в статье настройка и проверка netflow-потоков.

IPFIX

Carbon Billing 5 поддерживает несколько полей из ipfix, которые совпадают с протоколом Netflow v9, а именно: OBSERVATION_TIME_SECONDS и OBSERVATION_TIME_MILLISECONDS. В CISCO ASA эти поля называются NF_F_EVENT_TIME_MSEC и NF_F_EVENT_TIME
Поддержка этих полей делает возможным работу с оборудованием, передающим Netflow в виде ipfix.

Особенности реализации

При включении Netflow v9 / IPFIX теряется возможность тарифицировать входящий трафик. Причина в том, что службы nf_collector и nf_sen не имеют возможность обрабатывать дополнительные поля из netflow 9, содержащие пару srcIP - dstIP(абонента) при входящем потоке.

Как настроить сохранение статистики?

В большинстве случаев, для сохранения статистики достаточно стандартных настроек NAS и биллинга. Проверьте ваши настройки:

  1. Создайте NAS
    Статистика собирается только с IP адресов NAS созданных в биллинге.
  2. Настройте netflow на NAS
    В каждой cтандартной схеме описана настройка netflow. Укажите IP адрес биллинга и порт(по умолчанию 9996). Загрузите конфигурацию на оборудование.
  3. Проверьте netflow поток
    NAS может отсылать IP пакеты с разных локальных IP адресов. Проверьте, что netflow поток приходит с верного адреса.
    Команда для проверки
    tcpdump -pnni any udp port 9996 -c 100 | cut -d ' ' -f 3 | sort -u
    
    Результат выполнения команды
    tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
    listening on any, link-type LINUX_SLL (Linux cooked), capture size 65535 bytes
    100 packets captured
    112 packets received by filter
    0 packets dropped by kernel
    192.0.2.1.9996
    192.0.2.2.9996
    

    В примере на биллинг netflow поток приходит с двух NAS: 192.0.2.1.9996 и 192.0.2.2.9996 порт источника 9996.

  4. Если у вас остались вопросы по настройке и отладке, воспользуйтесь статьёй: настройка и проверка netflow-потоков.

Основные настройки

Для настройки сбора статистики используется web интерфейс.

Далее

Основные настройки:

  • Включить bstatd для детальной статистики (снято с поддержки) - Включает использование демона bstatd. В этом случае статистика собирается в формате bstatd её можно увидеть в Разделе детальная статистика в учётной записи абонента;
  • Порт для сбора статистики - Порт, на котором будет приниматься netflow трафик. Стандартное значение 9996;
  • IP для дублирования статистики - IP для дублирования статистики. Используется для отправки статистики nfcapd в nf_collector. Стандартное значение 169.254.99.95;
  • Порт для дублирования статистики - Порт для дублирования статистики. Стандартное значение 9995;
  • Агрегировать статистику - Опция включает использование демона nf_collector;
  • Сохранять сырую статистику в формате nfcapd для анализа nfsen - Опция включает сохранение сырой статистики в формате nfcapd. Далее её можно просматривать в web интерфейсе nfsen;
  • Отправлять агрегированную статистику на Биллинг - Включает подсчёт объёмов трафика для последующей тарификации в биллинге. В биллинг передаются значения:
  • Адрес Биллинга для отправки статистики - IP адрес службы raddb_traf. Служба принимает значения по объёму трафика по протоколу radius. Стандартное значение 169.254.38.13;
  • Порт Биллинга для отправки статистики - Порт службы raddb_traf. Стандартное значение 3813.

Настойки сохранения сырой статистики

Так же web интерфейсе можно настроить параметры сохранения сырой статистики:

Настойки сохранения сырой статистики:

  • IP адрес для доступа к API биллинга: - По умолчанию: 169.254.80.82. Недоступно для редактирования;
  • Логин для доступа к API биллинга: - По умолчанию root. Недоступно для редактирования;
  • Пароль для доступа к API биллинга: - По умолчанию servicemode. Недоступно для редактирования;
  • Порт для доступа к API биллинга: - По умолчанию 8082. Недоступно для редактирования;
  • Объем данных для подтверждения валидности ip адреса клиента, мб. ;
  • Интервал экспорта детальной статистики (bstatd): - По умолчанию 30 секунд;
  • Порог для экспорта статистики, мб. - По умолчанию 512;
  • Интервал проверки массива экспорта в bstatd, сек. - По умолчанию 300;
  • Директория сохранения статистики для биллинга - Используется для сохранения статистики об объёмах трафика и дальнейшей передачи её в биллинг через службу reporter. По умолчанию /var/dump ;
  • Экспорт статистики по времени в Биллинг, сек. - Интервал времени, в который служба reporter переносит данные по объёму трафика в БД биллинга. По умолчанию 1800 секунд. Чем меньше параметр, тем быстрее биллинг будет реагировать на учтённый объём трафика. Например, отключать услугу трафика. Вместе с тем уменьшение параметра приведёт к повышению нагрузки на систему.
  • Уровень логирования: Уровень логирования nf_collector. Используется при поиске проблем. Доступные значения: ERROR, INFO, DEBUG. Значение по умолчанию ERROR;
  • Использовать NAT в Netflow v9: - В сырую и агрегированную статистику будет сохраняться SNAT адрес;
  • Директория сохранения статистики для bstatd: - По умолчанию /var/stat/raw ;
  • Сохранять статистику для bstatd: - При включённой опции статистика будет сохраняться для обработки демоном bstatd;
  • Директория для сохранения: - Директория для сохранения статистики в формате nfcapd. По умолчанию /var/stat/raw ;
  • Сохранять сырую статистику: При включённой опции статистика будет сохраняться для обработки демоном nfcapd;
  • Размер одного файла: Размер одного файла для сохранения статистики. По умолчанию 50 Мб.
Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.