[ovs-dev] where is the ovs_packet_cmd handler?

Baohua Yang yangbaohua at gmail.com
Sat Aug 18 09:48:58 UTC 2012


Dear Ben
    Thanks a lot for your reply!
    So you mean all the pkt cmd except  OVS_PACKET_CMD_EXECUTE will be sent
and handled by the ovs-vswitchd?
    Could you point out the functions in ovs-vswitchd to handler these
cmds? Let me guess the model here. The datapath issues
the OVS_PACKET_CMD_MISS cmd to the ovs-vswitchd, then the ovs-vswitchd
handles the cmd and gets the action, and finally sends the action to
datapath via the OVS_PACKET_CMD_EXECUTE cmd? But I cannot make sure on this
model through the codes.
    I will appreciate if you could give some hints on the procedure. Thanks
very much!

On Sat, Aug 18, 2012 at 12:11 PM, Ben Pfaff <blp at nicira.com> wrote:

> On Sat, Aug 18, 2012 at 11:10:50AM +0800, Baohua Yang wrote:
> > <1> All incoming network packet will be handler
> > by ovs_dp_process_received_packet(), right?
> > In  ovs_dp_process_received_packet(), for the missing
> > packets, ovs_dp_upcall() will be called to send the OVS_PACKET_CMD_MISS
> > cmd, and further, the queue_userspace_packet() will be called. But where
> to
> > issue other cmds like  OVS_PACKET_CMD_ACTION ?
>
> OVS_PACKET_CMD_ACTION is emitted by an explicit action that userspace
> sets up as part of a flow.
>
> > <2> In queue_userspace_packet(), a nl msg is generated, where would the
> msg
> > be sent to? Or who is the handler? Seems it is a dp_packet_genl_family
> msg,
> > but there is only a handler for the OVS_PACKET_EXECUTE cmd.
>
> To userspace, which receives it from a socket with a system call.
>
> > <3> I grep the entire codes, but who is the handler to  cmds
> > like OVS_PACKET_CMD_MISS  and OVS_PACKET_CMD_ACTION. The ovs-vswitchd?
>
> Yes.
>



-- 
Best wishes!
Baohua
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-dev/attachments/20120818/9d4cd07f/attachment-0004.html>


More information about the dev mailing list