You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Mar 21, 2023. It is now read-only.
* move template caching and flow buffering in custom message aggregator
much of this is still wip
* remove template cache
* wip for codec aggregation and parsing custom format of v9
currently fixing tests
* wip
* migrate tests
* fix v9 parsing by preserving the complete packets during buffering
aggregating the data flowsets does not work, because all records are based on the packet's timestamp
to simplify parsing in the codec, the aggregator now collects all templates/option templates into a protobuf
and adds received and buffered data flows to be parsed.
the netflow packets are preserved completely and can also contain templates. the codec will not use them, though, only the aggregator does
* remove duplicated license header
* update protobuf comment
* update comment
* tweak license header to avoid diff
* fix guice setup for transport
* fix handler setup
the codec-aggregator is null in super class, so that the put call added it after the raw-message handler
thus the code never ran and screwed up parsing
* change how the packet cache works
the previous implementation only checked for a single template id to be present for each packet, which in general is wrong if not all templates arrive at the same time (which might happen for large numbers of active templates)
the new implementation manually checks each packet's template requirements agains the ids of received templates, for the current remoteaddress/source id combination
* prefix netflow v9 fields with nf_
* remove unused optional template atomic ref
* don't prefix unknown fields names, that is done centrally now
fixes double prefixing of fields
* don't forget to fix test
* add flow timestamp fields from ipfix
* fix test after field definition list update
configuration.addField(newNumberField(CK_CACHE_SIZE, "Maximum cache size", DEFAULT_CACHE_SIZE, "Maximum number of elements in the NetFlow 9 template cache", ConfigurationField.Optional.OPTIONAL));
137
-
configuration.addField(newTextField(CK_CACHE_PATH, "Cache file path", DEFAULT_CACHE_PATH, "Path to the file persisting the the NetFlow 9 template cache", ConfigurationField.Optional.OPTIONAL));
138
-
configuration.addField(newNumberField(CK_CACHE_SAVE_INTERVAL, "Cache save interval (seconds)", DEFAULT_CACHE_SAVE_INTERVAL, "Interval in seconds for persisting the cache contents", ConfigurationField.Optional.OPTIONAL));
139
211
configuration.addField(newTextField(CK_NETFLOW9_DEFINITION_PATH, "Netflow 9 field definitions", "", "Path to the YAML file containing Netflow 9 field definitions", ConfigurationField.Optional.OPTIONAL));
0 commit comments