Implementation of the stratosphere client
Since the Argus flow collector is quite a large beast, we want to collect the flows as a part of ucollect.
So we'll have a plugin that:
- Builds flows out of packet (this can be reused somehow from the flow plugin).
- Converts the flows into the signature strings of stratosphere (eg. each successive closed flow generates two new letters).
- Once in a (configurable) while or once certain number of strings is generated, we send them to the server.
There's a documentation how to write a plugin and the other plugins can serve as kind of example (the easiest one is the counts plugin, while the closest one to what needs to be done is the flow plugin).
TODO: We want to think about what we want to do with the strings when they are sent. Do we continue extending them, or reset them, or do we join them on the server side? Or during analysis? Should we consult this with García (the Stratosphere's author)? This is a minor point, though, so we can work on it even before that.