Skip to content

Commit 1873c23

Browse files
Module flow_age_stats and script for graphs (#231)
Introduce new module flow_age_stats with a script for graph making --------- Co-authored-by: Václav Bartoš <[email protected]>
1 parent 1a23618 commit 1873c23

File tree

7 files changed

+466
-0
lines changed

7 files changed

+466
-0
lines changed

Makefile.am

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ biflow_aggregator \
88
debug_sender \
99
device_classifier \
1010
email_reporter \
11+
flow_age_stats \
1112
flowcounter \
1213
flow_meter \
1314
ipv6stats \

configure.ac

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,7 @@ AC_CONFIG_FILES([Makefile
227227
aggregator/Makefile
228228
anonymizer/Makefile
229229
backscatter/Makefile
230+
flow_age_stats/Makefile
230231
biflow_aggregator/Makefile
231232
bloom_history/Makefile
232233
debug_sender/Makefile

flow_age_stats/Makefile.am

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
bin_PROGRAMS=flow_age_stats
2+
flow_age_stats_SOURCES=flow_age_stats.c fields.c fields.h
3+
flow_age_stats_LDADD=-ltrap -lunirec
4+
include ../aminclude.am

flow_age_stats/README.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Flow Age Stats module - README
2+
3+
## Description
4+
This module is used for making statistics about the age of incoming flow data. The statistics produced are minimal, maximal and average values of the differences between the time a flow was received and its TIME_FIRST and TIME_LAST timestamps.
5+
6+
Additionally, the module can output histograms of flow age distribution. These are written as two text files (time_first.txt, time_last.txt) that each have a table of three columns. First is the max age of the flow (the end of bin range). Second is the percentage of flows that are in that age group. Third is the flow count. By default, the bins are 0-1s, 1s-10s, 10s-20s, ... 590s-600s, >600s.
7+
8+
## Interfaces
9+
- Input: One UniRec interface
10+
- Template MUST contain fields TIME_FIRST and TIME_LAST
11+
- Output: None
12+
13+
## Parameters
14+
- '-t' If specified, the module writes a file where the tables will be outputted. (Caution - the module will overwrite files labeled time_first.txt, time_last.txt)
15+
16+
## Graphs
17+
This module also comes with a script that makes use of GNUplot to make graphs from the data that is outputted into files. You can see how the graph looks like below.
18+
19+
![ExampleGraph](example.png)
20+

flow_age_stats/example.png

7.6 KB
Loading

0 commit comments

Comments
 (0)