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 <jpet...@nicira.com> 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 <b...@nicira.com> 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 > > dev@openvswitch.org > > http://openvswitch.org/mailman/listinfo/dev > >
_______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev