[ovs-discuss] packet ins and packet outs in relation to LLDP

אייל ניסים eyalorly2014 at gmail.com
Tue Jul 29 18:34:00 UTC 2014


Hi,

thanks for your rapid reply,

It's back to square 1 though

How can I submit a packet_out , which includes request to send LLDP packets
to my HW
which can't read openflow format ? could you explain please what you have
in mind?

In any case, I'd  appreciate it very much if you could in addition
specifically  relate to the questions below  (4 && 5)
which relate to packet_in and packet_out in general
since beyond the scope of LLDP, I'd like to get some more knowledge and
insight of how you guys designed your project
and I really think you've done a great job here
thanks


I'm not sure why you're trying to add specific LLDP support to OVS.
An OpenFlow controller can implement LLDP without special support from
a switch.

On Tue, Jul 29, 2014 at 03:53:05PM +0000, Eyal Nissim wrote:
>
* Hi everyone,*>
>
>
>
* 1.       I need to identify and process  remote controller 's LLDP
requests*>
* Having looked at OVS-DISCUSS previous correspondence, I've found out that
as of now*>
* OVS doesn't support LLDP nor do I see any traces for LLDP in the code.*>
*                 (please confirm)*>
>
>
* 2.       I understand that remote controller's LLDP request is
encapsulated inside packet_out  message*>
* So that I would have to parse it and find the fields related to LLDP
request*>
* (please confirm)*>
>
>
* 3.       Now, I need to update my HW (How my HW should send these
messages is beyond the scope of this discussion)*>
* I guess this place is the best hook up I have:*>
*             p->ofproto_class->packet_out(p, payload, &flow,*>
*                                              po.ofpacts, po.ofpacts_len);*
>
>
* (please confirm)*>
>
>
>
>
* 4.       Now, I'd like my HW to send the responses to OVS (so that OVS
would send packet_in messages to the remote controller)*>
>
* Here I'm at a loss: What are my options to send update messages from my
HW to OVS*>
>
* I've read the porting document , but still I'm not sure about the exact
place, so please bear with me...*>
>
* (if there is more than one option, please specify all of them, please
name specific functions if possible)*>
>
>
>
>
>
* 5.       As for sending the messages back to the remote controller*>
>
* I saw the following function calls:*>
>
* dpif->dpif_class->run => run => connmge_send_packet_in =>
schedule_packet_in =>do_send_packet_ins*>
>
>
>
* which mechanism invokes this?*>
>
* Is it handle_upcalls=> dpif_operate=> dpif->dpif_class->operate ???*>
>
>
>
* (I guess it's not handle_upcalls=> ofproto_dpif_send_packet_in because it
relates to fail_open)*>
>
* If understood correctly this is the way to send packet-ins after they've
been created*>
>
>
>
>
>
* But where should I create the packet-ins themselves? (the HW doesn't send
the packets in packet-in format)*>
>
* Is it after handle_upcalls? Before handle_upcalls ? I'm confused*>
>
* (please point me to possible options)*>
>
>
>
>
>
>
* Thanks*>
>
* Eyal*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20140729/c0c173ac/attachment-0002.html>


More information about the discuss mailing list