Hi, I'm seeing wrong behavior of Netflow5 records emitted by Open vSwitch 2.1.90.
I've configured my switch to export Netflow records with an active timeout of 30 seconds. I've then started a single, long TCP session flowing through the switch. The first netflow record seems OK - after 30 seconds, I get the first record describing the session and it's OK. >From that moment on, Netflow records about the session seem incorrect - the start_time field ("init_time" in openvswitch code) is consistently set to a very large value (which is identical in all records). end_time is correct - it specifies the time in which the last packet from the session was seen. --- I've looked at ofproto/netflow.c, and I believe the problem lies in the netflow_expire__ function. The function calls nf_flow->created = 0; however, in gen_netflow_rec, init_time is calculated like this: nf_rec->init_time = htonl(nf_flow->created - nf->boot_time); So for long sessions, which expire every active_timeout seconds, I will get init_time = (0-boot_time) in every record which describes the ongoing session. I've recompiled openvswitch without the "nf_flow->created = 0" code, and start_time looks good. Any reason why this line should stay? Thanks, Lior Neudorfer
_______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev