cloudflare / goflow

The high-scalability sFlow/NetFlow/IPFIX collector used internally at Cloudflare.
BSD 3-Clause "New" or "Revised" License
859 stars 173 forks source link

Add support for NetFlow v5 #20

Closed chrispassas closed 5 years ago

chrispassas commented 5 years ago

Adding support for NetFlow v5 format was discussed here but I wanted to put this feature request in its own issue.

Many routers still export in v5. It would allow a much more streamlined process to not require converting from v5 prior to ingesting.

If its any help there is a Verizon library that implements v5. I'm sure its not something you can copy over but it likely makes understanding the v5 format easier to have existing native Go code to look at. https://github.com/VerizonDigital/vflow/tree/master/netflow/v5

lspgn commented 5 years ago

Started decoding packets under the directory netflowlegacy since it does not contain templates. I have not touched the code in a while, I realize the whole program would benefit some refactoring (go fmt, packaging...), linting and tests. Will release a first version retro-compatible first then redo big chunks of the libraries.

lspgn commented 5 years ago

I just added NetFlow v5 in v3. There is a pre-release here if you can try: https://github.com/cloudflare/goflow/releases/tag/v3.0.0.0

chrispassas commented 5 years ago

Thank you, looking forward to trying this out.