If you want to know how exactly ML2 plugin which is working on
neutron server is communicating with openvswitch
agents,you shoud read code: rpc.py /plugin.py /ovs_neutron_agent.py

In rpc.py, define functions for rpc.
RpcCallbacks class define some rpc that agent send to Ml2 plugin.
AgentNotifierApi class define some rpc that Ml2 plugin send to agent

In plugin.py,you should pay close attention to "def _setup_rpc(self)"

Ml2 plugin send rpc to agent (agent process rpc from plugin)
        Network_delete
        Port_update
        Security_groups_rule_updated
        Security_groups_member_updated
        Security_groups_provider_updated
        Tunnel_update

Ml2 plugin process rpc from agent (agent send rpc to pulgin)
        Report_state
        Get_device_details
        Update_device_down
        Update_device_up
        Tunnel_sync
        Security_group_runles_for_devices






>Re: [openstack-dev] Neutron ML2 and openvswitch agent
>Sławek Kapłoński Tue, 25 Feb 2014 12:31:54 -0800
>Hello,

>Trinath, this presentation I saw before You send me it. There is nice 
>explanation what methods are (and should be) in type driver and mech driver 
>but I need exactly that information what sent me Assaf. Thanks both of You for 
>Your help :)

--
>Best regards
>Sławek Kapłoński
>Dnia wtorek, 25 lutego 2014 12:18:50 Assaf Muller pisze:

> ----- Original Message -----
> 
> > Hi
> > 
> > Hope this helps
> > 
> > http://fr.slideshare.net/mestery/modular-layer-2-in-openstack-neutron
> > 
> > ___
> > 
> > Trinath Somanchi
> > 
> > _____________________________________
> > From: Sławek Kapłoński [sla...@kaplonski.pl]
> > Sent: Tuesday, February 25, 2014 9:24 PM
> > To: openstack-dev@lists.openstack.org
> > Subject: [openstack-dev] Neutron ML2 and openvswitch agent
> > 
> > Hello,
> > 
> > I have question to You guys. Can someone explain me (or send to link
> > with such explanation) how exactly ML2 plugin which is working on
> > neutron server is communicating with compute hosts with openvswitch
> > agents?
> 
> Maybe this will set you on your way:
> ml2/plugin.py:Ml2Plugin.update_port uses _notify_port_updated, which then
> uses ml2/rpc.py:AgentNotifierApi.port_update, which makes an RPC call with
> the topic stated in that file.
> 
> When the message is received by the OVS agent, it calls:
> neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:OVSNeutronAgent.port_
> update.
> > I suppose that this is working with rabbitmq queues but I need
> > to add own function which will be called in this agent and I don't know
> > how to do that. It would be perfect if such think will be possible with
> > writing for example new mechanical driver in ML2 plugin (but how?).
> > Thanks in advance for any help from You :)
> > 
> > --
> > Best regards
> > Slawek Kaplonski
> > sla...@kaplonski.pl
> > 
> > _______________________________________________
> > OpenStack-dev mailing list
> > OpenStack-dev@lists.openstack.org
> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> > 
> > 
> > 
> > _______________________________________________
> > OpenStack-dev mailing list
> > OpenStack-dev@lists.openstack.org
> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev@lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



_______________________________________________
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to