[ovs-dev] [PATCH 3/4] ovs-ofctl:Enhanced diff-flows & replace-flows(OF14)
Rishi Bamba
rishi.bamba at tcs.com
Fri Oct 10 13:54:48 UTC 2014
Hi Ben,
---
This patch enhances the diff-flows & replace-flows CLI that takes into
account the addition of importance parameter in a rule as per the
OpenFlow Specs 1.4.
Signed-off-by: Rishi Bamba <rishi.bamba at tcs.com>
---
utilities/ovs-ofctl.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/utilities/ovs-ofctl.c b/utilities/ovs-ofctl.c
index 8dcd72c..ceffe4a 100644
--- a/utilities/ovs-ofctl.c
+++ b/utilities/ovs-ofctl.c
@@ -2248,6 +2248,7 @@ struct fte_version {
ovs_be64 cookie;
uint16_t idle_timeout;
uint16_t hard_timeout;
+ uint16_t importance;
uint16_t flags;
struct ofpact *ofpacts;
size_t ofpacts_len;
@@ -2273,6 +2274,7 @@ fte_version_equals(const struct fte_version *a, const struct fte_version *b)
return (a->cookie == b->cookie
&& a->idle_timeout == b->idle_timeout
&& a->hard_timeout == b->hard_timeout
+ && a->importance == b->importance
&& ofpacts_equal(a->ofpacts, a->ofpacts_len,
b->ofpacts, b->ofpacts_len));
}
@@ -2299,6 +2301,9 @@ fte_version_format(const struct fte *fte, int index, struct ds *s)
if (version->hard_timeout != OFP_FLOW_PERMANENT) {
ds_put_format(s, " hard_timeout=%"PRIu16, version->hard_timeout);
}
+ if (version->importance != OFP_FLOW_PERMANENT) {
+ ds_put_format(s, " importance=%"PRIu16, version->importance);
+ }
ds_put_cstr(s, " actions=");
ofpacts_format(version->ofpacts, version->ofpacts_len, s);
@@ -2396,6 +2401,7 @@ read_flows_from_file(const char *filename, struct classifier *cls, int index)
version->cookie = fm.new_cookie;
version->idle_timeout = fm.idle_timeout;
version->hard_timeout = fm.hard_timeout;
+ version->importance = fm.importance;
version->flags = fm.flags & (OFPUTIL_FF_SEND_FLOW_REM
| OFPUTIL_FF_EMERG);
version->ofpacts = fm.ofpacts;
@@ -2498,6 +2504,7 @@ read_flows_from_switch(struct vconn *vconn,
version->cookie = fs.cookie;
version->idle_timeout = fs.idle_timeout;
version->hard_timeout = fs.hard_timeout;
+ version->importance = fs.importance;
version->flags = 0;
version->ofpacts_len = fs.ofpacts_len;
version->ofpacts = xmemdup(fs.ofpacts, fs.ofpacts_len);
@@ -2525,6 +2532,7 @@ fte_make_flow_mod(const struct fte *fte, int index, uint16_t command,
fm.command = command;
fm.idle_timeout = version->idle_timeout;
fm.hard_timeout = version->hard_timeout;
+ fm.importance = version->importance;
fm.buffer_id = UINT32_MAX;
fm.out_port = OFPP_ANY;
fm.flags = version->flags;
--
2.1.1
Thank You
Regards
Rishi
----- Original Message -----
From: "Rishi Bamba" <rishi.bamba at tcsin.com>
To: "Ben Pfaff" <blp at nicira.com>
Cc: dev at openvswitch.org, "partha datta" <partha.datta at tcs.com>, "deepankar gupta" <deepankar.gupta at tcs.com>
Sent: Friday, October 10, 2014 7:20:14 PM
Subject: [PATCH 2/4] ovs-ofctl:To set importance of a rule for eviction(OF14)
Hi Ben,
# In reference to the [Patch 1/4] This patch includes the Design file changes as suggested and test cases for add-flow and dump-flow
# CLI in order to perform testing of the importance parameter in a rule for different protocols of OpenFlow.
---
This patch enables a user to set importance for a new rule via add-flow
OF1.1+ in the OVS and display the same via dump-flows command OF1.1+ .
The changes are made in accordance with OpenFlow 1.4 specs to implement
Eviction on the basis of "importance".
#Changes made to DESIGN and added test cases
----- Original Message -----
From: "Rishi Bamba" <rishi.bamba at tcsin.com>
To: "Ben Pfaff" <blp at nicira.com>
Cc: dev at openvswitch.org, "partha datta" <partha.datta at tcs.com>, "deepankar gupta" <deepankar.gupta at tcs.com>
Sent: Friday, October 10, 2014 7:11:45 PM
Subject: Re: [PATCH 1/4] ovs-ofctl:To set importance of a rule for eviction(OF14)
Hi Ben,
# Thank you for reviewing the patch.As per the comments received ,all the changes are made and incorporated for this patch i.e Clang
# compiler doesn't report any error now and all the test cases are successful including the one added by us for the same.Also along
# with this patch sending three other patches related to the addition of importance in a rule which includes the changes as asked by
# you plus replace-flows and diff-flows CLI enhancement after the addition of "importance" parameter in a rule as per OF14.
---
This patch enables a user to set importance for a new rule via add-flow
OF1.1+ in the OVS and display the same via dump-flows command OF1.1+ .
The changes are made in accordance with OpenFlow 1.4 specs to implement
Eviction on the basis of "importance".
=====-----=====-----=====
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
More information about the dev
mailing list