netflow.io - #Scala/#Netty NetFlow Collector

As promised on my last Talk in London, i've finally outdone myself with our newest piece of code called:

netflow.io

The project aims to provide an extensible flow collector written in Scala, using Netty as IO Framework as well as Akka as Messaging Framework.

Supported flow-types

  • NetFlow v5 - fully
  • NetFlow v9 (RFC3954) - almost fully
  • NetFlow IPFIX/v10 (RFC3917, RFC3955) - untested due to the lack of an exporter

Database support

Currently only the Redis Key-Value-Store is supported, but it is not much code (~100 lines) to adapt it to any other Key-Value-Store.

The goodies

At the end of the day, you'll need our utility library wasted-util installed in your local sbt repository, since it's not mirrored on any Ivy repository yet. :)

Also, you'll find my very own NetFlow Parsers in the package licensed under the Apache License! So feel free to do amazing stuff with it :)

What's coming next?

  • NetFlow v1
  • NetFlow v6
  • NetFlow v7
  • NetFlow v9 and v10/IPFIX Sampling and Option flows
  • SFlow support
  • Cassandra storage support

The code

can be found at https://github.com/wasted/netflow! Enjoy!

Thanks to wasted.io for sponsoring this!

Flattr me!

Tell your friends!