Hi Ben, Thanks for the review. Regarding the test case, I want to clarify few points :
# OFPT_TABLE_STATUS, OFPTR_VACANCY_UP if test X"$1" = X"OFPTR_VACANCY_UP"; then shift; ovs-vsctl -- --id=@t1 create Flow_Table flow-limit=10 -- set bridge br0 flow_tables:1=@t1 ovs-ofctl -O OpenFlow14 mod-table br0 1 vacancy:20,80 ovs-ofctl -O OpenFlow14 add-flow br0 table=1,in_port=1,actions=2 ovs-ofctl -O OpenFlow14 add-flow br0 table=1,in_port=2,actions=2 ovs-ofctl -O OpenFlow14 add-flow br0 table=1,in_port=3,actions=2 ovs-ofctl -O OpenFlow14 add-flow br0 table=1,in_port=4,actions=2 ovs-ofctl -O OpenFlow14 add-flow br0 table=1,in_port=5,actions=2 echo >>expout "OFPT_TABLE_STATUS (OF1.4): reason=VACANCY_UP table_desc:- table 1: eviction=off eviction_flags=OTHER|IMPORTANCE|LIFETIME vacancy=on vacancy_down=20% vacancy_up=80% vacancy=10%" fi The above test case is for OFPT_TABLE_STATUS message. OFPT_TABLE_STATUS consists of table_desc also. As per the specification, if the switch sends OFPT_TABLE_STATUS with reason VACANCY_UP then further messages with VACANCY_UP reasons are stopped until VACANCY_DOWN reason comes. In the above test case, table limit is set to be 10 and 5 flows are added, also values of vacancy down and vacancy up are 20% and 80% respectively. So in this case OFPT_TABLE_STATUS (OF1.4): reason=VACANCY_UP is sent when first flow is added as in this case current Vacancy is 10% which is less than Vacancy down threshold value 20%. Further TABLE_STATUS messages are stopped until VACANCY_DOWN reason comes up which will occur when the current vacancy is greater than or equal to vacancy up threshold value 80%. Please verify the above understanding. Thanks and Regards, Saloni Jain Tata Consultancy Services Mailto: saloni.j...@tcs.com Website: http://www.tcs.com ____________________________________________ Experience certainty. IT Services Business Solutions Consulting ____________________________________________ -----"dev" <dev-boun...@openvswitch.org> wrote: ----- To: saloni.jai...@gmail.com From: Ben Pfaff Sent by: "dev" Date: 01/13/2016 12:31AM Cc: dev@openvswitch.org, deepankar.gu...@tcs.com, partha.da...@tcs.com, Rishi Bamba <rishi.ba...@tcs.com> Subject: Re: [ovs-dev] [PATCH v8] Implement OFPT_TABLE_STATUS Message. On Tue, Jan 05, 2016 at 04:45:12PM +0530, saloni.jai...@gmail.com wrote: > From: Saloni Jain <saloni.j...@tcs.com> > > On change in a table state, the controller needs to be informed with > the OFPT_TABLE_STATUS message. The message is sent with reason > OFPTR_VACANCY_DOWN or OFPTR_VACANCY_UP in case of change in remaining > space eventually crossing any one of the threshold. > > Signed-off-by: Saloni Jain <saloni.j...@tcs.com> > Co-authored-by: Rishi Bamba <rishi.ba...@tcs.com> > Signed-off-by: Rishi Bamba <rishi.ba...@tcs.com> > --- > Difference between v7 <-> v8 > - Changes done in the calling of send_table_status() in add_flow_finish() > - Rebased with latest master I think that this implementation confuses "occupancy" with "vacancy". Vacancy is the amount of space free. One of the tests that it adds illustrates the confusion. The test exercises vacancies from 100% (completely empty) to 50% (half full), but the expected output includes a message that says vacancy is 10% (which is never true during the test): # OFPT_TABLE_STATUS, OFPTR_VACANCY_UP if test X"$1" = X"OFPTR_VACANCY_UP"; then shift; ovs-vsctl -- --id=@t1 create Flow_Table flow-limit=10 -- set bridge br0 flow_tables:1=@t1 ovs-ofctl -O OpenFlow14 mod-table br0 1 vacancy:20,80 ovs-ofctl -O OpenFlow14 add-flow br0 table=1,in_port=1,actions=2 ovs-ofctl -O OpenFlow14 add-flow br0 table=1,in_port=2,actions=2 ovs-ofctl -O OpenFlow14 add-flow br0 table=1,in_port=3,actions=2 ovs-ofctl -O OpenFlow14 add-flow br0 table=1,in_port=4,actions=2 ovs-ofctl -O OpenFlow14 add-flow br0 table=1,in_port=5,actions=2 echo >>expout "OFPT_TABLE_STATUS (OF1.4): reason=VACANCY_UP table_desc:- table 1: eviction=off eviction_flags=OTHER|IMPORTANCE|LIFETIME vacancy=on vacancy_down=20% vacancy_up=80% vacancy=10%" fi _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev