Hi, Anthony:

I think we are saying the same thing. Yes, there must be two parameters, and 
they are independent. What I mean of "simplifying" referred to the CLI. If user 
provides RA mode, then the 2nd parameter will have default value if user 
doesn't specify it.  However, user can also indicate different value 
explicitly. 

The use cases you pointed out are also called out in the table attached to the 
end of the email. Anything caught your eyes?

Thanks, Anthony!

Shixiong





> On Jan 21, 2014, at 4:46 PM, "Veiga, Anthony" 
> <[email protected]> wrote:
> 
> 
> Hi, Sean and Xuhan:
> 
> I totally agree. This is not the ultimate solution with the assumption that 
> we had to use “enable_dhcp”.
> 
> We haven’t decided the name of another parameter, however, we are open to any 
> suggestions. As we mentioned during the meeting, the second parameter should 
> highlight the need of addressing. If so, it should have at least four values:
> 
> 1) off (i.e. address is assigned by external devices out of OpenStack control)
> 2) slaac (i.e. address is calculated based on RA sent by OpenStack dnsmasq)
> 3) dhcpv6-stateful (i.e. address is obtained from OpenStack dnsmasq acting as 
> DHCPv6 stateful server)
> 4) dhcpv6-stateless (i.e. address is calculated based on RA sent from either 
> OpenStack dnsmasq, or external router, and optional information is retrieved 
> from OpenStack dnsmasq acting as DHCPv6 stateless server)
> 
> This I agree with.
> 
> 
> In other words, the original “on” mode captured in “enable_dhcp" should 
> provide more granularity. Since the bits in RA will trigger VM to take 
> certain actions (calculate address, solicit DHCPv6, etc.), I think we can 
> simplify it by saying, if OpenStack RA Mode is 
> slacc/dhcpv6-stateful/dhcpv6-stateless, then by default, the 2nd parameters 
> shares the same value. 
> 
> Absolutely not.  The reason for separating routing and addressing is because 
> you can't assume that because one piece is present, that the other is too.  
> If I want OpenStack to assign addresses via DHCPv6, then I set the addressing 
> parameter to stateful.  But maybe I want the RA to come from my provider 
> network router.  In that case, the RA mode is OFF.  We MUST separate these, 
> as there are other permutations as well.
> 
> 
> Thanks!
> 
> Shixiong
> 
> 
> 
> <PastedGraphic-1.png>
> 
> 
> 
> 
> 
> 
>> On Jan 21, 2014, at 10:42 AM, Xuhan Peng <[email protected]> wrote:
>> 
>> I think what will confuse openstack end user/admin will be the difference 
>> between the combination of "RA mode=slaac, enable_dhcp=off" and "RA 
>> mode=dhcpv6_stateless, enable_dhcp=off". The only difference will be if 
>> getting optional info from external DHCPv6 server using DHCPv6 stateless but 
>> it's hard to tell from the RA mode unless the admin is very familiar with 
>> dnsmasq. I think we are trying to isolate the detail of dnsmasq 
>> configuration from the API attribute here based on our previous discussion, 
>> but I could not figure out a better mode name here too. 
>> 
>> Just want to point out this before going to bed. Will be back tomorrow and 
>> check on other ones' input on this. 
>> 
>> 
>>> On Tue, Jan 21, 2014 at 10:07 PM, Shixiong Shang 
>>> <[email protected]> wrote:
>>> 
>>> 
>>> Begin forwarded message:
>>> 
>>>> From: Shixiong Shang <[email protected]>
>>>> Subject: Re: Cannot make it today at 4pm EST
>>>> Date: January 17, 2014 at 3:09:56 PM EST
>>>> To: "Veiga, Anthony" <[email protected]>
>>>> Cc: "Ian Wells (iawells)" <[email protected]>
>>>> 
>>>> Hi, Anthony and Ian:
>>>> 
>>>> Not sure how the API discussion is going with Neutron team. Please let me 
>>>> know what I can help from my side.
>>>> 
>>>> Last night, I put together this slide to summarize the possible 
>>>> combinations of RA mode and “enable_dhcp” keyword. It is quite clear that 
>>>> the current on/off boolean value won’t be sufficient. However, I think it 
>>>> is still possible to support this pair of keywords within IceHouse 
>>>> timeline while negotiating with Neutron team for more flexible approach in 
>>>> the next major release.
>>>> 
>>>> If you are thinking along the same line, would you please let me know what 
>>>> I overlooked?
>>>> 
>>>> Thanks!
>>>> 
>>>> Shixiong
>>>> 
>>>> 
>>>> 
>>>> <PastedGraphic-1.png>
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>>> On Jan 14, 2014, at 4:47 PM, Veiga, Anthony 
>>>>> <[email protected]> wrote:
>>>>> 
>>>>> 
>>>>> 
>>>>>> OK, I see that we're back to splitting the RA and DHCP modes, though I'm 
>>>>>> not sure why - enable_dhcp is bugger all use for anything other than a 
>>>>>> flat-out disable flag, since it's a boolean, so it's not like we can 
>>>>>> make much use of it.  Otherwise are we talking about whether we have an 
>>>>>> external router and/or DHCP server?
>>>>> 
>>>>> 
>>>>> Precisely this.  We determined multiple times previously that there is a 
>>>>> chance of either of these items being external to OpenStack.  Where 
>>>>> appropriate, we need to also be able to get out of the way.
>>>>> 
>>>>>> -- 
>>>>>> Ian.
>>>>>> 
>>>>>> 
>>>>>> From: <Veiga>, Anthony <[email protected]>
>>>>>> Date: Tuesday, 14 January 2014 21:34
>>>>>> To: Ian Wells <[email protected]>, Shixiong Shang 
>>>>>> <[email protected]>
>>>>>> Subject: Re: Cannot make it today at 4pm EST
>>>>>> 
>>>>>>> You missed the first part of the meeting this morning.  Addressing 
>>>>>>> should be either off, stateful or stateless and routing should be the 4 
>>>>>>> modes.  If enable_dhcp is there, then it's boolean and cuts off our 
>>>>>>> stateful/stateless determination.  Unless you think we should provide 
>>>>>>> everything to dnsmasq and hope the clients are smart enough to only 
>>>>>>> send the options flag?
>>>>>>> 
>>>>>>>> I don't think so.
>>>>>>>> 
>>>>>>>> Given the two attrs below we have 6 permutations of values.  Three of 
>>>>>>>> those are simply 'off'.  The other three are our three settings that 
>>>>>>>> weren't 'off'.  We monitor changes to either value.
>>>>>>>> 
>>>>>>>> What are you seeing that I'm not?
>>>>>>>> -- 
>>>>>>>> Ian.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> From: <Veiga>, Anthony <[email protected]>
>>>>>>>> Date: Tuesday, 14 January 2014 21:28
>>>>>>>> To: Ian Wells <[email protected]>, Shixiong Shang 
>>>>>>>> <[email protected]>
>>>>>>>> Subject: Re: Cannot make it today at 4pm EST
>>>>>>>> 
>>>>>>>>> So now we need 3 attributes.  One is enable_dhcp, one is dhcp_mode, 
>>>>>>>>> and one is ra_mode.  We can't do permutations, because some of them 
>>>>>>>>> would be dependent on enable_dhcp, which our routines would no longer 
>>>>>>>>> control.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> OK, I tracked Mark down and asked about what he was on with.  I'm 
>>>>>>>>>> not saying I like the result of it though.
>>>>>>>>>> 
>>>>>>>>>> The point they're making is that enable_dhcp exists on a v6 subnet 
>>>>>>>>>> and should enable or disable DHCP if no-one touches anything else 
>>>>>>>>>> there, because that's what it used to do (and apparently it even 
>>>>>>>>>> worked with NVP).  So instead of one value, we need two:
>>>>>>>>>> 
>>>>>>>>>> enable_dhcp = false (our 'off') or true (anything else)
>>>>>>>>>> ipv6_addr_mode = slaac, dhcpv6-stateless, dhcpv6-stateful (which, 
>>>>>>>>>> because it was the default in the old world, wants to remain as DHCP 
>>>>>>>>>> providing the address as default in the new one) - obviously if 
>>>>>>>>>> enable_dhcp is off this is ignored.
>>>>>>>>>> 
>>>>>>>>>> It's a matter of API compatibility so they're not going to move on 
>>>>>>>>>> this.  It's not as nice as what we had but it's what we have to do, 
>>>>>>>>>> I think.
>>>>>>>>>> -- 
>>>>>>>>>> Ian.
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> From: <Veiga>, Anthony <[email protected]>
>>>>>>>>>> Date: Monday, 13 January 2014 23:48
>>>>>>>>>> To: Ian Wells <[email protected]>, Shixiong Shang 
>>>>>>>>>> <[email protected]>
>>>>>>>>>> Subject: Re: Cannot make it today at 4pm EST
>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> See below.
>>>>>>>>>>>>>> I am curios as to why stateless is the default.  Shouldn't SLAAC 
>>>>>>>>>>>>>> be default for all /64's and stateless be default for everything 
>>>>>>>>>>>>>> else?
>>>>>>>>>>>>> 
>>>>>>>>>>>>> [SHSHANG] I like this proposal better.
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> If nothing lese stateless in all cases is easier to document.  In 
>>>>>>>>>>>> the (perhaps unlikely) event that things work in all cases 
>>>>>>>>>>>> stateless is more flexible, too.
>>>>>>>>>>>> 
>>>>>>>>>>>>>> Just to be ABSOLUTELY, 100% CLEAR, this section is for the RA 
>>>>>>>>>>>>>> definition only, correct?  I want to make sure we're still 
>>>>>>>>>>>>>> decoupling the RA configuration and the Addressing 
>>>>>>>>>>>>>> configuration.  There are still use cases for OpenStack 
>>>>>>>>>>>>>> provisioning via DHCPv6, but the router being an external 
>>>>>>>>>>>>>> device.  We absolutely have to decouple these.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> [SHSHANG] Good point. In your case, can user adopt “off” mode, so 
>>>>>>>>>>>>> external router will send RA to trigger VM provisioning with 
>>>>>>>>>>>>> DHCPv6? In case that OpenStack Neutron router sending RA and VM 
>>>>>>>>>>>>> provisioning with DHCPv6 (via dnsmasq), then user can use our 
>>>>>>>>>>>>> dhcpv6-stateful and dhcpv6-stateless. 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> Currently the way I coded the dhcp client is, if user choose 
>>>>>>>>>>>>> dhcpv6-stateful or dhcpv6-stateless, the dnsmasq also acts as 
>>>>>>>>>>>>> DHCPv6 server for the subnet. This behavior should not conflict 
>>>>>>>>>>>>> with the case as you mentioned previously.
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> If the gateway is set and there's no router attached then the 
>>>>>>>>>>>> external router would be expected to provide the right sort of 
>>>>>>>>>>>> RA's, I guess? A little weird, but flexible.
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> No, the issue here is that we still want Stateful DHCPv6.  I just 
>>>>>>>>>>> don't want dnsmasq issuing the RA.  I want Addressing from 
>>>>>>>>>>> OpenStack, but not routing (I.e. No RA)
>>>>>>>>>>> 
>>>>>>>>>>> 
>>> 
>>> 
>>> _______________________________________________
>>> OpenStack-dev mailing list
>>> [email protected]
>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>> 
>> _______________________________________________
>> OpenStack-dev mailing list
>> [email protected]
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 
> <PastedGraphic-1.png>
> _______________________________________________
> OpenStack-dev mailing list
> [email protected]
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
_______________________________________________
OpenStack-dev mailing list
[email protected]
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to