[openstack-dev] [quantum] Understanding DHCP Agent
Trinath Somanchi
trinath.somanchi at gmail.com
Sat Oct 27 02:31:17 UTC 2012
Hi-
Please help me understand the data flow in the source code of the DHCP
agent.
I was trying to understand how the Quantum DHCP agent Daemon works. As I
walk through the code, to understand the working on the Daemon,
I found it to be using rpc cast and call. But was lost into the code to
find the correct data flow.
In my study I found this:
quantum/agent/dhcp_agent.py <--- the actual daemon agent, which makes
the rpc.cast/rpc.call to fetch the data.
* A | * <------ (Flow
representing arrows)
* | V*
quantum/db/dhcp_rpc_base.py <---- which implements the QuantumPluginV2
to process the rpc.cast/rpc.call by the above agent.
* A | * <------ (Flow
representing arrows)
* | V*
quantum/db/db_base_plugin_v2.py <--- where the actual DB processing
happens for the requests.
[1] Am I in a right path of understanding the dhcp agent daemon working.
Kindly please help me understand the processes flow
--
Trinath
On Fri, Oct 26, 2012 at 10:45 PM, Trinath Somanchi <
trinath.somanchi at gmail.com> wrote:
> Mark-
>
> First, thanks for the informative reply.
>
> True Said, I understood the flow. But then, I want to look into this
> scenario by means of the Source Code.
>
> As described in the mail by me, I'm understanding How the Data flow inside
> the code.
>
> Hence, I have put forward my understanding in the RPC call and cast of the
> dhcp agent.
>
> as below.
>
> quantum/agent/dhcp_agent.py <--- the actual daemon agent, which makes
> the rpc.cast/rpc.call to fetch the data.
>
> * A | * <------ (Flow
> representing arrows)
> * | V*
> quantum/db/dhcp_rpc_base.py <---- which implements the QuantumPluginV2
> to process the rpc.cast/rpc.call by the above agent.
>
> * A | * <------ (Flow
> representing arrows)
> * | V*
> quantum/db/db_base_plugin_v2.py <--- where the actual DB processing
> happens for the requests.
>
>
> Here, (I'm new to the folsom code) i have outlined how the data flow
> between the files is happening from my understanding.
>
> Can you kindly please help me on the validity of my understanding. Were
> there any other files which help to achieve this in dhcp agent ?
>
> Thanking you..
>
> -
> Trinath
>
>
> On Fri, Oct 26, 2012 at 9:07 PM, Mark McClain <mark.mcclain at dreamhost.com>wrote:
>
>> Trinath-
>>
>> The DHCP agent uses both RPC and Notifications. The general rule is that
>> information originated by the Server flows via notifications and the agent
>> uses RPC to request information from the Quantum server or notify the
>> server of lease renewals.
>>
>> In a cold start situation, the agent will:
>>
>> Make RPC call for active networks (the RPC flow is as your described
>> below)
>> Start any DHCP services for active networks
>> Enter Notification Processing Loop
>> - Wait for changes to Networks, Subnets, Ports
>> - Modify DHCP daemon configs in response to those changes
>> (If notification payload does not have enough information use RPC to
>> clarify current state)
>>
>> Does this clarify how the agent works?
>>
>> mark
>>
>> On Oct 26, 2012, at 11:10 AM, Trinath Somanchi <
>> trinath.somanchi at gmail.com> wrote:
>>
>> Hi-
>>
>> I was trying to understand how the Quantum DHCP agent Daemon works. As I
>> walk through the code, to understand the working on the Daemon,
>>
>> I found it to be using rpc cast and call. But was lost into the code to
>> find the correct data flow.
>>
>> In my study I found this:
>>
>>
>>
>>
>> quantum/agent/dhcp_agent.py <--- the actual daemon agent, which makes
>> the rpc.cast/rpc.call to fetch the data.
>>
>> * A | * <------ (Flow
>> representing arrows)
>> * | V*
>> quantum/db/dhcp_rpc_base.py <---- which implements the
>> QuantumPluginV2 to process the rpc.cast/rpc.call by the above agent.
>>
>> * A | * <------ (Flow
>> representing arrows)
>> * | V*
>> quantum/db/db_base_plugin_v2.py <--- where the actual DB processing
>> happens for the requests.
>>
>>
>>
>>
>> I have some doubts here, (though there very preliminary)
>>
>> [1] The RPC cast and call are sent to the Quantum server ?
>> [2] Am I in a right path of understanding the dhcp agent daemon working.
>>
>> Kindly please help me understand the processes flow
>>
>> Thanks in advance.
>>
>> --
>> Regards,
>> ----------------------------------------------
>> Trinath Somanchi,
>> +91 9866 235 130
>>
>> _______________________________________________
>> OpenStack-dev mailing list
>> OpenStack-dev at lists.openstack.org
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>
>>
>>
>> _______________________________________________
>> OpenStack-dev mailing list
>> OpenStack-dev at lists.openstack.org
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>
>>
>
>
> --
> Regards,
> ----------------------------------------------
> Trinath Somanchi,
> +91 9866 235 130
>
>
--
Regards,
----------------------------------------------
Trinath Somanchi,
+91 9866 235 130
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20121027/280d3e4e/attachment-0001.html>
More information about the OpenStack-dev
mailing list