Hello everyone, I was attempting to incorporate OF1.4 style eviction in OVS as a project. By OF1.4 style eviction, I mean using the importance parameter of flows in deciding which flow to evict. This parameter can be set by the controller per flow.
I have defined the required enums and structs in openflow-1.4.h and I've incorporated the importance parameter in the rule_eviction_priority function in ofproto.c. Openflow does not define the actual eviction strategy, switches are free to do that. How I plan to do is not completely using the lifetime of a flow (as it is right now in OVS - apart from making eviction groups), and neither it is completely based on the importance parameter. I tried to incorporate both of these parameters. So I've multiplied `expiration' by the square root of `importance' in the calculation of expiration_offset. But what I've been trying to do for a while now, is interacting with the controller with respect to this. The controller should be able to enable eviction in a table using an OFP_TABLE_MOD packet, it should be able to modify the importance of a flow using the OFPT_FLOW_MOD packet, it should be able to get the importance parameters in the statistics alongwith the OFP_FLOW_REMOVED and OFPMP_FLOW packets. It would be of great help to me if someone could point me to some piece of code which does all this handling for OVS. I've been trying but haven't been successful in doing this so far. Thank you very much. Best regards, Shivanker Goel Junior Year Undergraduate Computer Science and Engg. Indian Institute of Technology, Delhi
_______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev