[ovs-discuss] Number of flow entries with ovs-controller

ahmad numan numan252 at gmail.com
Wed Jun 1 17:48:59 UTC 2011


Thanks for your response.
I worked for me but after about 30000 entries in file the ovs-openflowd gave
the warning "tx queue overflow" .

Ahmed Bilal

On Tue, May 31, 2011 at 9:58 PM, Ben Pfaff <blp at nicira.com> wrote:

> On Tue, May 31, 2011 at 02:49:58PM +0500, ahmad numan wrote:
> > If ovs-controller is initialized with --with-flows *file* option then how
> > many entries can be added in the *file*. In my experimentation the *file
> *can
> > hold only eight entries. beyond this "tx queue overflow" is generated and
> > entries remain ineffective. Is it correct or there is some configuration
> > issue by my side
>
> This is a bug.  Here is a patch to test.  Can you verify that it works
> for you?  If so then I will commit it to master and the 1.1 branch.
>
> --8<--------------------------cut here-------------------------->8--
>
> From: Ben Pfaff <blp at nicira.com>
> Date: Tue, 31 May 2011 09:48:13 -0700
> Subject: [PATCH] learning-switch: Don't limit message queued by
> --with-flows.
>
> queue_tx() intentionally limits the number of outstanding OpenFlow messages
> queued to the switch.  This was unintentionally being applied to the
> messages queued to the switch at startup by ovs-ofctl's --with-flows
> command.  This patch should fix the problem, by calling rconn_send()
> directly instead of through queue_tx().
>
> Reported-by: ahmad numan <numan252 at gmail.com>
> ---
>  AUTHORS               |    1 +
>  lib/learning-switch.c |    9 ++++++++-
>  2 files changed, 9 insertions(+), 1 deletions(-)
>
> diff --git a/AUTHORS b/AUTHORS
> index b7f6cf5..b6e7372 100644
> --- a/AUTHORS
> +++ b/AUTHORS
> @@ -43,6 +43,7 @@ provided helpful bug reports or suggestions.
>
>  Aaron M. Ucko           ucko at debian.org
>  Aaron Rosen             arosen at clemson.edu
> +Ahmed Bilal             numan252 at gmail.com
>  Alex Yip                alex at nicira.com
>  Alexey I. Froloff       raorn at altlinux.org
>  Bob Ball                bob.ball at citrix.com
> diff --git a/lib/learning-switch.c b/lib/learning-switch.c
> index 6bd2286..7905e3c 100644
> --- a/lib/learning-switch.c
> +++ b/lib/learning-switch.c
> @@ -131,7 +131,14 @@ lswitch_create(struct rconn *rconn, const struct
> lswitch_config *cfg)
>         const struct ofpbuf *b;
>
>         LIST_FOR_EACH (b, list_node, cfg->default_flows) {
> -            queue_tx(sw, rconn, ofpbuf_clone(b));
> +            struct ofpbuf *copy = ofpbuf_clone(b);
> +            int error = rconn_send(rconn, copy, NULL);
> +            if (error) {
> +                VLOG_INFO_RL(&rl, "%s: failed to queue default flows
> (%s)",
> +                             rconn_get_name(rconn), strerror(error));
> +                ofpbuf_delete(copy);
> +                break;
> +            }
>         }
>     }
>
> --
> 1.7.4.4
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20110601/f679370d/attachment.html>


More information about the discuss mailing list