Ok now I have got some idea. In the classifier there is a data structure
which stores the rules, i.e
struct classifier {
int n_rules; /* Total number of rules. */
struct hmap tables; /* Contains "struct cls_table"s. */
};
And in the netdev there is also a data structure which stores the flows, i.e
dp_netdev_lookup_flow
Bibrak
On Thu, Sep 8, 2011 at 12:05 PM, Justin Pettit <[email protected]> wrote:
> There are multiple layers where you can see packets come in, but
> handle_upcall() in "ofproto/ofproto-dpif.c" is probably a good place to
> start (and the "DPIF_UC_MISS" case in particular). You can then go up or
> down the call stack depending on what you want to see.
>
> --Justin
>
>
> On Sep 7, 2011, at 11:55 PM, Bibrak Qamar wrote:
>
> > Could you please identify the section of code where ovs receives packet
> from datapath and tries to check whether it exists in flow table. This might
> help me in trying to understand how ovs handles flows.
> >
> > thanks
> > Bibrak
> >
> > On Thu, Sep 8, 2011 at 11:25 AM, Ben Pfaff <[email protected]> wrote:
> > On Thu, Sep 08, 2011 at 11:21:25AM +0500, Bibrak Qamar wrote:
> > > I am bit new to the OVS and am stuck in the code. Could any one tell me
> how
> > > OVS stores OpenFlow flows, is it a hash table (key, value) pair?
> >
> > No, it's more complicated than that. See lib/classifier.h for a brief
> > description.
> >
> > _______________________________________________
> > dev mailing list
> > [email protected]
> > http://openvswitch.org/mailman/listinfo/dev
>
>
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev